From 413f167eacffa8958341bcdcf7bc97d547664868 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 13 5月 2025 06:13:02 +0800
Subject: [PATCH] 高级查询初步
---
PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs | 297 ++++++++++++++++++++++++++++++----------------------------
1 files changed, 153 insertions(+), 144 deletions(-)
diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs
index ab32c0c..c2beaf6 100644
--- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs
+++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs
@@ -1,164 +1,173 @@
-//using CMS.Plugin.FormulaManagement.Abstractions;
-//using CMS.Plugin.OrderManagement.Abstractions;
-//using CMS.Plugin.OrderManagement.Abstractions.Enums;
-//using CMS.Plugin.OrderManagement.Abstractions.Models;
-//using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan;
-//using CMS.Plugin.PipeLineLems.Application.Contracts.Services;
-//using CMS.Plugin.PipeLineLems.Domain.WorkPlan;
-//using CMS.Plugin.ProductManagement.Abstractions;
-//using Microsoft.Extensions.DependencyInjection;
-//using Volo.Abp;
+using CMS.Plugin.FormulaManagement.Abstractions;
+using CMS.Plugin.OrderManagement.Abstractions;
+using CMS.Plugin.OrderManagement.Abstractions.Enums;
+using CMS.Plugin.OrderManagement.Abstractions.Models;
+using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan;
+using CMS.Plugin.PipeLineLems.Application.Contracts.Services;
+using CMS.Plugin.PipeLineLems.Domain.WorkPlan;
+using CMS.Plugin.ProductManagement.Abstractions;
+using Microsoft.Extensions.DependencyInjection;
+using Volo.Abp;
+using Volo.Abp.Users;
-//namespace CMS.Plugin.PipeLineLems.Application.Implements;
+namespace CMS.Plugin.PipeLineLems.Application.Implements;
-//public class MesAppService : CMSPluginAppService, IMesAppService
-//{
-// private readonly IServiceProvider _serviceProvider;
-// private readonly IWorkPlanAppService _workPlanAppService;
+public class MesAppService : CMSPluginAppService,IMesAppService
+{
+ private readonly IServiceProvider _serviceProvider;
+ private readonly WorkPlanAppService _workPlanAppService;
+ private readonly SharedService _sharedService;
+ //private readonly IEventBus _eventBus;
-// //private readonly IEventBus _eventBus;
+ public MesAppService(IServiceProvider serviceProvider
+ , WorkPlanAppService workPlanAppService
+ //, IEventBus eventBus
+ , SharedService sharedService
+ )
+ {
+ _serviceProvider = serviceProvider;
+ // _eventBus = eventBus;
+ _workPlanAppService = workPlanAppService;
+ _sharedService = sharedService;
+ }
-// public MesAppService(IServiceProvider serviceProvider
-// , IWorkPlanAppService workPlanAppService
-// //, IEventBus eventBus
-// )
-// {
-// _serviceProvider = serviceProvider;
-// // _eventBus = eventBus;
-// _workPlanAppService = workPlanAppService;
-// }
+ public async Task<MesOrderResponse> CreateAsync(List<WorkPlanInput> input, string userId, string userAccount)
+ {
+ var response = await _sharedService.CommonCreatebyApsAsync(input, _serviceProvider, _workPlanAppService, userId, userAccount);
-// public async Task<MesOrderResponse> CreateAsync(List<WorkPlanInput> input)
-// {
-// if (input == null)
-// {
-// throw new UserFriendlyException("杈撳叆鍙傛暟涓嶈兘涓虹┖");
-// }
+ return response;
+ }
+ //public async Task<MesOrderResponse> CreateAsync(List<WorkPlanInput> input)
+ //{
+ // if (input == null)
+ // {
+ // throw new UserFriendlyException("杈撳叆鍙傛暟涓嶈兘涓虹┖");
+ // }
-// if (input.Count == 0)
-// {
-// throw new UserFriendlyException("杈撳叆鍙傛暟Data涓嶈兘涓虹┖");
-// }
+ // if (input.Count == 0)
+ // {
+ // throw new UserFriendlyException("杈撳叆鍙傛暟Data涓嶈兘涓虹┖");
+ // }
-// var orderManager = _serviceProvider.GetRequiredService<IOrderManager>();
-// var productProvider = _serviceProvider.GetRequiredService<IProductProvider>();
-// var formulaProvider = _serviceProvider.GetRequiredService<IFormulaProvider>();
-// List<OrderModel> orderModels = new List<OrderModel>();
-// //鎸夌収浠诲姟缂栧彿鍒嗙粍
-// var groupTask = input.GroupBy(x => x.TaskCode);
-// foreach (var gTask in groupTask)
-// {
-// var taskCode = gTask.Key;
-// var order = await orderManager.GetByCodeAsync(taskCode);
-// if (order != null)
-// {
-// throw new UserFriendlyException($"浠诲姟缂栧彿[{taskCode}]宸插瓨鍦�");
-// }
+ // var orderManager = _serviceProvider.GetRequiredService<IOrderManager>();
+ // var productProvider = _serviceProvider.GetRequiredService<IProductProvider>();
+ // var formulaProvider = _serviceProvider.GetRequiredService<IFormulaProvider>();
+ // List<OrderModel> orderModels = new List<OrderModel>();
+ // //鎸夌収浠诲姟缂栧彿鍒嗙粍
+ // var groupTask = input.GroupBy(x => x.TaskCode);
+ // foreach (var gTask in groupTask)
+ // {
+ // var taskCode = gTask.Key;
+ // var order = await orderManager.GetByCodeAsync(taskCode);
+ // if (order != null)
+ // {
+ // throw new UserFriendlyException($"浠诲姟缂栧彿[{taskCode}]宸插瓨鍦�");
+ // }
-// //var product = await productProvider.FindByNameAsync(orderItem.PipeSectionName);
-// //if (product == null)
-// //{
-// // throw new UserFriendlyException($"浜у搧鍚嶇О[{orderItem.PipeSectionName}]涓嶅瓨鍦�");
-// //}
+ // //var product = await productProvider.FindByNameAsync(orderItem.PipeSectionName);
+ // //if (product == null)
+ // //{
+ // // throw new UserFriendlyException($"浜у搧鍚嶇О[{orderItem.PipeSectionName}]涓嶅瓨鍦�");
+ // //}
-// //var formula = await formulaProvider.GetFormulaAsync(product.Id);
-// //if (formula == null)
-// //{
-// // throw new UserFriendlyException($"浜у搧鍨嬪彿[{orderItem.MaterialCode}]鏃犲叧鑱旈厤鏂�");
-// //}
-// //棣栧厛瑕佸垱寤� 鎵撶爜鍒囧壊鐨勫伐鍗�
-// var productForCut = await productProvider.FindByNameAsync("鍒囧壊鍘熸枡绠�");
-// if (productForCut == null)
-// {
-// throw new UserFriendlyException($"浜у搧鍚嶇О[鍒囧壊鍘熸枡绠涓嶅瓨鍦�");
-// }
-// var formulaForCut = await formulaProvider.GetFormulaAsync(productForCut.Id);
-// if (formulaForCut == null)
-// {
-// throw new UserFriendlyException($"浜у搧鍚嶇О[鍒囧壊鍘熸枡绠鏃犲叧鑱旈厤鏂�");
-// }
-// //鍒嗙粍鏁版嵁
-// var group = gTask.ToList().GroupBy(x => x.DataIdentifier);
-// foreach (var item in group)
-// {
-// OrderModel orderModelForCut = new OrderModel()
-// {
-// Id = Guid.NewGuid(),
-// Code = "Cut_" + taskCode,
-// Source = "APS鎺ㄩ��",
-// PlanStartTime = gTask.ToList().First().PlannedStartTime,
-// PlanFinishTime = gTask.ToList().First().PlannedEndTime,
-// PlanQty = (ulong)item.ToList().Count,
-// Status = OrderStatus.NotActive,
-// Product = new AssociationProductModel() { Id = productForCut.Id, Name = productForCut.Name, Model = productForCut.Model, ShortNumber = productForCut.ShortNumber },
-// Formula = new AssociationFormulaModel() { Id = formulaForCut.Id, Code = formulaForCut.Code, Name = formulaForCut.Name }
-// };
-// orderModelForCut.ExtraProperties["OuterDiameter"] = gTask.ToList().First().OuterDiameter;//澶栧緞
-// orderModelForCut.ExtraProperties["Material"] = gTask.ToList().First().Material;//鏉愯川
-// orderModelForCut.ExtraProperties["Length"] = gTask.ToList().First().Length;//闀垮害
+ // //var formula = await formulaProvider.GetFormulaAsync(product.Id);
+ // //if (formula == null)
+ // //{
+ // // throw new UserFriendlyException($"浜у搧鍨嬪彿[{orderItem.MaterialCode}]鏃犲叧鑱旈厤鏂�");
+ // //}
+ // //棣栧厛瑕佸垱寤� 鎵撶爜鍒囧壊鐨勫伐鍗�
+ // var productForCut = await productProvider.FindByNameAsync("鍒囧壊鍘熸枡绠�");
+ // if (productForCut == null)
+ // {
+ // throw new UserFriendlyException($"浜у搧鍚嶇О[鍒囧壊鍘熸枡绠涓嶅瓨鍦�");
+ // }
+ // var formulaForCut = await formulaProvider.GetFormulaAsync(productForCut.Id);
+ // if (formulaForCut == null)
+ // {
+ // throw new UserFriendlyException($"浜у搧鍚嶇О[鍒囧壊鍘熸枡绠鏃犲叧鑱旈厤鏂�");
+ // }
+ // //鍒嗙粍鏁版嵁
+ // var group = gTask.ToList().GroupBy(x => x.DataIdentifier);
+ // foreach (var item in group)
+ // {
+ // OrderModel orderModelForCut = new OrderModel()
+ // {
+ // Id = Guid.NewGuid(),
+ // Code = "Cut_" + taskCode,
+ // Source = "APS鎺ㄩ��",
+ // PlanStartTime = gTask.ToList().First().PlannedStartTime,
+ // PlanFinishTime = gTask.ToList().First().PlannedEndTime,
+ // PlanQty = (ulong)item.ToList().Count,
+ // Status = OrderStatus.NotActive,
+ // Product = new AssociationProductModel() { Id = productForCut.Id, Name = productForCut.Name, Model = productForCut.Model, ShortNumber = productForCut.ShortNumber },
+ // Formula = new AssociationFormulaModel() { Id = formulaForCut.Id, Code = formulaForCut.Code, Name = formulaForCut.Name }
+ // };
+ // orderModelForCut.ExtraProperties["OuterDiameter"] = gTask.ToList().First().OuterDiameter;//澶栧緞
+ // orderModelForCut.ExtraProperties["Material"] = gTask.ToList().First().Material;//鏉愯川
+ // orderModelForCut.ExtraProperties["Length"] = gTask.ToList().First().Length;//闀垮害
-// var orderForCut = await orderManager.GetByCodeAsync(orderModelForCut.Code);
-// if (orderForCut != null)
-// {
-// //throw new UserFriendlyException($"宸ュ崟[{orderModelForCut.Code}]宸插瓨鍦�");
-// //涓嶅啀鎶涘紓甯革紝鐩存帴璺宠繃
-// break;
-// }
+ // var orderForCut = await orderManager.GetByCodeAsync(orderModelForCut.Code);
+ // if (orderForCut != null)
+ // {
+ // //throw new UserFriendlyException($"宸ュ崟[{orderModelForCut.Code}]宸插瓨鍦�");
+ // //涓嶅啀鎶涘紓甯革紝鐩存帴璺宠繃
+ // break;
+ // }
-// var orderModelResultForCut = await orderManager.CreateAsync(orderModelForCut);
-// if (orderModelResultForCut == null)
-// {
-// throw new UserFriendlyException($"宸ュ崟[{orderModelForCut.Code}]鍒涘缓澶辫触");
-// }
-// orderModels.Add(orderModelResultForCut);
+ // var orderModelResultForCut = await orderManager.CreateAsync(orderModelForCut);
+ // if (orderModelResultForCut == null)
+ // {
+ // throw new UserFriendlyException($"宸ュ崟[{orderModelForCut.Code}]鍒涘缓澶辫触");
+ // }
+ // orderModels.Add(orderModelResultForCut);
-// //OrderModel orderModel = new OrderModel();
-// //orderModel.Id = Guid.NewGuid();
-// //orderModel.Code = orderItem.TaskCode;
-// //orderModel.Source = "APS鎺ㄩ��";
-// //orderModel.Product = new AssociationProductModel() { Id = product.Id, Name = product.Name, Model = product.Model, ShortNumber = product.ShortNumber };
-// ////orderModel.Formula = new AssociationFormulaModel() { Id = formula.Id, Code = formula.Code, Name = formula.Name };
-// //orderModel.PlanStartTime = orderItem.PlannedStartTime;
-// //orderModel.PlanFinishTime = orderItem.PlannedEndTime;
-// //orderModel.PlanQty = (ulong?)orderItem.OrderQty;
-// //orderModel.Status = OrderStatus.NotActive;
-// //orderModel.ExtraProperties["Source"] = "ddd";
-// //var source = orderModel.ExtraProperties["Source"];
-// //var orderModelResult = await orderManager.CreateAsync(orderModel);
-// //if (orderModelResult == null)
-// //{
-// // throw new UserFriendlyException($"宸ュ崟[{orderItem.TaskCode}]鍒涘缓澶辫触");
-// //}
-// //orderModels.Add(orderModelResult);
-// }
+ // //OrderModel orderModel = new OrderModel();
+ // //orderModel.Id = Guid.NewGuid();
+ // //orderModel.Code = orderItem.TaskCode;
+ // //orderModel.Source = "APS鎺ㄩ��";
+ // //orderModel.Product = new AssociationProductModel() { Id = product.Id, Name = product.Name, Model = product.Model, ShortNumber = product.ShortNumber };
+ // ////orderModel.Formula = new AssociationFormulaModel() { Id = formula.Id, Code = formula.Code, Name = formula.Name };
+ // //orderModel.PlanStartTime = orderItem.PlannedStartTime;
+ // //orderModel.PlanFinishTime = orderItem.PlannedEndTime;
+ // //orderModel.PlanQty = (ulong?)orderItem.OrderQty;
+ // //orderModel.Status = OrderStatus.NotActive;
+ // //orderModel.ExtraProperties["Source"] = "ddd";
+ // //var source = orderModel.ExtraProperties["Source"];
+ // //var orderModelResult = await orderManager.CreateAsync(orderModel);
+ // //if (orderModelResult == null)
+ // //{
+ // // throw new UserFriendlyException($"宸ュ崟[{orderItem.TaskCode}]鍒涘缓澶辫触");
+ // //}
+ // //orderModels.Add(orderModelResult);
+ // }
-// }
+ // }
-// //淇濆瓨鍒拌〃涓�
-// foreach (var item in input)
-// {
-// var insertObj = ObjectMapper.Map<WorkPlanInput, WorkPlanCreateDto>(item);
-// insertObj.OrgMaterialCode = "1111";
-// insertObj.Sort = 1;
-// await _workPlanAppService.CreateAsync(insertObj);
-// }
+ // //淇濆瓨鍒拌〃涓�
+ // foreach (var item in input)
+ // {
+ // var insertObj = ObjectMapper.Map<WorkPlanInput, WorkPlanCreateDto>(item);
+ // //insertObj.OrgMaterialCode = "1111";
+ // insertObj.Sort = 1;
+ // await _workPlanAppService.CreateAsync(insertObj);
+ // }
-// // 鍙戝竷浜嬩欢
-// //await _eventBus.PublishAsync(new EntityChangedEto("MESCREATE", input, null, EntityChangeType.Add, true));
+ // // 鍙戝竷浜嬩欢
+ // //await _eventBus.PublishAsync(new EntityChangedEto("MESCREATE", input, null, EntityChangeType.Add, true));
-// var response = new MesOrderResponse
-// {
-// Code = "000000",
-// Data = orderModels,
-// Fail = false,
-// Mesg = "澶勭悊鎴愬姛",
-// Success = true,
-// Time = DateTime.UtcNow
-// };
-// return response;
-// }
-//}
+ // var response = new MesOrderResponse
+ // {
+ // Code = "000000",
+ // Data = orderModels,
+ // Fail = false,
+ // Mesg = "澶勭悊鎴愬姛",
+ // Success = true,
+ // Time = DateTime.UtcNow
+ // };
+ // return response;
+ //}
+}
--
Gitblit v1.9.3