From d01658c63cd541fe4ea5cec5c4bd7f23b9408cdb Mon Sep 17 00:00:00 2001
From: 647556386 <647556386@qq.com>
Date: 星期六, 18 十月 2025 15:04:56 +0800
Subject: [PATCH] 前端,pda,后端接口更改,新增,优化
---
WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs | 132 +++++++++++++++++++++++++++++++++++++++++---
1 files changed, 123 insertions(+), 9 deletions(-)
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
index bc22c16..7dbdafd 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
@@ -1,11 +1,18 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
+锘縰sing HslCommunication.WebSocket;
+using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
+using SqlSugar.Extensions;
+using WIDESEAWCS_Common.TaskEnum;
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseController;
using WIDESEAWCS_DTO.TaskInfo;
+using WIDESEAWCS_ITaskInfoRepository;
using WIDESEAWCS_ITaskInfoService;
using WIDESEAWCS_Model.Models;
+using WIDESEAWCS_TaskInfoRepository;
+using WIDESEAWCS_TaskInfoService;
+using WIDESEAWCS_Tasks;
namespace WIDESEAWCS_WCSServer.Controllers.Task
{
@@ -14,15 +21,29 @@
public class TaskController : ApiBaseController<ITaskService, Dt_Task>
{
private readonly IHttpContextAccessor _httpContextAccessor;
- public TaskController(ITaskService service, IHttpContextAccessor httpContextAccessor) : base(service)
+ private readonly IRouterExtension _routerExtension;
+ //private readonly WebSocketServer _webSocketServer;
+ private readonly ITaskService _taskService;
+ private readonly ITaskRepository _taskRepository;
+ public TaskController(ITaskService service, IHttpContextAccessor httpContextAccessor, IRouterExtension routerExtension ,ITaskService taskService,ITaskRepository taskRepository /*, WebSocketServer webSocketServer*/) : base(service)
{
_httpContextAccessor = httpContextAccessor;
+ _routerExtension = routerExtension;
+ _taskService = taskService;
+ _taskRepository = taskRepository;
+ //_webSocketServer = webSocketServer;
}
[HttpPost, Route("ReceiveTask"), AllowAnonymous]
- public WebResponseContent ReceiveWMSTask([FromBody] List<Dt_Task> taskDTOs)
+ public WebResponseContent ReceiveWMSTask([FromBody] List<WMSTaskDTO> taskDTOs)
{
return Service.ReceiveWMSTask(taskDTOs);
+ }
+
+ [HttpPost, HttpGet, Route("RequestAssignLocation"), AllowAnonymous]
+ public string? RequestAssignLocation(int taskNum, string roadwayNo)
+ {
+ return Service.RequestAssignLocation(taskNum, roadwayNo);
}
[HttpPost, HttpGet, Route("UpdateTaskExceptionMessage")]
@@ -31,11 +52,11 @@
return Service.UpdateTaskExceptionMessage(taskNum, message);
}
- [HttpPost, HttpGet, Route("UpdateTaskStatusToNext")]
- public WebResponseContent UpdateTaskStatusToNext(int taskNum)
- {
- return Service.UpdateTaskStatusToNext(taskNum);
- }
+ //[HttpPost, HttpGet, Route("UpdateTaskStatusToNext")]
+ //public WebResponseContent UpdateTaskStatusToNext(int taskNum)
+ //{
+ // return Service.UpdateTaskStatusToNext(taskNum);
+ //}
[HttpPost, HttpGet, Route("TaskStatusRecovery")]
public WebResponseContent TaskStatusRecovery(int taskNum)
@@ -48,6 +69,99 @@
{
return Service.RollbackTaskStatusToLast(taskNum);
}
-
+
+ /// <summary>
+ /// 鍥炲AGV瀹夊叏淇″彿
+ /// </summary>
+ /// <param name="taskNum"></param>
+ /// <returns></returns>
+ //[HttpPost, HttpGet, Route("SendSecureReplyToAgv")]
+ //public WebResponseContent SendSecureReplyToAgv(int taskNum)
+ //{
+ // return Service.SendSecureReplyToAgv(taskNum);
+ //}
+
+ [HttpPost, HttpGet, Route("GetRouteEndPoint"), AllowAnonymous]
+ public WebResponseContent GetRouteEndPoint(string startPoint, int routeType)
+ {
+ return WebResponseContent.Instance.OK(data: _routerExtension.GetEndPoint(startPoint, routeType));
+ }
+ [HttpPost, HttpGet, Route("AgvCarrying"), AllowAnonymous]
+ public WebResponseContent AgvCarrying(int row, int startColumn, int endColumn, int layer, int targetLayer)
+ {
+ return Service.AgvCarrying(row, startColumn, endColumn, layer, targetLayer);
+ }
+ //[HttpPost, HttpGet, Route("WebSocketPushMessage"), AllowAnonymous]
+ //public WebResponseContent WebSocketPushMessage(string message)
+ //{
+ // try
+ // {
+ // _webSocketServer.PublishAllClientPayload(message);
+ // return WebResponseContent.Instance.OK();
+ // }
+ // catch(Exception ex)
+ // {
+ // return WebResponseContent.Instance.Error(ex.Message);
+ // }
+ //}
+ [HttpPost, HttpGet, Route("RecWMSTaskCompleted"), AllowAnonymous]
+ public WebResponseContent RecWMSTaskCompleted(int taskNum)
+ {
+ return Service.RecWMSTaskCompleted(taskNum);
+ }
+
+ //鍫嗗灈鏈轰换鍔¢噸鍙�
+ [HttpPost, HttpGet, Route("StackerCraneTaskResending"), AllowAnonymous]
+ public WebResponseContent StackerCraneTaskResending(int taskNum)
+ {
+ try
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskNum == taskNum);
+ if (task == null)
+ {
+ return WebResponseContent.Instance.Error("鏈壘鍒拌浠诲姟淇℃伅");
+ }
+ if(task.TaskState == TaskStatusEnum.SC_Executing.ObjToInt())
+ {
+ _taskService.UpdateTask(task, TaskStatusEnum.SC_Execute);
+ }
+ else
+ {
+ return WebResponseContent.Instance.Error("闈炲爢鍨涙満鎵ц涓姸鎬�");
+ }
+ return WebResponseContent.Instance.OK();
+ }
+ catch(Exception ex)
+ {
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
+
+ //RGV鍏ュ簱浠诲姟閲嶅彂
+ [HttpPost, HttpGet, Route("RGVTaskResending"), AllowAnonymous]
+ public WebResponseContent StackerCraneTaskPriority(int taskNum)
+ {
+ try
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskNum == taskNum);
+ if (task == null)
+ {
+ return WebResponseContent.Instance.Error("鏈壘鍒拌浠诲姟淇℃伅");
+ }
+ if (task.TaskState == TaskStatusEnum.RGV_Executing.ObjToInt())
+ {
+ _taskService.UpdateTask(task, TaskStatusEnum.RGV_NEW);
+ }
+ else
+ {
+ return WebResponseContent.Instance.Error("闈濺GV鎵ц涓姸鎬�");
+ }
+ return WebResponseContent.Instance.OK();
+ }
+ catch (Exception ex)
+ {
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
}
}
--
Gitblit v1.9.3