BUG修改

This commit is contained in:
quowingwang 2026-01-23 21:14:11 +08:00
parent 79d4c95be1
commit 5d847999b7

View File

@ -52,34 +52,43 @@ namespace MDM.Services.Material
{
var predicate = Expressionable.Create<MaterialBom>()
.AndIF(!string.IsNullOrEmpty(parm.InvCode), it => it.InvCode.Contains(parm.InvCode))
.AndIF(!string.IsNullOrEmpty(parm.SubInvCode), it => it.SubInvCode.Contains(parm.SubInvCode))
;
.AndIF(!string.IsNullOrEmpty(parm.SubInvCode), it => it.SubInvCode.Contains(parm.SubInvCode));
var query = Context.Queryable<MaterialBom>()
.Where(predicate.ToExpression())
.GroupBy(it => it.InvCode)
.Select(it => new MaterialBomDto()
{
.Where(predicate.ToExpression())
.GroupBy(it => it.InvCode)
.Select(it => new MaterialBomDto()
{
Id = SqlFunc.AggregateMax(it.Id),
InvCode = SqlFunc.AggregateMax(it.InvCode),
InvName = SqlFunc.AggregateMax(it.InvName),
SubInvName = SqlFunc.AggregateMax(it.SubInvName),
Iusequantity = SqlFunc.AggregateMax(it.Iusequantity),
BOMVersion = SqlFunc.AggregateMax(it.BOMVersion),
CreatedBy = SqlFunc.AggregateMax(it.CreatedBy),
// 改动1注释掉CreatedTime聚合临时避开
// CreatedTime = SqlFunc.AggregateMax(it.CreatedTime),
UpdatedBy = SqlFunc.AggregateMax(it.UpdatedBy),
UpdatedTime = SqlFunc.AggregateMax(it.UpdatedTime)
})
// 改动2手动指定用UpdatedTime数据库列updated_time排序避开CreatedTime
.OrderBy("MAX(updated_time) DESC");
//Id = SqlFunc.AggregateMax(it.Id),
InvCode = it.InvCode,
InvName = SqlFunc.AggregateMax(it.InvName),
SubInvName = SqlFunc.AggregateMax(it.SubInvName),
Iusequantity = SqlFunc.AggregateMax(it.Iusequantity),
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)
}).OrderBy(it => SqlFunc.AggregateMax(it.CreatedTime), OrderByType.Desc);
var response = query.ToPage<MaterialBomDto, MaterialBomDto>(parm);
// 匹配你的PagedInfo类的分页逻辑
int pageIndex = 1;
int pageSize = 10;
int totalNum = query.Count();
var response = new PagedInfo<MaterialBomDto>()
{
PageIndex = pageIndex,
PageSize = pageSize,
TotalNum = totalNum,
Result = query.Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList(),
Extra = new Dictionary<string, object>()
};
return response;
}
/// <summary>