2
schangxiang@126.com
2024-12-08 c6d9d8e2c8c5a0dea829164e4a1a5c3ed9703521
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsRbLineTask/WmsRbLineTaskService.cs
@@ -152,8 +152,7 @@
                           var addItem = new WmsRbLineTask();
                          #region 定义变量
                           var _TaskNo = "";//任务号
                           var _TaskName = "";//任务名称
                           var _UPI = "";//部件条码
                           var _Upi = "";//部件条码
                           var _Length = "";//长
                           var _Width = "";//宽
                           var _Thk = "";//厚
@@ -162,21 +161,24 @@
                           var _PackageCode = "";//包装号
                           var _PlaceCode = "";//库位编码
                           var _RbTaskType = "";//任务类型
                           var _RbTaskTypeEnumName = "";//任务类型名称
                           var _TaskStatus = "";//任务状态
                           var _TaskStatusName = "";//任务状态名称
                           var _TaskDescribe = "";//任务描述
                           var _TaskMsg = "";//任务消息
                           var _IssueTime = "";//下发时间
                           var _FinishedTime = "";//任务完成时间
                           var _IsFlagFinish = "";//是否标记强制完成
                           var _LastNum = "";//是否末板
                           var _Info17 = "";//机械臂是否旋转
                           var _MachineXCenter = "";//包装X坐标
                           var _MachineYCenter = "";//包装Y坐标
                           var _MachineZCenter = "";//包装Z坐标
                           var _Sequence = "";//层数
                          #endregion
                          
                          
                          #region 取值
                           _TaskNo = row["任务号"]?.ToString() ;
                           _TaskName = row["任务名称"]?.ToString() ;
                           _UPI = row["部件条码"]?.ToString() ;
                           _Upi = row["部件条码"]?.ToString() ;
                           _Length = row["长"]?.ToString() ;
                           _Width = row["宽"]?.ToString() ;
                           _Thk = row["厚"]?.ToString() ;
@@ -185,14 +187,18 @@
                           _PackageCode = row["包装号"]?.ToString() ;
                           _PlaceCode = row["库位编码"]?.ToString() ;
                           _RbTaskType = row["任务类型"]?.ToString() ;
                           _RbTaskTypeEnumName = row["任务类型名称"]?.ToString() ;
                           _TaskStatus = row["任务状态"]?.ToString() ;
                           _TaskStatusName = row["任务状态名称"]?.ToString() ;
                           _TaskDescribe = row["任务描述"]?.ToString() ;
                           _TaskMsg = row["任务消息"]?.ToString() ;
                           _IssueTime = row["下发时间"]?.ToString() ;
                           _FinishedTime = row["任务完成时间"]?.ToString() ;
                           _IsFlagFinish = row["是否标记强制完成"]?.ToString() ;
                           _LastNum = row["是否末板"]?.ToString() ;
                           _Info17 = row["机械臂是否旋转"]?.ToString() ;
                           _MachineXCenter = row["包装X坐标"]?.ToString() ;
                           _MachineYCenter = row["包装Y坐标"]?.ToString() ;
                           _MachineZCenter = row["包装Z坐标"]?.ToString() ;
                           _Sequence = row["层数"]?.ToString() ;
                          #endregion
                          
                          
@@ -207,19 +213,15 @@
                          {
                                addItem.TaskNo = (string)(_TaskNo.Trim());
                           }
                          if(!string.IsNullOrEmpty(_TaskName))
                          {
                                addItem.TaskName = (string)(_TaskName.Trim());
                           }
                          
                          if (string.IsNullOrEmpty(_UPI))
                          if (string.IsNullOrEmpty(_Upi))
                          {
                            throw Oops.Oh($"第{index}行[部件条码]{_UPI}不能为空!");
                            throw Oops.Oh($"第{index}行[部件条码]{_Upi}不能为空!");
                          }
                          
                          if(!string.IsNullOrEmpty(_UPI))
                          if(!string.IsNullOrEmpty(_Upi))
                          {
                                addItem.UPI = (string)(_UPI.Trim());
                                addItem.Upi = (string)(_Upi.Trim());
                           }
                          
                          if (string.IsNullOrEmpty(_Length))
@@ -227,15 +229,7 @@
                            throw Oops.Oh($"第{index}行[长]{_Length}不能为空!");
                          }
                          
                          if (string.IsNullOrEmpty(_Thk))
                          {
                            throw Oops.Oh($"第{index}行[厚]{_Thk}不能为空!");
                          }
                          if (string.IsNullOrEmpty(_PlanNo))
                          {
                            throw Oops.Oh($"第{index}行[批次号]{_PlanNo}不能为空!");
@@ -289,10 +283,6 @@
                              }
                          
                           }
                          if(!string.IsNullOrEmpty(_RbTaskTypeEnumName))
                          {
                                addItem.RbTaskTypeEnumName = (string)(_RbTaskTypeEnumName.Trim());
                           }
                          
                          if (string.IsNullOrEmpty(_TaskStatus))
                          {
@@ -312,16 +302,6 @@
                                 addItem.TaskStatus = enumTaskStatus;
                              }
                          
                           }
                          if (string.IsNullOrEmpty(_TaskStatusName))
                          {
                            throw Oops.Oh($"第{index}行[任务状态名称]{_TaskStatusName}不能为空!");
                          }
                          if(!string.IsNullOrEmpty(_TaskStatusName))
                          {
                                addItem.TaskStatusName = (string)(_TaskStatusName.Trim());
                           }
                          if(!string.IsNullOrEmpty(_TaskDescribe))
                          {
@@ -358,6 +338,43 @@
                             }
                             }
                          
                          if(!string.IsNullOrEmpty(_LastNum))
                          {
                              if (!int.TryParse(_LastNum, out int outLastNum)&&!string.IsNullOrEmpty(_LastNum))
                              {
                                 throw Oops.Oh($"第{index}行[是否末板]{_LastNum}值不正确!");
                              }
                              if (outLastNum <= 0&&!string.IsNullOrEmpty(_LastNum))
                              {
                                 throw Oops.Oh($"第{index}行[是否末板]{_LastNum}值不能小于等于0!");
                              }
                              else
                              {
                                 addItem.LastNum = outLastNum;
                              }
                          }
                          if(!string.IsNullOrEmpty(_Info17))
                          {
                                addItem.Info17 = (string)(_Info17.Trim());
                           }
                          if(!string.IsNullOrEmpty(_Sequence))
                          {
                              if (!int.TryParse(_Sequence, out int outSequence)&&!string.IsNullOrEmpty(_Sequence))
                              {
                                 throw Oops.Oh($"第{index}行[层数]{_Sequence}值不正确!");
                              }
                              if (outSequence <= 0&&!string.IsNullOrEmpty(_Sequence))
                              {
                                 throw Oops.Oh($"第{index}行[层数]{_Sequence}值不能小于等于0!");
                              }
                              else
                              {
                                 addItem.Sequence = outSequence;
                              }
                          }
                          #endregion
                          
@@ -396,33 +413,31 @@
        var query = _rep.AsQueryable()
            .WhereIF(!string.IsNullOrWhiteSpace(input.SearchKey), u =>
                u.TaskNo.Contains(input.SearchKey.Trim())
                || u.TaskName.Contains(input.SearchKey.Trim())
                || u.UPI.Contains(input.SearchKey.Trim())
                || u.Upi.Contains(input.SearchKey.Trim())
                || u.PlanNo.Contains(input.SearchKey.Trim())
                || u.OrderId.Contains(input.SearchKey.Trim())
                || u.PackageCode.Contains(input.SearchKey.Trim())
                || u.PlaceCode.Contains(input.SearchKey.Trim())
                || u.RbTaskTypeEnumName.Contains(input.SearchKey.Trim())
                || u.TaskStatusName.Contains(input.SearchKey.Trim())
                || u.TaskDescribe.Contains(input.SearchKey.Trim())
                || u.TaskMsg.Contains(input.SearchKey.Trim())
                || u.Info17.Contains(input.SearchKey.Trim())
                || u.CreateUserName.Contains(input.SearchKey.Trim())
                || u.UpdateUserName.Contains(input.SearchKey.Trim())
            )
            .WhereIF(!string.IsNullOrWhiteSpace(input.TaskNo), u => u.TaskNo.Contains(input.TaskNo.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.TaskName), u => u.TaskName.Contains(input.TaskName.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.UPI), u => u.UPI.Contains(input.UPI.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.Upi), u => u.Upi.Contains(input.Upi.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.PlanNo), u => u.PlanNo.Contains(input.PlanNo.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.OrderId), u => u.OrderId.Contains(input.OrderId.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.PackageCode), u => u.PackageCode.Contains(input.PackageCode.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.PlaceCode), u => u.PlaceCode.Contains(input.PlaceCode.Trim()))
            .WhereIF(input.RbTaskType.HasValue, u => u.RbTaskType == input.RbTaskType)
            .WhereIF(!string.IsNullOrWhiteSpace(input.RbTaskTypeEnumName), u => u.RbTaskTypeEnumName.Contains(input.RbTaskTypeEnumName.Trim()))
            .WhereIF(input.TaskStatus.HasValue, u => u.TaskStatus == input.TaskStatus)
            .WhereIF(!string.IsNullOrWhiteSpace(input.TaskStatusName), u => u.TaskStatusName.Contains(input.TaskStatusName.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.TaskDescribe), u => u.TaskDescribe.Contains(input.TaskDescribe.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.TaskMsg), u => u.TaskMsg.Contains(input.TaskMsg.Trim()))
            .WhereIF(input.IsFlagFinish.HasValue, u => u.IsFlagFinish == input.IsFlagFinish)
            .WhereIF(input.LastNum>0, u => u.LastNum == input.LastNum)
            .WhereIF(!string.IsNullOrWhiteSpace(input.Info17), u => u.Info17.Contains(input.Info17.Trim()))
            .WhereIF(input.Sequence>0, u => u.Sequence == input.Sequence)
            .Select<WmsRbLineTaskOutput>();
        if(input.IssueTimeRange != null && input.IssueTimeRange.Count >0)
        {