From 1b6ccb64675e5262a2f7135697edc7466ffc14bf Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期二, 04 三月 2025 17:20:05 +0800
Subject: [PATCH] 优化
---
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/RequestInTaskAsync.cs | 127 +++++++++++++++++++++++++----------------
1 files changed, 77 insertions(+), 50 deletions(-)
diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/RequestInTaskAsync.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/RequestInTaskAsync.cs
index c89d0c7..c4f6241 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/RequestInTaskAsync.cs
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/RequestInTaskAsync.cs
@@ -4,6 +4,8 @@
using WIDESEA_DTO.MOM;
using WIDESEA_DTO.WMS;
+//using WIDESEAWCS_Model.Models;
+
namespace WIDESEA_StorageTaskServices;
public partial class Dt_TaskService : ServiceBase<Dt_Task, IDt_TaskRepository>, IDt_TaskService
@@ -39,63 +41,75 @@
private async Task<WebResponseContent> ProcessOCVB(DtBoxingInfo boxing, Dt_AreaInfo area, RequestTaskDto input)
{
WebResponseContent content = new WebResponseContent();
- // 鍒ゆ柇闇�涓嶉渶瑕佸幓鍖呰锛屼笉闇�瑕佸氨鍘诲父娓╀笁
- var stationManagers = _stationManagerRepository.QueryData(x => x.stationPLC == "1018" && x.stationArea == "Cache" && x.productLine == input.ProductionLine);
-
- var STATION = _stationManagerRepository.QueryFirst(x => x.stationChildCode == input.Position);
-
- //var station = stationManagers.Select(x => x.stationChildCode).ToList();
-
- //// 鑾峰彇WCSip鍦板潃鐩稿叧閰嶇疆
- var wcsIpAddrss = GetWCSIpAddress();
- //if (wcsIpAddrss == null)
- //{
- // throw new InvalidOperationException("WCS IP 鏈厤缃�");
- //}
-
- //var abc = HttpHelper.PostAsync(wcsIpAddrss, station.ToJsonString()).Result;
- //content = JsonConvert.DeserializeObject<WebResponseContent>(abc);
- //var num = content.Data.ObjToInt();
-
- //濡傛灉褰撳墠搴撳唴瀛樺湪姣斿綋鍓嶆椂闂寸殑瀵瑰簲浜х嚎鐨勬枡 鍒欏叆搴撹嚦甯告俯3
- DtStockInfo stockInfo = _stockInfoRepository.QueryFirst(x => x.AreaCode == "CWSC3" && x.IsFull == true && x.ProductionLine == STATION.productLine && x.OutboundTime < DateTime.Now);
- if (stockInfo != null)
+ try
{
- var config = _configService.GetByConfigKey("SYS_InStacker", "CW3InStacker");
- var strings = config.ConfigValue.Split(',').ToList();
- // 鍏ュ簱閫佽嚦甯告俯3
- var resultContent = await CreateNewTask(input, input.ProductionLine, boxing.ProcessCode, strings);
- if (resultContent.Status)
+ // 鍒ゆ柇闇�涓嶉渶瑕佸幓鍖呰锛屼笉闇�瑕佸氨鍘诲父娓╀笁
+ var stationManagers = _stationManagerRepository.QueryData(x => x.stationPLC == "1018" && x.stationArea == "Cache" && x.productLine == input.ProductionLine);
+
+ var STATION = _stationManagerRepository.QueryFirst(x => x.stationChildCode == input.Position);
+
+ //var station = stationManagers.Select(x => x.stationChildCode).ToList();
+
+ //// 鑾峰彇WCSip鍦板潃鐩稿叧閰嶇疆
+ var wcsIpAddrss = GetWCSIpAddress();
+ //if (wcsIpAddrss == null)
+ //{
+ // throw new InvalidOperationException("WCS IP 鏈厤缃�");
+ //}
+
+ //var abc = HttpHelper.PostAsync(wcsIpAddrss, station.ToJsonString()).Result;
+ //content = JsonConvert.DeserializeObject<WebResponseContent>(abc);
+ //var num = content.Data.ObjToInt();
+
+ //濡傛灉褰撳墠搴撳唴瀛樺湪姣斿綋鍓嶆椂闂寸殑瀵瑰簲浜х嚎鐨勬枡 鍒欏叆搴撹嚦甯告俯3
+ DtStockInfo stockInfo = _stockInfoRepository.QueryFirst(x => x.AreaCode == "CWSC3" && x.IsFull == true && x.ProductionLine == STATION.productLine && x.OutboundTime < DateTime.Now);
+ if (stockInfo != null)
{
- await _boxingInfoRepository.AddDataNavAsync(boxing);
+ var config = _configService.GetByConfigKey("SYS_InStacker", "CW3InStacker");
+ var strings = config.ConfigValue.Split(',').ToList();
+ // 鍏ュ簱閫佽嚦甯告俯3
+ var resultContent = await CreateNewTask(input, input.ProductionLine, boxing.ProcessCode, strings);
+ if (resultContent.Status)
+ {
+ await _boxingInfoRepository.AddDataNavAsync(boxing);
+ }
+ return resultContent;
}
- return resultContent;
- }
- // TODO 鍒ゆ柇鍦ㄩ�旀暟閲�
+ // TODO 鍒ゆ柇鍦ㄩ�旀暟閲�
- var needBarcode = await SqlSugarHelper.DbWCS.Queryable<dt_needBarcode>().FirstAsync(x => x.productLine == STATION.productLine);
- var needCount = needBarcode.inLineNum;
- //var count = BaseDal.QueryData(x => x.TargetAddress == stationManagers[0].Roadway).Count;
- if (needCount < 2)
- {
- // 閫佽嚦鍖呰
- List<string> strings = stationManagers.Where(x => x.stationType == 0).Select(x => x.Roadway).ToList();
- var x = await SqlSugarHelper.DbWCS.Updateable<dt_needBarcode>().SetColumns(x => x.inLineNum == x.inLineNum + 1).ExecuteCommandHasChangeAsync();
- ConsoleHelper.WriteSuccessLine($"鍦ㄩ�旀暟閲忔坊鍔爗(x ? "鎴愬姛" : "澶辫触")}鏁伴噺+1");
- return await CreateNewTask(input, input.ProductionLine, boxing.ProcessCode, strings, 3);
- }
- else
- {
- var config = _configService.GetByConfigKey("SYS_InStacker", "CW3InStacker");
- var strings = config.ConfigValue.Split(',').ToList();
- // 鍏ュ簱閫佽嚦甯告俯3
- var resultContent = await CreateNewTask(input, input.ProductionLine, boxing.ProcessCode, strings);
- if (resultContent.Status)
+ var needBarcode = await SqlSugarHelper.DbWCS.Queryable<dt_needBarcode>().FirstAsync(x => x.productLine == STATION.productLine);
+ var needCount = needBarcode.inLineNum;
+ //var count = BaseDal.QueryData(x => x.TargetAddress == stationManagers[0].Roadway).Count;
+ if (needCount < needBarcode.cacheNum)
{
- await _boxingInfoRepository.AddDataNavAsync(boxing);
+ // 閫佽嚦鍖呰
+ List<string> strings = stationManagers.Where(x => x.stationType == 0 && x.productLine == input.ProductionLine).Select(x => x.Roadway).ToList();
+ var x = await SqlSugarHelper.DbWCS.Updateable<dt_needBarcode>()
+ .SetColumns(x => x.inLineNum == x.inLineNum + 1)
+ .Where(x => x.id == needBarcode.id).ExecuteCommandHasChangeAsync();
+ ConsoleHelper.WriteSuccessLine($"鍦ㄩ�旀暟閲忔坊鍔爗(x ? "鎴愬姛" : "澶辫触")}鏁伴噺+1,褰撳墠宸ュ簭{boxing.ProcessCode},浜х嚎{input.ProductionLine}");
+ LogFactory.GetLog("OCVB").InfoFormat(true, $"鍦ㄩ�旀暟閲忔坊鍔爗(x ? "鎴愬姛" : "澶辫触")}鏁伴噺+1,褰撳墠宸ュ簭{boxing.ProcessCode},浜х嚎{input.ProductionLine}", "鏃犲弬鏁�");
+ return await CreateNewTask(input, input.ProductionLine, boxing.ProcessCode, strings, 3);
}
- return resultContent;
+ else
+ {
+ var config = _configService.GetByConfigKey("SYS_InStacker", "CW3InStacker");
+ var strings = config.ConfigValue.Split(',').ToList();
+ // 鍏ュ簱閫佽嚦甯告俯3
+ var resultContent = await CreateNewTask(input, input.ProductionLine, boxing.ProcessCode, strings);
+ if (resultContent.Status)
+ {
+ await _boxingInfoRepository.AddDataNavAsync(boxing);
+ }
+ return resultContent;
+ }
+ }
+ catch (Exception ex)
+ {
+ ConsoleHelper.WriteErrorLine(ex.Message);
+ LogFactory.GetLog("OCVB").InfoFormat(true, $"锛屽紓甯镐俊鎭細{ex.Message},{ex.StackTrace}", "鏃犲弬鏁�");
+ return content.Error(ex.Message);
}
}
@@ -144,6 +158,19 @@
{
throw new Exception("鏈壘鍒板叆搴撶珯鍙伴厤缃�");
}
+ //List<string> strings;
+ //if (areaIn == "GWSC1")
+ //{
+ // strings = new List<string>
+ // {
+ // (boxing.ProductionLine != null && boxing.ProductionLine == "ZJ-7") ? "GWSC1" : "GWSC2"
+ // };
+ //}
+ //else
+ //{
+ // strings = stationManagers.Roadway.Split(',').ToList();
+ //}
+
List<string> strings = stationManagers.Roadway.Split(',').ToList();
var resultContent = await CreateNewTask(input, result.ProductionLine, boxing.ProcessCode, strings);
--
Gitblit v1.9.3