From 1d044540ee1b7041c7e89bdfe6d1339c99e80a4e Mon Sep 17 00:00:00 2001
From: 刘磊 <1161824510@qq.com>
Date: 星期三, 08 一月 2025 14:41:16 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/HuaYiZhongHeng/BaiBuLiKu
---
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/RequestInTaskAsync.cs | 82 +++++++++++++++++++++++++----------------
1 files changed, 50 insertions(+), 32 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 edfdcc7..2ea4892 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
@@ -1,21 +1,9 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection.Metadata;
-using System.Text;
-using System.Threading.Tasks;
+锘縰sing Masuit.Tools;
using WIDESEA_Core.Const;
-using WIDESEA_Core.DB.Models;
using WIDESEA_DTO.MOM;
using WIDESEA_DTO.WMS;
-using WIDESEA_DTO;
-using WIDESEA_Model.Models;
-using WIDESEA_Repository;
-using WIDESEAWCS_BasicInfoRepository;
-using Masuit.Tools;
namespace WIDESEA_StorageTaskServices;
-
public partial class Dt_TaskService : ServiceBase<Dt_Task, IDt_TaskRepository>, IDt_TaskService
{
@@ -51,19 +39,39 @@
{
WebResponseContent content = new WebResponseContent();
// 鍒ゆ柇闇�涓嶉渶瑕佸幓鍖呰锛屼笉闇�瑕佸氨鍘诲父娓╀笁
- var stationManagers = _stationManagerRepository.QueryData(x => x.stationPLC == "1018" && x.stationArea == "Cache");
- var station = stationManagers.Select(x => x.stationChildCode).ToList();
+ var stationManagers = _stationManagerRepository.QueryData(x => x.stationPLC == "1018" && x.stationArea == "Cache" && x.productLine == input.ProductionLine);
- // 鑾峰彇WCSip鍦板潃鐩稿叧閰嶇疆
+ //var station = stationManagers.Select(x => x.stationChildCode).ToList();
+
+ //// 鑾峰彇WCSip鍦板潃鐩稿叧閰嶇疆
var wcsIpAddrss = GetWCSIpAddress();
- if (wcsIpAddrss == null)
+ //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 == input.ProductionLine && x.OutboundTime < DateTime.Now);
+ if (stockInfo != null)
{
- throw new InvalidOperationException("WCS IP 鏈厤缃�");
+ var config = _configService.GetByConfigKey("SYS_InStacker", "CW3InStacker");
+ var strings = config.ConfigValue.Split(',').ToList();
+ // 鍏ュ簱閫佽嚦甯告俯3
+ var resultContent = await CreateNewTask(input, strings);
+ if (resultContent.Status)
+ {
+ await _boxingInfoRepository.AddDataNavAsync(boxing);
+ }
+ return resultContent;
}
- var abc = HttpHelper.PostAsync(wcsIpAddrss, station.ToJsonString()).Result;
- content = JsonConvert.DeserializeObject<WebResponseContent>(abc);
- if (content.Data.ObjToInt() > 0)
+ // TODO 鍒ゆ柇鍦ㄩ�旀暟閲�
+ var count = BaseDal.QueryData(x => x.TargetAddress == stationManagers[0].Roadway).Count;
+ if (count <= 10)
{
// 閫佽嚦鍖呰
List<string> strings = stationManagers.Where(x => x.stationType == 0).Select(x => x.Roadway).ToList();
@@ -107,9 +115,13 @@
if (!content.Status) return content.Error("宸ヨ壓鐢宠澶辫触");
var resultProcessApply = JsonConvert.DeserializeObject<ResultProcessApply>(content.Data.ToString());
- if (!resultProcessApply.Success) return content.Error("宸ヨ壓鐢宠澶辫触");
+ if (!resultProcessApply.Success)
+ {
+ return await HandleErrorCells(input, area);
+ //return content.Error("宸ヨ壓鐢宠澶辫触");
+ }
- var number = resultProcessApply.ProcessInfo.Where(x => x.ProcessCode == boxing.ProcessCode).FirstOrDefault().Number.ToInt32();
+ var number = resultProcessApply.ProcessInfo.Where(x => x.ProcessCode.Contains(boxing.ProcessCode)).FirstOrDefault().Number.ToInt32();
foreach (var item in resultProcessApply.ProcessInfo)
{
if (item.Number.ToInt32() == number + 1)
@@ -140,14 +152,19 @@
{
case "CH01":
return "CH001";
+
case "JZ01":
return "JZ001";
+
case "GW01":
return "GWSC1";
+
case "CW01":
return "CWSC1";
+
case "CW02":
return "CWSC2";
+
default:
return string.Empty;
}
@@ -168,20 +185,21 @@
/// <summary>
/// 鐢佃姱NG閫佽嚦NG鍙�
/// </summary>
- private async Task<WebResponseContent> HandleErrorCells(RequestTaskDto input, Dt_AreaInfo area, List<SerialNoDto> serialNosError)
+ private async Task<WebResponseContent> HandleErrorCells(RequestTaskDto input, Dt_AreaInfo area, List<SerialNoDto> serialNosError = null)
{
WebResponseContent content = new WebResponseContent();
// TODO 鍒涘缓浠诲姟閫佽嚦NG鎺掑嚭鍙�
- var stationManagers = _stationManagerRepository.QueryData(x => x.stationType == 1 && x.stationChildCode == input.Position && x.stationArea == area.AreaCode).ToList();
- if (stationManagers.Count <= 0)
+ var stationManagers = _stationManagerRepository.QueryData(x => x.stationType == 1 && x.stationChildCode == input.Position && x.stationArea == area.AreaCode).FirstOrDefault();
+ if (stationManagers == null)
{
throw new Exception("鏈壘鍒癗G鍏ュ簱绔欏彴閰嶇疆");
}
- List<string> NGStation = stationManagers.Select(x => x.stationNGLocation).ToList();
- if (NGStation.Count <= 0)
- {
- NGStation = stationManagers.Select(x => x.stationNGChildCode).ToList();
- }
+ //List<string> NGStation = stationManagers.Roadway.Split(',').ToList();
+ //if (NGStation.Count <= 0)
+ //{
+ // NGStation = stationManagers.stationNGChildCode.Split(',').ToList();
+ //}
+ List<string> NGStation = stationManagers.stationNGChildCode.Split(',').ToList();
content = await CreateNewTask(input, NGStation, 2);
return content.Error("瀛樺湪寮傚父鐢佃姱");
}
@@ -240,4 +258,4 @@
{
return await _areaInfoRepository.QueryFirstAsync(x => x.Spare1.Contains(position));
}
-}
+}
\ No newline at end of file
--
Gitblit v1.9.3