刘磊
2024-11-19 f1b3289994738c1302132d09811d58c63e449b45
合并
已删除175个文件
已修改16个文件
已添加8个文件
215112 ■■■■■ 文件已修改
.gitignore 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/WIDESEAWCS_BasicInfoRepository.csproj.nuget.dgspec.json 505 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/WIDESEAWCS_BasicInfoRepository.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/project.assets.json 9641 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/WIDESEAWCS_BasicInfoService.csproj.nuget.dgspec.json 795 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/WIDESEAWCS_BasicInfoService.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/project.assets.json 10033 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/project.nuget.cache 190 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/CateGoryConst.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/SysConfigKeyConst.cs 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/Debug/net6.0/WIDESEAWCS_Common.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/Debug/net6.0/WIDESEAWCS_Common.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/WIDESEAWCS_Common.csproj.nuget.dgspec.json 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/WIDESEAWCS_Common.csproj.nuget.g.props 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/project.assets.json 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/project.nuget.cache 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/Debug/net6.0/WIDESEAWCS_Communicator.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/Debug/net6.0/WIDESEAWCS_Communicator.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/Debug/net6.0/WIDESEAWCS_Communicator.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/WIDESEAWCS_Communicator.csproj.nuget.dgspec.json 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/WIDESEAWCS_Communicator.csproj.nuget.g.props 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/project.assets.json 379 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/project.nuget.cache 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/Debug/net6.0/WIDESEAWCS_Core.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/Debug/net6.0/WIDESEAWCS_Core.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/Debug/net6.0/WIDESEAWCS_Core.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/WIDESEAWCS_Core.csproj.nuget.dgspec.json 155 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/WIDESEAWCS_Core.csproj.nuget.g.props 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/project.assets.json 9632 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/WIDESEAWCS_DTO.csproj.nuget.dgspec.json 367 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/WIDESEAWCS_DTO.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/project.assets.json 9605 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/WIDESEAWCS_IBasicInfoRepository.csproj.nuget.dgspec.json 436 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/WIDESEAWCS_IBasicInfoRepository.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/project.assets.json 9623 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/WIDESEAWCS_IBasicInfoService.csproj.nuget.dgspec.json 574 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/WIDESEAWCS_IBasicInfoService.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/project.assets.json 9659 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/ISys_ConfigRepository.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/WIDESEAWCS_ISystemRepository.csproj.nuget.dgspec.json 436 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/WIDESEAWCS_ISystemRepository.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/project.assets.json 9623 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/ISys_ConfigService.cs 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/WIDESEAWCS_ISystemServices.csproj.nuget.dgspec.json 574 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/WIDESEAWCS_ISystemServices.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/project.assets.json 9659 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/WIDESEAWCS_ITaskInfoRepository.csproj.nuget.dgspec.json 436 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/WIDESEAWCS_ITaskInfoRepository.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/project.assets.json 9623 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/WIDESEAWCS_ITaskInfoService.csproj.nuget.dgspec.json 580 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/WIDESEAWCS_ITaskInfoService.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/project.assets.json 9661 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/System/Sys_Config.cs 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/WIDESEAWCS_Model.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/WIDESEAWCS_Model.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/WIDESEAWCS_Model.csproj.nuget.dgspec.json 298 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/WIDESEAWCS_Model.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/project.assets.json 9596 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/Debug/net6.0/WIDESEAWCS_IProcessRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/Debug/net6.0/WIDESEAWCS_IProcessRepository.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/WIDESEAWCS_IProcessRepository.csproj.nuget.dgspec.json 436 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/WIDESEAWCS_IProcessRepository.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/project.assets.json 9623 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/Debug/net6.0/WIDESEAWCS_ProcessRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/Debug/net6.0/WIDESEAWCS_ProcessRepository.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/WIDESEAWCS_ProcessRepository.csproj.nuget.dgspec.json 505 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/WIDESEAWCS_ProcessRepository.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/project.assets.json 9641 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/ConveyorLine/CommonConveyorLine.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/Debug/net6.0/WIDESEAWCS_QuartzJob.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/Debug/net6.0/WIDESEAWCS_QuartzJob.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/WIDESEAWCS_QuartzJob.csproj.nuget.dgspec.json 304 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/WIDESEAWCS_QuartzJob.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/project.assets.json 9913 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/project.nuget.cache 190 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.GeneratedMSBuildEditorConfig.editorconfig 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.MvcApplicationPartsAssemblyInfo.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets/msbuild.WIDESEAWCS_Server.Microsoft.AspNetCore.StaticWebAssets.props 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets/msbuild.build.WIDESEAWCS_Server.props 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/WIDESEAWCS_Server.csproj.nuget.dgspec.json 1656 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/WIDESEAWCS_Server.csproj.nuget.g.props 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/project.assets.json 10275 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/project.nuget.cache 190 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/Sys_ConfigRepository.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/WIDESEAWCS_SystemRepository.csproj.nuget.dgspec.json 505 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/WIDESEAWCS_SystemRepository.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/project.assets.json 9641 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_ConfigService.cs 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/Debug/net6.0/WIDESEAWCS_SystemServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/Debug/net6.0/WIDESEAWCS_SystemServices.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/WIDESEAWCS_SystemServices.csproj.nuget.dgspec.json 643 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/WIDESEAWCS_SystemServices.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/project.assets.json 9677 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/WIDESEAWCS_TaskInfoRepository.csproj.nuget.dgspec.json 511 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/WIDESEAWCS_TaskInfoRepository.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/project.assets.json 9649 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/project.nuget.cache 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs 697 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/WIDESEAWCS_TaskInfoService.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/WIDESEAWCS_TaskInfoService.csproj.nuget.dgspec.json 1080 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/WIDESEAWCS_TaskInfoService.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/project.assets.json 10108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/project.nuget.cache 190 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs 309 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs 102 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/Debug/net6.0/WIDESEAWCS_Tasks.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/Debug/net6.0/WIDESEAWCS_Tasks.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/WIDESEAWCS_Tasks.csproj.nuget.dgspec.json 1293 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/WIDESEAWCS_Tasks.csproj.nuget.g.props 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/project.assets.json 10167 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/project.nuget.cache 190 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/Debug/net6.0/LogLibrary.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/Debug/net6.0/LogLibrary.csproj.CoreCompileInputs.cache 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/LogLibrary.csproj.nuget.dgspec.json 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/LogLibrary.csproj.nuget.g.props 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/project.assets.json 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/project.nuget.cache 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_BusinessServices/obj/Debug/net6.0/WIDESEA_BusinessServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_BusinessesRepository/obj/Debug/net6.0/WIDESEA_BusinessesRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Common/obj/Debug/net6.0/WIDESEA_Common.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Common/obj/WIDESEA_Common.csproj.nuget.g.props 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/Enums/ManageEnum.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/obj/Debug/net6.0/WIDESEA_Core.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/obj/Debug/net6.0/WIDESEA_DTO.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IBusinessServices/obj/Debug/net6.0/WIDESEA_IBusinessServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IBusinessesRepository/obj/Debug/net6.0/WIDESEA_IBusinessesRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IRepository/obj/Debug/net6.0/WIDESEA_IRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IServices/obj/Debug/net6.0/WIDESEA_IServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStoragIntegrationServices/obj/Debug/net6.0/WIDESEA_IStoragIntegrationServices.csproj.FileListAbsolute.txt 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStoragIntegrationServices/obj/WIDESEA_IStoragIntegrationServices.csproj.nuget.dgspec.json 515 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStoragIntegrationServices/obj/WIDESEA_IStoragIntegrationServices.csproj.nuget.g.props 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicRepository/obj/Debug/net6.0/WIDESEA_IStorageBasicRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/obj/Debug/net6.0/WIDESEA_IStorageBasicServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageOutOrderRepository/obj/Debug/net6.0/WIDESEA_IStorageOutOrderRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageOutOrderService/obj/Debug/net6.0/WIDESEA_IStorageOutOrderServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskRepository/obj/Debug/net6.0/WIDESEA_IStorageTaskRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/obj/Debug/net6.0/WIDESEA_IStorageTaskServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/obj/Debug/net6.0/WIDESEA_Model.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Repository/obj/Debug/net6.0/WIDESEA_Repository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Services/obj/Debug/net6.0/WIDESEA_Services.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/MCSService.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/ModifyAccessStatus.cs 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/NotifyFinishTest.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/AgingInOrOutInput/AgingInOrOutInputService.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/CellState/CellStateService.cs 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/ProcessApply/ProcessApplyService.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/Unbind/UnbindService.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/WIDESEA_StoragIntegrationServices.csproj 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/obj/Debug/net6.0/WIDESEA_StoragIntegrationServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/obj/WIDESEA_StoragIntegrationServices.csproj.nuget.g.props 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/obj/Debug/net6.0/WIDESEA_StorageBasicRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/obj/Debug/net6.0/WIDESEA_StorageBasicServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageOutOrderRepository/obj/Debug/net6.0/WIDESEA_StorageOutOrderRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageOutOrderServices/obj/Debug/net6.0/WIDESEA_StorageOutOrderServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskRepository/obj/Debug/net6.0/WIDESEA_StorageTaskRepository.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/obj/Debug/net6.0/WIDESEA_StorageTaskServices.GeneratedMSBuildEditorConfig.editorconfig 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/Debug/net6.0/WIDESEA_Tasks.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/WIDESEA_Tasks.csproj.nuget.dgspec.json 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/project.assets.json 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/project.nuget.cache 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.gitignore
@@ -1237,8 +1237,106 @@
/Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/Debug/net6.0/LogLibrary.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStoragIntegrationServices/obj/Debug/net6.0/WIDESEA_IStoragIntegrationServices.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/Debug/net6.0/WIDESEA_Tasks.GeneratedMSBuildEditorConfig.editorconfig
*.txt
/Code Management/WCS/WIDESEAWCS_Client/yarn.lock
/Code Management/WCS/WIDESEAWCS_Client/package-lock.json
/Code Management/WMS/WIDESEA_WMSClient/src/api/http.js
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/WIDESEAWCS_IBasicInfoRepository.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/WIDESEAWCS_IBasicInfoRepository.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/WIDESEAWCS_IBasicInfoService.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/WIDESEAWCS_IBasicInfoService.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/WIDESEAWCS_ISystemRepository.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/WIDESEAWCS_ISystemRepository.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/WIDESEAWCS_IProcessRepository.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/WIDESEAWCS_IProcessRepository.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/Debug/net6.0/WIDESEAWCS_ProcessRepository.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/Debug/net6.0/WIDESEAWCS_ProcessRepository.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/WIDESEAWCS_ProcessRepository.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/WIDESEAWCS_ProcessRepository.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/Debug/net6.0/WIDESEAWCS_QuartzJob.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/Debug/net6.0/WIDESEAWCS_QuartzJob.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/WIDESEAWCS_QuartzJob.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/WIDESEAWCS_QuartzJob.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets.removed.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/WIDESEAWCS_Server.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/WIDESEAWCS_Server.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/WIDESEAWCS_SystemRepository.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/WIDESEAWCS_SystemRepository.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/Debug/net6.0/WIDESEAWCS_SystemServices.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/Debug/net6.0/WIDESEAWCS_SystemServices.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/WIDESEAWCS_SystemServices.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/WIDESEAWCS_SystemServices.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/WIDESEAWCS_TaskInfoRepository.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/WIDESEAWCS_TaskInfoRepository.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/WIDESEAWCS_TaskInfoService.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/WIDESEAWCS_TaskInfoService.csproj.nuget.g.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/Debug/net6.0/WIDESEAWCS_Tasks.assets.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/Debug/net6.0/WIDESEAWCS_Tasks.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/project.assets.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/project.nuget.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/WIDESEAWCS_Tasks.csproj.nuget.dgspec.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/WIDESEAWCS_Tasks.csproj.nuget.g.props
/Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/Debug/net6.0/LogLibrary.assets.cache
/Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/LogLibrary.csproj.nuget.dgspec.json
/Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/LogLibrary.csproj.nuget.g.props
/Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/project.assets.json
/Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/project.nuget.cache
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Repository/obj/Debug/net6.0/WIDESEA_Repository.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Services/obj/Debug/net6.0/WIDESEA_Services.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/obj/Debug/net6.0/WIDESEA_StorageBasicRepository.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/obj/Debug/net6.0/WIDESEA_StorageBasicServices.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageOutOrderRepository/obj/Debug/net6.0/WIDESEA_StorageOutOrderRepository.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageOutOrderServices/obj/Debug/net6.0/WIDESEA_StorageOutOrderServices.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskRepository/obj/Debug/net6.0/WIDESEA_StorageTaskRepository.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/obj/Debug/net6.0/WIDESEA_StorageTaskServices.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/obj/Debug/net6.0/WIDESEA_StoragIntegrationServices.assets.cache
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/obj/Debug/net6.0/WIDESEA_StoragIntegrationServices.GeneratedMSBuildEditorConfig.editorconfig
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/obj/WIDESEA_StoragIntegrationServices.csproj.nuget.g.props
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/Debug/net6.0/WIDESEA_Tasks.assets.cache
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/project.assets.json
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/project.nuget.cache
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/WIDESEA_Tasks.csproj.nuget.dgspec.json
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/obj/Debug/net6.0/staticwebassets.removed.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/bin/Debug/net6.0/Log_PLCReadWrite/化成入库输送线/Logs_20241118165252.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/bin/Debug/net6.0/Log_PLCReadWrite/陈化1号堆垛机/Logs_20241118165246.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/bin/Debug/net6.0/Log_PLCReadWrite/陈化入库输送线/Logs_20241118165251.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/bin/Debug/net6.0/Log_PLCReadWrite/陈化出库输送线/Logs_20241118165251.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/bin/Debug/net6.0/Log_PLCReadWrite/静置1号堆垛机/Logs_20241118165301.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/bin/Debug/net6.0/Log_PLCReadWrite/静置输送线/Logs_20241118165311.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/bin/Debug/net6.0/WIDESEAWCS_Server.staticwebassets.endpoints.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/EndpointInfo/WIDESEAWCS_Server.OpenApiFiles.cache
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/EndpointInfo/WIDESEAWCS_Server_V1.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/EndpointInfo/WIDESEAWCS_Server_V2.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets/msbuild.build.WIDESEAWCS_Server.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets/msbuild.WIDESEAWCS_Server.Microsoft.AspNetCore.StaticWebAssetEndpoints.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets/msbuild.WIDESEAWCS_Server.Microsoft.AspNetCore.StaticWebAssets.props
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets.build.endpoints.json
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets.references.upToDateCheck.txt
/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets.upToDateCheck.txt
/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/WIDESEA_StoragIntegrationServices.csproj
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/WIDESEAWCS_BasicInfoRepository.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/WIDESEAWCS_BasicInfoRepository.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/WIDESEAWCS_BasicInfoService.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/WIDESEAWCS_BasicInfoService.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/CateGoryConst.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WIDESEAWCS_Common
{
    /// <summary>
    /// åˆ†ç±»å¸¸é‡
    /// </summary>
    public class CateGoryConst
    {
        /// <summary>
        /// IP接口地址
        /// </summary>
        public const string CONFIG_SYS_IPAddress = "SYS_IPAddress";
    }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/Const/SysConfigKeyConst.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WIDESEAWCS_Common
{
    public class SysConfigKeyConst
    {
        /// <summary>
        /// WMS BASE
        /// </summary>
        public const string WMSIP_BASE = "WMSIPBASE";
        /// <summary>
        /// è¯·æ±‚任务
        /// </summary>
        public const string RequestTask = "RequestTask";
        /// <summary>
        /// è¯·æ±‚任务货位
        /// </summary>
        public const string RequestLocation = "RequestLocation";
        /// <summary>
        /// ä¿®æ”¹ä»»åŠ¡çŠ¶æ€
        /// </summary>
        public const string UpdateTask = "UpdateTask";
        /// <summary>
        /// ä»»åŠ¡å®Œæˆ
        /// </summary>
        public const string CompleteTask = "CompleteTask";
        /// <summary>
        /// è¯·æ±‚空托盘任务
        /// </summary>
        public const string RequestTrayInTask = "RequestTrayInTask";
        /// <summary>
        /// ç©ºæ‰˜ç›˜å®žç›˜å‡ºåº“任务
        /// </summary>
        public const string RequestTrayOutTask = "RequestTrayOutTask";
    }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/Debug/net6.0/WIDESEAWCS_Common.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/Debug/net6.0/WIDESEAWCS_Common.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/WIDESEAWCS_Common.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/WIDESEAWCS_Common.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/Debug/net6.0/WIDESEAWCS_Communicator.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/Debug/net6.0/WIDESEAWCS_Communicator.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/Debug/net6.0/WIDESEAWCS_Communicator.csproj.AssemblyReference.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/WIDESEAWCS_Communicator.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/WIDESEAWCS_Communicator.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/Debug/net6.0/WIDESEAWCS_Core.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/Debug/net6.0/WIDESEAWCS_Core.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/Debug/net6.0/WIDESEAWCS_Core.csproj.AssemblyReference.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/WIDESEAWCS_Core.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/WIDESEAWCS_Core.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/WIDESEAWCS_DTO.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/WIDESEAWCS_DTO.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/WIDESEAWCS_IBasicInfoRepository.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/WIDESEAWCS_IBasicInfoRepository.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/WIDESEAWCS_IBasicInfoService.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/WIDESEAWCS_IBasicInfoService.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/ISys_ConfigRepository.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEAWCS_Core.BaseRepository;
using WIDESEAWCS_Model.Models;
namespace WIDESEAWCS_ISystemRepository
{
    public interface ISys_ConfigRepository : IRepository<Sys_Config>
    {
    }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/WIDESEAWCS_ISystemRepository.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/WIDESEAWCS_ISystemRepository.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/ISys_ConfigService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,36 @@
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEAWCS_Core.BaseServices;
using WIDESEAWCS_Model.Models;
namespace WIDESEAWCS_ISystemServices
{
    public interface ISys_ConfigService : IService<Sys_Config>
    {
        /// <summary>
        /// èŽ·å–æ‰€æœ‰ç³»ç»Ÿé…ç½®
        /// </summary>
        /// <returns></returns>
        List<Sys_Config> GetAll();
        /// <summary>
        /// æ ¹æ®ç±»åˆ«èŽ·å–ç³»ç»Ÿé…ç½®
        /// </summary>
        /// <param name="category">类别</param>
        /// <returns></returns>
        List<Sys_Config> GetConfigsByCategory(string category);
        /// <summary>
        /// æ ¹æ®ç±»åˆ«å’ŒKey获取系统配置
        /// </summary>
        /// <param name="category">类别</param>
        /// <param name="configKey">配置Key</param>
        /// <returns></returns>
        Sys_Config GetByConfigKey(string category, string configKey);
    }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/WIDESEAWCS_ISystemServices.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/WIDESEAWCS_ISystemServices.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/WIDESEAWCS_ITaskInfoRepository.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/WIDESEAWCS_ITaskInfoRepository.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs
@@ -63,7 +63,7 @@
        /// <param name="palletCode">托盘号</param>
        /// <param name="sourceAddress">起始地址</param>
        /// <returns></returns>
        WebResponseContent RequestWMSTask(string palletCode, string sourceAddress);
        Task<WebResponseContent> RequestWMSTask(string palletCode, string sourceAddress);
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ç¼–号、当前地址查询输送线未执行的任务
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/WIDESEAWCS_ITaskInfoService.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/WIDESEAWCS_ITaskInfoService.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/System/Sys_Config.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,54 @@
using SqlSugar;
using WIDESEAWCS_Core.DB.Models;
using WIDESEAWCS_Core.Tenants;
namespace WIDESEAWCS_Model.Models;
/// <summary>
/// ç³»ç»Ÿé…ç½®è¡¨
/// </summary>
[SugarTable("Sys_Config", "系统配置表"), MultiTenant]
public class Sys_Config : BaseEntity
{
    /// <summary>
    /// ä¸»é”®
    /// </summary>
    [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "主键")]
    public int Id { get; set; }
    /// <summary>
    /// é…ç½®é”®
    /// </summary>
    [SugarColumn(ColumnDescription = "配置键", Length = 255, IsNullable = false)]
    public string ConfigKey { get; set; }
    /// <summary>
    /// é…ç½®å€¼
    /// </summary>
    [SugarColumn(ColumnDescription = "配置值", IsNullable = false, ColumnDataType = "text")]
    public string ConfigValue { get; set; }
    /// <summary>
    /// åˆ†ç±»
    /// </summary>
    [SugarColumn(ColumnDescription = "分类", Length = 255, IsNullable = false)]
    public string Category { get; set; }
    /// <summary>
    /// å¤‡æ³¨
    /// </summary>
    [SugarColumn(ColumnDescription = "备注", Length = 255, IsNullable = true)]
    public string Remark { get; set; }
    /// <summary>
    /// æŽ’序码
    /// </summary>
    [SugarColumn(ColumnDescription = "排序码", IsNullable = true)]
    public int? SortCode { get; set; }
    /// <summary>
    /// çŠ¶æ€
    /// </summary>
    [SugarColumn(ColumnDescription = "状态", Length = 20, IsNullable = true)]
    public string Status { get; set; }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/WIDESEAWCS_Model.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/WIDESEAWCS_Model.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/WIDESEAWCS_Model.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/WIDESEAWCS_Model.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/Debug/net6.0/WIDESEAWCS_IProcessRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/Debug/net6.0/WIDESEAWCS_IProcessRepository.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/WIDESEAWCS_IProcessRepository.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/WIDESEAWCS_IProcessRepository.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessParameters/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/Debug/net6.0/WIDESEAWCS_ProcessRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/Debug/net6.0/WIDESEAWCS_ProcessRepository.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/WIDESEAWCS_ProcessRepository.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/WIDESEAWCS_ProcessRepository.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ProcessRepository/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/ConveyorLine/CommonConveyorLine.cs
@@ -242,7 +242,7 @@
        /// <exception cref="Exception"></exception>
        public T ReadCustomer<T>(string deviceChildCode, string deviceProParamType) where T : IDataTransfer, new()
        {
            if (!IsConnected) throw new Exception($"通讯连接错误,请检查网络");
            if (!IsConnected) throw new Exception($"通讯连接错误,请检查网络:" + DeviceName);
            DeviceProDTO? devicePro = _deviceProDTOs.Where(x => x.DeviceProParamType == deviceProParamType && x.DeviceChildCode == deviceChildCode).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
            if (devicePro == null)
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/Debug/net6.0/WIDESEAWCS_QuartzJob.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/Debug/net6.0/WIDESEAWCS_QuartzJob.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/WIDESEAWCS_QuartzJob.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/WIDESEAWCS_QuartzJob.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.MvcApplicationPartsAssemblyInfo.cs
@@ -28,7 +28,7 @@
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("WIDESEAWCS_SystemRepository")]
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("WIDESEAWCS_SystemServices")]
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("WIDESEAWCS_TaskInfoRepository")]
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("WIDESEAWCS_TaskInfoService")]
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("WIDESEAWCs_TaskInfoService")]
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("WIDESEAWCS_Tasks")]
// ç”± MSBuild WriteCodeFragment ç±»ç”Ÿæˆã€‚
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets/msbuild.WIDESEAWCS_Server.Microsoft.AspNetCore.StaticWebAssets.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/staticwebassets/msbuild.build.WIDESEAWCS_Server.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/WIDESEAWCS_Server.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/WIDESEAWCS_Server.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/Sys_ConfigRepository.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEAWCS_Core.BaseRepository;
using WIDESEAWCS_ISystemRepository;
using WIDESEAWCS_Model.Models;
namespace WIDESEAWCS_SystemRepository
{
    public class Sys_ConfigRepository : RepositoryBase<Sys_Config>, ISys_ConfigRepository
    {
        public Sys_ConfigRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
        {
        }
    }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/WIDESEAWCS_SystemRepository.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/WIDESEAWCS_SystemRepository.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_ConfigService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,38 @@

using System.Net;
using WIDESEAWCS_Core.BaseServices;
using WIDESEAWCS_ISystemRepository;
using WIDESEAWCS_ISystemServices;
using WIDESEAWCS_Core.BaseRepository;
using WIDESEAWCS_Model.Models;
namespace WIDESEA_Services
{
    public class Sys_ConfigService : ServiceBase<Sys_Config, ISys_ConfigRepository>, ISys_ConfigService
    {
        private readonly IUnitOfWorkManage _unitOfWorkManage;
        public Sys_ConfigService(ISys_ConfigRepository repository, IUnitOfWorkManage unitOfWorkManage) : base(repository)
        {
            _unitOfWorkManage = unitOfWorkManage;
        }
        /// <inheritdoc/>
        public List<Sys_Config> GetAll()
        {
            return BaseDal.QueryData();
        }
        /// <inheritdoc/>
        public List<Sys_Config> GetConfigsByCategory(string category)
        {
            return BaseDal.QueryData(x => x.Category == category).ToList();
        }
        /// <inheritdoc/>
        public Sys_Config GetByConfigKey(string category, string configKey)
        {
            return BaseDal.QueryData(x => x.Category == category && x.ConfigKey == configKey).FirstOrDefault();
        }
    }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/Debug/net6.0/WIDESEAWCS_SystemServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/Debug/net6.0/WIDESEAWCS_SystemServices.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/WIDESEAWCS_SystemServices.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/WIDESEAWCS_SystemServices.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/WIDESEAWCS_TaskInfoRepository.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/WIDESEAWCS_TaskInfoRepository.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,697 @@

using AutoMapper;
using HslCommunication;
using Newtonsoft.Json;
using SqlSugar;
using System.Diagnostics.CodeAnalysis;
using System.Threading.Tasks;
using WIDESEAWCS_Common;
using WIDESEAWCS_Common.TaskEnum;
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseServices;
using WIDESEAWCS_Core.Helper;
using WIDESEAWCS_DTO.TaskInfo;
using WIDESEAWCS_DTO.WMS;
using WIDESEAWCS_ISystemServices;
using WIDESEAWCS_ITaskInfoRepository;
using WIDESEAWCS_ITaskInfoService;
using WIDESEAWCS_Model.Models;
using WIDESEAWCS_QuartzJob.Models;
using WIDESEAWCS_QuartzJob.Service;
namespace WIDESEAWCS_TaskInfoService
{
    public class TaskService : ServiceBase<Dt_Task, ITaskRepository>, ITaskService
    {
        private readonly IRouterService _routerService;
        private readonly ITaskExecuteDetailService _taskExecuteDetailService;
        private readonly ITaskExecuteDetailRepository _taskExecuteDetailRepository;
        private readonly ISys_ConfigService _sys_ConfigService;
        private readonly IMapper _mapper;
        private Dictionary<string, OrderByType> _taskOrderBy = new()
        {
            {nameof(Dt_Task.Grade), OrderByType.Desc },
            {nameof(Dt_Task.CreateDate), OrderByType.Asc},
        };
        public Dictionary<string, OrderByType> TaskOrderBy
        { get { return _taskOrderBy; } set { _taskOrderBy = value; } }
        public List<int> TaskInboundTypes => typeof(TaskInboundTypeEnum).GetEnumIndexList();
        public List<int> TaskOutboundTypes => typeof(TaskOutboundTypeEnum).GetEnumIndexList();
        public TaskService(ITaskRepository BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IMapper mapper, ISys_ConfigService sys_ConfigService) : base(BaseDal)
        {
            _routerService = routerService;
            _taskExecuteDetailService = taskExecuteDetailService;
            _taskExecuteDetailRepository = taskExecuteDetailRepository;
            _mapper = mapper;
            _sys_ConfigService = sys_ConfigService;
        }
        /// <summary>
        /// æŽ¥æ”¶WMS任务信息
        /// </summary>
        /// <param name="taskDTOs">WMS任务对象集合</param>
        /// <returns>返回处理结果</returns>
        public WebResponseContent ReceiveWMSTask([NotNull] List<WMSTaskDTO> taskDTOs)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                List<Dt_Task> tasks = new List<Dt_Task>();
                foreach (var item in taskDTOs)
                {
                    if (BaseDal.QueryFirst(x => x.TaskNum == item.TaskNum || x.PalletCode == item.PalletCode) != null)
                    {
                        continue;
                    }
                    Dt_Task task = _mapper.Map<Dt_Task>(item);
                    task.Creater = "WMS";
                    if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
                    {
                        List<Dt_Router> routers = _routerService.QueryNextRoutes(item.RoadWay, item.TargetAddress);
                        if (routers.Count > 0)
                        {
                            task.TaskState = (int)TaskOutStatusEnum.OutNew;
                            task.CurrentAddress = item.SourceAddress;
                            task.NextAddress = routers.FirstOrDefault().ChildPosi;
                        }
                    }
                    else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)
                    {
                        List<Dt_Router> routers = _routerService.QueryNextRoutes(item.SourceAddress, item.TargetAddress);
                        if (routers.Count > 0)
                        {
                            task.TaskState = (int)TaskInStatusEnum.InNew;
                            task.CurrentAddress = item.SourceAddress;
                            task.NextAddress = routers.FirstOrDefault().ChildPosi;
                        }
                    }
                    tasks.Add(task);
                }
                BaseDal.AddData(tasks);
                _taskExecuteDetailService.AddTaskExecuteDetail(tasks.Select(x => x.TaskNum).ToList(), "接收WMS任务");
                content = WebResponseContent.Instance.OK("成功");
            }
            catch (Exception ex)
            {
                content = WebResponseContent.Instance.Error($"任务接收错误,错误信息:{ex.Message}");
            }
            return content;
        }
        /// <summary>
        /// æ ¹æ®æ‰˜ç›˜å·ã€èµ·å§‹åœ°å€å‘WMS请求任务
        /// </summary>
        /// <param name="palletCode">托盘号</param>
        /// <param name="sourceAddress">起始地址</param>
        /// <returns></returns>
        public async Task<WebResponseContent> RequestWMSTask(string palletCode, string sourceAddress)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                var hasTask = await BaseDal.QueryFirstAsync(x => x.PalletCode == palletCode);
                if (hasTask != null)
                {
                    return content.Error("当前托盘存在任务");
                }
                var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
                var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue;
                var requestTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.RequestTask)?.ConfigValue;
                if (wmsBase == null || requestTask == null)
                {
                    throw new InvalidOperationException("WMS IP æœªé…ç½®");
                }
                var wmsIpAddrss = wmsBase + requestTask;
                var result = await HttpHelper.PostAsync(wmsIpAddrss, new { Position = sourceAddress, PalletCode = palletCode }.ToJsonString());
                content = JsonConvert.DeserializeObject<WebResponseContent>(result);
                if (!content.Status)
                {
                    // wms失败返回去NG口任务
                    return content;
                }
                var task = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString());
                return ReceiveWMSTask(new List<WMSTaskDTO> { task });
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ç¼–号、当前地址查询输送线未执行的任务
        /// </summary>
        /// <param name="deviceNo">设备编号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns></returns>
        public Dt_Task QueryConveyorLineTask(string deviceNo, string currentAddress)
        {
            return BaseDal.QueryFirst(x => (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.InNew || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish) && x.CurrentAddress == currentAddress, TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ç¼–号、当前地址查询输送线未执行的任务
        /// </summary>
        /// <param name="deviceNo">设备编号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns></returns>
        public Dt_Task QueryNextConveyorLineTask(string deviceNo, string currentAddress)
        {
            return BaseDal.QueryFirst(x => (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.InNew || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish) && x.NextAddress == currentAddress, TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®æ‰˜ç›˜å·ã€å½“前地址查询输送线未执行的任务
        /// </summary>
        /// <param name="Barcode">托盘号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns></returns>
        public Dt_Task QueryBarCodeConveyorLineTask(string Barcode, string currentAddress)
        {
            return BaseDal.QueryFirst(x => (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.InNew || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish) && x.CurrentAddress == currentAddress && x.PalletCode == Barcode, TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®ä»»åŠ¡å·ã€ä¸‹ä¸€åœ°å€æŸ¥è¯¢è¾“é€çº¿æ‰§è¡Œä¸­çš„ä»»åŠ¡
        /// </summary>
        /// <param name="taskNum">任务号</param>
        /// <param name="nextAddress">下一地址</param>
        /// <returns></returns>
        public Dt_Task QueryExecutingConveyorLineTask(int taskNum, string nextAddress)
        {
            return BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.NextAddress == nextAddress && (x.TaskState == (int)TaskInStatusEnum.Line_InExecuting || x.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting), TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®ä»»åŠ¡å·ã€å½“å‰åœ°å€æŸ¥è¯¢è¾“é€çº¿å®Œæˆçš„ä»»åŠ¡
        /// </summary>
        /// <param name="taskNum">任务号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns></returns>
        public Dt_Task QueryCompletedConveyorLineTask(int taskNum, string currentAddress)
        {
            return BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.CurrentAddress == currentAddress && (x.TaskState == (int)TaskInStatusEnum.Line_InFinish || x.TaskState == (int)TaskOutStatusEnum.Line_OutFinish), TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®ä»»åŠ¡å·ã€å½“å‰åœ°å€æŸ¥è¯¢è¾“é€çº¿æ–°å»ºçš„ä»»åŠ¡
        /// </summary>
        /// <param name="taskNum">任务号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns></returns>
        public Dt_Task QueryCraneConveyorLineTask(int taskNum, string currentAddress)
        {
            return BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.CurrentAddress == currentAddress && (x.TaskState == (int)TaskInStatusEnum.InNew || x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ç¼–号、任务类型分组(可选)按照优先级以及创建时间排序查询任务池新增的任务
        /// </summary>
        /// <param name="deviceNo">设备编号</param>
        /// <param name="taskTypeGroup">任务类型分组(可选)</param>
        /// <returns></returns>
        public Dt_Task? QuertStackerCraneTask(string deviceNo, TaskTypeGroup? taskTypeGroup = null)
        {
            if (taskTypeGroup == null)
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy);
            if (taskTypeGroup.Value == TaskTypeGroup.InboundGroup)
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish, TaskOrderBy);
            if (taskTypeGroup.Value == TaskTypeGroup.OutbondGroup)
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
            return null;
        }
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ç¼–号、当前地址按照优先级以及创建时间排序查询任务池新增的任务
        /// </summary>
        /// <param name="deviceNo">设备编号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns>返回任务实体对象,可能为null</returns>
        public Dt_Task QueryStackerCraneTask(string deviceNo, string currentAddress = "")
        {
            if (string.IsNullOrEmpty(currentAddress))
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy);
            else
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.CurrentAddress == currentAddress && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ç¼–号、当前地址按照优先级以及创建时间排序查询任务池入库类型的新增的任务
        /// </summary>
        /// <param name="deviceNo">设备编号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns>返回任务实体对象,可能为null</returns>
        public Dt_Task QueryStackerCraneInTask(string deviceNo, string currentAddress = "")
        {
            if (string.IsNullOrEmpty(currentAddress))
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish, TaskOrderBy);
            else
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish && x.CurrentAddress == currentAddress, TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ç¼–号、当前地址按照优先级以及创建时间排序查询任务池出库类型的新增的任务
        /// </summary>
        /// <param name="deviceNo">设备编号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns>返回任务实体对象,可能为null</returns>
        public Dt_Task QueryStackerCraneOutTask(string deviceNo, string currentAddress = "")
        {
            if (string.IsNullOrEmpty(currentAddress))
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
            else
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew && x.CurrentAddress == currentAddress, TaskOrderBy);
        }
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ç¼–号、当前地址按照优先级以及创建时间排序查询任务池出库类型的新增的任务
        /// </summary>
        /// <param name="deviceNo">设备编号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns>返回任务实体对象集合,可能为null</returns>
        public List<Dt_Task> QueryStackerCraneOutTasks(string deviceNo, List<string> outStationCodes)
        {
            return BaseDal.QueryData(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew && outStationCodes.Contains(x.CurrentAddress), TaskOrderBy);
        }
        /// <summary>
        /// æ›´æ–°ä»»åŠ¡å¼‚å¸¸ä¿¡æ¯æ˜¾ç¤º
        /// </summary>
        /// <param name="taskNum">任务号</param>
        /// <param name="message">异常信息</param>
        public WebResponseContent UpdateTaskExceptionMessage(int taskNum, string message)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                var task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task == null) return WebResponseContent.Instance.Error($"未找到该任务信息,任务号:【{taskNum}】");
                if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
                {
                    task.TaskState = (int)TaskOutStatusEnum.OutPending;
                }
                else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)
                {
                    task.TaskState = (int)TaskInStatusEnum.InPending;
                }
                task.ExceptionMessage = message;
                task.ModifyDate = DateTime.Now;
                BaseDal.UpdateData(task);
                _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, task.ExceptionMessage);
                content = WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                content = WebResponseContent.Instance.Error(ex.Message);
            }
            return content;
        }
        /// <summary>
        /// æ›´æ–°ä»»åŠ¡çŠ¶æ€ä¿¡æ¯ï¼Œå¹¶åŒæ­¥è‡³WMS
        /// </summary>
        /// <param name="taskNum">任务号</param>
        /// <param name="status">任务状态</param>
        public void UpdateTaskStatus(int taskNum, int status)
        {
            var task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
            if (task == null) return;
            task.TaskState = status;
            task.ModifyDate = DateTime.Now;
            BaseDal.UpdateData(task);
        }
        /// <summary>
        /// å°†ä»»åŠ¡çŠ¶æ€ä¿®æ”¹ä¸ºä¸‹ä¸€ä¸ªçŠ¶æ€
        /// </summary>
        /// <param name="taskNum">任务号</param>
        public WebResponseContent UpdateTaskStatusToNext(int taskNum)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                var task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task == null) return WebResponseContent.Instance.Error($"未找到该任务信息,任务号:【{taskNum}】");
                return UpdateTaskStatusToNext(task);
            }
            catch (Exception ex)
            {
                content = WebResponseContent.Instance.Error(ex.Message);
            }
            return content;
        }
        /// <summary>
        /// å°†ä»»åŠ¡çŠ¶æ€ä¿®æ”¹ä¸ºä¸‹ä¸€ä¸ªçŠ¶æ€
        /// </summary>
        /// <param name="task">任务实体对象</param>
        /// <returns></returns>
        public WebResponseContent UpdateTaskStatusToNext([NotNull] Dt_Task task)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                int oldState = task.TaskState;
                if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
                {
                    int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskOutStatusEnum>();
                    task.TaskState = nextStatus;
                    if (task.TaskState == (int)TaskOutStatusEnum.Line_OutFinish)
                    {
                        task.ModifyDate = DateTime.Now;
                        task.Modifier = "System";
                        BaseDal.DeleteData(task);
                    }
                }
                else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)
                {
                    int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskInStatusEnum>();
                    task.TaskState = nextStatus;
                    if (task.TaskState == (int)TaskInStatusEnum.Line_InFinish)
                    {
                        #region å…¥åº“调用接口获取货位地址
                        // TODO: è°ƒç”¨æŽ¥å£èŽ·å–è´§ä½åœ°å€
                        // åˆ›å»ºè¯·æ±‚对象
                        var taskDto = new RequestTaskDto()
                        {
                            Position = task.NextAddress,
                            PalletCode = task.PalletCode,
                        };
                        // èŽ·å–WMSip地址
                        var configz = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
                        var wmsBasez = configz.Where(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE).FirstOrDefault()?.ConfigValue;
                        var requestLocation = configz.Where(x => x.ConfigKey == SysConfigKeyConst.RequestLocation).FirstOrDefault()?.ConfigValue;
                        if (wmsBasez == null || requestLocation == null)
                        {
                            throw new InvalidOperationException("WMS IP æœªé…ç½®");
                        }
                        var wmsIpAddrss = wmsBasez + requestLocation;
                        // å‘送请求并等待响应
                        var abc = HttpHelper.PostAsync(wmsIpAddrss, taskDto.ToJsonString()).Result;
                        if (abc == null)
                            return content.Error();
                        // ååºåˆ—化响应内容
                        content = JsonConvert.DeserializeObject<WebResponseContent>(abc);
                        // æ£€æŸ¥çŠ¶æ€å¹¶è¿”å›ž
                        if (!content.Status)
                            return content;
                        // ååºåˆ—化任务数据
                        var taskResult = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString());
                        task.CurrentAddress = task.NextAddress;
                        task.NextAddress = taskResult.TargetAddress;
                        task.TargetAddress = task.NextAddress;
                        #endregion
                    }
                    else if (task.TaskState == (int)TaskInStatusEnum.SC_InFinish)
                    {
                        task.ModifyDate = DateTime.Now;
                        task.Modifier = "System";
                        BaseDal.DeleteData(task);
                    }
                }
                else
                {
                    throw new Exception($"任务类型错误,未找到该任务类型,任务号:【{task.TaskNum}】,任务类型:【{task.TaskType}】");
                }
                if (task.TaskState <= 0)
                {
                    return content = WebResponseContent.Instance.Error($"该任务状态不可跳转到下一步,任务号:【{task.TaskNum}】,任务状态:【{task.TaskState}】");
                }
                task.ModifyDate = DateTime.Now;
                task.Modifier = "System";
                BaseDal.UpdateData(task);
                _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, App.User.UserId > 0 ? $"人工手动将任务状态从【{oldState}】跳转到【{task.TaskState}】" : $"系统自动流程,任务状态从【{oldState}】转到【{task.TaskState}】");
                #region  æ›´æ–°ä»»åŠ¡çŠ¶æ€
                // èŽ·å–WMSip地址
                var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
                var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue;
                var updateTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.UpdateTask)?.ConfigValue;
                if (wmsBase == null || updateTask == null)
                {
                    throw new InvalidOperationException("WMS IP æœªé…ç½®");
                }
                var wmsIpAddress = wmsBase + updateTask;
                var result = HttpHelper.PostAsync(wmsIpAddress, new { TaskNum = task.TaskNum, TaskState = task.TaskState }.ToJsonString()).Result;
                content = JsonConvert.DeserializeObject<WebResponseContent>(result);
                #endregion
                content = WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                content = WebResponseContent.Instance.Error(ex.Message);
            }
            return content;
        }
        /// <summary>
        /// æ ¹æ®ä»»åŠ¡å·ã€å½“å‰åœ°å€æ›´æ–°ä»»åŠ¡ä½ç½®ä¿¡æ¯
        /// </summary>
        /// <param name="taskNum">任务号</param>
        /// <param name="currentAddress">当前地址</param>
        /// <returns></returns>
        public Dt_Task? UpdatePosition(int taskNum, string currentAddress)
        {
            try
            {
                var task = BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.CurrentAddress == currentAddress);
                if (task == null) throw new Exception($"未找到该任务信息,任务号:【{taskNum}】");
                string oldCurrentPos = task.CurrentAddress;
                string oldNextPos = task.NextAddress;
                var routers = _routerService.QueryNextRoutes(task.NextAddress, task.TargetAddress);
                if (!routers.Any()) throw new Exception($"未找到设备路由信息");
                task.CurrentAddress = task.NextAddress;
                task.NextAddress = routers.FirstOrDefault().ChildPosi;
                task.ModifyDate = DateTime.Now;
                task.Modifier = "System";
                BaseDal.UpdateData(task);
                _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"系统自动流程,更新当前位置【{oldCurrentPos} ----> {task.CurrentAddress}】和下一位置【{oldNextPos} ----> {task.NextAddress}】");
                return task;
            }
            catch (Exception ex)
            {
            }
            return null;
        }
        /// <summary>
        /// ä»»åŠ¡å®Œæˆ
        /// </summary>
        /// <param name="taskNum">任务编号</param>
        /// <returns>返回处理结果</returns>
        public WebResponseContent StackCraneTaskCompleted(int taskNum)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                var task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task == null) return WebResponseContent.Instance.Error($"未找到该任务信息,任务号:【{taskNum}】");
                if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup && task.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting)
                {
                    var routers = _routerService.QueryNextRoutes(task.NextAddress, task.TargetAddress);
                    if (!routers.Any()) return WebResponseContent.Instance.Error($"未找到设备路由信息");
                    int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskOutStatusEnum>();
                    task.TaskState = nextStatus;
                    task.CurrentAddress = task.NextAddress;
                    task.NextAddress = routers.FirstOrDefault().ChildPosi;
                    task.ModifyDate = DateTime.Now;
                    task.Modifier = "System";
                    BaseDal.UpdateData(task);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机出库完成");
                    //暂不考虑多个出库口
                }
                else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup && task.TaskState == (int)TaskInStatusEnum.SC_InExecuting)
                {
                    //todo åŒæ­¥åˆ°WMS
                    int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskInStatusEnum>();
                    task.TaskState = nextStatus;
                    task.ModifyDate = DateTime.Now;
                    task.Modifier = "System";
                    BaseDal.UpdateData(task);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机入库完成");
                }
                else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup)
                {
                    //todo è°ƒç”¨WMS移库完成
                }
                else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OtherGroup)
                {
                }
                else
                {
                    throw new Exception($"任务类型错误,未找到该任务类型,任务号:【{taskNum}】,任务类型:【{task.TaskType}】");
                }
                #region WMS同步任务完成
                var keys = new Dictionary<string, object>()
            {
                {"taskNum", taskNum}
            };
                // èŽ·å–WMSip地址
                var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
                var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue;
                var completeTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.CompleteTask)?.ConfigValue;
                if (wmsBase == null || completeTask == null)
                {
                    throw new InvalidOperationException("WMS IP æœªé…ç½®");
                }
                var wmsIpAddress = wmsBase + completeTask;
                var result = HttpHelper.GetAsync(wmsIpAddress, keys).Result;
                content = JsonConvert.DeserializeObject<WebResponseContent>(result);
                #endregion
                #region  æ›´æ–°ä»»åŠ¡çŠ¶æ€
                var updateTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.CompleteTask)?.ConfigValue;
                if (wmsBase == null || updateTask == null)
                {
                    throw new InvalidOperationException("WMS IP æœªé…ç½®");
                }
                wmsIpAddress = wmsBase + updateTask;
                result = HttpHelper.PostAsync(wmsIpAddress, new { TaskNum = task.TaskNum, TaskState = task.TaskState }.ToJsonString()).Result;
                content = JsonConvert.DeserializeObject<WebResponseContent>(result);
                #endregion
                //content = WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                content = WebResponseContent.Instance.Error($"任务完成异常,任务号:【{taskNum}】");
            }
            return content;
        }
        /// <summary>
        /// æ¢å¤æŒ‚起任务
        /// </summary>
        /// <param name="taskNum">任务号</param>
        /// <returns>返回处理结果</returns>
        public WebResponseContent TaskStatusRecovery(int taskNum)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                var task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task == null) return WebResponseContent.Instance.Error($"未找到该任务信息,任务号:【{taskNum}】");
                if (task.TaskState != (int)TaskInStatusEnum.InPending && task.TaskState != (int)TaskOutStatusEnum.OutPending)
                {
                    return content = WebResponseContent.Instance.Error($"该任务状态不可恢复,任务号:【{taskNum}】,任务状态:【{task.TaskState}】");
                }
                var taskExecuteDetail = _taskExecuteDetailRepository.QueryFirst(x => x.TaskId == task.TaskId && x.IsNormal, new Dictionary<string, OrderByType> { { nameof(Dt_TaskExecuteDetail.TaskDetailId), OrderByType.Desc } });
                if (taskExecuteDetail != null)
                {
                    task.TaskState = taskExecuteDetail.TaskState;
                }
                else
                {
                    if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
                    {
                        task.TaskState = (int)TaskOutStatusEnum.OutNew;
                    }
                    else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)
                    {
                        task.TaskState = (int)TaskInStatusEnum.InNew;
                    }
                }
                task.ExceptionMessage = string.Empty;
                BaseDal.UpdateData(task);
                _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"人工恢复挂起任务,恢复挂起时任务状态【{task.TaskState}】");
                content = WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                content = WebResponseContent.Instance.Error(ex.Message);
            }
            return content;
        }
        /// <summary>
        /// å›žæ»šä»»åŠ¡çŠ¶æ€
        /// </summary>
        /// <param name="taskNum">任务号</param>
        /// <returns>返回处理结果</returns>
        public WebResponseContent RollbackTaskStatusToLast(int taskNum)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                var task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task == null) return WebResponseContent.Instance.Error($"未找到该任务信息,任务号:【{taskNum}】");
                int oldState = task.TaskState;
                var taskExecuteDetail = _taskExecuteDetailRepository.QueryFirst(x => x.TaskId == task.TaskId && x.TaskState < task.TaskState && x.TaskState > 0, new Dictionary<string, OrderByType> { { nameof(Dt_TaskExecuteDetail.TaskDetailId), OrderByType.Desc } });
                if (taskExecuteDetail != null)
                {
                    task.TaskState = taskExecuteDetail.TaskState;
                    task.CurrentAddress = taskExecuteDetail.CurrentAddress;
                    task.NextAddress = taskExecuteDetail.NextAddress;
                }
                else
                {
                    return content = WebResponseContent.Instance.Error($"未找到任务明细信息,该任务状态不可回滚到上一步,任务号:【{taskNum}】,任务状态:【{task.TaskState}】");
                }
                task.ExceptionMessage = string.Empty;
                BaseDal.UpdateData(task);
                _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"人工将任务状态从【{oldState}】回滚到【{task.TaskState}】");
                content = WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                content = WebResponseContent.Instance.Error(ex.Message);
            }
            return content;
        }
    }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/WIDESEAWCS_TaskInfoService.csproj
@@ -9,6 +9,7 @@
    <ItemGroup>
        <ProjectReference Include="..\WIDESEAWCS_BasicInfoService\WIDESEAWCS_BasicInfoService.csproj" />
        <ProjectReference Include="..\WIDESEAWCS_ITaskInfoService\WIDESEAWCS_ITaskInfoService.csproj" />
        <ProjectReference Include="..\WIDESEAWCS_SystemServices\WIDESEAWCS_SystemServices.csproj" />
    </ItemGroup>
</Project>
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/WIDESEAWCS_TaskInfoService.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/WIDESEAWCS_TaskInfoService.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs
@@ -1,33 +1,16 @@
#region << ç‰ˆ æœ¬ æ³¨ é‡Š >>
/*----------------------------------------------------------------
 * å‘½åç©ºé—´ï¼šWIDESEAWCS_Tasks.ConveyorLineJob
 * åˆ›å»ºè€…:胡童庆
 * åˆ›å»ºæ—¶é—´ï¼š2024/8/2 16:13:36
 * ç‰ˆæœ¬ï¼šV1.0.0
 * æè¿°ï¼š
 *
 * ----------------------------------------------------------------
 * ä¿®æ”¹äººï¼š
 * ä¿®æ”¹æ—¶é—´ï¼š
 * ç‰ˆæœ¬ï¼šV1.0.1
 * ä¿®æ”¹è¯´æ˜Žï¼š
 *
 *----------------------------------------------------------------*/
#endregion << ç‰ˆ æœ¬ æ³¨ é‡Š >>
using AutoMapper;
using AutoMapper;
using HslCommunication;
using Newtonsoft.Json;
using Quartz;
using SqlSugar;
using System.Reflection;
using WIDESEAWCS_Common;
using WIDESEAWCS_Common.TaskEnum;
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.Helper;
using WIDESEAWCS_DTO.TaskInfo;
using WIDESEAWCS_IProcessRepository;
using WIDESEAWCS_ISystemServices;
using WIDESEAWCS_ITaskInfoRepository;
using WIDESEAWCS_ITaskInfoService;
using WIDESEAWCS_Model.Models;
@@ -47,9 +30,10 @@
        private readonly ITaskExecuteDetailService _taskExecuteDetailService;
        private readonly IRouterService _routerService;
        private readonly IPlatFormRepository _platFormRepository;
        private readonly ISys_ConfigService _sys_ConfigService;
        private readonly IMapper _mapper;
        public CommonConveyorLineJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, IRouterService routerService, IMapper mapper, ITaskRepository taskRepository, IPlatFormRepository platFormRepository)
        public CommonConveyorLineJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, IRouterService routerService, IMapper mapper, ITaskRepository taskRepository, IPlatFormRepository platFormRepository, ISys_ConfigService sys_ConfigService)
        {
            _taskService = taskService;
            _taskExecuteDetailService = taskExecuteDetailService;
@@ -57,9 +41,10 @@
            _mapper = mapper;
            _taskRepository = taskRepository;
            _platFormRepository = platFormRepository;
            _sys_ConfigService = sys_ConfigService;
        }
        public Task Execute(IJobExecutionContext context)
        public async Task Execute(IJobExecutionContext context)
        {
            try
            {
@@ -67,89 +52,9 @@
                if (conveyorLine != null)
                {
                    List<string> childDeviceCodes = _routerService.QueryAllPositions(conveyorLine.DeviceCode);
                    List<Task> tasks = new List<Task>();
                    foreach (string childDeviceCode in childDeviceCodes)
                    {
                        //Task task = Task.Run(() =>
                        //{
                        ConveyorLineTaskCommand command = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(childDeviceCode);
                        ConveyorLineTaskCommandWrite commandWrite = conveyorLine.ReadCustomer<ConveyorLineTaskCommandWrite>(childDeviceCode, "DeviceCommand");
                        if (command != null && commandWrite != null)
                        {
                            var structs = BitConverter.GetBytes(commandWrite.WriteInteractiveSignal).Reverse().ToArray().ToBoolArray();
                            List<DeviceProtocolDetailDTO>? deviceProtocolDetails = conveyorLine.DeviceProtocolDetailDTOs.Where(x => x.DeviceProParamName == nameof(ConveyorLineTaskCommand.InteractiveSignal)).ToList();
                            if (deviceProtocolDetails != null)
                            {
                                foreach (var item in deviceProtocolDetails)
                                {
                                    var outDeviceCodes = _routerService.QueryOutDeviceCodes(conveyorLine.DeviceCode);
                                    if (structs[item.ProtocalDetailValue.ObjToInt()] == true)
                                    {
                                        MethodInfo? method = GetType().GetMethod(item.ProtocolDetailType);
                                        if (method != null)
                                        {
                                            command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
                                            method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, item.ProtocalDetailValue.ObjToInt() });
                                        }
                                    }
                                    else
                                    {
                                        DeviceProDTO? devicePro = conveyorLine.DeviceProDTOs.Where(x => x.DeviceProParamType == nameof(DeviceCommand) && x.DeviceChildCode == childDeviceCode).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
                                        string[] x = devicePro.DeviceProAddress.Split('.');
                                        x[x.Length - 1] = (item.ProtocalDetailValue.ObjToInt() + 1).ToString();
                                        string DeviceProAddress = string.Join(".", x);
                                        var writeRead = conveyorLine.Communicator.Read<bool>(DeviceProAddress);
                                        if (writeRead)
                                        {
                                            ConveyorLineSendFinish(conveyorLine, childDeviceCode, item.ProtocalDetailValue.ObjToInt(), false);
                                        }
                                    }
                                }
                            }
                            Platform platform = _platFormRepository.QueryFirst(x => x.PLCCode == conveyorLine.DeviceCode && x.PlatCode == childDeviceCode && x.Status == "Active");
                            if (platform != null)
                            {
                                if (command.InteractiveSignal != 2)
                                {
                                    MethodInfo? method = GetType().GetMethod(platform.ExecutionMethod);
                                    if (method != null)
                                    {
                                        command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
                                        int count = string.IsNullOrEmpty(platform.Location) ? 0 + 1 : platform.Location.Split(',').Count() + 1;
                                        method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, count, platform });
                                    }
                                }
                                else
                                {
                                    if (!string.IsNullOrEmpty(platform.Location))
                                    {
                                        var strings = platform.Location.Split(',').ToList();
                                        foreach (var ite in strings)
                                        {
                                            int index = strings.FindIndex(p => p == ite);
                                            ConveyorLineTaskCommand command1 = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(ite);
                                            if (command1.InteractiveSignal != 2)
                                            {
                                                MethodInfo? method = GetType().GetMethod(platform.ExecutionMethod);
                                                if (method != null)
                                                {
                                                    command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
                                                    int count = strings.Count - index;
                                                    method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, count, platform });
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        //});
                        //tasks.Add(task);
                        Task.WaitAll(tasks.ToArray());
                        await ProcessDeviceAsync(conveyorLine, childDeviceCode);
                    }
                }
            }
@@ -157,13 +62,84 @@
            {
                Console.Out.WriteLine(nameof(CommonConveyorLineJob) + ":" + ex.ToString());
            }
            finally
            {
                //WriteDebug("CommonConveyorLineJob", "test");
                //Console.Out.WriteLine(DateTime.Now);
            }
        }
            return Task.CompletedTask;
        private async Task ProcessDeviceAsync(CommonConveyorLine conveyorLine, string childDeviceCode)
        {
            ConveyorLineTaskCommand command = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(childDeviceCode);
            ConveyorLineTaskCommandWrite commandWrite = conveyorLine.ReadCustomer<ConveyorLineTaskCommandWrite>(childDeviceCode, "DeviceCommand");
            if (command != null && commandWrite != null)
            {
                var structs = BitConverter.GetBytes(commandWrite.WriteInteractiveSignal).Reverse().ToArray().ToBoolArray();
                List<DeviceProtocolDetailDTO>? deviceProtocolDetails = conveyorLine.DeviceProtocolDetailDTOs.Where(x => x.DeviceProParamName == nameof(ConveyorLineTaskCommand.InteractiveSignal)).ToList();
                if (deviceProtocolDetails != null)
                {
                    foreach (var item in deviceProtocolDetails)
                    {
                        var outDeviceCodes = _routerService.QueryOutDeviceCodes(conveyorLine.DeviceCode);
                        if (structs[item.ProtocalDetailValue.ObjToInt()] == true)
                        {
                            MethodInfo? method = GetType().GetMethod(item.ProtocolDetailType);
                            if (method != null)
                            {
                                command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
                                method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, item.ProtocalDetailValue.ObjToInt() });
                            }
                        }
                        else
                        {
                            DeviceProDTO? devicePro = conveyorLine.DeviceProDTOs.Where(x => x.DeviceProParamType == nameof(DeviceCommand) && x.DeviceChildCode == childDeviceCode).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
                            string[] x = devicePro.DeviceProAddress.Split('.');
                            x[x.Length - 1] = (item.ProtocalDetailValue.ObjToInt() + 1).ToString();
                            string DeviceProAddress = string.Join(".", x);
                            var writeRead = conveyorLine.Communicator.Read<bool>(DeviceProAddress);
                            if (writeRead)
                            {
                                ConveyorLineSendFinish(conveyorLine, childDeviceCode, item.ProtocalDetailValue.ObjToInt(), false);
                            }
                        }
                    }
                }
                Platform platform = _platFormRepository.QueryFirst(x => x.PLCCode == conveyorLine.DeviceCode && x.PlatCode == childDeviceCode && x.Status == "Active");
                if (platform != null)
                {
                    if (command.InteractiveSignal != 2)
                    {
                        MethodInfo? method = GetType().GetMethod(platform.ExecutionMethod);
                        if (method != null)
                        {
                            command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
                            int count = string.IsNullOrEmpty(platform.Location) ? 0 + 1 : platform.Location.Split(',').Count() + 1;
                            method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, count, platform });
                        }
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(platform.Location))
                        {
                            var strings = platform.Location.Split(',').ToList();
                            foreach (var ite in strings)
                            {
                                int index = strings.FindIndex(p => p == ite);
                                ConveyorLineTaskCommand command1 = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(ite);
                                if (command1.InteractiveSignal != 2)
                                {
                                    MethodInfo? method = GetType().GetMethod(platform.ExecutionMethod);
                                    if (method != null)
                                    {
                                        command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
                                        int count = strings.Count - index;
                                        method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, count, platform });
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        /// <summary>
@@ -177,14 +153,9 @@
        {
            try
            {
                // èŽ·å–ä¸‹ä¸€ä¸ªä»»åŠ¡
                var task = _taskService.QueryBarCodeConveyorLineTask(command.Barcode, childDeviceCode);
                //var taskOut = _taskService.QueryNextConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode);
                //return;
                // å¤„理出库任务
                HandleTaskOut(conveyorLine, command, childDeviceCode, ProtocalDetailValue, task);
                // å¦‚果没有出库任务,处理新任务
                if (task == null && command.Barcode != "NoRead")
                {
                    HandleNewTask(conveyorLine, command, childDeviceCode, ProtocalDetailValue);
@@ -192,34 +163,9 @@
            }
            catch (Exception ex)
            {
                return;
                Console.Out.WriteLine(ex.ToString());
            }
        }
        #region è¾“送线请求入库下一地址
        /// <summary>
        /// è¾“送线请求入库下一地址
        /// </summary>
        /// <param name="conveyorLine">输送线实例对象</param>
        /// <param name="command">读取的请求信息</param>
        /// <param name="childDeviceCode">子设备编号</param>
        //public void RequestInNextAddress(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode)
        //{
        //    Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
        //    if (task != null)
        //    {
        //        Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress);
        //        if (newTask != null)
        //        {
        //            ConveyorLineTaskCommand taskCommand = _mapper.Map<ConveyorLineTaskCommand>(newTask);
        //            taskCommand.InteractiveSignal = command.InteractiveSignal;
        //            conveyorLine.SendCommand(taskCommand, childDeviceCode);
        //        }
        //    }
        //}
        #endregion
        /// <summary>
        /// è¾“送线入库完成
@@ -230,15 +176,14 @@
        /// <param name="ProtocalDetailValue">线体当前bool读取偏移地址</param>
        public void ConveyorLineInFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue)
        {
            Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
            var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
            if (task != null && task.TaskState != (int)TaskInStatusEnum.Line_InFinish)
            {
                ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
                //conveyorLine.SetValue(ConveyorLineDBName.WriteInteractiveSignal, 0, childDeviceCode);
                WebResponseContent content = _taskService.UpdateTaskStatusToNext(task);
                //Console.Out.WriteLine(content.Serialize());
                Console.Out.WriteLine(content.Serialize());
            }
        }
@@ -251,7 +196,7 @@
        /// <param name="ProtocalDetailValue">线体当前bool读取偏移地址</param>
        public void RequestOutbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue)
        {
            Dt_Task task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode);
            var task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode);
            if (task != null)
            {
                ConveyorLineTaskCommand taskCommand = _mapper.Map<ConveyorLineTaskCommand>(task);
@@ -262,28 +207,6 @@
                _taskService.UpdateTaskStatusToNext(task);
            }
        }
        /// <summary>
        /// è¾“送线请求出库下一地址
        /// </summary>
        /// <param name="conveyorLine">输送线实例对象</param>
        /// <param name="command">读取的请求信息</param>
        /// <param name="childDeviceCode">子设备编号</param>
        public void RequestOutNextAddress(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode)
        {
            Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
            if (task != null)
            {
                Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress);
                if (newTask != null)
                {
                    ConveyorLineTaskCommand taskCommand = _mapper.Map<ConveyorLineTaskCommand>(newTask);
                    taskCommand.InteractiveSignal = command.InteractiveSignal;
                    conveyorLine.SendCommand(taskCommand, childDeviceCode);
                }
            }
        }
        /// <summary>
        /// è¾“送线出库完成
        /// </summary>
@@ -292,7 +215,7 @@
        /// <param name="childDeviceCode">子设备编号</param>
        public void ConveyorLineOutFinish(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue)
        {
            Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
            var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
            if (task != null)
            {
                WebResponseContent content = new WebResponseContent();
@@ -312,6 +235,22 @@
                ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
                content = _taskService.UpdateTaskStatusToNext(task);
            }
        }
        /// <summary>
        /// è¾“送线交互完成
        /// </summary>
        /// <param name="conveyorLine">输送线实例对象</param>
        /// <param name="childDeviceCode">子设备编号</param>
        /// <param name="ProtocalDetailValue">线体当前bool读取偏移地址</param>
        /// <param name="value">值</param>
        public void ConveyorLineSendFinish(CommonConveyorLine conveyorLine, string childDeviceCode, int ProtocalDetailValue, bool value)
        {
            DeviceProDTO? devicePro = conveyorLine.DeviceProDTOs.Where(x => x.DeviceProParamType == nameof(DeviceCommand) && x.DeviceChildCode == childDeviceCode).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
            string[] x = devicePro.DeviceProAddress.Split('.');
            x[x.Length - 1] = (ProtocalDetailValue + 1).ToString();
            string DeviceProAddress = string.Join(".", x);
            conveyorLine.Communicator.Write(DeviceProAddress, value);
        }
        /// <summary>
@@ -348,14 +287,20 @@
                #region è°ƒç”¨WMS获取出库任务
                WMSTaskDTO taskDTO = new WMSTaskDTO();
                object dynamic = new
                // èŽ·å–WMSip地址
                var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
                var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue;
                var requestTrayOutTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.RequestTrayOutTask)?.ConfigValue;
                if (wmsBase == null || requestTrayOutTask == null)
                {
                    position = childDeviceCode,
                    tag = (int)taskType,
                    areaCdoe = roadWay,
                    roadways = roadways
                };
                var result = await HttpHelper.PostAsync("http://localhost:5000/api/Task/RequestTrayOutTaskAsync", dynamic.ToJsonString());
                    throw new InvalidOperationException("WMS IP æœªé…ç½®");
                }
                var wmsIpAddress = wmsBase + requestTrayOutTask;
                var result = await HttpHelper.PostAsync(wmsIpAddress, new { position = childDeviceCode, tag = (int)taskType, areaCdoe = roadWay, roadways = roadways }.ToJsonString());
                //var result = await HttpHelper.PostAsync("http://localhost:5000/api/Task/RequestTrayOutTaskAsync", dynamic.ToJsonString());
                WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result);
@@ -382,22 +327,6 @@
                Console.WriteLine($"{taskDTO.TaskType}呼叫成功");
            }
            return content;
        }
        /// <summary>
        /// è¾“送线交互完成
        /// </summary>
        /// <param name="conveyorLine">输送线实例对象</param>
        /// <param name="childDeviceCode">子设备编号</param>
        /// <param name="ProtocalDetailValue">线体当前bool读取偏移地址</param>
        /// <param name="value">值</param>
        public void ConveyorLineSendFinish(CommonConveyorLine conveyorLine, string childDeviceCode, int ProtocalDetailValue, bool value)
        {
            DeviceProDTO? devicePro = conveyorLine.DeviceProDTOs.Where(x => x.DeviceProParamType == nameof(DeviceCommand) && x.DeviceChildCode == childDeviceCode).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
            string[] x = devicePro.DeviceProAddress.Split('.');
            x[x.Length - 1] = (ProtocalDetailValue + 1).ToString();
            string DeviceProAddress = string.Join(".", x);
            conveyorLine.Communicator.Write(DeviceProAddress, value);
        }
    }
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs
@@ -12,8 +12,8 @@
using WIDESEAWCS_QuartzJob;
using WIDESEAWCS_Tasks.ConveyorLineJob;
using HslCommunication;
using OfficeOpenXml.ConditionalFormatting;
using WIDESEAWCS_DTO.WMS;
using WIDESEAWCS_Common;
namespace WIDESEAWCS_Tasks
{
@@ -24,29 +24,22 @@
        /// </summary>
        private void HandleTaskOut(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue, Dt_Task taskOut)
        {
            // å¦‚果没有任务,直接返回
            if (taskOut == null) return;
            // æ˜ å°„任务命令
            var taskCommand = MapTaskCommand(taskOut, command);
            // æ ¹æ®ä¸åŒçš„任务类型和状态执行不同的逻辑
            bool isOutTray = taskOut.TaskType == (int)TaskOutboundTypeEnum.OutTray;
            bool isOutboundAndOutFinish = taskOut.TaskType == (int)TaskOutboundTypeEnum.Outbound && taskOut.TaskState == (int)TaskOutStatusEnum.SC_OutFinish;
            bool isOutboundAndLineOutExecuting = taskOut.TaskType == (int)TaskOutboundTypeEnum.Outbound && taskOut.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting;
            if (isOutTray || isOutboundAndOutFinish || !isOutboundAndLineOutExecuting)
            {
                // å‘送命令到输送线
                conveyorLine.SendCommand(taskCommand, childDeviceCode);
                // æ ‡è®°å‘送完成
                ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
                // æ›´æ–°ä»»åŠ¡çŠ¶æ€
                _taskService.UpdateTaskStatusToNext(taskOut);
            }
            else if (taskOut.TaskType == (int)TaskOutboundTypeEnum.OutTray && taskOut.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting)
            {
                // å®ŒæˆWMS任务
                CompleteWmsTask(taskOut, command, conveyorLine, childDeviceCode, ProtocalDetailValue);
            }
        }
@@ -56,20 +49,13 @@
        /// </summary>
        private void HandleNewTask(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue)
        {
            // ç‰¹å®šæ¡ä»¶ä¸‹åˆ›å»ºå¹¶å‘送空托盘入库任务
            if ((conveyorLine.DeviceCode == "1003" && childDeviceCode == "1016") || (conveyorLine.DeviceCode == "1005" && childDeviceCode == "1048"))
            {
                // è¯·æ±‚WMS空托盘任务
                CreateAndSendEmptyTrayTask(conveyorLine, command, childDeviceCode, ProtocalDetailValue);
            }
            else if ((conveyorLine.DeviceCode == "1001" && childDeviceCode == "1088") || (conveyorLine.DeviceCode == "1004" && childDeviceCode == "1339"))
            {
                // è¯·æ±‚WMS入库任务
                RequestWmsTask(conveyorLine, command, childDeviceCode, ProtocalDetailValue);
            }
            else if ((conveyorLine.DeviceCode == "1001" && childDeviceCode == "1073") || (conveyorLine.DeviceCode == "1003" && childDeviceCode == "1002"))
            {
                //TODO å‘送直接去NG口任务
            }
        }
@@ -78,7 +64,6 @@
        /// </summary>
        private ConveyorLineTaskCommand MapTaskCommand(Dt_Task task, ConveyorLineTaskCommand command)
        {
            // ä½¿ç”¨mapper映射任务命令
            var comm = _mapper.Map<ConveyorLineTaskCommand>(task);
            comm.InteractiveSignal = command.InteractiveSignal;
            return comm;
@@ -89,25 +74,30 @@
        /// </summary>
        private void CompleteWmsTask(Dt_Task taskOut, ConveyorLineTaskCommand command, CommonConveyorLine conveyorLine, string childDeviceCode, int ProtocalDetailValue)
        {
            // å¦‚果没有条码信息,则设置目标地址为NG地址
            if (command.Barcode == "NoRead")
            {
                var NGAddress = _platFormRepository.QueryFirst(x => x.PlatCode == taskOut.TargetAddress).Capacity;
                taskOut.TargetAddress = NGAddress.ToString();
            }
            // TODO调用WMS任务完成接口
            var keys = new Dictionary<string, object>()
                {
                    {"taskNum", taskOut.TaskNum}
                };
            var result = HttpHelper.GetAsync($"http://127.0.0.1:5000/api/Task/CompleteTaskAsync", keys).Result;
            {
                {"taskNum", taskOut.TaskNum}
            };
            var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
            var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue;
            var completeTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.CompleteTask)?.ConfigValue;
            if (wmsBase == null || completeTask == null)
            {
                throw new InvalidOperationException("WMS IP æœªé…ç½®");
            }
            var wmsIpAddress = wmsBase + completeTask;
            var result = HttpHelper.GetAsync(wmsIpAddress, keys).Result;
            WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result);
            if (content.Status)
            {
                // æ ‡è®°å‘送完成
                ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
                // æ›´æ–°ä»»åŠ¡çŠ¶æ€
                _taskService.UpdateTaskStatusToNext(taskOut);
            }
        }
@@ -119,23 +109,23 @@
        {
            if (command.Barcode != "NoRead")
            {
                // åˆ›å»ºç©ºæ‰˜ç›˜ä»»åŠ¡DTO
                WMSTaskDTO taskDTO = CreateEmptyTrayTaskDto(command.Barcode, childDeviceCode);
                // åˆ›å»ºå¹¶å‘送任务
                WebResponseContent content = CreateAndSendTask(taskDTO);
                var taskDTO = CreateEmptyTrayTaskDto(command.Barcode, childDeviceCode);
                if (_taskRepository.QueryFirst(x => x.PalletCode == taskDTO.PalletCode) != null)
                {
                    WriteInfo(conveyorLine.DeviceName, "当前托盘存在任务");
                    return;
                }
                var content = CreateAndSendTask(taskDTO);
                if (content.Status)
                {
                    // æŸ¥è¯¢ä»»åŠ¡
                    Dt_Task task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode);
                    var task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode);
                    if (task != null)
                    {
                        // æ˜ å°„任务命令
                        ConveyorLineTaskCommand taskCommand = MapTaskCommand(task, command);
                        // å‘送命令到输送线
                        var taskCommand = MapTaskCommand(task, command);
                        conveyorLine.SendCommand(taskCommand, childDeviceCode);
                        // æ ‡è®°å‘送完成
                        ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
                        // æ›´æ–°ä»»åŠ¡çŠ¶æ€
                        _taskService.UpdateTaskStatusToNext(task);
                    }
                }
@@ -147,49 +137,51 @@
        /// </summary>
        private WMSTaskDTO CreateEmptyTrayTaskDto(string barcode, string childDeviceCode)
        {
            #region å‘WMS请求空托盘任务
            WMSTaskDTO wMSTaskDTO = new WMSTaskDTO();
            RequestTaskDto request = new RequestTaskDto()
            var request = new RequestTaskDto()
            {
                Position = childDeviceCode,
                PalletCode = barcode,
            };
            var result = HttpHelper.PostAsync("http://127.0.0.1:5000/api/Task/RequestTrayInTaskAsync", request.ToJsonString()).Result;
            var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
            var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE)?.ConfigValue;
            var requestTrayInTask = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.RequestTrayInTask)?.ConfigValue;
            if (wmsBase == null || requestTrayInTask == null)
            {
                throw new InvalidOperationException("WMS IP æœªé…ç½®");
            }
            var wmsIpAddrss = wmsBase + requestTrayInTask;
            var result = HttpHelper.PostAsync(wmsIpAddrss, request.ToJsonString()).Result;
            if (result == null)
                return wMSTaskDTO;
                return new WMSTaskDTO();
            WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result);
            // æ£€æŸ¥çŠ¶æ€å¹¶è¿”å›ž
            if (!content.Status)
                return wMSTaskDTO;
                return new WMSTaskDTO();
            return JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString());
            #endregion å‘WMS请求空托盘任务
        }
        /// <summary>
        /// è¯·æ±‚WMS任务
        /// </summary>
        private void RequestWmsTask(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue)
        private async void RequestWmsTask(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue)
        {
            // è¯·æ±‚WMS任务
            if (_taskService.RequestWMSTask(command.Barcode, childDeviceCode).Status)
            var content = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode);
            if (content.Status)
            {
                // æŸ¥è¯¢ä»»åŠ¡
                Dt_Task task = _taskService.QueryBarCodeConveyorLineTask(command.Barcode, childDeviceCode);
                var task = _taskService.QueryBarCodeConveyorLineTask(command.Barcode, childDeviceCode);
                if (task != null)
                {
                    // æ˜ å°„任务命令
                    ConveyorLineTaskCommand taskCommand = MapTaskCommand(task, command);
                    // å‘送命令到输送线
                    var taskCommand = MapTaskCommand(task, command);
                    conveyorLine.SendCommand(taskCommand, childDeviceCode);
                    // æ ‡è®°å‘送完成
                    ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
                    // æ›´æ–°ä»»åŠ¡çŠ¶æ€
                    _taskService.UpdateTaskStatusToNext(task);
                }
            }
            else
                WriteInfo(conveyorLine.DeviceName, content.Message);
        }
    }
}
}
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/Debug/net6.0/WIDESEAWCS_Tasks.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/Debug/net6.0/WIDESEAWCS_Tasks.assets.cache
Binary files differ
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/WIDESEAWCS_Tasks.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/WIDESEAWCS_Tasks.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/Debug/net6.0/LogLibrary.assets.cache
Binary files differ
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/Debug/net6.0/LogLibrary.csproj.CoreCompileInputs.cache
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/LogLibrary.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/LogLibrary.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/LogLibrary/obj/project.nuget.cache
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_BusinessServices/obj/Debug/net6.0/WIDESEA_BusinessServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_BusinessesRepository/obj/Debug/net6.0/WIDESEA_BusinessesRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Common/obj/Debug/net6.0/WIDESEA_Common.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Common/obj/WIDESEA_Common.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/Enums/ManageEnum.cs
@@ -73,6 +73,21 @@
        FreeDisable = 4,
    }
    public enum LocationState
    {
        /// <summary>
        /// å…è®¸
        /// </summary>
        [Description("允许")]
        Allow = 1,
        /// <summary>
        /// ä¸å…è®¸
        /// </summary>
        [Description("不允许")]
        NotAllow = 2
    }
    #region ä»»åŠ¡ç±»åž‹
    /// <summary>
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/obj/Debug/net6.0/WIDESEA_Core.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/obj/Debug/net6.0/WIDESEA_DTO.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IBusinessServices/obj/Debug/net6.0/WIDESEA_IBusinessServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IBusinessesRepository/obj/Debug/net6.0/WIDESEA_IBusinessesRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IRepository/obj/Debug/net6.0/WIDESEA_IRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IServices/obj/Debug/net6.0/WIDESEA_IServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStoragIntegrationServices/obj/Debug/net6.0/WIDESEA_IStoragIntegrationServices.csproj.FileListAbsolute.txt
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStoragIntegrationServices/obj/WIDESEA_IStoragIntegrationServices.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStoragIntegrationServices/obj/WIDESEA_IStoragIntegrationServices.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicRepository/obj/Debug/net6.0/WIDESEA_IStorageBasicRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/obj/Debug/net6.0/WIDESEA_IStorageBasicServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageOutOrderRepository/obj/Debug/net6.0/WIDESEA_IStorageOutOrderRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageOutOrderService/obj/Debug/net6.0/WIDESEA_IStorageOutOrderServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskRepository/obj/Debug/net6.0/WIDESEA_IStorageTaskRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/obj/Debug/net6.0/WIDESEA_IStorageTaskServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/obj/Debug/net6.0/WIDESEA_Model.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Repository/obj/Debug/net6.0/WIDESEA_Repository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Services/obj/Debug/net6.0/WIDESEA_Services.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/MCSService.cs
@@ -3,6 +3,7 @@
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_IServices;
using WIDESEA_IStorageBasicRepository;
using WIDESEA_IStorageTaskRepository;
using WIDESEA_IStoragIntegrationServices;
@@ -14,13 +15,16 @@
        private readonly ILocationInfoRepository _locationRepository;
        private readonly IDt_TaskRepository _taskRepository;
        private readonly IStockInfoRepository _stockInfoRepository;
        private readonly ISys_ConfigService _configService;
        public MCSService(ILocationInfoRepository locationRepository,IDt_TaskRepository taskRepository,IStockInfoRepository stockInfoRepository)
        public MCSService(ILocationInfoRepository locationRepository,IDt_TaskRepository taskRepository,IStockInfoRepository stockInfoRepository, ISys_ConfigService configService)
        {
            _locationRepository = locationRepository;
            _taskRepository = taskRepository;
            _stockInfoRepository = stockInfoRepository;
            _configService = configService;
        }
    }
}
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/ModifyAccessStatus.cs
@@ -41,18 +41,20 @@
                return content.Error(ex.Message);
            }
        }
        private static string LocationStatusByCode(int code)
        {
            string str = null;
            switch (code)
            {
                case 1: str = "LocationState_Allows"; break;
                case 2: str = "LocationState_NotAllows"; break;
                //case 2: str = LocationState.LocationLock.ToString(); break;
                default:
                    str = "LocationState_NotAllows"; break;
            }
            return str;
        }
        //private static string LocationStatusByCode(int code)
        //{
        //    string str = null;
        //    switch (code)
        //    {
        //        case 1: str = "LocationState_Allows"; break;
        //        case 2: str = "LocationState_NotAllows"; break;
        //        //case 2: str = LocationState.LocationLock.ToString(); break;
        //        default:
        //            str = "LocationState_NotAllows"; break;
        //    }
        //    return str;
        //}
    }
}
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/NotifyFinishTest.cs
@@ -5,6 +5,7 @@
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEA_Core.Const;
using WIDESEA_Core.Enums;
using WIDESEA_Core.Helper;
using WIDESEA_DTO;
@@ -50,7 +51,6 @@
                    TaskNum = taskNum, //_taskRepository.GetTaskNo().Result,
                    TaskId = 0,
                };
                WMSTaskDTO taskDTO = new WMSTaskDTO
                {
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/AgingInOrOutInput/AgingInOrOutInputService.cs
@@ -23,7 +23,7 @@
        try
        {
            input.SessionId = Guid.NewGuid().ToString();
            input.EmployeeNo = "T00001";
            input.EmployeeNo = "MITest";
            input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
            var inputJson = input.ToDictionary();
            var x = await HttpsClient.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/AgingInput", inputJson);
@@ -52,7 +52,7 @@
        try
        {
            input.SessionId = Guid.NewGuid().ToString();
            input.EmployeeNo = "T00001";
            input.EmployeeNo = "MITest";
            input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); 
            var inputJson = input.ToDictionary();
            var x = await HttpsClient.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/AgingOutput", inputJson);
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/CellState/CellStateService.cs
@@ -1,5 +1,6 @@
using LogLibrary.Log;
using Masuit.Tools;
using Newtonsoft.Json;
using WIDESEA_Common;
using WIDESEA_Core;
using WIDESEA_DTO;
@@ -30,7 +31,7 @@
        try
        {
            input.SessionId = Guid.NewGuid().ToString();
            input.EmployeeNo = "T00001";
            input.EmployeeNo = "MITest";
            input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
            var inputJson = input.ToDictionary();
            var x = await HttpsClient.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/CellState", inputJson);
@@ -71,6 +72,8 @@
        {
            Console.WriteLine(err.Message.ToString());
            LogFactory.GetLog("单电芯属性获取").Error(true, $"\r\r--------------------------------------");
            LogFactory.GetLog("单电芯属性获取").Error(true, $"请求参数: {JsonConvert.SerializeObject(input)}");
            LogFactory.GetLog("单电芯属性获取").Error(true, err.Message);
            LogFactory.GetLog("单电芯属性获取").Error(true, err.StackTrace);
        }
        return Task.FromResult<dynamic>(null);
@@ -87,7 +90,7 @@
        try
        {
            input.SessionId = Guid.NewGuid().ToString();
            input.EmployeeNo = "T00001";
            input.EmployeeNo = "MITest";
            input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
            var inputJson = input.ToDictionary();
            var x = await HttpsClient.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/TrayCellsStatus", inputJson);
@@ -125,6 +128,8 @@
        {
            Console.WriteLine(err.Message.ToString());
            LogFactory.GetLog("整盘电芯属性获取").Error(true, $"\r\r--------------------------------------");
            LogFactory.GetLog("整盘电芯属性获取").Error(true, $"请求参数: {JsonConvert.SerializeObject(input)}");
            LogFactory.GetLog("整盘电芯属性获取").Error(true, err.Message);
            LogFactory.GetLog("整盘电芯属性获取").Error(true, err.StackTrace);
        }
        return content;
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/ProcessApply/ProcessApplyService.cs
@@ -24,7 +24,7 @@
        try
        {
            input.SessionId = Guid.NewGuid().ToString();
            input.EmployeeNo = "T00001";
            input.EmployeeNo = "MITest";
            input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
            var inputIson = input.ToDictionary();
            var x = await HttpsClient.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/ProcessApply", inputIson);
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/Unbind/UnbindService.cs
@@ -28,7 +28,7 @@
            input.SessionId = Guid.NewGuid().ToString();
            input.Software = "WMS";
            input.EquipmentCode = "ECH001-B";
            input.EmployeeNo = "T00001";
            input.EmployeeNo = "MITest";
            input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
            var inputJson = input.ToDictionary();
            LogFactory.GetLog("托盘单电芯解绑1").Info(true, JsonConvert.SerializeObject(inputJson));
@@ -57,7 +57,7 @@
            input.SessionId = Guid.NewGuid().ToString();
            input.Software = "WMS";
            input.EquipmentCode = "ECH001-B";
            input.EmployeeNo = "T00001";
            input.EmployeeNo = "MITest";
            input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
            var inputJson = input.ToDictionary();
            Console.WriteLine(inputJson);
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/WIDESEA_StoragIntegrationServices.csproj
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/obj/Debug/net6.0/WIDESEA_StoragIntegrationServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/obj/WIDESEA_StoragIntegrationServices.csproj.nuget.g.props
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/obj/Debug/net6.0/WIDESEA_StorageBasicRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/obj/Debug/net6.0/WIDESEA_StorageBasicServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageOutOrderRepository/obj/Debug/net6.0/WIDESEA_StorageOutOrderRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageOutOrderServices/obj/Debug/net6.0/WIDESEA_StorageOutOrderServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskRepository/obj/Debug/net6.0/WIDESEA_StorageTaskRepository.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs
@@ -396,6 +396,7 @@
                {
                    MaterielCode = "空托盘",
                    Id = 0,
                    Status = (int)StockStateEmun.已入库
                }
            }
        };
@@ -407,6 +408,7 @@
    private DtStockInfo CreateFullPalletStock(Dt_Task task, DtLocationInfo locationInf, DtBoxingInfo boxing)
    {
        var boxDetail = boxing.BoxingInfoDetails.Adapt<List<DtStockInfoDetail>>();
        boxDetail.ForEach(x => { x.Status = (int)StockStateEmun.已入库; });
        var stock = new DtStockInfo()
        {
            PalletCode = task.PalletCode,
@@ -531,6 +533,7 @@
            {
                Software = "WMS",
                TrayBarcode = input.PalletCode,
                //EquipmentCode = "EQ_CWJZ01"
                EquipmentCode = "ECH001-B"
            };
@@ -546,9 +549,9 @@
                return content.Error(result.MOMMessage);
            // TODO èŽ·å–æœ¬åœ°æ–™æ¡†å±žæ€§ä¸Žæ•´ç›˜ç”µèŠ¯å±žæ€§èŽ·å–çš„å€¼è¿›è¡Œå¯¹æ¯”ï¼Œå¦‚æžœä¸€è‡´åˆ™ç»§ç»­ï¼Œå¦åˆ™è¿”å›žé”™è¯¯ä¿¡æ¯
            var productions = await _productionRepository.QueryDataAsync(x => result.TrayBarcodePropertys.Select(x => x.TrayBarcodeProperty).ToList().Contains(x.TrayBarcodeProperty));
            if (productions.Count <= 0)
                return content.Error("料框属性不存在");
            //var productions = await _productionRepository.QueryDataAsync(x => result.TrayBarcodePropertys.Select(x => x.TrayBarcodeProperty).ToList().Contains(x.TrayBarcodeProperty));
            //if (productions.Count <= 0)
            //    return content.Error("料框属性不存在");
            // è°ƒç”¨CreateBoxingInfo方法,创建组盘信息
@@ -644,7 +647,11 @@
                return content.OK(data: task);
            }
            return await CreateNewTask(input, null, 1);
            // èŽ·å–ç›®æ ‡åœ°å€
            List<string> strings = input.Position == "1016" ? new List<string>() { "CHSC01" } : new List<string>() { "JZSC01" };
            return await CreateNewTask(input, strings, 1);
            //return await CreateNewTask(input, null, 1);
        }
        catch (Exception)
        {
@@ -745,12 +752,20 @@
        {
            // æ ¹æ®æ‰˜ç›˜ç±»åž‹æŸ¥è¯¢åº“存信息
            DtStockInfo stockInfo = tag == (int)TaskOutboundTypeEnum.Outbound
                ? QueryStockInfoForRealTray(areaCode, roadways)
                : QueryStockInfoForEmptyTray(areaCode, roadways);
                ? QueryStockInfoForRealTrayAsync(areaCode, roadways).Result
                : QueryStockInfoForEmptyTrayAsync(areaCode, roadways).Result;
            if (stockInfo == null)
            {
                return content.Error("库存信息不存在");
            }
            // æ–°å¢žé‡å¤ä»»åŠ¡æ ¡éªŒ
            var hasTask = BaseDal.QueryFirst(x => x.PalletCode == stockInfo.PalletCode);
            if (hasTask != null)
            {
                WMSTaskDTO taskDTO1 = CreateTaskDTO(hasTask);
                return content.OK("已存在空盘出库任务", data: taskDTO1);
            }
            // åˆ›å»ºæ–°ä»»åŠ¡å®žä¾‹
@@ -785,26 +800,33 @@
    /// <summary>
    /// æŸ¥è¯¢å®žç›˜åº“存信息
    /// </summary>
    private DtStockInfo QueryStockInfoForRealTray(string areaCode, List<string> roadways)
    private async Task<DtStockInfo> QueryStockInfoForRealTrayAsync(string areaCode, List<string> roadways)
    {
        // TODO时间根据MOM系统配置的出库时间来获取,暂时不知道MOM返回的时间是什么所以这里测试时候在改
        return _stockInfoRepository.Db.Queryable<DtStockInfo>().Where(x => x.AreaCode == areaCode && Convert.ToDateTime(x.LinedProcessFeedbackTime) < DateTime.Now && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && roadways.Contains(x.LocationInfo.RoadwayNo))
                                   .Includes(x => x.LocationInfo)
                                   .Includes(x => x.StockInfoDetails)
                                   .OrderBy(x => x.CreateDate)
                                   .First();
        //return _stockInfoRepository.QueryFirstNavAsync(x => x.AreaCode == areaCode && Convert.ToDateTime(x.LinedProcessFeedbackTime).AddHours(Convert.ToDouble(x.SpecialParameterDuration)) < DateTime.Now
        //                        && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && roadways.Contains(x.LocationInfo.RoadwayNo) && x.StockInfoDetails.Any(x => x.Status == (int)StockStateEmun.已入库) && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock).Result;
        var result = await _stockInfoRepository.QueryFirstNavAsync(x =>
            x.AreaCode == areaCode &&
            Convert.ToDateTime(x.LinedProcessFeedbackTime).AddHours(Convert.ToDouble(x.SpecialParameterDuration)) < DateTime.Now &&
            x.LocationInfo != null && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock &&
            roadways.Contains(x.LocationInfo.RoadwayNo) &&
            x.StockInfoDetails != null && x.StockInfoDetails.Any(detail => detail.Status == (int)StockStateEmun.已入库));
        return result;
    }
    /// <summary>
    /// æŸ¥è¯¢ç©ºç›˜åº“存信息
    /// </summary>
    private DtStockInfo QueryStockInfoForEmptyTray(string areaCode, List<string> roadways)
    private async Task<DtStockInfo> QueryStockInfoForEmptyTrayAsync(string areaCode, List<string> roadways)
    {
        return _stockInfoRepository.Db.Queryable<DtStockInfo>().Where(x => x.AreaCode == areaCode && x.StockInfoDetails.Any(z => z.MaterielCode == "空托盘") && roadways.Contains(x.LocationInfo.RoadwayNo))
                                   .Includes(x => x.LocationInfo)
                                   .Includes(x => x.StockInfoDetails)
                                   .OrderBy(x => x.CreateDate)
                                   .First();
        //return _stockInfoRepository.QueryFirstNavAsync(x => x.StockInfoDetails.Any(x => x.MaterielCode == "空托盘") && roadways.Contains(x.LocationInfo.RoadwayNo) && x.StockInfoDetails.Any(x => x.Status == (int)StockStateEmun.已入库) && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock).Result;
        var result = await _stockInfoRepository.QueryFirstNavAsync(x =>
            x.StockInfoDetails != null && x.StockInfoDetails.Any(detail => detail.MaterielCode == "空托盘") &&
            roadways.Contains(x.LocationInfo.RoadwayNo) &&
            x.StockInfoDetails.Any(detail => detail.Status == (int)StockStateEmun.已入库) &&
            x.LocationInfo != null && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock);
        return result;
    }
    /// <summary>
@@ -1298,7 +1320,8 @@
        WebResponseContent content = new WebResponseContent();
        // èŽ·å–ç›®æ ‡åœ°å€
        string ToAddress = await GetRoadWayAsync(process);
        //string ToAddress = await GetRoadWayAsync(process);
        string ToAddress = await GetRoadWayAsync(input, process);
        // åˆ›å»ºæ–°ä»»åŠ¡å®žä¾‹
        var task = new Dt_Task
@@ -1397,7 +1420,7 @@
    /// <param name="Direction">方向</param>
    /// <param name="area">关系区域</param>
    /// <returns></returns>
    public async Task<string> GetRoadWayAsync(List<string> process)
    public async Task<string> GetRoadWayAsync(RequestTaskDto input, List<string> process)
    {
        var minGroup = _locationRepository.QueryData(x => process.Contains(x.RoadwayNo) && x.LocationStatus == (int)LocationEnum.Free)
            .GroupBy(x => x.RoadwayNo)
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/obj/Debug/net6.0/WIDESEA_StorageTaskServices.GeneratedMSBuildEditorConfig.editorconfig
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/Debug/net6.0/WIDESEA_Tasks.assets.cache
Binary files differ
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/WIDESEA_Tasks.csproj.nuget.dgspec.json
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/project.assets.json
ÎļþÒÑɾ³ý
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Tasks/obj/project.nuget.cache
ÎļþÒÑɾ³ý