huanghongfeng
8 小时以前 6ba24a49c009cca01d9c02b9dae692a53b8be116
入库
已修改182个文件
已添加2个文件
1114 ■■■■ 文件已修改
代码管理/WCS/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.metadata.v7.bin 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.projects.v7.bin 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/DesignTimeBuild/.dtbcache.v2 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.futdcache.v2 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.suo 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/HierarchyCache.v1.txt 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/Enum/AgvStationEnum.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/Enum/RGVStationEnum.cs 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.csproj.CoreCompileInputs.cache 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/ref/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/refint/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/IAgvStationService.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_ISystemServices.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_ISystemServices.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/ref/WIDESEAWCS_ISystemServices.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/refint/WIDESEAWCS_ISystemServices.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/System/AGVStation.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/ref/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/refint/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/AgvStationService.cs 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/Debug/net6.0/WIDESEAWCS_SystemServices.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ISystemServices.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ISystemServices.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.AssemblyInfo.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.AssemblyInfoInputs.cache 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.GeneratedMSBuildEditorConfig.editorconfig 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.assets.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.dll 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.pdb 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/LogJob.cs 259 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SpeStackerCraneJob/GetDeviceAddress.cs 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SpeStackerCraneJob/SpeStackerCraneJob.cs 617 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/Debug/net6.0/WIDESEAWCS_Tasks.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
项目资料/通信协议/兰剑WCS--博世拓林WCS接口对接文档.20250610.doc 补丁 | 查看 | 原始文档 | blame | 历史
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.metadata.v7.bin
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/.vs/ProjectEvaluation/wideseawcs_server.projects.v7.bin
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/DesignTimeBuild/.dtbcache.v2
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.futdcache.v2
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/.suo
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/HierarchyCache.v1.txt
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/obj/Debug/net6.0/WIDESEAWCS_BasicInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/Enum/AgvStationEnum.cs
@@ -7,7 +7,7 @@
namespace WIDESEAWCS_DTO.Enum
{
    public enum AgvStationEnum
    /*public enum AgvStationEnum
    {
        /// <summary>
        /// å…¥åº“口
@@ -40,5 +40,6 @@
        /// </summary>
        [Description("过道入库站台(内)")]
        Aisleplatform_Medial = 6,
    }
    }*/
}
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/Enum/RGVStationEnum.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,34 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WIDESEAWCS_DTO.Enum
{
    public enum RGVEquipment
    {
        /// <summary>
        /// å…¥åº“口RGV
        /// </summary>
        [Description("入库口RGV")]
        InRGVForklift = 1,
        /// <summary>
        /// å‡ºåº“口RGV
        /// </summary>
        [Description("出库口RGV")]
        OutRGVForklift = 2,
        /// <summary>
        /// è¿‡é“子车
        /// </summary>
        [Description("过道子车")]
        Corridorcar = 3,
        /// <summary>
        /// æ¯è½¦æ‹–车
        /// </summary>
        [Description("母车拖车")]
        Mothertrailer = 4,
    }
}
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
a485f729d4153e19b1c608c982621dd91d3c3956
87e50b359fca00933c1e5072359aa27940b9949b
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/ref/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/obj/Debug/net6.0/refint/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoRepository/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/obj/Debug/net6.0/WIDESEAWCS_IBasicInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemRepository/obj/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/IAgvStationService.cs
@@ -34,26 +34,31 @@
    public interface IAgvStationService : IService<AGVStation>
    {
        /// <summary>
        /// èŽ·å–å½“å‰åœ°å€ç±»åž‹
        /// æ ¹æ®è®¾å¤‡ä¿¡æ¯ï¼ŒèŽ·å–å°è½¦å†…å®¹
        /// </summary>
        /// <param name="Station_code"></param>
        /// <param name="ChildPosiDeviceCode">设备</param>
        /// <returns></returns>
        AGVStation GetAllStationByDeviceCode(int Station_code);
        AGVStation Corridorequipment(string ChildPosiDeviceCode);
        /// <summary>
        /// èŽ·å–æ¯è½¦çš„PLC
        /// æ ¹æ®å­åœ°å€ï¼ŒèŽ·å–æ¯è½¦è®¾å¤‡ä¿¡æ¯
        /// </summary>
        /// <param name="Station_code"></param>
        /// <param name="ZicheMotAddres">子地址</param>
        /// <returns></returns>
        AGVStation GetMothercarCode(string Station_code);
        AGVStation GetMothervehicle(int ZicheMotAddres);
        /// <summary>
        /// èŽ·å–å­è½¦åœ°å€
        /// æ ¹æ®è¿‡é“地址,获取过道子车设备信息
        /// </summary>
        /// <param name="Station_code"></param>
        /// <param name="ZicheMotAddres">子地址</param>
        /// <returns></returns>
        AGVStation GetZicheCode(string Station_code);
        AGVStation GetMotheaisle(int ZicheMotAddres);
        /// <summary>
        /// æ ¹æ®HCJ站台查找内侧子车设备信息
        /// </summary>
        /// <param name="HCJAddres">HCJ站台编号</param>
        /// <returns></returns>
        AGVStation GetZicheDeep(int HCJAddres);
    }
}
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_ISystemServices.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_ISystemServices.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/WIDESEAWCS_ISystemServices.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/ref/WIDESEAWCS_ISystemServices.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ISystemServices/obj/Debug/net6.0/refint/WIDESEAWCS_ISystemServices.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/obj/Debug/net6.0/WIDESEAWCS_ITaskInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/System/AGVStation.cs
@@ -43,7 +43,7 @@
        public int Station_enable { get; set; }
        /// <summary>
        /// åŒºåŸŸ
        /// åŒºåŸŸ(1:外侧   2:内侧)
        /// </summary>
        [SugarColumn( ColumnDescription = "区域",IsNullable =true)]
        public int Station_Area { get; set; }
@@ -65,26 +65,33 @@
        /// <summary>
        /// è¿‡é“地址母1
        /// </summary>
        [SugarColumn(Length = 255, ColumnDescription = "过道地址母1")]
        public string MotherCarDeviceCode { get; set; }
        [SugarColumn(Length = 50, ColumnDescription = "过道地址母1")]
        public int MotherCarDeviceCode { get; set; }
        /// <summary>
        /// è¿‡é“地址母2
        /// </summary>
        [SugarColumn(Length = 255, ColumnDescription = "过道地址母2")]
        public string MotherCardeputy { get; set; }
        [SugarColumn(Length = 50, ColumnDescription = "过道地址母2")]
        public int MotherCardeputy { get; set; }
        /// <summary>
        /// æ¯åœ°å€ï¼ˆå¯¹æ ‡å †åž›æœºå–货口)
        /// </summary>
        [SugarColumn(Length = 255, ColumnDescription = "母地址")]
        public string Motherinlaw { get; set; }
        [SugarColumn(Length = 50, ColumnDescription = "母地址")]
        public int Motherinlaw { get; set; }
        /// <summary>
        /// å­åœ°å€ï¼ˆå¯¹æ ‡è¿‡é“站台)
        /// </summary>
        [SugarColumn(Length = 255, ColumnDescription = "子地址")]
        public string ZicheMotherinlaw { get; set; }
        [SugarColumn(Length = 50, ColumnDescription = "子地址")]
        public int ZicheMotherinlaw { get; set; }
        /// <summary>
        /// HCJ存放点
        /// </summary>
        [SugarColumn(Length = 50, ColumnDescription = "HCJ存放点")]
        public int HCJStorageaddress { get; set; }
    }
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/ref/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/obj/Debug/net6.0/refint/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs
@@ -369,15 +369,15 @@
                            result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data };
                        }
                        break;
                    case "agvStationEnum":
                    case "RGVEquipment":
                        {
                            List<object> data = new List<object>();
                            Type type = typeof(AgvStationEnum);
                            List<int> enums = Enum.GetValues(typeof(AgvStationEnum)).Cast<int>().ToList();
                            Type type = typeof(RGVEquipment);
                            List<int> enums = Enum.GetValues(typeof(RGVEquipment)).Cast<int>().ToList();
                            int index = 0;
                            foreach (var item in enums)
                            {
                                FieldInfo? fieldInfo = typeof(AgvStationEnum).GetField(((AgvStationEnum)item).ToString());
                                FieldInfo? fieldInfo = typeof(RGVEquipment).GetField(((RGVEquipment)item).ToString());
                                DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>();
                                if (description != null)
                                {
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/obj/Debug/net6.0/WIDESEAWCS_Server.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemRepository/obj/Debug/net6.0/WIDESEAWCS_SystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/AgvStationService.cs
@@ -36,6 +36,7 @@
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Comm.Http;
using WIDESEA_Common.Log;
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseServices;
using WIDESEAWCS_Core.Enums;
@@ -52,28 +53,56 @@
    {
        public AgvStationService(IAgvStationRepository BaseDal) : base(BaseDal)
        {
        }
        public AGVStation GetAllStationByDeviceCode(int Station_code)
        {
            return BaseDal.QueryFirst(x=>x.Station_code== Station_code);
        }
        public AGVStation GetMothercarDeviceCode(string Station_code)
        /// <summary>
        /// æ ¹æ®è®¾å¤‡ä¿¡æ¯ï¼ŒèŽ·å–å°è½¦å†…å®¹
        /// </summary>
        /// <param name="ChildPosiDeviceCode">设备</param>
        /// <returns></returns>
        public AGVStation Corridorequipment(string ChildPosiDeviceCode)
        {
            return BaseDal.QueryFirst(x => x.Station_code== int.Parse(Station_code));
            return BaseDal.QueryFirst(x=>x.ChildPosiDeviceCode == ChildPosiDeviceCode && x.Station_enable==1);
        }
        public AGVStation GetMothercarCode(string Station_code)
        /// <summary>
        /// æ ¹æ®å­åœ°å€ï¼ŒèŽ·å–æ¯è½¦è®¾å¤‡ä¿¡æ¯
        /// </summary>
        /// <param name="ZicheMotAddres">子地址</param>
        /// <returns></returns>
        public AGVStation GetMothervehicle(int ZicheMotAddres)
        {
            return BaseDal.QueryFirst(x => x.ZicheMotherinlaw == Station_code);
            return BaseDal.QueryFirst(x => x.ZicheMotherinlaw == ZicheMotAddres && x.Station_enable == 1);
        }
        public AGVStation GetZicheCode(string Station_code)
        /// <summary>
        /// æ ¹æ®è¿‡é“地址,获取过道子车设备信息
        /// </summary>
        /// <param name="ZicheMotAddres">子地址</param>
        /// <returns></returns>
        public AGVStation GetMotheaisle(int ZicheMotAddres)
        {
            return BaseDal.QueryFirst(x => x.Motherinlaw == Station_code);
            return BaseDal.QueryFirst(x => (x.MotherCarDeviceCode == ZicheMotAddres || x.MotherCardeputy == ZicheMotAddres) && x.Station_enable == 1);
        }
        /// <summary>
        /// æ ¹æ®HCJ站台查找内侧子车设备信息
        /// </summary>
        /// <param name="HCJAddres">HCJ站台编号</param>
        /// <returns></returns>
        public AGVStation GetZicheDeep(int HCJAddres)
        {
            return BaseDal.QueryFirst(x => (x.HCJStorageaddress == HCJAddres || x.Station_Area == 2) && x.Station_enable == 1);
        }
        /// <summary>
        /// æ ¹æ®HCJ站台查找内侧子车设备信息
        /// </summary>
        /// <param name="HCJAddres">HCJ站台编号</param>
        /// <returns></returns>
        public AGVStation GetZicheDeep(int HCJAddres)
        {
            return BaseDal.QueryFirst(x => (x.HCJStorageaddress == HCJAddres || x.Station_Area == 2) && x.Station_enable == 1);
        }
    }
}
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/obj/Debug/net6.0/WIDESEAWCS_SystemServices.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoRepository/obj/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_BasicInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_DTO.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_IBasicInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ISystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ISystemServices.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ISystemServices.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_ITaskInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_Model.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_SystemRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoRepository.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/bin/Debug/net6.0/WIDESEAWCS_TaskInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.AssemblyInfo.cs
@@ -11,12 +11,12 @@
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("WIDESEAWCS_TaskInfoService")]
[assembly: System.Reflection.AssemblyCompanyAttribute("WIDESEAWCs_TaskInfoService")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("WIDESEAWCS_TaskInfoService")]
[assembly: System.Reflection.AssemblyTitleAttribute("WIDESEAWCS_TaskInfoService")]
[assembly: System.Reflection.AssemblyProductAttribute("WIDESEAWCs_TaskInfoService")]
[assembly: System.Reflection.AssemblyTitleAttribute("WIDESEAWCs_TaskInfoService")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// ç”± MSBuild WriteCodeFragment ç±»ç”Ÿæˆã€‚
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.AssemblyInfoInputs.cache
@@ -1 +1 @@
0c89bb1cae87ea43ac260fbf353d127eb2b5c7af
696e07e336e90b059d5a69ceac1b59c1567636d6
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.GeneratedMSBuildEditorConfig.editorconfig
@@ -7,5 +7,5 @@
build_property.PlatformNeutralAssembly = 
build_property.EnforceExtendedAnalyzerRules = 
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = WIDESEAWCS_TaskInfoService
build_property.ProjectDir = F:\项目\MingHeZhiNeng\嘉兴RGV\9-18\JiaXingRGV\代码管理\WCS\WCS\WIDESEAWCS_Server\WIDESEAWCS_TaskInfoService\
build_property.RootNamespace = WIDESEAWCs_TaskInfoService
build_property.ProjectDir = F:\项目\MingHeZhiNeng\嘉兴RGV\9-18\JiaXingRGV\代码管理\WCS\WCS\WIDESEAWCS_Server\WIDESEAWCs_TaskInfoService\
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.assets.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.csproj.AssemblyReference.cache
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.dll
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/obj/Debug/net6.0/WIDESEAWCS_TaskInfoService.pdb
Binary files differ
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/LogJob.cs
@@ -1,216 +1,123 @@
using Quartz;
using HslCommunication;
using HslCommunication.Core;
using Microsoft.AspNetCore.Http;
using Microsoft.VisualBasic.FileIO;
using Newtonsoft.Json;
using Quartz;
using SixLabors.ImageSharp.PixelFormats;
using System;
using System.IO;
using System.Threading;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Reflection;
using System.Reflection.Metadata.Ecma335;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Common.Log;
using WIDESEAWCS_Communicator;
using WIDESEAWCS_Core.Helper;
using WIDESEAWCS_QuartzJob;
using WIDESEAWCS_QuartzJob.DeviceBase;
using WIDESEAWCS_QuartzJob.StackerCrane.Enum;
namespace WIDESEAWCS_Tasks
{
    [DisallowConcurrentExecution]
    public class LogJob : IJob
    {
        // å®šä¹‰å…è®¸åˆ é™¤çš„æ ¹ç›®å½•
        private static readonly string LogRootPath = Path.GetFullPath(Environment.CurrentDirectory + "/Log");
        private static readonly string PlatformInfoPath = Path.GetFullPath(Environment.CurrentDirectory + "/Log/站台读取信息记录");
        public Task Execute(IJobExecutionContext context)
        {
            try
            {
                Task.Run(() =>
                {
                    try
                    {
                            // æ¸…理日志文件
                            CleanLogFilesOnly(LogRootPath, TimeSpan.FromMinutes(43200));
                            CleanAllInPlatformInfo(PlatformInfoPath, TimeSpan.FromMinutes(43200));
                            Thread.Sleep(1000 * 10); // 10秒后再次执行
                        WriteLog.GetLog("LogJob").Write($"日志记录:{DateTime.Now}", "LogJob");
                        Run(10);
                        Run2(10);
                        Thread.Sleep(1000 * 10);
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine($"日志任务执行异常: {ex.Message}");
                    }
                    catch { }
                });
            }
            catch (Exception ex)
            {
                Console.WriteLine($"{nameof(LogJob)} åˆå§‹åŒ–异常: {ex.Message}");
                Console.Out.WriteLine(nameof(LogJob) + ":" + ex.Message);
            }
            return Task.CompletedTask;
        }
        /// <summary>
        /// æ£€æŸ¥è·¯å¾„是否在允许删除的范围内
        /// </summary>
        /// <param name="path">要检查的路径</param>
        /// <param name="allowedRoot">允许的根目录</param>
        /// <returns>是否允许删除</returns>
        private static bool IsPathAllowed(string path, string allowedRoot)
        private static void Run(int saveDays)
        {
            try
            var logPath = System.Environment.CurrentDirectory + "/log";
            if (Directory.Exists(logPath))
            {
                var fullPath = Path.GetFullPath(path);
                return fullPath.StartsWith(allowedRoot, StringComparison.OrdinalIgnoreCase);
            }
            catch
            {
                return false;
            }
        }
                var nowTime = DateTime.Now;
                var dayDir = Directory.GetDirectories(logPath, "20*", System.IO.SearchOption.AllDirectories);
        /// <summary>
        /// åªæ¸…理Log目录下的文件
        /// </summary>
        /// <param name="directoryPath">要清理的目录路径</param>
        /// <param name="maxAge">文件最大保留时间</param>
        private static void CleanLogFilesOnly(string directoryPath, TimeSpan maxAge)
        {
            if (!Directory.Exists(directoryPath))
            {
                //Console.WriteLine($"目录不存在: {directoryPath}");
                return;
            }
            try
            {
                var now = DateTime.Now;
                // åªèŽ·å–å½“å‰ç›®å½•çš„æ–‡ä»¶ï¼Œä¸åŒ…å«å­ç›®å½•
                var files = Directory.GetFiles(directoryPath, "*", SearchOption.TopDirectoryOnly);
                int deletedCount = 0;
                foreach (var file in files)
                foreach (var dirpath in dayDir)
                {
                    try
                    //文件夹名
                    var dirName = Path.GetFileName(dirpath).Replace("_", "-");
                    DateTime targetDate = DateTime.ParseExact(dirName, "yyyyMMdd", null);
                    if ((nowTime - targetDate).TotalDays >= saveDays)
                    {
                        // æ£€æŸ¥æ–‡ä»¶æ˜¯å¦åœ¨å…è®¸åˆ é™¤çš„范围内
                        if (!IsPathAllowed(file, LogRootPath))
                        //删除文件和文件夹
                        try
                        {
                            Console.WriteLine($"跳过非Log目录文件: {file}");
                            continue;
                            var flies = Directory.GetFiles(dirpath);
                            foreach (var item in flies)
                            {
                                File.Delete(item);
                            }
                            Directory.Delete(dirpath);
                        }
                        // èŽ·å–æ–‡ä»¶åˆ›å»ºæ—¶é—´
                        var creationTime = File.GetCreationTime(file);
                        // æ£€æŸ¥æ–‡ä»¶æ˜¯å¦è¶…过指定时间
                        if (now - creationTime > maxAge)
                        {
                            File.Delete(file);
                            deletedCount++;
                            //Console.WriteLine($"已删除文件: {file}");
                        }
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine($"删除文件 {file} æ—¶å‡ºé”™: {ex.Message}");
                    }
                }
                //Console.WriteLine($"目录 {directoryPath} æ¸…理完成,删除了 {deletedCount} ä¸ªæ–‡ä»¶");
            }
            catch (Exception ex)
            {
                Console.WriteLine($"清理目录 {directoryPath} æ—¶å‡ºé”™: {ex.Message}");
            }
        }
        /// <summary>
        /// æ¸…理站台读取信息记录目录下的所有内容和子目录
        /// </summary>
        /// <param name="directoryPath">要清理的目录路径</param>
        /// <param name="maxAge">文件最大保留时间</param>
        private static void CleanAllInPlatformInfo(string directoryPath, TimeSpan maxAge)
        {
            if (!Directory.Exists(directoryPath))
            {
                //Console.WriteLine($"目录不存在: {directoryPath}");
                return;
            }
            try
            {
                var now = DateTime.Now;
                int deletedCount = 0;
                // åˆ é™¤æ‰€æœ‰è¿‡æœŸçš„æ–‡ä»¶
                var files = Directory.GetFiles(directoryPath, "*", SearchOption.AllDirectories);
                foreach (var file in files)
                {
                    try
                    {
                        // æ£€æŸ¥æ–‡ä»¶æ˜¯å¦åœ¨å…è®¸åˆ é™¤çš„范围内
                        if (!IsPathAllowed(file, PlatformInfoPath))
                        {
                            Console.WriteLine($"跳过非站台信息目录文件: {file}");
                            continue;
                        }
                        var creationTime = File.GetCreationTime(file);
                        if (now - creationTime > maxAge)
                        {
                            File.Delete(file);
                            deletedCount++;
                            //Console.WriteLine($"已删除文件: {file}");
                        }
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine($"删除文件 {file} æ—¶å‡ºé”™: {ex.Message}");
                    }
                }
                // åˆ é™¤æ‰€æœ‰ç©ºç›®å½•(包括子目录)
                DeleteAllEmptySubdirectories(directoryPath);
                //Console.WriteLine($"目录 {directoryPath} æ¸…理完成,删除了 {deletedCount} ä¸ªæ–‡ä»¶");
            }
            catch (Exception ex)
            {
                Console.WriteLine($"清理目录 {directoryPath} æ—¶å‡ºé”™: {ex.Message}");
            }
        }
        /// <summary>
        /// é€’归删除所有空子目录
        /// </summary>
        /// <param name="directoryPath">要清理的目录路径</param>
        private static void DeleteAllEmptySubdirectories(string directoryPath)
        {
            if (!Directory.Exists(directoryPath))
                return;
            try
            {
                // é€’归处理所有子目录
                foreach (var subDirectory in Directory.GetDirectories(directoryPath))
                {
                    // æ£€æŸ¥ç›®å½•是否在允许删除的范围内
                    if (!IsPathAllowed(subDirectory, PlatformInfoPath))
                    {
                        Console.WriteLine($"跳过非站台信息目录: {subDirectory}");
                        continue;
                    }
                    DeleteAllEmptySubdirectories(subDirectory);
                    // æ£€æŸ¥å­ç›®å½•是否为空
                    var files = Directory.GetFiles(subDirectory);
                    var directories = Directory.GetDirectories(subDirectory);
                    if (files.Length == 0 && directories.Length == 0)
                    {
                        Directory.Delete(subDirectory);
                        //Console.WriteLine($"已删除空目录: {subDirectory}");
                        catch { }
                    }
                }
            }
            catch (Exception ex)
        }
        private static void Run2(int saveDays)
        {
            var logPath = System.Environment.CurrentDirectory + "/txt";
            if (Directory.Exists(logPath))
            {
                Console.WriteLine($"处理目录 {directoryPath} æ—¶å‡ºé”™: {ex.Message}");
                var nowTime = DateTime.Now;
                var dayDir = Directory.GetDirectories(logPath, "20*", System.IO.SearchOption.AllDirectories);
                foreach (var dirpath in dayDir)
                {
                    //文件夹名
                    var dirName = Path.GetFileName(dirpath).Replace("_", "-");
                    DateTime targetDate = DateTime.ParseExact(dirName, "yyyyMMdd", null);
                    if ((nowTime - targetDate).TotalDays >= saveDays)
                    {
                        //删除文件和文件夹
                        try
                        {
                            var flies = Directory.GetFiles(dirpath);
                            foreach (var item in flies)
                            {
                                File.Delete(item);
                            }
                            Directory.Delete(dirpath);
                        }
                        catch { }
                    }
                }
            }
        }
    }
}
}
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SpeStackerCraneJob/GetDeviceAddress.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,70 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEAWCS_Model.Models;
using WIDESEAWCS_QuartzJob.DTO;
using WIDESEAWCS_QuartzJob;
using WIDESEA_Common.Log;
using System.Xml.Linq;
namespace WIDESEAWCS_Tasks.StackerCraneJob
{
    public class GetDeviceAddress
    {
        /// <summary>
        /// ä¼ å…¥è®¾å¤‡ï¼ŒèŽ·å–å½“å‰ä½ç½®ä½ç½®
        /// </summary>
        /// <param name="ChildPosiDeviceCode">设备</param>
        /// <returns></returns>
        public static int GetEquipmentlocation(string ChildPosiDeviceCode)
        {
            IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == ChildPosiDeviceCode);
            CommonStackerCrane Commonstacker = (CommonStackerCrane)device;
            DeviceProDTO? deviceProDTO = GetDeviceProDTO(Commonstacker, ChildPosiDeviceCode, "RGVCurrentlocation");
            int HCJGStatus = GetLine(Commonstacker, deviceProDTO.DeviceProAddress);
            return HCJGStatus;
        }
        /// <summary>
        /// æŸ¥è¯¢å…·ä½“地址
        /// </summary>
        /// <param name="Commonstacker"></param>
        /// <param name="SCAddress"></param>
        /// <param name="Interactivet"></param>
        /// <returns></returns>
        public static DeviceProDTO? GetDeviceProDTO(CommonStackerCrane Commonstacker, string SCAddress, string Interactivet)
        {
            return Commonstacker.DeviceProDTOs.FirstOrDefault(x => x.DeviceChildCode == SCAddress && x.DeviceProParamName == Interactivet && x.DeviceProParamType == "ReadDeviceCommand");
        }
        /// <summary>
        /// è¯»å–设备信息
        /// </summary>
        /// <param name="conveyorLine"></param>
        /// <param name="DeviceProDataBlock"></param>
        /// <returns></returns>
        public static int GetLine(CommonStackerCrane Commonstacker, string DeviceProDataBlock)
        {
            return Commonstacker.Communicator.Read<short>(DeviceProDataBlock);
        }
        /// <summary>
        /// æ—¥å¿—记录
        /// </summary>
        /// <param name="SCLLinStack">设备名称</param>
        /// <param name="Filename">文件名称</param>
        /// <param name="Logtype">日志类型</param>
        /// <param name="Magessadd">内容</param>
        public void wcsWriteLog(string SCLLinStack,string Filename, string Logtype, string Magessadd)
        {
            WriteLog.Write_Log(SCLLinStack, Filename, Logtype, new { ä¿¡æ¯ = Magessadd });
        }
    }
}
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SpeStackerCraneJob/SpeStackerCraneJob.cs
@@ -12,6 +12,7 @@
using System.Diagnostics.Eventing.Reader;
using System.Linq;
using System.Reflection.Metadata;
using System.Runtime.CompilerServices;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Common.Log;
@@ -79,9 +80,6 @@
                        //下发RGV任务之前,先读取一下安全门状态
                        //查找RGV进行下发任务
                        Dt_Task task = GetTask(speStackerCrane.DeviceCode);
                        if (task != null)
@@ -95,6 +93,43 @@
                                _taskService.UpdateTaskStatusToNext(task);
                            }
                        }
                        else
                        {
                            int HCJGoodsplatform = 1170;    //定义的放货站台
                            //判断母车是否需要进行移动
                            AGVStation GdZiche = _agvStationService.Corridorequipment(speStackerCrane.DeviceCode);
                            if(GdZiche.Station_Area == 1)
                            {
                                switch (getStackerObject.RGVCurrentlocation)
                                {
                                    case int Whcjaddress when Whcjaddress == GdZiche.MotherCarDeviceCode:    //在第一个母车上
                                        RGVMovetask(HCJGoodsplatform, GdZiche.ChildPosiDeviceCode);
                                        break;
                                    case int Waddress when Waddress == GdZiche.MotherCardeputy:              //在第二个母车上
                                        OutNMotherCar(GdZiche.MotherCarDeviceCode);
                                        break;
                                    case int HCJaddress when HCJaddress == GdZiche.HCJStorageaddress:        //在HCJ站台上
                                        OutHCJMotherCar(GdZiche);
                                        break;
                                    default: return null;
                                }
                            }
                            else
                            {
                                switch (getStackerObject.RGVCurrentlocation)
                                {
                                    case int Whcjaddress when Whcjaddress == GdZiche.MotherCarDeviceCode:    //在第一个母车上,需要判断外侧子车是否在HCJ上
                                        OutinnerSideNMotherCar(GdZiche);
                                        break;
                                    case int Waddress when Waddress == GdZiche.MotherCardeputy:              //在第二个母车上,需要判断子车与外侧母车是否在过道上
                                        OutNMotherCar(GdZiche.MotherCarDeviceCode);
                                        break;
                                    default: return null;
                                }
                            }
                        }
                    }
                }
@@ -129,7 +164,7 @@
                (int)TaskInStatusEnum.RGV_InPickupFinish => HandlePickupFinish(task),
                (int)TaskInStatusEnum.RGV_InReleaseFinish => HandInneRouterSides(task),
                (int)TaskInStatusEnum.RGV_InZicheFinish => HandleZicheFinish(task),
                (int)TaskInStatusEnum.RGV_InZicheReleaseFinish => HandleZicheReleaseFinish(task),
                (int)TaskInStatusEnum.RGV_InZicheReleaseFinish => task,
                (int)TaskInStatusEnum.RGV_InZichemoveFinish => HandleZicheMoveFinish(task),
                _ => null
            };
@@ -151,60 +186,8 @@
        }
        #region å…¥åº“方法
        private Dt_Task? HandInneRouterSides(Dt_Task task)
        {
            // éªŒè¯è¾“å…¥
            if (task == null) throw new ArgumentNullException(nameof(task));
            if (string.IsNullOrEmpty(task.CurrentAddress)) return null;
            // èŽ·å–å½“å‰ç«™å°ä¿¡æ¯
            AGVStation currentStation = _agvStationService.GetAllStationByDeviceCode(int.Parse(task.CurrentAddress));
            if (currentStation == null) return null;
            // åªå¤„理特定类型的站台
            if (currentStation.Station_material != (int)AgvStationEnum.HCJAisleplatform)
                return task;
            // èŽ·å–å­è½¦ä½ç½®
            int zicheAddress = GetZichelocation(task, task.CurrentAddress);
            if (zicheAddress == 0) return null;
            AGVStation zicheStation = _agvStationService.GetAllStationByDeviceCode(zicheAddress);
            if (zicheStation == null) return null;
            // æ ¹æ®å­è½¦ä½ç½®å¤„理不同情况
            switch (zicheStation.Station_material)
            {
                case (int)AgvStationEnum.Aisleplatform_Outside:
                    // å­è½¦åœ¨å¤–ä¾§ - ç›´æŽ¥è¿”回任务
                    return task;
                case (int)AgvStationEnum.Aisleplatform_Medial:
                    // å­è½¦åœ¨å†…ä¾§ - æ£€æŸ¥æ¯è½¦ä½ç½®
                    return HandleMedialCase(task, currentStation, zicheStation);
                default:
                    // æœªçŸ¥çš„子车位置状态
                    return null;
            }
        }
        private Dt_Task? HandleMedialCase(Dt_Task task, AGVStation currentStation, AGVStation zicheStation)
        {
            int motherCarAddress = GetMothercarlocation(task.TaskNum, currentStation.MotherCarDeviceCode);
            if (motherCarAddress == 0) return null;
            // å¦‚果母车不在预期位置,下发移动任务
            if (motherCarAddress != int.Parse(currentStation.MotherCarDeviceCode))
            {
                RGVMovetask(zicheStation.Motherinlaw, currentStation.ChildPosiDeviceCode, task.TaskId);
                return null; // æ¯è½¦éœ€è¦ç§»åŠ¨ï¼Œæš‚ä¸è¿”å›žä»»åŠ¡
            }
            // æ¯è½¦å·²åœ¨æ­£ç¡®ä½ç½®
            return task;
        }
        #region å…¥åº“口取货完成后,进行放货(HCJ,异常出库口)
        private Dt_Task? HandlePickupFinish(Dt_Task task)
        {
            try
@@ -212,8 +195,8 @@
                //获取需要区分是否去入库与去不合格载货台任务
                IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "HCJ2000");
                CommonStackerCrane Commonstacker = (CommonStackerCrane)device;
                DeviceProDTO? deviceProDTO = GetDeviceProDTO(Commonstacker, task.NextAddress, "HCJ_GoodsStatus");
                int HCJGStatus = GetLine(Commonstacker, deviceProDTO.DeviceProAddress);
                DeviceProDTO? deviceProDTO = GetDeviceAddress.GetDeviceProDTO(Commonstacker, task.NextAddress, "HCJ_GoodsStatus");
                int HCJGStatus = GetDeviceAddress.GetLine(Commonstacker, deviceProDTO.DeviceProAddress);
                if (HCJGStatus == 0)    //为无货
                {
                    return task;
@@ -229,68 +212,306 @@
            return null;
        }
        private Dt_Task? HandleZicheFinish(Dt_Task task)
        {
            //获取放货地址
            AGVStation aGVStation = _agvStationService.GetAllStationByDeviceCode(int.Parse(task.NextAddress));
        #endregion
            //分3区域进行放货
            return aGVStation.Station_Area switch
        #region å…¥åº“口放货完成后,进行取货内容
        private Dt_Task? HandInneRouterSides(Dt_Task task)
        {
            // æ ¹æ®è®¾å¤‡åç§°ï¼ŒèŽ·å–åˆ°è®¾å¤‡ç›¸å…³æ•°æ®
            AGVStation currentStation = _agvStationService.Corridorequipment(task.Roadway);
            // èŽ·å–å­è½¦ä½ç½®
            int zicheAddress = GetDeviceAddress.GetEquipmentlocation(currentStation.ChildPosiDeviceCode);
            if (currentStation.Station_Area == 1)
            {
                1 => CheckMotherCarMove(task, aGVStation, MotherCarMoves),  //外侧放货
                2 => CheckMotherCarMove(task, aGVStation, MotherCarMovesinside),    //内侧放货
                3 => CheckMotherCarMove(task, aGVStation, HCJMotherCarMovesinside),     //交接点放货
                _ => null
            };
                // æ ¹æ®å­è½¦ä½ç½®å¤„理不同情况
                switch (zicheAddress)
                {
                    case int Whcjaddress when Whcjaddress == int.Parse(task.CurrentAddress):
                        return task;
                    case int Waddress when Waddress == currentStation.MotherCarDeviceCode:
                        return task;
                    case int Naddress when Naddress == currentStation.MotherCardeputy:
                        return HandleMedialCase(task, currentStation.MotherCarDeviceCode);
                    case int HCJaddress when HCJaddress == currentStation.HCJStorageaddress:
                        return HandleMedialCase2(task, currentStation);
                    default: return null;
                }
            }
            else
            {
                //取HCJ位的料判断
                switch (zicheAddress)
                {
                    case int Whcjaddress when Whcjaddress == int.Parse(task.CurrentAddress):
                        return task;
                    case int Waddress when Waddress == currentStation.MotherCarDeviceCode:
                        return task;
                    case int Naddress when Naddress == currentStation.MotherCardeputy:
                        return HandleMedialCase(task, currentStation.MotherCarDeviceCode);
                    default: return null;
                }
            }
        }
        private Dt_Task? CheckMotherCarMove(Dt_Task task, AGVStation station, Func<Dt_Task, AGVStation, bool> moveFunc)
        /// <summary>
        /// åˆ¤æ–­å¤–侧母车是否在入口口
        /// </summary>
        /// <param name="task"></param>
        /// <param name="currentStation"></param>
        /// <returns></returns>
        private Dt_Task? HandleMedialCase(Dt_Task task, int currentStation)
        {
            return moveFunc(task, station) ? task : null;
            AGVStation Muche = _agvStationService.GetMothervehicle(currentStation);
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(Muche.ChildPosiDeviceCode);
            if (motherCarAddress == Muche.Motherinlaw) return task;
            RGVMovetask(Muche.Motherinlaw, Muche.ChildPosiDeviceCode);
            return null;
        }
        private Dt_Task? HandleZicheReleaseFinish(Dt_Task task)
        /// <summary>
        /// åˆ¤æ–­å†…外侧母车是否在入库口
        /// </summary>
        /// <param name="task"></param>
        /// <param name="currentStation"></param>
        /// <returns></returns>
        private Dt_Task? HandleMedialCase2(Dt_Task task, AGVStation currentStation)
        {
            AGVStation aGVStation = _agvStationService.GetAllStationByDeviceCode(int.Parse(task.CurrentAddress));   //当前地址,母车上,下一个地址堆垛机取货口
            if (aGVStation.Station_Area == 1 && aGVStation.Station_Area == 2)
            {
                return task;    //返回子车移动任务
            }
            else if (aGVStation.Station_Area == 3)  //当前地址为HCJ站台,且AGV任务为取货
            {
                return task;    //去取货位,需要判断子车当前位子,(后续优化)
            }
            AGVStation Muche = _agvStationService.GetMothervehicle(currentStation.MotherCarDeviceCode);  //外侧母车
            AGVStation Muche2 = _agvStationService.GetMothervehicle(currentStation.MotherCardeputy);    //内侧母车
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(Muche.ChildPosiDeviceCode);
            int motherCarAddress2 = GetDeviceAddress.GetEquipmentlocation(Muche2.ChildPosiDeviceCode);
            if (motherCarAddress == 0 || motherCarAddress2 == 0) return null;
            // å¦‚果母车不在预期位置,下发移动任务
            if (motherCarAddress != Muche.Motherinlaw)
            {
                RGVMovetask(Muche.Motherinlaw, Muche.ChildPosiDeviceCode);
            }
            if (motherCarAddress2 != Muche2.Motherinlaw)
            {
                RGVMovetask(Muche2.Motherinlaw, Muche2.ChildPosiDeviceCode);
            }
            if (motherCarAddress == Muche.Motherinlaw && motherCarAddress2 == Muche2.Motherinlaw) return task;
            // æ¯è½¦å·²åœ¨æ­£ç¡®ä½ç½®
            return null;
        }
        #endregion
        #region å–货完成后,进行放货操作
        private Dt_Task? HandleZicheFinish(Dt_Task task)
        {
            // æ ¹æ®è®¾å¤‡åç§°ï¼ŒèŽ·å–åˆ°è®¾å¤‡ç›¸å…³æ•°æ®
            AGVStation GdaoRgvStation = _agvStationService.Corridorequipment(task.Roadway);
            int nexaddres = int.Parse(task.NextAddress);
            switch (nexaddres)
            {
                case int Whcjaddress when Whcjaddress == GdaoRgvStation.MotherCarDeviceCode:    //放货点在第一个过道点
                    return MotherCarMoves(task, GdaoRgvStation);
                case int Waddress when Waddress == GdaoRgvStation.MotherCardeputy:              //放货点在第二个过道点
                    return MotherCarMovesinside(task, GdaoRgvStation);
                case int HCJaddress when HCJaddress == GdaoRgvStation.HCJStorageaddress:        //放货点在HCJ上
                    return HCJMotherCarMovesinside(task, GdaoRgvStation);
                default: return null;
            }
        }
        //区域一判断母车是否到位,可立即放货
        private Dt_Task? MotherCarMoves(Dt_Task _Task, AGVStation aGVStation)
        {
            AGVStation Muche = _agvStationService.GetMothervehicle(aGVStation.ZicheMotherinlaw);
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(Muche.ChildPosiDeviceCode);
            if (motherCarAddress == Muche.ZicheMotherinlaw) return _Task;
            RGVMovetask(Muche.ZicheMotherinlaw, aGVStation.ChildPosiDeviceCode);
            return null;
        }
        /// <summary>
        /// åˆ¤æ–­æ”¾ç¬¬äºŒä¸ªæ¯è½¦ä½ç½®
        /// </summary>
        /// <param name="_Task"></param>
        /// <param name="aGVStation"></param>
        /// <returns></returns>
        private Dt_Task? MotherCarMovesinside(Dt_Task _Task, AGVStation aGVStation)
        {
            AGVStation Muche = _agvStationService.GetMothervehicle(aGVStation.MotherCarDeviceCode);  //外侧母车
            AGVStation Muche2 = _agvStationService.GetMothervehicle(aGVStation.MotherCardeputy);    //内侧母车
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(Muche.ChildPosiDeviceCode);
            int motherCarAddress2 = GetDeviceAddress.GetEquipmentlocation(Muche2.ChildPosiDeviceCode);
            // å¦‚果母车不在预期位置,下发移动任务
            if (motherCarAddress != Muche.Motherinlaw)
            {
                RGVMovetask(Muche.Motherinlaw, Muche.ChildPosiDeviceCode);
            }
            if (motherCarAddress2 != Muche2.ZicheMotherinlaw)
            {
                RGVMovetask(Muche2.ZicheMotherinlaw, Muche2.ChildPosiDeviceCode);
            }
            if (motherCarAddress == Muche.Motherinlaw && motherCarAddress2 == Muche2.ZicheMotherinlaw) return _Task;
            // æ¯è½¦å·²åœ¨æ­£ç¡®ä½ç½®
            return null;
        }
        private Dt_Task? HCJMotherCarMovesinside(Dt_Task _Task, AGVStation aGVStation)
        {
            AGVStation Muche = _agvStationService.GetMothervehicle(aGVStation.MotherCarDeviceCode);  //外侧母车
            AGVStation Muche2 = _agvStationService.GetMothervehicle(aGVStation.MotherCardeputy);    //内侧母车
            AGVStation Ziche3 = _agvStationService.GetZicheDeep(aGVStation.HCJStorageaddress);    //内侧子车
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(Muche.ChildPosiDeviceCode);
            int motherCarAddress2 = GetDeviceAddress.GetEquipmentlocation(Muche2.ChildPosiDeviceCode);
            int ZiCarAddress3 = GetDeviceAddress.GetEquipmentlocation(Ziche3.ChildPosiDeviceCode);
            // å¦‚果母车不在预期位置,下发移动任务
            if (motherCarAddress != Muche.Motherinlaw)
            {
                RGVMovetask(Muche.Motherinlaw, Muche.ChildPosiDeviceCode);
            }
            if (motherCarAddress2 != Muche2.Motherinlaw)
            {
                RGVMovetask(Muche2.Motherinlaw, Muche2.ChildPosiDeviceCode);
            }
            if(ZiCarAddress3== Ziche3.HCJStorageaddress)
            {
                //判断目标站台是入库到几号堆垛机
                if (_Task.TargetAddress == "3")     //入库至3号堆垛机
                {
                    //判断外侧母车位置(2区域)
                    AGVStation MucheN = _agvStationService.GetMothervehicle(Ziche3.MotherCarDeviceCode);  //外侧母车
                    int motNCarAddress = GetDeviceAddress.GetEquipmentlocation(MucheN.ChildPosiDeviceCode); //获取到母车当前位置
                    if(MucheN.ZicheMotherinlaw== motNCarAddress)
                    {
                        RGVMovetask(Ziche3.MotherCarDeviceCode, Ziche3.ChildPosiDeviceCode);
                    }
                    else
                    {
                        RGVMovetask(MucheN.ZicheMotherinlaw, MucheN.ChildPosiDeviceCode);
                    }
                }
                else if (_Task.TargetAddress == "4")    //入库至4号堆垛机
                {
                    //判断外侧母车位置(2区域)
                    AGVStation MucheN = _agvStationService.GetMothervehicle(Ziche3.MotherCarDeviceCode);  //外侧母车
                    int motNCarAddress = GetDeviceAddress.GetEquipmentlocation(MucheN.ChildPosiDeviceCode); //获取到母车当前位置
                    if (MucheN.Motherinlaw != motNCarAddress)
                    {
                        RGVMovetask(MucheN.Motherinlaw, MucheN.ChildPosiDeviceCode);
                    }
                    AGVStation MucheN2 = _agvStationService.GetMothervehicle(Ziche3.MotherCardeputy);  //外侧母车
                    int motNCarAddress2 = GetDeviceAddress.GetEquipmentlocation(MucheN2.ChildPosiDeviceCode); //获取到母车当前位置
                    if (MucheN2.ZicheMotherinlaw != motNCarAddress2)
                    {
                        RGVMovetask(MucheN2.ZicheMotherinlaw, MucheN2.ChildPosiDeviceCode);
                    }
                    if(MucheN.Motherinlaw == motNCarAddress && MucheN2.ZicheMotherinlaw == motNCarAddress2)
                    {
                        RGVMovetask(Ziche3.MotherCardeputy, Ziche3.ChildPosiDeviceCode);
                    }
                }
            }
            if (motherCarAddress == Muche.Motherinlaw && motherCarAddress2 == Muche2.Motherinlaw && ZiCarAddress3 != Ziche3.HCJStorageaddress) return _Task;
            // æ¯è½¦å·²åœ¨æ­£ç¡®ä½ç½®
            return null;
        }
        #endregion
        #region æ¯è½¦ç§»åŠ¨è‡³å…¥åº“å£
        private Dt_Task? HandleZicheMoveFinish(Dt_Task task)
        {
            AGVStation aGVStation = _agvStationService.GetAllStationByDeviceCode(int.Parse(task.CurrentAddress));
            int zicheAddress = GetZichelocation(task, task.CurrentAddress);
            int curradder = int.Parse(task.CurrentAddress);
            AGVStation GdZiche = _agvStationService.GetMotheaisle(curradder);
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(GdZiche.ChildPosiDeviceCode);
            if (motherCarAddress != curradder) return task;
            RGVMovetask(GdZiche.Motherinlaw, GdZiche.ChildPosiDeviceCode);
            return null;
        }
        #endregion
            //如果子车在母车上,则需要移库母车(待优化)
            return zicheAddress != int.Parse(aGVStation.ZicheMotherinlaw) ? task : null;
        #endregion
        #region å‡ºåº“方法
        #region å¤–侧小车回归到起始点位
        /// <summary>
        /// åˆ¤æ–­æ”¾ç¬¬äºŒä¸ªæ¯è½¦ä½ç½®
        /// </summary>
        /// <param name="_Task"></param>
        /// <param name="aGVStation"></param>
        /// <returns></returns>
        private void OutNMotherCar(int MotherCarDeviceCode)
        {
            AGVStation Muche = _agvStationService.GetMothervehicle(MotherCarDeviceCode);  //外侧母车
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(Muche.ChildPosiDeviceCode);
            if (motherCarAddress != Muche.Motherinlaw)
            {
                RGVMovetask(Muche.Motherinlaw, Muche.ChildPosiDeviceCode);
            }
        }
        private void OutHCJMotherCar(AGVStation aGVStation)
        {
            AGVStation Muche = _agvStationService.GetMothervehicle(aGVStation.MotherCarDeviceCode);  //外侧母车
            AGVStation Muche2 = _agvStationService.GetMothervehicle(aGVStation.MotherCardeputy);    //内侧母车
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(Muche.ChildPosiDeviceCode);
            int motherCarAddress2 = GetDeviceAddress.GetEquipmentlocation(Muche2.ChildPosiDeviceCode);
            // å¦‚果母车不在预期位置,下发移动任务
            if (motherCarAddress != Muche.Motherinlaw)
            {
                RGVMovetask(Muche.Motherinlaw, Muche.ChildPosiDeviceCode);
            }
            if (motherCarAddress2 != Muche2.Motherinlaw)
            {
                RGVMovetask(Muche2.Motherinlaw, Muche2.ChildPosiDeviceCode);
            }
        }
        #endregion
        //区域一判断母车是否到位,可立即放货
        private bool MotherCarMoves(Dt_Task _Task, AGVStation aGVStation)
        #region å¤–侧小车回归到起始点位
        /// <summary>
        /// åœ¨ç¬¬ä¸€ä¸ªä½ç½®ï¼Œåˆ™åˆ¤æ–­å¤–侧子车是否在HCJ站台下面
        /// </summary>
        /// <param name="_Task"></param>
        /// <param name="aGVStation"></param>
        /// <returns></returns>
        private void OutinnerSideNMotherCar(AGVStation aGVStation)
        {
            int mcadder = GetMothercarlocation(_Task.TaskNum, aGVStation.Motherinlaw);      //获取到母车外侧位置
            if (mcadder != 0)
            AGVStation Ziche3 = _agvStationService.GetZicheDeep(aGVStation.HCJStorageaddress);    //内侧子车
            int ZiCarAddress3 = GetDeviceAddress.GetEquipmentlocation(Ziche3.ChildPosiDeviceCode);
            if (ZiCarAddress3 == Ziche3.HCJStorageaddress)
            {
                if (mcadder == int.Parse(_Task.CurrentAddress))
                {
                    return true;
                }
                RGVMovetask(_Task.CurrentAddress, aGVStation.ChildPosiDeviceCode, _Task.TaskId);
            }
            return false;
            else
            {
                //RGVMovetask(Muche.Motherinlaw, Muche.ChildPosiDeviceCode);
            }
        }
        private void OutinnerSideMotherCar(AGVStation aGVStation)
        {
            AGVStation Muche = _agvStationService.GetMothervehicle(aGVStation.MotherCarDeviceCode);  //外侧母车
            AGVStation Muche2 = _agvStationService.GetMothervehicle(aGVStation.MotherCardeputy);    //内侧母车
            int motherCarAddress = GetDeviceAddress.GetEquipmentlocation(Muche.ChildPosiDeviceCode);
            int motherCarAddress2 = GetDeviceAddress.GetEquipmentlocation(Muche2.ChildPosiDeviceCode);
            // å¦‚果母车不在预期位置,下发移动任务
            if (motherCarAddress != Muche.Motherinlaw)
            {
                RGVMovetask(Muche.Motherinlaw, Muche.ChildPosiDeviceCode);
            }
            if (motherCarAddress2 != Muche2.Motherinlaw)
            {
                RGVMovetask(Muche2.Motherinlaw, Muche2.ChildPosiDeviceCode);
            }
        }
        #endregion
        #endregion
        /// <summary>
        /// å­æ¯è½¦ç§»åŠ¨ä»»åŠ¡
@@ -298,162 +519,12 @@
        /// <param name="RGVAdders">目标地址</param>
        /// <param name="ChildPosiDeviceCode">设备编号</param>
        /// <returns></returns>
        private bool RGVMovetask(string RGVAdders, string ChildPosiDeviceCode, int taskid)
        private bool RGVMovetask(int RGVAdders, string ChildPosiDeviceCode)
        {
            RgvCraneTaskCommand standardCommands = ConvertMotherCarTaskCommand(RGVAdders);
            bool sendFlag = SendCommand2(standardCommands, ChildPosiDeviceCode);
            return sendFlag;
        }
        /// <summary>
        /// åˆ¤æ–­å†…侧母车位置
        /// </summary>
        /// <param name="_Task"></param>
        /// <param name="aGVStation"></param>
        /// <returns></returns>
        private bool MotherCarMovesinside(Dt_Task _Task, AGVStation aGVStation)
        {
            //获取外侧母车位置
            int mcadder = GetMothercarlocation(_Task.TaskNum, aGVStation.MotherCarDeviceCode);
            //获取内侧母车位置
            int ncadder = GetMothercarlocation(_Task.TaskNum, _Task.NextAddress);
            if (mcadder != int.Parse(aGVStation.MotherCarDeviceCode) && ncadder == aGVStation.Station_code)
            {
                return true;
            }
            else
            {
                if (mcadder == int.Parse(aGVStation.MotherCarDeviceCode))
                {
                    AGVStation aGVSta = _agvStationService.GetMothercarCode(aGVStation.MotherCarDeviceCode);
                    RGVMovetask(aGVSta.ChildPosiDeviceCode, aGVSta.Station_code.ToString(), _Task.TaskId);
                }
                if (ncadder != aGVStation.Station_code)
                {
                    RGVMovetask(aGVStation.ChildPosiDeviceCode, aGVStation.Station_code.ToString(), _Task.TaskId);
                }
            }
            return false;
        }
        private bool HCJMotherCarMovesinside(Dt_Task _Task, AGVStation aGVStation)
        {
            //获取外侧母车位置
            int mcadder = GetMothercarlocation(_Task.TaskNum, aGVStation.MotherCarDeviceCode);
            //获取内侧母车位置
            int ncadder = GetMothercarlocation(_Task.TaskNum, aGVStation.MotherCardeputy);
            if (mcadder != int.Parse(aGVStation.MotherCarDeviceCode) && ncadder != int.Parse(aGVStation.MotherCardeputy))
            {
                return true;
            }
            else
            {
                if (mcadder == int.Parse(aGVStation.MotherCarDeviceCode))
                {
                    AGVStation aGVSta = _agvStationService.GetMothercarCode(aGVStation.MotherCarDeviceCode);
                    RGVMovetask(aGVSta.ChildPosiDeviceCode, aGVSta.Station_code.ToString(), _Task.TaskId);
                }
                if (ncadder == int.Parse(aGVStation.MotherCardeputy))
                {
                    AGVStation aGVSta = _agvStationService.GetMothercarCode(aGVStation.MotherCardeputy);
                    RGVMovetask(aGVSta.ChildPosiDeviceCode, aGVSta.Station_code.ToString(), _Task.TaskId);
                }
            }
            return false;
        }
        //判断是否
        public bool GetMotherCarCurrentAdder(Dt_Task task)
        {
            try
            {
                IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "HCJ2000");
                CommonStackerCrane Commonstacker = (CommonStackerCrane)device;
                DeviceProDTO? deviceProDTO = GetDeviceProDTO(Commonstacker, task.CurrentAddress, "HCJ_GoodsStatus");
                int HCJGStatus = GetLine(Commonstacker, deviceProDTO.DeviceProAddress);
                if (HCJGStatus == 0)    //为无货
                {
                    return true;
                }
            }
            catch (Exception ex)
            {
                //记录异常情况
                _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"判断HCJ站台是否有货信息出错,出错信息:{ex.Message}");
                throw;
            }
            return false;
        }
        /// <summary>
        /// ä¼ å…¥è¿‡é“地址,获取母车位置
        /// </summary>
        /// <param name="task"></param>
        /// <param name="MotherCarDeviceCode">过道地址</param>
        /// <returns></returns>
        public int GetMothercarlocation(int TaskNum, string MotherCarDeviceCode)
        {
            try
            {
                //利用入库站台地址获取母车plc
                AGVStation aGVStation = _agvStationService.GetMothercarCode(MotherCarDeviceCode);
                IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == aGVStation.ChildPosiDeviceCode);
                CommonStackerCrane Commonstacker = (CommonStackerCrane)device;
                DeviceProDTO? deviceProDTO = GetDeviceProDTO(Commonstacker, aGVStation.ChildPosiDeviceCode, "RGVCurrentlocation");
                int HCJGStatus = GetLine(Commonstacker, deviceProDTO.DeviceProAddress);
                return HCJGStatus;
            }
            catch (Exception ex)
            {
                //记录异常情况
                _taskService.UpdateTaskExceptionMessage(TaskNum, $"判断母车位置信息出错,出错信息:{ex.Message}");
                throw;
            }
        }
        /// <summary>
        /// ä¼ å…¥è¿‡é“地址,获取子车车位置
        /// </summary>
        /// <param name="task"></param>
        /// <param name="MotherCarDeviceCode">入库站台地址</param>
        /// <returns></returns>
        public int GetZichelocation(Dt_Task task, string ChildPosiDeviceCode)
        {
            try
            {
                IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == ChildPosiDeviceCode);
                CommonStackerCrane Commonstacker = (CommonStackerCrane)device;
                DeviceProDTO? deviceProDTO = GetDeviceProDTO(Commonstacker, ChildPosiDeviceCode, "RGVCurrentlocation");
                int HCJGStatus = GetLine(Commonstacker, deviceProDTO.DeviceProAddress);
                return HCJGStatus;
            }
            catch (Exception ex)
            {
                //记录异常情况
                _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"判断子车位置信息出错,出错信息:{ex.Message}");
                throw;
            }
        }
        /// <summary>
        /// ä»»åŠ¡å®žä½“è½¬æ¢æˆå‘½ä»¤Model
        /// </summary>
@@ -466,9 +537,9 @@
            short locaticurr = task.RGVTaskType switch
            {
                _ when task.RGVTaskType == (short)RGVTaskTypeEnum.PickingUp ||
                       task.RGVTaskType == (short)RGVTaskTypeEnum.TravelingOnly
                       (task.RGVTaskType == (short)RGVTaskTypeEnum.TravelingOnly && task.TaskType != (int)TaskInStatusEnum.RGV_InZichemoveFinish)
                    => short.Parse(task.CurrentAddress),
                _ when task.RGVTaskType == (short)RGVTaskTypeEnum.Placing
                _ when task.RGVTaskType == (short)RGVTaskTypeEnum.Placing || (task.RGVTaskType == (short)RGVTaskTypeEnum.TravelingOnly && task.TaskType== (int)TaskInStatusEnum.RGV_InZichemoveFinish)
                    => short.Parse(task.NextAddress),
                _ => (short)0
            };
@@ -486,49 +557,15 @@
        /// <param name="task">任务实体</param>
        /// <returns></returns>
        /// <exception cref="Exception"></exception>
        public RgvCraneTaskCommand? ConvertMotherCarTaskCommand(string RGVAddress)
        public RgvCraneTaskCommand? ConvertMotherCarTaskCommand(int RGVAddress)
        {
            RgvCraneTaskCommand stackerCraneTaskCommand = new RgvCraneTaskCommand();
            stackerCraneTaskCommand.RGV_RGVTasklocation = short.Parse(RGVAddress);
            stackerCraneTaskCommand.RGV_RGVTasklocation = (short)RGVAddress;
            stackerCraneTaskCommand.RGV_RGVtasktype = 3;
            stackerCraneTaskCommand.RGV_Rgvtaskid = 999;          //rgv任务号
            stackerCraneTaskCommand.RGV_Lanjiantaskid = 999;      //兰剑任务id
            return stackerCraneTaskCommand;
        }
        public void wcsWriteLog(string SCLLinStack, string Logtype, string Magessadd)
        {
            WriteLog.Write_Log("RGV", SCLLinStack + "号RGV", Logtype, new { ä¿¡æ¯ = Magessadd });
        }
        //===========================================================HCJ协议读写查=============================================================================
        /// <summary>
        /// æŸ¥è¯¢å…·ä½“地址
        /// </summary>
        /// <param name="Commonstacker"></param>
        /// <param name="SCAddress"></param>
        /// <param name="Interactivet"></param>
        /// <returns></returns>
        public DeviceProDTO? GetDeviceProDTO(CommonStackerCrane Commonstacker, string SCAddress, string Interactivet)
        {
            return Commonstacker.DeviceProDTOs.FirstOrDefault(x => x.DeviceChildCode == SCAddress && x.DeviceProParamName == Interactivet && x.DeviceProParamType == "ReadDeviceCommand");
        }
        /// <summary>
        /// æ ¹åœ°å€è¯»å–输送线信息
        /// </summary>
        /// <param name="conveyorLine"></param>
        /// <param name="DeviceProDataBlock"></param>
        /// <returns></returns>
        public int GetLine(CommonStackerCrane Commonstacker, string DeviceProDataBlock)
        {
            return Commonstacker.Communicator.Read<short>(DeviceProDataBlock);
        }
        //===========================================================HCJ协议读写查===============================================================================
        public bool SendCommand2(RgvCraneTaskCommand command, string DeviceCode)
        {
            try
@@ -536,8 +573,8 @@
                IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == DeviceCode);
                CommonStackerCrane Commonstacker = (CommonStackerCrane)device;
                DeviceProDTO? deviceProDTO = GetDeviceProDTO(Commonstacker, DeviceCode, "RGV_Rgvtaskstutas");
                int MCGStatus = GetLine(Commonstacker, deviceProDTO.DeviceProAddress);
                DeviceProDTO? deviceProDTO = GetDeviceAddress.GetDeviceProDTO(Commonstacker, DeviceCode, "RGV_Rgvtaskstutas");
                int MCGStatus = GetDeviceAddress.GetLine(Commonstacker, deviceProDTO.DeviceProAddress);
                if (Commonstacker.IsConnected)
                {
                    if (MCGStatus == (int)RgvJobCraneStatus.Ready)
´úÂë¹ÜÀí/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/obj/Debug/net6.0/WIDESEAWCS_Tasks.csproj.AssemblyReference.cache
Binary files differ
ÏîÄ¿×ÊÁÏ/ͨÐÅЭÒé/À¼½£WCS--²©ÊÀÍØÁÖWCS½Ó¿Ú¶Ô½ÓÎĵµ.20250610.doc
Binary files differ