Browse Source

添加工单优先级处理

heteng 3 years ago
parent
commit
e86f7212a7

+ 29 - 0
MicroServices/Business/Business.Application.Contracts/Dto/KittingTimeDto.cs

@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Business.Dto
+{
+    /// <summary>
+    /// 订单行建议交期
+    /// </summary>
+    public class KittingTimeDto
+    {
+        /// <summary>
+        /// 订单行id
+        /// </summary>
+        public long sentry_id { get; set; }
+
+        /// <summary>
+        /// 系统建议交期(产能)
+        /// </summary>
+        public DateTime sys_capacity_date { get; set; }
+
+        /// <summary>
+        /// 系统建议交期(物料)
+        /// </summary>
+        public DateTime sys_material_date { get; set; }
+    }
+}

+ 11 - 1
MicroServices/Business/Business.Application/ResourceExamineManagement/ResourceExamineAppService.cs

@@ -38,6 +38,7 @@ using Volo.Abp.Uow;
 using Spire.Pdf.Exporting.XPS.Schema;
 using Business.PriorityManagement;
 using Newtonsoft.Json.Linq;
+using Business.Dto;
 
 namespace Business.ResourceExamineManagement
 {
@@ -479,6 +480,8 @@ namespace Business.ResourceExamineManagement
             //获取订单行数据
             List<crm_seorderentry> sentrys = await _mysql_crm_seorderentry.GetListAsync(p => p.tenant_id == input.tenantId && p.factory_id == input.factoryId && input.sorderId.Contains(p.seorder_id.GetValueOrDefault()) && !p.IsDeleted);
 
+            //处理销售订单优先级
+            sorders = _priorityAppService.CalcOrderPriority(sorders, sentrys);
             //处理订单行优先级
             sentrys = _priorityAppService.CalcOrderEntryPriority(sorders, sentrys);
 
@@ -512,7 +515,8 @@ namespace Business.ResourceExamineManagement
                 AutoCreateBomBill(autoCreates);
                 pretreatments = _mysql_b_bom_pretreatment.GetListAsync(s => boms.Select(c => c.mysql_id).ToList().Contains(s.sourceid)).Result;
             }
-
+            //记录订单行的物料齐套时间
+            List<KittingTimeDto> kittingTimes = new List<KittingTimeDto>();
             DataInitialization(boms, bangid, icitemlist, stocklist, pretreatments);
             foreach (var sorder in sorders)
             {
@@ -569,6 +573,12 @@ namespace Business.ResourceExamineManagement
                     dtl.BomChildExamineList = getBomList;
                     //添加订单行开工信息
                     examines.Add(dtl);
+
+                    //记录订单行的建议交期
+                    KittingTimeDto dto = new KittingTimeDto();
+                    dto.sentry_id = item.Id;
+                    dto.sys_material_date = dtl.kitting_times;
+                    kittingTimes.Add(dto);
                 }
             }