From ab4498f9390202dc4a9dd602d55bf1eb9385d9ab Mon Sep 17 00:00:00 2001
From: wankeda <Administrator@DESKTOP-HAU3ST3>
Date: 星期二, 28 四月 2026 16:25:31 +0800
Subject: [PATCH] 出入库流程
---
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RGV/RGVJob_L1.cs | 205 ++
WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs | 15
项目资料/输送线,RGV对接协议/~$WCS与PLC通信协议(1).xlsx | 0
WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.futdcache.v2 | 0
WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.futdcache.v2 | 0
WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.metadata.v9.bin | 0
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/W_RGVConveyorLineDBName.cs | 75 +
WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs | 8
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/堆垛机/StackerCraneJob_YS.cs | 441 ++++++
WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/1bead05d-815e-41a3-9cb1-28425ac6117a.vsidx | 0
WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/DesignTimeBuild/.dtbcache.v2 | 0
WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs | 22
WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/StationTypeEnum.cs | 11
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RGV/RGVJob_L2.cs | 205 ++
WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json | 508 +++---
WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/DesignTimeBuild/.dtbcache.v2 | 0
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/W_ConveyorLineDB.cs | 76 +
WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json | 271 +++
WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.suo | 0
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs | 282 +++
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/堆垛机/StackerCraneJob_FL.cs | 441 ++++++
/dev/null | 0
WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs | 6
WMS/WIDESEA_WMSClient.zip | 0
WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json | 713 ++++-----
WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.strings.v9.bin | 0
WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json | 274 +++
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/R_RGVConveyorLineDBName.cs | 96 +
WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json | 3
WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 112 +
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/堆垛机/StackerCraneJob_CP.cs | 441 ++++++
WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.projects.v9.bin | 0
WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.suo | 0
33 files changed, 3,446 insertions(+), 759 deletions(-)
diff --git a/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.metadata.v9.bin b/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.metadata.v9.bin
index d2b909f..f572f05 100644
--- a/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.metadata.v9.bin
+++ b/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.metadata.v9.bin
Binary files differ
diff --git a/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.projects.v9.bin b/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.projects.v9.bin
index ef1c8a0..db1dd17 100644
--- a/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.projects.v9.bin
+++ b/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.projects.v9.bin
Binary files differ
diff --git a/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.strings.v9.bin b/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.strings.v9.bin
index 5912b97..6a4d240 100644
--- a/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.strings.v9.bin
+++ b/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.strings.v9.bin
Binary files differ
diff --git a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/DesignTimeBuild/.dtbcache.v2 b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/DesignTimeBuild/.dtbcache.v2
index 4be4686..2b9f096 100644
--- a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/DesignTimeBuild/.dtbcache.v2
+++ b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/DesignTimeBuild/.dtbcache.v2
Binary files differ
diff --git a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/28bbdc13-b74f-45fe-addc-e4c83e06909f.vsidx b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/28bbdc13-b74f-45fe-addc-e4c83e06909f.vsidx
deleted file mode 100644
index 1b8d50e..0000000
--- a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/28bbdc13-b74f-45fe-addc-e4c83e06909f.vsidx
+++ /dev/null
Binary files differ
diff --git a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.futdcache.v2 b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.futdcache.v2
index 9746539..52bc626 100644
--- a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.futdcache.v2
+++ b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.futdcache.v2
Binary files differ
diff --git a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.suo b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.suo
index d885262..a8f6616 100644
--- a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.suo
+++ b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.suo
Binary files differ
diff --git a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json
index 3f627b0..c11d5b5 100644
--- a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json
+++ b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json
@@ -3,28 +3,68 @@
"WorkspaceRootPath": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\",
"Documents": [
{
+ "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\jianliku\\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:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u677F\u6750\u4ED3\\conveyorlinejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u677F\u6750\u4ED3\\conveyorlinejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u677F\u6750\u4ED3\\rgvjob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u677F\u6750\u4ED3\\rgvjob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u677F\u6750\u4ED3\\stackercranejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u677F\u6750\u4ED3\\stackercranejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_common\\taskenum\\tasktypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\taskenum\\tasktypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\khgithub\\jianliku\\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}"
},
{
+ "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
+ "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\conveyorlinejob\\r_rgvconveyorlinedbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\conveyorlinejob\\r_rgvconveyorlinedbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\conveyorlinejob\\w_conveyorlinedb.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\conveyorlinejob\\w_conveyorlinedb.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\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:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\rgv\\rgvjob_l1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\rgv\\rgvjob_l1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u677F\u6750\u4ED3\\rgvjob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u677F\u6750\u4ED3\\rgvjob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_cp.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_cp.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_fl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_fl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u677F\u6750\u4ED3\\stackercranejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u677F\u6750\u4ED3\\stackercranejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_ys.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_ys.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\rgv\\rgvjob_l2.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\rgv\\rgvjob_l2.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
"AbsoluteMoniker": "D:0:0:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|solutionrelative:wideseawcs_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_common\\taskenum\\tasktypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\taskenum\\tasktypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@@ -34,88 +74,214 @@
"DocumentGroups": [
{
"DockedWidth": 200,
- "SelectedChildIndex": 4,
+ "SelectedChildIndex": 10,
"Children": [
{
"$type": "Bookmark",
"Name": "ST:128:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
},
{
- "$type": "Document",
- "DocumentIndex": 5,
- "Title": "ITaskService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
- "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
- "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
- "ViewState": "AgIAADAAAAAAAAAAAAAIwEoAAAA0AAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-24T06:51:20.03Z"
+ "$type": "Bookmark",
+ "Name": "ST:128:0:{1fc202d4-d401-403c-9834-5b218574bb67}"
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
},
{
"$type": "Document",
"DocumentIndex": 4,
- "Title": "TaskService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
- "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
- "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
- "ViewState": "AgIAAH4CAAAAAAAAAAAvwIsCAAAIAAAAAAAAAA==",
+ "Title": "R_RGVConveyorLineDBName.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\R_RGVConveyorLineDBName.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\R_RGVConveyorLineDBName.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\R_RGVConveyorLineDBName.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\R_RGVConveyorLineDBName.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAATAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T05:44:58.595Z",
- "EditorCaption": ""
+ "WhenOpened": "2026-01-08T09:46:28.352Z"
},
{
"$type": "Document",
- "DocumentIndex": 2,
+ "DocumentIndex": 5,
+ "Title": "W_ConveyorLineDB.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\W_ConveyorLineDB.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\W_ConveyorLineDB.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\W_ConveyorLineDB.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\W_ConveyorLineDB.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAAVAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2026-01-08T09:46:05.131Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 3,
+ "Title": "appsettings.json",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
+ "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABgAAAA2AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+ "WhenOpened": "2026-01-08T08:41:08.104Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 11,
"Title": "StackerCraneJob_BC.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs",
"RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs",
"RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs",
- "ViewState": "AgIAAF8AAAAAAAAAAADgv2gAAACMAAAAAAAAAA==",
+ "ViewState": "AgIAAFEAAAAAAAAAAAAqwGEAAAALAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T04:01:41.259Z",
- "EditorCaption": ""
+ "WhenOpened": "2026-01-08T08:32:20.403Z"
},
{
"$type": "Document",
- "DocumentIndex": 0,
- "Title": "ConveyorLineJob_BC.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
- "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
- "RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
- "ViewState": "AgIAADQAAAAAAAAAAAAkwCQAAAA1AAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T04:01:37.222Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 3,
+ "DocumentIndex": 15,
"Title": "TaskTypeEnum.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
"RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
"RelativeToolTip": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
- "ViewState": "AgIAAH0AAAAAAAAAAADgv5EAAAAaAAAAAAAAAA==",
+ "ViewState": "AgIAAHQAAAAAAAAAAAAgwIwAAAAaAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-30T08:37:09.116Z",
+ "WhenOpened": "2026-01-03T07:03:48.217Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 14,
+ "Title": "ITaskService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+ "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+ "ViewState": "AgIAAOAAAAAAAAAAAAAqwOwAAAANAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-31T07:51:48.184Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
+ "Title": "ConveyorLineJob_BC.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
+ "ViewState": "AgIAAGsAAAAAAAAAAAAswHsAAAAtAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-30T08:23:50.023Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 0,
+ "Title": "TaskController.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+ "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+ "ViewState": "AgIAAJUAAAAAAAAAAAAkwJ4AAAARAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T09:01:33.83Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "TaskService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+ "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+ "ViewState": "AgIAAOgBAAAAAAAAAAArwHIAAAAiAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T08:11:41.277Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "CommonConveyorLineJob.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAPsAAAA0AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T08:10:54.771Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 9,
+ "Title": "StackerCraneJob_CP.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs",
+ "ViewState": "AgIAAEQAAAAAAAAAAAAswFoAAAAIAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T08:10:53.073Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 12,
+ "Title": "StackerCraneJob_YS.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs",
+ "ViewState": "AgIAAFMAAAAAAAAAAAAswGcAAAAUAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-30T07:28:22.09Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 13,
+ "Title": "RGVJob_L2.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs",
+ "ViewState": "AgIAADsAAAAAAAAAAAAswE4AAAAQAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-30T07:33:49.457Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "RGVJob_L1.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs",
+ "ViewState": "AgIAAEwAAAAAAAAAAAAuwFYAAAD2AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T08:10:51.053Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 8,
"Title": "RGVJob_BC.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs",
"RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs",
"RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs",
- "ViewState": "AgIAAC4AAAAAAAAAAAAAAFEAAAAQAAAAAAAAAA==",
+ "ViewState": "AgIAAE0AAAAAAAAAAAAswGMAAAA+AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T04:01:40.27Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-12-30T00:54:16.689Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 10,
+ "Title": "StackerCraneJob_FL.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs",
+ "ViewState": "AgIAADIBAAAAAAAAAAAcwEcBAAAxAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-30T07:27:56.254Z"
}
]
}
diff --git a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json
index bdf61ad..f8f2e7f 100644
--- a/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json
+++ b/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json
@@ -3,8 +3,52 @@
"WorkspaceRootPath": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\",
"Documents": [
{
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\rgv\\rgvjob_l2.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\rgv\\rgvjob_l2.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\rgv\\rgvjob_l1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\rgv\\rgvjob_l1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_ys.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_ys.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_fl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_fl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_cp.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u5806\u579B\u673A\\stackercranejob_cp.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\jianliku\\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:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u677F\u6750\u4ED3\\conveyorlinejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u677F\u6750\u4ED3\\conveyorlinejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\khgithub\\jianliku\\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}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
+ "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\conveyorlinejob\\r_rgvconveyorlinedbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\conveyorlinejob\\r_rgvconveyorlinedbname.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\conveyorlinejob\\w_conveyorlinedb.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\conveyorlinejob\\w_conveyorlinedb.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\jianliku\\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:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u677F\u6750\u4ED3\\rgvjob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -15,16 +59,12 @@
"RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\\u677F\u6750\u4ED3\\stackercranejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_common\\taskenum\\tasktypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\taskenum\\tasktypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\khgithub\\jianliku\\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}"
- },
- {
"AbsoluteMoniker": "D:0:0:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|solutionrelative:wideseawcs_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\khgithub\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_common\\taskenum\\tasktypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\taskenum\\tasktypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@@ -34,87 +74,218 @@
"DocumentGroups": [
{
"DockedWidth": 200,
- "SelectedChildIndex": 4,
+ "SelectedChildIndex": 15,
"Children": [
{
"$type": "Bookmark",
"Name": "ST:128:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
},
{
- "$type": "Document",
- "DocumentIndex": 5,
- "Title": "ITaskService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
- "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
- "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
- "ViewState": "AgIAADAAAAAAAAAAAAAIwEoAAAA0AAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-24T06:51:20.03Z"
+ "$type": "Bookmark",
+ "Name": "ST:128:0:{1fc202d4-d401-403c-9834-5b218574bb67}"
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
},
{
"$type": "Document",
- "DocumentIndex": 4,
- "Title": "TaskService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
- "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
- "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
- "ViewState": "AgIAAH4CAAAAAAAAAAAvwIsCAAAIAAAAAAAAAA==",
+ "DocumentIndex": 9,
+ "Title": "R_RGVConveyorLineDBName.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\R_RGVConveyorLineDBName.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\R_RGVConveyorLineDBName.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\R_RGVConveyorLineDBName.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\R_RGVConveyorLineDBName.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAATAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T05:44:58.595Z",
- "EditorCaption": ""
+ "WhenOpened": "2026-01-08T09:46:28.352Z"
},
{
"$type": "Document",
- "DocumentIndex": 2,
+ "DocumentIndex": 10,
+ "Title": "W_ConveyorLineDB.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\W_ConveyorLineDB.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\W_ConveyorLineDB.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\W_ConveyorLineDB.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\W_ConveyorLineDB.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAAVAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2026-01-08T09:46:05.131Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 8,
+ "Title": "appsettings.json",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
+ "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABgAAAA2AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+ "WhenOpened": "2026-01-08T08:41:08.104Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 13,
"Title": "StackerCraneJob_BC.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs",
"RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs",
"RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs",
- "ViewState": "AgIAAF8AAAAAAAAAAADgv2gAAACMAAAAAAAAAA==",
+ "ViewState": "AgIAAFEAAAAAAAAAAAAqwGEAAAALAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T04:01:41.259Z",
- "EditorCaption": ""
+ "WhenOpened": "2026-01-08T08:32:20.403Z"
},
{
"$type": "Document",
- "DocumentIndex": 0,
- "Title": "ConveyorLineJob_BC.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
- "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
- "RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
- "ViewState": "AgIAAGIAAAAAAAAAAADgv3cAAABFAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T04:01:37.222Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 3,
+ "DocumentIndex": 15,
"Title": "TaskTypeEnum.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
"RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
"RelativeToolTip": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
- "ViewState": "AgIAAH0AAAAAAAAAAADgv5EAAAAaAAAAAAAAAA==",
+ "ViewState": "AgIAAHQAAAAAAAAAAAAgwIwAAAAaAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-30T08:37:09.116Z",
+ "WhenOpened": "2026-01-03T07:03:48.217Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 14,
+ "Title": "ITaskService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+ "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+ "ViewState": "AgIAAOAAAAAAAAAAAAAqwOwAAAANAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-31T07:51:48.184Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "ConveyorLineJob_BC.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs",
+ "ViewState": "AgIAAGsAAAAAAAAAAAAswHsAAAAtAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-30T08:23:50.023Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 5,
+ "Title": "TaskController.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+ "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+ "ViewState": "AgIAAJUAAAAAAAAAAAAkwJ4AAAARAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T09:01:33.83Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "TaskService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+ "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+ "ViewState": "AgIAAOgBAAAAAAAAAAArwHIAAAAiAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T08:11:41.277Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 11,
+ "Title": "CommonConveyorLineJob.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAPsAAAA0AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T08:10:54.771Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
+ "Title": "StackerCraneJob_CP.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs",
+ "ViewState": "AgIAAEQAAAAAAAAAAAAswFoAAAAIAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T08:10:53.073Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "StackerCraneJob_YS.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs",
+ "ViewState": "AgIAAFMAAAAAAAAAAAAswGcAAAAUAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-30T07:28:22.09Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 0,
+ "Title": "RGVJob_L2.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs",
+ "ViewState": "AgIAADsAAAAAAAAAAAAswE4AAAAQAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-30T07:33:49.457Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
+ "Title": "RGVJob_L1.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs",
+ "ViewState": "AgIAAEwAAAAAAAAAAAAuwFYAAAD2AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-28T08:10:51.053Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 12,
"Title": "RGVJob_BC.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs",
"RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs",
"RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs",
- "ViewState": "AgIAAC4AAAAAAAAAAAAAAFEAAAAQAAAAAAAAAA==",
+ "ViewState": "AgIAAE0AAAAAAAAAAAAswGMAAAA+AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T04:01:40.27Z",
+ "WhenOpened": "2025-12-30T00:54:16.689Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 3,
+ "Title": "StackerCraneJob_FL.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs",
+ "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs",
+ "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs",
+ "ViewState": "AgIAADIBAAAAAAAAAAAcwEcBAAAxAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-12-30T07:27:56.254Z",
"EditorCaption": ""
}
]
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/StationTypeEnum.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/StationTypeEnum.cs
index e80ef83..77f616a 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/StationTypeEnum.cs
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/StationTypeEnum.cs
@@ -1,5 +1,6 @@
锘縰sing System;
using System.Collections.Generic;
+using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@@ -24,6 +25,16 @@
StationType_InboundAndOutbound = 3,
/// <summary>
+ /// 鍫嗗灈鏈哄叆搴撳彛
+ /// </summary>
+ SC_In,
+
+ /// <summary>
+ /// 鍫嗗灈鏈哄嚭搴撳彛
+ /// </summary>
+ SC_Out,
+
+ /// <summary>
/// 鍑哄叆搴撳彛
/// </summary>
StationType_InStartAndOutEnd = 33,
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs
index 371f0d7..078ff7c 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs
@@ -59,14 +59,20 @@
WebResponseContent ReceiveWMSTask([NotNull] List<WMSTaskDTO> taskDTOs);
/// <summary>
+ /// 鎺ユ敹WMS浠诲姟淇℃伅
+ /// </summary>
+ /// <param name="taskDTOs">WMS浠诲姟瀵硅薄闆嗗悎</param>
+ /// <returns>杩斿洖澶勭悊缁撴灉</returns>
+ WebResponseContent ReceiveWMSCPTask([NotNull] List<WMSTaskDTO> taskDTOs);
+ /// <summary>
/// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟
/// </summary>
/// <param name="palletCode">鎵樼洏鍙�</param>
/// <param name="sourceAddress">璧峰鍦板潃</param>
/// <returns></returns>
WebResponseContent RequestWMSTask(string palletCode, string sourceAddress, string materielBoxCode = "");
-
- WebResponseContent RequestWMSZHTask(string agvTaskCode, string palletCode, string palletType,string materialLot);
+
+ WebResponseContent RequestWMSZHTask(string agvTaskCode, string palletCode, string palletType, string materialLot);
/// <summary>
/// 鍚慦MS鐢宠浠诲姟
@@ -75,6 +81,14 @@
/// <param name="sourceAddress">璧峰鍦板潃</param>
/// <returns></returns>
WebResponseContent RequestWMSTaskSimple(string palletCode, string sourceAddress, int heightType);
+
+ WebResponseContent CPRequestWMSTaskSimple(string palletCode, string sourceAddress, int heightType, string courceAddress);
+
+ /// <summary>
+ /// 鐢宠宸烽亾
+ /// </summary>
+ /// <returns></returns>
+ WebResponseContent ApplyLocation(string palletCode);
/// <summary>
/// 鍚慦MS鐢宠浠诲姟
@@ -220,7 +234,7 @@
/// <param name="targetAddress">淇敼鍚庣殑鐩爣鍦板潃</param>
/// <param name="currentAddress">淇敼鍚庣殑褰撳墠鍦板潃</param>
/// <param name="nextAddress">淇敼鍚庣殑涓嬩竴鍦板潃</param>
- void UpdateTask(Dt_Task task, TaskStatusEnum taskStatus, string deviceCode = "", string sourceAddress = "", string targetAddress = "", string currentAddress = "", string nextAddress = "", string roadwayNo = "", int heightType = 0);
+ void UpdateTask(Dt_Task task, TaskStatusEnum taskStatus, string deviceCode = "", string sourceAddress = "", string targetAddress = "", string currentAddress = "", string nextAddress = "", string roadwayNo = "", int heightType = 0, string RGVCode = "");
/// <summary>
/// 璇锋眰鍒嗛厤宸烽亾
@@ -265,7 +279,7 @@
/// <summary>
/// //鍒ゆ柇绉诲簱璐т綅浠诲姟鏄惁宸插瓨鍦紝濡傚瓨鍦ㄥ厛鎵ц
/// </summary>
- Dt_Task QueryStackerExistTask(string PalletCode,string locationCode);
+ Dt_Task QueryStackerExistTask(string PalletCode, string locationCode);
/// <summary>
/// AGV鎴愬搧鍙栨斁璐ч�氱煡
/// </summary>
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs
index 8e18944..146d96d 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs
@@ -197,5 +197,13 @@
[ExporterHeader(DisplayName = "澶囨敞")]
[SugarColumn(IsNullable = true, Length = 255, ColumnDescription = "澶囨敞")]
public string Remark { get; set; }
+
+ /// <summary>
+ /// RGV缂栧彿
+ /// </summary>
+ [ImporterHeader(Name = "RGV缂栧彿")]
+ [ExporterHeader(DisplayName = "RGV缂栧彿")]
+ [SugarColumn(IsNullable = true, Length = 255, ColumnDescription = "RGV缂栧彿")]
+ public string RGVCode { get; set; }
}
}
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
index 1bfac75..b0c68fc 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
@@ -25,7 +25,7 @@
//private readonly WebSocketServer _webSocketServer;
private readonly ITaskService _taskService;
private readonly ITaskRepository _taskRepository;
- public TaskController(ITaskService service, IHttpContextAccessor httpContextAccessor, IRouterExtension routerExtension ,ITaskService taskService,ITaskRepository taskRepository /*, WebSocketServer webSocketServer*/) : base(service)
+ public TaskController(ITaskService service, IHttpContextAccessor httpContextAccessor, IRouterExtension routerExtension, ITaskService taskService, ITaskRepository taskRepository /*, WebSocketServer webSocketServer*/) : base(service)
{
_httpContextAccessor = httpContextAccessor;
_routerExtension = routerExtension;
@@ -40,11 +40,20 @@
return Service.ReceiveWMSTask(taskDTOs);
}
+
+ [HttpPost, Route("ReceiveCPTask"), AllowAnonymous]
+ public WebResponseContent ReceiveWMSCPTask([FromBody] List<WMSTaskDTO> taskDTOs)
+ {
+ return Service.ReceiveWMSCPTask(taskDTOs);
+ }
+
+
[HttpPost, HttpGet, Route("RequestAssignLocation"), AllowAnonymous]
public string? RequestAssignLocation(int taskNum, string roadwayNo)
{
return Service.RequestAssignLocation(taskNum, roadwayNo);
}
+
[HttpPost, HttpGet, Route("UpdateTaskExceptionMessage")]
public WebResponseContent UpdateTaskExceptionMessage(int taskNum, string message)
@@ -121,7 +130,7 @@
{
return WebResponseContent.Instance.Error("鏈壘鍒拌浠诲姟淇℃伅");
}
- if(task.TaskState == TaskStatusEnum.SC_Executing.ObjToInt())
+ if (task.TaskState == TaskStatusEnum.SC_Executing.ObjToInt())
{
_taskService.UpdateTask(task, TaskStatusEnum.SC_Execute);
}
@@ -131,7 +140,7 @@
}
return WebResponseContent.Instance.OK();
}
- catch(Exception ex)
+ catch (Exception ex)
{
return WebResponseContent.Instance.Error(ex.Message);
}
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json
index f0090d9..b63a36c 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json
@@ -12,7 +12,8 @@
"MainDB": "DB_WIDESEA", //褰撳墠椤圭洰鐨勪富搴擄紝鎵�瀵瑰簲鐨勮繛鎺ュ瓧绗︿覆鐨凟nabled蹇呴』涓簍rue
//杩炴帴瀛楃涓�
//"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=",
- "ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWCS_HUAIAN;User ID=sa;Password=sa123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
+ //"ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWCS_JAMK;User ID=sa;Password=sa123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
+ "ConnectionString": "Data Source=10.168.1.226,1443;Initial Catalog=WIDESEAWCS_JAMK;User ID=sa;Password=sa123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
//"ConnectionString": "Data Source=10.30.4.92;Initial Catalog=TestWCS_TC;User ID=sa;Password=duo123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
//"ConnectionString": "Data Source=10.30.4.92;Initial Catalog=TESTWCSCP_WCS;User ID=sa;Password=duo123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
"WMSConnectionStrings": "Data Source=.;Initial Catalog=WIDESEAWMS_HUAIAN;User ID=sa;Password=sa123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
index 4e6445b..9b21e9b 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -258,6 +258,63 @@
}
/// <summary>
+ /// 鎺ユ敹鎴愬搧锛岃緟鏂欙紝鑽按WMS浠诲姟淇℃伅
+ /// </summary>
+ /// <param name="taskDTOs">WMS浠诲姟瀵硅薄闆嗗悎</param>
+ /// <returns>杩斿洖澶勭悊缁撴灉</returns>
+ public WebResponseContent ReceiveWMSCPTask([NotNull] List<WMSTaskDTO> taskDTOs)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ bool flag = false;
+ List<Dt_Task> tasks = new List<Dt_Task>();
+ List<Dt_Task> tasksOld = BaseDal.QueryData();
+ List<Dt_Router> routersAll = _routerRepository.QueryData();
+ List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData();
+ foreach (var item in taskDTOs)
+ {
+ if (tasksOld.FirstOrDefault(x => x.TaskNum == item.TaskNum || x.PalletCode == item.PalletCode) != null)
+ {
+ flag = true;
+ continue;
+ }
+ Dt_Task task = _mapper.Map<Dt_Task>(item);
+ task.Creater = "WMS";
+ task.TaskState = (int)TaskStatusEnum.New;
+
+ Dt_Router? router;
+
+ TaskTypeGroup taskTypeGroup = item.TaskType.GetTaskTypeGroup();
+ Dt_StationManger? stationManger;
+ if (taskTypeGroup == TaskTypeGroup.InboundGroup)
+ {
+ stationManger = stationMangers.FirstOrDefault(x => x.StationCode == item.NextAddress || x.StationDeviceCode == item.SourceAddress);
+ task.DeviceCode = stationManger.StationDeviceCode;
+ }
+ else
+ {
+ stationManger = stationMangers.FirstOrDefault(x => x.StationCode == item.NextAddress || x.StationDeviceCode == item.NextAddress);
+ task.TaskState = TaskStatusEnum.SC_Execute.ObjToInt();
+ task.DeviceCode = task.Roadway;
+ //鍑哄簱
+ }
+ tasks.Add(task);
+ }
+ BaseDal.AddData(tasks);
+
+ _taskExecuteDetailService.AddTaskExecuteDetail(tasks.Select(x => x.TaskNum).ToList(), "鎺ユ敹WMS浠诲姟");
+
+ content = (flag || tasks.Count > 0) ? WebResponseContent.Instance.OK("鎴愬姛") : WebResponseContent.Instance.Error("澶辫触");
+ }
+ catch (Exception ex)
+ {
+ content = WebResponseContent.Instance.Error($"浠诲姟鎺ユ敹閿欒,閿欒淇℃伅:{ex.Message}");
+ }
+ return content;
+ }
+
+ /// <summary>
/// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟
/// </summary>
/// <param name="palletCode">鎵樼洏鍙�</param>
@@ -383,6 +440,61 @@
return content;
}
+
+ public WebResponseContent CPRequestWMSTaskSimple(string palletCode, string sourceAddress, int heightType, string courceAddress)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ string address = AppSettings.Get("WMSApiAddress");
+ if (string.IsNullOrEmpty(address))
+ {
+ return WebResponseContent.Instance.Error($"鏈壘鍒癢MSApi鍦板潃");
+ }
+ string responseStr = HttpHelper.Get($"{address}/api/Task/CPDeviceRequestInboundTaskSimple?stationCode={sourceAddress}&palletCode={palletCode}&heightType={heightType}&courceAddress={courceAddress}");
+ WebResponseContent? responseContent = JsonConvert.DeserializeObject<WebResponseContent>(responseStr);
+ if (responseContent != null && responseContent.Status && responseContent.Data != null)
+ {
+ WMSTaskDTO? taskDTO = JsonConvert.DeserializeObject<WMSTaskDTO>(responseContent.Data.ToString());
+ if (taskDTO != null)
+ {
+ content = ReceiveWMSTask(new List<WMSTaskDTO> { taskDTO });
+ }
+ }
+
+ }
+ catch (Exception ex)
+ {
+ content = WebResponseContent.Instance.Error(ex.Message);
+ }
+ return content;
+ }
+
+ public WebResponseContent ApplyLocation(string palletCode)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ string address = AppSettings.Get("WMSApiAddress");
+ if (string.IsNullOrEmpty(address))
+ {
+ return WebResponseContent.Instance.Error($"鏈壘鍒癢MSApi鍦板潃");
+ }
+ string responseStr = HttpHelper.Get($"{address}/api/Task/ApplyLocation?palletCode={palletCode}");
+ WebResponseContent? responseContent = JsonConvert.DeserializeObject<WebResponseContent>(responseStr);
+ if (responseContent != null && responseContent.Status && responseContent.Data != null)
+ {
+ return responseContent;
+ }
+
+ }
+ catch (Exception ex)
+ {
+ content = WebResponseContent.Instance.Error(ex.Message);
+ }
+ return content;
+ }
+
/// <summary>
///
/// </summary>
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs
index dce33cd..0f2bff1 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs
@@ -24,7 +24,7 @@
/// <param name="targetAddress">淇敼鍚庣殑鐩爣鍦板潃</param>
/// <param name="currentAddress">淇敼鍚庣殑褰撳墠鍦板潃</param>
/// <param name="nextAddress">淇敼鍚庣殑涓嬩竴鍦板潃</param>
- public void UpdateTask(Dt_Task task, TaskStatusEnum taskStatus, string deviceCode = "", string sourceAddress = "", string targetAddress = "", string currentAddress = "", string nextAddress = "", string roadwayNo = "", int heightType = 0)
+ public void UpdateTask(Dt_Task task, TaskStatusEnum taskStatus, string deviceCode = "", string sourceAddress = "", string targetAddress = "", string currentAddress = "", string nextAddress = "", string roadwayNo = "", int heightType = 0, string RGVCode = "")
{
StringBuilder stringBuilder = new StringBuilder(App.User?.UserId == 0 ? $"绯荤粺鑷姩娴佺▼" : "浜哄伐鎵嬪姩娴佺▼");
if (task.DeviceCode != deviceCode && !string.IsNullOrEmpty(deviceCode))
@@ -57,6 +57,10 @@
stringBuilder.Append($",宸烽亾鍙风敱{task.Roadway}鍙樻洿涓簕roadwayNo}");
task.Roadway = roadwayNo;
}
+ if (task.RGVCode != RGVCode && !string.IsNullOrEmpty(RGVCode))
+ {
+ task.RGVCode = RGVCode;
+ }
if (heightType!=0)
{
task.HeightType= heightType;
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs
index b2902c0..57100c2 100644
--- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs
@@ -15,7 +15,10 @@
*----------------------------------------------------------------*/
#endregion << 鐗� 鏈� 娉� 閲� >>
+using Autofac.Core;
using AutoMapper;
+using Microsoft.AspNetCore.Routing;
+using Newtonsoft.Json;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using Quartz;
using System;
@@ -24,12 +27,20 @@
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
+using WIDESEAWCS_Common;
+using WIDESEAWCS_Common.Helper;
+using WIDESEAWCS_Common.TaskEnum;
using WIDESEAWCS_Core;
+using WIDESEAWCS_Core.Caches;
using WIDESEAWCS_Core.Helper;
+using WIDESEAWCS_IBasicInfoRepository;
+using WIDESEAWCS_ITaskInfoRepository;
using WIDESEAWCS_ITaskInfoService;
using WIDESEAWCS_Model.Models;
using WIDESEAWCS_QuartzJob;
using WIDESEAWCS_QuartzJob.DTO;
+using WIDESEAWCS_QuartzJob.Models;
+using WIDESEAWCS_QuartzJob.Repository;
using WIDESEAWCS_QuartzJob.Service;
using WIDESEAWCS_Tasks.ConveyorLineJob;
@@ -41,44 +52,269 @@
private readonly ITaskService _taskService;
private readonly ITaskExecuteDetailService _taskExecuteDetailService;
private readonly IRouterService _routerService;
+ private readonly IRouterRepository _routerRepository;
+ private readonly ITaskRepository _taskRepository;
private readonly IMapper _mapper;
+ private readonly IStationMangerRepository _stationMangerRepository;
+ private readonly ICacheService _cacheService;
+ private readonly List<Dt_WarehouseDevice> warehouseDevices;
- public CommonConveyorLineJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, IRouterService routerService, IMapper mapper)
+ public CommonConveyorLineJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, IRouterService routerService, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository, ITaskRepository taskRepository, ICacheService cacheService, IMapper mapper)
{
_taskService = taskService;
_taskExecuteDetailService = taskExecuteDetailService;
_routerService = routerService;
+ _stationMangerRepository = stationMangerRepository;
+ _taskRepository = taskRepository;
+ _routerRepository = routerRepository;
+ _cacheService = cacheService;
_mapper = mapper;
- }
+ string? warehouseDevicesStr = _cacheService.Get<string>(nameof(Dt_WarehouseDevice));
+ if (!string.IsNullOrEmpty(warehouseDevicesStr))
+ {
+ warehouseDevices = JsonConvert.DeserializeObject<List<Dt_WarehouseDevice>>(warehouseDevicesStr) ?? new List<Dt_WarehouseDevice>();
+ }
+ else
+ {
+ warehouseDevices = new List<Dt_WarehouseDevice>();
+ }
+
+ }
public Task Execute(IJobExecutionContext context)
{
- //Console.Out.WriteLine(DateTime.Now);
try
{
CommonConveyorLine conveyorLine = (CommonConveyorLine)context.JobDetail.JobDataMap.Get("JobParams");
if (conveyorLine != null)
{
- List<string> childDeviceCodes = new List<string>();
-
- foreach (string childDeviceCode in childDeviceCodes)
+ List<string> deviceStations = conveyorLine.DeviceProDTOs.Select(x => x.DeviceChildCode).ToList();
+ List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData(x => x.StationDeviceCode == conveyorLine.DeviceCode);
+ foreach (var item in stationMangers.Where(x => deviceStations.Contains(x.StationCode)))
{
- R_ConveyorLineInfo command = conveyorLine.ReadCustomer<R_ConveyorLineInfo>(childDeviceCode);
- if (command != null)
+ try
{
-
- }
- }
- }
+ DeviceProDTO? deviceProRead = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == item.StationCode && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+ DeviceProDTO? deviceProWrite = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == item.StationCode && x.DeviceProParamType == nameof(W_ConveyorLineDBName)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+
+ if (deviceProRead != null && deviceProWrite != null)
+ {
+ R_ConveyorLineInfo conveyorLineInfoRead = conveyorLine.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+
+ W_ConveyorLineInfo conveyorLineInfoWrite = conveyorLine.Communicator.ReadCustomer<W_ConveyorLineInfo>(deviceProWrite.DeviceProAddress);
+ if (conveyorLineInfoRead == null || conveyorLineInfoWrite == null)
+ {
+ continue;
+ }
+
+ R_ConveyorLineStatus conveyorLineStatus = conveyorLineInfoRead.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+
+ ConveyorLineSignal conveyorLineSignalRead = conveyorLineInfoRead.Signal.ByteToBoolObject<ConveyorLineSignal>();
+
+
+ bool ACK = conveyorLine.GetValue<W_ConveyorLineDBName, bool>(W_ConveyorLineDBName.W_ConveyorLine_ACK, item.StationCode);
+
+ bool STB = conveyorLine.GetValue<W_ConveyorLineDBName, bool>(W_ConveyorLineDBName.W_ConveyorLine_STB, item.StationCode);
+
+ //bool Return = conveyorLine.GetValue<W_ConveyorLineDB, bool>(W_ConveyorLineDB.Return, item.StationCode);
+ if (item.StationType == StationTypeEnum.StationType_OnlyInbound.ObjToInt())
+ {
+
+ if (conveyorLineSignalRead.STB && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && !ACK)
+ {
+ if (conveyorLineInfoRead.TaskNo == 0 && !string.IsNullOrEmpty(conveyorLineInfoRead.Barcode))//閲囪喘鍏ュ簱
+ {
+ WebResponseContent webResponse = _taskService.ApplyLocation(conveyorLineInfoRead.Barcode);
+ if (webResponse.Status)
+ {
+ List<Dt_WarehouseDevice> warehouseDevicesList = warehouseDevices.Where(x => x.WarehouseId == webResponse.Data.ObjToInt()).ToList();
+
+ foreach (var list in warehouseDevicesList)
+ {
+ Dt_Router routers = _routerRepository.QueryFirst(x => x.StartPosi == item.StationCode && x.ChildPosiDeviceCode == list.DeviceCode);
+ #region 鍏堟壘鍏佽鍏ュ簱鐨勮緭閫佺嚎鍏ュ彛
+ deviceProRead = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == routers.NextPosi && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+ Dt_Task dt_Task = _taskRepository.QueryFirst(x => x.NextAddress == routers.NextPosi);
+ if (dt_Task != null) { continue; }
+ if (deviceProRead != null)
+ {
+ R_ConveyorLineInfo conveyorLineInfoRead1 = conveyorLine.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+ R_ConveyorLineStatus conveyorLineStatus1 = conveyorLineInfoRead1.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+ if (conveyorLineInfoRead1.Status == 6 && conveyorLineStatus1.Free && conveyorLineStatus1.Online && !conveyorLineStatus1.Goods)
+ {
+
+ #region 璇锋眰WMS鐢熸垚浠诲姟鍚庣粰杈撻�佺嚎鍚姩淇″彿
+ WebResponseContent content = _taskService.CPRequestWMSTaskSimple(conveyorLineInfoRead.Barcode, routers.NextPosi, conveyorLineInfoRead.Spare2, item.StationCode);
+ if (content.Status)
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.PalletCode == conveyorLineInfoRead.Barcode && x.CurrentAddress == item.StationCode && x.DeviceCode == conveyorLine.DeviceCode && x.TaskState == TaskStatusEnum.New.ObjToInt());
+ if (task != null)
+ {
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_ACK, true, item.StationCode);
+ _taskService.UpdateTask(task, TaskStatusEnum.RGV_NEW, sourceAddress: item.StationCode, RGVCode: item.AGVStationCode);
+
+ }
+
+ }
+ #endregion
+ }
+ }
+ #endregion
+ }
+ }
+ }
+ }
+ }
+ if (item.StationType == StationTypeEnum.StationType_InboundAndOutbound.ObjToInt())
+ {
+ if (conveyorLineSignalRead.STB && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && !ACK)
+ {
+ if (conveyorLineInfoRead.TaskNo == 0 && !string.IsNullOrEmpty(conveyorLineInfoRead.Barcode))//閲囪喘鍏ュ簱
+ {
+ WebResponseContent webResponse = _taskService.ApplyLocation(conveyorLineInfoRead.Barcode);
+ if (webResponse.Status)
+ {
+ List<Dt_WarehouseDevice> warehouseDevicesList = warehouseDevices.Where(x => x.WarehouseId == webResponse.Data.ObjToInt()).ToList();
+
+ foreach (var list in warehouseDevicesList)
+ {
+ Dt_Router routers = _routerRepository.QueryFirst(x => x.StartPosi == item.StationCode && x.ChildPosiDeviceCode == list.DeviceCode);
+ #region 鍏堟壘鍏佽鍏ュ簱鐨勮緭閫佺嚎鍏ュ彛
+ deviceProRead = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == routers.NextPosi && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+ Dt_Task dt_Task = _taskRepository.QueryFirst(x => x.NextAddress == routers.NextPosi);
+ if (dt_Task != null) { continue; }
+ if (deviceProRead != null)
+ {
+ R_ConveyorLineInfo conveyorLineInfoRead1 = conveyorLine.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+ R_ConveyorLineStatus conveyorLineStatus1 = conveyorLineInfoRead1.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+ if (conveyorLineInfoRead1.Status == 6 && conveyorLineStatus1.Free && conveyorLineStatus1.Online && !conveyorLineStatus1.Goods)
+ {
+
+ #region 璇锋眰WMS鐢熸垚浠诲姟鍚庣粰杈撻�佺嚎鍚姩淇″彿
+ WebResponseContent content = _taskService.CPRequestWMSTaskSimple(conveyorLineInfoRead.Barcode, routers.NextPosi, conveyorLineInfoRead.Spare2, item.StationCode);
+ if (content.Status)
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.PalletCode == conveyorLineInfoRead.Barcode && x.CurrentAddress == item.StationCode && x.DeviceCode == conveyorLine.DeviceCode && x.TaskState == TaskStatusEnum.New.ObjToInt());
+ if (task != null)
+ {
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_ACK, true, item.StationCode);
+ _taskService.UpdateTask(task, TaskStatusEnum.RGV_NEW, sourceAddress: item.StationCode, RGVCode: item.AGVStationCode);
+
+ }
+
+ }
+ #endregion
+ }
+ }
+ }
+ }
+ #endregion
+ }
+ }
+ }
+ //鍑哄簱绔欏彴
+ if (item.StationType == StationTypeEnum.StationType_OnlyOutbound.ObjToInt())
+ {
+
+ }
+ if (item.StationType == StationTypeEnum.SC_In.ObjToInt())
+ {
+ if (conveyorLineSignalRead.STB && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && !ACK)
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.NextAddress == item.StationCode && x.DeviceCode == item.StationDeviceCode && x.TaskState == TaskStatusEnum.RGV_Finish.ObjToInt());
+ if (task != null)
+ {
+ _taskService.UpdateTask(task, TaskStatusEnum.SC_Execute, deviceCode: task.Roadway, currentAddress: task.NextAddress);
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_ACK, true, item.StationCode);
+ }
+ }
+ }
+ if (item.StationType == StationTypeEnum.SC_Out.ObjToInt())
+ {
+ if (!conveyorLineSignalRead.STB && !conveyorLineSignalRead.ACK && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && !STB && !ACK)
+ {
+ Dt_Task _Task = _taskRepository.QueryFirst(x => x.CurrentAddress == item.StationCode && x.TaskState == TaskStatusEnum.Line_Execute.ObjToInt());
+ if (_Task != null)
+ {
+ Dt_Router routers = _routerRepository.QueryFirst(x => x.StartPosi == _Task.CurrentAddress);
+ if (routers != null)
+ {
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_TaskNo, _Task.TaskNum, item.StationCode);
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_EndPos, routers.NextPosi, item.StationCode);
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_STB, true, item.StationCode);
+ _taskService.UpdateTask(_Task, TaskStatusEnum.Line_Executing, nextAddress: routers.NextPosi);
+ WriteDebug($"鍫嗗灈鏈哄嚭搴撳彛{item.StationCode}", $"鍫嗗灈鏈哄嚭搴撳彛浠诲姟鏇存柊,浠诲姟鍙穥_Task.TaskId}锛岀洰鏍囧嚭鍙d綅缃畕_Task.TargetAddress}锛屾墭鐩樺彿锛歿_Task.PalletCode}");
+ }
+ }
+
+ }
+ //鍫嗗灈鏈哄嚭搴撳彛澶栭潰涓�娈靛嚭搴撶珯鍙�
+ if (conveyorLineSignalRead.STB && !conveyorLineSignalRead.ACK && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && !STB && !ACK)
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.NextAddress == item.StationCode && x.DeviceCode == conveyorLine.DeviceCode && x.TaskState == TaskStatusEnum.Line_Executing.ObjToInt());
+ if (task != null)
+ {
+ List<Dt_Router> routers = _routerRepository.QueryData(x => x.StartPosi == item.StationCode).ToList();
+ foreach (var items in routers)
+ {
+ deviceProRead = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == items.NextPosi && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+ if (deviceProRead != null)
+ {
+ R_ConveyorLineInfo conveyorLineInfoRead3 = conveyorLine.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+
+ R_ConveyorLineStatus conveyorLineStatus3 = conveyorLineInfoRead3.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+
+ ConveyorLineSignal conveyorLineSignalRead3 = conveyorLineInfoRead3.Signal.ByteToBoolObject<ConveyorLineSignal>();
+
+ if (!conveyorLineSignalRead3.STB && !conveyorLineSignalRead3.ACK && conveyorLineStatus3.Online && conveyorLineStatus3.Free && !conveyorLineStatus3.Goods && !conveyorLineStatus3.Alarm && !STB && !ACK)//鍒ゆ柇鍑哄簱鍙f槸鍚︾┖闂�
+ {
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_ACK, true, item.StationCode);
+ _taskService.UpdateTask(task, TaskStatusEnum.RGV_Execute, currentAddress: item.StationCode, targetAddress: items.NextPosi, nextAddress: items.NextPosi, RGVCode: item.AGVStationCode);
+ }
+ }
+ }
+
+ }
+
+ }
+ }
+ if (!conveyorLineSignalRead.STB && conveyorLineSignalRead.ACK && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && STB && !ACK)
+ {
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_STB, false, item.StationCode);
+ }
+ if (!conveyorLineSignalRead.STB && !conveyorLineSignalRead.ACK && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && !STB && ACK)
+ {
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_ACK, false, item.StationCode);
+ }
+ if (!conveyorLineSignalRead.STB && !conveyorLineSignalRead.ACK && conveyorLineStatus.Online && !conveyorLineStatus.Alarm && !STB && ACK)
+ {
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_ACK, false, item.StationCode);
+ }
+ //if (!conveyorLineSignalRead.STB && !conveyorLineSignalRead.ACK && conveyorLineStatus.Online && !conveyorLineStatus.Alarm && !STB && !ACK && Return)
+ //{
+ // conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_Return, false, item.StationCode);
+ //}
+ if (conveyorLineSignalRead.STB && !conveyorLineSignalRead.ACK && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && ACK)
+ {
+ conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_ACK, false, item.StationCode);
+ }
+
+
+ }
+ }
+ catch (Exception ex)
+ {
+ WriteError(nameof(CommonConveyorLine), ex.Message, ex);
+ }
+
+ }
+
+ }
}
catch (Exception ex)
{
- Console.Out.WriteLine(nameof(CommonConveyorLineJob) + ":" + ex.ToString());
- }
- finally
- {
- //Console.Out.WriteLine(DateTime.Now);
+ WriteError(nameof(CommonConveyorLine), ex.Message, ex);
}
return Task.CompletedTask;
}
@@ -91,7 +327,7 @@
/// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
public void RequestInbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode)
{
-
+
}
/// <summary>
@@ -102,7 +338,7 @@
/// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
public void RequestInNextAddress(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode)
{
-
+
}
/// <summary>
@@ -113,7 +349,7 @@
/// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
public void ConveyorLineInFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode)
{
-
+
}
/// <summary>
@@ -124,7 +360,7 @@
/// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
public void RequestOutbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode)
{
-
+
}
/// <summary>
@@ -135,7 +371,7 @@
/// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
public void RequestOutNextAddress(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode)
{
-
+
}
/// <summary>
@@ -146,7 +382,7 @@
/// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param>
public void ConveyorLineOutFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode)
{
-
+
}
}
}
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/R_RGVConveyorLineDBName.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/R_RGVConveyorLineDBName.cs
new file mode 100644
index 0000000..cdb7034
--- /dev/null
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/R_RGVConveyorLineDBName.cs
@@ -0,0 +1,96 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WIDESEAWCS_Tasks.ConveyorLineJob
+{
+ public enum R_RGVConveyorLineDBName
+ {
+ /// <summary>
+ /// 绔欏彴缂栧彿
+ /// </summary>
+ R_ConveyorNo,
+
+ /// <summary>
+ /// 鎻℃墜淇″彿
+ /// </summary>
+ R_HandShake,
+
+ /// <summary>
+ /// 1鑱旀満 0鑴辨満
+ /// </summary>
+ R_Online,
+
+ /// <summary>
+ /// 1绌洪棽 0绻佸繖
+ /// </summary>
+ R_Free,
+
+ /// <summary>
+ /// 1鏈夎揣 0鏃犺揣
+ /// </summary>
+ R_Goods,
+
+ /// <summary>
+ /// 1鏁呴殰 0姝e父
+ /// </summary>
+ R_Alarm,
+
+ /// <summary>
+ /// 鍙栬揣瀹屾垚
+ /// </summary>
+ R_Pcikfinish,
+
+ /// <summary>
+ /// 鏀捐揣瀹屾垚
+ /// </summary>
+ R_TaskFinish,
+
+ /// <summary>
+ /// 1璇锋眰琛ョ洏 0鏃�
+ /// </summary>
+ R_RequestPakcPallet,
+
+ /// <summary>
+ /// 1璇锋眰鎷嗙洏 0鏃�
+ /// </summary>
+ R_RequestUnpackPellet,
+
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ R_TaskNum,
+
+ /// <summary>
+ /// 褰撳墠浣嶇疆
+ /// </summary>
+ R_Column,
+
+ /// <summary>
+ /// 棰勭暀
+ /// </summary>
+ R_Sapre1,
+
+ /// <summary>
+ /// 棰勭暀
+ /// </summary>
+ R_Sapre2,
+
+ /// <summary>
+ /// 璇锋眰淇″彿
+ /// </summary>
+ R_STB,
+
+ /// <summary>
+ /// 鍝嶅簲淇″彿
+ /// </summary>
+ R_ACK,
+ /// <summary>
+ /// 鎶ヨ浠g爜
+ /// </summary>
+ R_AlarmInfo
+
+ }
+}
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/W_ConveyorLineDB.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/W_ConveyorLineDB.cs
new file mode 100644
index 0000000..502d471
--- /dev/null
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/W_ConveyorLineDB.cs
@@ -0,0 +1,76 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WIDESEAWCS_Tasks.ConveyorLineJob
+{
+ public enum W_ConveyorLineDBName
+ {
+ /// <summary>
+ /// 绔欏彴缂栧彿
+ /// </summary>
+ W_ConveyorLine_CovNo,
+
+ /// <summary>
+ /// 鎻℃墜淇″彿
+ /// </summary>
+ W_ConveyorLine_HandShake,
+
+ /// <summary>
+ /// 澶嶄綅鎶ヨ
+ /// </summary>
+ W_ConveyorLine_ClearAlarm,
+
+ /// <summary>
+ /// 閫�鍥�
+ /// </summary>
+ W_ConveyorLine_Return,
+
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ W_ConveyorLine_TaskNo,
+
+ /// <summary>
+ /// 璧峰鍦板潃
+ /// </summary>
+ W_ConveyorLine_StartPos,
+
+ /// <summary>
+ /// 鐩爣鍦板潃
+ /// </summary>
+ W_ConveyorLine_EndPos,
+
+ /// <summary>
+ /// 璐х墿绫诲瀷
+ /// </summary>
+ W_ConveyorLine_GoodsType,
+ /// <summary>
+ /// 浠诲姟绫诲瀷
+ /// </summary>
+ W_ConveyorLine_TaskType,
+
+ /// <summary>
+ /// 棰勭暀1
+ /// </summary>
+ W_ConveyorLine_Spare1,
+
+ /// <summary>
+ /// 棰勭暀2
+ /// </summary>
+ W_ConveyorLine_Spare2,
+
+ /// <summary>
+ /// 璇锋眰淇″彿
+ /// </summary>
+ W_ConveyorLine_STB,
+
+ /// <summary>
+ /// 鍝嶅簲淇″彿
+ /// </summary>
+ W_ConveyorLine_ACK
+
+ }
+}
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/W_RGVConveyorLineDBName.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/W_RGVConveyorLineDBName.cs
new file mode 100644
index 0000000..203c110
--- /dev/null
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/W_RGVConveyorLineDBName.cs
@@ -0,0 +1,75 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WIDESEAWCS_Tasks.ConveyorLineJob
+{
+ public enum W_RGVConveyorLineDBName
+ {
+ /// <summary>
+ /// 绔欏彴缂栧彿
+ /// </summary>
+ W_CovNo,
+
+ /// <summary>
+ /// 鎻℃墜淇″彿
+ /// </summary>
+ W_HandShake,
+
+ /// <summary>
+ /// 澶嶄綅鎶ヨ
+ /// </summary>
+ W_ClearAlarm,
+
+ /// <summary>
+ /// 鎬ュ仠
+ /// </summary>
+ W_Estop,
+
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ W_TaskNo,
+
+ /// <summary>
+ /// 璧峰鍦板潃
+ /// </summary>
+ W_StartPos,
+
+ /// <summary>
+ /// 鐩爣鍦板潃
+ /// </summary>
+ W_EndPos,
+
+ /// <summary>
+ /// 璐х墿绫诲瀷
+ /// </summary>
+ W_GoodsType,
+ /// <summary>
+ /// 浠诲姟绫诲瀷
+ /// </summary>
+ W_TaskType,
+
+ /// <summary>
+ /// 棰勭暀1
+ /// </summary>
+ W_Spare1,
+
+ /// <summary>
+ /// 棰勭暀2
+ /// </summary>
+ W_Spare2,
+
+ /// <summary>
+ /// 璇锋眰淇″彿
+ /// </summary>
+ W_STB,
+
+ /// <summary>
+ /// 鍝嶅簲淇″彿
+ /// </summary>
+ W_ACK
+ }
+}
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RGV/RGVJob_L1.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RGV/RGVJob_L1.cs
new file mode 100644
index 0000000..fe6d376
--- /dev/null
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RGV/RGVJob_L1.cs
@@ -0,0 +1,205 @@
+锘縰sing Microsoft.AspNetCore.Components.Routing;
+using Microsoft.IdentityModel.Tokens;
+using Newtonsoft.Json;
+using Quartz;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Common;
+using WIDESEAWCS_Common.Helper;
+using WIDESEAWCS_Common.TaskEnum;
+using WIDESEAWCS_Core;
+using WIDESEAWCS_Core.Caches;
+using WIDESEAWCS_Core.Helper;
+using WIDESEAWCS_IBasicInfoRepository;
+using WIDESEAWCS_ITaskInfoRepository;
+using WIDESEAWCS_ITaskInfoService;
+using WIDESEAWCS_Model.Models;
+using WIDESEAWCS_QuartzJob;
+using WIDESEAWCS_QuartzJob.DTO;
+using WIDESEAWCS_QuartzJob.Models;
+using WIDESEAWCS_QuartzJob.Repository;
+using WIDESEAWCS_QuartzJob.Service;
+using WIDESEAWCS_Tasks.ConveyorLineJob;
+
+namespace WIDESEAWCS_Tasks
+{
+ [DisallowConcurrentExecution]
+ public class RGVJob_L1 : JobBase, IJob
+ {
+ private readonly ICacheService _cacheService;
+ private readonly ITaskService _taskService;
+ private readonly ITaskExecuteDetailService _taskExecuteDetailService;
+ private readonly ITaskRepository _taskRepository;
+ private readonly IStationMangerRepository _stationMangerRepository;
+ private readonly IRouterRepository _routerRepository;
+ private readonly IRouterService _routerService;
+ private readonly IRouterExtension _routerExtension;
+ private readonly List<Dt_WarehouseDevice> warehouseDevices;
+
+ public RGVJob_L1(ICacheService cacheService, ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository, IRouterService routerService, IRouterExtension routerExtension)
+ {
+ _cacheService = cacheService;
+ _taskService = taskService;
+ _taskExecuteDetailService = taskExecuteDetailService;
+ _taskRepository = taskRepository;
+ _stationMangerRepository = stationMangerRepository;
+ _routerRepository = routerRepository;
+ _routerService = routerService;
+ _routerExtension = routerExtension;
+
+ string? warehouseDevicesStr = _cacheService.Get<string>(nameof(Dt_WarehouseDevice));
+ if (!string.IsNullOrEmpty(warehouseDevicesStr))
+ {
+ warehouseDevices = JsonConvert.DeserializeObject<List<Dt_WarehouseDevice>>(warehouseDevicesStr) ?? new List<Dt_WarehouseDevice>();
+ }
+ else
+ {
+ warehouseDevices = new List<Dt_WarehouseDevice>();
+ }
+ }
+
+ public Task Execute(IJobExecutionContext context)
+ {
+ bool flag = context.JobDetail.JobDataMap.TryGetValue("JobParams", out object? value);
+ if (flag && value != null)
+ {
+ OtherDevice device = (OtherDevice)value;
+
+ //Dt_WarehouseDevice? warehouseDevice = warehouseDevices.FirstOrDefault(x => x.DeviceCode == device.DeviceCode);
+ //if (warehouseDevice == null)
+ //{
+ // WriteError(device.DeviceName, $"璇烽厤缃粨搴撹澶囦俊鎭�");
+ // return Task.CompletedTask;
+ //}
+
+ List<string> deviceStations = device.DeviceProDTOs.Select(x => x.DeviceChildCode).ToList();
+ List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData(x => x.StationDeviceCode == device.DeviceCode);
+
+ foreach (var item in stationMangers.Where(x => deviceStations.Contains(x.StationCode)))
+ {
+ try
+ {
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_STB, item.StationCode)/*&& conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm*/ && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_ACK, item.StationCode) && device.GetValue<R_RGVConveyorLineDBName, int>(R_RGVConveyorLineDBName.R_TaskNum, item.StationCode) != 0 && device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_TaskFinish, item.StationCode))//RGV鍏ュ簱浠诲姟瀹屾垚
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskNum == device.GetValue<R_RGVConveyorLineDBName, int>(R_RGVConveyorLineDBName.R_TaskNum, item.StationCode) && x.TaskState == TaskStatusEnum.RGV_Executing.ObjToInt());
+ if (task != null)
+ {
+ if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt())//RGV鍏ュ簱浠诲姟瀹屾垚
+ {
+ Dt_Router routers = _routerRepository.QueryFirst(x => x.StartPosi == task.NextAddress);
+ _taskService.UpdateTask(task, TaskStatusEnum.RGV_Finish, currentAddress: task.NextAddress, nextAddress: routers.NextPosi);
+ }
+ else
+ {
+ //鍑哄簱浠诲姟鏄惁闇�瑕佽窡鍑哄簱鍙h緭閫佺嚎瀵规帴瀹屾垚浠诲姟
+ WriteDebug(device.DeviceName, $"浠诲姟瀹屾垚,浠诲姟鍙�:{task.TaskNum}");
+ _taskService.TaskCompleted(task.TaskNum);
+
+ }
+ device.SetValue(W_RGVConveyorLineDBName.W_ACK, true, item.StationCode);
+ }
+
+ }
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Online, item.StationCode) && device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Free, item.StationCode) && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Goods, item.StationCode) && device.GetValue<R_RGVConveyorLineDBName, int>(R_RGVConveyorLineDBName.R_TaskNum, item.StationCode) == 0 && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Alarm, item.StationCode))
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskType >= TaskTypeEnum.Inbound.ObjToInt() && x.TaskState == TaskStatusEnum.RGV_NEW.ObjToInt() && x.RGVCode == item.StationCode);
+ if (task != null)
+ {
+ //鍐欏叆RGV浠诲姟
+ device.SetValue(W_RGVConveyorLineDBName.W_TaskNo, task.TaskNum, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_StartPos, task.SourceAddress.ObjToInt(), item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_TaskType, 2, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_EndPos, task.NextAddress.ObjToInt(), item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_STB, true, item.StationCode);
+ _taskService.UpdateTask(task, TaskStatusEnum.RGV_Executing);
+ }
+ Dt_Task task1 = _taskRepository.QueryFirst(x => x.TaskType >= TaskTypeEnum.Outbound.ObjToInt() && x.TaskType <= TaskTypeEnum.Inbound.ObjToInt() && x.TaskState == TaskStatusEnum.RGV_Execute.ObjToInt() && x.RGVCode == item.StationCode);
+ if (task1 != null)
+ {
+ //鍐欏叆RGV浠诲姟
+ device.SetValue(W_RGVConveyorLineDBName.W_TaskNo, task1.TaskNum, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_StartPos, task1.CurrentAddress, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_TaskType, 2, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_EndPos, task1.TargetAddress, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_STB, true, item.StationCode);
+ _taskService.UpdateTask(task1, TaskStatusEnum.RGV_Executing);
+ }
+ }
+
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_ACK, item.StationCode))
+ {
+ device.SetValue(W_RGVConveyorLineDBName.W_STB, false, item.StationCode);
+ }
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Pcikfinish, item.StationCode) && device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_STB, item.StationCode))
+ {
+ device.SetValue(W_RGVConveyorLineDBName.W_ACK, true, item.StationCode);
+ }
+ if (!device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Pcikfinish, item.StationCode) && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_STB, item.StationCode))
+ {
+ device.SetValue(W_RGVConveyorLineDBName.W_ACK, false, item.StationCode);
+ }
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_TaskFinish, item.StationCode) && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_STB, item.StationCode))
+ {
+ device.SetValue(W_RGVConveyorLineDBName.W_ACK, false, item.StationCode);
+ }
+ }
+ catch (Exception ex)
+ {
+ }
+
+ //DeviceProDTO? deviceProRead = device.DeviceProDTOs.Where(x => x.DeviceChildCode == item.StationCode && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+
+ //DeviceProDTO? deviceProWrite = device.DeviceProDTOs.Where(x => x.DeviceChildCode == item.StationCode && x.DeviceProParamType == nameof(W_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+
+ //if (deviceProRead != null && deviceProWrite != null)
+ //{
+ // R_ConveyorLineInfo conveyorLineInfoRead = device.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+
+ // R_ConveyorLineInfo conveyorLineInfoReadRGV = device.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+
+ // W_ConveyorLineInfo conveyorLineInfoWrite = device.Communicator.ReadCustomer<W_ConveyorLineInfo>(deviceProWrite.DeviceProAddress);
+ // if (conveyorLineInfoRead == null || conveyorLineInfoWrite == null)
+ // {
+ // continue;
+ // }
+
+ // R_ConveyorLineStatus conveyorLineStatus = conveyorLineInfoRead.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+
+ // ConveyorLineSignal conveyorLineSignalRead = conveyorLineInfoRead.Signal.ByteToBoolObject<ConveyorLineSignal>();
+
+ // ConveyorLineSignal conveyorLineSignalWrite = conveyorLineInfoWrite.Signal.ByteToBoolObject<ConveyorLineSignal>();
+ // if (conveyorLineSignalRead.STB && !conveyorLineSignalWrite.ACK && !string.IsNullOrEmpty(conveyorLineInfoRead.Barcode) && conveyorLineInfoRead.TaskNo == 0)//鍏ュ簱
+ // {
+ // Dt_Task task = _taskRepository.QueryFirst(x => x.TaskType >= TaskTypeEnum.Inbound.ObjToInt() && x.TaskState == TaskStatusEnum.RGV_Execute.ObjToInt() && x.WarehouseId == warehouseDevice.WarehouseId);
+ // if (task != null)
+ // {
+ // //鍐欏叆RGV浠诲姟
+ // device.SetValue(W_ConveyorLineDB.TaskNo, task.TaskNum, item.StationCode);
+ // device.SetValue(W_ConveyorLineDB.StartPos, task.CurrentAddress, item.StationCode);
+ // device.SetValue(W_ConveyorLineDB.Spare1, ConveyorWorkTypeEnum.Inbound.ObjToInt(), item.StationCode);
+ // device.SetValue(W_ConveyorLineDB.EndPos, task.TargetAddress, item.StationCode);
+ // device.SetValue(W_ConveyorLineDB.ACK, true, item.StationCode);
+ // _taskService.UpdateTask(task, TaskStatusEnum.RGV_Executing);
+ // }
+ // }
+ // else if (conveyorLineSignalRead.STB /*&& conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm*/ && !conveyorLineSignalWrite.ACK && conveyorLineInfoRead.TaskNo > 0)//鍑哄簱
+ // {
+ // WriteDebug(device.DeviceName, $"浠诲姟瀹屾垚,浠诲姟鍙�:{conveyorLineInfoRead.TaskNo}");
+ // _taskService.TaskCompleted(conveyorLineInfoRead.TaskNo);
+ // device.SetValue(W_ConveyorLineDB.ACK, true, item.StationCode);
+ // }
+ //}
+ //else
+ //{
+ // WriteError(device.DeviceName, $"鏈壘鍒拌澶囧瓙缂栧彿{item.StationCode}鐨勫崗璁俊鎭�");
+ //}
+ }
+ }
+
+ return Task.CompletedTask;
+ }
+ }
+}
diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RGV/RGVJob_L2.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RGV/RGVJob_L2.cs
new file mode 100644
index 0000000..5d4674f
--- /dev/null
+++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RGV/RGVJob_L2.cs
@@ -0,0 +1,205 @@
+锘縰sing Microsoft.AspNetCore.Components.Routing;
+using Microsoft.IdentityModel.Tokens;
+using Newtonsoft.Json;
+using Quartz;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Common;
+using WIDESEAWCS_Common.Helper;
+using WIDESEAWCS_Common.TaskEnum;
+using WIDESEAWCS_Core;
+using WIDESEAWCS_Core.Caches;
+using WIDESEAWCS_Core.Helper;
+using WIDESEAWCS_IBasicInfoRepository;
+using WIDESEAWCS_ITaskInfoRepository;
+using WIDESEAWCS_ITaskInfoService;
+using WIDESEAWCS_Model.Models;
+using WIDESEAWCS_QuartzJob;
+using WIDESEAWCS_QuartzJob.DTO;
+using WIDESEAWCS_QuartzJob.Models;
+using WIDESEAWCS_QuartzJob.Repository;
+using WIDESEAWCS_QuartzJob.Service;
+using WIDESEAWCS_Tasks.ConveyorLineJob;
+
+namespace WIDESEAWCS_Tasks
+{
+ [DisallowConcurrentExecution]
+ public class RGVJob_L2 : JobBase, IJob
+ {
+ private readonly ICacheService _cacheService;
+ private readonly ITaskService _taskService;
+ private readonly ITaskExecuteDetailService _taskExecuteDetailService;
+ private readonly ITaskRepository _taskRepository;
+ private readonly IStationMangerRepository _stationMangerRepository;
+ private readonly IRouterRepository _routerRepository;
+ private readonly IRouterService _routerService;
+ private readonly IRouterExtension _routerExtension;
+ private readonly List<Dt_WarehouseDevice> warehouseDevices;
+
+ public RGVJob_L2(ICacheService cacheService, ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository, IRouterService routerService, IRouterExtension routerExtension)
+ {
+ _cacheService = cacheService;
+ _taskService = taskService;
+ _taskExecuteDetailService = taskExecuteDetailService;
+ _taskRepository = taskRepository;
+ _stationMangerRepository = stationMangerRepository;
+ _routerRepository = routerRepository;
+ _routerService = routerService;
+ _routerExtension = routerExtension;
+
+ string? warehouseDevicesStr = _cacheService.Get<string>(nameof(Dt_WarehouseDevice));
+ if (!string.IsNullOrEmpty(warehouseDevicesStr))
+ {
+ warehouseDevices = JsonConvert.DeserializeObject<List<Dt_WarehouseDevice>>(warehouseDevicesStr) ?? new List<Dt_WarehouseDevice>();
+ }
+ else
+ {
+ warehouseDevices = new List<Dt_WarehouseDevice>();
+ }
+ }
+
+ public Task Execute(IJobExecutionContext context)
+ {
+ bool flag = context.JobDetail.JobDataMap.TryGetValue("JobParams", out object? value);
+ if (flag && value != null)
+ {
+ OtherDevice device = (OtherDevice)value;
+
+ //Dt_WarehouseDevice? warehouseDevice = warehouseDevices.FirstOrDefault(x => x.DeviceCode == device.DeviceCode);
+ //if (warehouseDevice == null)
+ //{
+ // WriteError(device.DeviceName, $"璇烽厤缃粨搴撹澶囦俊鎭�");
+ // return Task.CompletedTask;
+ //}
+
+ List<string> deviceStations = device.DeviceProDTOs.Select(x => x.DeviceChildCode).ToList();
+ List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData(x => x.StationDeviceCode == device.DeviceCode);
+
+ foreach (var item in stationMangers.Where(x => deviceStations.Contains(x.StationCode)))
+ {
+ try
+ {
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_STB, item.StationCode)/*&& conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm*/ && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_ACK, item.StationCode) && device.GetValue<R_RGVConveyorLineDBName, int>(R_RGVConveyorLineDBName.R_TaskNum, item.StationCode) != 0 && device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_TaskFinish, item.StationCode))//RGV鍏ュ簱浠诲姟瀹屾垚
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskNum == device.GetValue<R_RGVConveyorLineDBName, int>(R_RGVConveyorLineDBName.R_TaskNum, item.StationCode) && x.TaskState == TaskStatusEnum.RGV_Executing.ObjToInt());
+ if (task != null)
+ {
+ if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt())//RGV鍏ュ簱浠诲姟瀹屾垚
+ {
+ Dt_Router routers = _routerRepository.QueryFirst(x => x.StartPosi == task.NextAddress);
+ _taskService.UpdateTask(task, TaskStatusEnum.RGV_Finish, currentAddress: task.NextAddress, nextAddress: routers.NextPosi);
+ }
+ else
+ {
+ //鍑哄簱浠诲姟鏄惁闇�瑕佽窡鍑哄簱鍙h緭閫佺嚎瀵规帴瀹屾垚浠诲姟
+ WriteDebug(device.DeviceName, $"浠诲姟瀹屾垚,浠诲姟鍙�:{task.TaskNum}");
+ _taskService.TaskCompleted(task.TaskNum);
+
+ }
+ device.SetValue(W_RGVConveyorLineDBName.W_ACK, true, item.StationCode);
+ }
+
+ }
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Online, item.StationCode) && device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Free, item.StationCode) && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Goods, item.StationCode) && device.GetValue<R_RGVConveyorLineDBName, int>(R_RGVConveyorLineDBName.R_TaskNum, item.StationCode) == 0 && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Alarm, item.StationCode))
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskType >= TaskTypeEnum.Inbound.ObjToInt() && x.TaskState == TaskStatusEnum.RGV_NEW.ObjToInt() && x.RGVCode == item.StationCode);
+ if (task != null)
+ {
+ //鍐欏叆RGV浠诲姟
+ device.SetValue(W_RGVConveyorLineDBName.W_TaskNo, task.TaskNum, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_StartPos, task.SourceAddress.ObjToInt(), item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_TaskType, 2, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_EndPos, task.NextAddress.ObjToInt(), item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_STB, true, item.StationCode);
+ _taskService.UpdateTask(task, TaskStatusEnum.RGV_Executing);
+ }
+ Dt_Task task1 = _taskRepository.QueryFirst(x => x.TaskType >= TaskTypeEnum.Outbound.ObjToInt() && x.TaskType <= TaskTypeEnum.Inbound.ObjToInt() && x.TaskState == TaskStatusEnum.RGV_Execute.ObjToInt() && x.RGVCode == item.StationCode);
+ if (task1 != null)
+ {
+ //鍐欏叆RGV浠诲姟
+ device.SetValue(W_RGVConveyorLineDBName.W_TaskNo, task1.TaskNum, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_StartPos, task1.CurrentAddress, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_TaskType, 2, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_EndPos, task1.TargetAddress, item.StationCode);
+ device.SetValue(W_RGVConveyorLineDBName.W_STB, true, item.StationCode);
+ _taskService.UpdateTask(task1, TaskStatusEnum.RGV_Executing);
+ }
+ }
+
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_ACK, item.StationCode))
+ {
+ device.SetValue(W_RGVConveyorLineDBName.W_STB, false, item.StationCode);
+ }
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Pcikfinish, item.StationCode) && device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_STB, item.StationCode))
+ {
+ device.SetValue(W_RGVConveyorLineDBName.W_ACK, true, item.StationCode);
+ }
+ if (!device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_Pcikfinish, item.StationCode) && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_STB, item.StationCode))
+ {
+ device.SetValue(W_RGVConveyorLineDBName.W_ACK, false, item.StationCode);
+ }
+ if (device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_TaskFinish, item.StationCode) && !device.GetValue<R_RGVConveyorLineDBName, bool>(R_RGVConveyorLineDBName.R_STB, item.StationCode))
+ {
+ device.SetValue(W_RGVConveyorLineDBName.W_ACK, false, item.StationCode);
+ }
+ }
+ catch (Exception ex)
+ {
+ }
+
+ //DeviceProDTO? deviceProRead = device.DeviceProDTOs.Where(x => x.DeviceChildCode == item.StationCode && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+
+ //DeviceProDTO? deviceProWrite = device.DeviceProDTOs.Where(x => x.DeviceChildCode == item.StationCode && x.DeviceProParamType == nameof(W_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+
+ //if (deviceProRead != null && deviceProWrite != null)
+ //{
+ // R_ConveyorLineInfo conveyorLineInfoRead = device.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+
+ // R_ConveyorLineInfo conveyorLineInfoReadRGV = device.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+
+ // W_ConveyorLineInfo conveyorLineInfoWrite = device.Communicator.ReadCustomer<W_ConveyorLineInfo>(deviceProWrite.DeviceProAddress);
+ // if (conveyorLineInfoRead == null || conveyorLineInfoWrite == null)
+ // {
+ // continue;
+ // }
+
+ // R_ConveyorLineStatus conveyorLineStatus = conveyorLineInfoRead.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+
+ // ConveyorLineSignal conveyorLineSignalRead = conveyorLineInfoRead.Signal.ByteToBoolObject<ConveyorLineSignal>();
+
+ // ConveyorLineSignal conveyorLineSignalWrite = conveyorLineInfoWrite.Signal.ByteToBoolObject<ConveyorLineSignal>();
+ // if (conveyorLineSignalRead.STB && !conveyorLineSignalWrite.ACK && !string.IsNullOrEmpty(conveyorLineInfoRead.Barcode) && conveyorLineInfoRead.TaskNo == 0)//鍏ュ簱
+ // {
+ // Dt_Task task = _taskRepository.QueryFirst(x => x.TaskType >= TaskTypeEnum.Inbound.ObjToInt() && x.TaskState == TaskStatusEnum.RGV_Execute.ObjToInt() && x.WarehouseId == warehouseDevice.WarehouseId);
+ // if (task != null)
+ // {
+ // //鍐欏叆RGV浠诲姟
+ // device.SetValue(W_ConveyorLineDB.TaskNo, task.TaskNum, item.StationCode);
+ // device.SetValue(W_ConveyorLineDB.StartPos, task.CurrentAddress, item.StationCode);
+ // device.SetValue(W_ConveyorLineDB.Spare1, ConveyorWorkTypeEnum.Inbound.ObjToInt(), item.StationCode);
+ // device.SetValue(W_ConveyorLineDB.EndPos, task.TargetAddress, item.StationCode);
+ // device.SetValue(W_ConveyorLineDB.ACK, true, item.StationCode);
+ // _taskService.UpdateTask(task, TaskStatusEnum.RGV_Executing);
+ // }
+ // }
+ // else if (conveyorLineSignalRead.STB /*&& conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm*/ && !conveyorLineSignalWrite.ACK && conveyorLineInfoRead.TaskNo > 0)//鍑哄簱
+ // {
+ // WriteDebug(device.DeviceName, $"浠诲姟瀹屾垚,浠诲姟鍙�:{conveyorLineInfoRead.TaskNo}");
+ // _taskService.TaskCompleted(conveyorLineInfoRead.TaskNo);
+ // device.SetValue(W_ConveyorLineDB.ACK, true, item.StationCode);
+ // }
+ //}
+ //else
+ //{
+ // WriteError(device.DeviceName, $"鏈壘鍒拌澶囧瓙缂栧彿{item.StationCode}鐨勫崗璁俊鎭�");
+ //}
+ }
+ }
+
+ return Task.CompletedTask;
+ }
+ }
+}
diff --git "a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_CP.cs" "b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_CP.cs"
new file mode 100644
index 0000000..61b1a9c
--- /dev/null
+++ "b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_CP.cs"
@@ -0,0 +1,441 @@
+锘縰sing Microsoft.AspNetCore.Components.Routing;
+using Quartz;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Common.TaskEnum;
+using WIDESEAWCS_Core.Enums;
+using WIDESEAWCS_IBasicInfoRepository;
+using WIDESEAWCS_ITaskInfoRepository;
+using WIDESEAWCS_ITaskInfoService;
+using WIDESEAWCS_Model.Models;
+using WIDESEAWCS_QuartzJob;
+using WIDESEAWCS_QuartzJob.DeviceBase;
+using WIDESEAWCS_QuartzJob.Models;
+using WIDESEAWCS_QuartzJob.Service;
+using WIDESEAWCS_QuartzJob.StackerCrane.Enum;
+using WIDESEAWCS_Tasks.StackerCraneJob;
+using WIDESEAWCS_Tasks;
+using WIDESEAWCS_Common.APIEnum;
+using WIDESEAWCS_Core.Helper;
+using WIDESEAWCS_Core;
+using WIDESEAWCS_Core.Caches;
+using Newtonsoft.Json;
+using WIDESEAWCS_TaskInfoService;
+using WIDESEAWCS_Tasks.ConveyorLineJob;
+using WIDESEAWCS_QuartzJob.Repository;
+using Autofac.Core;
+using WIDESEAWCS_DTO.TaskInfo;
+using AutoMapper;
+using System.Collections;
+using WIDESEAWCS_Common.Helper;
+using WIDESEAWCS_QuartzJob.DTO;
+
+namespace WIDESEAWCS_Tasks
+{
+ [DisallowConcurrentExecution]
+ public class StackerCraneJob_CP : JobBase, IJob
+ {
+ private readonly IMapper _mapper;
+ private readonly ICacheService _cacheService;
+ private readonly ITaskService _taskService;
+ private readonly ITaskExecuteDetailService _taskExecuteDetailService;
+ private readonly ITaskRepository _taskRepository;
+ private readonly IRouterService _routerService;
+ private readonly IStationMangerRepository _stationMangerRepository;
+ private readonly IRouterRepository _routerRepository;
+ private List<Dt_ApiInfo> apiInfos;
+ private readonly List<Dt_WarehouseDevice> warehouseDevices;
+
+ public StackerCraneJob_CP(IMapper mapper, ITaskService taskService, ICacheService cacheService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IRouterService routerService, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository)
+ {
+ _mapper = mapper;
+ _taskService = taskService;
+ _taskExecuteDetailService = taskExecuteDetailService;
+ _taskRepository = taskRepository;
+ _routerService = routerService;
+ _stationMangerRepository = stationMangerRepository;
+ _cacheService = cacheService;
+ _routerRepository = routerRepository;
+
+ string? apiInfoStr = _cacheService.Get("apiInfos");
+ if (!string.IsNullOrEmpty(apiInfoStr))
+ {
+ List<Dt_ApiInfo>? infos = JsonConvert.DeserializeObject<List<Dt_ApiInfo>>(apiInfoStr);
+ if (infos == null || infos.Count == 0)
+ {
+ apiInfos = new List<Dt_ApiInfo>();
+ }
+ else
+ {
+ apiInfos = infos;
+ }
+ }
+
+
+ string? warehouseDevicesStr = _cacheService.Get<string>(nameof(Dt_WarehouseDevice));
+ if (!string.IsNullOrEmpty(warehouseDevicesStr))
+ {
+ warehouseDevices = JsonConvert.DeserializeObject<List<Dt_WarehouseDevice>>(warehouseDevicesStr) ?? new List<Dt_WarehouseDevice>();
+ }
+ else
+ {
+ warehouseDevices = new List<Dt_WarehouseDevice>();
+ }
+ }
+
+ public Task Execute(IJobExecutionContext context)
+ {
+ try
+ {
+ CommonStackerCrane commonStackerCrane = (CommonStackerCrane)context.JobDetail.JobDataMap.Get("JobParams");
+ if (commonStackerCrane != null)
+ {
+ Dt_WarehouseDevice? warehouseDevice = warehouseDevices.FirstOrDefault(x => x.DeviceCode == commonStackerCrane.DeviceCode);
+ if (warehouseDevice == null)
+ {
+ WriteError(commonStackerCrane.DeviceName, $"璇烽厤缃粨搴撹澶囦俊鎭�");
+ return Task.CompletedTask;
+ }
+
+ if (!commonStackerCrane.IsEventSubscribed)
+ {
+ commonStackerCrane.StackerCraneTaskCompletedEventHandler += CommonStackerCrane_StackerCraneTaskCompletedEventHandler;//璁㈤槄浠诲姟瀹屾垚浜嬩欢
+ }
+ commonStackerCrane.CheckStackerCraneTaskCompleted();//闃叉浠诲姟瀹屾垚浜嬩欢鐩戞祴瓒呮椂锛屽啀鎵嬪姩瑙﹀彂涓�娆�
+ if (commonStackerCrane.StackerCraneAutoStatusValue == StackerCraneAutoStatus.Automatic && commonStackerCrane.StackerCraneStatusValue == StackerCraneStatus.Normal && commonStackerCrane.StackerCraneWorkStatusValue == StackerCraneWorkStatus.Standby)
+ {
+ Thread.Sleep(1000);
+ Dt_Task? task = GetTask(commonStackerCrane);
+ if (task != null)
+ {
+ StackerCraneTaskCommand? stackerCraneTaskCommand = ConvertToStackerCraneTaskCommand(task);
+ if (stackerCraneTaskCommand != null)
+ {
+ bool sendFlag = commonStackerCrane.SendCommand(stackerCraneTaskCommand);
+ if (sendFlag)
+ {
+ commonStackerCrane.LastTaskType = task.TaskType;
+ task.Dispatchertime = DateTime.Now;
+ task.ExceptionMessage = "";
+ _taskService.UpdateTask(task, TaskStatusEnum.SC_Executing);
+ //寤舵椂1s
+ Thread.Sleep(1000);
+ }
+ }
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ WriteError(nameof(CommonStackerCraneJob), ex.Message, ex);
+ }
+ return Task.CompletedTask;
+ }
+
+ /// <summary>
+ /// 浠诲姟瀹屾垚浜嬩欢璁㈤槄鐨勬柟娉�
+ /// </summary>
+ /// <param name="sender"></param>
+ /// <param name="e"></param>
+ private void CommonStackerCrane_StackerCraneTaskCompletedEventHandler(object? sender, WIDESEAWCS_QuartzJob.StackerCrane.StackerCraneTaskCompletedEventArgs e)
+ {
+ try
+ {
+ CommonStackerCrane? commonStackerCrane = sender as CommonStackerCrane;
+ if (commonStackerCrane != null)
+ {
+ //if (commonStackerCrane.GetValue<StackerCraneDBName, short>(StackerCraneDBName.WorkType) != 5)
+ {
+ if (e.TaskNum != 0)
+ {
+ WriteDebug(commonStackerCrane.DeviceCode, $"璇诲彇鍒颁换鍔″畬鎴�,浠诲姟鍙�:{e.TaskNum}");
+ StackerCraneTaskCompleted(e.TaskNum, commonStackerCrane.DeviceCode);
+ commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5);
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ WriteError(nameof(StackerCraneJob_BC), "浠诲姟瀹屾垚澶辫触", ex);
+ }
+ }
+
+ public WebResponseContent StackerCraneTaskCompleted(int taskNum, string deviceCode)
+ {
+ try
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskNum == taskNum);
+ if (task != null)
+ {
+ if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ Dt_StationManger stationManger = _stationMangerRepository.QueryFirst(x => x.StationCode == task.NextAddress && x.StackerCraneCode == deviceCode);
+ if (stationManger == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(taskNum, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ WriteError(deviceCode, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ return WebResponseContent.Instance.Error($"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ }
+ _taskService.UpdateTask(task, TaskStatusEnum.Line_Execute, deviceCode: stationManger.StationDeviceCode, currentAddress: task.NextAddress);
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup || task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup)
+ {
+ _taskService.TaskCompleted(taskNum);
+ }
+ else
+ {
+ WriteError(deviceCode, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ _taskExecuteDetailService.AddTaskExecuteDetail(taskNum, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ _taskService.UpdateTaskExceptionMessage(taskNum, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ }
+
+ }
+ else
+ {
+ WriteError(deviceCode, $"鏈壘鍒颁换鍔′俊鎭�,浠诲姟鍙�:{taskNum}");
+ return WebResponseContent.Instance.Error($"鏈壘鍒颁换鍔′俊鎭�,浠诲姟鍙�:{taskNum}");
+ }
+
+ return WebResponseContent.Instance.OK();
+ }
+ catch (Exception ex)
+ {
+ WriteError(deviceCode, $"浠诲姟瀹屾垚閿欒", ex);
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
+
+ /// <summary>
+ /// 鑾峰彇浠诲姟
+ /// </summary>
+ /// <param name="commonStackerCrane">鍫嗗灈鏈哄璞�</param>
+ /// <returns></returns>
+ private Dt_Task? GetTask(CommonStackerCrane commonStackerCrane)
+ {
+ try
+ {
+ //Dt_Task oldTask = _taskRepository.QueryFirst(x => x.DeviceCode == commonStackerCrane.DeviceCode && x.TaskState == TaskStatusEnum.SC_Executing.ObjToInt());
+ //if (oldTask != null)
+ //{
+ // StackerCraneTaskCompleted(oldTask.TaskNum, commonStackerCrane.DeviceCode);
+ //}
+ }
+ catch { }
+ if (_taskRepository.QueryFirst(x => x.DeviceCode == commonStackerCrane.DeviceCode && x.TaskState == TaskStatusEnum.SC_Executing.ObjToInt()) != null)
+ {
+ return null;
+ }
+
+ WriteDebug(commonStackerCrane.DeviceCode, $"璇诲彇鍒板綋鍓嶄换鍔″彿:{commonStackerCrane.CurrentTaskNum}");
+ Dt_Task task;
+ if (commonStackerCrane.LastTaskType == null)
+ {
+ task = _taskService.QueryStackerCraneTask(commonStackerCrane.DeviceCode);
+ }
+ else
+ {
+ if (commonStackerCrane.LastTaskType.GetValueOrDefault().GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneOutTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ else
+ {
+ task = _taskService.QueryStackerCraneOutTask(commonStackerCrane.DeviceCode);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ }
+
+ if (task != null && task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ task = OutTaskStationIsOccupied(task);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ return task;
+ }
+
+
+ /// <summary>
+ /// 鍑哄簱浠诲姟鍒ゆ柇鍑哄簱绔欏彴鏄惁琚崰鐢�
+ /// </summary>
+ /// <param name="task">浠诲姟瀹炰綋</param>
+ /// <returns>濡傛灉鏈鍗犵敤锛岃繑鍥炰紶鍏ョ殑浠诲姟淇℃伅锛屽惁鍒欙紝杩斿洖null</returns>
+ private Dt_Task? OutTaskStationIsOccupied([NotNull] Dt_Task task)
+ {
+ Dt_StationManger? stationManger = _stationMangerRepository.QueryFirst(x => (x.StationCode == task.NextAddress || x.StackerCraneStationCode == task.NextAddress) && x.StackerCraneCode == task.DeviceCode);
+ if (stationManger != null)
+ {
+ IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == stationManger.StationDeviceCode);
+ if (device != null)
+ {
+ CommonConveyorLine conveyorLine = (CommonConveyorLine)device;
+ DeviceProDTO? deviceProRead = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == stationManger.StationCode && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+ if (deviceProRead != null)
+ {
+ R_ConveyorLineInfo conveyorLineInfoRead = conveyorLine.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+ if (conveyorLineInfoRead != null)
+ {
+ R_ConveyorLineStatus conveyorLineStatus = conveyorLineInfoRead.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+
+ if (conveyorLineStatus.Online && conveyorLineStatus.Free && !conveyorLineStatus.Alarm && !conveyorLineStatus.Goods)
+ {
+ return task;
+ }
+ }
+ }
+ }
+ else
+ {
+ WriteError(task.DeviceCode, $"鏈壘鍒板嚭搴撶珯鍙般�恵stationManger.StationDeviceCode}銆戝搴旂殑閫氳瀵硅薄锛屾棤娉曞垽鏂嚭搴撶珯鍙版槸鍚﹁鍗犵敤");
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒板嚭搴撶珯鍙般�恵stationManger.StationDeviceCode}銆戝搴旂殑閫氳瀵硅薄锛屾棤娉曞垽鏂嚭搴撶珯鍙版槸鍚﹁鍗犵敤");
+ }
+ }
+ else
+ {
+ WriteError(task.DeviceCode, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鏍¢獙绔欏彴");
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鏍¢獙绔欏彴");
+ }
+ return null;
+ }
+
+ /// <summary>
+ /// 浠诲姟瀹炰綋杞崲鎴愬懡浠odel
+ /// </summary>
+ /// <param name="task">浠诲姟瀹炰綋</param>
+ /// <returns></returns>
+ /// <exception cref="Exception"></exception>
+ public StackerCraneTaskCommand? ConvertToStackerCraneTaskCommand([NotNull] Dt_Task task)
+ {
+ StackerCraneTaskCommand stackerCraneTaskCommand = new StackerCraneTaskCommand();
+
+ stackerCraneTaskCommand.Barcode = task.PalletCode;
+ stackerCraneTaskCommand.TaskNum = task.TaskNum;
+ stackerCraneTaskCommand.WorkType = 1;
+ //stackerCraneTaskCommand.TrayType = (short)task.PalletType;
+ if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)//鍒ゆ柇鏄惁鏄叆搴撲换鍔�
+ {
+ Dt_StationManger dt_Station = _stationMangerRepository.QueryFirst(x => x.StationCode == task.CurrentAddress);
+ if (dt_Station == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ string[] startCodes = dt_Station.StackerCraneStationCode.Split("-");
+ if (startCodes.Length == 3)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(startCodes[0]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(startCodes[1]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(startCodes[2]);
+ }
+ else
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍏ュ簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍏ュ簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+
+ string[] targetCodes = task.TargetAddress.Split("-");
+ if (targetCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[2]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍏ュ簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍏ュ簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ Dt_StationManger dt_Station = _stationMangerRepository.QueryFirst(x => x.StationCode == task.NextAddress);
+ if (dt_Station == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ string[] targetCodes = dt_Station.StackerCraneStationCode.Split("-");
+ if (targetCodes.Length == 3)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[0]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[2]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+
+ string[] sourceCodes = task.SourceAddress.Split("-");
+ if (sourceCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[1]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[2]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup)
+ {
+ string[] targetCodes = task.NextAddress.Split("-");
+ if (targetCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[2]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"绉诲簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"绉诲簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ string[] sourceCodes = task.CurrentAddress.Split("-");
+ if (sourceCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[1]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[2]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"绉诲簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"绉诲簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ }
+ return stackerCraneTaskCommand;
+ }
+ }
+}
diff --git "a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_FL.cs" "b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_FL.cs"
new file mode 100644
index 0000000..4a11f84
--- /dev/null
+++ "b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_FL.cs"
@@ -0,0 +1,441 @@
+锘縰sing Microsoft.AspNetCore.Components.Routing;
+using Quartz;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Common.TaskEnum;
+using WIDESEAWCS_Core.Enums;
+using WIDESEAWCS_IBasicInfoRepository;
+using WIDESEAWCS_ITaskInfoRepository;
+using WIDESEAWCS_ITaskInfoService;
+using WIDESEAWCS_Model.Models;
+using WIDESEAWCS_QuartzJob;
+using WIDESEAWCS_QuartzJob.DeviceBase;
+using WIDESEAWCS_QuartzJob.Models;
+using WIDESEAWCS_QuartzJob.Service;
+using WIDESEAWCS_QuartzJob.StackerCrane.Enum;
+using WIDESEAWCS_Tasks.StackerCraneJob;
+using WIDESEAWCS_Tasks;
+using WIDESEAWCS_Common.APIEnum;
+using WIDESEAWCS_Core.Helper;
+using WIDESEAWCS_Core;
+using WIDESEAWCS_Core.Caches;
+using Newtonsoft.Json;
+using WIDESEAWCS_TaskInfoService;
+using WIDESEAWCS_Tasks.ConveyorLineJob;
+using WIDESEAWCS_QuartzJob.Repository;
+using Autofac.Core;
+using WIDESEAWCS_DTO.TaskInfo;
+using AutoMapper;
+using System.Collections;
+using WIDESEAWCS_Common.Helper;
+using WIDESEAWCS_QuartzJob.DTO;
+
+namespace WIDESEAWCS_Tasks
+{
+ [DisallowConcurrentExecution]
+ public class StackerCraneJob_FL : JobBase, IJob
+ {
+ private readonly IMapper _mapper;
+ private readonly ICacheService _cacheService;
+ private readonly ITaskService _taskService;
+ private readonly ITaskExecuteDetailService _taskExecuteDetailService;
+ private readonly ITaskRepository _taskRepository;
+ private readonly IRouterService _routerService;
+ private readonly IStationMangerRepository _stationMangerRepository;
+ private readonly IRouterRepository _routerRepository;
+ private List<Dt_ApiInfo> apiInfos;
+ private readonly List<Dt_WarehouseDevice> warehouseDevices;
+
+ public StackerCraneJob_FL(IMapper mapper, ITaskService taskService, ICacheService cacheService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IRouterService routerService, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository)
+ {
+ _mapper = mapper;
+ _taskService = taskService;
+ _taskExecuteDetailService = taskExecuteDetailService;
+ _taskRepository = taskRepository;
+ _routerService = routerService;
+ _stationMangerRepository = stationMangerRepository;
+ _cacheService = cacheService;
+ _routerRepository = routerRepository;
+
+ string? apiInfoStr = _cacheService.Get("apiInfos");
+ if (!string.IsNullOrEmpty(apiInfoStr))
+ {
+ List<Dt_ApiInfo>? infos = JsonConvert.DeserializeObject<List<Dt_ApiInfo>>(apiInfoStr);
+ if (infos == null || infos.Count == 0)
+ {
+ apiInfos = new List<Dt_ApiInfo>();
+ }
+ else
+ {
+ apiInfos = infos;
+ }
+ }
+
+
+ string? warehouseDevicesStr = _cacheService.Get<string>(nameof(Dt_WarehouseDevice));
+ if (!string.IsNullOrEmpty(warehouseDevicesStr))
+ {
+ warehouseDevices = JsonConvert.DeserializeObject<List<Dt_WarehouseDevice>>(warehouseDevicesStr) ?? new List<Dt_WarehouseDevice>();
+ }
+ else
+ {
+ warehouseDevices = new List<Dt_WarehouseDevice>();
+ }
+ }
+
+ public Task Execute(IJobExecutionContext context)
+ {
+ try
+ {
+ CommonStackerCrane commonStackerCrane = (CommonStackerCrane)context.JobDetail.JobDataMap.Get("JobParams");
+ if (commonStackerCrane != null)
+ {
+ Dt_WarehouseDevice? warehouseDevice = warehouseDevices.FirstOrDefault(x => x.DeviceCode == commonStackerCrane.DeviceCode);
+ if (warehouseDevice == null)
+ {
+ WriteError(commonStackerCrane.DeviceName, $"璇烽厤缃粨搴撹澶囦俊鎭�");
+ return Task.CompletedTask;
+ }
+
+ if (!commonStackerCrane.IsEventSubscribed)
+ {
+ commonStackerCrane.StackerCraneTaskCompletedEventHandler += CommonStackerCrane_StackerCraneTaskCompletedEventHandler;//璁㈤槄浠诲姟瀹屾垚浜嬩欢
+ }
+ commonStackerCrane.CheckStackerCraneTaskCompleted();//闃叉浠诲姟瀹屾垚浜嬩欢鐩戞祴瓒呮椂锛屽啀鎵嬪姩瑙﹀彂涓�娆�
+ if (commonStackerCrane.StackerCraneAutoStatusValue == StackerCraneAutoStatus.Automatic && commonStackerCrane.StackerCraneStatusValue == StackerCraneStatus.Normal && commonStackerCrane.StackerCraneWorkStatusValue == StackerCraneWorkStatus.Standby)
+ {
+ Thread.Sleep(1000);
+ Dt_Task? task = GetTask(commonStackerCrane);
+ if (task != null)
+ {
+ StackerCraneTaskCommand? stackerCraneTaskCommand = ConvertToStackerCraneTaskCommand(task);
+ if (stackerCraneTaskCommand != null)
+ {
+ bool sendFlag = commonStackerCrane.SendCommand(stackerCraneTaskCommand);
+ if (sendFlag)
+ {
+ commonStackerCrane.LastTaskType = task.TaskType;
+ task.Dispatchertime = DateTime.Now;
+ task.ExceptionMessage = "";
+ _taskService.UpdateTask(task, TaskStatusEnum.SC_Executing);
+ //寤舵椂1s
+ Thread.Sleep(1000);
+ }
+ }
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ WriteError(nameof(CommonStackerCraneJob), ex.Message, ex);
+ }
+ return Task.CompletedTask;
+ }
+
+ /// <summary>
+ /// 浠诲姟瀹屾垚浜嬩欢璁㈤槄鐨勬柟娉�
+ /// </summary>
+ /// <param name="sender"></param>
+ /// <param name="e"></param>
+ private void CommonStackerCrane_StackerCraneTaskCompletedEventHandler(object? sender, WIDESEAWCS_QuartzJob.StackerCrane.StackerCraneTaskCompletedEventArgs e)
+ {
+ try
+ {
+ CommonStackerCrane? commonStackerCrane = sender as CommonStackerCrane;
+ if (commonStackerCrane != null)
+ {
+ //if (commonStackerCrane.GetValue<StackerCraneDBName, short>(StackerCraneDBName.WorkType) != 5)
+ {
+ if (e.TaskNum != 0)
+ {
+ WriteDebug(commonStackerCrane.DeviceCode, $"璇诲彇鍒颁换鍔″畬鎴�,浠诲姟鍙�:{e.TaskNum}");
+ StackerCraneTaskCompleted(e.TaskNum, commonStackerCrane.DeviceCode);
+ commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5);
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ WriteError(nameof(StackerCraneJob_BC), "浠诲姟瀹屾垚澶辫触", ex);
+ }
+ }
+
+ public WebResponseContent StackerCraneTaskCompleted(int taskNum, string deviceCode)
+ {
+ try
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskNum == taskNum);
+ if (task != null)
+ {
+ if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ Dt_StationManger stationManger = _stationMangerRepository.QueryFirst(x => x.StationCode == task.NextAddress && x.StackerCraneCode == deviceCode);
+ if (stationManger == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(taskNum, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ WriteError(deviceCode, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ return WebResponseContent.Instance.Error($"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ }
+ _taskService.UpdateTask(task, TaskStatusEnum.Line_Execute, deviceCode: stationManger.StationDeviceCode, currentAddress: task.NextAddress);
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup || task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup)
+ {
+ _taskService.TaskCompleted(taskNum);
+ }
+ else
+ {
+ WriteError(deviceCode, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ _taskExecuteDetailService.AddTaskExecuteDetail(taskNum, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ _taskService.UpdateTaskExceptionMessage(taskNum, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ }
+
+ }
+ else
+ {
+ WriteError(deviceCode, $"鏈壘鍒颁换鍔′俊鎭�,浠诲姟鍙�:{taskNum}");
+ return WebResponseContent.Instance.Error($"鏈壘鍒颁换鍔′俊鎭�,浠诲姟鍙�:{taskNum}");
+ }
+
+ return WebResponseContent.Instance.OK();
+ }
+ catch (Exception ex)
+ {
+ WriteError(deviceCode, $"浠诲姟瀹屾垚閿欒", ex);
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
+
+ /// <summary>
+ /// 鑾峰彇浠诲姟
+ /// </summary>
+ /// <param name="commonStackerCrane">鍫嗗灈鏈哄璞�</param>
+ /// <returns></returns>
+ private Dt_Task? GetTask(CommonStackerCrane commonStackerCrane)
+ {
+ try
+ {
+ //Dt_Task oldTask = _taskRepository.QueryFirst(x => x.DeviceCode == commonStackerCrane.DeviceCode && x.TaskState == TaskStatusEnum.SC_Executing.ObjToInt());
+ //if (oldTask != null)
+ //{
+ // StackerCraneTaskCompleted(oldTask.TaskNum, commonStackerCrane.DeviceCode);
+ //}
+ }
+ catch { }
+ if (_taskRepository.QueryFirst(x => x.DeviceCode == commonStackerCrane.DeviceCode && x.TaskState == TaskStatusEnum.SC_Executing.ObjToInt()) != null)
+ {
+ return null;
+ }
+
+ WriteDebug(commonStackerCrane.DeviceCode, $"璇诲彇鍒板綋鍓嶄换鍔″彿:{commonStackerCrane.CurrentTaskNum}");
+ Dt_Task task;
+ if (commonStackerCrane.LastTaskType == null)
+ {
+ task = _taskService.QueryStackerCraneTask(commonStackerCrane.DeviceCode);
+ }
+ else
+ {
+ if (commonStackerCrane.LastTaskType.GetValueOrDefault().GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneOutTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ else
+ {
+ task = _taskService.QueryStackerCraneOutTask(commonStackerCrane.DeviceCode);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ }
+
+ if (task != null && task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ task = OutTaskStationIsOccupied(task);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ return task;
+ }
+
+
+ /// <summary>
+ /// 鍑哄簱浠诲姟鍒ゆ柇鍑哄簱绔欏彴鏄惁琚崰鐢�
+ /// </summary>
+ /// <param name="task">浠诲姟瀹炰綋</param>
+ /// <returns>濡傛灉鏈鍗犵敤锛岃繑鍥炰紶鍏ョ殑浠诲姟淇℃伅锛屽惁鍒欙紝杩斿洖null</returns>
+ private Dt_Task? OutTaskStationIsOccupied([NotNull] Dt_Task task)
+ {
+ Dt_StationManger? stationManger = _stationMangerRepository.QueryFirst(x => (x.StationCode == task.NextAddress || x.StackerCraneStationCode == task.NextAddress) && x.StackerCraneCode == task.DeviceCode);
+ if (stationManger != null)
+ {
+ IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == stationManger.StationDeviceCode);
+ if (device != null)
+ {
+ CommonConveyorLine conveyorLine = (CommonConveyorLine)device;
+ DeviceProDTO? deviceProRead = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == stationManger.StationCode && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+ if (deviceProRead != null)
+ {
+ R_ConveyorLineInfo conveyorLineInfoRead = conveyorLine.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+ if (conveyorLineInfoRead != null)
+ {
+ R_ConveyorLineStatus conveyorLineStatus = conveyorLineInfoRead.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+
+ if (conveyorLineStatus.Online && conveyorLineStatus.Free && !conveyorLineStatus.Alarm && !conveyorLineStatus.Goods)
+ {
+ return task;
+ }
+ }
+ }
+ }
+ else
+ {
+ WriteError(task.DeviceCode, $"鏈壘鍒板嚭搴撶珯鍙般�恵stationManger.StationDeviceCode}銆戝搴旂殑閫氳瀵硅薄锛屾棤娉曞垽鏂嚭搴撶珯鍙版槸鍚﹁鍗犵敤");
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒板嚭搴撶珯鍙般�恵stationManger.StationDeviceCode}銆戝搴旂殑閫氳瀵硅薄锛屾棤娉曞垽鏂嚭搴撶珯鍙版槸鍚﹁鍗犵敤");
+ }
+ }
+ else
+ {
+ WriteError(task.DeviceCode, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鏍¢獙绔欏彴");
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鏍¢獙绔欏彴");
+ }
+ return null;
+ }
+
+ /// <summary>
+ /// 浠诲姟瀹炰綋杞崲鎴愬懡浠odel
+ /// </summary>
+ /// <param name="task">浠诲姟瀹炰綋</param>
+ /// <returns></returns>
+ /// <exception cref="Exception"></exception>
+ public StackerCraneTaskCommand? ConvertToStackerCraneTaskCommand([NotNull] Dt_Task task)
+ {
+ StackerCraneTaskCommand stackerCraneTaskCommand = new StackerCraneTaskCommand();
+
+ stackerCraneTaskCommand.Barcode = task.PalletCode;
+ stackerCraneTaskCommand.TaskNum = task.TaskNum;
+ stackerCraneTaskCommand.WorkType = 1;
+ //stackerCraneTaskCommand.TrayType = (short)task.PalletType;
+ if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)//鍒ゆ柇鏄惁鏄叆搴撲换鍔�
+ {
+ Dt_StationManger dt_Station = _stationMangerRepository.QueryFirst(x => x.StationCode == task.CurrentAddress);
+ if (dt_Station == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ string[] startCodes = dt_Station.StackerCraneStationCode.Split("-");
+ if (startCodes.Length == 3)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(startCodes[0]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(startCodes[1]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(startCodes[2]);
+ }
+ else
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍏ュ簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍏ュ簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+
+ string[] targetCodes = task.TargetAddress.Split("-");
+ if (targetCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[2]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍏ュ簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍏ュ簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ Dt_StationManger dt_Station = _stationMangerRepository.QueryFirst(x => x.StationCode == task.NextAddress);
+ if (dt_Station == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ string[] targetCodes = dt_Station.StackerCraneStationCode.Split("-");
+ if (targetCodes.Length == 3)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[0]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[2]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+
+ string[] sourceCodes = task.SourceAddress.Split("-");
+ if (sourceCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[1]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[2]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup)
+ {
+ string[] targetCodes = task.NextAddress.Split("-");
+ if (targetCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[2]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"绉诲簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"绉诲簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ string[] sourceCodes = task.CurrentAddress.Split("-");
+ if (sourceCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[1]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[2]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"绉诲簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"绉诲簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ }
+ return stackerCraneTaskCommand;
+ }
+ }
+}
diff --git "a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_YS.cs" "b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_YS.cs"
new file mode 100644
index 0000000..3c2ad85
--- /dev/null
+++ "b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\240\206\345\236\233\346\234\272/StackerCraneJob_YS.cs"
@@ -0,0 +1,441 @@
+锘縰sing Microsoft.AspNetCore.Components.Routing;
+using Quartz;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Common.TaskEnum;
+using WIDESEAWCS_Core.Enums;
+using WIDESEAWCS_IBasicInfoRepository;
+using WIDESEAWCS_ITaskInfoRepository;
+using WIDESEAWCS_ITaskInfoService;
+using WIDESEAWCS_Model.Models;
+using WIDESEAWCS_QuartzJob;
+using WIDESEAWCS_QuartzJob.DeviceBase;
+using WIDESEAWCS_QuartzJob.Models;
+using WIDESEAWCS_QuartzJob.Service;
+using WIDESEAWCS_QuartzJob.StackerCrane.Enum;
+using WIDESEAWCS_Tasks.StackerCraneJob;
+using WIDESEAWCS_Tasks;
+using WIDESEAWCS_Common.APIEnum;
+using WIDESEAWCS_Core.Helper;
+using WIDESEAWCS_Core;
+using WIDESEAWCS_Core.Caches;
+using Newtonsoft.Json;
+using WIDESEAWCS_TaskInfoService;
+using WIDESEAWCS_Tasks.ConveyorLineJob;
+using WIDESEAWCS_QuartzJob.Repository;
+using Autofac.Core;
+using WIDESEAWCS_DTO.TaskInfo;
+using AutoMapper;
+using System.Collections;
+using WIDESEAWCS_Common.Helper;
+using WIDESEAWCS_QuartzJob.DTO;
+
+namespace WIDESEAWCS_Tasks
+{
+ [DisallowConcurrentExecution]
+ public class StackerCraneJob_YS : JobBase, IJob
+ {
+ private readonly IMapper _mapper;
+ private readonly ICacheService _cacheService;
+ private readonly ITaskService _taskService;
+ private readonly ITaskExecuteDetailService _taskExecuteDetailService;
+ private readonly ITaskRepository _taskRepository;
+ private readonly IRouterService _routerService;
+ private readonly IStationMangerRepository _stationMangerRepository;
+ private readonly IRouterRepository _routerRepository;
+ private List<Dt_ApiInfo> apiInfos;
+ private readonly List<Dt_WarehouseDevice> warehouseDevices;
+
+ public StackerCraneJob_YS(IMapper mapper, ITaskService taskService, ICacheService cacheService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IRouterService routerService, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository)
+ {
+ _mapper = mapper;
+ _taskService = taskService;
+ _taskExecuteDetailService = taskExecuteDetailService;
+ _taskRepository = taskRepository;
+ _routerService = routerService;
+ _stationMangerRepository = stationMangerRepository;
+ _cacheService = cacheService;
+ _routerRepository = routerRepository;
+
+ string? apiInfoStr = _cacheService.Get("apiInfos");
+ if (!string.IsNullOrEmpty(apiInfoStr))
+ {
+ List<Dt_ApiInfo>? infos = JsonConvert.DeserializeObject<List<Dt_ApiInfo>>(apiInfoStr);
+ if (infos == null || infos.Count == 0)
+ {
+ apiInfos = new List<Dt_ApiInfo>();
+ }
+ else
+ {
+ apiInfos = infos;
+ }
+ }
+
+
+ string? warehouseDevicesStr = _cacheService.Get<string>(nameof(Dt_WarehouseDevice));
+ if (!string.IsNullOrEmpty(warehouseDevicesStr))
+ {
+ warehouseDevices = JsonConvert.DeserializeObject<List<Dt_WarehouseDevice>>(warehouseDevicesStr) ?? new List<Dt_WarehouseDevice>();
+ }
+ else
+ {
+ warehouseDevices = new List<Dt_WarehouseDevice>();
+ }
+ }
+
+ public Task Execute(IJobExecutionContext context)
+ {
+ try
+ {
+ CommonStackerCrane commonStackerCrane = (CommonStackerCrane)context.JobDetail.JobDataMap.Get("JobParams");
+ if (commonStackerCrane != null)
+ {
+ Dt_WarehouseDevice? warehouseDevice = warehouseDevices.FirstOrDefault(x => x.DeviceCode == commonStackerCrane.DeviceCode);
+ if (warehouseDevice == null)
+ {
+ WriteError(commonStackerCrane.DeviceName, $"璇烽厤缃粨搴撹澶囦俊鎭�");
+ return Task.CompletedTask;
+ }
+
+ if (!commonStackerCrane.IsEventSubscribed)
+ {
+ commonStackerCrane.StackerCraneTaskCompletedEventHandler += CommonStackerCrane_StackerCraneTaskCompletedEventHandler;//璁㈤槄浠诲姟瀹屾垚浜嬩欢
+ }
+ commonStackerCrane.CheckStackerCraneTaskCompleted();//闃叉浠诲姟瀹屾垚浜嬩欢鐩戞祴瓒呮椂锛屽啀鎵嬪姩瑙﹀彂涓�娆�
+ if (commonStackerCrane.StackerCraneAutoStatusValue == StackerCraneAutoStatus.Automatic && commonStackerCrane.StackerCraneStatusValue == StackerCraneStatus.Normal && commonStackerCrane.StackerCraneWorkStatusValue == StackerCraneWorkStatus.Standby)
+ {
+ Thread.Sleep(1000);
+ Dt_Task? task = GetTask(commonStackerCrane);
+ if (task != null)
+ {
+ StackerCraneTaskCommand? stackerCraneTaskCommand = ConvertToStackerCraneTaskCommand(task);
+ if (stackerCraneTaskCommand != null)
+ {
+ bool sendFlag = commonStackerCrane.SendCommand(stackerCraneTaskCommand);
+ if (sendFlag)
+ {
+ commonStackerCrane.LastTaskType = task.TaskType;
+ task.Dispatchertime = DateTime.Now;
+ task.ExceptionMessage = "";
+ _taskService.UpdateTask(task, TaskStatusEnum.SC_Executing);
+ //寤舵椂1s
+ Thread.Sleep(1000);
+ }
+ }
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ WriteError(nameof(CommonStackerCraneJob), ex.Message, ex);
+ }
+ return Task.CompletedTask;
+ }
+
+ /// <summary>
+ /// 浠诲姟瀹屾垚浜嬩欢璁㈤槄鐨勬柟娉�
+ /// </summary>
+ /// <param name="sender"></param>
+ /// <param name="e"></param>
+ private void CommonStackerCrane_StackerCraneTaskCompletedEventHandler(object? sender, WIDESEAWCS_QuartzJob.StackerCrane.StackerCraneTaskCompletedEventArgs e)
+ {
+ try
+ {
+ CommonStackerCrane? commonStackerCrane = sender as CommonStackerCrane;
+ if (commonStackerCrane != null)
+ {
+ //if (commonStackerCrane.GetValue<StackerCraneDBName, short>(StackerCraneDBName.WorkType) != 5)
+ {
+ if (e.TaskNum != 0)
+ {
+ WriteDebug(commonStackerCrane.DeviceCode, $"璇诲彇鍒颁换鍔″畬鎴�,浠诲姟鍙�:{e.TaskNum}");
+ StackerCraneTaskCompleted(e.TaskNum, commonStackerCrane.DeviceCode);
+ commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5);
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ WriteError(nameof(StackerCraneJob_BC), "浠诲姟瀹屾垚澶辫触", ex);
+ }
+ }
+
+ public WebResponseContent StackerCraneTaskCompleted(int taskNum, string deviceCode)
+ {
+ try
+ {
+ Dt_Task task = _taskRepository.QueryFirst(x => x.TaskNum == taskNum);
+ if (task != null)
+ {
+ if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ Dt_StationManger stationManger = _stationMangerRepository.QueryFirst(x => x.StationCode == task.NextAddress && x.StackerCraneCode == deviceCode);
+ if (stationManger == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(taskNum, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ WriteError(deviceCode, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ return WebResponseContent.Instance.Error($"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+ }
+ _taskService.UpdateTask(task, TaskStatusEnum.Line_Execute, deviceCode: stationManger.StationDeviceCode, currentAddress: task.NextAddress);
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup || task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup)
+ {
+ _taskService.TaskCompleted(taskNum);
+ }
+ else
+ {
+ WriteError(deviceCode, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ _taskExecuteDetailService.AddTaskExecuteDetail(taskNum, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ _taskService.UpdateTaskExceptionMessage(taskNum, $"鏈壘鍒拌浠诲姟绫诲瀷鍥炶皟WMS浠诲姟瀹屾垚鎺ュ彛,{task.TaskType}");
+ }
+
+ }
+ else
+ {
+ WriteError(deviceCode, $"鏈壘鍒颁换鍔′俊鎭�,浠诲姟鍙�:{taskNum}");
+ return WebResponseContent.Instance.Error($"鏈壘鍒颁换鍔′俊鎭�,浠诲姟鍙�:{taskNum}");
+ }
+
+ return WebResponseContent.Instance.OK();
+ }
+ catch (Exception ex)
+ {
+ WriteError(deviceCode, $"浠诲姟瀹屾垚閿欒", ex);
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
+
+ /// <summary>
+ /// 鑾峰彇浠诲姟
+ /// </summary>
+ /// <param name="commonStackerCrane">鍫嗗灈鏈哄璞�</param>
+ /// <returns></returns>
+ private Dt_Task? GetTask(CommonStackerCrane commonStackerCrane)
+ {
+ try
+ {
+ //Dt_Task oldTask = _taskRepository.QueryFirst(x => x.DeviceCode == commonStackerCrane.DeviceCode && x.TaskState == TaskStatusEnum.SC_Executing.ObjToInt());
+ //if (oldTask != null)
+ //{
+ // StackerCraneTaskCompleted(oldTask.TaskNum, commonStackerCrane.DeviceCode);
+ //}
+ }
+ catch { }
+ if (_taskRepository.QueryFirst(x => x.DeviceCode == commonStackerCrane.DeviceCode && x.TaskState == TaskStatusEnum.SC_Executing.ObjToInt()) != null)
+ {
+ return null;
+ }
+
+ WriteDebug(commonStackerCrane.DeviceCode, $"璇诲彇鍒板綋鍓嶄换鍔″彿:{commonStackerCrane.CurrentTaskNum}");
+ Dt_Task task;
+ if (commonStackerCrane.LastTaskType == null)
+ {
+ task = _taskService.QueryStackerCraneTask(commonStackerCrane.DeviceCode);
+ }
+ else
+ {
+ if (commonStackerCrane.LastTaskType.GetValueOrDefault().GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneOutTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ else
+ {
+ task = _taskService.QueryStackerCraneOutTask(commonStackerCrane.DeviceCode);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ }
+
+ if (task != null && task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ task = OutTaskStationIsOccupied(task);
+ if (task == null)
+ {
+ task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+ }
+ }
+ return task;
+ }
+
+
+ /// <summary>
+ /// 鍑哄簱浠诲姟鍒ゆ柇鍑哄簱绔欏彴鏄惁琚崰鐢�
+ /// </summary>
+ /// <param name="task">浠诲姟瀹炰綋</param>
+ /// <returns>濡傛灉鏈鍗犵敤锛岃繑鍥炰紶鍏ョ殑浠诲姟淇℃伅锛屽惁鍒欙紝杩斿洖null</returns>
+ private Dt_Task? OutTaskStationIsOccupied([NotNull] Dt_Task task)
+ {
+ Dt_StationManger? stationManger = _stationMangerRepository.QueryFirst(x => (x.StationCode == task.NextAddress || x.StackerCraneStationCode == task.NextAddress) && x.StackerCraneCode == task.DeviceCode);
+ if (stationManger != null)
+ {
+ IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == stationManger.StationDeviceCode);
+ if (device != null)
+ {
+ CommonConveyorLine conveyorLine = (CommonConveyorLine)device;
+ DeviceProDTO? deviceProRead = conveyorLine.DeviceProDTOs.Where(x => x.DeviceChildCode == stationManger.StationCode && x.DeviceProParamType == nameof(R_ConveyorLineDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
+ if (deviceProRead != null)
+ {
+ R_ConveyorLineInfo conveyorLineInfoRead = conveyorLine.Communicator.ReadCustomer<R_ConveyorLineInfo>(deviceProRead.DeviceProAddress);
+ if (conveyorLineInfoRead != null)
+ {
+ R_ConveyorLineStatus conveyorLineStatus = conveyorLineInfoRead.Status.ByteToBoolObject<R_ConveyorLineStatus>();
+
+ if (conveyorLineStatus.Online && conveyorLineStatus.Free && !conveyorLineStatus.Alarm && !conveyorLineStatus.Goods)
+ {
+ return task;
+ }
+ }
+ }
+ }
+ else
+ {
+ WriteError(task.DeviceCode, $"鏈壘鍒板嚭搴撶珯鍙般�恵stationManger.StationDeviceCode}銆戝搴旂殑閫氳瀵硅薄锛屾棤娉曞垽鏂嚭搴撶珯鍙版槸鍚﹁鍗犵敤");
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒板嚭搴撶珯鍙般�恵stationManger.StationDeviceCode}銆戝搴旂殑閫氳瀵硅薄锛屾棤娉曞垽鏂嚭搴撶珯鍙版槸鍚﹁鍗犵敤");
+ }
+ }
+ else
+ {
+ WriteError(task.DeviceCode, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鏍¢獙绔欏彴");
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鏍¢獙绔欏彴");
+ }
+ return null;
+ }
+
+ /// <summary>
+ /// 浠诲姟瀹炰綋杞崲鎴愬懡浠odel
+ /// </summary>
+ /// <param name="task">浠诲姟瀹炰綋</param>
+ /// <returns></returns>
+ /// <exception cref="Exception"></exception>
+ public StackerCraneTaskCommand? ConvertToStackerCraneTaskCommand([NotNull] Dt_Task task)
+ {
+ StackerCraneTaskCommand stackerCraneTaskCommand = new StackerCraneTaskCommand();
+
+ stackerCraneTaskCommand.Barcode = task.PalletCode;
+ stackerCraneTaskCommand.TaskNum = task.TaskNum;
+ stackerCraneTaskCommand.WorkType = 1;
+ //stackerCraneTaskCommand.TrayType = (short)task.PalletType;
+ if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)//鍒ゆ柇鏄惁鏄叆搴撲换鍔�
+ {
+ Dt_StationManger dt_Station = _stationMangerRepository.QueryFirst(x => x.StationCode == task.CurrentAddress);
+ if (dt_Station == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ string[] startCodes = dt_Station.StackerCraneStationCode.Split("-");
+ if (startCodes.Length == 3)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(startCodes[0]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(startCodes[1]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(startCodes[2]);
+ }
+ else
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍏ュ簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍏ュ簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+
+ string[] targetCodes = task.TargetAddress.Split("-");
+ if (targetCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[2]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍏ュ簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍏ュ簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
+ {
+ Dt_StationManger dt_Station = _stationMangerRepository.QueryFirst(x => x.StationCode == task.NextAddress);
+ if (dt_Station == null)
+ {
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ string[] targetCodes = dt_Station.StackerCraneStationCode.Split("-");
+ if (targetCodes.Length == 3)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[0]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[2]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+
+ string[] sourceCodes = task.SourceAddress.Split("-");
+ if (sourceCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[1]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[2]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"鍑哄簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ }
+ else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup)
+ {
+ string[] targetCodes = task.NextAddress.Split("-");
+ if (targetCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.EndRow = Convert.ToInt16(targetCodes[1]);
+ stackerCraneTaskCommand.EndColumn = Convert.ToInt16(targetCodes[2]);
+ stackerCraneTaskCommand.EndLayer = Convert.ToInt16(targetCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"绉诲簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ WriteError(task.DeviceCode, $"绉诲簱浠诲姟缁堢偣閿欒锛岀粓鐐癸細銆恵task.NextAddress}銆�");
+ return null;
+ }
+ string[] sourceCodes = task.CurrentAddress.Split("-");
+ if (sourceCodes.Length == 5)
+ {
+ stackerCraneTaskCommand.StartRow = Convert.ToInt16(sourceCodes[1]);
+ stackerCraneTaskCommand.StartColumn = Convert.ToInt16(sourceCodes[2]);
+ stackerCraneTaskCommand.StartLayer = Convert.ToInt16(sourceCodes[3]);
+ }
+ else
+ {
+ //鏁版嵁閰嶇疆閿欒
+ _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"绉诲簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ WriteError(task.DeviceCode, $"绉诲簱浠诲姟璧风偣閿欒锛岃捣鐐癸細銆恵task.CurrentAddress}銆�");
+ return null;
+ }
+ }
+ return stackerCraneTaskCommand;
+ }
+ }
+}
diff --git a/WMS/WIDESEA_WMSClient.zip b/WMS/WIDESEA_WMSClient.zip
new file mode 100644
index 0000000..926323d
--- /dev/null
+++ b/WMS/WIDESEA_WMSClient.zip
Binary files differ
diff --git a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/DesignTimeBuild/.dtbcache.v2 b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/DesignTimeBuild/.dtbcache.v2
index c7152bb..bd4f441 100644
--- a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/DesignTimeBuild/.dtbcache.v2
+++ b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/DesignTimeBuild/.dtbcache.v2
Binary files differ
diff --git a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/c62f823c-87b1-4254-8b92-340321c32c9b.vsidx b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/1bead05d-815e-41a3-9cb1-28425ac6117a.vsidx
similarity index 84%
rename from WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/c62f823c-87b1-4254-8b92-340321c32c9b.vsidx
rename to WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/1bead05d-815e-41a3-9cb1-28425ac6117a.vsidx
index 6f7ceb5..a89d813 100644
--- a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/c62f823c-87b1-4254-8b92-340321c32c9b.vsidx
+++ b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/1bead05d-815e-41a3-9cb1-28425ac6117a.vsidx
Binary files differ
diff --git a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.futdcache.v2 b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.futdcache.v2
index 62d76cb..15c8d1c 100644
--- a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.futdcache.v2
+++ b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.futdcache.v2
Binary files differ
diff --git a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.suo b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.suo
index 5c0eb9e..de84b0c 100644
--- a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.suo
+++ b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/.suo
Binary files differ
diff --git a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json
index 1d0dc26..ac870f4 100644
--- a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json
+++ b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json
@@ -7,16 +7,60 @@
"RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\service\\assignlocation\\locationinfoservice_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\service\\assignlocation\\locationinfoservice_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\partialtaskservice_inbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\partialtaskservice_inbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
+ "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\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:{CE0DB91F-5A68-448E-A419-4C26B5039F51}|WIDESEA_ITaskInfoService\\WIDESEA_ITaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{CE0DB91F-5A68-448E-A419-4C26B5039F51}|WIDESEA_ITaskInfoService\\WIDESEA_ITaskInfoService.csproj|solutionrelative:widesea_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_wmsserver\\controllers\\taskinfo\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\controllers\\taskinfo\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\assigninboundtasklocation_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\assigninboundtasklocation_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\base\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\base\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\service\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\service\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\service\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\service\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_model\\models\\outbound\\dt_outboundorderdetail.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\outbound\\dt_outboundorderdetail.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\partialtaskservice_outbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\partialtaskservice_outbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_outboundservice\\base\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|solutionrelative:widesea_outboundservice\\base\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_outboundservice\\service\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|solutionrelative:widesea_outboundservice\\service\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
"AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_wmsserver\\controllers\\basic\\materielinfocontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\controllers\\basic\\materielinfocontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\service\\assignlocation\\locationinfoservice_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\service\\assignlocation\\locationinfoservice_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\base\\materielinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -25,10 +69,6 @@
{
"AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_core\\enums\\orderenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\enums\\orderenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\partialtaskservice_outbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\partialtaskservice_outbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{7DC26D42-D8EE-46F0-BA66-A13457086885}|WIDESEA_StockService\\WIDESEA_StockService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_stockservice\\service\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -55,14 +95,6 @@
"RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\helper\\httphelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\base\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\base\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\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:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_model\\models\\outbound\\dt_outboundlockinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\outbound\\dt_outboundlockinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
@@ -87,14 +119,6 @@
"RelativeMoniker": "D:0:0:{3E1C6F64-6E74-4E76-9E5D-7EE6A7AA1F26}|WIDESEA_IInboundService\\WIDESEA_IInboundService.csproj|solutionrelative:widesea_iinboundservice\\iinboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\service\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\service\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\service\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\service\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\base\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\base\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
@@ -105,14 +129,6 @@
{
"AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\base\\locationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\base\\locationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_outboundservice\\base\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|solutionrelative:widesea_outboundservice\\base\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_outboundservice\\service\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|solutionrelative:widesea_outboundservice\\service\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_outboundservice\\base\\outboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -146,10 +162,6 @@
"RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\service\\materielinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_wmsserver\\controllers\\taskinfo\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\controllers\\taskinfo\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_model\\models\\basic\\dt_materielinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\basic\\dt_materielinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
@@ -158,20 +170,12 @@
"RelativeMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|solutionrelative:widesea_ibasicservice\\imaterielinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\assigninboundtasklocation_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\assigninboundtasklocation_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_ibasicservice\\ilocationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|solutionrelative:widesea_ibasicservice\\ilocationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_core\\enums\\warehouseenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\enums\\warehouseenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{CE0DB91F-5A68-448E-A419-4C26B5039F51}|WIDESEA_ITaskInfoService\\WIDESEA_ITaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{CE0DB91F-5A68-448E-A419-4C26B5039F51}|WIDESEA_ITaskInfoService\\WIDESEA_ITaskInfoService.csproj|solutionrelative:widesea_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_ibasicservice\\ipallettypeinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -229,25 +233,11 @@
"DocumentGroups": [
{
"DockedWidth": 200,
- "SelectedChildIndex": 7,
+ "SelectedChildIndex": 5,
"Children": [
{
"$type": "Document",
- "DocumentIndex": 6,
- "Title": "PartialTaskService_Outbound.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
- "RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
- "RelativeToolTip": "WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
- "ViewState": "AgIAALkBAAAAAAAAAAAvwMoBAAAIAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-18T01:49:20.466Z",
- "IsPinned": true,
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 7,
+ "DocumentIndex": 17,
"Title": "StockInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockService\\Service\\StockInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_StockService\\Service\\StockInfoService.cs",
@@ -261,7 +251,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 16,
+ "DocumentIndex": 24,
"Title": "ILocationInfoRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicRepository\\ILocationInfoRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_IBasicRepository\\ILocationInfoRepository.cs",
@@ -270,6 +260,19 @@
"ViewState": "AgIAABoAAAAAAAAAAADgvyoAAAAuAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-23T15:31:21.803Z",
+ "IsPinned": true
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 10,
+ "Title": "PartialTaskService_Outbound.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
+ "RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
+ "RelativeToolTip": "WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAACMBAAAeAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-18T01:49:20.466Z",
"IsPinned": true,
"EditorCaption": ""
},
@@ -279,33 +282,167 @@
},
{
"$type": "Document",
- "DocumentIndex": 2,
+ "DocumentIndex": 1,
"Title": "PartialTaskService_Inbound.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs",
"RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs",
"RelativeToolTip": "WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs",
- "ViewState": "AgIAABoAAAAAAAAAAADwvyEAAAAIAAAAAAAAAA==",
+ "ViewState": "AgIAAGYAAAAAAAAAAAAAwIQAAAA+AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-06-05T07:54:51.319Z",
"EditorCaption": ""
},
{
"$type": "Document",
+ "DocumentIndex": 0,
+ "Title": "TaskService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\TaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\TaskService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\TaskService.cs",
+ "RelativeToolTip": "WIDESEA_TaskInfoService\\TaskService.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAA8AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-17T14:37:06.649Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
+ "Title": "TaskController.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
+ "RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
+ "RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
+ "ViewState": "AgIAACMAAAAAAAAAAAAjwD4AAAA5AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-17T14:35:32.265Z"
+ },
+ {
+ "$type": "Document",
"DocumentIndex": 3,
+ "Title": "ITaskService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_ITaskInfoService\\ITaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_ITaskInfoService\\ITaskService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_ITaskInfoService\\ITaskService.cs",
+ "RelativeToolTip": "WIDESEA_ITaskInfoService\\ITaskService.cs",
+ "ViewState": "AgIAABAAAAAAAAAAAAD4vyUAAAA1AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-20T09:10:37.56Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "appsettings.json",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json",
+ "RelativeDocumentMoniker": "WIDESEA_WMSServer\\appsettings.json",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json",
+ "RelativeToolTip": "WIDESEA_WMSServer\\appsettings.json",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAEAAAAaAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+ "WhenOpened": "2025-08-01T07:15:31.005Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 5,
+ "Title": "AssignInboundTaskLocation_BC.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
+ "RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
+ "RelativeToolTip": "WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABIAAAAiAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-17T14:35:21.398Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "InboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_InboundService\\Base\\InboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_InboundService\\Base\\InboundOrderService.cs",
+ "ViewState": "AgIAADgAAAAAAAAAAAAWwFIAAAANAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-24T09:24:11.704Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "InboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_InboundService\\Service\\InboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_InboundService\\Service\\InboundOrderService.cs",
+ "ViewState": "AgIAANQAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-31T08:11:31.842Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 8,
+ "Title": "InboundOrderDetailService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
+ "RelativeToolTip": "WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-31T08:11:31.05Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 9,
+ "Title": "Dt_OutboundOrderDetail.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
+ "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
+ "RelativeToolTip": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
+ "ViewState": "AgIAACIAAAAAAAAAAAAiwCYAAAAIAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-08-04T05:01:10.301Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 12,
+ "Title": "OutboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-23T15:22:57.784Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 11,
+ "Title": "OutboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
+ "ViewState": "AgIAABgAAAAAAAAAAAAAAPUAAAAwAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-29T02:10:53.178Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 13,
"Title": "MaterielInfoController.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
"RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
"RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
- "ViewState": "AgIAAA0AAAAAAAAAAAAkwCIAAABlAAAAAAAAAA==",
+ "ViewState": "AgIAABMAAAAAAAAAAAAkwBUAAAALAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-24T13:57:25.318Z",
"EditorCaption": ""
},
{
"$type": "Document",
- "DocumentIndex": 1,
+ "DocumentIndex": 14,
"Title": "LocationInfoService_BC.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
@@ -318,20 +455,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 0,
- "Title": "TaskService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\TaskService.cs",
- "RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\TaskService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\TaskService.cs",
- "RelativeToolTip": "WIDESEA_TaskInfoService\\TaskService.cs",
- "ViewState": "AgIAAGUBAAAAAAAAAAAvwHcBAAAIAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-17T14:37:06.649Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 4,
+ "DocumentIndex": 15,
"Title": "MaterielInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
@@ -339,12 +463,11 @@
"RelativeToolTip": "WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
"ViewState": "AgIAABAAAAAAAAAAAAAIwAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-08-04T02:27:14.382Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-08-04T02:27:14.382Z"
},
{
"$type": "Document",
- "DocumentIndex": 8,
+ "DocumentIndex": 18,
"Title": "StockInfoRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockRepository\\StockInfoRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_StockRepository\\StockInfoRepository.cs",
@@ -357,7 +480,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 5,
+ "DocumentIndex": 16,
"Title": "OrderEnum.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Enums\\OrderEnum.cs",
"RelativeDocumentMoniker": "WIDESEA_Core\\Enums\\OrderEnum.cs",
@@ -365,12 +488,11 @@
"RelativeToolTip": "WIDESEA_Core\\Enums\\OrderEnum.cs",
"ViewState": "AgIAAAwBAAAAAAAAAADgvx4BAAAIAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-28T06:25:34.338Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-28T06:25:34.338Z"
},
{
"$type": "Document",
- "DocumentIndex": 9,
+ "DocumentIndex": 19,
"Title": "IOutboundOrderDetailService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
"RelativeDocumentMoniker": "WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
@@ -378,12 +500,11 @@
"RelativeToolTip": "WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
"ViewState": "AgIAAAoAAAAAAAAAAAAWwCIAAAAbAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T15:32:40.083Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-23T15:32:40.083Z"
},
{
"$type": "Document",
- "DocumentIndex": 10,
+ "DocumentIndex": 20,
"Title": "LocationInfoRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicRepository\\LocationInfoRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicRepository\\LocationInfoRepository.cs",
@@ -391,12 +512,11 @@
"RelativeToolTip": "WIDESEA_BasicRepository\\LocationInfoRepository.cs",
"ViewState": "AgIAACYAAAAAAAAAAAAtwDsAAABNAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T06:57:39.417Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-23T06:57:39.417Z"
},
{
"$type": "Document",
- "DocumentIndex": 11,
+ "DocumentIndex": 21,
"Title": "OutboundOrderDetailService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
"RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
@@ -409,7 +529,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 12,
+ "DocumentIndex": 22,
"Title": "HttpHelper.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Helper\\HttpHelper.cs",
"RelativeDocumentMoniker": "WIDESEA_Core\\Helper\\HttpHelper.cs",
@@ -422,33 +542,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 13,
- "Title": "InboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_InboundService\\Base\\InboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_InboundService\\Base\\InboundOrderService.cs",
- "ViewState": "AgIAAFQBAAAAAAAAAAAvwGYBAAAIAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-24T09:24:11.704Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 14,
- "Title": "appsettings.json",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json",
- "RelativeDocumentMoniker": "WIDESEA_WMSServer\\appsettings.json",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json",
- "RelativeToolTip": "WIDESEA_WMSServer\\appsettings.json",
- "ViewState": "AgIAAAAAAAAAAAAAAADwvw4AAAAsAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
- "WhenOpened": "2025-08-01T07:15:31.005Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 15,
+ "DocumentIndex": 23,
"Title": "Dt_OutboundLockInfo.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
"RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
@@ -456,12 +550,11 @@
"RelativeToolTip": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
"ViewState": "AgIAAB0AAAAAAAAAAAAnwCsAAAAXAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:27:57.406Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-31T08:27:57.406Z"
},
{
"$type": "Document",
- "DocumentIndex": 17,
+ "DocumentIndex": 25,
"Title": "IStockInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStockService\\IStockInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_IStockService\\IStockInfoService.cs",
@@ -469,12 +562,11 @@
"RelativeToolTip": "WIDESEA_IStockService\\IStockInfoService.cs",
"ViewState": "AgIAAAYAAAAAAAAAAAAnwBoAAABUAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-08-01T03:27:23.904Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-08-01T03:27:23.904Z"
},
{
"$type": "Document",
- "DocumentIndex": 20,
+ "DocumentIndex": 28,
"Title": "IInboundOrderService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IInboundService\\IInboundOrderService.cs",
"RelativeDocumentMoniker": "WIDESEA_IInboundService\\IInboundOrderService.cs",
@@ -482,12 +574,11 @@
"RelativeToolTip": "WIDESEA_IInboundService\\IInboundOrderService.cs",
"ViewState": "AgIAAAIAAAAAAAAAAAArwBIAAAAbAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:11:25.441Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-31T08:11:25.441Z"
},
{
"$type": "Document",
- "DocumentIndex": 18,
+ "DocumentIndex": 26,
"Title": "OutStockLockInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
@@ -495,38 +586,11 @@
"RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T15:22:59.796Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-23T15:22:59.796Z"
},
{
"$type": "Document",
- "DocumentIndex": 22,
- "Title": "InboundOrderDetailService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
- "RelativeDocumentMoniker": "WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
- "RelativeToolTip": "WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:11:31.05Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 21,
- "Title": "InboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_InboundService\\Service\\InboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_InboundService\\Service\\InboundOrderService.cs",
- "ViewState": "AgIAAJcAAAAAAAAAAAAQwAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:11:31.842Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 19,
+ "DocumentIndex": 27,
"Title": "StockRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockRepository\\StockRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_StockRepository\\StockRepository.cs",
@@ -534,12 +598,11 @@
"RelativeToolTip": "WIDESEA_StockRepository\\StockRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAABAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:19:50.203Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-31T08:19:50.203Z"
},
{
"$type": "Document",
- "DocumentIndex": 23,
+ "DocumentIndex": 29,
"Title": "InboundOrderDetailService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderDetailService.cs",
"RelativeDocumentMoniker": "WIDESEA_InboundService\\Base\\InboundOrderDetailService.cs",
@@ -547,38 +610,11 @@
"RelativeToolTip": "WIDESEA_InboundService\\Base\\InboundOrderDetailService.cs",
"ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:11:29.435Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-31T08:11:29.435Z"
},
{
"$type": "Document",
- "DocumentIndex": 27,
- "Title": "OutboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T15:22:57.784Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 26,
- "Title": "OutboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
- "ViewState": "AgIAAOwAAAAAAAAAAAAgwPUAAAAwAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-29T02:10:53.178Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 25,
+ "DocumentIndex": 31,
"Title": "LocationInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\LocationInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicService\\Base\\LocationInfoService.cs",
@@ -586,12 +622,11 @@
"RelativeToolTip": "WIDESEA_BasicService\\Base\\LocationInfoService.cs",
"ViewState": "AgIAADgAAAAAAAAAAAAcwIQAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-18T08:50:09.655Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-18T08:50:09.655Z"
},
{
"$type": "Document",
- "DocumentIndex": 24,
+ "DocumentIndex": 30,
"Title": "HouseMaterielinfo.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Common\\HouseMaterielinfo.cs",
"RelativeDocumentMoniker": "WIDESEA_Common\\HouseMaterielinfo.cs",
@@ -599,12 +634,11 @@
"RelativeToolTip": "WIDESEA_Common\\HouseMaterielinfo.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAEsAAAAWAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-28T06:28:01.921Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-28T06:28:01.921Z"
},
{
"$type": "Document",
- "DocumentIndex": 28,
+ "DocumentIndex": 32,
"Title": "OutboundOrderDetailService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderDetailService.cs",
"RelativeDocumentMoniker": "WIDESEA_OutboundService\\Base\\OutboundOrderDetailService.cs",
@@ -616,7 +650,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 29,
+ "DocumentIndex": 33,
"Title": "IOutStockLockInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IOutboundService\\IOutStockLockInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_IOutboundService\\IOutStockLockInfoService.cs",
@@ -628,7 +662,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 30,
+ "DocumentIndex": 34,
"Title": "RepositoryBase.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
"RelativeDocumentMoniker": "WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
@@ -640,7 +674,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 31,
+ "DocumentIndex": 35,
"Title": "PartialTaskService_AGV.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_AGV.cs",
"RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\PartialTaskService_AGV.cs",
@@ -652,7 +686,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 32,
+ "DocumentIndex": 36,
"Title": "LocationInfoService_Common.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
@@ -664,7 +698,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 33,
+ "DocumentIndex": 37,
"Title": "Microsoft.Common.CurrentVersion.targets",
"DocumentMoniker": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets",
"ToolTip": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets",
@@ -674,7 +708,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 34,
+ "DocumentIndex": 38,
"Title": "IStockInfoRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStockRepository\\IStockInfoRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_IStockRepository\\IStockInfoRepository.cs",
@@ -686,7 +720,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 38,
+ "DocumentIndex": 41,
"Title": "IMaterielInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicService\\IMaterielInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_IBasicService\\IMaterielInfoService.cs",
@@ -698,7 +732,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 37,
+ "DocumentIndex": 40,
"Title": "Dt_MaterielInfo.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Basic\\Dt_MaterielInfo.cs",
"RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Basic\\Dt_MaterielInfo.cs",
@@ -710,7 +744,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 41,
+ "DocumentIndex": 43,
"Title": "WarehouseEnum.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Enums\\WarehouseEnum.cs",
"RelativeDocumentMoniker": "WIDESEA_Core\\Enums\\WarehouseEnum.cs",
@@ -722,7 +756,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 35,
+ "DocumentIndex": 39,
"Title": "MaterielInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\MaterielInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicService\\Service\\MaterielInfoService.cs",
@@ -735,7 +769,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 45,
+ "DocumentIndex": 46,
"Title": "StockViewService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockService\\Service\\StockViewService.cs",
"RelativeDocumentMoniker": "WIDESEA_StockService\\Service\\StockViewService.cs",
@@ -747,7 +781,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 44,
+ "DocumentIndex": 45,
"Title": "StockInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockService\\Base\\StockInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_StockService\\Base\\StockInfoService.cs",
@@ -759,7 +793,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 40,
+ "DocumentIndex": 42,
"Title": "ILocationInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicService\\ILocationInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_IBasicService\\ILocationInfoService.cs",
@@ -771,7 +805,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 47,
+ "DocumentIndex": 48,
"Title": "PalletTypeInfoRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicRepository\\PalletTypeInfoRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicRepository\\PalletTypeInfoRepository.cs",
@@ -783,7 +817,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 48,
+ "DocumentIndex": 49,
"Title": "PalletTypeInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\PalletTypeInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicService\\Base\\PalletTypeInfoService.cs",
@@ -795,7 +829,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 43,
+ "DocumentIndex": 44,
"Title": "IPalletTypeInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicService\\IPalletTypeInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_IBasicService\\IPalletTypeInfoService.cs",
@@ -807,7 +841,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 50,
+ "DocumentIndex": 51,
"Title": "TaskTypeEnum.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Common\\TaskEnum\\TaskTypeEnum.cs",
"RelativeDocumentMoniker": "WIDESEA_Common\\TaskEnum\\TaskTypeEnum.cs",
@@ -819,7 +853,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 51,
+ "DocumentIndex": 52,
"Title": "TaskEnumHelper.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Common\\TaskEnum\\TaskEnumHelper.cs",
"RelativeDocumentMoniker": "WIDESEA_Common\\TaskEnum\\TaskEnumHelper.cs",
@@ -831,7 +865,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 53,
+ "DocumentIndex": 54,
"Title": "Dt_Task_Hty.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\TaskInfo\\Dt_Task_Hty.cs",
"RelativeDocumentMoniker": "WIDESEA_Model\\Models\\TaskInfo\\Dt_Task_Hty.cs",
@@ -843,7 +877,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 49,
+ "DocumentIndex": 50,
"Title": "Dt_Task.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\TaskInfo\\Dt_Task.cs",
"RelativeDocumentMoniker": "WIDESEA_Model\\Models\\TaskInfo\\Dt_Task.cs",
@@ -855,19 +889,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 42,
- "Title": "ITaskService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_ITaskInfoService\\ITaskService.cs",
- "RelativeDocumentMoniker": "WIDESEA_ITaskInfoService\\ITaskService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_ITaskInfoService\\ITaskService.cs",
- "RelativeToolTip": "WIDESEA_ITaskInfoService\\ITaskService.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-20T09:10:37.56Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 46,
+ "DocumentIndex": 47,
"Title": "LocationInfoController.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Basic\\LocationInfoController.cs",
"RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\Basic\\LocationInfoController.cs",
@@ -879,7 +901,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 54,
+ "DocumentIndex": 55,
"Title": "TaskRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoRepository\\TaskRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_TaskInfoRepository\\TaskRepository.cs",
@@ -891,7 +913,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 52,
+ "DocumentIndex": 53,
"Title": "Dt_LocationInfo.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Basic\\Dt_LocationInfo.cs",
"RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Basic\\Dt_LocationInfo.cs",
@@ -900,30 +922,6 @@
"ViewState": "AgIAAAEAAAAAAAAAAAAewBgAAAAzAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-18T09:01:10.434Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 36,
- "Title": "TaskController.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
- "RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
- "RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
- "ViewState": "AgIAABAAAAAAAAAAAAA6wBoAAABDAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-17T14:35:32.265Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 39,
- "Title": "AssignInboundTaskLocation_BC.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
- "RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
- "RelativeToolTip": "WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
- "ViewState": "AgIAABwAAAAAAAAAAAAAwBIAAAAiAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-17T14:35:21.398Z"
}
]
}
diff --git a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json
index 5ebfb62..182ab7e 100644
--- a/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json
+++ b/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json
@@ -7,16 +7,64 @@
"RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\partialtaskservice_inbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
+ "AbsoluteMoniker": "D:0:0:{7DC26D42-D8EE-46F0-BA66-A13457086885}|WIDESEA_StockService\\WIDESEA_StockService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_stockservice\\service\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{7DC26D42-D8EE-46F0-BA66-A13457086885}|WIDESEA_StockService\\WIDESEA_StockService.csproj|solutionrelative:widesea_stockservice\\service\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\service\\assignlocation\\locationinfoservice_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\service\\assignlocation\\locationinfoservice_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\service\\locationinfoservice_common.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\service\\locationinfoservice_common.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\base\\locationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\base\\locationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_ibasicservice\\ilocationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|solutionrelative:widesea_ibasicservice\\ilocationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\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:{CE0DB91F-5A68-448E-A419-4C26B5039F51}|WIDESEA_ITaskInfoService\\WIDESEA_ITaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{CE0DB91F-5A68-448E-A419-4C26B5039F51}|WIDESEA_ITaskInfoService\\WIDESEA_ITaskInfoService.csproj|solutionrelative:widesea_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_wmsserver\\controllers\\taskinfo\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\controllers\\taskinfo\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\assigninboundtasklocation_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\assigninboundtasklocation_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\base\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\base\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\service\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\service\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\service\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\service\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
"AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_model\\models\\outbound\\dt_outboundorderdetail.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\outbound\\dt_outboundorderdetail.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\partialtaskservice_outbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\partialtaskservice_outbound.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\base\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\base\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_outboundservice\\base\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -27,16 +75,8 @@
"RelativeMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|solutionrelative:widesea_outboundservice\\service\\outboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_wmsserver\\controllers\\basic\\materielinfocontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\controllers\\basic\\materielinfocontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\service\\assignlocation\\locationinfoservice_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\service\\assignlocation\\locationinfoservice_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\base\\materielinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -45,10 +85,6 @@
{
"AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_core\\enums\\orderenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\enums\\orderenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{7DC26D42-D8EE-46F0-BA66-A13457086885}|WIDESEA_StockService\\WIDESEA_StockService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_stockservice\\service\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{7DC26D42-D8EE-46F0-BA66-A13457086885}|WIDESEA_StockService\\WIDESEA_StockService.csproj|solutionrelative:widesea_stockservice\\service\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{B9E62A73-1270-4FFC-B23C-F75C075D8460}|WIDESEA_StockRepository\\WIDESEA_StockRepository.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_stockrepository\\stockinforepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -69,10 +105,6 @@
{
"AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_core\\helper\\httphelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\helper\\httphelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\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:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_model\\models\\outbound\\dt_outboundlockinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -99,24 +131,12 @@
"RelativeMoniker": "D:0:0:{3E1C6F64-6E74-4E76-9E5D-7EE6A7AA1F26}|WIDESEA_IInboundService\\WIDESEA_IInboundService.csproj|solutionrelative:widesea_iinboundservice\\iinboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\service\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\service\\inboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\service\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\service\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_inboundservice\\base\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{9619D9B0-7E5B-42F0-BA2C-B840B3E1C258}|WIDESEA_InboundService\\WIDESEA_InboundService.csproj|solutionrelative:widesea_inboundservice\\base\\inboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{AF8F3D65-1D75-4B8F-AFD9-4150E591C44D}|WIDESEA_Common\\WIDESEA_Common.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_common\\housematerielinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{AF8F3D65-1D75-4B8F-AFD9-4150E591C44D}|WIDESEA_Common\\WIDESEA_Common.csproj|solutionrelative:widesea_common\\housematerielinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\base\\locationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\base\\locationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{1B884AD3-7E67-44CD-B182-DEECDD671DD2}|WIDESEA_OutboundService\\WIDESEA_OutboundService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_outboundservice\\base\\outboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -135,10 +155,6 @@
"RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\partialtaskservice_agv.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_basicservice\\service\\locationinfoservice_common.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\service\\locationinfoservice_common.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
},
{
@@ -150,10 +166,6 @@
"RelativeMoniker": "D:0:0:{D11C804C-2FF4-4C18-A3EE-2F0574427BB3}|WIDESEA_BasicService\\WIDESEA_BasicService.csproj|solutionrelative:widesea_basicservice\\service\\materielinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_wmsserver\\controllers\\taskinfo\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\controllers\\taskinfo\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_model\\models\\basic\\dt_materielinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\basic\\dt_materielinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
@@ -162,20 +174,8 @@
"RelativeMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|solutionrelative:widesea_ibasicservice\\imaterielinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_taskinfoservice\\assigninboundtasklocation_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{7D7534D4-51D9-46DC-A6B7-6430042F4E12}|WIDESEA_TaskInfoService\\WIDESEA_TaskInfoService.csproj|solutionrelative:widesea_taskinfoservice\\assigninboundtasklocation_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_ibasicservice\\ilocationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|solutionrelative:widesea_ibasicservice\\ilocationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_core\\enums\\warehouseenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\enums\\warehouseenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{CE0DB91F-5A68-448E-A419-4C26B5039F51}|WIDESEA_ITaskInfoService\\WIDESEA_ITaskInfoService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{CE0DB91F-5A68-448E-A419-4C26B5039F51}|WIDESEA_ITaskInfoService\\WIDESEA_ITaskInfoService.csproj|solutionrelative:widesea_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{5F260E03-095A-4870-8419-5B72CB62929E}|WIDESEA_IBasicService\\WIDESEA_IBasicService.csproj|e:\\khgithub\\jianliku\\wms\\widesea_wmsserver\\widesea_ibasicservice\\ipallettypeinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -233,17 +233,17 @@
"DocumentGroups": [
{
"DockedWidth": 200,
- "SelectedChildIndex": 5,
+ "SelectedChildIndex": 7,
"Children": [
{
"$type": "Document",
- "DocumentIndex": 11,
+ "DocumentIndex": 1,
"Title": "StockInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockService\\Service\\StockInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_StockService\\Service\\StockInfoService.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockService\\Service\\StockInfoService.cs",
"RelativeToolTip": "WIDESEA_StockService\\Service\\StockInfoService.cs",
- "ViewState": "AgIAAGQAAAAAAAAAAAAvwHUAAAAIAAAAAAAAAA==",
+ "ViewState": "AgIAAEAAAAAAAAAAAAArwHUAAAAIAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-29T02:51:46.53Z",
"IsPinned": true,
@@ -251,7 +251,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 19,
+ "DocumentIndex": 27,
"Title": "ILocationInfoRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicRepository\\ILocationInfoRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_IBasicRepository\\ILocationInfoRepository.cs",
@@ -260,22 +260,20 @@
"ViewState": "AgIAABoAAAAAAAAAAADgvyoAAAAuAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-23T15:31:21.803Z",
- "IsPinned": true,
- "EditorCaption": ""
+ "IsPinned": true
},
{
"$type": "Document",
- "DocumentIndex": 2,
+ "DocumentIndex": 15,
"Title": "PartialTaskService_Outbound.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
"RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
"RelativeToolTip": "WIDESEA_TaskInfoService\\PartialTaskService_Outbound.cs",
- "ViewState": "AgIAAC0BAAAAAAAAAAAnwCMBAAAeAAAAAAAAAA==",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAACMBAAAeAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-18T01:49:20.466Z",
- "IsPinned": true,
- "EditorCaption": ""
+ "IsPinned": true
},
{
"$type": "Bookmark",
@@ -283,15 +281,41 @@
},
{
"$type": "Document",
- "DocumentIndex": 1,
- "Title": "Dt_OutboundOrderDetail.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
- "ViewState": "AgIAACIAAAAAAAAAAAAiwCYAAAAIAAAAAAAAAA==",
+ "DocumentIndex": 3,
+ "Title": "LocationInfoService_Common.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
+ "RelativeDocumentMoniker": "WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
+ "RelativeToolTip": "WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
+ "ViewState": "AgIAAA8AAAAAAAAAAAAuwDEAAAAuAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-08-04T05:01:10.301Z",
+ "WhenOpened": "2025-07-19T01:48:01.156Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "LocationInfoService_BC.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
+ "RelativeDocumentMoniker": "WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
+ "RelativeToolTip": "WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
+ "ViewState": "AgIAAAwAAAAAAAAAAADgv74AAAANAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-17T14:59:10.823Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
+ "Title": "LocationInfoService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\LocationInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_BasicService\\Base\\LocationInfoService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\LocationInfoService.cs",
+ "RelativeToolTip": "WIDESEA_BasicService\\Base\\LocationInfoService.cs",
+ "ViewState": "AgIAAEkAAAAAAAAAAAAtwCMBAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-18T08:50:09.655Z",
"EditorCaption": ""
},
{
@@ -300,50 +324,24 @@
"Title": "PartialTaskService_Inbound.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs",
"RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs",
- "RelativeToolTip": "WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs",
- "ViewState": "AgIAABcAAAAAAAAAAAAwwCAAAAByAAAAAAAAAA==",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs*",
+ "RelativeToolTip": "WIDESEA_TaskInfoService\\PartialTaskService_Inbound.cs*",
+ "ViewState": "AgIAAD4BAAAAAAAAAADgv1IBAAANAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-06-05T07:54:51.319Z",
"EditorCaption": ""
},
{
"$type": "Document",
- "DocumentIndex": 3,
- "Title": "InboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_InboundService\\Base\\InboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_InboundService\\Base\\InboundOrderService.cs",
- "ViewState": "AgIAAF0BAAAAAAAAAAAvwGUBAAAyAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-24T09:24:11.704Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
"DocumentIndex": 5,
- "Title": "OutboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
+ "Title": "ILocationInfoService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicService\\ILocationInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_IBasicService\\ILocationInfoService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicService\\ILocationInfoService.cs",
+ "RelativeToolTip": "WIDESEA_IBasicService\\ILocationInfoService.cs",
+ "ViewState": "AgIAAAsAAAAAAAAAAAAlwB8AAAAZAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T15:22:57.784Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 4,
- "Title": "OutboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
- "ViewState": "AgIAABgAAAAAAAAAAAAAAPUAAAAwAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-29T02:10:53.178Z",
+ "WhenOpened": "2025-07-22T13:51:05.355Z",
"EditorCaption": ""
},
{
@@ -354,7 +352,7 @@
"RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\TaskService.cs",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\TaskService.cs",
"RelativeToolTip": "WIDESEA_TaskInfoService\\TaskService.cs",
- "ViewState": "AgIAAGUBAAAAAAAAAAAvwHcBAAAIAAAAAAAAAA==",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAA8AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-17T14:37:06.649Z",
"EditorCaption": ""
@@ -362,188 +360,78 @@
{
"$type": "Document",
"DocumentIndex": 7,
- "Title": "MaterielInfoController.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
- "RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
- "RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
- "ViewState": "AgIAABMAAAAAAAAAAAAkwBUAAAALAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-24T13:57:25.318Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 8,
- "Title": "LocationInfoService_BC.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
- "RelativeDocumentMoniker": "WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
- "RelativeToolTip": "WIDESEA_BasicService\\Service\\AssignLocation\\LocationInfoService_BC.cs",
- "ViewState": "AgIAAGMAAAAAAAAAAADgv3oAAAAUAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-17T14:59:10.823Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 9,
- "Title": "MaterielInfoService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
- "RelativeDocumentMoniker": "WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
- "RelativeToolTip": "WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
- "ViewState": "AgIAABAAAAAAAAAAAAAIwAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-08-04T02:27:14.382Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 12,
- "Title": "StockInfoRepository.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockRepository\\StockInfoRepository.cs",
- "RelativeDocumentMoniker": "WIDESEA_StockRepository\\StockInfoRepository.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockRepository\\StockInfoRepository.cs",
- "RelativeToolTip": "WIDESEA_StockRepository\\StockInfoRepository.cs",
- "ViewState": "AgIAAEQAAAAAAAAAAAAvwE4AAAAIAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-22T02:34:49.057Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 10,
- "Title": "OrderEnum.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Enums\\OrderEnum.cs",
- "RelativeDocumentMoniker": "WIDESEA_Core\\Enums\\OrderEnum.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Enums\\OrderEnum.cs",
- "RelativeToolTip": "WIDESEA_Core\\Enums\\OrderEnum.cs",
- "ViewState": "AgIAAAwBAAAAAAAAAADgvx4BAAAIAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-28T06:25:34.338Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 13,
- "Title": "IOutboundOrderDetailService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
- "RelativeDocumentMoniker": "WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
- "RelativeToolTip": "WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
- "ViewState": "AgIAAAoAAAAAAAAAAAAWwCIAAAAbAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T15:32:40.083Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 14,
- "Title": "LocationInfoRepository.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicRepository\\LocationInfoRepository.cs",
- "RelativeDocumentMoniker": "WIDESEA_BasicRepository\\LocationInfoRepository.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicRepository\\LocationInfoRepository.cs",
- "RelativeToolTip": "WIDESEA_BasicRepository\\LocationInfoRepository.cs",
- "ViewState": "AgIAACYAAAAAAAAAAAAtwDsAAABNAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T06:57:39.417Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 15,
- "Title": "OutboundOrderDetailService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
- "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
- "RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
- "ViewState": "AgIAADkBAAAAAAAAAADgv0oBAAAQAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-18T01:49:20.492Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 16,
- "Title": "HttpHelper.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Helper\\HttpHelper.cs",
- "RelativeDocumentMoniker": "WIDESEA_Core\\Helper\\HttpHelper.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Helper\\HttpHelper.cs",
- "RelativeToolTip": "WIDESEA_Core\\Helper\\HttpHelper.cs",
- "ViewState": "AgIAAIMAAAAAAAAAAADwv44AAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-30T09:06:39.85Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 17,
"Title": "appsettings.json",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json",
"RelativeDocumentMoniker": "WIDESEA_WMSServer\\appsettings.json",
"ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\appsettings.json",
"RelativeToolTip": "WIDESEA_WMSServer\\appsettings.json",
- "ViewState": "AgIAAAAAAAAAAAAAAADwvw4AAAAsAAAAAAAAAA==",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAEAAAAaAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
- "WhenOpened": "2025-08-01T07:15:31.005Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-08-01T07:15:31.005Z"
},
{
"$type": "Document",
- "DocumentIndex": 18,
- "Title": "Dt_OutboundLockInfo.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
- "ViewState": "AgIAAB0AAAAAAAAAAAAnwCsAAAAXAAAAAAAAAA==",
+ "DocumentIndex": 8,
+ "Title": "ITaskService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_ITaskInfoService\\ITaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_ITaskInfoService\\ITaskService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_ITaskInfoService\\ITaskService.cs",
+ "RelativeToolTip": "WIDESEA_ITaskInfoService\\ITaskService.cs",
+ "ViewState": "AgIAABAAAAAAAAAAAAD4vyUAAAA1AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:27:57.406Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-20T09:10:37.56Z"
},
{
"$type": "Document",
- "DocumentIndex": 20,
- "Title": "IStockInfoService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStockService\\IStockInfoService.cs",
- "RelativeDocumentMoniker": "WIDESEA_IStockService\\IStockInfoService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStockService\\IStockInfoService.cs",
- "RelativeToolTip": "WIDESEA_IStockService\\IStockInfoService.cs",
- "ViewState": "AgIAAAYAAAAAAAAAAAAnwBoAAABUAAAAAAAAAA==",
+ "DocumentIndex": 9,
+ "Title": "TaskController.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
+ "RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
+ "RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
+ "ViewState": "AgIAACMAAAAAAAAAAAAjwD4AAAA5AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-08-01T03:27:23.904Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-17T14:35:32.265Z"
},
{
"$type": "Document",
- "DocumentIndex": 23,
- "Title": "IInboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IInboundService\\IInboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_IInboundService\\IInboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IInboundService\\IInboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_IInboundService\\IInboundOrderService.cs",
- "ViewState": "AgIAAAIAAAAAAAAAAAArwBIAAAAbAAAAAAAAAA==",
+ "DocumentIndex": 10,
+ "Title": "AssignInboundTaskLocation_BC.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
+ "RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
+ "RelativeToolTip": "WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABIAAAAiAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:11:25.441Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-17T14:35:21.398Z"
},
{
"$type": "Document",
- "DocumentIndex": 21,
- "Title": "OutStockLockInfoService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
- "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
- "RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "DocumentIndex": 11,
+ "Title": "InboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_InboundService\\Base\\InboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_InboundService\\Base\\InboundOrderService.cs",
+ "ViewState": "AgIAADgAAAAAAAAAAAAWwFIAAAANAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-23T15:22:59.796Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-24T09:24:11.704Z"
},
{
"$type": "Document",
- "DocumentIndex": 25,
+ "DocumentIndex": 12,
+ "Title": "InboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_InboundService\\Service\\InboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_InboundService\\Service\\InboundOrderService.cs",
+ "ViewState": "AgIAANQAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-31T08:11:31.842Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 13,
"Title": "InboundOrderDetailService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
"RelativeDocumentMoniker": "WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
@@ -551,25 +439,191 @@
"RelativeToolTip": "WIDESEA_InboundService\\Service\\InboundOrderDetailService.cs",
"ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:11:31.05Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-31T08:11:31.05Z"
},
{
"$type": "Document",
- "DocumentIndex": 24,
- "Title": "InboundOrderService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_InboundService\\Service\\InboundOrderService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Service\\InboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_InboundService\\Service\\InboundOrderService.cs",
- "ViewState": "AgIAAJcAAAAAAAAAAAAQwAAAAAAAAAAAAAAAAA==",
+ "DocumentIndex": 14,
+ "Title": "Dt_OutboundOrderDetail.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
+ "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
+ "RelativeToolTip": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundOrderDetail.cs",
+ "ViewState": "AgIAACIAAAAAAAAAAAAiwCYAAAAIAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:11:31.842Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-08-04T05:01:10.301Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 17,
+ "Title": "OutboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutboundOrderService.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-23T15:22:57.784Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 16,
+ "Title": "OutboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_OutboundService\\Base\\OutboundOrderService.cs",
+ "ViewState": "AgIAABgAAAAAAAAAAAAAAPUAAAAwAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-29T02:10:53.178Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 18,
+ "Title": "MaterielInfoController.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
+ "RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
+ "RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\Basic\\MaterielInfoController.cs",
+ "ViewState": "AgIAABMAAAAAAAAAAAAkwBUAAAALAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-24T13:57:25.318Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 19,
+ "Title": "MaterielInfoService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
+ "RelativeToolTip": "WIDESEA_BasicService\\Base\\MaterielInfoService.cs",
+ "ViewState": "AgIAABAAAAAAAAAAAAAIwAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-08-04T02:27:14.382Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 21,
+ "Title": "StockInfoRepository.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockRepository\\StockInfoRepository.cs",
+ "RelativeDocumentMoniker": "WIDESEA_StockRepository\\StockInfoRepository.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockRepository\\StockInfoRepository.cs",
+ "RelativeToolTip": "WIDESEA_StockRepository\\StockInfoRepository.cs",
+ "ViewState": "AgIAAEQAAAAAAAAAAAAvwE4AAAAIAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-22T02:34:49.057Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 20,
+ "Title": "OrderEnum.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Enums\\OrderEnum.cs",
+ "RelativeDocumentMoniker": "WIDESEA_Core\\Enums\\OrderEnum.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Enums\\OrderEnum.cs",
+ "RelativeToolTip": "WIDESEA_Core\\Enums\\OrderEnum.cs",
+ "ViewState": "AgIAAAwBAAAAAAAAAADgvx4BAAAIAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-28T06:25:34.338Z"
},
{
"$type": "Document",
"DocumentIndex": 22,
+ "Title": "IOutboundOrderDetailService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
+ "RelativeToolTip": "WIDESEA_IOutboundService\\IOutboundOrderDetailService.cs",
+ "ViewState": "AgIAAAoAAAAAAAAAAAAWwCIAAAAbAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-23T15:32:40.083Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 23,
+ "Title": "LocationInfoRepository.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicRepository\\LocationInfoRepository.cs",
+ "RelativeDocumentMoniker": "WIDESEA_BasicRepository\\LocationInfoRepository.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicRepository\\LocationInfoRepository.cs",
+ "RelativeToolTip": "WIDESEA_BasicRepository\\LocationInfoRepository.cs",
+ "ViewState": "AgIAACYAAAAAAAAAAAAtwDsAAABNAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-23T06:57:39.417Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 24,
+ "Title": "OutboundOrderDetailService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
+ "RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutboundOrderDetailService.cs",
+ "ViewState": "AgIAADkBAAAAAAAAAADgv0oBAAAQAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-18T01:49:20.492Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 25,
+ "Title": "HttpHelper.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Helper\\HttpHelper.cs",
+ "RelativeDocumentMoniker": "WIDESEA_Core\\Helper\\HttpHelper.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Helper\\HttpHelper.cs",
+ "RelativeToolTip": "WIDESEA_Core\\Helper\\HttpHelper.cs",
+ "ViewState": "AgIAAIMAAAAAAAAAAADwv44AAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-30T09:06:39.85Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 26,
+ "Title": "Dt_OutboundLockInfo.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
+ "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
+ "RelativeToolTip": "WIDESEA_Model\\Models\\Outbound\\Dt_OutboundLockInfo.cs",
+ "ViewState": "AgIAAB0AAAAAAAAAAAAnwCsAAAAXAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-31T08:27:57.406Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 28,
+ "Title": "IStockInfoService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStockService\\IStockInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_IStockService\\IStockInfoService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStockService\\IStockInfoService.cs",
+ "RelativeToolTip": "WIDESEA_IStockService\\IStockInfoService.cs",
+ "ViewState": "AgIAAAYAAAAAAAAAAAAnwBoAAABUAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-08-01T03:27:23.904Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 31,
+ "Title": "IInboundOrderService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IInboundService\\IInboundOrderService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_IInboundService\\IInboundOrderService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IInboundService\\IInboundOrderService.cs",
+ "RelativeToolTip": "WIDESEA_IInboundService\\IInboundOrderService.cs",
+ "ViewState": "AgIAAAIAAAAAAAAAAAArwBIAAAAbAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-31T08:11:25.441Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 29,
+ "Title": "OutStockLockInfoService.cs",
+ "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
+ "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
+ "RelativeToolTip": "WIDESEA_OutboundService\\Service\\OutStockLockInfoService.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-07-23T15:22:59.796Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 30,
"Title": "StockRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_StockRepository\\StockRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_StockRepository\\StockRepository.cs",
@@ -577,12 +631,11 @@
"RelativeToolTip": "WIDESEA_StockRepository\\StockRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAABAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:19:50.203Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-31T08:19:50.203Z"
},
{
"$type": "Document",
- "DocumentIndex": 26,
+ "DocumentIndex": 32,
"Title": "InboundOrderDetailService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_InboundService\\Base\\InboundOrderDetailService.cs",
"RelativeDocumentMoniker": "WIDESEA_InboundService\\Base\\InboundOrderDetailService.cs",
@@ -590,25 +643,11 @@
"RelativeToolTip": "WIDESEA_InboundService\\Base\\InboundOrderDetailService.cs",
"ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-31T08:11:29.435Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-31T08:11:29.435Z"
},
{
"$type": "Document",
- "DocumentIndex": 28,
- "Title": "LocationInfoService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\LocationInfoService.cs",
- "RelativeDocumentMoniker": "WIDESEA_BasicService\\Base\\LocationInfoService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Base\\LocationInfoService.cs",
- "RelativeToolTip": "WIDESEA_BasicService\\Base\\LocationInfoService.cs",
- "ViewState": "AgIAADgAAAAAAAAAAAAcwIQAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-18T08:50:09.655Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 27,
+ "DocumentIndex": 33,
"Title": "HouseMaterielinfo.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Common\\HouseMaterielinfo.cs",
"RelativeDocumentMoniker": "WIDESEA_Common\\HouseMaterielinfo.cs",
@@ -616,12 +655,11 @@
"RelativeToolTip": "WIDESEA_Common\\HouseMaterielinfo.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAEsAAAAWAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-28T06:28:01.921Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-28T06:28:01.921Z"
},
{
"$type": "Document",
- "DocumentIndex": 29,
+ "DocumentIndex": 34,
"Title": "OutboundOrderDetailService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_OutboundService\\Base\\OutboundOrderDetailService.cs",
"RelativeDocumentMoniker": "WIDESEA_OutboundService\\Base\\OutboundOrderDetailService.cs",
@@ -633,7 +671,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 30,
+ "DocumentIndex": 35,
"Title": "IOutStockLockInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IOutboundService\\IOutStockLockInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_IOutboundService\\IOutStockLockInfoService.cs",
@@ -645,7 +683,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 31,
+ "DocumentIndex": 36,
"Title": "RepositoryBase.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
"RelativeDocumentMoniker": "WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
@@ -657,7 +695,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 32,
+ "DocumentIndex": 37,
"Title": "PartialTaskService_AGV.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\PartialTaskService_AGV.cs",
"RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\PartialTaskService_AGV.cs",
@@ -669,19 +707,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 33,
- "Title": "LocationInfoService_Common.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
- "RelativeDocumentMoniker": "WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
- "RelativeToolTip": "WIDESEA_BasicService\\Service\\LocationInfoService_Common.cs",
- "ViewState": "AgIAAAoAAAAAAAAAAADgvxkAAAAIAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-19T01:48:01.156Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 34,
+ "DocumentIndex": 38,
"Title": "Microsoft.Common.CurrentVersion.targets",
"DocumentMoniker": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets",
"ToolTip": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets",
@@ -691,7 +717,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 35,
+ "DocumentIndex": 39,
"Title": "IStockInfoRepository.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStockRepository\\IStockInfoRepository.cs",
"RelativeDocumentMoniker": "WIDESEA_IStockRepository\\IStockInfoRepository.cs",
@@ -703,7 +729,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 39,
+ "DocumentIndex": 42,
"Title": "IMaterielInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicService\\IMaterielInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_IBasicService\\IMaterielInfoService.cs",
@@ -715,7 +741,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 38,
+ "DocumentIndex": 41,
"Title": "Dt_MaterielInfo.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Basic\\Dt_MaterielInfo.cs",
"RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Basic\\Dt_MaterielInfo.cs",
@@ -727,7 +753,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 42,
+ "DocumentIndex": 43,
"Title": "WarehouseEnum.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\Enums\\WarehouseEnum.cs",
"RelativeDocumentMoniker": "WIDESEA_Core\\Enums\\WarehouseEnum.cs",
@@ -739,7 +765,7 @@
},
{
"$type": "Document",
- "DocumentIndex": 36,
+ "DocumentIndex": 40,
"Title": "MaterielInfoService.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_BasicService\\Service\\MaterielInfoService.cs",
"RelativeDocumentMoniker": "WIDESEA_BasicService\\Service\\MaterielInfoService.cs",
@@ -747,8 +773,7 @@
"RelativeToolTip": "WIDESEA_BasicService\\Service\\MaterielInfoService.cs",
"ViewState": "AgIAACkAAAAAAAAAAAAAACkAAAAkAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-24T09:21:38.542Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-07-24T09:21:38.542Z"
},
{
"$type": "Document",
@@ -773,18 +798,6 @@
"ViewState": "AgIAAAYAAAAAAAAAAAAuwBYAAABdAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-23T15:21:09.137Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 41,
- "Title": "ILocationInfoService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicService\\ILocationInfoService.cs",
- "RelativeDocumentMoniker": "WIDESEA_IBasicService\\ILocationInfoService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_IBasicService\\ILocationInfoService.cs",
- "RelativeToolTip": "WIDESEA_IBasicService\\ILocationInfoService.cs",
- "ViewState": "AgIAABIAAAAAAAAAAAA5wB4AAAAMAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-22T13:51:05.355Z"
},
{
"$type": "Document",
@@ -872,18 +885,6 @@
},
{
"$type": "Document",
- "DocumentIndex": 43,
- "Title": "ITaskService.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_ITaskInfoService\\ITaskService.cs",
- "RelativeDocumentMoniker": "WIDESEA_ITaskInfoService\\ITaskService.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_ITaskInfoService\\ITaskService.cs",
- "RelativeToolTip": "WIDESEA_ITaskInfoService\\ITaskService.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-20T09:10:37.56Z"
- },
- {
- "$type": "Document",
"DocumentIndex": 47,
"Title": "LocationInfoController.cs",
"DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Basic\\LocationInfoController.cs",
@@ -917,30 +918,6 @@
"ViewState": "AgIAAAEAAAAAAAAAAAAewBgAAAAzAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-07-18T09:01:10.434Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 37,
- "Title": "TaskController.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
- "RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
- "RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\TaskInfo\\TaskController.cs",
- "ViewState": "AgIAABAAAAAAAAAAAAA6wBoAAABDAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-17T14:35:32.265Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 40,
- "Title": "AssignInboundTaskLocation_BC.cs",
- "DocumentMoniker": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
- "RelativeDocumentMoniker": "WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
- "ToolTip": "E:\\KHGITHUB\\JiAnLiKu\\WMS\\WIDESEA_WMSServer\\WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
- "RelativeToolTip": "WIDESEA_TaskInfoService\\AssignInboundTaskLocation_BC.cs",
- "ViewState": "AgIAABwAAAAAAAAAAAAAwBIAAAAiAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-07-17T14:35:21.398Z"
}
]
}
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\350\276\223\351\200\201\347\272\277\357\274\214RGV\345\257\271\346\216\245\345\215\217\350\256\256/~$WCS\344\270\216PLC\351\200\232\344\277\241\345\215\217\350\256\256\0501\051.xlsx" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\350\276\223\351\200\201\347\272\277\357\274\214RGV\345\257\271\346\216\245\345\215\217\350\256\256/~$WCS\344\270\216PLC\351\200\232\344\277\241\345\215\217\350\256\256\0501\051.xlsx"
new file mode 100644
index 0000000..1e0c8b3
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\350\276\223\351\200\201\347\272\277\357\274\214RGV\345\257\271\346\216\245\345\215\217\350\256\256/~$WCS\344\270\216PLC\351\200\232\344\277\241\345\215\217\350\256\256\0501\051.xlsx"
Binary files differ
--
Gitblit v1.9.3