From c0d5e7c40f87c18fc7c53ffd810069d0b41cb849 Mon Sep 17 00:00:00 2001
From: 陈勇 <竞男@ASUNA>
Date: 星期五, 20 三月 2026 16:47:48 +0800
Subject: [PATCH] 同步
---
项目代码/WCS/WCSServer/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs | 402 ++++++++++++++++++++++++++++-----------------------------
1 files changed, 199 insertions(+), 203 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServer/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServer/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs"
index 0d98309..6486ac6 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServer/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServer/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs"
@@ -43,6 +43,7 @@
using WIDESEAWCS_SignalR;
using WIDESEAWCS_Tasks.ConveyorLineJob;
using WIDESEAWCS_Tasks.StackerCraneJob;
+using static Microsoft.EntityFrameworkCore.DbLoggerCategory.Database;
using ICacheService = WIDESEAWCS_Core.Caches.ICacheService;
namespace WIDESEAWCS_Tasks
@@ -60,10 +61,11 @@
private readonly ICacheService _cacheService;
private readonly INoticeService _noticeService;
private readonly IDt_needBarcodeRepository _needBarcodeRepository;
+ private readonly IDt_StationManagerRepository _stationManagerRepository;
private static List<string>? userTokenIds;
private static List<int>? userIds;
- public CommonConveyorLineJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, IRouterService routerService, IMapper mapper, ITaskRepository taskRepository, IDt_StationManagerService stationManagerService, ISys_ConfigService sys_ConfigService, ICacheService cacheService, INoticeService noticeService, IDt_needBarcodeRepository needBarcodeRepository)
+ public CommonConveyorLineJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, IRouterService routerService, IMapper mapper, ITaskRepository taskRepository, IDt_StationManagerService stationManagerService, ISys_ConfigService sys_ConfigService, ICacheService cacheService, INoticeService noticeService, IDt_needBarcodeRepository needBarcodeRepository, IDt_StationManagerRepository stationManagerRepository)
{
_taskService = taskService;
_taskExecuteDetailService = taskExecuteDetailService;
@@ -75,6 +77,7 @@
_cacheService = cacheService;
_noticeService = noticeService;
_needBarcodeRepository = needBarcodeRepository;
+ _stationManagerRepository = stationManagerRepository;
}
public async Task Execute(IJobExecutionContext context)
@@ -88,19 +91,106 @@
foreach (var station in stationManagers)
{
- ConveyorLineTaskCommand command = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(station.stationChildCode);
- DeviceProtocolDetailDTO? deviceProtocolDetails = conveyorLine.DeviceProtocolDetailDTOs.FirstOrDefault(x => x.DeviceProParamName == station.stationChildCode && x.ProtocalDetailValue == command.RequestTask.ToString());
-
- //x.DeviceProParamName == nameof(ConveyorLineTaskCommand.ConveyorLineSingal)
- if (deviceProtocolDetails != null)
+ if (station.stationType == 8) //鐒婅鎺ヨ溅閫昏緫澶勭悊
{
- MethodInfo? method = GetType().GetMethod(deviceProtocolDetails.ProtocolDetailType);
- if (method != null)
+ var request = conveyorLine.GetValue<ConveyorLineDBName, bool>(ConveyorLineDBName.EntApply, station.stationChildCode);
+ if (request)
{
- method.Invoke(this, new object[] { conveyorLine, command, station });
+ var palletcode = conveyorLine.GetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.SkidNo, station.stationChildCode);
+ var pvi = conveyorLine.GetValue<ConveyorLineDBName, string>(ConveyorLineDBName.PVI, station.stationChildCode);
+
+ WebResponseContent response = _taskService.RequestWhiteBody(palletcode.ToString(), pvi, station).Result;
+ if (response.Status)
+ {
+ conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.AllowRelease, 1, station.stationChildCode);
+ }
}
}
+ if (station.stationType == 5) //鐒婅鎻愬崌鏈洪�昏緫澶勭悊
+ {
+ var request = conveyorLine.GetValue<ConveyorLineDBName, bool>(ConveyorLineDBName.EntApply, station.stationChildCode);
+ if (request)
+ {
+ var palletcode = conveyorLine.GetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.SkidNo, station.stationChildCode);
+ var pvi = conveyorLine.GetValue<ConveyorLineDBName, string>(ConveyorLineDBName.PVI, station.stationChildCode);
+
+ if (station.stationModel == "1") //鐩撮�氭ā寮�
+ {
+ //todo BDC02杩囩偣 鐒婃秱缁戝畾
+ conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.Spare6, 2, station.stationChildCode);
+ conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.AllowRelease, 1, station.stationChildCode);
+ }
+ else //鍏ュ簱妯″紡
+ {
+ WebResponseContent response = _taskService.RequestRoadWayTask(palletcode.ToString(), pvi, station).Result;
+ if (response.Status)
+ {
+ var task = _taskService.QueryBarCodeConveyorLineTask(palletcode.ToString(), station.stationChildCode);
+ if (task != null)
+ {
+ var stationInfo = _stationManagerRepository.QueryFirst(x => x.stationChildCode == task.NextAddress);
+ conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.Spare6, 3, station.stationChildCode);
+ Thread.Sleep(300);
+ conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.Spare5, Convert.ToInt16(stationInfo.stationTCLocation), station.stationChildCode);
+ conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.AllowRelease, 1, station.stationChildCode);
+
+ _taskService.UpdateTaskStatusToNext(task);
+ }
+ }
+ }
+ }
+ //var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
+ //var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue;
+ //var requestTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.RequestInboundRoadWayNo)?.ConfigValue;
+ //if (wmsBase == null || requestTask == null)
+ //{
+ // throw new InvalidOperationException("WMS IP 鏈厤缃�");
+ //}
+ //var wmsIpAddrss = wmsBase + requestTask;
+
+ //var result = await HttpHelper.PostAsync(wmsIpAddrss, new { palletCode = palletcode, Roadways = station.Roadway, area = station.stationArea, Position = station.stationChildCode, PVI = pvi }.ToJsonString());
+ //WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result);
+ //if (!content.Status)
+ //{
+ // return;
+ //}
+
+ ////鐒婃秱鎻愬崌鏈� 鐩撮�氫汉娑傝-2 鍏ュ簱-3
+ //conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.Spare6, 3, station.stationChildCode);
+ //conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.Spare5, 5, station.stationChildCode);
+ //conveyorLine.SetValue<ConveyorLineDBName, Int16>(ConveyorLineDBName.AllowRelease, 1, station.stationChildCode);
+ }
+
+ //DeviceProtocolDetailDTO? deviceProtocolDetails = conveyorLine.DeviceProtocolDetailDTOs.FirstOrDefault(x => x.DeviceProParamName == station.stationChildCode && x.ProtocalDetailValue == request.ToString());
+
+ //if (deviceProtocolDetails != null)
+ //{
+ // MethodInfo? method = GetType().GetMethod(deviceProtocolDetails.ProtocolDetailType);
+ // if (method != null)
+ // {
+ // method.Invoke(this, new object[] { conveyorLine, conveyorLine, station });
+ // }
+ //}
+
+ //ConveyorLineTaskCommand command = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(station.stationChildCode);
+ //command.PVI.Replace("/0", "").Replace("\"\\u0010\\u000f", "");
+ //command.CarColor.Replace("/0", "");
+ //command.CarType.Replace("/0", "");
+ //command.CarCate.Replace("/0", "");
+ //command.CatSkyWindow.Replace("/0", "");
+
+ //DeviceProtocolDetailDTO? deviceProtocolDetails = conveyorLine.DeviceProtocolDetailDTOs.FirstOrDefault(x => x.DeviceProParamName == station.stationChildCode && x.ProtocalDetailValue == command.Request.ToString());
+
+ ////x.DeviceProParamName == nameof(ConveyorLineTaskCommand.ConveyorLineSingal)
+ //if (deviceProtocolDetails != null)
+ //{
+ // MethodInfo? method = GetType().GetMethod(deviceProtocolDetails.ProtocolDetailType);
+ // if (method != null)
+ // {
+ // method.Invoke(this, new object[] { conveyorLine, command, station });
+ // }
+ //}
#region 璋冪敤浜嬩欢鎬荤嚎閫氱煡鍓嶇
//var tokenInfos = _cacheService.Get<List<UserInfo>>("Cache_UserToken");
@@ -129,60 +219,50 @@
}
finally
{
- WriteDebug("CommonConveyorLineJob", "test");
+ //WriteDebug("CommonConveyorLineJob", "test");
//Console.Out.WriteLine(DateTime.Now);
}
return;
}
- /// <summary>
- /// 杈撻�佺嚎璇锋眰鍒嗛厤璺緞
- /// </summary>
- /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param>
- /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param>
- /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
- public void RequestInboundFlow(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, Dt_StationManager stationInfo)
- {
- var log = $"銆恵conveyorLine.DeviceName}銆�,鎵樼洏鍙凤細銆恵stationInfo.stationChildCode}銆�,绔欏彴锛氥�恵stationInfo.remark}銆戣姹傛祦鍚�";
- ConsoleHelper.WriteSuccessLine(log);
+ ///// <summary>
+ ///// 杈撻�佺嚎璇锋眰鍏ュ簱
+ ///// </summary>
+ ///// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param>
+ ///// <param name="command">璇诲彇鐨勮姹備俊鎭�</param>
+ ///// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
+ //public void RequestReceviceCar(CommonConveyorLine conveyorLine, CommonConveyorLine conveyorLine2, Dt_StationManager stationInfo)
+ //{
+ // var log = $"銆恵conveyorLine.DeviceName}銆�,鎵樼洏鍙凤細銆恵stationInfo.stationChildCode}銆�,绔欏彴锛氥�恵stationInfo.remark}銆戣姹備换鍔�";
+ // ConsoleHelper.WriteSuccessLine(log);
- //_noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" });
- WriteInfo(conveyorLine.DeviceName, log);
- //if()
+ // //_noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" });
+ // WriteInfo(conveyorLine.DeviceName, log);
+ // //if()
+ // var palletcode = conveyorLine2.GetValue<ConveyorLineDBName, string>(ConveyorLineDBName.SkidNo, stationInfo.stationChildCode);
+ // var taskNew = _taskService.QueryConveyorLineTask(palletcode, stationInfo.stationChildCode);
+ // if (taskNew == null)
+ // {
+ // if (_taskService.RequestTask(palletcode, stationInfo).Result.Status)
+ // {
+ // Dt_Task task = _taskService.QueryConveyorLineTask(palletcode, stationInfo.stationChildCode);
+ // if (task != null)
+ // {
+ // //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.NextAddress, stationInfo.stationChildCode);
- var taskNew = _taskService.QueryConveyorLineTask(command.Barcode, stationInfo.stationChildCode);
- if (taskNew == null)
- {
- if (_taskService.RequestTask(command.Barcode, stationInfo).Result.Status)
- {
- Dt_Task task = _taskService.QueryConveyorLineTask(command.Barcode, stationInfo.stationChildCode);
- if (task != null)
- {
- conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.NextAddress, stationInfo.stationChildCode);
+ // //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.NextAddress, stationInfo.stationChildCode);
+ // //conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
- //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.NextAddress, stationInfo.stationChildCode);
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
-
- _taskService.UpdateTaskStatusToNext(task);
- }
- }
- else
- {
- //濡傛灉浠诲姟璇锋眰澶辫触
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 2, stationInfo.stationChildCode);
- }
- }
- else
- {
- conveyorLine.SetValue(ConveyorLineDBName.Barcode, taskNew.PalletCode, stationInfo.stationChildCode);
-
- conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, taskNew.NextAddress, stationInfo.stationChildCode);
- //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, taskNew.NextAddress, stationInfo.stationChildCode);
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
-
- _taskService.UpdateTaskStatusToNext(taskNew);
- }
- }
+ // _taskService.UpdateTaskStatusToNext(task);
+ // }
+ // }
+ // else
+ // {
+ // //濡傛灉浠诲姟璇锋眰澶辫触
+ // //conveyorLine.SetValue(ConveyorLineDBName.ResponState, 2, stationInfo.stationChildCode);
+ // }
+ // }
+ //}
/// <summary>
/// 杈撻�佺嚎璇锋眰鍏ュ簱
@@ -190,55 +270,38 @@
/// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param>
/// <param name="command">璇诲彇鐨勮姹備俊鎭�</param>
/// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
- public void RequestInbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, Dt_StationManager stationInfo)
- {
- var log = $"銆恵conveyorLine.DeviceName}銆�,鎵樼洏鍙凤細銆恵stationInfo.stationChildCode}銆�,绔欏彴锛氥�恵stationInfo.remark}銆戣姹備换鍔�";
- ConsoleHelper.WriteSuccessLine(log);
+ //public void RequestInbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, Dt_StationManager stationInfo)
+ //{
+ // var log = $"銆恵conveyorLine.DeviceName}銆�,鎵樼洏鍙凤細銆恵stationInfo.stationChildCode}銆�,绔欏彴锛氥�恵stationInfo.remark}銆戣姹備换鍔�";
+ // ConsoleHelper.WriteSuccessLine(log);
- //_noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" });
- WriteInfo(conveyorLine.DeviceName, log);
- //if()
+ // //_noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" });
+ // WriteInfo(conveyorLine.DeviceName, log);
+ // //if()
- var taskNew = _taskService.QueryConveyorLineTask(command.Barcode, stationInfo.stationChildCode);
- if (taskNew == null)
- {
- if (_taskService.RequestTask(command.Barcode, stationInfo).Result.Status)
- {
- Dt_Task task = _taskService.QueryConveyorLineTask(command.Barcode, stationInfo.stationChildCode);
- if (task != null)
- {
- conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.NextAddress, stationInfo.stationChildCode);
+ // var taskNew = _taskService.QueryConveyorLineTask(command.PalletCode.ToString().PadLeft(4, '0'), stationInfo.stationChildCode);
+ // if (taskNew == null)
+ // {
+ // if (_taskService.RequestTask(command.PalletCode.ToString().PadLeft(4, '0'), stationInfo).Result.Status)
+ // {
+ // Dt_Task task = _taskService.QueryConveyorLineTask(command.PalletCode.ToString().PadLeft(4, '0'), stationInfo.stationChildCode);
+ // if (task != null)
+ // {
+ // //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.NextAddress, stationInfo.stationChildCode);
- //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.NextAddress, stationInfo.stationChildCode);
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
+ // //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.NextAddress, stationInfo.stationChildCode);
+ // //conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
- _taskService.UpdateTaskStatusToNext(task);
- }
- }
- else
- {
- //濡傛灉浠诲姟璇锋眰澶辫触
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 2, stationInfo.stationChildCode);
- }
- }
- else
- {
- conveyorLine.SetValue(ConveyorLineDBName.Barcode, taskNew.PalletCode, stationInfo.stationChildCode);
-
- if ((taskNew.TargetAddress == "2042" || taskNew.TargetAddress == "2032") && taskNew.TaskState == (int)TaskOutStatusEnum.SC_OutFinish)
- {
- conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, taskNew.TargetAddress, stationInfo.stationChildCode);
- }
- else
- {
- conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, taskNew.NextAddress, stationInfo.stationChildCode);
- }
- //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, taskNew.NextAddress, stationInfo.stationChildCode);
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
-
- _taskService.UpdateTaskStatusToNext(taskNew);
- }
- }
+ // _taskService.UpdateTaskStatusToNext(task);
+ // }
+ // }
+ // else
+ // {
+ // //濡傛灉浠诲姟璇锋眰澶辫触
+ // //conveyorLine.SetValue(ConveyorLineDBName.ResponState, 2, stationInfo.stationChildCode);
+ // }
+ // }
+ //}
/// <summary>
/// 杈撻�佺嚎鍏ュ簱瀹屾垚
@@ -246,26 +309,26 @@
/// <param name="conveyorLine"></param>
/// <param name="command"></param>
/// <param name="stationInfo"></param>
- public void ConveyorLineInFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, Dt_StationManager stationInfo)
- {
- //string clinfo = conveyorLine.ReadValue(ConveyorLineDBName.Barcode, stationInfo.stationChildCode).ToString();
- var task = _taskService.QueryExecutingTaskByBarcode(command.Barcode, stationInfo.stationChildCode);
- if (task != null && task.TaskState != (int)TaskInStatusEnum.Line_InFinish)
- {
- //ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
+ //public void ConveyorLineInFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, Dt_StationManager stationInfo)
+ //{
+ // //string clinfo = conveyorLine.ReadValue(ConveyorLineDBName.Barcode, stationInfo.stationChildCode).ToString();
+ // var task = _taskService.QueryExecutingTaskByBarcode(command.PalletCode.ToString().PadLeft(4, '0'), stationInfo.stationChildCode);
+ // if (task != null && task.TaskState != (int)TaskInStatusEnum.Line_InFinish)
+ // {
+ // //ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
- WebResponseContent content = _taskService.UpdateTaskStatusToNext(task);
- ConsoleHelper.WriteErrorLine($"{stationInfo.stationChildCode}绔欏彴璇锋眰鍝嶅簲淇℃伅:{content.ToJsonString()}");
- if (content.Status)
- {
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
- }
- else
- {
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 2, stationInfo.stationChildCode);
- }
- }
- }
+ // WebResponseContent content = _taskService.UpdateTaskStatusToNext(task);
+ // ConsoleHelper.WriteErrorLine($"{stationInfo.stationChildCode}绔欏彴璇锋眰鍝嶅簲淇℃伅:{content.ToJsonString()}");
+ // if (content.Status)
+ // {
+ // //conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
+ // }
+ // else
+ // {
+ // //conveyorLine.SetValue(ConveyorLineDBName.ResponState, 2, stationInfo.stationChildCode);
+ // }
+ // }
+ //}
/// <summary>
/// 杈撻�佺嚎璇锋眰鍑轰俊鎭�
@@ -279,17 +342,12 @@
var task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceName, stationInfo.stationChildCode);
if (task != null)
{
- conveyorLine.SetValue(ConveyorLineDBName.Barcode, task.PalletCode, stationInfo.stationChildCode);
- conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.TargetAddress, stationInfo.stationChildCode);
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
+ conveyorLine.SetValue(ConveyorLineDBName.SkidNo, task.PalletCode, stationInfo.stationChildCode);
+ //conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.TargetAddress, stationInfo.stationChildCode);
+ //conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
//ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
_taskService.UpdateTaskStatusToNext(task);
-
- if (task.TargetAddress == "2009" && task.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting)
- {
- _taskService.UpdateTaskStatusToNext(task);
- }
}
}
@@ -303,89 +361,27 @@
/// <param name="ProtocalDetailValue">绾夸綋褰撳墠bool璇诲彇鍋忕Щ鍦板潃</param>
public void ConveyorLineOutFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, Dt_StationManager stationInfo)
{
- var task = _taskService.QueryExecutingTaskByBarcode(command.Barcode, stationInfo.stationChildCode);
+ var task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceName, stationInfo.stationChildCode);
if (task != null)
{
- if (task.TargetAddress == "2032" || task.TargetAddress == "2042")
- {
- bool k2 = conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.TargetAddress, stationInfo.stationChildCode);
- bool k3 = conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
- WebResponseContent k4 = _taskService.UpdateTaskStatusToNext(task);
- }
- else
- {
- WebResponseContent content = _taskService.RequestWheelsFlow(task.PalletCode).Result;
- if (content.Status)
- {
- string taraddress = content.Data.ToString(); // "2032";SourceAddress
-
- bool k2 = conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, task.TargetAddress, stationInfo.stationChildCode);
- bool k3 = conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
- WebResponseContent k4 = _taskService.UpdateTaskStatusToNext(task);
- }
- else
- {
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 2, stationInfo.stationChildCode);
-
- Console.Out.WriteLine($"璇诲彇鍒拌緭閫佺嚎鐢宠,鐢宠鏉$爜锛歿command.Barcode}锛屽悜WMS鐢宠鍘诲悜澶辫触锛屽師鍥狅細{content.Message},鍐欏叆鐢宠瘔淇℃晠闅滐細2");
- }
- }
-
- }
- else
- {
-
- string taraddresspos = _taskService.RequestWheletHty(command.Barcode);
- if (taraddresspos != null)
+ var canTask = _taskRepository.QueryData(x => true).OrderByDescending(x => x.Grade).ThenBy(x => x.CreateDate).FirstOrDefault();
+ if (null != canTask && task.PalletCode == canTask.PalletCode)
{
- bool k2 = conveyorLine.SetValue(ConveyorLineDBName.TargetAddress, taraddresspos, stationInfo.stationChildCode);
- bool k3 = conveyorLine.SetValue(ConveyorLineDBName.ResponState, 1, stationInfo.stationChildCode);
+ //WebResponseContent k4 = _taskService.UpdateTaskStatusToNext(task);
- }
- else
- {
- conveyorLine.SetValue(ConveyorLineDBName.ResponState, 2, stationInfo.stationChildCode);
- Console.Out.WriteLine($"璇诲彇鍒拌緭閫佺嚎鐢宠,鐢宠鏉$爜锛歿command.Barcode}锛屾湭鎵惧埌浠诲姟锛岀敵璇蜂笅涓�鍦板潃涓猴細{stationInfo.stationChildCode},鍐欏叆鐢宠瘔淇℃晠闅滐細2");
+ //command.PalletCode = (Int32)20;
+ //command.PVI = "ABCD0123456789";
+ //command.CarCate = "SUV";
+ //command.CarColor = "AB01";
+
+ conveyorLine.SetValue(ConveyorLineDBName.SkidNo, 20, stationInfo.stationChildCode);
+
+ conveyorLine.SetValue(ConveyorLineDBName.PVI, "ABCD", stationInfo.stationChildCode);
+
+ //conveyorLine.SendCommand<ConveyorLineTaskCommand>(command, stationInfo.stationChildCode);
}
}
}
-
- /// <summary>
- /// 杈撻�佺嚎璇锋眰鍏ュ簱
- /// </summary>
- /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param>
- /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param>
- /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
- //public void RequestInbound(CommonConveyorLine_After conveyorLine, ConveyorLineTaskCommand_After command, string childDeviceCode)
- //{
- // var stationInfo = _stationManagerService.GetStationInfoByChildCode(childDeviceCode);
- // if (stationInfo != null)
- // {
- // //_taskService.r
- // }
- // var taskNew = _taskService.QueryCraneConveyorLineTask(command.ConveyorLineTaskNum.ObjToInt(), childDeviceCode);
- // if (taskNew == null)
- // {
- // string barcode = command.ConveyorLineBarcode.TrimEnd();
- // if (_taskService.RequestWMSTask(command.ConveyorLineBarcode, childDeviceCode).Result.Status)
- // {
- // Dt_Task task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode);
- // if (task != null)
- // {
- // ConveyorLineTaskCommand_After taskCommand = _mapper.Map<ConveyorLineTaskCommand_After>(task);
- // //taskCommand.InteractiveSignal = command.InteractiveSignal;
- // taskCommand.ResponState = 1;
- // taskCommand.ConveyorLineTaskNum = task.TaskNum;
- // taskCommand.ConveyorLineTargetAddress = Convert.ToInt16(task.NextAddress);
- // conveyorLine.SendCommand(taskCommand, childDeviceCode);
-
- // //ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
-
- // _taskService.UpdateTaskStatusToNext(task);
- // }
- // }
- // }
- //}
}
}
\ No newline at end of file
--
Gitblit v1.9.3