From b001df1a9965af13413076fe0c000ecf38762604 Mon Sep 17 00:00:00 2001
From: 陈勇 <chenyong@hnkhzn.com>
Date: 星期二, 19 十一月 2024 09:03:56 +0800
Subject: [PATCH] 更新分容接口
---
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs | 69 +++++++++++++++++++++++++++-------
1 files changed, 54 insertions(+), 15 deletions(-)
diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs
index 6d107ed..e9d9278 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs
@@ -1,15 +1,14 @@
-锘縰sing Microsoft.AspNetCore.Components.Routing;
+锘縰sing HslCommunication;
+using Newtonsoft.Json;
using Quartz;
-using System;
-using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using WIDESEAWCS_Common.TaskEnum;
-using WIDESEAWCS_Core.Enums;
+using WIDESEAWCS_Core.Helper;
+using WIDESEAWCS_DTO.MOM;
+using WIDESEAWCS_IProcessRepository;
using WIDESEAWCS_ITaskInfoRepository;
using WIDESEAWCS_ITaskInfoService;
+using WIDESEAWCS_Model;
using WIDESEAWCS_Model.Models;
using WIDESEAWCS_QuartzJob;
using WIDESEAWCS_QuartzJob.DeviceBase;
@@ -27,20 +26,21 @@
private readonly ITaskExecuteDetailService _taskExecuteDetailService;
private readonly ITaskRepository _taskRepository;
private readonly IRouterService _routerService;
+ private readonly IProcessRepository _processRepository;
- public CommonStackerCraneJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IRouterService routerService)
+ public CommonStackerCraneJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IRouterService routerService, IProcessRepository processRepository)
{
_taskService = taskService;
_taskExecuteDetailService = taskExecuteDetailService;
_taskRepository = taskRepository;
_routerService = routerService;
+ _processRepository = processRepository;
}
public Task Execute(IJobExecutionContext context)
{
try
{
-
// speStackerCrane.GetStackerCraneStatus<StackerCraneAutoStatus>();
// speStackerCrane.GetStackerCraneStatus<StackerCraneWorkStatus>();
// speStackerCrane.GetStackerCraneStatus<StackerCraneStatus>();
@@ -48,7 +48,8 @@
CommonStackerCrane commonStackerCrane = (CommonStackerCrane)context.JobDetail.JobDataMap.Get("JobParams");
if (commonStackerCrane != null)
{
- Console.Out.WriteLine(commonStackerCrane.DeviceName);
+ //EqptAlive(commonStackerCrane);
+ //Console.Out.WriteLine(commonStackerCrane.DeviceName);
if (!commonStackerCrane.IsEventSubscribed)
{
commonStackerCrane.StackerCraneTaskCompletedEventHandler += CommonStackerCrane_StackerCraneTaskCompletedEventHandler;//璁㈤槄浠诲姟瀹屾垚浜嬩欢
@@ -154,6 +155,10 @@
task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
}
}
+ else if (task == null)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ }
return task;
}
@@ -172,10 +177,10 @@
if (device != null)
{
CommonConveyorLine conveyorLine = (CommonConveyorLine)device;
- if (conveyorLine.IsOccupied(router.ChildPosi))//鍑哄簱绔欏彴鏈鍗犵敤
- {
- return task;
- }
+ //if (conveyorLine.IsOccupied(router.ChildPosi))//鍑哄簱绔欏彴鏈鍗犵敤
+ //{
+ return task;
+ //}
}
else
{
@@ -203,6 +208,7 @@
stackerCraneTaskCommand.TaskNum = task.TaskNum;
stackerCraneTaskCommand.WorkType = 1;
stackerCraneTaskCommand.TrayType = 0;
+ stackerCraneTaskCommand.StartCommand = 1;
if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)//鍒ゆ柇鏄惁鏄叆搴撲换鍔�
{
List<Dt_Router> routers = _routerService.QueryNextRoutes(task.CurrentAddress, task.Roadway);
@@ -292,5 +298,38 @@
}
return stackerCraneTaskCommand;
}
+
+
+ /// <summary>
+ /// 璁惧蹇冭烦
+ /// </summary>
+ /// <param name="commonStackerCrane"></param>
+ public async void EqptAlive(CommonStackerCrane commonStackerCrane)
+ {
+ if (commonStackerCrane.StackerOnline)
+ {
+ BasicDto dto = new BasicDto
+ {
+ EmployeeNo = "T00001",
+ EquipmentCode = commonStackerCrane.DeviceCode,
+ RequestTime = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffZ"),
+ SessionId = Guid.NewGuid().ToString(),
+ Software = commonStackerCrane.DeviceName,
+ };
+ var respone = await HttpHelper.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/EqptAlive", dto.ToJsonString());
+ if (respone != null)
+ {
+ var result = JsonConvert.DeserializeObject<ResponseEqptAliveDto>(respone);
+ if (result != null && result.Success)
+ {
+ if (result.KeyFlag == "99")
+ commonStackerCrane.StackerOnline = true;
+ else if (result.KeyFlag == "98")
+ commonStackerCrane.StackerOnline = false;
+ }
+ }
+ }
+ }
+
}
-}
+}
\ No newline at end of file
--
Gitblit v1.9.3