订单查询调整

This commit is contained in:
2026-02-07 12:32:24 +08:00
parent b3a62efbd2
commit a9b59678de
2 changed files with 16 additions and 4 deletions

View File

@@ -36,8 +36,6 @@ namespace DOAN.Admin.WebApi.Controllers
[ActionPermissionFilter(Permission = "orderpurchase:list")]
public IActionResult QueryOrderPurchase([FromBody] OrderPurchaseQueryDto parm)
{
parm.ImportDate[0]= DOANConvertDate.ConvertLocalDate(parm.ImportDate[0]);
parm.ImportDate[1]= DOANConvertDate.ConvertLocalDate(parm.ImportDate[1]);
var response = _deliveryScheduleService.GetList(parm);
return SUCCESS(response);
}

View File

@@ -5,6 +5,7 @@ using DOAN.Model.MES.product;
using DOAN.Service.MES.order.IService;
using DOAN.Service.MES.Order.IService;
using Infrastructure.Attribute;
using Infrastructure.Converter;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -23,12 +24,24 @@ namespace DOAN.Service.MES.Order
/// <returns></returns>
public List<OrderScheduleDto> GetList(OrderPurchaseQueryDto parm)
{
// 日期处理
if (parm != null && parm.ImportDate != null && parm.ImportDate.Length > 0)
{
if (parm.ImportDate[0] > DateTime.MinValue)
{
parm.ImportDate[0] = DOANConvertDate.ConvertLocalDate(parm.ImportDate[0]);
}
if (parm.ImportDate[1] > DateTime.MinValue)
{
parm.ImportDate[1] = DOANConvertDate.ConvertLocalDate(parm.ImportDate[1]);
}
}
var predicate = QueryExp(parm);
var queryResult = Context.Queryable<OrderPurchase>()
.LeftJoin<ProWorkorder>((o, w) => o.OrderNoMes == w.CustomerOrder)
.Where(predicate.ToExpression())
.Where((o, w) => !SqlFunc.IsNullOrEmpty(o.OrderNoMes))
.OrderBy((o, w) => o.Id)
.OrderBy((o, w) => o.OrderNoMes)
.Select((o, w) => new OrderScheduleDto
{
Id = o.Id,
@@ -75,9 +88,10 @@ namespace DOAN.Service.MES.Order
var predicate = Expressionable.Create<OrderPurchase, ProWorkorder>()
.AndIF(!string.IsNullOrEmpty(parm.OrderNoMes), (o, w) => o.OrderNoMes.Contains(parm.OrderNoMes))
.AndIF(!string.IsNullOrEmpty(parm.PurchaseOrderErp), (o, w) => o.PurchaseOrderErp.Contains(parm.PurchaseOrderErp))
.AndIF(!string.IsNullOrEmpty(parm.MaterialCode), (o, w) => o.MaterialCode.Contains(parm.MaterialCode))
.AndIF(parm.ImportDate != null && parm.ImportDate[0] > DateTime.MinValue, (o, w) => o.ImportDate >= parm.ImportDate[0])
.AndIF(parm.ImportDate != null && parm.ImportDate[1] > DateTime.MinValue, (o, w) => o.ImportDate <= parm.ImportDate[1])
.AndIF(parm.Orderindicator>-1,(o,w)=>o.Orderindicator==parm.Orderindicator)
.AndIF(parm.Orderindicator>-2,(o,w)=>o.Orderindicator==parm.Orderindicator)
;