From 7dccff98bbdf39624cc9430436833db968f1e80e Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 20 5月 2025 15:41:39 +0800
Subject: [PATCH] 22
---
PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs | 29 +++++++++++++-
PipeLineLems/server/src/CMS.Plugin.PipeLineLems/ProjectService/PipeLineLemsProjectService.cs | 39 +++++++++++++++++++
2 files changed, 65 insertions(+), 3 deletions(-)
diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs
index f681023..867e94c 100644
--- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs
+++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs
@@ -13,6 +13,7 @@
using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrder;
using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrderRecord;
using CMS.Plugin.PipeLineLems.Domain.WorkPlan;
+using CMS.Plugin.PipeLineLems.Domain.WorkTask;
using CMS.Plugin.ProcessManagement.Abstractions;
using CMS.Plugin.ProductManagement.Abstractions;
using CMS.Plugin.TraceManagement.Abstractions;
@@ -563,6 +564,7 @@
var callMaterialOrderRepository = _serviceProvider.GetRequiredService<ICallMaterialOrderRepository>();
var workPlanRepository = _serviceProvider.GetRequiredService<IWorkPlanRepository>();
+ var workTaskRepository = _serviceProvider.GetRequiredService<IWorkTaskRepository>();
var callMaterialOrderRecordRepository = _serviceProvider.GetRequiredService<ICallMaterialOrderRecordRepository>();
var orderManager = _serviceProvider.GetRequiredService<IOrderManager>();
@@ -633,6 +635,15 @@
}
await workPlanRepository.UpdateManyAsync(workPlanList);
+ //鏇存柊浣滀笟浠诲姟琛�
+ var workTaskList = await workTaskRepository.GetListByFilterAsync(x => x.DataIdentifier == callMaterialOrder.DataIdentifier);
+ foreach (var item in workTaskList)
+ {
+ item.CallMaterialStatus = Domain.Shared.Enums.CallMaterialStatusEnum.鍙枡瀹屾垚;
+ item.LastModifierName = "SuperAdmin";
+ }
+ await workTaskRepository.UpdateManyAsync(workTaskList);
+
//鏂板鍙枡璁板綍琛�
var callMaterialOrderRecord = new CallMaterialOrderRecord()
{
@@ -691,12 +702,17 @@
VariableService _variableService = _serviceProvider.GetRequiredService<VariableService>();
var callMaterialOrderRepository = _serviceProvider.GetRequiredService<ICallMaterialOrderRepository>();
var workPlanRepository = _serviceProvider.GetRequiredService<IWorkPlanRepository>();
+ var workTaskRepository = _serviceProvider.GetRequiredService<IWorkTaskRepository>();
var callMaterialOrderRecordRepository = _serviceProvider.GetRequiredService<ICallMaterialOrderRecordRepository>();
var orderManager = _serviceProvider.GetRequiredService<IOrderManager>();
var callMaterialOrderAppService = _serviceProvider.GetRequiredService<ICallMaterialOrderAppService>();
// 鏌ユ壘鏁版嵁
-
+ var workTask = await workTaskRepository.GetSingleByFilterAsync(x => x.TaskCode == input.TaskCode);
+ if (workTask == null)
+ {
+ throw new UserFriendlyException($"鎵句笉鍒颁綔涓氳鍒�");
+ }
var workPlan = await workPlanRepository.GetSingleByFilterAsync(x => x.TaskCode == input.TaskCode);
if (workPlan == null)
{
@@ -740,6 +756,7 @@
// workPlan.WorkPlanStatus = Domain.Shared.Enums.WorkPlanStatusEnum.宸插畬鎴�;
//}
workPlan.WorkPlanStatus = Domain.Shared.Enums.WorkPlanStatusEnum.鐢熶骇涓�;
+ workTask.WorkPlanStatus = Domain.Shared.Enums.WorkPlanStatusEnum.鐢熶骇涓�;
await workPlanRepository.UpdateAsync(workPlan);
@@ -822,10 +839,17 @@
var traceProvider = _serviceProvider.GetRequiredService<ITraceProvider>();
var materialProvider = _serviceProvider.GetRequiredService<IMaterialProvider>();
var workPlanAppService = _serviceProvider.GetRequiredService<IWorkPlanAppService>();
+ var workTaskAppService = _serviceProvider.GetRequiredService<IWorkTaskAppService>();
var workPlanRepository = _serviceProvider.GetRequiredService<IWorkPlanRepository>();
+ var workTaskRepository = _serviceProvider.GetRequiredService<IWorkTaskRepository>();
var callMaterialOrderAppService = _serviceProvider.GetRequiredService<ICallMaterialOrderAppService>();
string processName = "";
+ var firstWorkTask = await workTaskAppService.GetSingleByFilterAsync(x => x.PipeSpecCode == input.PipeSpecCode && x.ProcessName == input.ProcessName);
+ if (firstWorkTask == null)
+ {
+ throw new UserFriendlyException($"鎵句笉鍒颁綔涓氳鍒�");
+ }
//鐗╂枡鍙傛暟鍒楄〃
var firstWorkPlan = await workPlanAppService.GetSingleByFilterAsync(x => x.PipeSpecCode == input.PipeSpecCode && x.ProcessName == input.ProcessName);
if (firstWorkPlan == null)
@@ -883,7 +907,8 @@
{
#region 鏁版嵁澶勭悊
-
+ firstWorkTask.WorkPlanStatus = Domain.Shared.Enums.WorkPlanStatusEnum.宸插畬鎴�;
+ await workTaskRepository.UpdateAsync(firstWorkTask);
firstWorkPlan.WorkPlanStatus = Domain.Shared.Enums.WorkPlanStatusEnum.宸插畬鎴�;
await workPlanRepository.UpdateAsync(firstWorkPlan);
diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/ProjectService/PipeLineLemsProjectService.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/ProjectService/PipeLineLemsProjectService.cs
index a15f5b9..6a65e24 100644
--- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/ProjectService/PipeLineLemsProjectService.cs
+++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/ProjectService/PipeLineLemsProjectService.cs
@@ -24,6 +24,7 @@
using NPOI.SS.Formula.Functions;
using CMS.Plugin.PipeLineLems.Application.Implements;
using CmsQueryExtensions.Entitys;
+using CMS.Plugin.PipeLineLems.Domain.WorkTask;
namespace CMS.Plugin.PipeLineLems.ProjectService
{
@@ -465,7 +466,9 @@
{
var workPlanAppService = _serviceProvider.GetRequiredService<IWorkPlanAppService>();
+ var workTaskAppService = _serviceProvider.GetRequiredService<IWorkTaskAppService>();
var workPlanRepository = _serviceProvider.GetRequiredService<IWorkPlanRepository>();
+ var workTaskRepository = _serviceProvider.GetRequiredService<IWorkTaskRepository>();
var callMaterialOrderAppService = _serviceProvider.GetRequiredService<ICallMaterialOrderAppService>();
using var scope = _serviceProvider.CreateScope();
@@ -492,6 +495,10 @@
if (callMaterialOrder == null) return;//缁撴潫
+ //鏍规嵁鍘熸枡鏍囪瘑瀵绘壘 浣滀笟璁″垝
+ var workTaskList = await workTaskAppService.GetListByFilterAsync(x => x.DataIdentifier == callMaterialOrder.DataIdentifier);
+ if (workTaskList?.Count == 0) return;//缁撴潫
+ //鏇存柊涓虹敓浜т腑
//鏍规嵁鍘熸枡鏍囪瘑瀵绘壘 浣滀笟璁″垝
var workPlanList = await workPlanAppService.GetListByFilterAsync(x => x.DataIdentifier == callMaterialOrder.DataIdentifier);
@@ -507,6 +514,13 @@
};
var ret = _variableService.WriteValueAsync(keyValuePairs_productID);
+ //鏇存柊 浠诲姟 涓虹敓浜т腑
+ var new_workTaskList = workTaskList.Where(x => x.ProcessRouteNumber == "鍒囧壊").ToList();
+ foreach (var item in new_workTaskList)
+ {
+ item.WorkPlanStatus = Domain.Shared.Enums.WorkPlanStatusEnum.鐢熶骇涓�;
+ }
+ await workTaskRepository.UpdateManyAsync(new_workTaskList);
//鏇存柊涓虹敓浜т腑
var new_workPlanList = workPlanList.Where(x => x.ProcessRouteNumber == "鍒囧壊").ToList();
@@ -737,7 +751,9 @@
{
var workPlanAppService = _serviceProvider.GetRequiredService<IWorkPlanAppService>();
+ var workTaskAppService = _serviceProvider.GetRequiredService<IWorkTaskAppService>();
var workPlanRepository = _serviceProvider.GetRequiredService<IWorkPlanRepository>();
+ var workTaskRepository = _serviceProvider.GetRequiredService<IWorkTaskRepository>();
var callMaterialOrderAppService = _serviceProvider.GetRequiredService<ICallMaterialOrderAppService>();
using var scope = _serviceProvider.CreateScope();
@@ -763,7 +779,26 @@
callMaterialOrder = await callMaterialOrderAppService.GetSingleByFilterAsync(x => x.WmsTaskNo == myTaskNo);
if (callMaterialOrder == null) return;//缁撴潫
+ //鏍规嵁鍘熸枡鏍囪瘑瀵绘壘 浣滀笟璁″垝
+ var workTaskList = await workTaskAppService.GetListByFilterAsync(x => x.DataIdentifier == callMaterialOrder.DataIdentifier);
+ if (workTaskList?.Count == 0) return;//缁撴潫
+ var new_workTaskList = workTaskList.Where(x => x.ProcessName == "鍒囧壊宸ュ簭").ToList();
+ //鏇存柊涓虹敓浜т腑
+ foreach (var item in new_workTaskList)
+ {
+ item.WorkPlanStatus = Domain.Shared.Enums.WorkPlanStatusEnum.鐢熶骇涓�;
+ item.Remark = "鏇存柊鐢熶骇涓�";
+ }
+ await workTaskRepository.UpdateManyAsync(new_workTaskList);
+
+ var new_workTaskList_printCode = workTaskList.Where(x => x.ProcessName == "鎵撶爜宸ュ簭").ToList();
+ foreach (var item in new_workTaskList_printCode)
+ {
+ item.WorkPlanStatus = Domain.Shared.Enums.WorkPlanStatusEnum.宸插畬鎴�;
+ item.Remark = "鏇存柊宸插畬鎴�";
+ }
+ await workTaskRepository.UpdateManyAsync(new_workTaskList_printCode);
//鏍规嵁鍘熸枡鏍囪瘑瀵绘壘 浣滀笟璁″垝
var workPlanList = await workPlanAppService.GetListByFilterAsync(x => x.DataIdentifier == callMaterialOrder.DataIdentifier);
@@ -778,6 +813,8 @@
{ "CMS鍙嶉璇锋眰鐢熸垚鍒囧壊浜у搧鐮佷俊鍙风粨鏋�", true},
};
var ret = _variableService.WriteValueAsync(keyValuePairs_productID);
+
+
var new_workPlanList = workPlanList.Where(x => x.ProcessRouteNumber == "瑁呴厤").ToList();
//鏇存柊涓虹敓浜т腑
@@ -855,7 +892,7 @@
{
UserAccount = userName.Content.Value.SafeString().ToString()
};
- sharedService.CompleteAssemblyProcess(_serviceProvider, new Application.Contracts.Dtos.WorkPlan.CompleteAssemblyProcessInput() { PipeSpecCode = myPipeSpecCode, ProcessName="瑁呴厤宸ュ簭" }, myCurrentUser);
+ sharedService.CompleteAssemblyProcess(_serviceProvider, new Application.Contracts.Dtos.WorkPlan.CompleteAssemblyProcessInput() { PipeSpecCode = myPipeSpecCode, ProcessName = "瑁呴厤宸ュ簭" }, myCurrentUser);
}
catch (Exception)
--
Gitblit v1.9.3