diff --git a/DOAN.Admin.WebApi/Controllers/MES/Material/productionMaterial/MmRecordInboundController.cs b/DOAN.Admin.WebApi/Controllers/MES/Material/productionMaterial/MmRecordInboundController.cs index d3e1593..0378a29 100644 --- a/DOAN.Admin.WebApi/Controllers/MES/Material/productionMaterial/MmRecordInboundController.cs +++ b/DOAN.Admin.WebApi/Controllers/MES/Material/productionMaterial/MmRecordInboundController.cs @@ -29,9 +29,9 @@ namespace DOAN.Admin.WebApi.Controllers.BZFM /// /// /// - [HttpGet("list")] + [HttpPost("list")] [ActionPermissionFilter(Permission = "mmrecordinbound:list")] - public IActionResult QueryMmRecordInbound([FromQuery] MmRecordInboundQueryDto parm) + public IActionResult QueryMmRecordInbound([FromBody] MmRecordInboundQueryDto parm) { var response = _MmRecordInboundService.GetList(parm); return SUCCESS(response); diff --git a/DOAN.Model/MES/Material/Dto/MmRecordInboundDto.cs b/DOAN.Model/MES/Material/Dto/MmRecordInboundDto.cs index d6bd257..d274f58 100644 --- a/DOAN.Model/MES/Material/Dto/MmRecordInboundDto.cs +++ b/DOAN.Model/MES/Material/Dto/MmRecordInboundDto.cs @@ -10,11 +10,13 @@ namespace DOAN.Model.BZFM.Dto public string Operator { get; set; } - public DateTime? CreatedTime { get; set; } + public DateTime[] CreatedTime { get; set; } = new DateTime[2]; public string MaterialCode { get; set; } public string InboundNo { get; set; } + + public string TransactionType { get; set; } } /// diff --git a/DOAN.Service/MES/Material/MmRecordInboundService.cs b/DOAN.Service/MES/Material/MmRecordInboundService.cs index 476fce2..6043ac5 100644 --- a/DOAN.Service/MES/Material/MmRecordInboundService.cs +++ b/DOAN.Service/MES/Material/MmRecordInboundService.cs @@ -22,11 +22,7 @@ namespace DOAN.Service.BZFM /// public PagedInfo GetList(MmRecordInboundQueryDto parm) { - // 本地化日期,避免时差异常 - if (parm != null && parm.CreatedTime != null) - { - parm.CreatedTime = DOANConvertDate.ConvertLocalDate(parm.CreatedTime.Value); - } + var predicate = QueryExp(parm); var response = Queryable() @@ -78,13 +74,28 @@ namespace DOAN.Service.BZFM /// private static Expressionable QueryExp(MmRecordInboundQueryDto parm) { + if (parm.CreatedTime != null && parm.CreatedTime.Length > 0) + { + parm.CreatedTime[0] = DOANConvertDate.ConvertLocalDate(parm.CreatedTime[0]); + parm.CreatedTime[1] = DOANConvertDate.ConvertLocalDate(parm.CreatedTime[1]); + parm.CreatedTime[0] = parm.CreatedTime[0].Date; + parm.CreatedTime[1] = parm.CreatedTime[1].Date; + } var predicate = Expressionable.Create() .AndIF(!string.IsNullOrEmpty(parm.SupplierCode), it => it.SupplierCode.Contains(parm.SupplierCode)) .AndIF(!string.IsNullOrEmpty(parm.Operator), it => it.Operator.Contains(parm.Operator)) .AndIF(!string.IsNullOrEmpty(parm.MaterialCode), it => it.MaterialCode.Contains(parm.MaterialCode)) .AndIF(!string.IsNullOrEmpty(parm.InboundNo), it => it.InboundNo.Contains(parm.InboundNo)) - .AndIF(parm.CreatedTime > DateTime.MinValue, it => it.CreatedTime < parm.CreatedTime) - ; + .AndIF(!string.IsNullOrEmpty(parm.TransactionType), it => it.TransactionType.Contains(parm.TransactionType)) + .AndIF( + parm.CreatedTime != null && parm.CreatedTime[0] > DateTime.MinValue, + it => it.CreatedTime >= parm.CreatedTime[0] + ) + .AndIF( + parm.CreatedTime != null && parm.CreatedTime[1] > DateTime.MinValue, + it => it.CreatedTime <= parm.CreatedTime[1] + ); + ; return predicate; }