BOM 父子选择
This commit is contained in:
parent
4f17e3210e
commit
f6922adcb2
@ -36,13 +36,22 @@ namespace DOAN.Admin.WebApi.Controllers
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
////TODO 获取母件
|
||||
//[HttpPost("get_monter_inv")]
|
||||
//public IActionResult GetMonterInvList([FromQuery] BaseMaterialBomQueryDto parm)
|
||||
//{
|
||||
// var response = _BaseMaterialBomService.GetMonterInvList(parm);
|
||||
// return SUCCESS(response);
|
||||
//}
|
||||
//TODO 获取母件
|
||||
[HttpPost("get_monter_inv")]
|
||||
public IActionResult GetMonterInvList([FromBody] BaseMaterialBomQueryDto parm)
|
||||
{
|
||||
var response = _BaseMaterialBomService.GetMonterInvList(parm);
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
//TODO 获取子件
|
||||
[HttpPost("get_son_inv")]
|
||||
public IActionResult GetSonInvList([FromBody] BaseMaterialBomQueryDto parm)
|
||||
{
|
||||
|
||||
var response = _BaseMaterialBomService.GetSonInvList(parm);
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询详情
|
||||
|
||||
@ -10,7 +10,7 @@ namespace DOAN.Model.MES.base_
|
||||
/// <summary>
|
||||
/// 雪花id
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "Id")]
|
||||
[SugarColumn(ColumnName = "Id" ,IsPrimaryKey =true) ]
|
||||
public string Id { get; set; }
|
||||
/// <summary>
|
||||
/// 母件编码
|
||||
@ -76,8 +76,8 @@ namespace DOAN.Model.MES.base_
|
||||
/// <summary>
|
||||
/// 子节点
|
||||
/// </summary>
|
||||
[Navigate(NavigateType.OneToMany, nameof(BaseMaterialBom.SubInvCode))]
|
||||
public List<BaseMaterialBom> Child { get; set; }
|
||||
//[Navigate(NavigateType.OneToMany, nameof(BaseMaterialBom.SubInvCode), nameof(BaseMaterialBom.InvCode))]
|
||||
//public List<BaseMaterialBom> Child { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -6,6 +6,8 @@ namespace DOAN.Model.MES.base_.Dto
|
||||
/// </summary>
|
||||
public class BaseMaterialBomQueryDto : PagerInfo
|
||||
{
|
||||
public string InvCode { get; set; }
|
||||
public string SubInvCode { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -40,7 +42,7 @@ namespace DOAN.Model.MES.base_.Dto
|
||||
|
||||
public DateTime? UpdatedTime { get; set; }
|
||||
|
||||
public List<BaseMaterialBom> Child { get; set; }
|
||||
// public List<BaseMaterialBom> Child { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
@ -37,16 +37,20 @@ namespace DOAN.Service.MES.base_
|
||||
{
|
||||
var predicate = Expressionable.Create<BaseMaterialBom>();
|
||||
|
||||
//var response = Queryable()
|
||||
// .Where(predicate.ToExpression())
|
||||
// .ToPage<BaseMaterialBom, BaseMaterialBomDto>(parm);
|
||||
var response = Queryable()
|
||||
.Where(predicate.ToExpression())
|
||||
.ToPage<BaseMaterialBom, BaseMaterialBomDto>(parm);
|
||||
//Context.Queryable<BaseMaterialBom>().Where(predicate.ToExpression()).ToTree(it => it.Child, it => it.InvCode, 0, it => it.Id)
|
||||
|
||||
|
||||
var response = Context.Queryable<BaseMaterialBom>()
|
||||
.Where(predicate.ToExpression())
|
||||
.Includes(x => x.Child)
|
||||
.ToPage<BaseMaterialBom, BaseMaterialBomDto>(parm);
|
||||
//var response = Context.Queryable<BaseMaterialBom>()
|
||||
// .Where(predicate.ToExpression())
|
||||
// .Includes(x => x.Child).ToList();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
return response;
|
||||
@ -57,16 +61,17 @@ namespace DOAN.Service.MES.base_
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
PagedInfo<BaseMaterialBomDto> GetMonterInvList(BaseMaterialBomQueryDto parm)
|
||||
public PagedInfo<BaseMaterialBomDto> GetMonterInvList(BaseMaterialBomQueryDto parm)
|
||||
{
|
||||
var predicate = Expressionable.Create<BaseMaterialBom>();
|
||||
|
||||
Queryable()
|
||||
var query = Context.Queryable<BaseMaterialBom>()
|
||||
.Where(predicate.ToExpression())
|
||||
.GroupBy(it => it.InvCode)
|
||||
.Select(it => new BaseMaterialBomDto() {
|
||||
.Select(it => new BaseMaterialBomDto()
|
||||
{
|
||||
|
||||
Id= SqlFunc.AggregateMax(it.Id),
|
||||
Id = SqlFunc.AggregateMax(it.Id),
|
||||
InvCode = SqlFunc.AggregateMax(it.InvCode),
|
||||
InvName = SqlFunc.AggregateMax(it.InvName),
|
||||
SubInvName = SqlFunc.AggregateMax(it.SubInvName),
|
||||
@ -74,17 +79,30 @@ namespace DOAN.Service.MES.base_
|
||||
BOMVersion = SqlFunc.AggregateMax(it.BOMVersion),
|
||||
CreatedBy = SqlFunc.AggregateMax(it.CreatedBy),
|
||||
CreatedTime = SqlFunc.AggregateMax(it.CreatedTime),
|
||||
|
||||
UpdatedBy = SqlFunc.AggregateMax(it.UpdatedBy),
|
||||
UpdatedTime = SqlFunc.AggregateMax(it.UpdatedTime)
|
||||
|
||||
|
||||
});
|
||||
return null;
|
||||
var response = query.ToPage<BaseMaterialBomDto, BaseMaterialBomDto>(parm);
|
||||
|
||||
|
||||
return response;
|
||||
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取子件
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
public List<BaseMaterialBom> GetSonInvList(BaseMaterialBomQueryDto parm)
|
||||
{
|
||||
return Context.Queryable<BaseMaterialBom>().Where(it => it.InvCode == parm.InvCode).ToList();
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取详情
|
||||
/// </summary>
|
||||
|
||||
@ -14,7 +14,9 @@ namespace DOAN.Service.MES.base_.IService
|
||||
{
|
||||
PagedInfo<BaseMaterialBomDto> GetList(BaseMaterialBomQueryDto parm);
|
||||
|
||||
// PagedInfo<BaseMaterialBomDto> GetMonterInvList( BaseMaterialBomQueryDto parm);
|
||||
PagedInfo<BaseMaterialBomDto> GetMonterInvList( BaseMaterialBomQueryDto parm);
|
||||
|
||||
List<BaseMaterialBom> GetSonInvList(BaseMaterialBomQueryDto parm);
|
||||
|
||||
BaseMaterialBom GetInfo(string Id);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user