From b5904672914f1088841208b4084fc7619576fa2e Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 20 5月 2025 11:50:32 +0800
Subject: [PATCH] 优化
---
PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs | 192 +++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 164 insertions(+), 28 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 297b6c4..7b61b13 100644
--- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs
+++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs
@@ -1,36 +1,29 @@
+using CMS.Extensions.Variable;
using CMS.Plugin.FormulaManagement.Abstractions;
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto;
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
+using CMS.Plugin.MaterialManagement.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.ProductManagement.Abstractions;
-using Microsoft.Extensions.DependencyInjection;
-using Volo.Abp;
-using Microsoft.Extensions.DependencyInjection;
-using NPOI.Util;
-using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrder;
-using CMS.Plugin.PipeLineLems.Application.Contracts.Services;
using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.CallMaterialOrder;
-using Volo.Abp.Uow;
-using System.Text;
-using CMS.Plugin.PipeLineLems.Domain.WorkPlan;
+using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan;
+using CMS.Plugin.PipeLineLems.Application.Contracts.Services;
+using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrder;
using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrderRecord;
-using Volo.Abp.Users;
-using CmsQueryExtensions.Entitys;
-using CMS.Unit.RuntimeValue.Abstractions;
-using CMS.Extensions.Variable;
-using CMS.Plugin.TraceManagement.Abstractions.Models.Traces;
+using CMS.Plugin.PipeLineLems.Domain.WorkPlan;
using CMS.Plugin.ProcessManagement.Abstractions;
-using KissUtil.Extensions;
+using CMS.Plugin.ProductManagement.Abstractions;
using CMS.Plugin.TraceManagement.Abstractions;
-using CMS.Plugin.ProductManagement.Abstractions.Models;
-using CMS.Plugin.MaterialManagement.Abstractions;
-using CMS.Plugin.HIAWms.Application.Contracts.Services;
-using CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto;
-using System.Collections.Generic;
-using CMS.Plugin.HIAWms.Abstractions;
-using Newtonsoft.Json;
+using CMS.Plugin.TraceManagement.Abstractions.Models.Traces;
using CmsQueryExtensions;
+using CmsQueryExtensions.Entitys;
+using CmsQueryExtensions.Extension;
+using KissUtil.Extensions;
+using Microsoft.Extensions.DependencyInjection;
+using Newtonsoft.Json;
+using Volo.Abp;
+using Volo.Abp.Uow;
namespace CMS.Plugin.PipeLineLems.Application.Implements;
@@ -49,11 +42,24 @@
/// <returns></returns>
public async Task<MesOrderResponse> CommonPick(IServiceProvider _serviceProvider, PickInput input, MyCurrentUser myCurrentUser)
{
+ if (string.IsNullOrEmpty(input.TaskCode))
+ {
+ throw new UserFriendlyException("璇疯緭鍏ヤ换鍔$紪鍙�");
+ };
+ if (string.IsNullOrEmpty(input.PipeSpecCode))
+ {
+ throw new UserFriendlyException("璇疯緭鍏ョ娈电紪鐮�");
+ };
+ if (string.IsNullOrEmpty(input.ContinerNo))
+ {
+ throw new UserFriendlyException("璇疯緭鍏ユ墭鐩樺彿");
+ };
//1銆佽褰曞垎鎷h褰曡〃
//2銆佹洿鏂颁綔涓氳鍒掕〃鐨勭姸鎬� =宸插垎鎷�
//3銆佸啓鍏� 鍒嗘嫞鍙橀噺
//4銆佸啓鍏ヨ拷婧姤琛�
//5銆佺墿鏂欑粍鐩�
+
VariableService _variableService = _serviceProvider.GetRequiredService<VariableService>();
var _workSectionManager = _serviceProvider.GetRequiredService<IWorkSectionManager>();
@@ -101,11 +107,50 @@
});
}
//鐗╂枡鍙傛暟鍒楄〃
- var firstWorkPlans = await workPlanAppService.GetListByFilterAsync(x => x.PipeSpecCode == input.PipeSpecCode);
-
- var firstWorkPlan = await workPlanAppService.GetSingleByFilterAsync(x => x.PipeSpecCode == input.PipeSpecCode);
-
+ var firstWorkPlan = await workPlanAppService.GetSingleByFilterAsync(x => x.TaskCode == input.TaskCode);
var callMaterialOrder = await callMaterialOrderAppService.GetSingleByFilterAsync(x => x.DataIdentifier == firstWorkPlan.DataIdentifier);
+ //TODO:杩欓噷璋冪敤wms鐨勫彨鏂欐帴鍙�
+ try
+ {
+ WmsMaterialStockCreateDto param = new WmsMaterialStockCreateDto()
+ {
+ ContainerNo = input.ContinerNo,
+ MaterialModel = firstWorkPlan.MaterialMode,
+ PlaceNo = input.PlaceNo,
+ StockNumber = 1,
+ MaterialBatch = callMaterialOrder.MaterialBatch,
+
+ RedundantField1 = firstWorkPlan.ProcessRouteNumber, //鎵╁睍瀛楁鏄剧ず 宸ヨ壓娴佸悜缂栧彿
+ RedundantField2 = firstWorkPlan.PipeSpecCode, //鎵╁睍瀛楁鏄剧ず 绠℃缂栫爜
+ RedundantField3 = firstWorkPlan.PipeSectionName, //鎵╁睍瀛楁鏄剧ず 绠℃鍚嶇О
+
+ };
+ string baseUrl = @"http://127.0.0.1:18000/api/v1/HIAWms/";
+ string url = baseUrl + "LMesOperate/LMesPick";
+ string json = JsonConvert.SerializeObject(param);
+ var result = HttpApiRequest.HttpPost(url, json);
+ var res = JsonConvert.DeserializeObject<CmsApiResponse<WmsMaterialStockDto>>(result);
+ if (res.Code == 200)
+ {
+ var retData = res.Data;
+ //callMaterialOrder.MaterialBatch = retData[0].MaterialBatch;
+ //callMaterialOrder.WmsTaskNo = retData[0].TaskNo;
+ //callMaterialOrder.WmsRetResult = res.Message;
+ }
+ else
+ {
+ throw new UserFriendlyException(res.Message);
+ }
+ }
+ catch (Exception)
+ {
+
+ throw;
+ }
+
+
+
+
var rawPipe_DataIdentifier = await materialProvider.FindByNameAsync("鍘熸枡绠℃爣璇�");
var rawPipe_MaterialMode = await materialProvider.FindByNameAsync("鍘熸枡绠″瀷鍙�");
@@ -516,6 +561,7 @@
string url = baseUrl + "lMesOperate/LMesCallMaterial";
string json = JsonConvert.SerializeObject(param);
var result = HttpApiRequest.HttpPost(url, json);
+
var res = JsonConvert.DeserializeObject<CmsApiResponse<List<MyCallMaterialOutput>>>(result);
if (res.Code == 200)
{
@@ -528,6 +574,7 @@
{
throw new UserFriendlyException(res.Message);
}
+ //*/
}
catch (Exception)
{
@@ -1013,6 +1060,95 @@
}
+
+ /// <summary>
+ /// 鍒嗘嫞鏃惰幏鍙栫敓浜ц鍒掑拰鍒嗛厤鍖哄煙
+ /// </summary>
+ /// <param name="input"></param>
+ /// <param name="_serviceProvider"></param>
+ /// <param name="myCurrentUser"></param>
+ /// <returns></returns>
+ /// <exception cref="UserFriendlyException"></exception>
+ public async Task<CmsApiResponse<PickOutput>> GetPickRetAsync(GetWorkPlanInput input, IServiceProvider _serviceProvider, MyCurrentUser myCurrentUser)
+ {
+
+
+ var callMaterialOrderRepository = _serviceProvider.GetRequiredService<ICallMaterialOrderRepository>();
+ var workPlanRepository = _serviceProvider.GetRequiredService<IWorkPlanRepository>();
+ var _workPlanAppService = _serviceProvider.GetRequiredService<IWorkPlanAppService>();
+ var callMaterialOrderRecordRepository = _serviceProvider.GetRequiredService<ICallMaterialOrderRecordRepository>();
+ var orderManager = _serviceProvider.GetRequiredService<IOrderManager>();
+
+ // 鏌ユ壘鏁版嵁
+
+ WorkPlanDto workPlanDto = await _workPlanAppService.FindSingleByFilterAsync(input);
+
+ //TODO:杩欓噷璋冪敤wms鐨勫簱瀛樻煡璇㈡帴鍙�
+ try
+ {
+ GetWmsMaterialStockInput param = new GetWmsMaterialStockInput()
+ {
+ RedundantField1 = workPlanDto.ProcessRouteNumber,
+ RedundantField1_FilterMode = SearchFilterModeEnum.绮惧噯鏌ヨ
+ };
+
+ string baseUrl = @"http://127.0.0.1:18000/api/v1/HIAWms/";
+ string url = baseUrl + "LMesOperate/FindListByFilter";
+ string json = JsonConvert.SerializeObject(param);
+ var result = HttpApiRequest.HttpPost(url, json);
+ var res = JsonConvert.DeserializeObject<CmsApiResponse<List<WmsMaterialStockDto>>>(result);
+ if (res.Code == 200)
+ {
+ var retData = res.Data as List<WmsMaterialStockDto>;
+ var data = new PickOutput()
+ {
+ WorkPlan = workPlanDto,
+ PlaceNo = "",//寰呰祴鍊�
+ ContinerNo = ""//寰呰祴鍊�
+ };
+ if (retData?.Count > 0)
+ {
+ data.PlaceNo = retData.First().PlaceNo;
+ data.ContinerNo = retData.First().ContainerNo;
+ }
+
+ var response = new CmsApiResponse<PickOutput>
+ {
+ Code = 200,
+ Data = data,
+ Message = "澶勭悊鎴愬姛",
+ };
+ return response;
+
+ }
+ else
+ {
+ throw new UserFriendlyException(res.Message);
+ };
+ //*/
+ //妯℃嫙
+ //var data = new PickOutput()
+ //{
+ // WorkPlan = workPlanDto,
+ // PlaceNo = "",//寰呰祴鍊�
+ // ContinerNo = ""//寰呰祴鍊�
+ //};
+ //var response = new CmsApiResponse<PickOutput>
+ //{
+ // Code = 200,
+ // Data = data,
+ // Message = "澶勭悊鎴愬姛",
+ //};
+ //return response;
+
+ }
+ catch (Exception)
+ {
+
+ throw;
+ }
+ }
+
/// <summary>
/// 鐢熸垚闅忔満鐨刉msTaskNo
/// </summary>
--
Gitblit v1.9.3