已添加6个文件
已重命名1个文件
已删除9个文件
已修改28个文件
| | |
| | | "WorkspaceRootPath": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\", |
| | | "Documents": [ |
| | | { |
| | | "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_tasks\\\u677F\u6750\u4ED3\\stackercranejob_bc.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
| | |
| | | "DocumentGroups": [ |
| | | { |
| | | "DockedWidth": 200, |
| | | "SelectedChildIndex": 13, |
| | | "SelectedChildIndex": 18, |
| | | "Children": [ |
| | | { |
| | | "$type": "Bookmark", |
| | | "Name": "ST:128:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}" |
| | | }, |
| | | { |
| | | "$type": "Bookmark", |
| | | "Name": "ST:128:0:{1fc202d4-d401-403c-9834-5b218574bb67}" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs", |
| | | "ViewState": "AgIAAIYAAAAAAAAAAAAuwJsAAAAZAAAAAAAAAA==", |
| | | "ViewState": "AgIAAKsAAAAAAAAAAAAQwL0AAAAyAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-11T00:40:43.019Z" |
| | | "WhenOpened": "2026-01-11T00:40:43.019Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 9, |
| | | "DocumentIndex": 6, |
| | | "Title": "StackerCraneJob_YS.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs", |
| | | "ViewState": "AgIAAH8AAAAAAAAAAAAIwJoAAAAYAAAAAAAAAA==", |
| | | "ViewState": "AgIAAIoAAAAAAAAAAAAQwJoAAAAYAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-10T03:13:51.591Z" |
| | | "WhenOpened": "2026-01-10T03:13:51.591Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 10, |
| | | "DocumentIndex": 2, |
| | | "Title": "StackerCraneJob_FL.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs", |
| | | "ViewState": "AgIAAIIAAAAAAAAAAAAEwJsAAAAcAAAAAAAAAA==", |
| | | "ViewState": "AgIAAIUAAAAAAAAAAAAEwJEAAAAJAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-10T02:30:29.849Z" |
| | | "WhenOpened": "2026-01-10T02:30:29.849Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 7, |
| | | "DocumentIndex": 1, |
| | | "Title": "RGVJob_L2.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs", |
| | | "ViewState": "AgIAAE0AAAAAAAAAAAAYwFUAAAAYAAAAAAAAAA==", |
| | | "ViewState": "AgIAAFsAAAAAAAAAAAAYwFUAAAAYAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-09T06:57:14.268Z" |
| | | "WhenOpened": "2026-01-09T06:57:14.268Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 6, |
| | | "DocumentIndex": 10, |
| | | "Title": "RGVJob_L1.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs", |
| | |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs", |
| | | "ViewState": "AgIAAE0AAAAAAAAAAAAIwFUAAAAZAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-09T06:45:58.141Z" |
| | | "WhenOpened": "2026-01-09T06:45:58.141Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 2, |
| | | "DocumentIndex": 9, |
| | | "Title": "appsettings.json", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json", |
| | | "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json", |
| | | "ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAANAAAAAAAAAA==", |
| | | "ViewState": "AgIAABUAAAAAAAAAAAAAACQAAAAAAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|", |
| | | "WhenOpened": "2026-01-08T10:46:15.09Z" |
| | | "WhenOpened": "2026-01-08T10:46:15.09Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 4, |
| | | "DocumentIndex": 3, |
| | | "Title": "CommonConveyorLineJob.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", |
| | | "ViewState": "AgIAAIsAAAAAAAAAAAAAwJsAAAB2AAAAAAAAAA==", |
| | | "ViewState": "AgIAAHwAAAAAAAAAAAAAAJMAAADIAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-08T09:45:25.115Z" |
| | | "WhenOpened": "2026-01-08T09:45:25.115Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 1, |
| | | "DocumentIndex": 11, |
| | | "Title": "TaskController.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 3, |
| | | "DocumentIndex": 4, |
| | | "Title": "ITaskService.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs", |
| | | "ViewState": "AgIAACgBAAAAAAAAAAAuwDgBAABaAAAAAAAAAA==", |
| | | "ViewState": "AgIAAHUAAAAAAAAAAAAzwIUAAAAbAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2025-07-24T06:51:20.03Z" |
| | | "WhenOpened": "2025-07-24T06:51:20.03Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 0, |
| | | "DocumentIndex": 7, |
| | | "Title": "TaskService.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs", |
| | | "ViewState": "AgIAAPIBAAAAAAAAAAAowAUCAAAAAAAAAAAAAA==", |
| | | "ViewState": "AgIAAO8BAAAAAAAAAAAowPQBAAAIAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2025-07-23T05:44:58.595Z", |
| | | "EditorCaption": "" |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 11, |
| | | "DocumentIndex": 8, |
| | | "Title": "ConveyorLineJob_BC.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs", |
| | | "ViewState": "AgIAALsAAAAAAAAAAAAIwMwAAABCAAAAAAAAAA==", |
| | | "ViewState": "AgIAAHYAAAAAAAAAAAAQwHkAAADlAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2025-07-23T04:01:37.222Z" |
| | | "WhenOpened": "2025-07-23T04:01:37.222Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 8, |
| | | "DocumentIndex": 0, |
| | | "Title": "RGVJob_BC.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs", |
| | | "ViewState": "AgIAAE0AAAAAAAAAAAAswFsAAABvAAAAAAAAAA==", |
| | | "ViewState": "AgIAAEcAAAAAAAAAAAAswGIAAABeAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2025-07-23T04:01:40.27Z" |
| | | "WhenOpened": "2025-07-23T04:01:40.27Z", |
| | | "EditorCaption": "" |
| | | } |
| | | ] |
| | | } |
| | |
| | | "WorkspaceRootPath": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\", |
| | | "Documents": [ |
| | | { |
| | | "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_itaskinfoservice\\itaskservice.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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\jianliku\\wcs\\wideseawcs_server\\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\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\jianliku\\wcs\\wideseawcs_server\\wideseawcs_common\\stationtypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
| | | "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\stationtypeenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" |
| | | }, |
| | | { |
| | | "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\khgithub\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\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": [ |
| | |
| | | "DocumentGroups": [ |
| | | { |
| | | "DockedWidth": 200, |
| | | "SelectedChildIndex": 17, |
| | | "SelectedChildIndex": 6, |
| | | "Children": [ |
| | | { |
| | | "$type": "Bookmark", |
| | | "Name": "ST:128:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}" |
| | | }, |
| | | { |
| | | "$type": "Bookmark", |
| | | "Name": "ST:128:0:{1fc202d4-d401-403c-9834-5b218574bb67}" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 8, |
| | | "DocumentIndex": 9, |
| | | "Title": "StackerCraneJob_CP.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_CP.cs", |
| | | "ViewState": "AgIAAIYAAAAAAAAAAAAuwJsAAAAZAAAAAAAAAA==", |
| | | "ViewState": "AgIAAKsAAAAAAAAAAAAQwL0AAAAyAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-11T00:40:43.019Z" |
| | | "WhenOpened": "2026-01-11T00:40:43.019Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 9, |
| | | "DocumentIndex": 10, |
| | | "Title": "StackerCraneJob_YS.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_YS.cs", |
| | | "ViewState": "AgIAAH8AAAAAAAAAAAAIwJoAAAAYAAAAAAAAAA==", |
| | | "ViewState": "AgIAAIoAAAAAAAAAAAAQwJoAAAAYAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-10T03:13:51.591Z" |
| | | "WhenOpened": "2026-01-10T03:13:51.591Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 10, |
| | | "DocumentIndex": 6, |
| | | "Title": "StackerCraneJob_FL.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u5806\u579B\u673A\\StackerCraneJob_FL.cs", |
| | | "ViewState": "AgIAAIIAAAAAAAAAAAAEwJsAAAAcAAAAAAAAAA==", |
| | | "ViewState": "AgIAAIUAAAAAAAAAAAAEwJEAAAAJAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-10T02:30:29.849Z" |
| | | "WhenOpened": "2026-01-10T02:30:29.849Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L2.cs", |
| | | "ViewState": "AgIAAE0AAAAAAAAAAAAYwFUAAAAYAAAAAAAAAA==", |
| | | "ViewState": "AgIAAFsAAAAAAAAAAAAYwFUAAAAYAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-09T06:57:14.268Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 1, |
| | | "DocumentIndex": 0, |
| | | "Title": "RGVJob_L1.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\RGV\\RGVJob_L1.cs", |
| | | "ViewState": "AgIAAE0AAAAAAAAAAAAIwFUAAAAZAAAAAAAAAA==", |
| | | "ViewState": "AgIAAE0AAAAAAAAAAAAIwG4AAABtAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-09T06:45:58.141Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 6, |
| | | "DocumentIndex": 11, |
| | | "Title": "appsettings.json", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json", |
| | | "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json", |
| | | "ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAANAAAAAAAAAA==", |
| | | "ViewState": "AgIAABUAAAAAAAAAAAAAACQAAAAAAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|", |
| | | "WhenOpened": "2026-01-08T10:46:15.09Z" |
| | | "WhenOpened": "2026-01-08T10:46:15.09Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 3, |
| | | "DocumentIndex": 7, |
| | | "Title": "CommonConveyorLineJob.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs", |
| | | "ViewState": "AgIAAIsAAAAAAAAAAAAAwJsAAAB2AAAAAAAAAA==", |
| | | "ViewState": "AgIAAHwAAAAAAAAAAAAAAJMAAADIAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2026-01-08T09:45:25.115Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 13, |
| | | "DocumentIndex": 14, |
| | | "Title": "TaskService_Operate.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService_Operate.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService_Operate.cs", |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 5, |
| | | "DocumentIndex": 12, |
| | | "Title": "TaskController.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs", |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 14, |
| | | "DocumentIndex": 15, |
| | | "Title": "Dt_Task.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs", |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 15, |
| | | "DocumentIndex": 16, |
| | | "Title": "StationTypeEnum.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\StationTypeEnum.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Common\\StationTypeEnum.cs", |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 7, |
| | | "DocumentIndex": 8, |
| | | "Title": "ITaskService.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs", |
| | | "ViewState": "AgIAACgBAAAAAAAAAAAuwDgBAABaAAAAAAAAAA==", |
| | | "ViewState": "AgIAAHUAAAAAAAAAAAAzwIUAAAAbAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2025-07-24T06:51:20.03Z" |
| | | "WhenOpened": "2025-07-24T06:51:20.03Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 4, |
| | | "DocumentIndex": 3, |
| | | "Title": "TaskService.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs", |
| | | "ViewState": "AgIAAPIBAAAAAAAAAAAowAUCAAAAAAAAAAAAAA==", |
| | | "ViewState": "AgIAAO8BAAAAAAAAAAAowPQBAAAIAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2025-07-23T05:44:58.595Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 12, |
| | | "DocumentIndex": 13, |
| | | "Title": "StackerCraneJob_BC.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\StackerCraneJob_BC.cs", |
| | |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 11, |
| | | "DocumentIndex": 4, |
| | | "Title": "ConveyorLineJob_BC.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\ConveyorLineJob_BC.cs", |
| | | "ViewState": "AgIAALsAAAAAAAAAAAAIwMwAAABCAAAAAAAAAA==", |
| | | "ViewState": "AgIAADYAAAAAAAAAAAAIwEEAAAANAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2025-07-23T04:01:37.222Z" |
| | | "WhenOpened": "2025-07-23T04:01:37.222Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 16, |
| | | "DocumentIndex": 1, |
| | | "Title": "TaskTypeEnum.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs", |
| | | "ToolTip": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs", |
| | | "RelativeToolTip": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs", |
| | | "ViewState": "AgIAAH0AAAAAAAAAAADgv5EAAAAaAAAAAAAAAA==", |
| | | "ViewState": "AgIAAH4AAAAAAAAAAAArwG4AAAAIAAAAAAAAAA==", |
| | | "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
| | | "WhenOpened": "2025-07-30T08:37:09.116Z" |
| | | "WhenOpened": "2025-07-30T08:37:09.116Z", |
| | | "EditorCaption": "" |
| | | }, |
| | | { |
| | | "$type": "Document", |
| | | "DocumentIndex": 0, |
| | | "DocumentIndex": 5, |
| | | "Title": "RGVJob_BC.cs", |
| | | "DocumentMoniker": "E:\\KHGITHUB\\\u5409\u5B89\u7ACB\u5E93\u73B0\u7528\u7248\u672C\\JiAnLiKu\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs", |
| | | "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u677F\u6750\u4ED3\\RGVJob_BC.cs", |
| | |
| | | { |
| | | conveyorLine.SetValue(W_ConveyorLineDBName.W_ConveyorLine_ACK, true, item.StationCode); |
| | | _taskService.UpdateTask(task, TaskStatusEnum.RGV_NEW, sourceAddress: item.StationCode, RGVCode: item.AGVStationCode); |
| | | WebResponseContent responseContent = _taskService.LedShowTask(item.StationCode, task.PalletCode, task.TaskType); |
| | | //WebResponseContent responseContent = _taskService.LedShowTask(item.StationCode, task.PalletCode, task.TaskType); |
| | | } |
| | | |
| | | } |
| | |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | } |
| | | if (heightType == 1 && undefinedTypeEmptyLocations.Count == 0) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer >= 3).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer >= 3).ToList(); |
| | | } |
| | | else if (heightType == 2) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | |
| | | |
| | | |
| | | //æªå®ä¹ç±»åçç©ºè´§ä½ |
| | | List<Dt_LocationInfo> undefinedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == LocationTypeEnum.Undefined.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | List<Dt_LocationInfo> undefinedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == LocationTypeEnum.Undefined.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenByDescending(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | |
| | | List<Dt_LocationInfo> definedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == palletType.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | |
| | | if (heightType == 1) |
| | | if (heightType == 2) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 10).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 10).ToList(); |
| | | } |
| | | else if (heightType == 2) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | | } |
| | | else if (heightType == 3) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | } |
| | | //else if (heightType == 3) |
| | | //{ |
| | | // undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | // definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | //} |
| | | //else |
| | | //{ |
| | | // undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => false).ToList(); |
| | |
| | | |
| | | |
| | | private readonly static object _locker_FL = new object(); |
| | | static List<LocationCache> locationCaches_FL= new List<LocationCache>(); |
| | | static List<LocationCache> locationCaches_FL = new List<LocationCache>(); |
| | | /// <summary> |
| | | /// æ¿æä»è´§ä½åé
|
| | | /// </summary> |
| | |
| | | |
| | | |
| | | //æªå®ä¹ç±»åçç©ºè´§ä½ |
| | | List<Dt_LocationInfo> undefinedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == LocationTypeEnum.Undefined.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | List<Dt_LocationInfo> undefinedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == LocationTypeEnum.Undefined.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenByDescending(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | |
| | | List<Dt_LocationInfo> definedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == palletType.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | |
| | | if (heightType == 1) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer > 7).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer > 7).ToList(); |
| | | } |
| | | else if (heightType == 2) |
| | | if (undefinedTypeEmptyLocations == null) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 7).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 7).ToList(); |
| | | } |
| | | else if (heightType == 3) |
| | | if (heightType == 2) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 7).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 7).ToList(); |
| | | } |
| | | |
| | | //else |
| | | //{ |
| | | // undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => false).ToList(); |
| | |
| | | |
| | | |
| | | //æªå®ä¹ç±»åçç©ºè´§ä½ |
| | | List<Dt_LocationInfo> undefinedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == LocationTypeEnum.Undefined.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | List<Dt_LocationInfo> undefinedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == LocationTypeEnum.Undefined.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenByDescending(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | |
| | | List<Dt_LocationInfo> definedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == palletType.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).ToList(); |
| | | |
| | | if (heightType == 1) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | } |
| | | else if (heightType == 2) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | | } |
| | | else if (heightType == 3) |
| | | { |
| | | undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | } |
| | | //if (heightType == 1) |
| | | //{ |
| | | // undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | // definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer >= 14).ToList(); |
| | | //} |
| | | //else if (heightType == 2) |
| | | //{ |
| | | // undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | | // definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 13).ToList(); |
| | | //} |
| | | //else if (heightType == 3) |
| | | //{ |
| | | // undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | // definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList(); |
| | | //} |
| | | //else |
| | | //{ |
| | | // undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => false).ToList(); |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace WIDESEA_Common |
| | | { |
| | | public class HouseStockDetail |
| | | { |
| | | public string No { get; set; } |
| | | |
| | | public List<detailList> DetailList = new List<detailList>(); |
| | | |
| | | public class detailList |
| | | { |
| | | /// <summary> |
| | | /// æçå· |
| | | /// </summary> |
| | | public string LPNNo { get; set; } |
| | | /// <summary> |
| | | /// ç©æç¼ç |
| | | /// </summary> |
| | | public string MaterielCode { get; set; } |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | public string MaterielName { get; set; } |
| | | /// <summary> |
| | | /// æ¹æ¬¡å· |
| | | /// </summary> |
| | | public string BatchNo { get; set; } |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public string LinId { get; set; } |
| | | /// <summary> |
| | | /// çç¹åæ°é |
| | | /// </summary> |
| | | public decimal OrderQuantity { get; set; } |
| | | |
| | | |
| | | public List<string> LabelList = new List<string>(); |
| | | |
| | | } |
| | | } |
| | | } |
| | |
| | | /// </summary> |
| | | [Description("æ¿æä»")] |
| | | SC02_BC, |
| | | /// <summary> |
| | | /// æåä» |
| | | /// </summary> |
| | | [Description("æåä»")] |
| | | SC01_CP, |
| | | /// <summary> |
| | | /// æåä» |
| | | /// </summary> |
| | | [Description("æåä»")] |
| | | SC02_CP, |
| | | /// <summary> |
| | | /// 使¸©ä» |
| | | /// </summary> |
| | | [Description("使¸©ä»")] |
| | | SC01_DW, |
| | | /// <summary> |
| | | /// è¯æ°´ä» |
| | | /// </summary> |
| | | [Description("è¯æ°´ä»")] |
| | | SC01_YS, |
| | | } |
| | | } |
| | |
| | | WebResponseContent AddOutboundOrders(Houseounbound orderAddDTO); |
| | | WebResponseContent InventoryOut(HouseCancelOut houseInventoryOut); |
| | | WebResponseContent SMOMAdjustment(HouseAdjustment houseAdjustment); |
| | | |
| | | WebResponseContent SMOMStock(HouseStockDetail houseStockDetail); |
| | | WebResponseContent InventoryIn(string name, int qty); |
| | | /// <summary> |
| | | /// åé
å··é |
| | |
| | | { |
| | | stockInfo = new Dt_StockInfo() |
| | | { |
| | | BatchNo ="", |
| | | BatchNo = "", |
| | | PalletCode = palletCode, |
| | | PalletType = GetPalletType(warehouse, palletCode),//GetPalletType(warehouse, palletCode) |
| | | IsFull = true, |
| | |
| | | public int GetPalletType(Dt_Warehouse warehouse, string palletCode) |
| | | { |
| | | |
| | | if (warehouse.WarehouseCode == WarehouseEnum.SC01_BC.ObjToString()) |
| | | if (warehouse.WarehouseCode == WarehouseEnum.SC01_DW.ObjToString()) |
| | | { |
| | | Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.CodeStartStr == palletCode.Substring(0, 3)); |
| | | if (palletTypeInfo == null) |
| | |
| | | } |
| | | return palletTypeInfo.PalletType; |
| | | } |
| | | |
| | | |
| | | //else if (warehouse.WarehouseCode == WarehouseEnum.HA152.ObjToString()) |
| | | //{ |
| | | // Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.CodeStartStr == palletCode.Substring(0, 2)); |
| | |
| | | BatchNo = item.BatchNo, |
| | | MaterielSpec = item.MaterieSpec, |
| | | SysQty = item.OrderQuantity, |
| | | TakePalletCode=item.LPNNo, |
| | | TakeDetalStatus = TakeStockDetailStatusEnum.æªçç¹.ObjToInt(), |
| | | }; |
| | | takeStockOrderCP.Details.Add(takeStockOrderDetail); |
| | |
| | | BatchNo = item.BatchNo, |
| | | MaterielSpec = item.MaterieSpec, |
| | | SysQty = item.OrderQuantity, |
| | | TakePalletCode = item.LPNNo, |
| | | Creater = "SMOM", |
| | | CreateDate = DateTime.Now, |
| | | TakeDetalStatus = TakeStockDetailStatusEnum.æªçç¹.ObjToInt(), |
| | |
| | | List<Dt_NewOutboundOrderDetail> detailsForThisLPN = _outboundService.NewOutboundOrderDetailService.Repository.QueryData(x => x.LPNNo == lpn && x.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt()); |
| | | if (detailsForThisLPN.Count == 0) continue; |
| | | newOutboundOrderDetails.AddRange(detailsForThisLPN); |
| | | Dt_StockInfo? stockInfo = _stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode == lpn); |
| | | Dt_StockInfo? stockInfo = _stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode == lpn && x.LocationCode != null); |
| | | if (stockInfo == null) |
| | | { |
| | | throw new Exception($"æªæ¾å°åºåä¿¡æ¯ï¼æçå·{lpn}"); |
| | |
| | | throw new Exception("æªæ¾å°åºåä¿¡æ¯"); |
| | | } |
| | | } |
| | | |
| | | var Newtasks = GetTasks(stockInfos, TaskTypeEnum.OutInventory); |
| | | string orderNo = takeStockOrderCPs.FirstOrDefault().OrderNo; |
| | | var Newtasks = GetTask(stockInfos, TaskTypeEnum.OutInventory, orderNo); |
| | | List<Dt_StockInfoDetail> stockInfoDetails = _stockService.StockInfoDetailService.Repository.QueryData(x => stockInfos.Select(x => x.Id).Contains(x.StockId)); |
| | | foreach (var item in stockInfos) |
| | | { |
| | |
| | | List<Dt_StockInfoDetail> stockdetail = new List<Dt_StockInfoDetail>(); |
| | | foreach (var item in houseAdjustment.DetailList) |
| | | { |
| | | Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.QueryFirst(x => x.PalletCode == item.LPNNo); |
| | | if (stockInfo == null) |
| | | { |
| | | return WebResponseContent.Instance.Error("æªæ¾å°æ¤æçåºå"); |
| | | } |
| | | var dt_StockInfo = BaseDal.Db.Queryable<Dt_StockInfoDetail>().LeftJoin<Dt_StockInfo>((stockdetail, stock) => stockdetail.StockId == stock.Id) |
| | | .Where((stockdetail, stock) => stockdetail.MaterielCode == item.MaterielCode && stockdetail.BatchNo == item.BatchNo && stock.PalletCode == item.LPNNo).Select((stockdetail, stock) => stockdetail).First(); |
| | | if (dt_StockInfo != null) |
| | | { |
| | | dt_StockInfo.StockQuantity = item.OrderQuantity; |
| | | stockdetail.Add(dt_StockInfo); |
| | | } |
| | | else |
| | | { |
| | | Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail() |
| | | { |
| | | StockId = stockInfo.Id, |
| | | MaterielCode = item.MaterielCode, |
| | | MaterielName = item.MaterielName, |
| | | OrderNo = dt_StockInfo.OrderNo, |
| | | BatchNo = item.BatchNo, |
| | | SupplierBatch = dt_StockInfo.SupplierBatch, |
| | | LinId = item.LinId, |
| | | StockQuantity = item.OrderQuantity, |
| | | Status = (int)StockStatusEmun.ç»çæå, |
| | | Creater = "WMS", |
| | | CreateDate = DateTime.Now, |
| | | Id = item.LinId.ObjToInt(), |
| | | MaterieSpec = dt_StockInfo.MaterieSpec, |
| | | OrinalLocation = dt_StockInfo.OrinalLocation |
| | | }; |
| | | stockdetail.Add(stockInfoDetail); |
| | | } |
| | | |
| | | } |
| | |
| | | } |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// SMOMåè´§åæåç®±åºåè°æ´ |
| | | /// </summary> |
| | | /// <param name="houseStockDetail"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent SMOMStock(HouseStockDetail houseStockDetail) |
| | | { |
| | | WebResponseContent responseContent = new WebResponseContent(); |
| | | try |
| | | { |
| | | if (houseStockDetail.DetailList.Count == 0) |
| | | { |
| | | return WebResponseContent.Instance.Error("æ æç»ä¿¡æ¯"); |
| | | } |
| | | List<Dt_StockInfoDetail> stockdetail = new List<Dt_StockInfoDetail>(); |
| | | var allBoxCodes = new List<string>(); |
| | | _unitOfWorkManage.BeginTran(); |
| | | foreach (var item in houseStockDetail.DetailList) |
| | | { |
| | | // æ£æ¥æç»å表æ¯å¦åå¨ä¸ææ |
| | | if (item.LabelList == null || item.LabelList.Count == 0) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æç{item.LPNNo}æ ç®±ç æç»ä¿¡æ¯"); |
| | | } |
| | | allBoxCodes.AddRange(item.LabelList); |
| | | |
| | | Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.QueryFirst(x => x.PalletCode == item.LPNNo); |
| | | if (stockInfo == null) |
| | | { |
| | | return WebResponseContent.Instance.Error("æªæ¾å°æ¤æçåºå"); |
| | | } |
| | | |
| | | var stockdetailbox = BaseDal.Db.Queryable<Dt_StockInfo>().LeftJoin<Dt_StockInfoDetail>((s, d) => s.Id == d.StockId).LeftJoin<Dt_StockInfoDetailCP>((s, d, cp) => d.Id == cp.StockDetailId).Where((s, d, cp) => allBoxCodes.Contains(cp.BoxCode)).Select((s, d, cp) => cp.BoxCode) |
| | | .Distinct() |
| | | .ToList(); |
| | | |
| | | var stockInfoDetailCPList = _stockInfoDetailCPRepository.QueryData(x => stockdetailbox.Contains(x.BoxCode)).ToList(); |
| | | if (stockInfoDetailCPList != null) |
| | | { |
| | | _stockInfoDetailCPRepository.DeleteAndMoveIntoHty(stockInfoDetailCPList, App.User.UserId == 0 ? OperateType.èªå¨å®æ : OperateType.äººå·¥å®æ); |
| | | } |
| | | } |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | _unitOfWorkManage.RollbackTran(); |
| | | return WebResponseContent.Instance.Error($"Error: {ex.Message}"); |
| | | } |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | |
| | | public List<Dt_Task> GetTask(List<Dt_StockInfo> stockInfos, TaskTypeEnum taskType, string orderNo) |
| | | { |
| | | List<Dt_Task> tasks = new List<Dt_Task>(); |
| | | for (int i = 0; i < stockInfos.Count; i++) |
| | | { |
| | | Dt_StockInfo stockInfo = stockInfos[i]; |
| | | |
| | | if (stockInfo != null) |
| | | { |
| | | Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == stockInfo.LocationCode); |
| | | if (locationInfo == null) |
| | | { |
| | | throw new Exception("æªæ¾å°åºåºåºä½"); |
| | | } |
| | | Dt_Task dt_Task = BaseDal.QueryFirst(x => x.SourceAddress == locationInfo.LocationCode || x.TargetAddress == locationInfo.LocationCode); |
| | | if (dt_Task != null) |
| | | { |
| | | throw new Exception("该货ä½å·²åå¨èµ·ç¹ä»»å¡æç»ç¹ä»»å¡"); |
| | | } |
| | | Dt_Task dt_Task1 = BaseDal.QueryFirst(x => x.PalletCode == stockInfo.PalletCode); |
| | | if (dt_Task1 != null) |
| | | { |
| | | throw new Exception("该æçå·²åå¨ä»»å¡"); |
| | | } |
| | | Dt_RoadwayInfo roadwayInfo = _basicService.RoadwayInfoService.Repository.QueryFirst(x => x.RoadwayNo == locationInfo.RoadwayNo); |
| | | Dt_StockInfoDetail stockInfoDetail = _stockService.StockInfoDetailService.Repository.QueryFirst(x => x.StockId == stockInfo.Id); |
| | | if (roadwayInfo != null) |
| | | { |
| | | if (roadwayInfo.RoadwayNo.Contains("CP")) |
| | | { |
| | | Dt_Task task = new() |
| | | { |
| | | PalletType = stockInfo.PalletType, |
| | | OrderNo = orderNo, |
| | | CurrentAddress = locationInfo.LocationCode, |
| | | Grade = 0, |
| | | Creater = "WMS", |
| | | PalletCode = stockInfo.PalletCode, |
| | | NextAddress = roadwayInfo.OutSCStationCode, |
| | | Roadway = locationInfo.RoadwayNo, |
| | | SourceAddress = locationInfo.LocationCode, |
| | | TargetAddress = "", |
| | | TaskStatus = OutTaskStatusEnum.OutNew.ObjToInt(), |
| | | TaskType = taskType.ObjToInt(), |
| | | Depth = locationInfo.Depth, |
| | | WarehouseId = stockInfo.WarehouseId, |
| | | TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), |
| | | MaterielCode = stockInfoDetail.MaterielCode, |
| | | Quantity = (float)stockInfoDetail.StockQuantity |
| | | }; |
| | | tasks.Add(task); |
| | | } |
| | | else |
| | | { |
| | | Dt_Task task = new() |
| | | { |
| | | PalletType = stockInfo.PalletType, |
| | | OrderNo = stockInfoDetail.OrderNo, |
| | | CurrentAddress = locationInfo.LocationCode, |
| | | Grade = 0, |
| | | Creater = "WMS", |
| | | PalletCode = stockInfo.PalletCode, |
| | | NextAddress = roadwayInfo.OutSCStationCode, |
| | | Roadway = locationInfo.RoadwayNo, |
| | | SourceAddress = locationInfo.LocationCode, |
| | | TargetAddress = "", |
| | | TaskStatus = OutTaskStatusEnum.OutNew.ObjToInt(), |
| | | TaskType = taskType.ObjToInt(), |
| | | Depth = locationInfo.Depth, |
| | | WarehouseId = stockInfo.WarehouseId, |
| | | TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)) |
| | | }; |
| | | if (taskType != TaskTypeEnum.OutEmpty) |
| | | { |
| | | task.MaterielCode = stockInfo.Details?.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode; |
| | | task.Quantity = (float)stockInfo.Details?.Where(x => x.StockId == stockInfo.Id).Sum(x => x.StockQuantity); |
| | | } |
| | | tasks.Add(task); |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | } |
| | | return tasks; |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | if (warehouse.WarehouseCode.Contains("CP")) |
| | | { |
| | | Dt_NewOutboundOrder newOutboundOrder = BaseDal.Db.Queryable<Dt_NewOutboundOrder>().Where(x => x.UpperOrderNo == orderAddDTO.No).Includes(x => x.Details).First(); |
| | | |
| | | Dt_Production production1 = new Dt_Production(); |
| | | if (newOutboundOrder != null) |
| | | OutboundOrderAddDTO orderAddDTO1 = new OutboundOrderAddDTO(); |
| | | orderAddDTO1.OrderNo = orderAddDTO.No; |
| | | orderAddDTO1.UpperOrderNo = orderAddDTO.No; |
| | | orderAddDTO1.OutWareHouse = orderAddDTO.OutWareHouse; |
| | | orderAddDTO1.TransactionCode = orderAddDTO.TransactionCode ?? "å·¥ååæ"; |
| | | orderAddDTO1.InoutType = orderAddDTO.OrderType ?? InoutTypeEnum.WorkFeed.ToString(); |
| | | orderAddDTO1.OrderType = orderAddDTO.InoutType; |
| | | orderAddDTO1.System = orderAddDTO.System; |
| | | IEnumerable<int> inOrderTypes = Enum.GetValues<OrderTypeEmun>().Cast<int>(); |
| | | orderAddDTO1.Details = orderAddDTO.DetailList.DicToIEnumerable<OutboundOrderDetailAddDTO>(); |
| | | #region éªè¯æ°æ® |
| | | (bool, string, object?) result = CheckOutboundOrderAddData(orderAddDTO1); |
| | | if (!result.Item1) return content = WebResponseContent.Instance.Error(result.Item2); |
| | | #endregion |
| | | Dt_NewOutboundOrder inboundOrder = _mapper.Map<Dt_NewOutboundOrder>(orderAddDTO1); |
| | | inboundOrder.OrderStatus = InboundStatusEnum.æªå¼å§.ObjToInt(); |
| | | inboundOrder.Creater = "WMS"; |
| | | inboundOrder.CreateDate = DateTime.Now; |
| | | inboundOrder.CreateType = CreateType.UpperSystemPush.ObjToInt(); |
| | | _unitOfWorkManage.BeginTran(); |
| | | bool a = BaseDal.Db.InsertNav(inboundOrder).Include(x => x.Details).ExecuteCommand(); |
| | | |
| | | foreach (var item in orderAddDTO1.Details) |
| | | { |
| | | if (newOutboundOrder.OutWareHouse != warehouse.WarehouseCode) |
| | | if (string.IsNullOrWhiteSpace(item.Remark)) |
| | | { |
| | | return WebResponseContent.Instance.Error($"ä»åºä¸ä¸è´"); |
| | | continue; |
| | | } |
| | | else |
| | | string[] remarkEntries = item.Remark.Split( |
| | | new[] { ';' }, |
| | | StringSplitOptions.RemoveEmptyEntries |
| | | ); |
| | | |
| | | foreach (var entry in remarkEntries) |
| | | { |
| | | OutboundOrderAddDTO orderAddDTO1 = new OutboundOrderAddDTO(); |
| | | orderAddDTO1.Details = orderAddDTO.DetailList.DicToIEnumerable<OutboundOrderDetailAddDTO>(); |
| | | var details = orderAddDTO1.Details.FirstOrDefault(); |
| | | Dt_NewOutboundOrderDetail outboundOrderDetail = new Dt_NewOutboundOrderDetail() |
| | | { |
| | | LPNNo = details.LPNNo, |
| | | BatchNo = details.BatchNo, |
| | | MaterielCode = details.MaterielCode, |
| | | MaterielName = details.MaterielName, |
| | | MaterieSpec = details.MaterieSpec, |
| | | OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(), |
| | | OrderQuantity = details.OrderQuantity, |
| | | LinId = details.LinId, |
| | | OrderId = newOutboundOrder.Id, |
| | | Creater = "WMS", |
| | | CreateDate = DateTime.Now, |
| | | Remark = details.Remark, |
| | | SupplierBatch = details.SupplierBatch, |
| | | OrinalLocation = details.OrinalLocation, |
| | | }; |
| | | _newOutboundOrderDetailRepository.AddData(outboundOrderDetail); |
| | | foreach (var item in orderAddDTO1.Details) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(item.Remark)) |
| | | { |
| | | continue; |
| | | } |
| | | string[] remarkEntries = item.Remark.Split( |
| | | new[] { ';' }, |
| | | StringSplitOptions.RemoveEmptyEntries |
| | | ); |
| | | |
| | | foreach (var entry in remarkEntries) |
| | | { |
| | | string[] keyValuePairs = entry.Split( |
| | | new[] { ',' }, |
| | | StringSplitOptions.RemoveEmptyEntries |
| | | ); |
| | | |
| | | foreach (var kvp in keyValuePairs) |
| | | { |
| | | int colonIndex = kvp.IndexOf(':'); |
| | | if (colonIndex <= 0 || colonIndex >= kvp.Length - 1) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | string key = kvp.Substring(0, colonIndex).Trim(); |
| | | string value = kvp.Substring(colonIndex + 1).Trim(); |
| | | |
| | | switch (key) |
| | | { |
| | | case "å¶é åå·": |
| | | production1.ProductionNo = value; |
| | | break; |
| | | case "å¶é é¨ä»¶": |
| | | production1.ManufacturingCo = value; |
| | | break; |
| | | case "åºåºæ°é": |
| | | if (decimal.TryParse(value, out decimal outQuantity)) |
| | | { |
| | | production1.OutQuantity = outQuantity; |
| | | } |
| | | else |
| | | { |
| | | Console.WriteLine($"åºåºæ°éæ ¼å¼é误ï¼{value}ï¼åºä¸ºæ°å¼ï¼å¦14.0000ï¼"); |
| | | } |
| | | break; |
| | | default: |
| | | Console.WriteLine($"æªç¥é®åï¼{key}ï¼å¯¹åºå¼ï¼{value}ï¼è·³è¿è¯¥é®å¼å¯¹ï¼"); |
| | | break; |
| | | } |
| | | |
| | | } |
| | | production1.Creater = "WMS"; |
| | | production1.OrderId = outboundOrderDetail.Id; |
| | | _productionRepository.AddData(production1); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | OutboundOrderAddDTO orderAddDTO1 = new OutboundOrderAddDTO(); |
| | | orderAddDTO1.OrderNo = orderAddDTO.No; |
| | | orderAddDTO1.UpperOrderNo = orderAddDTO.No; |
| | | orderAddDTO1.OutWareHouse = orderAddDTO.OutWareHouse; |
| | | orderAddDTO1.TransactionCode = orderAddDTO.TransactionCode ?? "å·¥ååæ"; |
| | | orderAddDTO1.InoutType = orderAddDTO.OrderType ?? InoutTypeEnum.WorkFeed.ToString(); |
| | | orderAddDTO1.OrderType = orderAddDTO.InoutType; |
| | | orderAddDTO1.System = orderAddDTO.System; |
| | | IEnumerable<int> inOrderTypes = Enum.GetValues<OrderTypeEmun>().Cast<int>(); |
| | | orderAddDTO1.Details = orderAddDTO.DetailList.DicToIEnumerable<OutboundOrderDetailAddDTO>(); |
| | | #region éªè¯æ°æ® |
| | | (bool, string, object?) result = CheckOutboundOrderAddData(orderAddDTO1); |
| | | if (!result.Item1) return content = WebResponseContent.Instance.Error(result.Item2); |
| | | #endregion |
| | | Dt_NewOutboundOrder inboundOrder = _mapper.Map<Dt_NewOutboundOrder>(orderAddDTO1); |
| | | inboundOrder.OrderStatus = InboundStatusEnum.æªå¼å§.ObjToInt(); |
| | | inboundOrder.Creater = "WMS"; |
| | | inboundOrder.CreateDate = DateTime.Now; |
| | | inboundOrder.CreateType = CreateType.UpperSystemPush.ObjToInt(); |
| | | _unitOfWorkManage.BeginTran(); |
| | | bool a = BaseDal.Db.InsertNav(inboundOrder).Include(x => x.Details).ExecuteCommand(); |
| | | |
| | | foreach (var item in orderAddDTO1.Details) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(item.Remark)) |
| | | { |
| | | continue; |
| | | } |
| | | string[] remarkEntries = item.Remark.Split( |
| | | new[] { ';' }, |
| | | string[] keyValuePairs = entry.Split( |
| | | new[] { ',' }, |
| | | StringSplitOptions.RemoveEmptyEntries |
| | | ); |
| | | |
| | | foreach (var entry in remarkEntries) |
| | | foreach (var kvp in keyValuePairs) |
| | | { |
| | | string[] keyValuePairs = entry.Split( |
| | | new[] { ',' }, |
| | | StringSplitOptions.RemoveEmptyEntries |
| | | ); |
| | | |
| | | foreach (var kvp in keyValuePairs) |
| | | int colonIndex = kvp.IndexOf(':'); |
| | | if (colonIndex <= 0 || colonIndex >= kvp.Length - 1) |
| | | { |
| | | int colonIndex = kvp.IndexOf(':'); |
| | | if (colonIndex <= 0 || colonIndex >= kvp.Length - 1) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | string key = kvp.Substring(0, colonIndex).Trim(); |
| | | string value = kvp.Substring(colonIndex + 1).Trim(); |
| | | |
| | | switch (key) |
| | | { |
| | | case "å¶é åå·": |
| | | production1.ProductionNo = value; |
| | | break; |
| | | case "å¶é é¨ä»¶": |
| | | production1.ManufacturingCo = value; |
| | | break; |
| | | case "åºåºæ°é": |
| | | if (decimal.TryParse(value, out decimal outQuantity)) |
| | | { |
| | | production1.OutQuantity = outQuantity; |
| | | } |
| | | else |
| | | { |
| | | Console.WriteLine($"åºåºæ°éæ ¼å¼é误ï¼{value}ï¼åºä¸ºæ°å¼ï¼å¦14.0000ï¼"); |
| | | } |
| | | break; |
| | | default: |
| | | Console.WriteLine($"æªç¥é®åï¼{key}ï¼å¯¹åºå¼ï¼{value}ï¼è·³è¿è¯¥é®å¼å¯¹ï¼"); |
| | | break; |
| | | } |
| | | |
| | | continue; |
| | | } |
| | | production1.Creater = "WMS"; |
| | | production1.OrderId = inboundOrder.Details.FirstOrDefault().Id; |
| | | _productionRepository.AddData(production1); |
| | | |
| | | string key = kvp.Substring(0, colonIndex).Trim(); |
| | | string value = kvp.Substring(colonIndex + 1).Trim(); |
| | | |
| | | switch (key) |
| | | { |
| | | case "å¶é åå·": |
| | | production1.ProductionNo = value; |
| | | break; |
| | | case "å¶é é¨ä»¶": |
| | | production1.ManufacturingCo = value; |
| | | break; |
| | | case "åºåºæ°é": |
| | | if (decimal.TryParse(value, out decimal outQuantity)) |
| | | { |
| | | production1.OutQuantity = outQuantity; |
| | | } |
| | | else |
| | | { |
| | | Console.WriteLine($"åºåºæ°éæ ¼å¼é误ï¼{value}ï¼åºä¸ºæ°å¼ï¼å¦14.0000ï¼"); |
| | | } |
| | | break; |
| | | default: |
| | | Console.WriteLine($"æªç¥é®åï¼{key}ï¼å¯¹åºå¼ï¼{value}ï¼è·³è¿è¯¥é®å¼å¯¹ï¼"); |
| | | break; |
| | | } |
| | | |
| | | } |
| | | production1.Creater = "WMS"; |
| | | production1.OrderId = inboundOrder.Details.FirstOrDefault().Id; |
| | | _productionRepository.AddData(production1); |
| | | } |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | _unitOfWorkManage.CommitTran(); |
| | | |
| | | } |
| | | else |
| | | { |
| | |
| | | if (item.Details.Count <= 0) |
| | | { |
| | | return content.Error($"æªæ¾å°{item.PalletCode}åºåæç»æ°æ®"); |
| | | } |
| | | if (item.System.Contains("SMOM")) |
| | | { |
| | | return content.Error($"SMOMç³»ç»åºåæ°æ®ä¸å¯æå¨çç¹ï¼æçå·{item.PalletCode}"); |
| | | } |
| | | Dt_LocationInfo? locationInfo = locationInfos.FirstOrDefault(x => x.LocationCode == item.LocationCode); |
| | | if (locationInfo != null && (locationInfo.EnableStatus == EnableStatusEnum.OnlyOut.ObjToInt() || locationInfo.EnableStatus == EnableStatusEnum.Normal.ObjToInt()) && locationInfo.LocationStatus == LocationStatusEnum.InStock.ObjToInt() && item.StockStatus == StockStatusEmun.å
¥åºå®æ.ObjToInt()) |
| | |
| | | private readonly IOutboundOrderDetailRepository _outboundOrderDetailRepository; |
| | | private readonly INewOutboundOrderDetailRepository _newOutboundOrderDetailRepository; |
| | | private readonly IStockInfoDetailRepository _stockInfoDetailRepository; |
| | | private readonly IStockInfoDetailCPRepository _stockInfoDetailCPRepository; |
| | | private readonly IReturnOrderRepository _returnOrderRepository; |
| | | private readonly IProductionRepository _productionRepository; |
| | | private readonly IInboundRepository _inboundRepository; |
| | |
| | | private readonly ITakeStockOrderDetailCPRepository _takeStockOrderDetailCPRepository; |
| | | public ITaskRepository Repository => BaseDal; |
| | | |
| | | public TaskService(ITaskRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IMaterielInfoService materielInfoService, IInboundOrderDetail_HtyService inboundOrderDetail_HtyService, IOutboundOrder_HtyService outboundOrder_HtyService, IOutboundOrderDetail_HtyService outboundOrderDetail_HtyService, IInboundOrder_HtyService inboundOrder_HtyService, IStockRepository stockRepository, IInboundOrderDetailService inboundOrderDetailService, IBasicService basicService, IOutboundService outboundService, IInboundService inboundService, IRecordService recordService, IStockService stockService, ITask_HtyService taskHtyService, ILocationInfoService locationInfoService, IOutboundOrderDetailRepository outboundOrderDetailRepository, IBasicRepository basicRepository, IStockInfoDetailRepository stockInfoDetailRepository, IPalletTypeInfoRepository palletTypeInfoRepository, IReturnOrderRepository returnOrderRepository, IProductionRepository productionRepository, IInboundRepository inboundRepository, INewOutboundOrderDetailRepository newOutboundOrderDetailRepository, ITakeStockOrderCPRepository takeStockOrderCPRepository, ITakeStockOrderDetailCPRepository takeStockOrderDetailCPRepository) : base(BaseDal) |
| | | public TaskService(ITaskRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IMaterielInfoService materielInfoService, IInboundOrderDetail_HtyService inboundOrderDetail_HtyService, IOutboundOrder_HtyService outboundOrder_HtyService, IOutboundOrderDetail_HtyService outboundOrderDetail_HtyService, IInboundOrder_HtyService inboundOrder_HtyService, IStockRepository stockRepository, IInboundOrderDetailService inboundOrderDetailService, IBasicService basicService, IOutboundService outboundService, IInboundService inboundService, IRecordService recordService, IStockService stockService, ITask_HtyService taskHtyService, ILocationInfoService locationInfoService, IOutboundOrderDetailRepository outboundOrderDetailRepository, IBasicRepository basicRepository, IStockInfoDetailRepository stockInfoDetailRepository, IPalletTypeInfoRepository palletTypeInfoRepository, IReturnOrderRepository returnOrderRepository, IProductionRepository productionRepository, IInboundRepository inboundRepository, INewOutboundOrderDetailRepository newOutboundOrderDetailRepository, ITakeStockOrderCPRepository takeStockOrderCPRepository, ITakeStockOrderDetailCPRepository takeStockOrderDetailCPRepository, IStockInfoDetailCPRepository stockInfoDetailCPRepository) : base(BaseDal) |
| | | { |
| | | _mapper = mapper; |
| | | _stockRepository = stockRepository; |
| | |
| | | _newOutboundOrderDetailRepository = newOutboundOrderDetailRepository; |
| | | _takeStockOrderCPRepository = takeStockOrderCPRepository; |
| | | _takeStockOrderDetailCPRepository = takeStockOrderDetailCPRepository; |
| | | _stockInfoDetailCPRepository = stockInfoDetailCPRepository; |
| | | } |
| | | |
| | | public string ReceiveWMSTaskin = WIDESEA_Core.Helper.AppSettings.Configuration["ReceiveWMSTaskin"]; |
| | |
| | | // åæ®æ°éå
¨é¨ä¸æ¶å®æï¼å¤çWMSåä¼ |
| | | if (inboundOrderDetails.Any(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()) && inboundOrder.System.Equals("ERP")) |
| | | { |
| | | if(inboundOrder.OrderStatus == InboundStatusEnum.å
¥åºå®æ.ObjToInt()) |
| | | if (inboundOrder.OrderStatus == InboundStatusEnum.å
¥åºå®æ.ObjToInt()) |
| | | { |
| | | bool allCompleted = inboundOrder.Details.All(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()); |
| | | if (allCompleted) |
| | |
| | | int lastStatus, Dt_InboundOrder inboundOrder, Dt_InboundOrderDetail inboundOrderDetail) |
| | | { |
| | | // æ´æ°å
¥åºåæç»ç¶æ |
| | | UpdateInboundOrderDetails(stockInfo, inboundOrder, ref inboundOrderDetail); |
| | | UpdateInboundOrderDetails(stockInfo, inboundOrder, ref inboundOrderDetail); |
| | | ///æ´æ°åºåç¶æ |
| | | stockInfo.StockStatus = StockStatusEmun.å
¥åºå®æ.ObjToInt(); |
| | | // æ´æ°åºåæç»ç¶æ |
| | |
| | | AddRecords(task, stockInfo, locationInfo, lastStatus); |
| | | |
| | | // æ´æ°å
¥åºå |
| | | UpdateInboundOrder(inboundOrder, inboundOrderDetail); |
| | | UpdateInboundOrder(inboundOrder, inboundOrderDetail); |
| | | |
| | | // åæ®æ°éå
¨é¨ä¸æ¶å®æï¼å¤çWMSåä¼ |
| | | if (inboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt() && inboundOrder.System.Equals("ERP")) |
| | | { |
| | | FeedBackInboundERP(inboundOrder.UpperOrderNo, inboundOrderDetail.LinId); |
| | | } |
| | | if (inboundOrder.OrderStatus == InboundStatusEnum.å
¥åºå®æ.ObjToInt() && inboundOrder.OrderType == 0 && inboundOrder.System.Equals("SMOM")) |
| | | { |
| | | //SendInboundInfoToWMS(task, inboundOrder, stockInfo); |
| | | // åæ®æ°éå
¨é¨ä¸æ¶å®æï¼å¤çWMSåä¼ |
| | | if (inboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt() && inboundOrder.System.Equals("ERP")) |
| | | { |
| | | FeedBackInboundERP(inboundOrder.UpperOrderNo, inboundOrderDetail.LinId); |
| | | } |
| | | else if (inboundOrder.OrderStatus == InboundStatusEnum.å
¥åºå®æ.ObjToInt() && inboundOrder.OrderType == 2 && inboundOrder.System.Equals("SMOM")) |
| | | { |
| | | SendAllocateInfoToWMS(task, inboundOrder, stockInfo); |
| | | } |
| | | if (inboundOrder.OrderStatus == InboundStatusEnum.å
¥åºå®æ.ObjToInt() && inboundOrder.OrderType == 0 && inboundOrder.System.Equals("SMOM")) |
| | | { |
| | | SendInboundInfoToWMS(task, inboundOrder, stockInfo); |
| | | } |
| | | else if (inboundOrder.OrderStatus == InboundStatusEnum.å
¥åºå®æ.ObjToInt() && inboundOrder.OrderType == 2 && inboundOrder.System.Equals("SMOM")) |
| | | { |
| | | SendAllocateInfoToWMS(task, inboundOrder, stockInfo); |
| | | } |
| | | |
| | | _unitOfWorkManage.CommitTran(); |
| | | return WebResponseContent.Instance.OK(); |
| | |
| | | return WebResponseContent.Instance.Error($"å¤ç失败: {ex.Message}"); |
| | | } |
| | | } |
| | | else if(warehouse.WarehouseCode.Contains("DW") || warehouse.WarehouseCode.Contains("YS")) |
| | | else if (warehouse.WarehouseCode.Contains("DW") || warehouse.WarehouseCode.Contains("YS")) |
| | | { |
| | | Dt_OutboundOrder inboundOrder = _outboundService.OutboundOrderService.Db.Queryable<Dt_OutboundOrder>() |
| | | .Where(x => x.OrderNo == task.OrderNo) |
| | |
| | | List<Dt_StockInfoDetail> stockInfoDetails = _stockService.StockInfoDetailService.Db.Queryable<Dt_StockInfoDetail>() |
| | | .Where(x => x.StockId == stockInfo.Id).ToList(); |
| | | |
| | | Dt_ReturnOrder? lastReturnOrder = null; |
| | | Dt_ReturnOrder? lastReturnOrder = null; |
| | | foreach (var stockInfoDetail in stockInfoDetails) |
| | | { |
| | | if (stockInfoDetail == null) |
| | |
| | | System = "WMS", |
| | | Remark = stockInfoDetail.BatchNo |
| | | }; |
| | | if(lastReturnOrder != null) |
| | | if (lastReturnOrder != null) |
| | | { |
| | | lastReturnOrder.Remark = lastReturnOrder.Remark + $", {returnOrder.BatchNo}"; |
| | | _returnOrderRepository.UpdateData(lastReturnOrder); |
| | |
| | | returnOrder.LocationCode = stockInfo.LocationCode; |
| | | } |
| | | _unitOfWorkManage.BeginTran(); |
| | | if(lastReturnOrder == null) |
| | | if (lastReturnOrder == null) |
| | | { |
| | | _returnOrderRepository.AddData(returnOrder); |
| | | lastReturnOrder = returnOrder; |
| | |
| | | var matchedStockDetail = stockInfoDetails.FirstOrDefault(x => x.MaterielCode == outboundDetail.MaterielCode && x.BatchNo == outboundDetail.BatchNo); |
| | | if (matchedStockDetail == null) |
| | | { |
| | | matchedStockDetail = stockInfoDetails.FirstOrDefault(x =>x.MaterielCode == outboundDetail.MaterielCode); |
| | | matchedStockDetail = stockInfoDetails.FirstOrDefault(x => x.MaterielCode == outboundDetail.MaterielCode); |
| | | |
| | | if (matchedStockDetail == null) |
| | | { |
| | |
| | | returnOrders.Add(returnOrder); |
| | | |
| | | // æ´æ°å½åæ¹æ¬¡æç»ï¼åªä¿çåºåºæ°éï¼å
¶ä½è¿åº |
| | | matchedStockDetail.StockQuantity = outboundDetail.OrderQuantity; |
| | | matchedStockDetail.StockQuantity = remainingQuantity; |
| | | matchedStockDetail.OutboundQuantity = outboundDetail.OrderQuantity; |
| | | //matchedStockDetail.OrderNo = returnOrder.OrderNo; |
| | | } |
| | |
| | | try |
| | | { |
| | | //è·å对åºçç¹å |
| | | Dt_TakeStockOrderDetailCP takeStockOrderDetailCP = _takeStockOrderDetailCPRepository.QueryFirst(x => x.TakePalletCode == task.PalletCode); |
| | | if (takeStockOrderDetailCP == null) |
| | | { |
| | | return content.Error($"çç¹åï¼æçå·{takeStockOrderDetailCP.TakePalletCode}ä¸åå¨"); |
| | | } |
| | | Dt_TakeStockOrderCP takeStockOrder = _inboundRepository.TakeStockOrderRepository.Db.Queryable<Dt_TakeStockOrderCP>().Where(x => x.Id == takeStockOrderDetailCP.TakeStockId).Includes(x => x.Details).First(); |
| | | Dt_TakeStockOrderCP takeStockOrder = _inboundRepository.TakeStockOrderRepository.Db.Queryable<Dt_TakeStockOrderCP>().Where(x => x.OrderNo == task.OrderNo).Includes(x => x.Details).First(); |
| | | if (takeStockOrder == null) |
| | | { |
| | | return content.Error($"çç¹å{task.OrderNo}ä¸åå¨"); |
| | |
| | | _returnOrderRepository.AddData(returnOrder); |
| | | _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, beforeStatus, LocationStatusEnum.Lock.ObjToInt(), LocationChangeType.OutboundCompleted.ObjToInt(), takeStockOrder?.OrderNo ?? "", task.TaskNum); |
| | | _takeStockOrderCPRepository.UpdateData(takeStockOrder); |
| | | _takeStockOrderDetailCPRepository.UpdateData(takeStockOrder.Details); |
| | | _stockRepository.StockInfoRepository.UpdateData(stockInfo); |
| | | _stockRepository.StockInfoDetailRepository.UpdateData(stockInfo.Details); |
| | | BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId == 0 ? OperateType.èªå¨å®æ : OperateType.äººå·¥å®æ); |
| | |
| | | { |
| | | return Service.SMOMAdjustment(houseAdjustment); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// SMOMåè´§åæåç®±åºåè°æ´ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost, Route("SMOMStock"), AllowAnonymous] |
| | | public WebResponseContent SMOMStock([FromBody] HouseStockDetail houseStockDetail) |
| | | { |
| | | return Service.SMOMStock(houseStockDetail); |
| | | } |
| | | } |
| | | } |
| | |
| | | { |
| | | "urls": "http://*:9290", //webæå¡ç«¯å£ï¼å¦æç¨IISé¨ç½²ï¼æè¿ä¸ªå»æ |
| | | "Logging": { |
| | | "LogLevel": { |
| | | "Default": "Information", |
| | | "Microsoft.AspNetCore": "Warning" |
| | | } |
| | | }, |
| | | "dics": "inOrderType,inoutType,outOrderType,inboundState,createType,enableEnum,enableStatusEnum,locationStatusEnum,locationTypeEnum,taskTypeEnum,taskStatusEnum,outboundStatusEnum,orderDetailStatusEnum,stockStatusEmun,stockChangeType,outStockStatus,InventoryMaterialType,Inventory,materialStatus,warehouses,inoutTypeEnum,takeStockStatusEnum,takeStockDetailStatusEnum", |
| | | "AllowedHosts": "*", |
| | | "urls": "http://*:9290", //webæå¡ç«¯å£ï¼å¦æç¨IISé¨ç½²ï¼æè¿ä¸ªå»æ |
| | | "Logging": { |
| | | "LogLevel": { |
| | | "Default": "Information", |
| | | "Microsoft.AspNetCore": "Warning" |
| | | } |
| | | }, |
| | | "dics": "inOrderType,inoutType,outOrderType,inboundState,createType,enableEnum,enableStatusEnum,locationStatusEnum,locationTypeEnum,taskTypeEnum,taskStatusEnum,outboundStatusEnum,orderDetailStatusEnum,stockStatusEmun,stockChangeType,outStockStatus,InventoryMaterialType,Inventory,materialStatus,warehouses,inoutTypeEnum,takeStockStatusEnum,takeStockDetailStatusEnum", |
| | | "AllowedHosts": "*", |
| | | |
| | | "ReceiveTask": "http://192.168.110.172:9291/api/Task/ReceiveTask", //ä¸ååºåºä»»å¡è³WCS |
| | | "ReceiveWMSTaskin": "http://172.30.0.190:1031/api/dataportal/invoke", //ç«åºå
¥åºæ°éä¿¡æ¯åä¼ WMS |
| | | "ReceiveWMSTaskreturn": "http://172.30.0.190:1031/api/dataportal/invoke", //ç«åºååºæ°éä¿¡æ¯åä¼ WMS |
| | | "ReceiveWMSTaskout": "http://172.30.0.190:1031/api/dataportal/invoke", //ç«åºåºåºæ°éä¿¡æ¯åä¼ WMS |
| | | "ReceiveWMSTaskAUT": "http://172.30.0.190:1031/api/dataportal/invoke", //ç«åºå
¥åºæ°éä¿¡æ¯åä¼ WMSéªè¯ |
| | | "ReceiveWMSInventoryIn": "http://172.30.0.190:1031/api/dataportal/invoke", //çç¹å·®å¼æ°éåä¼ WMS |
| | | "ReceiveWMSTaskAllocatein": "http://172.30.0.190:1031/api/dataportal/invoke", //è°æ¨ä»»å¡æ°éåä¼ WMS |
| | | "ReceiveWMSTask": "http://192.168.110.172:9291/ReceiveWMSTask", //æ¥è¯¢åºåï¼ç¡®è®¤å
¥åºç«å° |
| | | "ReceiveTask": "http://192.168.110.172:9291/api/Task/ReceiveTask", //ä¸ååºåºä»»å¡è³WCS |
| | | "ReceiveWMSTaskin": "http://172.30.0.190:1031/api/dataportal/invoke", //ç«åºå
¥åºæ°éä¿¡æ¯åä¼ WMS |
| | | "ReceiveWMSTaskreturn": "http://172.30.0.190:1031/api/dataportal/invoke", //ç«åºååºæ°éä¿¡æ¯åä¼ WMS |
| | | "ReceiveWMSTaskout": "http://172.30.0.190:1031/api/dataportal/invoke", //ç«åºåºåºæ°éä¿¡æ¯åä¼ WMS |
| | | "ReceiveWMSTaskAUT": "http://172.30.0.190:1031/api/dataportal/invoke", //ç«åºå
¥åºæ°éä¿¡æ¯åä¼ WMSéªè¯ |
| | | "ReceiveWMSInventoryIn": "http://172.30.0.190:1031/api/dataportal/invoke", //çç¹å·®å¼æ°éåä¼ WMS |
| | | "ReceiveWMSTaskAllocatein": "http://172.30.0.190:1031/api/dataportal/invoke", //è°æ¨ä»»å¡æ°éåä¼ WMS |
| | | "ReceiveWMSTask": "http://192.168.110.172:9291/ReceiveWMSTask", //æ¥è¯¢åºåï¼ç¡®è®¤å
¥åºç«å° |
| | | |
| | | "ReceiveERPTaskout": "http://172.30.0.184:99/external/asrs/api/OutMaterialWarehousingCallback", //ç«åºåºåºæ°éä¿¡æ¯åä¼ ERP |
| | | "CancelOutFeedbackERP": "http://172.30.0.184:99/external/asrs/api/CancelOutMaterialWarehousing", //åºåºåæç»åæ¶åä¼ ERP |
| | | "InMaterialWarehousingCallback": "http://172.30.0.184:99/external/asrs/api/InMaterialWarehousingCallback", //å
¥åºå宿åä¼ ERP |
| | | "CancelInMaterialWarehousing": "http://172.30.0.184:99/external/asrs/api/CancelInMaterialWarehousing", //å
¥åºååæ¶åä¼ ERP |
| | | "ConnectionStringsEncryption": false, |
| | | "MainDB": "DB_WIDESEA", //å½å项ç®ç主åºï¼æå¯¹åºçè¿æ¥å符串çEnabledå¿
须为true |
| | | //è¿æ¥å符串 |
| | | //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=", |
| | | "ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWMS_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=WIDESEAWMS_JAMK;User ID=sa;Password=sa123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", |
| | | //è·¨å |
| | | "Cors": { |
| | | "PolicyName": "CorsIpAccess", //çç¥åç§° |
| | | "EnableAllIPs": true, //å½ä¸ºtrueæ¶ï¼å¼æ¾ææIPåå¯è®¿é®ã |
| | | // æ¯æå¤ä¸ªåå端å£ï¼æ³¨æç«¯å£å·åä¸è¦å¸¦/ææï¼æ¯å¦localhost:8000/ï¼æ¯éç |
| | | // 注æï¼http://127.0.0.1:1818 å http://localhost:1818 æ¯ä¸ä¸æ ·ç |
| | | "IPs": "http://127.0.0.1:8080,http://localhost:8080" |
| | | }, |
| | | "ERP": "http://172.30.0.184:99", |
| | | "WCS": "http://localhost:9291", |
| | | "PrinterName": "SHARP MX-5148NC PCL6", |
| | | "ApiName": "WIDESEA", |
| | | "ExpMinutes": 120, |
| | | "QuartzJobAutoStart": true |
| | | "ReceiveERPTaskout": "http://10.168.3.29:99/external/asrs/api/OutMaterialWarehousingCallback", //ç«åºåºåºæ°éä¿¡æ¯åä¼ ERP |
| | | "CancelOutFeedbackERP": "http://10.168.3.29:99/external/asrs/api/CancelOutMaterialWarehousing", //åºåºåæç»åæ¶åä¼ ERP |
| | | "InMaterialWarehousingCallback": "http://10.168.3.29:99/external/asrs/api/InMaterialWarehousingCallback", //å
¥åºå宿åä¼ ERP |
| | | "CancelInMaterialWarehousing": "http://10.168.3.29:99/external/asrs/api/CancelInMaterialWarehousing", //å
¥åºååæ¶åä¼ ERP |
| | | "ConnectionStringsEncryption": false, |
| | | "MainDB": "DB_WIDESEA", //å½å项ç®ç主åºï¼æå¯¹åºçè¿æ¥å符串çEnabledå¿
须为true |
| | | //è¿æ¥å符串 |
| | | //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=", |
| | | //"ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWMS_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=WIDESEAWMS_JAMK;User ID=sa;Password=sa123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", |
| | | //è·¨å |
| | | "Cors": { |
| | | "PolicyName": "CorsIpAccess", //çç¥åç§° |
| | | "EnableAllIPs": true, //å½ä¸ºtrueæ¶ï¼å¼æ¾ææIPåå¯è®¿é®ã |
| | | // æ¯æå¤ä¸ªåå端å£ï¼æ³¨æç«¯å£å·åä¸è¦å¸¦/ææï¼æ¯å¦localhost:8000/ï¼æ¯éç |
| | | // 注æï¼http://127.0.0.1:1818 å http://localhost:1818 æ¯ä¸ä¸æ ·ç |
| | | "IPs": "http://127.0.0.1:8080,http://localhost:8080" |
| | | }, |
| | | "ERP": "http://172.30.0.184:99", |
| | | "WCS": "http://localhost:9291", |
| | | "PrinterName": "SHARP MX-5148NC PCL6", |
| | | "ApiName": "WIDESEA", |
| | | "ExpMinutes": 120, |
| | | "QuartzJobAutoStart": true |
| | | } |
| | |
| | | let config = { |
| | | baseUrl: 'http://127.0.0.1:9290', |
| | | // baseUrl: 'http://10.168.1.226:9290', |
| | | // baseUrl: 'http://127.0.0.1:9290', |
| | | baseUrl: 'http://10.168.1.226:9290', |
| | | urls: [ |
| | | 'http://10.30.4.92:9283', |
| | | 'http://10.30.4.92:9283' |
| | |
| | | <uni-search-bar @confirm="search" v-model="searchValue"></uni-search-bar> |
| | | </view> |
| | | </u-sticky> |
| | | <uni-list :border="true"> |
| | | <uni-list-item direction="column" clickable @click="groupClick(item.orderNo)" link :to="page+item.orderNo" |
| | | v-for="item in allReceivingOrders" :key="item.orderNo"> |
| | | <template v-slot:body> |
| | | <uni-group margin-top="20"> |
| | | <view |
| | | style="line-height: 17px;color: #596671;font-size: 14px;text-align: center;display: flex;justify-content: space-between;"> |
| | | å
¥åºåå· {{item.orderNo}} |
| | | </view> |
| | | <view |
| | | style="margin-top: 10rpx;line-height: 17px;color: #596671;font-size: 14px;text-align: center;display: flex;justify-content: space-between;"> |
| | | å建人å {{item.creater}} |
| | | </view> |
| | | <view |
| | | style="margin-top: 10rpx;line-height: 17px;color: #596671;font-size: 14px;text-align: center;display: flex;justify-content: space-between;"> |
| | | åå»ºæ¥æ {{item.createDate}} |
| | | </view> |
| | | <view style="margin-top: 10rpx;display: flex;align-items: center; "> |
| | | |
| | | <!-- å°é¡µé¢å
容å
è£
å¨ scroll-view ä¸ --> |
| | | <scroll-view |
| | | scroll-y |
| | | :style="{height: 'calc(100vh - 100px)'}" |
| | | @scrolltolower="onReachBottom" |
| | | ref="scrollView" |
| | | > |
| | | <uni-list :border="true"> |
| | | <uni-list-item direction="column" clickable @click="groupClick(item.orderNo)" link :to="page+item.orderNo" |
| | | v-for="item in allReceivingOrders" :key="item.orderNo"> |
| | | <template v-slot:body> |
| | | <uni-group margin-top="20"> |
| | | <view |
| | | style="text-align: center;line-height: 40rpx;border-radius: 8rpx; width: 238rpx;height: 40rpx;font-size: 22rpx;background-color:rgba(22,127,247,0.18);color: #1F63FF;"> |
| | | 订åç¶æ {{item.InboundOrderStatus}} |
| | | style="line-height: 17px;color: #596671;font-size: 14px;text-align: center;display: flex;justify-content: space-between;"> |
| | | å
¥åºåå· {{item.orderNo}} |
| | | </view> |
| | | <view |
| | | style="text-align: center;line-height: 40rpx;border-radius: 8rpx; width: 158rpx;height: 40rpx;font-size: 22rpx;color: #F56C6C;"> |
| | | æ»é {{item.SumQty}} |
| | | style="margin-top: 10rpx;line-height: 17px;color: #596671;font-size: 14px;text-align: center;display: flex;justify-content: space-between;"> |
| | | å建人å {{item.creater}} |
| | | </view> |
| | | <view |
| | | style="text-align: center;line-height: 40rpx;border-radius: 8rpx; width: 158rpx;height: 40rpx;font-size: 22rpx;color: #F56C6C;"> |
| | | å·²ç»ç {{item.RecQty}} |
| | | style="margin-top: 10rpx;line-height: 17px;color: #596671;font-size: 14px;text-align: center;display: flex;justify-content: space-between;"> |
| | | åå»ºæ¥æ {{item.createDate}} |
| | | </view> |
| | | <view |
| | | style="text-align: center;line-height: 40rpx;border-radius: 8rpx; width: 158rpx;height: 40rpx;font-size: 22rpx;color: #F56C6C;"> |
| | | å·²å
¥ {{item.OverQty}} |
| | | <view style="margin-top: 10rpx;display: flex;align-items: center; "> |
| | | <view |
| | | style="text-align: center;line-height: 40rpx;border-radius: 8rpx; width: 238rpx;height: 40rpx;font-size: 22rpx;background-color:rgba(22,127,247,0.18);color: #1F63FF;"> |
| | | 订åç¶æ {{item.InboundOrderStatus}} |
| | | </view> |
| | | <view |
| | | style="text-align: center;line-height: 40rpx;border-radius: 8rpx; width: 158rpx;height: 40rpx;font-size: 22rpx;color: #F56C6C;"> |
| | | æ»é {{item.SumQty}} |
| | | </view> |
| | | <view |
| | | style="text-align: center;line-height: 40rpx;border-radius: 8rpx; width: 158rpx;height: 40rpx;font-size: 22rpx;color: #F56C6C;"> |
| | | å·²ç»ç {{item.RecQty}} |
| | | </view> |
| | | <view |
| | | style="text-align: center;line-height: 40rpx;border-radius: 8rpx; width: 158rpx;height: 40rpx;font-size: 22rpx;color: #F56C6C;"> |
| | | å·²å
¥ {{item.OverQty}} |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </uni-group> |
| | | </template> |
| | | </uni-list-item> |
| | | </uni-group> |
| | | </template> |
| | | </uni-list-item> |
| | | |
| | | </uni-list> |
| | | <uni-load-more :status="status" v-if="loadVisible"></uni-load-more> |
| | | </uni-list> |
| | | <uni-load-more :status="status" v-if="loadVisible"></uni-load-more> |
| | | |
| | | <u-back-top :scroll-top="scrollTop" top="400"></u-back-top> |
| | | <u-back-top :scroll-top="scrollTop" top="400"></u-back-top> |
| | | </scroll-view> |
| | | </view> |
| | | </template> |
| | | |
| | |
| | | pageNo: 1, |
| | | scrollTop: 0, |
| | | warehouseId: "", |
| | | isLoaded: false |
| | | isLoaded: false, |
| | | // æ·»å ä¸ä¸ªåéè®°å½æ¯å¦æ£å¨å è½½ |
| | | isLoadingMore: false |
| | | } |
| | | }, |
| | | onLoad(res) { |
| | |
| | | this.page = this.page + "warehouseId=" + this.warehouseId + "&orderNo="; |
| | | this.getData(); |
| | | }, |
| | | onReachBottom() { |
| | | this.pageNo += 1; |
| | | this.getData(); |
| | | this.isLoaded = true; |
| | | }, |
| | | // ç§»é¤åæ¥ç onReachBottomï¼ä½¿ç¨ scroll-view ç @scrolltolower |
| | | onShow() { |
| | | if (this.isLoaded) { |
| | | // ä»å
¶ä»é¡µé¢è¿åæ¶å·æ° |
| | |
| | | groupClick() { |
| | | |
| | | }, |
| | | // scroll-view æ»å¨å°åºé¨æ¶è§¦å |
| | | onReachBottom() { |
| | | if (this.isLoadingMore || this.status === 'noMore') return; |
| | | |
| | | this.isLoadingMore = true; |
| | | this.pageNo += 1; |
| | | this.status = "loading"; |
| | | |
| | | this.getData(); |
| | | }, |
| | | getData() { |
| | | var postData = { |
| | | MainData: { |
| | |
| | | this.$u.post('/api/InboundOrder/GetInboundOrders', postData).then((res) => { |
| | | if (res.status) { |
| | | if (res.data.length > 0) { |
| | | const newData = res.data.map(i => ({ |
| | | ...i, |
| | | InboundOrderStatus: InboundOrderStatus.find(item => item.value == i |
| | | .orderStatus).label, |
| | | SumQty: i.details.map(item => item.orderQuantity).reduce((prev, |
| | | next) => prev + next, 0), |
| | | OverQty: i.details.map(item => item.overInQuantity).reduce((prev, |
| | | next) => prev + next, 0), |
| | | RecQty: i.details.map(item => item.receiptQuantity).reduce((prev, |
| | | next) => prev + next, 0) |
| | | })); |
| | | |
| | | if (this.searchValue == '') { |
| | | this.allReceivingOrders = res.data.map(i => ({ |
| | | ...i, |
| | | InboundOrderStatus: InboundOrderStatus.find(item => item.value == i |
| | | .orderStatus).label, |
| | | SumQty: i.details.map(item => item.orderQuantity).reduce((prev, |
| | | next) => prev + next, 0), |
| | | OverQty: i.details.map(item => item.overInQuantity).reduce((prev, |
| | | next) => prev + next, 0), |
| | | RecQty: i.details.map(item => item.receiptQuantity).reduce((prev, |
| | | next) => prev + next, 0) |
| | | })); |
| | | // this.allReceivingOrders = res.data; |
| | | // è¿½å æ°æ®è䏿¯æ¿æ¢ |
| | | this.allReceivingOrders = [...this.allReceivingOrders, ...newData]; |
| | | if (this.allReceivingOrders.length > 3) { |
| | | this.loadVisible = true; |
| | | } else { |
| | | this.loadVisible = false; |
| | | } |
| | | } else { |
| | | this.allReceivingOrders = res.data.map(i => ({ |
| | | ...i, |
| | | InboundOrderStatus: InboundOrderStatus.find(item => item.value == i |
| | | .orderStatus).label, |
| | | SumQty: i.details.map(item => item.orderQuantity).reduce((prev, |
| | | next) => prev + next, 0), |
| | | OverQty: i.details.map(item => item.overInQuantity).reduce((prev, |
| | | next) => prev + next, 0), |
| | | RecQty: i.details.map(item => item.receiptQuantity).reduce((prev, |
| | | next) => prev + next, 0) |
| | | })); |
| | | // æç´¢æ¶æ¿æ¢æ°æ® |
| | | this.allReceivingOrders = newData; |
| | | if (this.allReceivingOrders.length > 3) { |
| | | this.loadVisible = true; |
| | | } else { |
| | | this.loadVisible = false; |
| | | } |
| | | } |
| | | |
| | | // å¦ææ²¡ææ´å¤æ°æ® |
| | | if (res.data.length < 10) { // å设æ¯é¡µ10æ¡æ°æ® |
| | | this.status = 'noMore'; |
| | | } else { |
| | | this.status = 'more'; |
| | | } |
| | | } else { |
| | | this.status = 'noMore'; |
| | | //this.allReceivingOrders = []; |
| | | this.loadVisible = true; |
| | | } |
| | | } |
| | | this.isLoadingMore = false; |
| | | }) |
| | | } |
| | | } |
| | |
| | | box-sizing: border-box; |
| | | background-color: #efeff4; |
| | | min-height: 100%; |
| | | height: auto; |
| | | height: 100vh; |
| | | } |
| | | |
| | | /* ç¡®ä¿ scroll-view å æ®æ´ä¸ªé¡µé¢ç©ºé´ */ |
| | | scroll-view { |
| | | height: calc(100vh - 100px); |
| | | } |
| | | |
| | | .tips { |
| | |
| | | } |
| | | } |
| | | |
| | | this.$u.post('/api/InboundOrder/MaterielGroup', { |
| | | this.$u.post('/api/InboundOrder/NewMaterielGroup', { |
| | | MainData: { |
| | | "palletCode": this.barcode, |
| | | "orderNo": this.orderNo, |
| | |
| | | <view class="itemstyle"> |
| | | <uni-forms label-width="180"> |
| | | <uni-forms-item label="åå§æçæ¡ç :"> |
| | | <uni-easyinput type="text" placeholder="è¯·æ«ææçæ¡ç " ref='midInput' :focus="!focus" |
| | | <uni-easyinput type="text" placeholder="è¯·æ«ææçæ¡ç " ref='midInput' :focus="sourceFocus" |
| | | v-model="soussAddress" @input="barcodeInput" /> |
| | | </uni-forms-item> |
| | | <uni-forms-item label="ç®æ æçæ¡ç :"> |
| | | <uni-easyinput type="text" placeholder="è¯·æ«ææçæ¡ç " ref='midInput' :focus="!focus" |
| | | <uni-easyinput type="text" placeholder="è¯·æ«ææçæ¡ç " ref='midInput' :focus="targetFocus" |
| | | v-model="targetAddress" @input="barcodeInput" /> |
| | | </uni-forms-item> |
| | | <uni-forms-item> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | const innerAudioContext = uni.createInnerAudioContext(); |
| | | export default { |
| | | data() { |
| | | return { |
| | | focus: false, |
| | | sourceFocus: true, // é»è®¤åå§æçè¾å
¥æ¡è·å¾ç¦ç¹ |
| | | targetFocus: false, // ç®æ æçè¾å
¥æ¡ä¸è·å¾ç¦ç¹ |
| | | soussAddress: "", |
| | | targetAddress: "", |
| | | warehouseId: "", |
| | | } |
| | | }, |
| | | onShow() {}, |
| | | onLoad(res) { |
| | | this.focus = false; |
| | | this.warehouseId = res.warehouseId; |
| | | }, |
| | | methods: { |
| | | barcodeInput() { |
| | | this.$nextTick(function(x) { |
| | | if (this.barcode.length > 0) { |
| | | this.focus = true; |
| | | barcodeInput(type) { |
| | | if (type != '') { |
| | | if (this.soussAddress == "") { |
| | | setTimeout(() => { |
| | | this.sourceFocus = false; |
| | | this.targetFocus = true; |
| | | }, 100); |
| | | } |
| | | }) |
| | | } |
| | | }, |
| | | AGVTasks() { |
| | | if (this.soussAddress == "") { |
| | |
| | | title: "è¯·æ«æåå§æçæ¡ç ", |
| | | type: 'error' |
| | | }) |
| | | this.sourceFocus = true; |
| | | this.targetFocus = false; |
| | | return; |
| | | } |
| | | if (this.targetAddress == "") { |
| | |
| | | title: "è¯·æ«æç®æ æçæ¡ç ", |
| | | type: 'error' |
| | | }) |
| | | this.sourceFocus = false; |
| | | this.targetFocus = true; |
| | | return; |
| | | } |
| | | |
| | | var postDate = { |
| | | MainData: { |
| | | soussAddress: this.soussAddress, |
| | |
| | | }) |
| | | this.soussAddress = ""; |
| | | this.targetAddress = ""; |
| | | this.sourceFocus = true; |
| | | this.targetFocus = false; |
| | | } else { |
| | | this.$refs.uToast.show({ |
| | | title: res.message, |
| | | type: "error" |
| | | }) |
| | | |
| | | this.sourceFocus = true; |
| | | this.targetFocus = false; |
| | | } |
| | | }) |
| | | }, |
| | |
| | | } |
| | | } |
| | | |
| | | this.$u.post('/api/InboundOrder/MaterielGroup', { |
| | | this.$u.post('/api/InboundOrder/NewMaterielGroup', { |
| | | MainData: { |
| | | "palletCode": this.barcode, |
| | | "orderNo": this.orderNo, |