From eaa7c0d999c6dd7901bf4f0de79b861eae38e978 Mon Sep 17 00:00:00 2001 From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com> Date: 星期三, 08 十月 2025 22:51:28 +0800 Subject: [PATCH] 代码提交 --- 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json | 158 +++ 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Partial/AGVTaskService.cs | 72 + 项目代码/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_LocationInfo.vue | 5 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-wal | 0 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/DeleteLog/CommonDeleteLogJob.cs | 3 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerStationCrane.cs | 2 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/StackerCraneTaskCommand.cs | 8 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs | 55 - 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs | 15 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db | 0 项目代码/WCS/WIDESEAWCS_Server/LogLibrary/Log/LogFactory.cs | 58 + 项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db | 0 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json | 330 ++----- 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal | 0 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerCrane.cs | 2 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/Dt_StationManagerService.cs | 2 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/AgvRespone.cs | 15 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs | 524 ------------- 项目代码/WCS/WIDESEAWCS_Server/LogLibrary/LogLibrary.csproj | 15 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineDBName.cs | 24 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/SysConfigKeyConst.cs | 48 - 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/WIDESEAWCS_TaskInfoService.csproj | 1 项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json | 19 项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db | 0 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm | 0 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/AGVReceiveDTO.cs | 21 项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json | 66 - 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs | 216 +++-- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Enum/StackerCraneStatus.cs | 2 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/SendTask.cs | 59 + 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-shm | 0 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs | 246 ++++++ 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server.sln | 6 /dev/null | 0 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs | 37 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db | 0 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 116 -- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs | 13 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskStatusEnum.cs | 106 ++ 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ElevatorJob/ElevatorDBName.cs | 8 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/CommonRGV.cs | 2 41 files changed, 1,049 insertions(+), 1,205 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db" index 11f98ef..5c821de 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-shm" similarity index 81% copy from "\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" copy to "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-shm" index 793b659..6e0873e 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-shm" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-wal" new file mode 100644 index 0000000..16bef28 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-wal" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db" index cadfb4b..307c3fc 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" similarity index 82% rename from "\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" rename to "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" index 793b659..e01d73a 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal" new file mode 100644 index 0000000..4bce6a1 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json" index bdd9821..283f687 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json" @@ -3,72 +3,40 @@ "WorkspaceRootPath": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\", "Documents": [ { - "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\deletelog\\commondeletelogjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\deletelog\\commondeletelogjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\agv\\agvcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\agv\\agvcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\conveyorlinejob\\commonconveyorlinejob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\conveyorlinejob\\commonconveyorlinejob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\agvjob\\agvsignal.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agvjob\\agvsignal.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_model\\models\\taskinfo\\dt_task.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\taskinfo\\dt_task.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\elevatorjob\\elevatordbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\elevatorjob\\elevatordbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\stackercranejob\\commonstackercranejob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\stackercranejob\\commonstackercranejob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\conveyorlinejob\\conveyorlinedbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\conveyorlinejob\\conveyorlinedbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{59D26679-7299-4251-A58E-3AC3C6FA717E}|WIDESEAWCS_SignalR\\WIDESEAWCS_SignalR.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_signalr\\hub\\simplehub.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{59D26679-7299-4251-A58E-3AC3C6FA717E}|WIDESEAWCS_SignalR\\WIDESEAWCS_SignalR.csproj|solutionrelative:wideseawcs_signalr\\hub\\simplehub.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\elevatorjob\\commonelevatorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\elevatorjob\\commonelevatorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{6236BFFF-173D-44A8-9FC3-7C001EA30347}|WIDESEAWCS_QuartzJob\\WIDESEAWCS_QuartzJob.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_quartzjob\\stackercrane\\common\\commonstackercrane.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{6236BFFF-173D-44A8-9FC3-7C001EA30347}|WIDESEAWCS_QuartzJob\\WIDESEAWCS_QuartzJob.csproj|solutionrelative:wideseawcs_quartzjob\\stackercrane\\common\\commonstackercrane.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{59D26679-7299-4251-A58E-3AC3C6FA717E}|WIDESEAWCS_SignalR\\WIDESEAWCS_SignalR.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_signalr\\service\\inoticeservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{59D26679-7299-4251-A58E-3AC3C6FA717E}|WIDESEAWCS_SignalR\\WIDESEAWCS_SignalR.csproj|solutionrelative:wideseawcs_signalr\\service\\inoticeservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_taskinfoservice\\partial\\agvtaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|solutionrelative:wideseawcs_taskinfoservice\\partial\\agvtaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{59D26679-7299-4251-A58E-3AC3C6FA717E}|WIDESEAWCS_SignalR\\WIDESEAWCS_SignalR.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_signalr\\hub\\isimplehub.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{59D26679-7299-4251-A58E-3AC3C6FA717E}|WIDESEAWCS_SignalR\\WIDESEAWCS_SignalR.csproj|solutionrelative:wideseawcs_signalr\\hub\\isimplehub.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{5777BDEC-4726-4425-85F2-A090524F692D}|WIDESEAWCS_SystemRepository\\WIDESEAWCS_SystemRepository.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_systemrepository\\sys_menurepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{5777BDEC-4726-4425-85F2-A090524F692D}|WIDESEAWCS_SystemRepository\\WIDESEAWCS_SystemRepository.csproj|solutionrelative:wideseawcs_systemrepository\\sys_menurepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{59D26679-7299-4251-A58E-3AC3C6FA717E}|WIDESEAWCS_SignalR\\WIDESEAWCS_SignalR.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_signalr\\globalusing.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{59D26679-7299-4251-A58E-3AC3C6FA717E}|WIDESEAWCS_SignalR\\WIDESEAWCS_SignalR.csproj|solutionrelative:wideseawcs_signalr\\globalusing.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{6236BFFF-173D-44A8-9FC3-7C001EA30347}|WIDESEAWCS_QuartzJob\\WIDESEAWCS_QuartzJob.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_quartzjob\\quartzextensions\\quartzjobhostedservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{6236BFFF-173D-44A8-9FC3-7C001EA30347}|WIDESEAWCS_QuartzJob\\WIDESEAWCS_QuartzJob.csproj|solutionrelative:wideseawcs_quartzjob\\quartzextensions\\quartzjobhostedservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{6236BFFF-173D-44A8-9FC3-7C001EA30347}|WIDESEAWCS_QuartzJob\\WIDESEAWCS_QuartzJob.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_quartzjob\\quartzextensions\\jobsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{6236BFFF-173D-44A8-9FC3-7C001EA30347}|WIDESEAWCS_QuartzJob\\WIDESEAWCS_QuartzJob.csproj|solutionrelative:wideseawcs_quartzjob\\quartzextensions\\jobsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{BFFDD936-2E61-4D3A-ABFE-7CF77FE0B184}|WIDESEAWCS_Core\\WIDESEAWCS_Core.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_core\\extensions\\autofacmoduleregister.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{BFFDD936-2E61-4D3A-ABFE-7CF77FE0B184}|WIDESEAWCS_Core\\WIDESEAWCS_Core.csproj|solutionrelative:wideseawcs_core\\extensions\\autofacmoduleregister.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{BFFDD936-2E61-4D3A-ABFE-7CF77FE0B184}|WIDESEAWCS_Core\\WIDESEAWCS_Core.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_core\\extensions\\sqlsugarsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{BFFDD936-2E61-4D3A-ABFE-7CF77FE0B184}|WIDESEAWCS_Core\\WIDESEAWCS_Core.csproj|solutionrelative:wideseawcs_core\\extensions\\sqlsugarsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{6236BFFF-173D-44A8-9FC3-7C001EA30347}|WIDESEAWCS_QuartzJob\\WIDESEAWCS_QuartzJob.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_quartzjob\\models\\dt_deviceinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{6236BFFF-173D-44A8-9FC3-7C001EA30347}|WIDESEAWCS_QuartzJob\\WIDESEAWCS_QuartzJob.csproj|solutionrelative:wideseawcs_quartzjob\\models\\dt_deviceinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|solutionrelative:wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" } ], "DocumentGroupContainers": [ @@ -78,69 +46,111 @@ "DocumentGroups": [ { "DockedWidth": 200, - "SelectedChildIndex": 1, + "SelectedChildIndex": 5, "Children": [ { "$type": "Document", "DocumentIndex": 2, - "Title": "Dt_Task.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs", - "RelativeToolTip": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAB0AAAAlAAAAAAAAAA==", + "Title": "ElevatorDBName.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ElevatorJob\\ElevatorDBName.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ElevatorJob\\ElevatorDBName.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ElevatorJob\\ElevatorDBName.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\ElevatorJob\\ElevatorDBName.cs", + "ViewState": "AgIAABUAAAAAAAAAAAAywDMAAAAbAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-24T01:54:03.606Z", + "WhenOpened": "2025-10-08T14:21:39.829Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 4, + "Title": "ConveyorLineDBName.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\ConveyorLineDBName.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\ConveyorLineDBName.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\ConveyorLineDBName.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\ConveyorLineDBName.cs", + "ViewState": "AgIAAE8AAAAAAAAAAADwv1kAAAAQAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T14:11:12.19Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 5, + "Title": "CommonElevatorJob.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ElevatorJob\\CommonElevatorJob.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ElevatorJob\\CommonElevatorJob.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ElevatorJob\\CommonElevatorJob.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\ElevatorJob\\CommonElevatorJob.cs", + "ViewState": "AgIAAAAAAAAAAAAAAADwvx8AAAAeAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T13:53:47.304Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 6, + "Title": "TaskController.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", + "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAABJAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T13:27:06.033Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 1, + "Title": "AGVSignal.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\AGVJob\\AGVSignal.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGVJob\\AGVSignal.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\AGVJob\\AGVSignal.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\AGVJob\\AGVSignal.cs", + "ViewState": "AgIAABEAAAAAAAAAAAAAABUAAAAIAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T12:48:40.39Z", "EditorCaption": "" }, { "$type": "Document", "DocumentIndex": 0, - "Title": "CommonDeleteLogJob.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\DeleteLog\\CommonDeleteLogJob.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\DeleteLog\\CommonDeleteLogJob.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\DeleteLog\\CommonDeleteLogJob.cs", - "RelativeToolTip": "WIDESEAWCS_Tasks\\DeleteLog\\CommonDeleteLogJob.cs", - "ViewState": "AgIAABYAAAAAAAAAAAAcwEUAAAAZAAAAAAAAAA==", + "Title": "AGVController.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs", + "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs", + "ViewState": "AgIAABAAAAAAAAAAAAAuwCAAAABbAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-24T01:29:52.9Z", + "WhenOpened": "2025-10-08T12:45:04.877Z", "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 9, - "Title": "CustomProfile.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Filter\\CustomProfile.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Filter\\CustomProfile.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Filter\\CustomProfile.cs", - "RelativeToolTip": "WIDESEAWCS_Server\\Filter\\CustomProfile.cs", - "ViewState": "AgIAAAkAAAAAAAAAAADwvxYAAAArAAAAAAAAAA==", + "DocumentIndex": 7, + "Title": "AGVTaskService.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\Partial\\AGVTaskService.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\Partial\\AGVTaskService.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\Partial\\AGVTaskService.cs", + "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\Partial\\AGVTaskService.cs", + "ViewState": "AgIAACUAAAAAAAAAAAAcwDQAAAA3AAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T09:20:35.273Z" + "WhenOpened": "2025-10-08T08:13:55.933Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 10, - "Title": "Sys_MenuRepository.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SystemRepository\\Sys_MenuRepository.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_SystemRepository\\Sys_MenuRepository.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SystemRepository\\Sys_MenuRepository.cs", - "RelativeToolTip": "WIDESEAWCS_SystemRepository\\Sys_MenuRepository.cs", - "ViewState": "AgIAAB0AAAAAAAAAAAAAAB4AAABFAAAAAAAAAA==", + "DocumentIndex": 8, + "Title": "TaskService.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs", + "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs", + "ViewState": "AgIAABwDAAAAAAAAAAAAwCgDAAAhAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T09:17:11.269Z" - }, - { - "$type": "Document", - "DocumentIndex": 5, - "Title": "SimpleHub.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SignalR\\Hub\\SimpleHub.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_SignalR\\Hub\\SimpleHub.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SignalR\\Hub\\SimpleHub.cs", - "RelativeToolTip": "WIDESEAWCS_SignalR\\Hub\\SimpleHub.cs", - "ViewState": "AgIAAA0AAAAAAAAAAAAxwBwAAAATAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T09:15:05.652Z" + "WhenOpened": "2025-09-25T03:21:17.498Z", + "EditorCaption": "" }, { "$type": "Document", @@ -150,144 +160,10 @@ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\StackerCraneJob\\CommonStackerCraneJob.cs", "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\StackerCraneJob\\CommonStackerCraneJob.cs", "RelativeToolTip": "WIDESEAWCS_Tasks\\StackerCraneJob\\CommonStackerCraneJob.cs", - "ViewState": "AgIAAJoBAAAAAAAAAAAIwE0BAAARAAAAAAAAAA==", + "ViewState": "AgIAANwAAAAAAAAAAAAIwP0AAABmAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T08:10:30.228Z", + "WhenOpened": "2025-10-08T02:55:34.719Z", "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 7, - "Title": "INoticeService.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SignalR\\Service\\INoticeService.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_SignalR\\Service\\INoticeService.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SignalR\\Service\\INoticeService.cs", - "RelativeToolTip": "WIDESEAWCS_SignalR\\Service\\INoticeService.cs", - "ViewState": "AgIAABsAAAAAAAAAAAAiwCwAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T07:42:56.362Z" - }, - { - "$type": "Document", - "DocumentIndex": 1, - "Title": "CommonConveyorLineJob.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", - "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", - "ViewState": "AgIAAB4AAAAAAAAAAAAAAC0AAABPAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T07:04:33.408Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 8, - "Title": "ISimpleHub.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SignalR\\Hub\\ISimpleHub.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_SignalR\\Hub\\ISimpleHub.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SignalR\\Hub\\ISimpleHub.cs", - "RelativeToolTip": "WIDESEAWCS_SignalR\\Hub\\ISimpleHub.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAABsAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T09:25:19.161Z" - }, - { - "$type": "Document", - "DocumentIndex": 14, - "Title": "AutofacModuleRegister.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Core\\Extensions\\AutofacModuleRegister.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_Core\\Extensions\\AutofacModuleRegister.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Core\\Extensions\\AutofacModuleRegister.cs", - "RelativeToolTip": "WIDESEAWCS_Core\\Extensions\\AutofacModuleRegister.cs", - "ViewState": "AgIAAAwAAAAAAAAAAAAAAEQAAAAmAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T07:40:03.34Z" - }, - { - "$type": "Document", - "DocumentIndex": 4, - "Title": "Program.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Program.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Program.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Program.cs", - "RelativeToolTip": "WIDESEAWCS_Server\\Program.cs", - "ViewState": "AgIAAA8AAAAAAAAAAAAAACoAAAAlAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T07:37:22.784Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 6, - "Title": "CommonStackerCrane.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_QuartzJob\\StackerCrane\\Common\\CommonStackerCrane.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_QuartzJob\\StackerCrane\\Common\\CommonStackerCrane.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_QuartzJob\\StackerCrane\\Common\\CommonStackerCrane.cs", - "RelativeToolTip": "WIDESEAWCS_QuartzJob\\StackerCrane\\Common\\CommonStackerCrane.cs", - "ViewState": "AgIAANsAAAAAAAAAAAAqwPUAAAAMAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T09:27:50.227Z" - }, - { - "$type": "Document", - "DocumentIndex": 12, - "Title": "QuartzJobHostedService.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_QuartzJob\\QuartzExtensions\\QuartzJobHostedService.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_QuartzJob\\QuartzExtensions\\QuartzJobHostedService.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_QuartzJob\\QuartzExtensions\\QuartzJobHostedService.cs", - "RelativeToolTip": "WIDESEAWCS_QuartzJob\\QuartzExtensions\\QuartzJobHostedService.cs", - "ViewState": "AgIAACYAAAAAAAAAAAAowD0AAAAQAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T08:04:20.937Z" - }, - { - "$type": "Document", - "DocumentIndex": 11, - "Title": "GlobalUsing.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SignalR\\GlobalUsing.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_SignalR\\GlobalUsing.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SignalR\\GlobalUsing.cs", - "RelativeToolTip": "WIDESEAWCS_SignalR\\GlobalUsing.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAAEAAAAQAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T09:02:55.551Z" - }, - { - "$type": "Document", - "DocumentIndex": 13, - "Title": "JobSetup.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_QuartzJob\\QuartzExtensions\\JobSetup.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_QuartzJob\\QuartzExtensions\\JobSetup.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_QuartzJob\\QuartzExtensions\\JobSetup.cs", - "RelativeToolTip": "WIDESEAWCS_QuartzJob\\QuartzExtensions\\JobSetup.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAuwCYAAAA5AAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T07:07:37.223Z" - }, - { - "$type": "Document", - "DocumentIndex": 15, - "Title": "SqlsugarSetup.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Core\\Extensions\\SqlsugarSetup.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_Core\\Extensions\\SqlsugarSetup.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Core\\Extensions\\SqlsugarSetup.cs", - "RelativeToolTip": "WIDESEAWCS_Core\\Extensions\\SqlsugarSetup.cs", - "ViewState": "AgIAABcAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T07:34:36.863Z" - }, - { - "$type": "Document", - "DocumentIndex": 16, - "Title": "Dt_DeviceInfo.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_QuartzJob\\Models\\Dt_DeviceInfo.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_QuartzJob\\Models\\Dt_DeviceInfo.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_QuartzJob\\Models\\Dt_DeviceInfo.cs", - "RelativeToolTip": "WIDESEAWCS_QuartzJob\\Models\\Dt_DeviceInfo.cs", - "ViewState": "AgIAAGQAAAAAAAAAAAAUwHYAAAAnAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-23T07:03:49.846Z" } ] } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json" index 530d9d5..39370b6 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json" @@ -3,8 +3,40 @@ "WorkspaceRootPath": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\", "Documents": [ { - "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\conveyorlinejob\\commonconveyorlinejob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\conveyorlinejob\\commonconveyorlinejob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\agv\\agvcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\agv\\agvcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\stackercranejob\\commonstackercranejob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\stackercranejob\\commonstackercranejob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\elevatorjob\\elevatordbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\elevatorjob\\elevatordbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\agvjob\\agvsignal.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agvjob\\agvsignal.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\conveyorlinejob\\conveyorlinedbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\conveyorlinejob\\conveyorlinedbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\elevatorjob\\commonelevatorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\elevatorjob\\commonelevatorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_taskinfoservice\\partial\\agvtaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|solutionrelative:wideseawcs_taskinfoservice\\partial\\agvtaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|solutionrelative:wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" } ], "DocumentGroupContainers": [ @@ -14,19 +46,123 @@ "DocumentGroups": [ { "DockedWidth": 200, - "SelectedChildIndex": 0, + "SelectedChildIndex": 4, "Children": [ { "$type": "Document", - "DocumentIndex": 0, - "Title": "CommonConveyorLineJob.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", - "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", - "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", - "ViewState": "AgIAAD4CAAAAAAAAAAAUwAAAAAAAAAAAAAAAAA==", + "DocumentIndex": 3, + "Title": "ElevatorDBName.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ElevatorJob\\ElevatorDBName.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ElevatorJob\\ElevatorDBName.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ElevatorJob\\ElevatorDBName.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\ElevatorJob\\ElevatorDBName.cs", + "ViewState": "AgIAADIAAAAAAAAAAAAswEwAAAAIAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-24T05:55:47.05Z", + "WhenOpened": "2025-10-08T14:21:39.829Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 6, + "Title": "CommonElevatorJob.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ElevatorJob\\CommonElevatorJob.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ElevatorJob\\CommonElevatorJob.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ElevatorJob\\CommonElevatorJob.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\ElevatorJob\\CommonElevatorJob.cs", + "ViewState": "AgIAAAAAAAAAAAAAAADwvx8AAAAeAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T13:53:47.304Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 1, + "Title": "TaskController.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", + "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAABJAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T13:27:06.033Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 4, + "Title": "AGVSignal.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\AGVJob\\AGVSignal.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGVJob\\AGVSignal.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\AGVJob\\AGVSignal.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\AGVJob\\AGVSignal.cs", + "ViewState": "AgIAABEAAAAAAAAAAAAAABUAAAAIAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T12:48:40.39Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 0, + "Title": "AGVController.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs", + "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs", + "ViewState": "AgIAABsAAAAAAAAAAADwvzkAAAA2AAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T12:45:04.877Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 7, + "Title": "AGVTaskService.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\Partial\\AGVTaskService.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\Partial\\AGVTaskService.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\Partial\\AGVTaskService.cs", + "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\Partial\\AGVTaskService.cs", + "ViewState": "AgIAACUAAAAAAAAAAAAcwDQAAAA3AAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T08:13:55.933Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 8, + "Title": "TaskService.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs", + "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs", + "ViewState": "AgIAABwDAAAAAAAAAAAAwCgDAAAhAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-09-25T03:21:17.498Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 2, + "Title": "CommonStackerCraneJob.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\StackerCraneJob\\CommonStackerCraneJob.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\StackerCraneJob\\CommonStackerCraneJob.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\StackerCraneJob\\CommonStackerCraneJob.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\StackerCraneJob\\CommonStackerCraneJob.cs", + "ViewState": "AgIAANwAAAAAAAAAAAAIwP0AAABhAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T02:55:34.719Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 5, + "Title": "ConveyorLineDBName.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\ConveyorLineDBName.cs", + "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\ConveyorLineDBName.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\ConveyorLineDBName.cs", + "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\ConveyorLineDBName.cs", + "ViewState": "AgIAAE8AAAAAAAAAAADwv1kAAAAQAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-10-08T14:11:12.19Z", "EditorCaption": "" } ] diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/LogLibrary/Log/LogFactory.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/LogLibrary/Log/LogFactory.cs" new file mode 100644 index 0000000..d3e3564 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/LogLibrary/Log/LogFactory.cs" @@ -0,0 +1,58 @@ +锘縰sing HslCommunication; +using System.Text; +using WIDESEAWCS_Core.Helper; +using WIDESEAWCS_Core.LogHelper; + +namespace LogLibrary.Log +{ + public class LogFactory + { + public void WriteDebug(string fileName, string msg) + { + if (AppSettings.app(new string[] { "LogDeubgEnable" }).ObjToBool()) + { + StringBuilder builder = new StringBuilder(msg); + builder.Append(Environment.NewLine); + builder.Append(Environment.NewLine); + QuartzLogger.WriteLogToFile($"Debug_{fileName}", builder.ToString()); + } + } + + public static void WriteInfo(string fileName, string msg) + { + StringBuilder builder = new StringBuilder(msg); + builder.Append(Environment.NewLine); + builder.Append(Environment.NewLine); + QuartzLogger.WriteLogToFile($"Info_{fileName}", builder.ToString()); + } + public static void WriteError(string fileName, string msg) + { + StringBuilder builder = new StringBuilder(msg); + builder.Append(Environment.NewLine); + builder.Append(Environment.NewLine); + QuartzLogger.WriteLogToFile($"Error_{fileName}", builder.ToString()); + } + public static void WriteError(string fileName, string msg, Exception ex) + { + StringBuilder builder = new StringBuilder(msg); + builder.Append(Environment.NewLine); + builder.Append(StringResources.Language.ExceptionMessage); + builder.Append(ex.Message); + builder.Append(Environment.NewLine); + builder.Append(StringResources.Language.ExceptionSource); + builder.Append(ex.Source); + builder.Append(Environment.NewLine); + builder.Append(StringResources.Language.ExceptionStackTrace); + builder.Append(ex.StackTrace); + builder.Append(Environment.NewLine); + builder.Append(StringResources.Language.ExceptionType); + builder.Append(ex.GetType().ToString()); + builder.Append(Environment.NewLine); + builder.Append(StringResources.Language.ExceptionTargetSite); + builder.Append(ex.TargetSite?.ToString()); + builder.Append(Environment.NewLine); + builder.Append(Environment.NewLine); + QuartzLogger.WriteLogToFile($"Error_{fileName}", builder.ToString()); + } + } +} diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/LogLibrary/LogLibrary.csproj" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/LogLibrary/LogLibrary.csproj" new file mode 100644 index 0000000..d406f1b --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/LogLibrary/LogLibrary.csproj" @@ -0,0 +1,15 @@ +锘�<Project Sdk="Microsoft.NET.Sdk"> + + <PropertyGroup> + <TargetFramework>net6.0</TargetFramework> + <ImplicitUsings>enable</ImplicitUsings> + <Nullable>enable</Nullable> + <AllowUnsafeBlocks>true</AllowUnsafeBlocks> + </PropertyGroup> + + <ItemGroup> + <ProjectReference Include="..\WIDESEAWCS_Core\WIDESEAWCS_Core.csproj" /> + <ProjectReference Include="..\WIDESEAWCS_QuartzJob\WIDESEAWCS_QuartzJob.csproj" /> + </ItemGroup> + +</Project> diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/Dt_StationManagerService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/Dt_StationManagerService.cs" index 971dca0..233d651 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/Dt_StationManagerService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/Dt_StationManagerService.cs" @@ -53,7 +53,7 @@ public List<Dt_StationManager> GetAllStationByDeviceCode(string DeviceCode) { - return BaseDal.QueryData(x => x.stationPLC == DeviceCode && x.stationStatus == "1").ToList(); + return BaseDal.QueryData(x => x.stationDeviceCode == DeviceCode && x.stationStatus == "1").ToList(); } } } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/SysConfigKeyConst.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/SysConfigKeyConst.cs" index 54b30c0..b477a12 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/SysConfigKeyConst.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/SysConfigKeyConst.cs" @@ -15,7 +15,7 @@ public const string WCSIP_BASE = "WCSIPAddress"; - public const string MOMIP_BASE = "MOMIP_BASE"; + public const string AGVIP_BASE = "AGVIPBASE"; /// <summary> /// 璇锋眰浠诲姟 @@ -39,52 +39,10 @@ public const string CompleteTask = "CompleteTask"; /// <summary> - /// 璇锋眰绌烘墭鐩樹换鍔� + /// AGV浠诲姟涓嬪彂 /// </summary> - public const string RequestTrayInTask = "RequestTrayInTask"; + public const string SendAGVTask = "SendAGVTask"; - /// <summary> - /// 绌烘墭鐩樺疄鐩樺嚭搴撲换鍔� - /// </summary> - public const string RequestTrayOutTask = "RequestTrayOutTask"; - public const string RequestInTask = "RequestInTask"; - - public const string RequestFlow = "RequestFlow"; - - /// <summary> - /// 鏁寸洏鐢佃姱鑾峰彇 - /// </summary> - public const string TrayCellsStatus = "TrayCellsStatus"; - - /// <summary> - /// 甯告俯琛ョ┖鎵樼洏鑷冲垎瀹� - /// </summary> - public const string GetFROutTrayToCW = "GetFROutTrayToCW"; - - /// <summary> - /// 甯告俯3 鍑哄簱鑷冲寘瑁� - /// </summary> - public const string RequestOutTaskToBZ = "RequestOutTaskToBZ"; - - /// <summary> - /// 闈欑疆NG鍏ュ簱 - /// </summary> - public const string RequestInBoundTaskNG = "RequestInBoundTaskNG"; - - /// <summary> - /// 闈欑疆NG鍏ュ簱绔欏彴 - /// </summary> - public const string JZNGInBoundStation = "JZNGInBoundStation"; - - /// <summary> - /// 鍒嗗绌烘鍏ュ簱鏀逛负鐩存帴鍑哄簱 - /// </summary> - public const string SetEmptyOutbyInToOutAsync = "SetEmptyOutbyInToOutAsync"; - - /// <summary> - /// 鍒嗗绌烘鍑哄簱鏀逛负鐩存帴鍑哄簱 - /// </summary> - public const string SetEmptyOutbyInToOutOneAsync = "SetEmptyOutbyInToOutOneAsync"; } } \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskStatusEnum.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskStatusEnum.cs" index c441160..af2230f 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskStatusEnum.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskStatusEnum.cs" @@ -15,41 +15,71 @@ [Description("鏂板缓鍏ュ簱浠诲姟")] InNew = 200, - ///// <summary> - ///// AGV鍏ュ簱鎵ц涓� - ///// </summary> - //[Description("AGV鍏ュ簱鎵ц涓�")] - //AGV_InExecuting = 210, + /// <summary> + /// AGV鍏ュ簱鎵ц涓� + /// </summary> + [Description("AGV鍏ュ簱鎵ц涓�")] + AGV_InExecuting = 210, - ///// <summary> - ///// AGV鍏ュ簱瀹屾垚 - ///// </summary> - //[Description("AGV鎼繍瀹屾垚")] - //AGV_InFinish = 215, + /// <summary> + /// AGV鍏ュ簱瀹屾垚 + /// </summary> + [Description("AGV鎼繍瀹屾垚")] + AGV_InFinish = 215, + + /// <summary> + /// AGV绛夊緟鍙栬揣 + /// </summary> + [Description("鎻愬崌鏈虹瓑寰匒GV鏀捐揣")] + Elevator_AGVWaitPut = 220, + + /// <summary> + /// 鎻愬崌鏈哄叆搴撴墽琛屼腑 + /// </summary> + [Description("鎻愬崌鏈哄叆搴撴墽琛屼腑")] + Elevator_InExecuting = 225, + + /// <summary> + /// 鎻愬崌鏈哄叆搴撳畬鎴� + /// </summary> + [Description("鎻愬崌鏈哄叆搴撳畬鎴�")] + Elevator_InFinish = 230, + + /// <summary> + /// AGV绛夊緟鍙栬揣 + /// </summary> + [Description("鎻愬崌鏈虹瓑寰匒GV鍙栬揣")] + Elevator_AGVWaitPickUp = 235, + + /// <summary> + /// AGV绛夊緟鍙栬揣 + /// </summary> + [Description("杈撻�佺嚎绛夊緟AGV鍙栬揣")] + Line_AGVWaitPickUp = 240, /// <summary> /// 杈撻�佺嚎鍏ュ簱鎵ц涓� /// </summary> [Description("杈撻�佺嚎鍏ュ簱鎵ц涓�")] - Line_InExecuting = 220, + Line_InExecuting = 240, /// <summary> /// 杈撻�佺嚎鍏ュ簱瀹屾垚 /// </summary> - [Description("杈撻�佺嚎杈撻�佸畬鎴�")] - Line_InFinish = 225, + [Description("杈撻�佺嚎鍏ュ簱瀹屾垚")] + Line_InFinish = 245, /// <summary> /// 鍫嗗灈鏈哄叆搴撴墽琛屼腑 /// </summary> [Description("鍫嗗灈鏈哄叆搴撴墽琛屼腑")] - SC_InExecuting = 230, + SC_InExecuting = 250, /// <summary> /// 鍫嗗灈鏈哄叆搴撳畬鎴� /// </summary> [Description("鍫嗗灈鏈哄叆搴撳畬鎴�")] - SC_InFinish = 235, + SC_InFinish = 255, /// <summary> /// 鍏ュ簱浠诲姟瀹屾垚 @@ -105,20 +135,44 @@ /// <summary> /// 杈撻�佺嚎鍑哄簱瀹屾垚 /// </summary> - [Description("杈撻�佺嚎杈撻�佸畬鎴�")] + [Description("杈撻�佺嚎鍑哄簱瀹屾垚")] Line_OutFinish = 125, - ///// <summary> - ///// AGV鍑哄簱鎵ц涓� - ///// </summary> - //[Description("AGV鍑哄簱鎵ц涓�")] - //AGV_OutExecuting = 130, + /// <summary> + /// 杈撻�佺嚎绛夊緟AGV鍙栬揣 + /// </summary> + [Description("杈撻�佺嚎绛夊緟AGV鍙栬揣")] + Line_AGVWaitPickUp = 130, - ///// <summary> - ///// AGV鍑哄簱瀹屾垚 - ///// </summary> - //[Description("AGV鎼繍瀹屾垚")] - //AGV_OutFinish = 135, + /// <summary> + /// AGV鍑哄簱鎵ц涓� + /// </summary> + [Description("AGV鍑哄簱鎵ц涓�")] + AGV_OutExecuting = 135, + + /// <summary> + /// AGV鍑哄簱瀹屾垚 + /// </summary> + [Description("AGV鎼繍瀹屾垚")] + AGV_OutFinish = 140, + + /// <summary> + /// 鎻愬崌鏈烘墽琛屼腑 + /// </summary> + [Description("鎻愬崌鏈烘墽琛屼腑")] + Elevator_OutExecuting = 145, + + /// <summary> + /// 鎻愬崌鏈哄畬鎴� + /// </summary> + [Description("鎻愬崌鏈哄嚭搴撳畬鎴�")] + Elevator_OutFinish = 150, + + /// <summary> + /// AGV绛夊緟鍙栬揣 + /// </summary> + [Description("鎻愬崌鏈虹瓑寰匒GV鍙栬揣")] + Elevator_AGVWaitPickUp = 155, /// <summary> /// 鍑哄簱浠诲姟瀹屾垚 diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/AGVReceiveDTO.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/AGVReceiveDTO.cs" new file mode 100644 index 0000000..8f7f370 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/AGVReceiveDTO.cs" @@ -0,0 +1,21 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace WIDESEAWCS_DTO.AGV +{ + public class AGVReceiveDTO + { + /// <summary> + /// 浠诲姟鍙� + /// </summary> + public int TaskNum { get; set; } + + /// <summary> + /// 鐘舵�侊細 PutFinish鏀捐揣瀹屾垚銆丳ickUpFinish鍙栬揣瀹屾垚銆丷equestPickUp璇锋眰鍙栬揣銆丷equestPut璇锋眰鏀捐揣 + /// </summary> + public string Status { get; set; } + } +} diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/AgvRespone.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/AgvRespone.cs" new file mode 100644 index 0000000..03bf861 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/AgvRespone.cs" @@ -0,0 +1,15 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace WIDESEAWCS_DTO.AGV +{ + public class AgvRespone + { + public int code { get; set; } + public string data { get; set; } + public string desc { get; set; } + } +} diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/SendTask.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/SendTask.cs" new file mode 100644 index 0000000..77d6d93 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/AGV/SendTask.cs" @@ -0,0 +1,59 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace WIDESEAWCS_DTO.AGV +{ + public class SendTask + { + /// <summary> + /// 浠诲姟妯℃澘 + /// </summary> + public string modelProcessCode { get; set; } + + /// <summary> + /// 浼樺厛绾� + /// </summary> + public int priority { get; set; } + + /// <summary> + /// 鏉ユ簮绯荤粺 + /// </summary> + public string fromSystem { get; set; } + + /// <summary> + /// 浠诲姟鍙� + /// </summary> + public string orderId { get; set; } + + /// <summary> + /// 璁㈠崟鏄庣粏 + /// </summary> + public taskOrderDetail orderDetail { get; set; } + } + public class taskOrderDetail + { + public string subOrderId { get; set; } + + public string taskPath { get; set; } + + public string shelfNumber { get; set; } + + public string assignRobotIds { get; set; } + + public string releaseRobot { get; set; } + + public string deviceNum { get; set; } + + public string loadType { get; set; } + + public string robotType { get; set; } + + public string extraInfo { get; set; } + + public string shelfModel { get; set; } + + } +} diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" index 58b7bb3..261fc19 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" @@ -58,51 +58,6 @@ WebResponseContent ReceiveWMSTask([NotNull] List<WMSTaskDTO> taskDTOs); /// <summary> - /// 鎺ユ敹WMS浠诲姟淇℃伅 - /// </summary> - /// <param name="taskDTOs">WMS浠诲姟瀵硅薄闆嗗悎</param> - /// <returns>杩斿洖澶勭悊缁撴灉</returns> - WebResponseContent ReceiveByWMSTask([NotNull] WMSTaskDTO taskDTOs); - - /// <summary> - /// 鎺ユ敹WMS浠诲姟淇℃伅 - /// </summary> - /// <param name="taskDTOs">WMS浠诲姟瀵硅薄闆嗗悎</param> - /// <returns>杩斿洖澶勭悊缁撴灉</returns> - WebResponseContent ReceiveByWMSGWTask([NotNull] WMSTaskDTO taskDTO); - - /// <summary> - /// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟 - /// </summary> - /// <param name="palletCode">鎵樼洏鍙�</param> - /// <param name="sourceAddress">璧峰鍦板潃</param> - /// <returns></returns> - Task<WebResponseContent> RequestWMSTask(string palletCode, string sourceAddress); - - /// <summary> - /// 璇锋眰鍑哄簱鑷冲寘瑁� - /// </summary> - /// <param name="stationManager"></param> - /// <returns></returns> - Task<WebResponseContent> RequestOutTaskToBZAsync(Dt_StationManager stationManager); - - /// <summary> - /// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟 - /// </summary> - /// <param name="palletCode">鎵樼洏鍙�</param> - /// <param name="sourceAddress">璧峰鍦板潃</param> - /// <returns></returns> - Task<WebResponseContent> RequestTask(string palletCode, string EquiCodeMOM, string Roadways, string area,string currentChildeCode); - - /// <summary> - /// 鏍规嵁鎵樼洏鍙枫�佺珯鍙板悜WMS璇锋眰浠诲姟 - /// </summary> - /// <param name="palletCode">鎵樼洏鍙�</param> - /// <param name="sourceAddress">璧峰鍦板潃</param> - /// <returns></returns> - Task<WebResponseContent> RequestTask(string palletCode, Dt_StationManager stationManager); - - /// <summary> /// 鏍规嵁璁惧缂栧彿銆佸綋鍓嶅湴鍧�鏌ヨ杈撻�佺嚎鏈墽琛岀殑浠诲姟 /// </summary> /// <param name="deviceNo">璁惧缂栧彿</param> @@ -292,8 +247,6 @@ /// <returns>杩斿洖澶勭悊缁撴灉</returns> WebResponseContent StackCraneTaskCompleted(int taskNum); - WebResponseContent StackCraneTaskCompletedByStation(int taskNum); - /// <summary> /// 鎭㈠鎸傝捣浠诲姟 /// </summary> @@ -307,14 +260,6 @@ /// <param name="taskNum">浠诲姟鍙�</param> /// <returns>杩斿洖澶勭悊缁撴灉</returns> WebResponseContent RollbackTaskStatusToLast(int taskNum); - - /// <summary> - /// - /// </summary> - /// <param name="palletCode"></param> - /// <param name="Roadway"></param> - /// <returns></returns> - Dt_Task QueryTaskByPalletCode(string palletCode, string Roadway); /// <summary> /// 鏌ヨ褰撳墠璁惧鏄惁鏈夌Щ搴撲换鍔� diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs" index 5e77a0d..c337849 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs" @@ -33,7 +33,7 @@ public int stationID { get; set; } /// <summary> - /// 绔欏彴绫诲瀷 1-鍏ュ簱绔欏彴 2-鍑哄簱绔欏彴 3-寮傚父鎺掑嚭绔欏彴 4-NG宸ョ珯鏀炬枡 5-NG宸ョ珯鍙栨枡 6-绌烘鍏ュ簱 7-绌烘鍑哄簱,8-鍏ュ簱绾夸綋鎵爜纭,9-鍏ュ簱绔欏彴纭 + /// 绔欏彴绫诲瀷 /// </summary> [ImporterHeader(Name = "绔欏彴绫诲瀷")] [ExporterHeader(DisplayName = "绔欏彴绫诲瀷")] @@ -46,7 +46,7 @@ [ImporterHeader(Name = "鎵�灞濸LC")] [ExporterHeader(DisplayName = "鎵�灞濸LC")] [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵�灞濸LC")] - public string stationPLC { get; set; } + public string stationDeviceCode { get; set; } /// <summary> /// 宸烽亾鍙� @@ -88,32 +88,23 @@ [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "鍧愭爣鍦板潃")] public string stationLocation { get; set; } - /// <summary> - /// MOM璁惧缂栧彿 - /// </summary> - [ImporterHeader(Name = "MOM璁惧缂栧彿")] - [ExporterHeader(DisplayName = "MOM璁惧缂栧彿")] - [SugarColumn(IsNullable = false, ColumnDescription = "MOM璁惧缂栧彿")] - public string stationEquipMOM { get; set; } - - /// <summary> - /// - /// </summary> - [SugarColumn(IsNullable = false, ColumnDescription = "NG瀛愯澶囩紪鍙�")] - public string stationNGChildCode { get; set; } - - /// <summary> - /// - /// </summary> - [SugarColumn(IsNullable = false, ColumnDescription = "NG瀛愯澶囧潗鏍�")] - public string stationNGLocation { get; set; } public string remark { get; set; } + /// <summary> + /// 璁惧鐘舵�� + /// </summary> + [ImporterHeader(Name = "璁惧鐘舵��")] + [ExporterHeader(DisplayName = "璁惧鐘舵��")] + [SugarColumn(IsNullable = false, Length = 255, ColumnDescription = "璁惧鐘舵��")] public string stationStatus { get; set; } /// <summary> - /// 浜х嚎 + /// 妤煎眰 /// </summary> - public string productLine { get; set; } + [ImporterHeader(Name = "妤煎眰")] + [ExporterHeader(DisplayName = "妤煎眰")] + [SugarColumn(IsNullable = false, Length = 255, ColumnDescription = "妤煎眰")] + public string stationFloor { get; set; } + } } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs" index d6e99c9..d29e69a 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs" @@ -62,6 +62,14 @@ public string Roadway { get; set; } /// <summary> + /// 璁惧缂栧彿 + /// </summary> + [ImporterHeader(Name = "璁惧缂栧彿")] + [ExporterHeader(DisplayName = "璁惧缂栧彿")] + [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "璁惧缂栧彿")] + public string DeviceCode { get; set; } + + /// <summary> /// 浠诲姟绫诲瀷 /// </summary> [ImporterHeader(Name = "浠诲姟绫诲瀷")] @@ -149,12 +157,5 @@ [SugarColumn(IsNullable = true, Length = 255, ColumnDescription = "澶囨敞")] public string Remark { get; set; } - /// <summary> - /// 鎵樼洏浜х嚎 - /// </summary> - [ImporterHeader(Name = "鎵樼洏浜х嚎")] - [ExporterHeader(DisplayName = "鎵樼洏浜х嚎")] - [SugarColumn(IsNullable = true, Length = 20, ColumnDescription = "鎵樼洏浜х嚎")] - public string ProductionLine { get; set; } } } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/CommonRGV.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/CommonRGV.cs" index 703dcce..f8acbd5 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/CommonRGV.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/CommonRGV.cs" @@ -210,7 +210,7 @@ { return DeviceStatus.Idle; } - else if (StackerCraneWorkStatusValue == StackerCraneWorkStatus.Putting || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUp || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReturnOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReverseOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.Walking || StackerCraneWorkStatusValue == StackerCraneWorkStatus.WorkCompleted || StackerCraneWorkStatusValue == StackerCraneWorkStatus.InStockStandby) + else if (StackerCraneWorkStatusValue == StackerCraneWorkStatus.Puting || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUp || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReturnOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReverseOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.Walking || StackerCraneWorkStatusValue == StackerCraneWorkStatus.WorkCompleted || StackerCraneWorkStatusValue == StackerCraneWorkStatus.InStockStandby) { return DeviceStatus.Working; } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerCrane.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerCrane.cs" index 52fa4d1..0e34958 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerCrane.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerCrane.cs" @@ -230,7 +230,7 @@ { return DeviceStatus.Idle; } - else if (StackerCraneWorkStatusValue == StackerCraneWorkStatus.Putting || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUp || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReturnOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReverseOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.Walking || StackerCraneWorkStatusValue == StackerCraneWorkStatus.WorkCompleted || StackerCraneWorkStatusValue == StackerCraneWorkStatus.InStockStandby) + else if (StackerCraneWorkStatusValue == StackerCraneWorkStatus.Puting || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUp || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReturnOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReverseOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.Walking || StackerCraneWorkStatusValue == StackerCraneWorkStatus.WorkCompleted || StackerCraneWorkStatusValue == StackerCraneWorkStatus.InStockStandby) { return DeviceStatus.Working; } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerStationCrane.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerStationCrane.cs" index 231083f..5ea64e1 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerStationCrane.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Common/CommonStackerStationCrane.cs" @@ -231,7 +231,7 @@ { return DeviceStatus.Idle; } - else if (StackerCraneWorkStatusValue == StackerCraneWorkStatus.Putting || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUp || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReturnOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReverseOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.Walking || StackerCraneWorkStatusValue == StackerCraneWorkStatus.WorkCompleted || StackerCraneWorkStatusValue == StackerCraneWorkStatus.InStockStandby) + else if (StackerCraneWorkStatusValue == StackerCraneWorkStatus.Puting || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUp || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PickUpWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWalk || StackerCraneWorkStatusValue == StackerCraneWorkStatus.PutWait || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReturnOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.ReverseOrigin || StackerCraneWorkStatusValue == StackerCraneWorkStatus.Walking || StackerCraneWorkStatusValue == StackerCraneWorkStatus.WorkCompleted || StackerCraneWorkStatusValue == StackerCraneWorkStatus.InStockStandby) { return DeviceStatus.Working; } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Enum/StackerCraneStatus.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Enum/StackerCraneStatus.cs" index cf4c2d0..6c12de9 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Enum/StackerCraneStatus.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/StackerCrane/Enum/StackerCraneStatus.cs" @@ -128,7 +128,7 @@ /// 鏀捐揣涓� /// </summary> [Description("鏀捐揣涓�")] - Putting, + Puting, /// <summary> /// 鍥炲師鐐� diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server.sln" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server.sln" index 968df31..750f408 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server.sln" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server.sln" @@ -66,6 +66,8 @@ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WIDESEAWCS_SignalR", "WIDESEAWCS_SignalR\WIDESEAWCS_SignalR.csproj", "{59D26679-7299-4251-A58E-3AC3C6FA717E}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LogLibrary", "LogLibrary\LogLibrary.csproj", "{42364781-CE85-43D4-AEB0-CC4D6FE5085D}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -156,6 +158,10 @@ {59D26679-7299-4251-A58E-3AC3C6FA717E}.Debug|Any CPU.Build.0 = Debug|Any CPU {59D26679-7299-4251-A58E-3AC3C6FA717E}.Release|Any CPU.ActiveCfg = Release|Any CPU {59D26679-7299-4251-A58E-3AC3C6FA717E}.Release|Any CPU.Build.0 = Release|Any CPU + {42364781-CE85-43D4-AEB0-CC4D6FE5085D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {42364781-CE85-43D4-AEB0-CC4D6FE5085D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {42364781-CE85-43D4-AEB0-CC4D6FE5085D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {42364781-CE85-43D4-AEB0-CC4D6FE5085D}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs" new file mode 100644 index 0000000..2390e9f --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs" @@ -0,0 +1,246 @@ +锘縰sing Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; +using OfficeOpenXml.FormulaParsing.Excel.Functions.Math; +using System.Reflection; +using WIDESEAWCS_Common.TaskEnum; +using WIDESEAWCS_Core; +using WIDESEAWCS_DTO.AGV; +using WIDESEAWCS_ITaskInfoRepository; +using WIDESEAWCS_Model.Models; +using WIDESEAWCS_QuartzJob; +using WIDESEAWCS_Tasks; +using WIDESEAWCS_Tasks.ConveyorLineJob; +using WIDESEAWCS_Tasks.ElevatorJob; + +namespace WIDESEAWCS_Server.Controllers.AGV +{ + [Route("api/AGV")] + [ApiController] + public class AGVController : ControllerBase + { + private readonly ITaskRepository _taskRepository; + + public AGVController(ITaskRepository taskRepository) + { + _taskRepository = taskRepository; + } + + /// <summary> + /// AGV鐘舵�佷笂鎶� + /// </summary> + /// <param name="receiveDTO"></param> + /// <returns></returns> + [HttpPost, Route("AGVStatusReport"), AllowAnonymous] + public WebResponseContent AGVStatusReport(AGVReceiveDTO receiveDTO) => SignalInteraction(receiveDTO); + + #region AGV涓庤澶囦俊鍙蜂氦浜� + + /// <summary> + /// AGV--璁惧浜や簰 + /// </summary> + /// <returns></returns> + public WebResponseContent SignalInteraction(AGVReceiveDTO receiveDTO) + { + WebResponseContent content = new WebResponseContent(); + try + { + var task = _taskRepository.QueryFirst(t => t.TaskNum == receiveDTO.TaskNum); + if (task == null) + { + return content.Error("鏈壘鍒颁换鍔�"); + } + MethodInfo? method = GetType().GetMethod(receiveDTO.Status); + if (method != null) + { + CommonConveyorLine? commonConveyorLine = Storage.Devices.FirstOrDefault(x => x.DeviceCode == task.DeviceCode) as CommonConveyorLine; + CommonElevator? elevator = Storage.Devices.FirstOrDefault(x => x.DeviceCode == task.DeviceCode) as CommonElevator; + if (elevator == null && commonConveyorLine == null) + return content.Error("鏈壘鍒拌澶�"); + else + return content = (WebResponseContent)method.Invoke(this, new object[] { task, commonConveyorLine, elevator }); + + } + else + { + throw new Exception($"鏈壘鍒拌鐘舵�亄receiveDTO.Status}瀹氫箟"); + } + } + catch (Exception ex) + { + return content.Error(ex.Message); + } + } + + /// <summary> + /// 鏀捐揣瀹屾垚 + /// </summary> + /// <param name="task"></param> + /// <returns></returns> + public WebResponseContent PutFinish(Dt_Task task, CommonConveyorLine commonConveyorLine, CommonElevator elevator) + { + WebResponseContent content = new WebResponseContent(); + try + { + if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) + { + elevator.SetValue(ElevatorDBName.OneLayerPutFinish, 1); + elevator.SetValue(ElevatorDBName.StartCommand, 1); + content.OK(); + } + else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup) + { + if (task.DeviceCode.Contains("TSJ")) + { + elevator.SetValue(ElevatorDBName.TwoLayerPutFinish, 1); + elevator.SetValue(ElevatorDBName.StartCommand, 1); + content.OK(); + } + else + { + commonConveyorLine.SetValue(ConveyorLineDBName.PutFinish, 1, "101"); + commonConveyorLine.SetValue(ConveyorLineDBName.ConveyorLineTaskNum, 9990, "101"); + } + } + else + { + throw new Exception("浠诲姟鐘舵�佸紓甯�"); + } + } + catch (Exception ex) + { + content.Error(ex.Message); + } + return content; + } + + /// <summary> + /// 鍙栬揣瀹屾垚 + /// </summary> + /// <param name="task"></param> + /// <returns></returns> + public WebResponseContent PickUpFinish(Dt_Task task, CommonConveyorLine commonConveyorLine, CommonElevator elevator) + { + WebResponseContent content = new WebResponseContent(); + try + { + if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) + { + if (task.DeviceCode.Contains("TSJ")) + { + elevator.SetValue(ElevatorDBName.TwoLayerPutFinish, 1); + elevator.SetValue(ElevatorDBName.StartCommand, 1); + content.OK(); + } + else + { + commonConveyorLine.SetValue(ConveyorLineDBName.PutFinish, 1, "101"); + content.OK(); + } + + } + else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup) + { + if (task.DeviceCode.Contains("TSJ")) + { + elevator.SetValue(ElevatorDBName.OneLayerPutFinish, 1); + elevator.SetValue(ElevatorDBName.StartCommand, 1); + content.OK(); + } + } + else + { + throw new Exception("浠诲姟鐘舵�佸紓甯�"); + } + } + catch (Exception ex) + { + content.Error(ex.Message); + } + return content; + } + + /// <summary> + /// 璇锋眰鍙栬揣 + /// </summary> + /// <param name="task"></param> + /// <returns></returns> + public WebResponseContent RequestPickUp(Dt_Task task, CommonConveyorLine commonConveyorLine, CommonElevator elevator) + { + WebResponseContent content = new WebResponseContent(); + try + { + if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) + { + int AllowPickUp = 0; + if (task.DeviceCode.Contains("TSJ")) + AllowPickUp = elevator.GetValue<ElevatorDBName, short>(ElevatorDBName.TwoLayerAllowPickUp); + else + AllowPickUp = commonConveyorLine.GetValue<ConveyorLineDBName, short>(ConveyorLineDBName.AllowPickUp, "101"); + + content = AllowPickUp == 1 ? content.OK() : content.Error("璁惧涓嶅厑璁稿彇璐�"); + + } + else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup) + { + int AllowPickUp = 0; + if (task.DeviceCode.Contains("TSJ")) + AllowPickUp = elevator.GetValue<ElevatorDBName, short>(ElevatorDBName.OneLayerAllowPickUp); + + content = AllowPickUp == 1 ? content.OK() : content.Error("璁惧涓嶅厑璁稿彇璐�"); + } + else + { + throw new Exception("浠诲姟鐘舵�佸紓甯�"); + } + } + catch (Exception ex) + { + content.Error(ex.Message); + } + return content; + } + + /// <summary> + /// 璇锋眰鏀捐揣 + /// </summary> + /// <param name="task"></param> + /// <returns></returns> + public WebResponseContent RequestPut(Dt_Task task, CommonConveyorLine commonConveyorLine, CommonElevator elevator) + { + WebResponseContent content = new WebResponseContent(); + try + { + if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) + { + int AllowPickUp = 0; + if (task.DeviceCode.Contains("TSJ")) + AllowPickUp = elevator.GetValue<ElevatorDBName, short>(ElevatorDBName.OneLayerAllowPut); + + content = AllowPickUp == 1 ? content.OK() : content.Error("璁惧涓嶅厑璁告斁璐�"); + + } + else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup) + { + int AllowPickUp = 0; + if (task.DeviceCode.Contains("TSJ")) + AllowPickUp = elevator.GetValue<ElevatorDBName, short>(ElevatorDBName.TwoLayerAllowPut); + else + AllowPickUp = commonConveyorLine.GetValue<ConveyorLineDBName, short>(ConveyorLineDBName.AllowPut, "101"); + + content = AllowPickUp == 1 ? content.OK() : content.Error("璁惧涓嶅厑璁告斁璐�"); + } + else + { + throw new Exception("浠诲姟鐘舵�佸紓甯�"); + } + } + catch (Exception ex) + { + content.Error(ex.Message); + } + return content; + } + + #endregion + } +} diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs" index d2293fa..fc5ab5c 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs" @@ -25,19 +25,6 @@ return Service.ReceiveWMSTask(taskDTOs); } - [HttpPost, Route("ReceiveByWMSTask"), AllowAnonymous] - public WebResponseContent ReceiveByWMSTask([FromBody] WMSTaskDTO taskDTOs) - { - return Service.ReceiveByWMSTask(taskDTOs); - } - - [HttpPost, Route("ReceiveByWMSGWTask"), AllowAnonymous] - public WebResponseContent ReceiveByWMSGWTask([FromBody] WMSTaskDTO taskDTOs) - { - return Service.ReceiveByWMSGWTask(taskDTOs); - } - - [HttpPost, HttpGet, Route("UpdateTaskExceptionMessage")] public WebResponseContent UpdateTaskExceptionMessage(int taskNum, string message) { diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Partial/AGVTaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Partial/AGVTaskService.cs" new file mode 100644 index 0000000..957a964 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Partial/AGVTaskService.cs" @@ -0,0 +1,72 @@ +锘縰sing AngleSharp.Io; +using HslCommunication; +using Mapster; +using Newtonsoft.Json; +using SkiaSharp; +using System.Diagnostics.CodeAnalysis; +using WIDESEAWCS_Common; +using WIDESEAWCS_Common.TaskEnum; +using WIDESEAWCS_Core; +using WIDESEAWCS_Core.Helper; +using WIDESEAWCS_Core.LogHelper; +using WIDESEAWCS_DTO.AGV; +using WIDESEAWCS_DTO.TaskInfo; +using WIDESEAWCS_Model.Models; +using WIDESEAWCS_QuartzJob; + +namespace WIDESEAWCS_TaskInfoService +{ + public partial class TaskService + { + #region AGV鎺ュ彛 + private string GetAGVIPAddress(string baseIp, string name) + { + var configz = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); + var wcsBasez = configz.Where(x => x.ConfigKey == baseIp).FirstOrDefault()?.ConfigValue; + var address = configz.Where(x => x.ConfigKey == name).FirstOrDefault()?.ConfigValue; + if (wcsBasez == null || address == null) + { + throw new InvalidOperationException("WMS IP 鏈厤缃�"); + } + return wcsBasez + address; + } + + public async Task<WebResponseContent> SendAgvTask(string modelProcessCode,Dt_Task task) + { + WebResponseContent content = new WebResponseContent(); + try + { + SendTask sendTask = new SendTask() + { + modelProcessCode = modelProcessCode, + priority = 1, + fromSystem = "WMS", + orderId = task.TaskNum.ToString(), + orderDetail = new taskOrderDetail() + { + taskPath = $"{task.CurrentAddress},{task.NextAddress}", + shelfNumber = "", + } + }; + var AgvSendTaskAddrss = GetAGVIPAddress(SysConfigKeyConst.AGVIP_BASE, SysConfigKeyConst.SendAGVTask); + // 鍙戦�佽姹傚苟绛夊緟鍝嶅簲 + var result = await HttpHelper.PostAsync(AgvSendTaskAddrss, sendTask.ToJsonString()); + + var respone = JsonConvert.DeserializeObject<AgvRespone>(result.ToString()); + + if (respone.code != 1000) + { + content.Error(respone.desc); + } + content.OK("浠诲姟涓嬪彂鑷矨GV绯荤粺"); + } + catch (Exception ex) + { + content.Error(ex.Message); + } + return content; + } + + #endregion + } +} \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Partial/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Partial/TaskService.cs" deleted file mode 100644 index 9736d13..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Partial/TaskService.cs" +++ /dev/null @@ -1,700 +0,0 @@ -锘縰sing HslCommunication; -using Mapster; -using Newtonsoft.Json; -using System.Diagnostics.CodeAnalysis; -using WIDESEAWCS_Common; -using WIDESEAWCS_Common.TaskEnum; -using WIDESEAWCS_Core; -using WIDESEAWCS_Core.Helper; -using WIDESEAWCS_Core.LogHelper; -using WIDESEAWCS_DTO.TaskInfo; -using WIDESEAWCS_Model.Models; -using WIDESEAWCS_QuartzJob; - -namespace WIDESEAWCS_TaskInfoService -{ - public partial class TaskService - { - /// <summary> - /// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟 - /// </summary> - /// <param name="palletCode">鎵樼洏鍙�</param> - /// <param name="sourceAddress">璧峰鍦板潃</param> - /// <returns></returns> - public async Task<WebResponseContent> RequestTask(string palletCode, string EquiCodeMOM, string Roadways, string area, string CurrentChildCode) - { - WebResponseContent content = new WebResponseContent(); - try - { - var hasTask = await BaseDal.QueryFirstAsync(x => x.PalletCode == palletCode); - if (hasTask != null) - { - return content.Error("褰撳墠鎵樼洏瀛樺湪浠诲姟"); - } - - 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.RequestInTask)?.ConfigValue; - if (wmsBase == null || requestTask == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddrss = wmsBase + requestTask; - - var result = await HttpHelper.PostAsync(wmsIpAddrss, new { palletCode = palletCode, EquiCodeMOM = EquiCodeMOM, Roadways = Roadways, area = area, Position = CurrentChildCode }.ToJsonString()); - content = JsonConvert.DeserializeObject<WebResponseContent>(result); - - if (!content.Status) - { - // wms澶辫触杩斿洖鍘籒G鍙d换鍔� - - return content; - } - - var task = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString()); - return ReceiveByWMSTask(task); - } - catch (Exception ex) - { - return WebResponseContent.Instance.Error(ex.Message); - } - } - - #region 鏍规嵁鎵樼洏鍙枫�佺珯鍙板悜WMS璇锋眰浠诲姟 - - /// <summary> - /// 鏍规嵁鎵樼洏鍙枫�佺珯鍙板悜WMS璇锋眰浠诲姟 - /// </summary> - /// <param name="palletCode">鎵樼洏鍙�</param> - /// <param name="stationManager">绔欏彴</param> - /// <returns></returns> - public async Task<WebResponseContent> RequestTask1(string palletCode, Dt_StationManager stationManager) - { - WebResponseContent content = new WebResponseContent(); - try - { - StaticVariable.isLineRun = false; - var hasTask = await BaseDal.QueryFirstAsync(x => x.PalletCode == palletCode); - if (hasTask != null) - { - return content.Error("褰撳墠鎵樼洏瀛樺湪浠诲姟"); - } - - var Station = await _stationManagerRepository.QueryFirstAsync(x => x.stationType == 6 && x.productLine == stationManager.productLine && x.stationArea == stationManager.stationArea); - var tasks = await BaseDal.QueryFirstAsync(x => x.TaskType == (int)TaskOutboundTypeEnum.InToOut && x.TargetAddress == stationManager.stationLocation && x.CurrentAddress == Station.stationChildCode); - if (tasks != null) - { - ConsoleHelper.WriteErrorLine($"銆恵stationManager.stationChildCode}銆戝凡瀛樺湪鐩存帴鍑哄簱浠诲姟浠诲姟"); - return content.Error($"銆恵stationManager.stationChildCode}銆戝凡瀛樺湪鐩存帴鍑哄簱浠诲姟浠诲姟"); - } - - if (StaticVariable.isStackerRun) - { - if (stationManager.stationType == 7) - { - var runTask = await BaseDal.QueryFirstAsync(x => x.CurrentAddress == Station.stationChildCode && x.TaskState == (int)TaskInStatusEnum.Line_InFinish && x.TaskType == (int)TaskInboundTypeEnum.InTray); - if (runTask != null) - { - runTask.TargetAddress = stationManager.stationLocation; - runTask.NextAddress = stationManager.stationChildCode; - runTask.Grade = 3; - runTask.TaskType = (int)TaskOutboundTypeEnum.InToOut; - runTask.TaskState = (int)TaskOutStatusEnum.OutNew; - - var config1 = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); - var wmsBase1 = config1.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue; - var requestTask1 = config1.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.SetEmptyOutbyInToOutAsync)?.ConfigValue; - if (wmsBase1 == null || requestTask1 == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddrss1 = wmsBase1 + requestTask1; - - var result1 = await HttpHelper.PostAsync(wmsIpAddrss1, new { palletCode = runTask.PalletCode, EquiCodeMOM = stationManager.stationEquipMOM, Roadways = stationManager.Roadway, area = stationManager.stationArea, Position = Station.stationChildCode }.ToJsonString()); - content = JsonConvert.DeserializeObject<WebResponseContent>(result1); - if (content.Status) - { - await BaseDal.UpdateDataAsync(runTask); - ConsoleHelper.WriteSuccessLine($"銆恵runTask.PalletCode}鐩存帴鍑哄簱鑷充簩灏併��"); - return content.OK("鎴愬姛"); - } - else - ConsoleHelper.WriteErrorLine(content.Message); - } - else - ConsoleHelper.WriteErrorLine($"銆恵Station.stationChildCode}銆戞湭鎵惧埌绌烘墭鐩樺叆搴撲换鍔�"); - } - else if (stationManager.stationType == 6) - { - var emptyStation = await _stationManagerRepository.QueryFirstAsync(x => x.stationType == 7 && x.productLine == stationManager.productLine && x.stationArea == stationManager.stationArea); - var runTask = await BaseDal.QueryFirstAsync(x => x.NextAddress == emptyStation.stationChildCode && x.TaskState == (int)TaskInStatusEnum.Line_InFinish && x.TaskType == (int)TaskInboundTypeEnum.InTray); - if (runTask != null) - { - runTask.SourceAddress = stationManager.stationLocation; - runTask.CurrentAddress = stationManager.stationChildCode; - runTask.Grade = 3; - runTask.TaskType = (int)TaskOutboundTypeEnum.InToOut; - runTask.TaskState = (int)TaskOutStatusEnum.OutNew; - runTask.PalletCode = palletCode; - - var config1 = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); - var wmsBase1 = config1.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue; - var requestTask1 = config1.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.SetEmptyOutbyInToOutOneAsync)?.ConfigValue; - if (wmsBase1 == null || requestTask1 == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddrss1 = wmsBase1 + requestTask1; - - var result1 = await HttpHelper.PostAsync(wmsIpAddrss1, new { palletCode = runTask.PalletCode, EquiCodeMOM = stationManager.stationEquipMOM, Roadways = stationManager.Roadway, area = stationManager.stationArea, Position = emptyStation.stationChildCode }.ToJsonString()); - content = JsonConvert.DeserializeObject<WebResponseContent>(result1); - if (content.Status) - { - await BaseDal.UpdateDataAsync(runTask); - ConsoleHelper.WriteSuccessLine($"銆恵runTask.PalletCode}鐩存帴鍑哄簱鑷充簩灏併��"); - return content.OK("鎴愬姛"); - } - else - ConsoleHelper.WriteErrorLine(content.Message); - } - } - } - 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.RequestInTask)?.ConfigValue; - if (wmsBase == null || requestTask == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddrss = wmsBase + requestTask; - - var result = await HttpHelper.PostAsync(wmsIpAddrss, new { palletCode = palletCode, EquiCodeMOM = stationManager.stationEquipMOM, Roadways = stationManager.Roadway, area = stationManager.stationArea, Position = stationManager.stationChildCode }.ToJsonString()); - content = JsonConvert.DeserializeObject<WebResponseContent>(result); - ConsoleHelper.WriteErrorLine($"{stationManager.stationChildCode}绔欏彴璇锋眰鍝嶅簲淇℃伅:{content.ToJsonString()}"); - if (!content.Status) - { - // wms澶辫触杩斿洖鍘籒G鍙d换鍔� - //if (stationManager.stationChildCode != stationManager.stationNGChildCode) - //{ - // WMSTaskDTO taskDTO = new WMSTaskDTO() - // { - // Grade = 8, - // PalletCode = palletCode, - // SourceAddress = stationManager.stationLocation, - // TargetAddress = stationManager.stationNGLocation, - // RoadWay = stationManager.Roadway, - // TaskNum = 1000, - // TaskState = (int)TaskOutStatusEnum.OutNew, - // TaskType = (int)TaskOutboundTypeEnum.InToOut - // }; - //} - return content; - } - - var task = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString()); - ConsoleHelper.WriteSuccessLine(content.Data.ToString()); - return ReceiveByWMSTask(task); - } - catch (Exception ex) - { - return WebResponseContent.Instance.Error(ex.Message); - } - finally - { - StaticVariable.isLineRun = true; - } - } - - /// <summary> - /// 鏍规嵁鎵樼洏鍙枫�佺珯鍙板悜WMS璇锋眰浠诲姟 - /// </summary> - /// <param name="palletCode">鎵樼洏鍙�</param> - /// <param name="stationManager">绔欏彴</param> - /// <returns></returns> - public async Task<WebResponseContent> RequestTask(string palletCode, Dt_StationManager stationManager) - { - WebResponseContent content = new WebResponseContent(); - try - { - StaticVariable.isLineRun = false; - - // 妫�鏌ュ綋鍓嶆墭鐩樻槸鍚﹀瓨鍦ㄤ换鍔� - if (await HasTask(palletCode)) - { - return content.Error("褰撳墠鎵樼洏瀛樺湪浠诲姟"); - } - - // 妫�鏌ユ槸鍚﹀凡瀛樺湪鐩存帴鍑哄簱浠诲姟 - if (await HasDirectOutboundTask(stationManager)) - { - return content.Error($"銆恵stationManager.stationChildCode}銆戝凡瀛樺湪鐩存帴鍑哄簱浠诲姟浠诲姟"); - } - - if (StaticVariable.isStackerRun) - { - if (stationManager.stationType == 7) - { - var result = await HandleStationType7(palletCode, stationManager); - if (result != null) - { - return result; - } - } - else if (stationManager.stationType == 6) - { - var result = await HandleStationType6(palletCode, stationManager); - if (result != null) - { - return result; - } - } - } - - // 鍙戣捣璇锋眰鑾峰彇鍏ュ簱浠诲姟 - content = await RequestInTask(palletCode, stationManager); - ConsoleHelper.WriteErrorLine($"{stationManager.stationChildCode}绔欏彴璇锋眰鍝嶅簲淇℃伅:{content.ToJsonString()}"); - - if (!content.Status) - { - return content; - } - - var task = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString()); - ConsoleHelper.WriteSuccessLine(content.Data.ToString()); - return ReceiveByWMSTask(task); - } - catch (Exception ex) - { - return WebResponseContent.Instance.Error(ex.Message); - } - finally - { - StaticVariable.isLineRun = true; - } - } - - // 妫�鏌ュ綋鍓嶆墭鐩樻槸鍚﹀瓨鍦ㄤ换鍔� - private async Task<bool> HasTask(string palletCode) - { - var hasTask = await BaseDal.QueryFirstAsync(x => x.PalletCode == palletCode); - return hasTask != null; - } - - // 妫�鏌ユ槸鍚﹀凡瀛樺湪鐩存帴鍑哄簱浠诲姟 - private async Task<bool> HasDirectOutboundTask(Dt_StationManager stationManager) - { - var station = await _stationManagerRepository.QueryFirstAsync(x => x.stationType == 6 && x.productLine == stationManager.productLine && x.stationArea == stationManager.stationArea && x.Roadway == stationManager.Roadway); - var tasks = await BaseDal.QueryFirstAsync(x => x.TaskType == (int)TaskOutboundTypeEnum.InToOut && x.TargetAddress == stationManager.stationLocation && x.CurrentAddress == station.stationChildCode); - return tasks != null; - } - - // 澶勭悊 stationType 涓� 7 鐨勬儏鍐� - private async Task<WebResponseContent> HandleStationType7(string palletCode, Dt_StationManager stationManager) - { - var station = await _stationManagerRepository.QueryFirstAsync(x => x.stationType == 6 && x.productLine == stationManager.productLine && x.stationArea == stationManager.stationArea && x.Roadway == stationManager.Roadway); - var runTask = await BaseDal.QueryFirstAsync(x => x.CurrentAddress == station.stationChildCode && x.TaskState == (int)TaskInStatusEnum.Line_InFinish && x.TaskType == (int)TaskInboundTypeEnum.InTray); - - if (runTask != null) - { - runTask.TargetAddress = stationManager.stationLocation; - runTask.NextAddress = stationManager.stationChildCode; - runTask.Grade = 3; - runTask.TaskType = (int)TaskOutboundTypeEnum.InToOut; - runTask.TaskState = (int)TaskOutStatusEnum.OutNew; - - var wmsIpAddrss = GetWmsIpAddress(SysConfigKeyConst.SetEmptyOutbyInToOutAsync); - var result = await HttpHelper.PostAsync(wmsIpAddrss, new { palletCode = runTask.PalletCode, EquiCodeMOM = stationManager.stationEquipMOM, Roadways = stationManager.Roadway, area = stationManager.stationArea, Position = station.stationChildCode }.ToJsonString()); - var content = JsonConvert.DeserializeObject<WebResponseContent>(result); - - if (content.Status) - { - await BaseDal.UpdateDataAsync(runTask); - ConsoleHelper.WriteSuccessLine($"銆恵runTask.PalletCode}鐩存帴鍑哄簱鑷充簩灏併��"); - return content.OK("鎴愬姛"); - } - else - { - ConsoleHelper.WriteErrorLine(content.Message); - } - } - else - { - ConsoleHelper.WriteErrorLine($"銆恵station.stationChildCode}銆戞湭鎵惧埌绌烘墭鐩樺叆搴撲换鍔�"); - } - - return null; - } - - // 澶勭悊 stationType 涓� 6 鐨勬儏鍐� - private async Task<WebResponseContent> HandleStationType6(string palletCode, Dt_StationManager stationManager) - { - var emptyStation = await _stationManagerRepository.QueryFirstAsync(x => x.stationType == 7 && x.productLine == stationManager.productLine && x.stationArea == stationManager.stationArea && x.Roadway==stationManager.Roadway); - var runTask = await BaseDal.QueryFirstAsync(x => x.NextAddress == emptyStation.stationChildCode && x.TaskState == (int)TaskInStatusEnum.Line_InFinish && x.TaskType == (int)TaskInboundTypeEnum.InTray); - - if (runTask != null) - { - runTask.SourceAddress = stationManager.stationLocation; - runTask.CurrentAddress = stationManager.stationChildCode; - runTask.Grade = 3; - runTask.TaskType = (int)TaskOutboundTypeEnum.InToOut; - runTask.TaskState = (int)TaskOutStatusEnum.OutNew; - runTask.PalletCode = palletCode; - - var wmsIpAddrss = GetWmsIpAddress(SysConfigKeyConst.SetEmptyOutbyInToOutAsync); - var result = await HttpHelper.PostAsync(wmsIpAddrss, new { palletCode = runTask.PalletCode, EquiCodeMOM = stationManager.stationEquipMOM, Roadways = stationManager.Roadway, area = stationManager.stationArea, Position = emptyStation.stationChildCode }.ToJsonString()); - var content = JsonConvert.DeserializeObject<WebResponseContent>(result); - - if (content.Status) - { - await BaseDal.UpdateDataAsync(runTask); - ConsoleHelper.WriteSuccessLine($"銆恵runTask.PalletCode}鐩存帴鍑哄簱鑷充簩灏併��"); - return content.OK("鎴愬姛"); - } - else - { - ConsoleHelper.WriteErrorLine(content.Message); - } - } - - return null; - } - - // 鑾峰彇 WMS 璇锋眰鍦板潃 - private string GetWmsIpAddress(string configKey) - { - 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 == configKey)?.ConfigValue; - - if (wmsBase == null || requestTask == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - - return wmsBase + requestTask; - } - - // 鍙戣捣璇锋眰鑾峰彇鍏ュ簱浠诲姟 - private async Task<WebResponseContent> RequestInTask(string palletCode, Dt_StationManager stationManager) - { - var wmsIpAddrss = GetWmsIpAddress(SysConfigKeyConst.RequestInTask); - var result = await HttpHelper.PostAsync(wmsIpAddrss, new { palletCode = palletCode, EquiCodeMOM = stationManager.stationEquipMOM, Roadways = stationManager.Roadway, area = stationManager.stationArea, Position = stationManager.stationChildCode }.ToJsonString()); - return JsonConvert.DeserializeObject<WebResponseContent>(result); - } - - #endregion 鏍规嵁鎵樼洏鍙枫�佺珯鍙板悜WMS璇锋眰浠诲姟 - - public async Task<WebResponseContent> RequestOutTaskToBZAsync(Dt_StationManager stationManager) - { - WebResponseContent content = new WebResponseContent(); - try - { - 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.RequestOutTaskToBZ)?.ConfigValue; - if (wmsBase == null || requestTask == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddrss = wmsBase + requestTask; - - var result = await HttpHelper.PostAsync(wmsIpAddrss, new { Position = stationManager.stationChildCode }.ToJsonString()); - - QuartzLogger.WriteLogToFile($"鍖呰鍑哄簱", $"杩斿洖鍙傛暟銆恵JsonConvert.SerializeObject(result)}銆憑Environment.NewLine}{Environment.NewLine}"); - - - content = JsonConvert.DeserializeObject<WebResponseContent>(result); - if (!content.Status) - { - //鏃犳弧瓒虫潯浠跺彲鍑哄簱鑷冲寘瑁呯殑搴撳瓨 - ConsoleHelper.WriteErrorLine(JsonConvert.SerializeObject(content)); - QuartzLogger.WriteLogToFile($"鍖呰鍑哄簱", $"杩斿洖鍙傛暟銆恵JsonConvert.SerializeObject(content)}銆憑Environment.NewLine}{Environment.NewLine}"); - return content; - } - - var task = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString()); - ConsoleHelper.WriteSuccessLine(content.Data.ToString()); - - content = ReceiveWMSTask(new List<WMSTaskDTO> { task }); - - QuartzLogger.WriteLogToFile($"鍖呰鍑哄簱", $"杩斿洖鍙傛暟銆恵JsonConvert.SerializeObject(content)}銆憑Environment.NewLine}{Environment.NewLine}"); - ConsoleHelper.WriteErrorLine(JsonConvert.SerializeObject(content)); - return content; - } - catch (Exception ex) - { - return content.Error(ex.Message); - } - } - - /// <summary> - /// 鎺ユ敹WMS浠诲姟淇℃伅 - /// </summary> - /// <param name="taskDTOs">WMS浠诲姟瀵硅薄闆嗗悎</param> - /// <returns>杩斿洖澶勭悊缁撴灉</returns> - public WebResponseContent ReceiveByWMSTask([NotNull] WMSTaskDTO taskDTO) - { - WebResponseContent content = new WebResponseContent(); - try - { - if (BaseDal.QueryFirst(x => x.TaskNum == taskDTO.TaskNum || x.PalletCode == taskDTO.PalletCode) != null) - { - return content.OK(); - } - Dt_Task task = _mapper.Map<Dt_Task>(taskDTO); - task.Creater = "WMS"; - - if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) - { - if (task.TaskType == (int)TaskOutboundTypeEnum.InToOut && taskDTO.RoadWay.Contains("CW")) - { - var stationinfo = _stationManagerRepository.QueryFirst(x => x.stationPLC == "1017" && x.stationType == 10 && x.Roadway == taskDTO.RoadWay); - task.TaskState = (int)TaskOutStatusEnum.OutNew; - task.CurrentAddress = taskDTO.SourceAddress; - task.NextAddress = stationinfo.stationChildCode; - task.SourceAddress = taskDTO.SourceAddress; - task.TargetAddress = taskDTO.TargetAddress; - } - else - { - var stationinfo = _stationManagerRepository.QueryFirst(x => x.stationLocation == taskDTO.TargetAddress && x.Roadway == taskDTO.RoadWay); - task.TaskState = (int)TaskOutStatusEnum.OutNew; - task.CurrentAddress = taskDTO.RoadWay; - task.NextAddress = stationinfo.stationChildCode; - task.SourceAddress = taskDTO.SourceAddress; - task.TargetAddress = taskDTO.TargetAddress; - } - } - else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup) - { - var stationinfo = _stationManagerRepository.QueryFirst(x => x.stationLocation == taskDTO.SourceAddress && x.Roadway == taskDTO.RoadWay); - task.TaskState = (int)TaskInStatusEnum.Line_InFinish; - task.SourceAddress = taskDTO.SourceAddress; - task.CurrentAddress = stationinfo.stationChildCode; - task.NextAddress = stationinfo.stationChildCode; - task.TargetAddress = taskDTO.TargetAddress; - } - else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup) - { - task.TaskState = (int)TaskStatus.Created; - task.SourceAddress = taskDTO.SourceAddress; - task.CurrentAddress = taskDTO.SourceAddress; - task.NextAddress = taskDTO.TargetAddress; - task.TargetAddress = taskDTO.TargetAddress; - } - - BaseDal.AddData(task); - - _taskExecuteDetailService.AddTaskExecuteDetail(task.WMSId, "鎺ユ敹WMS浠诲姟"); - - content = WebResponseContent.Instance.OK("鎴愬姛"); - } - catch (Exception ex) - { - content = WebResponseContent.Instance.Error($"浠诲姟鎺ユ敹閿欒,閿欒淇℃伅:{ex.Message}"); - } - return content; - } - - /// <summary> - /// 鎺ユ敹WMS浠诲姟淇℃伅 - /// </summary> - /// <param name="taskDTOs">WMS浠诲姟瀵硅薄闆嗗悎</param> - /// <returns>杩斿洖澶勭悊缁撴灉</returns> - public WebResponseContent ReceiveByBZOtuTask([NotNull] WMSTaskDTO taskDTO) - { - WebResponseContent content = new WebResponseContent(); - try - { - if (BaseDal.QueryFirst(x => x.TaskNum == taskDTO.TaskNum || x.PalletCode == taskDTO.PalletCode) != null) - { - return content.OK(); - } - Dt_Task task = _mapper.Map<Dt_Task>(taskDTO); - task.Creater = "WMS"; - - if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) - { - var stationinfo = _stationManagerRepository.QueryFirst(x => x.stationLocation == taskDTO.TargetAddress && x.Roadway == taskDTO.RoadWay); - task.TaskState = (int)TaskOutStatusEnum.OutNew; - task.CurrentAddress = stationinfo.stationChildCode; - task.NextAddress = stationinfo.stationChildCode; - task.SourceAddress = taskDTO.SourceAddress; - task.TargetAddress = taskDTO.TargetAddress; - } - BaseDal.AddData(task); - - _taskExecuteDetailService.AddTaskExecuteDetail(task.WMSId, "鎺ユ敹WMS浠诲姟"); - - content = WebResponseContent.Instance.OK("鎴愬姛"); - } - catch (Exception ex) - { - content = WebResponseContent.Instance.Error($"浠诲姟鎺ユ敹閿欒,閿欒淇℃伅:{ex.Message}"); - } - return content; - } - - /// <summary> - /// 楂樻俯鍑哄簱 - /// </summary> - /// <param name="taskDTO"></param> - /// <returns></returns> - public WebResponseContent ReceiveByWMSGWTask([NotNull] WMSTaskDTO taskDTO) - { - WebResponseContent content = new WebResponseContent(); - try - { - if (BaseDal.QueryFirst(x => x.TaskNum == taskDTO.TaskNum || x.PalletCode == taskDTO.PalletCode) != null) - { - return content.OK(); - } - Dt_Task task = _mapper.Map<Dt_Task>(taskDTO); - task.Creater = "WMS"; - - if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) - { - task.TaskState = (int)TaskOutStatusEnum.OutNew; - task.CurrentAddress = taskDTO.RoadWay; - task.NextAddress = "002-000-002"; - task.SourceAddress = taskDTO.SourceAddress; - task.TargetAddress = taskDTO.TargetAddress; - } - BaseDal.AddData(task); - - _taskExecuteDetailService.AddTaskExecuteDetail(task.WMSId, "鎺ユ敹WMS浠诲姟"); - - content = WebResponseContent.Instance.OK("鎴愬姛"); - } - catch (Exception ex) - { - content = WebResponseContent.Instance.Error($"浠诲姟鎺ユ敹閿欒,閿欒淇℃伅:{ex.Message}"); - } - return content; - } - - /// <summary> - /// 鎺ユ敹WMS浠诲姟淇℃伅 - /// </summary> - /// <param name="taskDTOs">WMS浠诲姟瀵硅薄闆嗗悎</param> - /// <returns>杩斿洖澶勭悊缁撴灉</returns> - public async Task<WebResponseContent> RequestFlow(Dt_StationManager stationManager) - { - WebResponseContent content = new WebResponseContent(); - try - { - 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.RequestFlow)?.ConfigValue; - if (wmsBase == null || requestTask == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddrss = wmsBase + requestTask; - - var result = await HttpHelper.PostAsync(wmsIpAddrss, new { EquiCodeMOM = stationManager.stationEquipMOM, Roadways = stationManager.Roadway, area = stationManager.stationArea, Position = stationManager.stationChildCode }.ToJsonString()); - content = JsonConvert.DeserializeObject<WebResponseContent>(result); - - if (!content.Status) - { - return content; - } - Dt_StationManager dt_Station = content.Data as Dt_StationManager; - //dt_Station. - } - catch (Exception ex) - { - content = WebResponseContent.Instance.Error($"浠诲姟鎺ユ敹閿欒,閿欒淇℃伅:{ex.Message}"); - } - return content; - } - - /// <summary> - /// 鏍规嵁鎵樼洏鍙峰拰璁惧鍙锋煡璇换鍔� - /// </summary> - /// <param name="taskNum">浠诲姟鍙�</param> - /// <param name="currentAddress">褰撳墠鍦板潃</param> - /// <returns></returns> - public Dt_Task QueryTaskByPalletCode(string palletCode, string Roadway) - { - return BaseDal.QueryFirst(x => x.PalletCode == palletCode && x.Roadway == Roadway, TaskOrderBy); - } - - ///// <summary> - ///// 鏍规嵁璁惧缂栧彿銆佸綋鍓嶅湴鍧�鏌ヨ杈撻�佺嚎鏈墽琛岀殑浠诲姟 - ///// </summary> - ///// <param name="deviceNo">璁惧缂栧彿</param> - ///// <param name="currentAddress">褰撳墠鍦板潃</param> - ///// <returns></returns> - //public Dt_Task QueryConveyorLineTask(string deviceNo, string currentAddress) - //{ - // return BaseDal.QueryFirst(x => (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.InNew || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish) && x.CurrentAddress == currentAddress, TaskOrderBy); - //} - - /// 浠诲姟瀹屾垚 - /// </summary> - /// <param name="taskNum">浠诲姟缂栧彿</param> - /// <returns>杩斿洖澶勭悊缁撴灉</returns> - public WebResponseContent StackCraneTaskCompletedByStation(int taskNum) - { - WebResponseContent content = new WebResponseContent(); - try - { - var task = BaseDal.QueryFirst(x => x.TaskNum == taskNum); - if (task == null) return WebResponseContent.Instance.Error($"鏈壘鍒拌浠诲姟淇℃伅,浠诲姟鍙�:銆恵taskNum}銆�"); - - #region WMS鍚屾浠诲姟瀹屾垚 - - var keys = new Dictionary<string, object>() - { - {"taskNum", taskNum} - }; - // 鑾峰彇WMSip鍦板潃 - var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); - var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue; - var completeTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.CompleteTask)?.ConfigValue; - if (wmsBase == null || completeTask == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddress = wmsBase + completeTask; - - var result = HttpHelper.GetAsync(wmsIpAddress, keys).Result; - content = JsonConvert.DeserializeObject<WebResponseContent>(result); - - #endregion WMS鍚屾浠诲姟瀹屾垚 - - if (content.Status) - { - task.TaskState = 1; //浠诲姟瀹屾垚 - var taskHty = task.Adapt<Dt_Task_Hty>(); - _taskHtyRepository.AddData(taskHty); - BaseDal.DeleteData(task); - } - - #region 鏇存柊浠诲姟鐘舵�� - - //var updateTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.UpdateTask)?.ConfigValue; - //if (wmsBase == null || updateTask == null) - //{ - // throw new InvalidOperationException("WMS IP 鏈厤缃�"); - //} - //wmsIpAddress = wmsBase + updateTask; - - //result = HttpHelper.PostAsync(wmsIpAddress, new { TaskNum = task.TaskNum, TaskState = task.TaskState }.ToJsonString()).Result; - //content = JsonConvert.DeserializeObject<WebResponseContent>(result); - - #endregion 鏇存柊浠诲姟鐘舵�� - - //content = WebResponseContent.Instance.OK(); - } - catch (Exception ex) - { - content = WebResponseContent.Instance.Error($"浠诲姟瀹屾垚寮傚父,浠诲姟鍙�:銆恵taskNum}銆�"); - QuartzLogger.WriteLogToFile($"Info_鍒嗗浠诲姟瀹屾垚", $"浠诲姟瀹屾垚寮傚父,浠诲姟鍙�:銆恵taskNum}銆戝紓甯镐俊鎭�恵ex.Message}銆憑Environment.NewLine}寮傚父淇℃伅銆恵ex.StackTrace}銆憑Environment.NewLine}"); - } - QuartzLogger.WriteLogToFile($"Info_鍒嗗浠诲姟瀹屾垚", $"浠诲姟瀹屾垚,浠诲姟鍙�:銆恵taskNum}銆戣繑鍥炲弬鏁般�恵JsonConvert.SerializeObject(content)}銆憑Environment.NewLine}{Environment.NewLine}"); - return content; - } - } -} \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" index a9cdf85..d76dc75 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" @@ -1,5 +1,6 @@ 锘縰sing AutoMapper; using HslCommunication; +using LogLibrary.Log; using Mapster; using Newtonsoft.Json; using SqlSugar; @@ -25,8 +26,6 @@ using WIDESEAWCS_QuartzJob.Models; using WIDESEAWCS_QuartzJob.Repository; using WIDESEAWCS_QuartzJob.Service; -using WIDESEAWCS_TaskInfoRepository; -using static Microsoft.EntityFrameworkCore.DbLoggerCategory.Database; namespace WIDESEAWCS_TaskInfoService { @@ -138,36 +137,16 @@ // 鍒ゆ柇浠诲姟绫诲瀷鏄惁涓哄叆搴撲换鍔� else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup) { - var value = _sys_ConfigService.GetByConfigKey(CateGoryConst.CONFIG_SYS_InStation, SysConfigKeyConst.JZNGInBoundStation).ConfigValue; - var valueList = value.Split(',').ToList(); - // 鍒ゆ柇婧愬湴鍧�鏄惁涓嶇瓑浜�"1359-4" - //if (task.SourceAddress != "1359-4" && task.SourceAddress != "1357-4") - if (!valueList.Contains(task.SourceAddress)) - { - // 鏌ヨ浠庢簮鍦板潃鍒扮洰鏍囧湴鍧�鐨勮矾鐢� - List<Dt_Router> routers = _routerService.QueryNextRoutes(item.SourceAddress, item.TargetAddress); - if (routers.Count > 0) - { - // 璁剧疆浠诲姟鐘舵�佷负鍏ュ簱鏂板缓 - task.TaskState = (int)TaskInStatusEnum.InNew; - // 璁剧疆褰撳墠鍦板潃涓烘簮鍦板潃 - task.CurrentAddress = item.SourceAddress; - // 璁剧疆涓嬩竴涓湴鍧�涓虹涓�涓瓙浣嶇疆 - task.NextAddress = routers.FirstOrDefault().ChildPosi; - } - } + + task.CurrentAddress = string.Empty; + if (task.SourceAddress == "1325-6") + // 璁剧疆褰撳墠鍦板潃涓�"001-021-001" + task.CurrentAddress = "001-021-001"; else - { - task.CurrentAddress = string.Empty; - if (task.SourceAddress == "1325-6") - // 璁剧疆褰撳墠鍦板潃涓�"001-021-001" - task.CurrentAddress = "001-021-001"; - else - // 璁剧疆褰撳墠鍦板潃涓�"002-021-001" - task.CurrentAddress = "002-021-001"; - // 璁剧疆涓嬩竴涓湴鍧�涓虹洰鏍囧湴鍧� - task.NextAddress = item.TargetAddress; - } + // 璁剧疆褰撳墠鍦板潃涓�"002-021-001" + task.CurrentAddress = "002-021-001"; + // 璁剧疆涓嬩竴涓湴鍧�涓虹洰鏍囧湴鍧� + task.NextAddress = item.TargetAddress; } // 灏嗚浆鎹㈠悗鐨勪换鍔℃坊鍔犲埌浠诲姟鍒楄〃涓� tasks.Add(task); @@ -188,77 +167,6 @@ } // 杩斿洖缁撴灉 return content; - } - - /// <summary> - /// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟 - /// </summary> - /// <param name="palletCode">鎵樼洏鍙�</param> - /// <param name="sourceAddress">璧峰鍦板潃</param> - /// <returns></returns> - public async Task<WebResponseContent> RequestWMSTask(string palletCode, string sourceAddress) - { - WebResponseContent content = new WebResponseContent(); - try - { - var hasTask = await BaseDal.QueryFirstAsync(x => x.PalletCode == palletCode); - if (hasTask != null) - { - var taskExecuting = BaseDal.QueryFirst(x => x.PalletCode == palletCode && x.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting); - - if (taskExecuting != null) - { - taskExecuting.ExceptionMessage = "鏈帴鏀跺埌绾夸綋瀹屾垚淇″彿绯荤粺鍐呴儴鑷姩瀹屾垚"; - Delete(taskExecuting); - } - ConsoleHelper.WriteErrorLine($"褰撳墠鎵樼洏瀛樺湪浠诲姟锛氥�恵palletCode}銆�"); - QuartzLogger.WriteLogToFile($"浠诲姟寮傚父鏈畬鎴�", $"褰撳墠鎵樼洏瀛樺湪浠诲姟锛氥�恵palletCode}銆憑Environment.NewLine}"); - } - - var wmsIpAddrss = string.Empty; - var stationManager = _stationManagerRepository.QueryFirst(x => x.stationChildCode == sourceAddress); - if (stationManager.stationType == 5) - { - wmsIpAddrss = GetIpAddress(SysConfigKeyConst.WMSIP_BASE, SysConfigKeyConst.RequestInBoundTaskNG); - } - else - { - wmsIpAddrss = GetIpAddress(SysConfigKeyConst.WMSIP_BASE, SysConfigKeyConst.RequestTask); - } - - var result = await HttpHelper.PostAsync(wmsIpAddrss, new { Position = sourceAddress, PalletCode = palletCode, stationManager.productLine }.ToJsonString()); - content = JsonConvert.DeserializeObject<WebResponseContent>(result); - - if (!content.Status) - { - // wms澶辫触杩斿洖鍘籒G鍙d换鍔� - return content; - } - - var task = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString()); - if (task.TaskType == (int)TaskInboundTypeEnum.InNG) - { - var station = await _stationManagerRepository.QueryFirstAsync(x => x.stationChildCode == task.SourceAddress); - Dt_Task _Task = _mapper.Map<Dt_Task>(task); - _Task.TaskState = (int)TaskInStatusEnum.InNew; - _Task.CurrentAddress = task.SourceAddress; - _Task.NextAddress = station.stationNGChildCode; - _Task.TargetAddress = task.TargetAddress; - - BaseDal.AddData(_Task); - _taskExecuteDetailService.AddTaskExecuteDetail(_Task.TaskNum, "鎺ユ敹WMS浠诲姟"); - return content.OK(); - } - else - { - return ReceiveWMSTask(new List<WMSTaskDTO> { task }); - } - } - catch (Exception ex) - { - QuartzLogger.WriteLogToFile($"鎺ユ敹浠诲姟寮傚父", $"鎵樼洏鍙凤細銆恵palletCode}銆戣姹傜偣浣嶏細銆恵sourceAddress}銆戝紓甯镐俊鎭�恵ex.Message}銆戝紓甯歌銆恵ex.StackTrace}銆�"); - return WebResponseContent.Instance.Error(ex.Message); - } } /// <summary> @@ -838,9 +746,9 @@ catch (Exception ex) { content = WebResponseContent.Instance.Error($"浠诲姟瀹屾垚寮傚父,浠诲姟鍙�:銆恵taskNum}銆�"); - QuartzLogger.WriteLogToFile($"Info_浠诲姟瀹屾垚", $"浠诲姟瀹屾垚寮傚父,浠诲姟鍙�:銆恵taskNum}銆戝紓甯镐俊鎭�恵ex.Message}銆憑Environment.NewLine}寮傚父淇℃伅銆恵ex.StackTrace}銆憑Environment.NewLine}"); + LogFactory.WriteError($"Info_浠诲姟瀹屾垚", $"浠诲姟瀹屾垚寮傚父,浠诲姟鍙�:銆恵taskNum}銆�", ex); } - QuartzLogger.WriteLogToFile($"Info_浠诲姟瀹屾垚", $"浠诲姟瀹屾垚,浠诲姟鍙�:銆恵taskNum}銆戣繑鍥炲弬鏁般�恵JsonConvert.SerializeObject(content)}銆憑Environment.NewLine}{Environment.NewLine}"); + LogFactory.WriteInfo($"Info_浠诲姟瀹屾垚", $"浠诲姟瀹屾垚,浠诲姟鍙�:銆恵taskNum}銆戣繑鍥炲弬鏁般�恵JsonConvert.SerializeObject(content)}銆憑Environment.NewLine}{Environment.NewLine}"); return content; } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/WIDESEAWCS_TaskInfoService.csproj" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/WIDESEAWCS_TaskInfoService.csproj" index a3b8daf..6b6baf8 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/WIDESEAWCS_TaskInfoService.csproj" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/WIDESEAWCS_TaskInfoService.csproj" @@ -7,6 +7,7 @@ </PropertyGroup> <ItemGroup> + <ProjectReference Include="..\LogLibrary\LogLibrary.csproj" /> <ProjectReference Include="..\WIDESEAWCS_BasicInfoService\WIDESEAWCS_BasicInfoService.csproj" /> <ProjectReference Include="..\WIDESEAWCS_ITaskInfoService\WIDESEAWCS_ITaskInfoService.csproj" /> <ProjectReference Include="..\WIDESEAWCS_SystemServices\WIDESEAWCS_SystemServices.csproj" /> diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" index 343d3eb..d3fd64a 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" @@ -76,28 +76,7 @@ CommonConveyorLine conveyorLine = (CommonConveyorLine)context.JobDetail.JobDataMap.Get("JobParams"); if (conveyorLine != null) { - // 鏌ヨ鎵�鏈夊瓙璁惧鐨勪綅缃� - List<string> childDeviceCodes = _routerService.QueryAllPositions(conveyorLine.DeviceCode); - // 鑾峰彇鎵�鏈夌珯鐐圭鐞嗗櫒 - List<Dt_StationManager> stationManagers = _stationManagerService.GetAllStationByDeviceCode(conveyorLine.DeviceCode); - - // 骞惰澶勭悊姣忎釜瀛愯澶� - var tasks = childDeviceCodes.Select(childDeviceCode => ProcessDeviceAsync(conveyorLine, childDeviceCode)).ToList(); - - // 骞惰澶勭悊姣忎釜绔欑偣绠$悊鍣� - tasks = stationManagers.Select(station => Task.Run(async () => - { - ConveyorLineTaskCommand command = ReadCommand(conveyorLine, station.stationChildCode); - if (command == null ) - { - return; - } - - IStationHandler handler = StationHandlerFactory.GetHandler(station.stationType, this); - await handler.HandleStationAsync(conveyorLine, station, command); - })).ToList(); - - await Task.WhenAll(tasks); + } } catch (Exception ex) @@ -106,507 +85,6 @@ Console.Out.WriteLine(nameof(CommonConveyorLineJob) + ":" + ex.ToString()); } return; - } - - private Task ProcessDeviceAsync(CommonConveyorLine conveyorLine, string childDeviceCode) - { - try - { - // 璇诲彇浠诲姟鍛戒护鍜岃澶囧懡浠� - ConveyorLineTaskCommand command = ReadCommand(conveyorLine, childDeviceCode); - if (command != null) - { - #region 璋冪敤浜嬩欢鎬荤嚎閫氱煡鍓嶇 - - // 鑾峰彇缂撳瓨涓殑鐢ㄦ埛淇℃伅 - var tokenInfos = _cacheService.Get<List<UserInfo>>("Cache_UserToken"); - if (tokenInfos != null && tokenInfos.Any()) - { - userTokenIds = tokenInfos.Select(x => x.Token_ID).ToList(); - userIds = tokenInfos.Select(x => x.UserId).ToList(); - - // 鏋勯�犻�氱煡鏁版嵁 - object obj = new - { - command - }; - // 鍙戦�侀�氱煡 - _noticeService.LineData(userIds.FirstOrDefault(), userTokenIds, new { conveyorLine.DeviceName, childDeviceCode, data = obj }); - } - - #endregion 璋冪敤浜嬩欢鎬荤嚎閫氱煡鍓嶇 - - var structs = BitConverter.GetBytes(command.InteractiveSignal).Reverse().ToArray().ToBoolArray(); - // 鑾峰彇璁惧鍗忚璇︽儏 - List<DeviceProtocolDetailDTO>? deviceProtocolDetails = conveyorLine.DeviceProtocolDetailDTOs.Where(x => x.DeviceProParamName == nameof(ConveyorLineTaskCommand.InteractiveSignal)).ToList(); - - if (deviceProtocolDetails != null) - { - foreach (var item in deviceProtocolDetails) - { - int itemValue = item.ProtocalDetailValue.ObjToInt(); - if (structs[itemValue] == true) - { - // 鑾峰彇澶勭悊鏂规硶 - MethodInfo? method = GetType().GetMethod(item.ProtocolDetailType); - if (method != null) - { - // 璋冪敤澶勭悊鏂规硶 - method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, itemValue }); - } - } - } - } - - } - } - catch (Exception ex) - { - } - return Task.CompletedTask; - } - - #region 鍏ュ簱 - - /// <summary> - /// 杈撻�佺嚎璇锋眰鍏ュ簱 - /// </summary> - /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param> - /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param> - /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> - /// <param name="ProtocalDetailValue">绾夸綋褰撳墠bool璇诲彇鍋忕Щ鍦板潃</param> - public async Task RequestInbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue) - { - try - { - // 杈撳嚭璀﹀憡淇℃伅锛岃〃绀轰换鍔″凡鍒拌揪瀛愯澶囧苟璇锋眰鎵爜鍏ュ簱 - var log = $"鏃堕棿锛氥�恵DateTime.Now}銆戙�恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�"; - ConsoleHelper.WriteWarningLine(log); - // 鍙戦�侀�氱煡 - await _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - // 鏌ヨ鏉$爜瀵瑰簲鐨勪换鍔� - var task = _taskService.QueryBarCodeConveyorLineTask(command.Barcode.ToString(), childDeviceCode); - if (task != null) - { - // 濡傛灉浠诲姟绫诲瀷鏄嚭搴撴垨鍑烘墭鐩橈紝鍒欏鐞嗗嚭搴撲换鍔� - if (task.TaskType == (int)TaskOutboundTypeEnum.OutTray || task.TaskType == (int)TaskOutboundTypeEnum.Outbound) - { - HandleTaskOut(conveyorLine, command, childDeviceCode, ProtocalDetailValue, task); - } - else - { - // 鑾峰彇浠诲姟鐨勪笅涓�鐩爣鍦板潃 - var next = task.NextAddress; - // 灏嗕换鍔℃槧灏勪负鍛戒护 - var taskCommand = MapTaskCommand(task, command); - // 鎭㈠浠诲姟鐨勪笅涓�鐩爣鍦板潃 - task.NextAddress = next; - // 鍙戦�佸懡浠ゅ埌瀛愯澶� - conveyorLine.SendCommand(taskCommand, childDeviceCode); - - // 杈撳嚭璀﹀憡淇℃伅锛岃〃绀轰换鍔″凡鍒拌揪瀛愯澶囧苟璇锋眰鎵爜鍏ュ簱锛屼笅涓�鐩爣鍦板潃 - var logs = $"鏃堕棿锛氥�恵DateTime.Now}銆戙�恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�,涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteWarningLine(logs); - - await _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, logs); - - // 鍙戦�佷换鍔″畬鎴愰�氱煡 - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - // 鏇存柊浠诲姟鐘舵�佷负涓嬩竴鐘舵�� - _taskService.UpdateTaskStatusToNext(task); - } - } - else - { - // 濡傛灉浠诲姟涓虹┖涓旀潯鐮佷笉涓�"NoRead"涓旀潯鐮佷笉涓虹┖锛屽垯澶勭悊鏂颁换鍔� - if (task == null && command.Barcode.ToString() != "NoRead" && command.Barcode.IsNotEmptyOrNull()) - { - // 鏌ヨ鏉$爜瀵瑰簲鐨勪换鍔� - task = _taskService.QueryBarcodeTask(command.Barcode.ToString(), childDeviceCode); - if (task == null) - // 寮傛澶勭悊鏂颁换鍔� - await HandleNewTaskAsync(conveyorLine, command, childDeviceCode, ProtocalDetailValue); - } - } - } - catch (Exception ex) - { - // 鎹曡幏骞惰緭鍑哄紓甯镐俊鎭� - Console.Out.WriteLine(ex.ToString()); - } - } - - #region 杈撻�佺嚎璇锋眰鍏ュ簱涓嬩竴鍦板潃 - - /// <summary> - /// 杈撻�佺嚎璇锋眰鍏ュ簱涓嬩竴鍦板潃 - /// </summary> - /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param> - /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param> - /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> - public void RequestInNextAddress(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode) - { - var log = $"鏃堕棿锛氥�恵DateTime.Now}銆戙�恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傚叆搴撲笅涓�鍦板潃"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode.ToString()); - if (task != null) - { - if (command.Barcode.ToString() == task.PalletCode) - { - Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress); - if (newTask != null) - { - //ConveyorLineTaskCommand taskCommand = _mapper.Map<ConveyorLineTaskCommand>(newTask); - //taskCommand.InteractiveSignal = command.InteractiveSignal; - var next = newTask.NextAddress; - var taskCommand = MapTaskCommand(newTask, command); - newTask.NextAddress = next; - - var logs = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傚叆搴撲笅涓�鍦板潃,涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteWarningLine(logs); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, logs); - - conveyorLine.SendCommand(taskCommand, childDeviceCode); - _taskService.UpdateData(newTask); - } - } - } - } - - #endregion 杈撻�佺嚎璇锋眰鍏ュ簱涓嬩竴鍦板潃 - - /// <summary> - /// 杈撻�佺嚎鍏ュ簱瀹屾垚 - /// </summary> - /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param> - /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param> - /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> - /// <param name="ProtocalDetailValue">绾夸綋褰撳墠bool璇诲彇鍋忕Щ鍦板潃</param> - public void ConveyorLineInFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue) - { - try - { - var log = $"鏃堕棿锛氥�恵DateTime.Now}銆戙�恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎鍏ュ簱瀹屾垚"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode.ToString()); - if (task != null && task.TaskState != (int)TaskInStatusEnum.Line_InFinish) - { - if (command.Barcode.ToString() == task.PalletCode && childDeviceCode == task.NextAddress) - { - if (task.TaskType == (int)TaskInboundTypeEnum.InNG) - { - int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskInStatusEnum>(); - - var station = _stationManagerRepository.QueryFirst(x => x.stationChildCode == task.SourceAddress); - task.CurrentAddress = station.stationLocation; - task.NextAddress = station.stationNGLocation; - task.TargetAddress = task.NextAddress; - task.TaskState = nextStatus; - task.ModifyDate = DateTime.Now; - task.Modifier = "System"; - _taskRepository.UpdateData(task); - - conveyorLine.SetValue(ConveyorLineDBName.WriteConveyorLineTargetAddress, "1000", childDeviceCode); - - var logs = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎鍏ュ簱瀹屾垚,涓嬩竴鐩爣鍦板潃銆愮瓑寰呭垎閰嶈揣浣�,骞跺啓鍏�1000銆�"; - ConsoleHelper.WriteWarningLine(logs); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, logs); - - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - } - else - { - WebResponseContent content = _taskService.UpdateTaskStatusToNext(task); - WriteInfo(conveyorLine.DeviceName, content.ToJsonString()); - if (!content.Status) - { - ConsoleHelper.WriteWarningLine($"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎鍏ュ簱瀹屾垚,浠诲姟鎵ц澶辫触{JsonConvert.SerializeObject(content)}"); - return; - } - - conveyorLine.SetValue(ConveyorLineDBName.WriteConveyorLineTargetAddress, "1000", childDeviceCode); - - var logs = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎鍏ュ簱瀹屾垚,涓嬩竴鐩爣鍦板潃銆愮瓑寰呭垎閰嶈揣浣�,骞跺啓鍏�1000銆�"; - ConsoleHelper.WriteWarningLine(logs); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, logs); - - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - Console.Out.WriteLine(content.ToJsonString()); - } - } - } - } - catch (Exception ex) - { - } - } - - #endregion 鍏ュ簱 - - #region 鍑哄簱 - - /// <summary> - /// 杈撻�佺嚎璇锋眰鍑轰俊鎭� - /// </summary> - /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param> - /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param> - /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> - /// <param name="ProtocalDetailValue">绾夸綋褰撳墠bool璇诲彇鍋忕Щ鍦板潃</param> - public void RequestOutbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue) - { - try - { - // 鏌ヨ杈撻�佺嚎浠诲姟锛屾牴鎹緭閫佺嚎璁惧鍜屽瓙璁惧浠g爜鑾峰彇浠诲姟淇℃伅 - var task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode); - - // 杈撳嚭鎴愬姛淇℃伅锛屽寘鎷緭閫佺嚎鍚嶇О銆佷换鍔″彿銆佹墭鐩樻潯鐮佸拰瀛愯澶囦唬鐮侊紝浠ュ強浠诲姟淇℃伅 - var logs = $"鏃堕棿锛氥�恵DateTime.Now}銆戙�恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎璇锋眰鍑哄簱,task{task.ToJsonString()}"; - ConsoleHelper.WriteSuccessLine(logs); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, logs); - - // 濡傛灉浠诲姟涓嶄负绌猴紝鍒欐墽琛屼互涓嬫搷浣� - if (task != null) - { - // 鑾峰彇浠诲姟鐨勪笅涓�鐩爣鍦板潃 - var next = task.NextAddress; - - // 灏嗕换鍔″懡浠ゆ槧灏勫埌褰撳墠浠诲姟 - var taskCommand = MapTaskCommand(task, command); - - // 鎭㈠浠诲姟鐨勪笅涓�鐩爣鍦板潃 - task.NextAddress = next; - - // 杈撳嚭鎴愬姛淇℃伅锛屽寘鎷緭閫佺嚎鍚嶇О銆佷换鍔″彿銆佹墭鐩樻潯鐮併�佸瓙璁惧浠g爜鍜屼笅涓�鐩爣鍦板潃 - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎璇锋眰鍑哄簱,涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteSuccessLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - // 鍚戣緭閫佺嚎鍙戦�佸懡浠� - conveyorLine.SendCommand(taskCommand, childDeviceCode); - - // 瀹屾垚杈撻�佺嚎鍙戦�佷换鍔★紝骞舵洿鏂颁换鍔$姸鎬� - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - - // 鏇存柊浠诲姟鐘舵�佸埌涓嬩竴涓姸鎬� - _taskService.UpdateTaskStatusToNext(task); - - // 濡傛灉浠诲姟鐨勭洰鏍囧湴鍧�鏄�"1020-1"锛屽垯鍐嶆鏇存柊浠诲姟鐘舵�佸埌涓嬩竴涓姸鎬� - if (task.TargetAddress == "1020-1"|| task.TargetAddress == "1049-8") - { - _taskService.UpdateTaskStatusToNext(task); - } - } - } - catch (Exception ex) - { - } - } - - /// <summary> - /// 杈撻�佺嚎璇锋眰鍑哄簱涓嬩竴鍦板潃 - /// </summary> - /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param> - /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param> - /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> - public void RequestOutNextAddress(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue) - { - // 鎵撳嵃鎴愬姛鏃ュ織锛屾樉绀哄綋鍓嶈澶囧悕绉般�佷换鍔″彿銆佹墭鐩樻潯鐮佷互鍙婅姹傚嚭搴撲笅涓�鍦板潃鐨勫瓙璁惧浠g爜 - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎璇锋眰鍑哄簱涓嬩竴鍦板潃"; - ConsoleHelper.WriteSuccessLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - // 鏌ヨ姝e湪鎵ц鐨勮緭閫佺嚎浠诲姟锛屾牴鎹换鍔″彿鍜屽瓙璁惧浠g爜鑾峰彇浠诲姟淇℃伅 - Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode.ToString()); - - // 濡傛灉浠诲姟瀛樺湪 - if (task != null) - { - // 妫�鏌ヤ换鍔′腑鐨勬墭鐩樻潯鐮佹槸鍚︿笌鍛戒护涓殑鎵樼洏鏉$爜涓�鑷� - if (command.Barcode.ToString() == task.PalletCode) - { - // 鏇存柊浠诲姟鐨勪綅缃俊鎭紝骞惰幏鍙栨洿鏂板悗鐨勪换鍔″璞� - Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress); - - // 濡傛灉鏇存柊鍚庣殑浠诲姟瀵硅薄涓嶄负绌� - if (newTask != null) - { - // 鑾峰彇涓嬩竴鐩爣鍦板潃 - var next = newTask.NextAddress; - - // 灏嗘柊浠诲姟瀵硅薄鏄犲皠涓轰换鍔″懡浠ゅ璞� - var taskCommand = MapTaskCommand(newTask, command); - - // 鎭㈠鏂颁换鍔″璞$殑涓嬩竴鐩爣鍦板潃 - newTask.NextAddress = next; - - // 鎵撳嵃鎴愬姛鏃ュ織锛屾樉绀哄綋鍓嶈澶囧悕绉般�佷换鍔″彿銆佹墭鐩樻潯鐮併�佸瓙璁惧浠g爜浠ュ強涓嬩竴鐩爣鍦板潃 - var logs = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎璇锋眰鍑哄簱涓嬩竴鍦板潃,涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteSuccessLine(logs); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, logs); - - // 鍙戦�佷换鍔″懡浠ゅ埌瀛愯澶� - conveyorLine.SendCommand(taskCommand, childDeviceCode); - - // 鏍囪杈撻�佺嚎鍙戦�佷换鍔″畬鎴� - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - - _taskService.UpdateData(newTask); - } - } - } - } - - /// <summary> - /// 杈撻�佺嚎鍑哄簱瀹屾垚 - /// </summary> - /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param> - /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param> - /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> - public void ConveyorLineOutFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue) - { - try - { - // 鎵撳嵃鎴愬姛淇℃伅锛岃〃绀烘墭鐩樺凡鍒拌揪鎸囧畾杈撻�佺嚎骞跺畬鎴愬嚭搴� - var logs = $"銆恵conveyorLine.DeviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎鍑哄簱瀹屾垚"; - ConsoleHelper.WriteSuccessLine(logs); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, logs); - - // 鏌ヨ姝e湪鎵ц鐨勮緭閫佺嚎浠诲姟 - var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode.ToString()); - - // 濡傛灉浠诲姟瀛樺湪 - if (task != null) - { - // 濡傛灉浠诲姟涓殑鎵樼洏鏉$爜涓庡懡浠や腑鐨勬墭鐩樻潯鐮佷竴鑷� - if (command.Barcode.ToString() == task.PalletCode) - { - // 鍒涘缓涓�涓┖鐨刉ebResponseContent瀵硅薄 - WebResponseContent content = new WebResponseContent(); - - // 淇濆瓨浠诲姟鐨勪笅涓�鐩爣鍦板潃 - var next = task.NextAddress; - // 灏嗕换鍔℃槧灏勪负鍛戒护 - var taskCommand = MapTaskCommand(task, command); - // 鎭㈠浠诲姟鐨勪笅涓�鐩爣鍦板潃 - task.NextAddress = next; - - // 濡傛灉浠诲姟鐨勬墭鐩樻潯鐮佷笌鍛戒护涓殑鎵樼洏鏉$爜涓嶄竴鑷存垨鑰呬换鍔″娉ㄤ负"NG" - if (task.PalletCode != command.Barcode.ToString() || task.Remark == "NG") - { - // 璁剧疆鍛戒护鐨勭洰鏍囧湴鍧�涓篘G鍦板潃 - taskCommand.TargetAddress = 1; - } - else - { - // 璁剧疆鍛戒护鐨勭洰鏍囧湴鍧�涓�1000 - taskCommand.TargetAddress = 1000; - } - - // 鎵撳嵃鎴愬姛淇℃伅锛岃〃绀烘墭鐩樺凡鍒拌揪鎸囧畾杈撻�佺嚎骞跺畬鎴愬嚭搴擄紝涓嬩竴鐩爣鍦板潃宸茬‘瀹� - var log = $"銆恵conveyorLine.DeviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎鍑哄簱瀹屾垚,涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteSuccessLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - // 鍙戦�佸懡浠ゅ埌杈撻�佺嚎 - conveyorLine.SendCommand(taskCommand, childDeviceCode); - // 瀹屾垚杈撻�佺嚎鍙戦�� - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - // 鏇存柊浠诲姟鐘舵�佸埌涓嬩竴涓姸鎬� - content = _taskService.UpdateTaskStatusToNext(task); - } - else - { - - // 瀹屾垚杈撻�佺嚎鍙戦�� - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - // 鏇存柊浠诲姟鐘舵�佸埌涓嬩竴涓姸鎬� - _taskService.UpdateTaskStatusToNext(task); - } - } - } - catch (Exception ex) - { - } - } - - #endregion 鍑哄簱 - - /// <summary> - /// 杈撻�佺嚎浜や簰瀹屾垚 - /// </summary> - /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param> - /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> - /// <param name="ProtocalDetailValue">绾夸綋褰撳墠bool璇诲彇鍋忕Щ鍦板潃</param> - /// <param name="value">鍊�</param> - public void ConveyorLineSendFinish(CommonConveyorLine conveyorLine, string childDeviceCode, int ProtocalDetailValue, bool value) - { - // 浠巆onveyorLine涓殑DeviceProDTOs鍒楄〃涓煡鎵剧涓�涓鍚堟潯浠剁殑DeviceProDTO瀵硅薄 - // 鏉′欢鏄疍eviceProParamType绛変簬DeviceCommand锛屼笖DeviceChildCode绛変簬childDeviceCode - // 鏌ユ壘缁撴灉鎸塂eviceProOffset鍗囧簭鎺掑垪 - DeviceProDTO? devicePro = conveyorLine.DeviceProDTOs.Where(x => x.DeviceProParamType == nameof(DeviceCommand) && x.DeviceChildCode == childDeviceCode).OrderBy(x => x.DeviceProOffset).FirstOrDefault(); - - // 灏哾evicePro鐨凞eviceProAddress鎸�'.'鍒嗗壊鎴愬瓧绗︿覆鏁扮粍x - string[] x = devicePro.DeviceProAddress.Split('.'); - - // 灏嗘暟缁剎鐨勬渶鍚庝竴涓厓绱犳浛鎹负ProtocalDetailValue鍔�1鍚庣殑瀛楃涓插舰寮� - x[x.Length - 1] = (ProtocalDetailValue + 1).ToString(); - - // 灏嗕慨鏀瑰悗鐨勬暟缁剎閲嶆柊鎷兼帴鎴愬瓧绗︿覆锛屼綔涓烘柊鐨凞eviceProAddress - string DeviceProAddress = string.Join(".", x); - - var writeBool = conveyorLine.Communicator.Read<bool>(DeviceProAddress); - if (writeBool != value) - { - // 浣跨敤conveyorLine鐨凜ommunicator瀵硅薄鐨刉rite鏂规硶锛屽皢value鍐欏叆鏂扮殑DeviceProAddress鍦板潃 - conveyorLine.Communicator.Write(DeviceProAddress, value); - } - } - - public async Task LogAndWarn(string deviceName, string log, string color = "red") - { - ConsoleHelper.WriteWarningLine(log); - await _noticeService.Logs(userTokenIds, new { deviceName, log = log, time = DateTime.Now.ToString("G"), color = color }); - WriteInfo(deviceName, log); - } - - private ConveyorLineTaskCommand ReadCommand(CommonConveyorLine conveyorLine,string childDeviceCode) - { - ConveyorLineTaskCommand command = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(childDeviceCode); - - DeviceProDTO? devicePro = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == childDeviceCode && x.DeviceProParamName == "ConveyorLineBarcode").FirstOrDefault(); - byte[] Barcode = conveyorLine.Communicator.Read(devicePro.DeviceProAddress, 10); - - command.Barcode = Encoding.ASCII.GetString(Barcode); - return command; } } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineDBName.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineDBName.cs" index 97fa599..3dbae4d 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineDBName.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineDBName.cs" @@ -81,8 +81,30 @@ /// <summary> /// 鎵樼洏绫诲瀷 /// </summary> - WriteConveyorLineTrayType + WriteConveyorLineTrayType, #endregion + + #region AGVDevice + /// <summary> + /// 鍏佽鏀捐揣 + /// </summary> + AllowPut, + + /// <summary> + /// 鍏佽鍙栬揣 + /// </summary> + AllowPickUp, + + /// <summary> + /// AGV鏀捐揣瀹屾垚 + /// </summary> + PutFinish, + + /// <summary> + /// AGV鍙栬揣瀹屾垚 + /// </summary> + PickUpFinish + #endregion } } \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/EmptyTrayStationHandler.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/EmptyTrayStationHandler.cs" deleted file mode 100644 index 6a8c5a7..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/EmptyTrayStationHandler.cs" +++ /dev/null @@ -1,32 +0,0 @@ -锘縰sing HslCommunication; -using MoYu; -using WIDESEAWCS_ITaskInfoRepository; -using WIDESEAWCS_Model.Models; -using WIDESEAWCS_QuartzJob; - -namespace WIDESEAWCS_Tasks.ConveyorLineJob -{ - public class EmptyTrayStationHandler : IStationHandler - { - private readonly CommonConveyorLineJob _commonConveyorLineJob; - - public EmptyTrayStationHandler(CommonConveyorLineJob commonConveyorLineJob) - { - _commonConveyorLineJob = commonConveyorLineJob; - } - - public async Task HandleStationAsync(CommonConveyorLine conveyorLine, Dt_StationManager station, ConveyorLineTaskCommand command) - { - var structs = BitConverter.GetBytes(command.InteractiveSignal).Reverse().ToArray().ToBoolArray(); - if (structs[0]) - { - var log = $"銆恵conveyorLine.DeviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵station.stationChildCode}銆戠┖鎵樼洏璇锋眰鎵爜鍏ュ簱"; - await _commonConveyorLineJob.LogAndWarn(conveyorLine.DeviceName, log); - } - else - { - _commonConveyorLineJob.ConveyorLineSendFinish(conveyorLine, station.stationChildCode, 0, false); - } - } - } -} \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/ExceptionPortStationHandler.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/ExceptionPortStationHandler.cs" deleted file mode 100644 index f36d6d8..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/ExceptionPortStationHandler.cs" +++ /dev/null @@ -1,41 +0,0 @@ -锘縰sing HslCommunication; -using MoYu; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using WIDESEAWCS_ITaskInfoRepository; -using WIDESEAWCS_Model.Models; -using WIDESEAWCS_QuartzJob; - -namespace WIDESEAWCS_Tasks.ConveyorLineJob.StationHandler -{ - public class ExceptionPortStationHandler : IStationHandler - { - private readonly CommonConveyorLineJob _commonConveyorLineJob; - private readonly ITaskRepository _taskRepository = App.GetService<ITaskRepository>(); - public ExceptionPortStationHandler(CommonConveyorLineJob commonConveyorLineJob) - { - _commonConveyorLineJob = commonConveyorLineJob; - } - public async Task HandleStationAsync(CommonConveyorLine conveyorLine, Dt_StationManager station, ConveyorLineTaskCommand command) - { - var structs = BitConverter.GetBytes(command.InteractiveSignal).Reverse().ToArray().ToBoolArray(); - if (structs[0]) - { - if (_taskRepository.QueryData(x => x.SourceAddress == station.stationChildCode).Count() > 0) - { - return; - } - var log = $"銆恵conveyorLine.DeviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵station.stationChildCode}銆戝紓甯稿彛璇锋眰鎵爜鍏ュ簱"; - await _commonConveyorLineJob.LogAndWarn(conveyorLine.DeviceName, log); - await _commonConveyorLineJob.HandleNewTaskAsync(conveyorLine, command, station.stationChildCode, 0); - } - else - { - _commonConveyorLineJob.ConveyorLineSendFinish(conveyorLine, station.stationChildCode, 0, false); - } - } - } -} diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/IStationHandler.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/IStationHandler.cs" deleted file mode 100644 index 15a0a5f..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/IStationHandler.cs" +++ /dev/null @@ -1,15 +0,0 @@ -锘縰sing System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using WIDESEAWCS_Model.Models; -using WIDESEAWCS_QuartzJob; - -namespace WIDESEAWCS_Tasks.ConveyorLineJob -{ - public interface IStationHandler - { - Task HandleStationAsync(CommonConveyorLine conveyorLine, Dt_StationManager station, ConveyorLineTaskCommand command); - } -} \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/StationHandlerFactory.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/StationHandlerFactory.cs" deleted file mode 100644 index 877bb8c..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/StationHandler/StationHandlerFactory.cs" +++ /dev/null @@ -1,27 +0,0 @@ -锘縰sing MoYu; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using WIDESEAWCS_Tasks.ConveyorLineJob.StationHandler; - -namespace WIDESEAWCS_Tasks.ConveyorLineJob -{ - public class StationHandlerFactory - { - public static IStationHandler GetHandler(int stationType, CommonConveyorLineJob commonConveyorLineJob) - { - switch (stationType) - { - case 11: - return new EmptyTrayStationHandler(commonConveyorLineJob); - case 5: - return new ExceptionPortStationHandler(commonConveyorLineJob); - default: - throw new ArgumentException($"Unsupported station type: {stationType}"); - } - } - } - -} diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/MemoryLockManager.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/MemoryLockManager.cs" deleted file mode 100644 index 8fe2e7a..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/MemoryLockManager.cs" +++ /dev/null @@ -1,40 +0,0 @@ -锘縩amespace WIDESEAWCS_Tasks -{ - public static class MemoryLockManager - { - private static Dictionary<string, SemaphoreSlim> _locks = new Dictionary<string, SemaphoreSlim>(); - - /// <summary> - /// 寮�鍚攣 - /// </summary> - /// <param name="jobName"></param> - /// <returns></returns> - public static bool TryAcquireLock(string jobName) - { - if (!_locks.ContainsKey(jobName)) - { - _locks[jobName] = new SemaphoreSlim(1, 1); - } - try - { - return _locks[jobName].Wait(0); - } - catch (Exception) - { - return false; - } - } - - /// <summary> - /// 閲婃斁閿� - /// </summary> - /// <param name="jobName"></param> - public static void ReleaseLock(string jobName) - { - if (_locks.ContainsKey(jobName)) - { - _locks[jobName].Release(); - } - } - } -} \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs" deleted file mode 100644 index b3ffc23..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs" +++ /dev/null @@ -1,268 +0,0 @@ -锘縰sing HslCommunication; -using Mapster; -using Newtonsoft.Json; -using System.Text.RegularExpressions; -using System.Threading.Tasks; -using WIDESEAWCS_Common; -using WIDESEAWCS_Common.TaskEnum; -using WIDESEAWCS_Core; -using WIDESEAWCS_Core.Helper; -using WIDESEAWCS_DTO.TaskInfo; -using WIDESEAWCS_DTO.WMS; -using WIDESEAWCS_Model.Models; -using WIDESEAWCS_QuartzJob; -using WIDESEAWCS_Tasks.ConveyorLineJob; - -namespace WIDESEAWCS_Tasks -{ - public partial class CommonConveyorLineJob - { - /// <summary> - /// 澶勭悊鍑哄簱浠诲姟 - /// </summary> - private void HandleTaskOut(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue, Dt_Task taskOut) - { - if (taskOut == null) return; - //ConveyorLineTaskCommand? taskCommand = MapTaskCommand(taskOut, command); - - var next = taskOut.NextAddress; - var taskCommand = MapTaskCommand(taskOut, command); - taskOut.NextAddress = next; - - bool isOutTray = taskOut.TaskType == (int)TaskOutboundTypeEnum.OutTray; - bool isOutboundAndOutFinish = taskOut.TaskType == (int)TaskOutboundTypeEnum.Outbound && taskOut.TaskState == (int)TaskOutStatusEnum.SC_OutFinish; - bool isOutboundAndLineOutExecuting = taskOut.TaskType == (int)TaskOutboundTypeEnum.Outbound && taskOut.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting; - - if (isOutTray || isOutboundAndOutFinish || !isOutboundAndLineOutExecuting) - { - conveyorLine.SendCommand(taskCommand, childDeviceCode); - - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�,涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - _taskService.UpdateTaskStatusToNext(taskOut); - } - else if (taskOut.TaskType == (int)TaskOutboundTypeEnum.OutTray && taskOut.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting) - { - CompleteWmsTask(taskOut, command, conveyorLine, childDeviceCode, ProtocalDetailValue); - } - } - - /// <summary> - /// 澶勭悊鏂颁换鍔� - /// </summary> - public async Task HandleNewTaskAsync(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue) - { - var stationManager = _stationManagerRepository.QueryFirst(x => x.stationChildCode == childDeviceCode && x.stationPLC == conveyorLine.DeviceCode); - - switch (stationManager.stationType) - { - case 5: - case 1: - await RequestWmsTask(conveyorLine, command, childDeviceCode, ProtocalDetailValue); - break; - - case 2: - case 3: - case 4: - case 6: - await CreateAndSendEmptyTrayTask(conveyorLine, command, childDeviceCode, ProtocalDetailValue); - break; - - case 7: - RequestOutNextAddress(conveyorLine, command, childDeviceCode, ProtocalDetailValue); - break; - - case 10: - ConveyorLineOutFinish(conveyorLine, command, childDeviceCode, ProtocalDetailValue); - break; - - default: - break; - } - } - - /// <summary> - /// 鏄犲皠浠诲姟鍛戒护 - /// </summary> - private ConveyorLineTaskCommand MapTaskCommand(Dt_Task task, ConveyorLineTaskCommand command) - { - // 浣跨敤姝e垯琛ㄨ揪寮忓尮閰嶇被浼� -鏁板瓧 鐨勬ā寮忥紝骞舵浛鎹负绌哄瓧绗︿覆 - task.NextAddress = Regex.Replace(task.NextAddress, @"-(\d+)", ""); - if (Convert.ToInt32(task.NextAddress) > 1999) - { - task.NextAddress = (Convert.ToInt32(task.NextAddress) - 1000).ToString(); - } - var comm = _mapper.Map<ConveyorLineTaskCommand>(task); - comm.InteractiveSignal = command.InteractiveSignal; - return comm; - } - - /// <summary> - /// 瀹屾垚WMS浠诲姟 - /// </summary> - private void CompleteWmsTask(Dt_Task taskOut, ConveyorLineTaskCommand command, CommonConveyorLine conveyorLine, string childDeviceCode, int ProtocalDetailValue) - { - if (command.Barcode.ToString() == "NoRead") - { - - taskOut.TargetAddress = "1"; - } - - var keys = new Dictionary<string, object>() - { - {"taskNum", taskOut.TaskNum} - }; - var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); - var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue; - var completeTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.CompleteTask)?.ConfigValue; - if (wmsBase == null || completeTask == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddress = wmsBase + completeTask; - - var result = HttpHelper.GetAsync(wmsIpAddress, keys).Result; - WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result); - if (content.Status) - { - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - _taskService.UpdateTaskStatusToNext(taskOut); - } - } - - /// <summary> - /// 鍒涘缓骞跺彂閫佺┖鎵樼洏浠诲姟 - /// </summary> - public Task CreateAndSendEmptyTrayTask(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue) - { - if (command.Barcode.ToString() != "NoRead") - { - var taskDTO = CreateEmptyTrayTaskDto(command.Barcode.ToString(), childDeviceCode); - - if (_taskRepository.QueryFirst(x => x.PalletCode == taskDTO.PalletCode) != null) - { - if (_taskRepository.QueryFirst(x => x.PalletCode == command.Barcode.ToString()) != null) - { - - var taskExecuting = _taskRepository.QueryFirst(x => x.PalletCode == command.Barcode.ToString() && (x.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting || x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish)); - - if (taskExecuting != null) - { - taskExecuting.ExceptionMessage = "鏈帴鏀跺埌绾夸綋瀹屾垚淇″彿绯荤粺鍐呴儴鑷姩瀹屾垚"; - _taskService.Delete(taskExecuting); - } - - ConsoleHelper.WriteErrorLine($"褰撳墠鎵樼洏瀛樺湪浠诲姟锛氥�恵command.Barcode}銆�"); - - WriteInfo(conveyorLine.DeviceName, $"褰撳墠鎵樼洏瀛樺湪浠诲姟{command.Barcode}"); - - } - WriteInfo(conveyorLine.DeviceName, "褰撳墠鎵樼洏瀛樺湪浠诲姟"); - } - } - - return Task.CompletedTask; - } - - /// <summary> - /// 鍒涘缓绌烘墭鐩樹换鍔TO - /// </summary> - private WMSTaskDTO CreateEmptyTrayTaskDto(string barcode, string childDeviceCode) - { - var request = new RequestTaskDto() - { - Position = childDeviceCode, - PalletCode = barcode, - }; - - var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); - var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue; - var requestTrayInTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.RequestTrayInTask)?.ConfigValue; - if (wmsBase == null || requestTrayInTask == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddrss = wmsBase + requestTrayInTask; - var result = HttpHelper.PostAsync(wmsIpAddrss, request.ToJsonString()).Result; - if (result == null) - return new WMSTaskDTO(); - - WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result); - if (!content.Status) - return new WMSTaskDTO(); - - return JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString()); - } - - /// <summary> - /// 璇锋眰WMS浠诲姟 - /// </summary> - private async Task RequestWmsTask(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue) - { - var content = await _taskService.RequestWMSTask(command.Barcode.ToString(), childDeviceCode); - if (content.Status) - { - var task = _taskService.QueryBarCodeConveyorLineTask(command.Barcode.ToString(), childDeviceCode); - if (task != null) - { - var value = _sys_ConfigService.GetByConfigKey(CateGoryConst.CONFIG_SYS_InStation, SysConfigKeyConst.JZNGInBoundStation).ConfigValue; - var valueList = value.Split(',').ToList(); - if (valueList.Contains(task.SourceAddress)) - { - conveyorLine.SetValue(ConveyorLineDBName.WriteConveyorLineTargetAddress, "1000", childDeviceCode); - - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵task.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵task.PalletCode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵1000}銆�"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - } - else if (task.TargetAddress == "1020-1" || task.TargetAddress == "1049-8") - { - var next = task.NextAddress; - var taskCommand = MapTaskCommand(task, command); - task.NextAddress = next; - - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - conveyorLine.SendCommand(taskCommand, childDeviceCode); - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - - var taskHty = task.Adapt<Dt_Task_Hty>(); - _task_HtyRepository.AddData(taskHty); - _taskService.DeleteData(task); - } - else - { - var next = task.NextAddress; - var taskCommand = MapTaskCommand(task, command); - task.NextAddress = next; - - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - conveyorLine.SendCommand(taskCommand, childDeviceCode); - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - _taskService.UpdateTaskStatusToNext(task); - } - } - } - else - WriteInfo(conveyorLine.DeviceName, content.Message); - } - } -} \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/DeleteLog/CommonDeleteLogJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/DeleteLog/CommonDeleteLogJob.cs" index f4c903d..77e9f3c 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/DeleteLog/CommonDeleteLogJob.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/DeleteLog/CommonDeleteLogJob.cs" @@ -1,4 +1,5 @@ -锘縰sing Newtonsoft.Json; +锘� +using Newtonsoft.Json; using Quartz; using System; using System.Collections.Generic; diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ElevatorJob/ElevatorDBName.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ElevatorJob/ElevatorDBName.cs" index 2adf359..d81e86b 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ElevatorJob/ElevatorDBName.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ElevatorJob/ElevatorDBName.cs" @@ -34,22 +34,22 @@ /// <summary> /// 涓�妤煎厑璁告斁璐� /// </summary> - OneLayerPut, + OneLayerAllowPut, /// <summary> /// 涓�妤煎厑璁稿彇璐� /// </summary> - OneLayerPickU, + OneLayerAllowPickUp, /// <summary> /// 浜屾ゼ鍏佽鏀捐揣 /// </summary> - TwoLayerPut, + TwoLayerAllowPut, /// <summary> /// 浜屾ゼ鍏佽鍙栬揣 /// </summary> - TwoLayerPickUp, + TwoLayerAllowPickUp, /// <summary> /// 浠诲姟鍙� diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs" index 9c7d19e..38fd11b 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs" @@ -1,4 +1,6 @@ -锘縰sing Mapster; +锘縰sing HslCommunication; +using Mapster; +using Microsoft.AspNetCore.Components.Routing; using Newtonsoft.Json; using Quartz; using System.Diagnostics.CodeAnalysis; @@ -20,6 +22,7 @@ using WIDESEAWCS_QuartzJob.Service; using WIDESEAWCS_QuartzJob.StackerCrane.Enum; using WIDESEAWCS_SignalR; +using WIDESEAWCS_Tasks.ConveyorLineJob; using WIDESEAWCS_Tasks.StackerCraneJob; namespace WIDESEAWCS_Tasks @@ -230,7 +233,21 @@ var task = _taskRepository.QueryFirst(x => x.TaskNum == e.TaskNum); if (task == null) commonStackerCrane.SetValue(StackerCraneDBName.FinishConfirm, 1); + string x = $"銆恵commonStackerCrane.StackerCraneWorkStatusValue}銆�"; + //if(task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) + //{ + // CommonConveyorLine? conveyorLine = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "1001") as CommonConveyorLine; + // if (conveyorLine != null) + // { + // short InteractiveSignal = conveyorLine.GetValue<ConveyorLineDBName, short>(ConveyorLineDBName.InteractiveSignal, "101"); + // var structs = BitConverter.GetBytes(InteractiveSignal).Reverse().ToArray().ToBoolArray(); + // if (structs[0]) + // { + // conveyorLine.SetValue(ConveyorLineDBName.WriteConveyorLineTaskNum, "9999", "101"); + // } + // } + //} var content = _taskService.StackCraneTaskCompleted(e.TaskNum); @@ -238,7 +255,7 @@ str = $"{commonStackerCrane.DeviceName}銆慦MS|WCS浠诲姟瀹屾垚锛氥�恵content.Status}{content.Message}銆�,鍫嗗灈鏈哄畬鎴愪俊鍙峰啓鍏ワ細銆恵isWorkType}銆�,浠诲姟鍙凤細銆恵e.TaskNum}銆戞椂闂淬�恵DateTime.Now}銆�"; - WriteInfo(commonStackerCrane.DeviceName, str); + WriteInfo(commonStackerCrane.DeviceName, str+x); ConsoleHelper.WriteColorLine(str, ConsoleColor.Blue); } } @@ -281,30 +298,30 @@ if (task != null && task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) { - // 妫�鏌ュ綋鍓嶅嚭搴撲换鍔$珯鍙版槸鍚﹀厑璁告斁璐� - var occupiedStation = OutTaskStationIsOccupied(task); - if (occupiedStation == null) - { - // 濡傛灉褰撳墠鍑哄簱浠诲姟绔欏彴涓嶅厑璁告斁璐э紝鎺掗櫎褰撳墠浠诲姟锛屾煡鎵惧叾浠栧嚭搴撲换鍔� + // // 妫�鏌ュ綋鍓嶅嚭搴撲换鍔$珯鍙版槸鍚﹀厑璁告斁璐� + // var occupiedStation = OutTaskStationIsOccupied(task); + // if (occupiedStation == null) + // { + // // 濡傛灉褰撳墠鍑哄簱浠诲姟绔欏彴涓嶅厑璁告斁璐э紝鎺掗櫎褰撳墠浠诲姟锛屾煡鎵惧叾浠栧嚭搴撲换鍔� - var log = $"浠诲姟鍙凤細銆恵task.TaskNum}銆戝嚭搴撳湴鍧�锛氥�恵task.NextAddress}銆戜笉鍏佽鏀捐揣"; - ConsoleHelper.WriteErrorLine(log); + // var log = $"浠诲姟鍙凤細銆恵task.TaskNum}銆戝嚭搴撳湴鍧�锛氥�恵task.NextAddress}銆戜笉鍏佽鏀捐揣"; + // ConsoleHelper.WriteErrorLine(log); - _noticeService.Logs(userTokenIds, new { commonStackerCrane.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(commonStackerCrane.DeviceName, log); + // _noticeService.Logs(userTokenIds, new { commonStackerCrane.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); + // WriteInfo(commonStackerCrane.DeviceName, log); - task = FindAnotherOutboundTask(commonStackerCrane.DeviceCode, task.TaskId); + // task = FindAnotherOutboundTask(commonStackerCrane.DeviceCode, task.TaskId); - if (task == null) - { - task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode); - } - } - else - { - return task; - } - + // if (task == null) + // { + // task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode); + // } + // } + // else + // { + // return task; + // } + return task; } else if (task == null) { @@ -390,83 +407,11 @@ { StackerCraneTaskCommand stackerCraneTaskCommand = new StackerCraneTaskCommand(); - stackerCraneTaskCommand.Barcode = task.PalletCode; - stackerCraneTaskCommand.TaskNum = task.TaskNum; - stackerCraneTaskCommand.WorkType = 1; - stackerCraneTaskCommand.StartCommand = 1; + stackerCraneTaskCommand.TaskNum = Convert.ToInt16(task.TaskNum); + stackerCraneTaskCommand.WorkType = Convert.ToInt16(1); + stackerCraneTaskCommand.StartCommand = Convert.ToInt16(1); if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)//鍒ゆ柇鏄惁鏄叆搴撲换鍔� { - List<Dt_Router> routers = _routerService.QueryNextRoutes(task.CurrentAddress, task.Roadway); - if (routers.Count > 0) - { - stackerCraneTaskCommand.StartRow = Convert.ToInt16(routers.FirstOrDefault().SrmRow); - stackerCraneTaskCommand.StartColumn = Convert.ToInt16(routers.FirstOrDefault().SrmColumn); - stackerCraneTaskCommand.StartLayer = Convert.ToInt16(routers.FirstOrDefault().SrmLayer); - - string[] targetCodes = task.NextAddress.Split("-"); - if (targetCodes.Length == 3) - { - stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[0]) % 2 != 0 ? (short)1 : (short)2; - stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[1]); - stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[2]); - } - else - { - //鏁版嵁閰嶇疆閿欒 - _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍏ュ簱浠诲姟缁堢偣閿欒锛岃捣鐐癸細銆恵task.NextAddress}銆�"); - return null; - } - } - else - { - _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鑾峰彇瀵瑰簲鐨勫爢鍨涙満鍙栬揣绔欏彴淇℃伅"); - return null; - } - } - else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) - { - List<Dt_Router> routers = _routerService.QueryNextRoutes(task.Roadway, task.TargetAddress); - if (routers.Count > 0) - { - stackerCraneTaskCommand.EndRow = Convert.ToInt16(routers.FirstOrDefault().SrmRow); - stackerCraneTaskCommand.EndColumn = Convert.ToInt16(routers.FirstOrDefault().SrmColumn); - stackerCraneTaskCommand.EndLayer = Convert.ToInt16(routers.FirstOrDefault().SrmLayer); - - string[] sourceCodes = task.CurrentAddress.Split("-"); - if (sourceCodes.Length == 3) - { - stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[0]) % 2 != 0 ? (short)1 : (short)2; - stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[1]); - stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[2]); - } - else - { - //鏁版嵁閰嶇疆閿欒 - _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�"); - return null; - } - } - else - { - _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鑾峰彇瀵瑰簲鐨勫爢鍨涙満鏀捐揣绔欏彴淇℃伅"); - return null; - } - } - else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup) - { - string[] targetCodes = task.NextAddress.Split("-"); - if (targetCodes.Length == 3) - { - stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[0]) % 2 != 0 ? (short)1 : (short)2; - stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[1]); - stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[2]); - } - else - { - //鏁版嵁閰嶇疆閿欒 - _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"绉诲簱浠诲姟缁堢偣閿欒锛岃捣鐐癸細銆恵task.NextAddress}銆�"); - return null; - } string[] sourceCodes = task.CurrentAddress.Split("-"); if (sourceCodes.Length == 3) { @@ -477,7 +422,82 @@ else { //鏁版嵁閰嶇疆閿欒 - _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"绉诲簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�"); + _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�"); + return null; + } + + string[] targetCodes = task.NextAddress.Split("-"); + if (targetCodes.Length == 3) + { + stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[0]) % 2 != 0 ? (short)1 : (short)2; + stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[1]); + stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[2]); + } + else + { + //鏁版嵁閰嶇疆閿欒 + _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�"); + return null; + } + } + else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) + { + string[] sourceCodes = task.CurrentAddress.Split("-"); + if (sourceCodes.Length == 3) + { + stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[0]) % 2 != 0 ? (short)1 : (short)2; + stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[1]); + stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[2]); + } + else + { + //鏁版嵁閰嶇疆閿欒 + _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�"); + return null; + } + + string[] targetCodes = task.NextAddress.Split("-"); + if (targetCodes.Length == 3) + { + stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[0]) % 2 != 0 ? (short)1 : (short)2; + stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[1]); + stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[2]); + } + else + { + //鏁版嵁閰嶇疆閿欒 + _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�"); + return null; + } + + } + else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup) + { + string[] sourceCodes = task.CurrentAddress.Split("-"); + if (sourceCodes.Length == 3) + { + stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[0]) % 2 != 0 ? (short)1 : (short)2; + stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[1]); + stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[2]); + } + else + { + //鏁版嵁閰嶇疆閿欒 + _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�"); + return null; + } + + string[] targetCodes = task.NextAddress.Split("-"); + if (targetCodes.Length == 3) + { + stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[0]) % 2 != 0 ? (short)1 : (short)2; + stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[1]); + stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[2]); + } + else + { + //鏁版嵁閰嶇疆閿欒 + _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�"); return null; } } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/StackerCraneTaskCommand.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/StackerCraneTaskCommand.cs" index a7caacf..856ec11 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/StackerCraneTaskCommand.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/StackerCraneTaskCommand.cs" @@ -34,7 +34,7 @@ /// <summary> /// 浠诲姟鍙� /// </summary> - public int TaskNum { get; set; } + public short TaskNum { get; set; } /// <summary> /// 浣滀笟绫诲瀷 @@ -70,12 +70,6 @@ /// 鐩爣灞� /// </summary> public short EndLayer { get; set; } - - /// <summary> - /// 鎵樼洏鍙� - /// </summary> - [DataLength(30)] - public string Barcode { get; set; } /// <summary> /// 鍚姩鍛戒护 diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/Dt_BillGroupStock.jsx" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/Dt_BillGroupStock.jsx" deleted file mode 100644 index e69de29..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/Dt_BillGroupStock.jsx" +++ /dev/null diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_LocationInfo.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_LocationInfo.vue" index fa53e7f..51fd09f 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_LocationInfo.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_LocationInfo.vue" @@ -52,13 +52,10 @@ { field: 'row', title: '琛�', type: 'string', width: 70, align: 'left' }, { field: 'column', title: '鍒�', type: 'string', width: 70, align: 'left' }, { field: 'layer', title: '灞�', type: 'string', width: 110, align: 'left' }, - { field: 'depth', title: '娣卞害', type: 'string', width: 110, align: 'left', hidden: true }, - { field: 'scNo', title: '瀵瑰簲鍫嗗灈鏈哄彿', type: 'string', width: 110, align: 'left', hidden: true }, + { field: 'depth', title: '娣卞害', type: 'string', width: 110, align: 'left'}, { field: 'locationType', title: '璐т綅绫诲瀷', type: 'int', width: 110, align: 'left',bind: { key: "LocationType", data: [] } }, { field: 'locationStatus', title: '璐т綅鐘舵��', type: 'int', width: 110, align: 'left', bind: { key: "LocationState", data: [] } }, { field: 'enalbeStatus', title: '鏄惁绂佺敤', type: 'int', width: 75, align: 'left', bind: { key: "EnalbeStatus", data: [] }}, - // { field: 'isLocked', title: '鏄惁閿佸畾', type: 'bool', width: 110, align: 'left', bind: { key: "IsLocked", data: [] } }, - { field: 'locationDesc', title: '璐т綅鎻忚堪', type: 'string', width: 110, align: 'left', hidden: true }, { field: 'remark', title: '妫�娴嬫煖鍏佽', type: 'string', width: 110, align: 'left' ,bind: { key: "AllowStatus", data: [] }}, { field: 'creater', title: '鍒涘缓浜�', type: 'string', sort: true, width: 110, align: 'left' }, { field: 'createDate', title: '鍒涘缓鏃堕棿', type: 'datetime', sort: true, width: 150, align: 'left', sort: true }, diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db" index fe239eb..deec129 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db-shm" deleted file mode 100644 index 207a0b4..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db-shm" +++ /dev/null Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db-wal" deleted file mode 100644 index 4ad4b02..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db-wal" +++ /dev/null Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db" index 8c04b99..8bfa374 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal" deleted file mode 100644 index 15eb2d7..0000000 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal" +++ /dev/null Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json" index 5dc8881..f448b33 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json" @@ -7,16 +7,8 @@ "RelativeMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|solutionrelative:widesea_storagetaskservices\\task\\dt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{986CA639-B3B4-4D4F-B12B-3D8FBA48B2B1}|WIDESEA_IStorageTaskService\\WIDESEA_IStorageTaskServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_istoragetaskservice\\task\\idt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{986CA639-B3B4-4D4F-B12B-3D8FBA48B2B1}|WIDESEA_IStorageTaskService\\WIDESEA_IStorageTaskServices.csproj|solutionrelative:widesea_istoragetaskservice\\task\\idt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_wmsserver\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}", "RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}" - }, - { - "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_wmsserver\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" } ], "DocumentGroupContainers": [ @@ -26,47 +18,8 @@ "DocumentGroups": [ { "DockedWidth": 200, - "SelectedChildIndex": 3, + "SelectedChildIndex": 0, "Children": [ - { - "$type": "Document", - "DocumentIndex": 1, - "Title": "IDt_TaskService.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs", - "RelativeDocumentMoniker": "WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs", - "RelativeToolTip": "WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs", - "ViewState": "AgIAAAEAAAAAAAAAAAAUwBMAAAAmAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-24T09:29:59.707Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 2, - "Title": "appsettings.json", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json", - "RelativeDocumentMoniker": "WIDESEA_WMSServer\\appsettings.json", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json", - "RelativeToolTip": "WIDESEA_WMSServer\\appsettings.json", - "ViewState": "AgIAAAAAAAAAAAAAAADwvwwAAABEAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|", - "WhenOpened": "2025-09-24T09:23:47.789Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 3, - "Title": "Program.cs", - "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Program.cs", - "RelativeDocumentMoniker": "WIDESEA_WMSServer\\Program.cs", - "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Program.cs", - "RelativeToolTip": "WIDESEA_WMSServer\\Program.cs", - "ViewState": "AgIAAF0AAAAAAAAAAAAAAH0AAAAJAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-24T08:56:28.562Z", - "EditorCaption": "" - }, { "$type": "Document", "DocumentIndex": 0, @@ -75,9 +28,22 @@ "RelativeDocumentMoniker": "WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs", "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs", "RelativeToolTip": "WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs", - "ViewState": "AgIAANMAAAAAAAAAAAAAAOgAAAAdAAAAAAAAAA==", + "ViewState": "AgIAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-09-24T08:36:32.274Z", + "WhenOpened": "2025-09-25T03:08:03.698Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 1, + "Title": "appsettings.json", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json", + "RelativeDocumentMoniker": "WIDESEA_WMSServer\\appsettings.json", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json", + "RelativeToolTip": "WIDESEA_WMSServer\\appsettings.json", + "ViewState": "AgIAAAAAAAAAAAAAAAAAABcAAAAUAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|", + "WhenOpened": "2025-09-24T09:23:47.789Z", "EditorCaption": "" } ] diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json" index 42b2431..3cd2aef 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json" @@ -3,6 +3,10 @@ "WorkspaceRootPath": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\", "Documents": [ { + "AbsoluteMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagetaskservices\\task\\dt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|solutionrelative:widesea_storagetaskservices\\task\\dt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_wmsserver\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}", "RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}" } @@ -19,12 +23,25 @@ { "$type": "Document", "DocumentIndex": 0, + "Title": "Dt_TaskService.cs", + "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs", + "RelativeDocumentMoniker": "WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs", + "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs", + "RelativeToolTip": "WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs", + "ViewState": "AgIAAHQBAAAAAAAAAAAmwG4BAAAXAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-09-25T03:08:03.698Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 1, "Title": "appsettings.json", "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json", "RelativeDocumentMoniker": "WIDESEA_WMSServer\\appsettings.json", "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json", "RelativeToolTip": "WIDESEA_WMSServer\\appsettings.json", - "ViewState": "AgIAAAAAAAAAAAAAAAAAABcAAAAUAAAAAAAAAA==", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAEAAAAOAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|", "WhenOpened": "2025-09-24T09:23:47.789Z", "EditorCaption": "" -- Gitblit v1.9.3