From 4d916744ba1ba9066d1ecf809f43ddddb817b26b Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周日, 11 5月 2025 14:11:31 +0800
Subject: [PATCH] 2

---
 PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs |  342 ++++++++++++++++++++++++++------------------------------
 1 files changed, 160 insertions(+), 182 deletions(-)

diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs
index a4b95f8..bc1a9cd 100644
--- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs
+++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs
@@ -10,12 +10,6 @@
 using Volo.Abp.Data;
 using Volo.Abp.ObjectExtending;
 using Volo.Abp.ObjectMapping;
-using CMS.Plugin.FormulaManagement.Abstractions;
-using CMS.Plugin.OrderManagement.Abstractions.Enums;
-using CMS.Plugin.OrderManagement.Abstractions.Models;
-using CMS.Plugin.OrderManagement.Abstractions;
-using CMS.Plugin.ProductManagement.Abstractions;
-using Microsoft.Extensions.DependencyInjection;
 
 namespace CMS.Plugin.PipeLineLems.Application.Implements;
 
@@ -25,18 +19,17 @@
 public class WorkPlanAppService : CMSPluginAppService, IWorkPlanAppService
 {
     private readonly IWorkPlanRepository workPlanRepository;
-    private readonly IServiceProvider _serviceProvider;
     private readonly SharedService _sharedService;
-
+    private readonly IServiceProvider _serviceProvider;
     /// <summary> 
     /// Initializes a new instance of the <see cref="WorkPlanAppService"/> class. 
     /// </summary> 
     /// <param name="WorkPlanRepository">The task job repository.</param> 
-    public WorkPlanAppService(IWorkPlanRepository _WorkPlanRepository, IServiceProvider serviceProvider, SharedService sharedService)
+    public WorkPlanAppService(IWorkPlanRepository _WorkPlanRepository, SharedService sharedService, IServiceProvider serviceProvider)
     {
         workPlanRepository = _WorkPlanRepository;
-        _serviceProvider = serviceProvider;
         _sharedService = sharedService;
+        _serviceProvider = serviceProvider;
     }
 
     /// <summary> 
@@ -154,6 +147,8 @@
         input.MapExtraPropertiesTo(updateObj, MappingPropertyDefinitionChecks.None);
 
         updateObj.TaskCode = input.TaskCode;
+        updateObj.WorkPlanStatus = input.WorkPlanStatus;
+        updateObj.CallMaterialStatus = input.CallMaterialStatus;
         updateObj.DataIdentifier = input.DataIdentifier;
         updateObj.MaterialMode = input.MaterialMode;
         updateObj.Length = input.Length;
@@ -180,7 +175,6 @@
         updateObj.OuterDiameter = input.OuterDiameter;
         updateObj.Thickness = input.Thickness;
         updateObj.Material = input.Material;
-     
         updateObj.ProcessRouteNumber = input.ProcessRouteNumber;
         updateObj.PlannedStartTime = input.PlannedStartTime;
         updateObj.PlannedEndTime = input.PlannedEndTime;
@@ -303,182 +297,165 @@
     /// <exception cref="UserFriendlyException"></exception> 
     public async Task ImportAsync(WorkPlansImportModel input)
     {
-
         //杞崲鏁版嵁
         var result = ObjectMapper.Map<List<WorkPlansImportModel.WorkPlanImportModel>, List<WorkPlanInput>>(input.WorkPlans);
 
         //await CreatebyApsAsync(result);
         await _sharedService.CommonCreatebyApsAsync(result, _serviceProvider, this);
+        //        Check.NotNull(input, nameof(input)); 
+
+        //        var workPlanCreateDtos = new List<(int RowIndex, WorkPlanCreateDto Item)>(); 
+        //        var workPlanUpdateDtos = new List<(int RowIndex, Guid Id, WorkPlanUpdateDto Item)>(); 
+        //        var importItems = input.WorkPlans; 
+
+        //        if (importItems != null && importItems.Any()) 
+        //        { 
+        //            #region 瀵煎叆鏍¢獙 
+
+        //            // 鍒ゆ柇鍚嶇О鏄惁閲嶅锛屽苟杈撳嚭绗嚑琛岄噸澶� 
+        //            var duplicateWorkPlans = importItems.GroupBy(x => x.TaskCode).Where(x => x.Count() > 1).ToList(); 
+        //            if (duplicateWorkPlans?.Any() == true) 
+        //            { 
+        //                var duplicateWorkPlanMsgs = duplicateWorkPlans.Select(x => $"绗� {string.Join(",", x.Select(x => x.RowIndex))} 琛岋細{x.Key}  鍚嶇О閲嶅"); 
+        //                var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝 {string.Join(",", duplicateWorkPlanMsgs)}锛岀粓姝㈠鍏�"; 
+        //                throw new UserFriendlyException(errorMsg); 
+        //            } 
+
+        //            #endregion 
+
+        //            foreach (var impItem in importItems) 
+        //            { 
+        //                if (impItem.TaskCode.IsNullOrWhiteSpace()) 
+        //                { 
+        //                    continue; 
+        //                } 
+
+        //                if (impItem.TaskCode.IsNullOrWhiteSpace()) 
+        //                { 
+        //                    var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊impItem.RowIndex}琛岋細WorkPlan鍚嶇О涓嶈兘涓虹┖"; 
+        //                    throw new UserFriendlyException(errorMsg); 
+        //                } 
+
+        //                var oldWorkPlan = await workPlanRepository.FindByNameAsync(impItem.TaskCode); 
+        //                if (oldWorkPlan != null) 
+        //                { 
+        //                    var workPlanUpdateDto = new WorkPlanUpdateDto 
+        //                    { 
+        //                        TaskCode = impItem.TaskCode,
+        //WorkPlanStatus = impItem.WorkPlanStatus,
+        //CallMaterialStatus = impItem.CallMaterialStatus,
+        //DataIdentifier = impItem.DataIdentifier,
+        //MaterialMode = impItem.MaterialMode,
+        //Length = impItem.Length,
+        //MarkingContent = impItem.MarkingContent,
+        //MarkingPosition = impItem.MarkingPosition,
+        //CuttingPosition = impItem.CuttingPosition,
+        //Quantity = impItem.Quantity,
+        //FlangeThickness = impItem.FlangeThickness,
+        //FlangeInnerDiameter = impItem.FlangeInnerDiameter,
+        //WeldingHeatInput = impItem.WeldingHeatInput,
+        //PipeAllowableStress = impItem.PipeAllowableStress,
+        //PipeDiameter = impItem.PipeDiameter,
+        //PipeWallThickness = impItem.PipeWallThickness,
+        //FactoryCode = impItem.FactoryCode,
+        //ProductCode = impItem.ProductCode,
+        //WorkstationCode = impItem.WorkstationCode,
+        //EquipmentCode = impItem.EquipmentCode,
+        //WorkpieceName = impItem.WorkpieceName,
+        //ProcessName = impItem.ProcessName,
+        //PipeFittingCode = impItem.PipeFittingCode,
+        //PreSerialNumber = impItem.PreSerialNumber,
+        //PipeSpecCode = impItem.PipeSpecCode,
+        //PipeSectionName = impItem.PipeSectionName,
+        //OuterDiameter = impItem.OuterDiameter,
+        //Thickness = impItem.Thickness,
+        //Material = impItem.Material,
+        //ProcessRouteNumber = impItem.ProcessRouteNumber,
+        //PlannedStartTime = impItem.PlannedStartTime,
+        //PlannedEndTime = impItem.PlannedEndTime,
+        //TeamInfo = impItem.TeamInfo,
+        //Timestamp = impItem.Timestamp,
+        //Remark = impItem.Remark,
+
+        //                    }; 
+
+        //                    workPlanUpdateDtos.Add((impItem.RowIndex, oldWorkPlan.Id, workPlanUpdateDto)); 
+        //                } 
+        //                else 
+        //                { 
+        //                    var workPlanCreateDto = new WorkPlanCreateDto 
+        //                    { 
+        //                        TaskCode = impItem.TaskCode,
+        //WorkPlanStatus = impItem.WorkPlanStatus,
+        //CallMaterialStatus = impItem.CallMaterialStatus,
+        //DataIdentifier = impItem.DataIdentifier,
+        //MaterialMode = impItem.MaterialMode,
+        //Length = impItem.Length,
+        //MarkingContent = impItem.MarkingContent,
+        //MarkingPosition = impItem.MarkingPosition,
+        //CuttingPosition = impItem.CuttingPosition,
+        //Quantity = impItem.Quantity,
+        //FlangeThickness = impItem.FlangeThickness,
+        //FlangeInnerDiameter = impItem.FlangeInnerDiameter,
+        //WeldingHeatInput = impItem.WeldingHeatInput,
+        //PipeAllowableStress = impItem.PipeAllowableStress,
+        //PipeDiameter = impItem.PipeDiameter,
+        //PipeWallThickness = impItem.PipeWallThickness,
+        //FactoryCode = impItem.FactoryCode,
+        //ProductCode = impItem.ProductCode,
+        //WorkstationCode = impItem.WorkstationCode,
+        //EquipmentCode = impItem.EquipmentCode,
+        //WorkpieceName = impItem.WorkpieceName,
+        //ProcessName = impItem.ProcessName,
+        //PipeFittingCode = impItem.PipeFittingCode,
+        //PreSerialNumber = impItem.PreSerialNumber,
+        //PipeSpecCode = impItem.PipeSpecCode,
+        //PipeSectionName = impItem.PipeSectionName,
+        //OuterDiameter = impItem.OuterDiameter,
+        //Thickness = impItem.Thickness,
+        //Material = impItem.Material,
+        //ProcessRouteNumber = impItem.ProcessRouteNumber,
+        //PlannedStartTime = impItem.PlannedStartTime,
+        //PlannedEndTime = impItem.PlannedEndTime,
+        //TeamInfo = impItem.TeamInfo,
+        //Timestamp = impItem.Timestamp,
+        //Remark = impItem.Remark,
+
+        //                    }; 
+
+        //                    workPlanCreateDtos.Add((impItem.RowIndex, workPlanCreateDto)); 
+        //                } 
+        //            } 
+        //        } 
+
+        //        // 鏂板 
+        //        foreach (var workPlanDto in workPlanCreateDtos) 
+        //        { 
+        //            try 
+        //            { 
+        //                await CreateAsync(workPlanDto.Item); 
+        //            } 
+        //            catch (Exception e) 
+        //            { 
+        //                var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�"; 
+        //                throw new UserFriendlyException(errorMsg); 
+        //            } 
+        //        } 
+
+        //        // 鏇存柊 
+        //        foreach (var workPlanDto in workPlanUpdateDtos) 
+        //        { 
+        //            try 
+        //            { 
+        //                await UpdateAsync(workPlanDto.Id, workPlanDto.Item); 
+        //            } 
+        //            catch (Exception e) 
+        //            { 
+        //                var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�"; 
+        //                throw new UserFriendlyException(errorMsg); 
+        //            } 
+        //        } 
     }
-
-
-    public async Task<MesOrderResponse> CreatebyApsAsync(List<WorkPlanInput> input)
-    {
-        var response=await _sharedService.CommonCreatebyApsAsync(input, _serviceProvider, this);
-       
-        return response;
-    }
-
-    ///// <summary> 
-    ///// 瀵煎叆浣滀笟璁″垝琛� 
-    ///// </summary> 
-    ///// <param name="input"></param> 
-    ///// <returns></returns> 
-    ///// <exception cref="UserFriendlyException"></exception> 
-    //public async Task ImportAsync(WorkPlansImportModel input)
-    //{
-    //    Check.NotNull(input, nameof(input));
-
-    //    var workPlanCreateDtos = new List<(int RowIndex, WorkPlanCreateDto Item)>();
-    //    var workPlanUpdateDtos = new List<(int RowIndex, Guid Id, WorkPlanUpdateDto Item)>();
-    //    var importItems = input.WorkPlans;
-
-    //    if (importItems != null && importItems.Any())
-    //    {
-    //        #region 瀵煎叆鏍¢獙 
-
-    //        // 鍒ゆ柇鍚嶇О鏄惁閲嶅锛屽苟杈撳嚭绗嚑琛岄噸澶� 
-    //        var duplicateWorkPlans = importItems.GroupBy(x => x.TaskCode).Where(x => x.Count() > 1).ToList();
-    //        if (duplicateWorkPlans?.Any() == true)
-    //        {
-    //            var duplicateWorkPlanMsgs = duplicateWorkPlans.Select(x => $"绗� {string.Join(",", x.Select(x => x.RowIndex))} 琛岋細{x.Key}  鍚嶇О閲嶅");
-    //            var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝 {string.Join(",", duplicateWorkPlanMsgs)}锛岀粓姝㈠鍏�";
-    //            throw new UserFriendlyException(errorMsg);
-    //        }
-
-    //        #endregion
-
-    //        foreach (var impItem in importItems)
-    //        {
-    //            if (impItem.TaskCode.IsNullOrWhiteSpace())
-    //            {
-    //                continue;
-    //            }
-
-    //            if (impItem.TaskCode.IsNullOrWhiteSpace())
-    //            {
-    //                var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊impItem.RowIndex}琛岋細WorkPlan鍚嶇О涓嶈兘涓虹┖";
-    //                throw new UserFriendlyException(errorMsg);
-    //            }
-
-    //            var oldWorkPlan = await workPlanRepository.FindByNameAsync(impItem.TaskCode);
-    //            if (oldWorkPlan != null)
-    //            {
-    //                var workPlanUpdateDto = new WorkPlanUpdateDto
-    //                {
-    //                    TaskCode = impItem.TaskCode,
-    //                    DataIdentifier = impItem.DataIdentifier,
-    //                    MaterialMode = impItem.MaterialMode,
-    //                    Length = impItem.Length,
-    //                    MarkingContent = impItem.MarkingContent,
-    //                    MarkingPosition = impItem.MarkingPosition,
-    //                    CuttingPosition = impItem.CuttingPosition,
-    //                    Quantity = impItem.Quantity,
-    //                    FlangeThickness = impItem.FlangeThickness,
-    //                    FlangeInnerDiameter = impItem.FlangeInnerDiameter,
-    //                    WeldingHeatInput = impItem.WeldingHeatInput,
-    //                    PipeAllowableStress = impItem.PipeAllowableStress,
-    //                    PipeDiameter = impItem.PipeDiameter,
-    //                    PipeWallThickness = impItem.PipeWallThickness,
-    //                    FactoryCode = impItem.FactoryCode,
-    //                    ProductCode = impItem.ProductCode,
-    //                    WorkstationCode = impItem.WorkstationCode,
-    //                    EquipmentCode = impItem.EquipmentCode,
-    //                    WorkpieceName = impItem.WorkpieceName,
-    //                    ProcessName = impItem.ProcessName,
-    //                    PipeFittingCode = impItem.PipeFittingCode,
-    //                    PreSerialNumber = impItem.PreSerialNumber,
-    //                    PipeSpecCode = impItem.PipeSpecCode,
-    //                    PipeSectionName = impItem.PipeSectionName,
-    //                    OuterDiameter = impItem.OuterDiameter,
-    //                    Thickness = impItem.Thickness,
-    //                    Material = impItem.Material,
-    //                    HasMainSignature = impItem.HasMainSignature,
-    //                    ProcessRouteNumber = impItem.ProcessRouteNumber,
-    //                    PlannedStartTime = impItem.PlannedStartTime,
-    //                    PlannedEndTime = impItem.PlannedEndTime,
-    //                    TeamInfo = impItem.TeamInfo,
-    //                    Timestamp = impItem.Timestamp,
-    //                    Remark = impItem.Remark,
-
-    //                };
-
-    //                workPlanUpdateDtos.Add((impItem.RowIndex, oldWorkPlan.Id, workPlanUpdateDto));
-    //            }
-    //            else
-    //            {
-    //                var workPlanCreateDto = new WorkPlanCreateDto
-    //                {
-    //                    TaskCode = impItem.TaskCode,
-    //                    DataIdentifier = impItem.DataIdentifier,
-    //                    MaterialMode = impItem.MaterialMode,
-    //                    Length = impItem.Length,
-    //                    MarkingContent = impItem.MarkingContent,
-    //                    MarkingPosition = impItem.MarkingPosition,
-    //                    CuttingPosition = impItem.CuttingPosition,
-    //                    Quantity = impItem.Quantity,
-    //                    FlangeThickness = impItem.FlangeThickness,
-    //                    FlangeInnerDiameter = impItem.FlangeInnerDiameter,
-    //                    WeldingHeatInput = impItem.WeldingHeatInput,
-    //                    PipeAllowableStress = impItem.PipeAllowableStress,
-    //                    PipeDiameter = impItem.PipeDiameter,
-    //                    PipeWallThickness = impItem.PipeWallThickness,
-    //                    FactoryCode = impItem.FactoryCode,
-    //                    ProductCode = impItem.ProductCode,
-    //                    WorkstationCode = impItem.WorkstationCode,
-    //                    EquipmentCode = impItem.EquipmentCode,
-    //                    WorkpieceName = impItem.WorkpieceName,
-    //                    ProcessName = impItem.ProcessName,
-    //                    PipeFittingCode = impItem.PipeFittingCode,
-    //                    PreSerialNumber = impItem.PreSerialNumber,
-    //                    PipeSpecCode = impItem.PipeSpecCode,
-    //                    PipeSectionName = impItem.PipeSectionName,
-    //                    OuterDiameter = impItem.OuterDiameter,
-    //                    Thickness = impItem.Thickness,
-    //                    Material = impItem.Material,
-    //                    HasMainSignature = impItem.HasMainSignature,
-    //                    ProcessRouteNumber = impItem.ProcessRouteNumber,
-    //                    PlannedStartTime = impItem.PlannedStartTime,
-    //                    PlannedEndTime = impItem.PlannedEndTime,
-    //                    TeamInfo = impItem.TeamInfo,
-    //                    Timestamp = impItem.Timestamp,
-    //                    Remark = impItem.Remark,
-
-    //                };
-
-    //                workPlanCreateDtos.Add((impItem.RowIndex, workPlanCreateDto));
-    //            }
-    //        }
-    //    }
-
-    //    // 鏂板 
-    //    foreach (var workPlanDto in workPlanCreateDtos)
-    //    {
-    //        try
-    //        {
-    //            await CreateAsync(workPlanDto.Item);
-    //        }
-    //        catch (Exception e)
-    //        {
-    //            var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�";
-    //            throw new UserFriendlyException(errorMsg);
-    //        }
-    //    }
-
-    //    // 鏇存柊 
-    //    foreach (var workPlanDto in workPlanUpdateDtos)
-    //    {
-    //        try
-    //        {
-    //            await UpdateAsync(workPlanDto.Id, workPlanDto.Item);
-    //        }
-    //        catch (Exception e)
-    //        {
-    //            var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�";
-    //            throw new UserFriendlyException(errorMsg);
-    //        }
-    //    }
-    //}
 
     /// <summary> 
     /// 瀵煎嚭浣滀笟璁″垝琛� 
@@ -523,6 +500,8 @@
     {
         Check.NotNull(input, nameof(input));
         Check.NotNullOrWhiteSpace(input.TaskCode, "浠诲姟缂栫爜", 256);
+        Check.NotNull(input.WorkPlanStatus, "璁″垝鐘舵��");
+        Check.NotNull(input.CallMaterialStatus, "鍙枡鐘舵��");
         Check.NotNull(input.Length, "闀垮害(mm)");
         Check.NotNull(input.MarkingPosition, "鎵撶爜浣嶇疆");
         Check.NotNull(input.CuttingPosition, "鍒囧壊浣嶇疆");
@@ -533,7 +512,6 @@
         Check.NotNull(input.PipeWallThickness, "濂楃鐩村緞(mm)");
         Check.NotNull(input.OuterDiameter, "澶栧緞(mm)");
         Check.NotNull(input.Thickness, "澹佸帤(mm)");
-        Check.NotNull(input.HasMainSignature, "鏄惁涓绘敮绠�");
 
         return Task.CompletedTask;
     }

--
Gitblit v1.9.3