From c22c382bdf496da35adfcb37cd7f3b20edc6b918 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Mon, 27 May 2024 15:38:56 +0800 Subject: [PATCH] refactor: nladmin-lms init --- .../MdBaseClassstandardController.java | 87 ++ .../service/IMdBaseClassstandardService.java | 86 ++ .../service/dao/MdBaseClassstandard.java | 76 ++ .../dao/mapper/MdBaseClassstandardMapper.java | 15 + .../dao/mapper/MdBaseClassstandardMapper.xml | 19 + .../service/dto/MdBaseClassstandardDto.java | 73 ++ .../service/dto/MdBaseClassstandardQuery.java | 12 + .../service/dto/MdBaseClassstandardTrees.java | 26 + .../impl/MdBaseClassstandardServiceImpl.java | 275 +++++++ .../controller/CustomerbaseController.java | 59 ++ .../service/ICustomerbaseService.java | 43 + .../customer/service/dao/Customerbase.java | 139 ++++ .../dao/mapper/CustomerbaseMapper.java | 12 + .../service/dao/mapper/CustomerbaseMapper.xml | 5 + .../customer/service/dto/CustomerbaseDto.java | 130 +++ .../service/dto/CustomerbaseQuery.java | 12 + .../service/impl/CustomerbaseServiceImpl.java | 95 +++ .../controller/MeasureunitController.java | 55 ++ .../unit/service/IMeasureunitService.java | 43 + .../master/unit/service/dao/Measureunit.java | 65 ++ .../service/dao/mapper/MeasureunitMapper.java | 12 + .../service/dao/mapper/MeasureunitMapper.xml | 5 + .../unit/service/dto/MeasureunitDto.java | 58 ++ .../unit/service/dto/MeasureunitQuery.java | 12 + .../service/impl/MeasureunitServiceImpl.java | 85 ++ .../StoragevehicleinfoController.java | 64 ++ .../service/IStoragevehicleinfoService.java | 50 ++ .../service/dao/Storagevehicleinfo.java | 144 ++++ .../dao/mapper/StoragevehicleinfoMapper.java | 21 + .../dao/mapper/StoragevehicleinfoMapper.xml | 34 + .../service/dto/StoragevehicleinfoDto.java | 82 ++ .../service/dto/StoragevehicleinfoQuery.java | 41 + .../impl/StoragevehicleinfoServiceImpl.java | 110 +++ .../MdMeMaterialbaseController.java | 108 +++ .../material/dao/MdMeMaterialbase.java | 224 ++++++ .../dao/mapper/MdMeMaterialbaseMapper.java | 15 + .../dao/xml/MdMeMaterialbaseMapper.xml | 6 + .../material/dto/MdMeMaterialbaseDto.java | 150 ++++ .../material/dto/MdMeMaterialbaseParam.java | 145 ++++ .../service/ImdMeMaterialbaseService.java | 65 ++ .../impl/MdMeMaterialbaseServiceImpl.java | 141 ++++ .../controller/MdBaseWorkshopController.java | 68 ++ .../service/IMdBaseWorkshopService.java | 50 ++ .../workshop/service/dao/MdBaseWorkshop.java | 56 ++ .../dao/mapper/MdBaseWorkshopMapper.java | 12 + .../dao/mapper/MdBaseWorkshopMapper.xml | 5 + .../service/dto/MdBaseWorkshopDto.java | 46 ++ .../service/dto/MdBaseWorkshopQuery.java | 12 + .../impl/MdBaseWorkshopServiceImpl.java | 82 ++ .../acs/controller/AcsToWmsController.java | 36 + .../wms/ext/acs/service/AcsToWmsService.java | 33 + .../wms/ext/acs/service/WmsToAcsService.java | 23 + .../wms/ext/acs/service/dto/ResultForAcs.java | 46 ++ .../ext/acs/service/dto/to/BaseRequest.java | 64 ++ .../ext/acs/service/dto/to/BaseResponse.java | 105 +++ .../service/dto/to/acs/IssueAcsRequest.java | 30 + .../acs/service/dto/to/wms/AcsResponse.java | 35 + .../service/dto/to/wms/ApplyTaskRequest.java | 47 ++ .../dto/to/wms/FeedBackTaskStatusRequest.java | 54 ++ .../acs/service/impl/AcsToWmsServiceImpl.java | 165 ++++ .../acs/service/impl/WmsToAcsServiceImpl.java | 36 + .../mes/controller/MesToWmsController.java | 31 + .../wms/ext/mes/service/MesToWmsService.java | 11 + .../wms/ext/mes/service/WmsToMesService.java | 9 + .../wms/ext/mes/service/dto/ResultForMes.java | 28 + .../mes/service/impl/MesToWmsServiceImpl.java | 16 + .../mes/service/impl/WmsToMesServiceImpl.java | 16 + .../SysInteractRecordController.java | 61 ++ .../service/ISysInteractRecordService.java | 75 ++ .../record/service/dao/SysInteractRecord.java | 52 ++ .../dao/mapper/SysInteractRecordMapper.java | 24 + .../dao/mapper/SysInteractRecordMapper.xml | 12 + .../service/dto/SysInteractRecordDto.java | 40 + .../service/dto/SysInteractRecordQuery.java | 12 + .../impl/SysInteractRecordServiceImpl.java | 147 ++++ .../MdPbInterfacebackController.java | 111 +++ .../org/nl/wms/md/dao/MdPbInterfaceback.java | 82 ++ .../dao/mapper/MdPbInterfacebackMapper.java | 15 + .../md/dao/xml/MdPbInterfacebackMapper.xml | 6 + .../nl/wms/md/dto/MdPbInterfacebackDto.java | 57 ++ .../nl/wms/md/dto/MdPbInterfacebackParam.java | 51 ++ .../md/service/ImdPbInterfacebackService.java | 65 ++ .../impl/MdPbInterfacebackServiceImpl.java | 144 ++++ .../PdmBiRawfoilworkorderController.java | 123 +++ ...PdmBiSlittingproductionplanController.java | 149 ++++ .../wms/pdm/bi/dao/PdmBiRawfoilworkorder.java | 212 +++++ .../bi/dao/PdmBiSlittingproductionplan.java | 318 ++++++++ .../mapper/PdmBiRawfoilworkorderMapper.java | 15 + .../PdmBiSlittingproductionplanMapper.java | 15 + .../dao/xml/PdmBiRawfoilworkorderMapper.xml | 6 + .../xml/PdmBiSlittingproductionplanMapper.xml | 6 + .../pdm/bi/dto/PdmBiRawfoilworkorderDto.java | 142 ++++ .../bi/dto/PdmBiRawfoilworkorderParam.java | 137 ++++ .../dto/PdmBiSlittingproductionplanDto.java | 210 +++++ .../dto/PdmBiSlittingproductionplanParam.java | 205 +++++ .../IpdmBiRawfoilworkorderService.java | 78 ++ .../IpdmBiSlittingproductionplanService.java | 101 +++ .../PdmBiRawfoilworkorderServiceImpl.java | 242 ++++++ ...dmBiSlittingproductionplanServiceImpl.java | 225 ++++++ .../java/org/nl/wms/pdm/enums/SUBEnum.java | 42 + .../StIvtCoolpointivtController.java | 123 +++ .../StIvtCoolregionioController.java | 108 +++ .../StIvtCutpointivtController.java | 108 +++ .../StIvtDeliverypointivtController.java | 108 +++ .../StIvtEmptytubeivtController.java | 108 +++ .../StIvtEmptyvehiclerecordController.java | 108 +++ .../StIvtHotpointivtController.java | 118 +++ .../StIvtHotregioniomstController.java | 108 +++ .../controller/StIvtSbpointivtController.java | 108 +++ .../controller/StIvtStpointivtController.java | 108 +++ .../nl/wms/pdm/ivt/dao/StIvtCoolpointivt.java | 211 +++++ .../nl/wms/pdm/ivt/dao/StIvtCoolregionio.java | 193 +++++ .../nl/wms/pdm/ivt/dao/StIvtCutpointivt.java | 205 +++++ .../pdm/ivt/dao/StIvtDeliverypointivt.java | 145 ++++ .../nl/wms/pdm/ivt/dao/StIvtEmptytubeivt.java | 139 ++++ .../pdm/ivt/dao/StIvtEmptyvehiclerecord.java | 151 ++++ .../nl/wms/pdm/ivt/dao/StIvtHotpointivt.java | 199 +++++ .../wms/pdm/ivt/dao/StIvtHotregioniomst.java | 198 +++++ .../nl/wms/pdm/ivt/dao/StIvtSbpointivt.java | 138 ++++ .../nl/wms/pdm/ivt/dao/StIvtStpointivt.java | 162 ++++ .../dao/mapper/StIvtCoolpointivtMapper.java | 15 + .../dao/mapper/StIvtCoolregionioMapper.java | 15 + .../dao/mapper/StIvtCutpointivtMapper.java | 15 + .../mapper/StIvtDeliverypointivtMapper.java | 15 + .../dao/mapper/StIvtEmptytubeivtMapper.java | 15 + .../mapper/StIvtEmptyvehiclerecordMapper.java | 15 + .../dao/mapper/StIvtHotpointivtMapper.java | 15 + .../dao/mapper/StIvtHotregioniomstMapper.java | 15 + .../ivt/dao/mapper/StIvtSbpointivtMapper.java | 15 + .../ivt/dao/mapper/StIvtStpointivtMapper.java | 15 + .../ivt/dao/xml/StIvtCoolpointivtMapper.xml | 6 + .../ivt/dao/xml/StIvtCoolregionioMapper.xml | 6 + .../ivt/dao/xml/StIvtCutpointivtMapper.xml | 6 + .../dao/xml/StIvtDeliverypointivtMapper.xml | 6 + .../ivt/dao/xml/StIvtEmptytubeivtMapper.xml | 6 + .../dao/xml/StIvtEmptyvehiclerecordMapper.xml | 6 + .../ivt/dao/xml/StIvtHotpointivtMapper.xml | 6 + .../ivt/dao/xml/StIvtHotregioniomstMapper.xml | 6 + .../pdm/ivt/dao/xml/StIvtSbpointivtMapper.xml | 6 + .../pdm/ivt/dao/xml/StIvtStpointivtMapper.xml | 6 + .../wms/pdm/ivt/dto/StIvtCoolpointivtDto.java | 142 ++++ .../pdm/ivt/dto/StIvtCoolpointivtParam.java | 137 ++++ .../wms/pdm/ivt/dto/StIvtCoolregionioDto.java | 130 +++ .../pdm/ivt/dto/StIvtCoolregionioParam.java | 125 +++ .../wms/pdm/ivt/dto/StIvtCutpointivtDto.java | 138 ++++ .../pdm/ivt/dto/StIvtCutpointivtParam.java | 133 ++++ .../pdm/ivt/dto/StIvtDeliverypointivtDto.java | 98 +++ .../ivt/dto/StIvtDeliverypointivtParam.java | 93 +++ .../wms/pdm/ivt/dto/StIvtEmptytubeivtDto.java | 94 +++ .../pdm/ivt/dto/StIvtEmptytubeivtParam.java | 89 +++ .../ivt/dto/StIvtEmptyvehiclerecordDto.java | 102 +++ .../ivt/dto/StIvtEmptyvehiclerecordParam.java | 97 +++ .../wms/pdm/ivt/dto/StIvtHotpointivtDto.java | 134 ++++ .../pdm/ivt/dto/StIvtHotpointivtParam.java | 129 +++ .../pdm/ivt/dto/StIvtHotregioniomstDto.java | 134 ++++ .../pdm/ivt/dto/StIvtHotregioniomstParam.java | 129 +++ .../wms/pdm/ivt/dto/StIvtSbpointivtDto.java | 93 +++ .../wms/pdm/ivt/dto/StIvtSbpointivtParam.java | 87 ++ .../wms/pdm/ivt/dto/StIvtStpointivtDto.java | 109 +++ .../wms/pdm/ivt/dto/StIvtStpointivtParam.java | 103 +++ .../service/IstIvtCoolpointivtService.java | 65 ++ .../service/IstIvtCoolregionioService.java | 73 ++ .../ivt/service/IstIvtCutpointivtService.java | 65 ++ .../IstIvtDeliverypointivtService.java | 65 ++ .../service/IstIvtEmptytubeivtService.java | 65 ++ .../IstIvtEmptyvehiclerecordService.java | 65 ++ .../ivt/service/IstIvtHotpointivtService.java | 65 ++ .../service/IstIvtHotregioniomstService.java | 71 ++ .../ivt/service/IstIvtSbpointivtService.java | 65 ++ .../ivt/service/IstIvtStpointivtService.java | 65 ++ .../impl/StIvtCoolpointivtServiceImpl.java | 170 ++++ .../impl/StIvtCoolregionioServiceImpl.java | 155 ++++ .../impl/StIvtCutpointivtServiceImpl.java | 143 ++++ .../StIvtDeliverypointivtServiceImpl.java | 143 ++++ .../impl/StIvtEmptytubeivtServiceImpl.java | 143 ++++ .../StIvtEmptyvehiclerecordServiceImpl.java | 143 ++++ .../impl/StIvtHotpointivtServiceImpl.java | 143 ++++ .../impl/StIvtHotregioniomstServiceImpl.java | 149 ++++ .../impl/StIvtSbpointivtServiceImpl.java | 152 ++++ .../impl/StIvtStpointivtServiceImpl.java | 143 ++++ .../PdmBiSubpackagerelationController.java | 43 + .../IPdmBiSubpackagerelationService.java | 33 + .../service/dao/PdmBiSubpackagerelation.java | 258 ++++++ .../mapper/PdmBiSubpackagerelationMapper.java | 38 + .../xml/PdmBiSubpackagerelationMapper.xml | 91 +++ .../service/dto/SubPackageQuery.java | 58 ++ .../PdmBiSubpackagerelationServiceImpl.java | 50 ++ ...SchBaseVehiclematerialgroupController.java | 71 ++ .../ISchBaseVehiclematerialgroupService.java | 100 +++ .../dao/SchBaseVehiclematerialgroup.java | 166 ++++ .../SchBaseVehiclematerialgroupMapper.java | 36 + .../SchBaseVehiclematerialgroupMapper.xml | 68 ++ .../dto/SchBaseVehiclematerialgroupDto.java | 131 +++ .../dto/SchBaseVehiclematerialgroupQuery.java | 19 + ...chBaseVehiclematerialgroupServiceImpl.java | 155 ++++ ...BaseAcsandlmsinteractivelogController.java | 61 ++ ...SchBaseAcsandlmsinteractivelogService.java | 43 + .../dao/SchBaseAcsandlmsinteractivelog.java | 73 ++ .../SchBaseAcsandlmsinteractivelogMapper.java | 12 + .../SchBaseAcsandlmsinteractivelogMapper.xml | 5 + .../SchBaseAcsandlmsinteractivelogDto.java | 61 ++ .../SchBaseAcsandlmsinteractivelogQuery.java | 12 + ...aseAcsandlmsinteractivelogServiceImpl.java | 81 ++ .../controller/SchBasePointController.java | 78 ++ .../point/service/ISchBasePointService.java | 71 ++ .../sch/point/service/dao/SchBasePoint.java | 158 ++++ .../dao/mapper/SchBasePointMapper.java | 20 + .../service/dao/mapper/SchBasePointMapper.xml | 15 + .../point/service/dto/SchBasePointDto.java | 115 +++ .../point/service/dto/SchBasePointQuery.java | 12 + .../service/impl/SchBasePointServiceImpl.java | 214 +++++ .../controller/SchBaseRegionController.java | 82 ++ .../region/service/ISchBaseRegionService.java | 66 ++ .../sch/region/service/dao/SchBaseRegion.java | 67 ++ .../dao/mapper/SchBaseRegionMapper.java | 12 + .../dao/mapper/SchBaseRegionMapper.xml | 5 + .../region/service/dto/SchBaseRegionDto.java | 55 ++ .../service/dto/SchBaseRegionQuery.java | 12 + .../impl/SchBaseRegionServiceImpl.java | 132 ++++ .../controller/SchBaseTaskController.java | 80 ++ .../SchBaseTaskconfigController.java | 58 ++ .../sch/task/service/ISchBaseTaskService.java | 116 +++ .../service/ISchBaseTaskconfigService.java | 44 ++ .../wms/sch/task/service/dao/SchBaseTask.java | 150 ++++ .../task/service/dao/SchBaseTaskconfig.java | 158 ++++ .../service/dao/mapper/SchBaseTaskMapper.java | 17 + .../service/dao/mapper/SchBaseTaskMapper.xml | 48 ++ .../dao/mapper/SchBaseTaskconfigMapper.java | 21 + .../dao/mapper/SchBaseTaskconfigMapper.xml | 21 + .../sch/task/service/dto/SchBaseTaskDto.java | 111 +++ .../task/service/dto/SchBaseTaskQuery.java | 25 + .../service/dto/SchBaseTaskconfigDto.java | 134 ++++ .../service/dto/SchBaseTaskconfigQuery.java | 18 + .../service/impl/SchBaseTaskServiceImpl.java | 258 ++++++ .../impl/SchBaseTaskconfigServiceImpl.java | 102 +++ .../nl/wms/sch/task_manage/AbstractTask.java | 318 ++++++++ .../nl/wms/sch/task_manage/AcsTaskDto.java | 142 ++++ .../wms/sch/task_manage/AutoCreateTask.java | 67 ++ .../sch/task_manage/GeneralDefinition.java | 53 ++ .../enums/GroupBindMaterialStatusEnum.java | 41 + .../task_manage/enums/GroupStatusEnum.java | 29 + .../sch/task_manage/enums/NoticeTypeEnum.java | 24 + .../task_manage/enums/PackageInfoIvtEnum.java | 65 ++ .../task_manage/enums/PointStatusEnum.java | 24 + .../task_manage/enums/TaskDirectionEnum.java | 47 ++ .../enums/TaskFinishedTypeEnum.java | 25 + .../enums/WorkOrderStatusEnum.java | 28 + .../nl/wms/sch/task_manage/task/AcsUtil.java | 115 +++ .../wms/sch/task_manage/task/TaskFactory.java | 43 + .../nl/wms/sch/task_manage/task/TaskType.java | 18 + .../task_manage/task/core/TaskApplyType.java | 38 + .../task/core/TaskOperateType.java | 33 + .../sch/task_manage/task/core/TaskStatus.java | 71 ++ .../second_floor_area/CallEmpReelTask.java | 413 ++++++++++ .../task/second_floor_area/CoolCutTask.java | 387 +++++++++ .../task/second_floor_area/InCoolIvtTask.java | 296 +++++++ .../task/second_floor_area/InHotTask.java | 386 +++++++++ .../task/second_floor_area/OutHotTask.java | 277 +++++++ .../StIvtBsrealstorattrController.java | 76 ++ .../controller/StIvtSectattrController.java | 68 ++ .../controller/StIvtStructattrController.java | 19 + .../controller/StIvtUserstorController.java | 40 + .../database/dao/StIvtBsrealstorattr.java | 219 ++++++ .../database/dao/StIvtSectattr.java | 185 +++++ .../database/dao/StIvtStructattr.java | 310 ++++++++ .../database/dao/StIvtUserstor.java | 39 + .../database/dto/SectQuery.java | 36 + .../database/dto/StorQuery.java | 26 + .../database/dto/UserStorQuery.java | 26 + .../mapper/StIvtBsrealstorattrMapper.java | 37 + .../database/mapper/StIvtSectattrMapper.java | 29 + .../mapper/StIvtStructattrMapper.java | 25 + .../database/mapper/StIvtUserstorMapper.java | 24 + .../mapper/xml/StIvtBsrealstorattrMapper.xml | 60 ++ .../mapper/xml/StIvtSectattrMapper.xml | 28 + .../mapper/xml/StIvtStructattrMapper.xml | 24 + .../mapper/xml/StIvtUserstorMapper.xml | 21 + .../service/IStIvtBsrealstorattrService.java | 68 ++ .../service/IStIvtSectattrService.java | 49 ++ .../service/IStIvtStructattrService.java | 16 + .../service/IStIvtUserstorService.java | 25 + .../impl/StIvtBsrealstorattrServiceImpl.java | 140 ++++ .../impl/StIvtSectattrServiceImpl.java | 137 ++++ .../impl/StIvtStructattrServiceImpl.java | 20 + .../impl/StIvtUserstorServiceImpl.java | 38 + .../iostorInv/StIvtIostorinvController.java | 136 ++++ .../StIvtIostorinvOutController.java | 130 +++ .../wms/storage_manage/ios/enums/IOSEnum.java | 73 ++ .../iostorInv/IStIvtIostorinvOutService.java | 175 ++++ .../iostorInv/IStIvtIostorinvService.java | 161 ++++ .../iostorInv/IStIvtIostorinvdisService.java | 42 + .../iostorInv/IStIvtIostorinvdtlService.java | 36 + .../service/iostorInv/dao/StIvtIostorinv.java | 346 ++++++++ .../iostorInv/dao/StIvtIostorinvdis.java | 149 ++++ .../iostorInv/dao/StIvtIostorinvdtl.java | 160 ++++ .../dao/mapper/StIvtIostorinvMapper.java | 29 + .../dao/mapper/StIvtIostorinvOutMapper.java | 29 + .../dao/mapper/StIvtIostorinvdisMapper.java | 36 + .../dao/mapper/StIvtIostorinvdtlMapper.java | 26 + .../dao/mapper/xml/StIvtIostorinvMapper.xml | 119 +++ .../mapper/xml/StIvtIostorinvOutMapper.xml | 37 + .../mapper/xml/StIvtIostorinvdisMapper.xml | 64 ++ .../mapper/xml/StIvtIostorinvdtlMapper.xml | 51 ++ .../service/iostorInv/dto/IostorInvQuery.java | 66 ++ .../impl/StIvtIostorinvOutServiceImpl.java | 648 +++++++++++++++ .../impl/StIvtIostorinvServiceImpl.java | 651 +++++++++++++++ .../impl/StIvtIostorinvdisServiceImpl.java | 81 ++ .../impl/StIvtIostorinvdtlServiceImpl.java | 137 ++++ .../ios/util/IosInRuleService.java | 29 + .../ios/util/IosOutRuleService.java | 28 + .../storage_manage/ios/util/dto/RuleDto.java | 20 + .../ios/util/impl/IosInRuleServiceImpl.java | 27 + .../ios/util/impl/IosOutRuleServiceImpl.java | 28 + .../java/org/nl/wms/util/DatabaseBackup.java | 58 ++ .../main/java/org/nl/wms/util/MesUtils.java | 70 ++ .../main/java/org/nl/wms/util/PointUtils.java | 111 +++ .../main/java/org/nl/wms/util/TaskUtils.java | 210 +++++ .../basedata/master/classification/index.vue | 411 ++++++++++ .../classification/mdBaseClassstandard.js | 82 ++ .../basedata/master/customer/customerbase.js | 27 + .../wms/basedata/master/customer/index.vue | 401 ++++++++++ .../views/wms/basedata/master/unit/index.vue | 197 +++++ .../wms/basedata/master/unit/measureunit.js | 27 + .../wms/basedata/master/vehicle/index.vue | 372 +++++++++ .../master/vehicle/storagevehicleinfo.js | 35 + .../src/views/wms/basedata/material/index.vue | 311 ++++++++ .../wms/basedata/material/mdBaseMaterial.js | 35 + .../src/views/wms/basedata/st/sect/index.vue | 324 ++++++++ .../views/wms/basedata/st/sect/sectattr.js | 43 + .../src/views/wms/basedata/st/stor/index.vue | 391 +++++++++ .../views/wms/basedata/st/stor/storattr.js | 43 + .../src/views/wms/basedata/workshop/index.vue | 111 +++ .../wms/basedata/workshop/mdBaseWorkshop.js | 34 + .../das/device/check/dasDeviceCheckRecord.js | 27 + .../src/views/wms/das/device/check/index.vue | 118 +++ .../operation/dasDeviceOperationRecord.js | 27 + .../views/wms/das/device/operation/index.vue | 113 +++ nladmin-ui/src/views/wms/das/inKiln/index.vue | 64 ++ .../das/inspection/dasQualityInspection.js | 27 + .../src/views/wms/das/inspection/index.vue | 99 +++ .../src/views/wms/das/intoKiln/index.vue | 65 ++ .../views/wms/das/materialtimeout/index.vue | 64 ++ .../src/views/wms/das/outKiln/index.vue | 65 ++ nladmin-ui/src/views/wms/ext/record/index.vue | 231 ++++++ .../views/wms/ext/record/sysInteractRecord.js | 27 + nladmin-ui/src/views/wms/pdm/bi/index.vue | 744 ++++++++++++++++++ .../views/wms/pdm/bi/subpackagerelation.js | 27 + .../src/views/wms/pdm/consumption/index.vue | 108 +++ .../pdm/consumption/pdmBdMudConsumption.js | 27 + .../views/wms/pdm/ivt/coolpointivt/Dialog.vue | 83 ++ .../wms/pdm/ivt/coolpointivt/coolpointivt.js | 35 + .../wms/pdm/ivt/coolpointivt/coolregionio.vue | 294 +++++++ .../views/wms/pdm/ivt/coolpointivt/index.vue | 26 + .../wms/pdm/ivt/coolpointivt/inventory.vue | 474 +++++++++++ .../wms/pdm/ivt/cutpointivt/cutpointivt.js | 27 + .../views/wms/pdm/ivt/cutpointivt/index.vue | 261 ++++++ .../ivt/deliverypointivt/deliverypointivt.js | 27 + .../wms/pdm/ivt/deliverypointivt/index.vue | 289 +++++++ .../views/wms/pdm/ivt/hotpointivt/Dialog.vue | 90 +++ .../wms/pdm/ivt/hotpointivt/hotpointivt.js | 35 + .../views/wms/pdm/ivt/hotpointivt/index.vue | 26 + .../wms/pdm/ivt/hotpointivt/pointIvt.vue | 398 ++++++++++ .../views/wms/pdm/ivt/hotpointivt/taskDtl.vue | 200 +++++ .../views/wms/pdm/ivt/sbpointivt/index.vue | 240 ++++++ .../wms/pdm/ivt/sbpointivt/sbpointivt.js | 27 + .../views/wms/pdm/ivt/stpointivt/index.vue | 223 ++++++ .../wms/pdm/ivt/stpointivt/stpointivt.js | 27 + .../wms/pdm/order/rawfoilworkorder/Dialog.vue | 81 ++ .../wms/pdm/order/rawfoilworkorder/index.vue | 467 +++++++++++ .../rawfoilworkorder/rawfoilworkorder.js | 43 + .../wms/pdm/order/slittingplan/index.vue | 688 ++++++++++++++++ .../slittingplan/slittingproductionplan.js | 67 ++ nladmin-ui/src/views/wms/pdm/record/index.vue | 101 +++ .../pdm/record/pdmBdRequestMaterialRecord.js | 27 + .../src/views/wms/pdm/residue/index.vue | 102 +++ .../wms/pdm/residue/pdmBdMaterialResidue.js | 27 + nladmin-ui/src/views/wms/pdm/track/index.vue | 118 +++ .../track/pdmBdProductionProcessTracking.js | 27 + .../src/views/wms/pdm/vehiclebiding/index.vue | 126 +++ .../pdm/vehiclebiding/pdmBdVehicleBinding.js | 27 + .../wms/pdm/workerorder/ProductionOrder.vue | 148 ++++ .../src/views/wms/pdm/workerorder/index.vue | 681 ++++++++++++++++ .../wms/pdm/workerorder/pdmBdWorkorder.js | 58 ++ .../views/wms/sch/group/MaterialDialog.vue | 201 +++++ .../views/wms/sch/group/WorkOrderDialog.vue | 154 ++++ nladmin-ui/src/views/wms/sch/group/index.vue | 464 +++++++++++ .../sch/group/schBaseVehiclematerialgroup.js | 35 + .../views/wms/sch/interactivelog/index.vue | 183 +++++ .../schBaseAcsandlmsinteractivelog.js | 27 + .../src/views/wms/sch/point/PointDialog.vue | 172 ++++ .../src/views/wms/sch/point/ViewDialog.vue | 219 ++++++ nladmin-ui/src/views/wms/sch/point/index.vue | 685 ++++++++++++++++ .../src/views/wms/sch/point/schBasePoint.js | 51 ++ nladmin-ui/src/views/wms/sch/region/index.vue | 271 +++++++ .../src/views/wms/sch/region/schBaseRegion.js | 50 ++ .../src/views/wms/sch/task/config/index.vue | 519 ++++++++++++ .../wms/sch/task/config/schBaseTaskconfig.js | 27 + nladmin-ui/src/views/wms/sch/task/index.vue | 531 +++++++++++++ .../src/views/wms/sch/task/schBaseTask.js | 42 + .../storage_manage/ios/inbill/AddDialog.vue | 343 ++++++++ .../wms/storage_manage/ios/inbill/AddDtl.vue | 169 ++++ .../storage_manage/ios/inbill/DivDialog.vue | 376 +++++++++ .../storage_manage/ios/inbill/TaskDialog.vue | 265 +++++++ .../storage_manage/ios/inbill/ViewDialog.vue | 281 +++++++ .../wms/storage_manage/ios/inbill/inbill.js | 124 +++ .../wms/storage_manage/ios/inbill/index.vue | 361 +++++++++ .../storage_manage/ios/outbill/AddDialog.vue | 355 +++++++++ .../wms/storage_manage/ios/outbill/AddDtl.vue | 226 ++++++ .../storage_manage/ios/outbill/DivDialog.vue | 547 +++++++++++++ .../ios/outbill/MoneyDialog.vue | 275 +++++++ .../storage_manage/ios/outbill/StructIvt.vue | 239 ++++++ .../storage_manage/ios/outbill/TaskDialog.vue | 302 +++++++ .../storage_manage/ios/outbill/ViewDialog.vue | 288 +++++++ .../wms/storage_manage/ios/outbill/index.vue | 458 +++++++++++ .../wms/storage_manage/ios/outbill/outbill.js | 116 +++ 415 files changed, 46126 insertions(+) create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/controller/MdBaseClassstandardController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/IMdBaseClassstandardService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/MdBaseClassstandard.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/mapper/MdBaseClassstandardMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/mapper/MdBaseClassstandardMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardTrees.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/impl/MdBaseClassstandardServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/controller/CustomerbaseController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/ICustomerbaseService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/Customerbase.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/mapper/CustomerbaseMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/mapper/CustomerbaseMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dto/CustomerbaseDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dto/CustomerbaseQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/impl/CustomerbaseServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/controller/MeasureunitController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/IMeasureunitService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/Measureunit.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/mapper/MeasureunitMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/mapper/MeasureunitMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dto/MeasureunitDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dto/MeasureunitQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/impl/MeasureunitServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/controller/StoragevehicleinfoController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/IStoragevehicleinfoService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/Storagevehicleinfo.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/mapper/StoragevehicleinfoMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/mapper/StoragevehicleinfoMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dto/StoragevehicleinfoDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dto/StoragevehicleinfoQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/impl/StoragevehicleinfoServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/controller/MdMeMaterialbaseController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/MdMeMaterialbase.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/mapper/MdMeMaterialbaseMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/xml/MdMeMaterialbaseMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dto/MdMeMaterialbaseDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dto/MdMeMaterialbaseParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/service/ImdMeMaterialbaseService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/service/impl/MdMeMaterialbaseServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/controller/MdBaseWorkshopController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/IMdBaseWorkshopService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/MdBaseWorkshop.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/mapper/MdBaseWorkshopMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/mapper/MdBaseWorkshopMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dto/MdBaseWorkshopDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dto/MdBaseWorkshopQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/impl/MdBaseWorkshopServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/controller/AcsToWmsController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/ResultForAcs.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/BaseRequest.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/BaseResponse.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/acs/IssueAcsRequest.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/AcsResponse.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/ApplyTaskRequest.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/FeedBackTaskStatusRequest.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/controller/MesToWmsController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/MesToWmsService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/WmsToMesService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/dto/ResultForMes.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/impl/MesToWmsServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/impl/WmsToMesServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/controller/SysInteractRecordController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/ISysInteractRecordService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/SysInteractRecord.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/mapper/SysInteractRecordMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/mapper/SysInteractRecordMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dto/SysInteractRecordDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dto/SysInteractRecordQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/impl/SysInteractRecordServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/controller/MdPbInterfacebackController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/MdPbInterfaceback.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/mapper/MdPbInterfacebackMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/xml/MdPbInterfacebackMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dto/MdPbInterfacebackDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dto/MdPbInterfacebackParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/service/ImdPbInterfacebackService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/service/impl/MdPbInterfacebackServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/controller/PdmBiRawfoilworkorderController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/controller/PdmBiSlittingproductionplanController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/PdmBiRawfoilworkorder.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/PdmBiSlittingproductionplan.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/mapper/PdmBiRawfoilworkorderMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/mapper/PdmBiSlittingproductionplanMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/xml/PdmBiRawfoilworkorderMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/xml/PdmBiSlittingproductionplanMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiRawfoilworkorderDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiRawfoilworkorderParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiSlittingproductionplanDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiSlittingproductionplanParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/IpdmBiRawfoilworkorderService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/IpdmBiSlittingproductionplanService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/impl/PdmBiRawfoilworkorderServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/impl/PdmBiSlittingproductionplanServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/enums/SUBEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCoolpointivtController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCoolregionioController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCutpointivtController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtDeliverypointivtController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtEmptytubeivtController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtEmptyvehiclerecordController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtHotpointivtController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtHotregioniomstController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtSbpointivtController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtStpointivtController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCoolpointivt.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCoolregionio.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCutpointivt.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtDeliverypointivt.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtEmptytubeivt.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtEmptyvehiclerecord.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtHotpointivt.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtHotregioniomst.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtSbpointivt.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtStpointivt.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCoolpointivtMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCoolregionioMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCutpointivtMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtDeliverypointivtMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtEmptytubeivtMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtEmptyvehiclerecordMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtHotpointivtMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtHotregioniomstMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtSbpointivtMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtStpointivtMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCoolpointivtMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCoolregionioMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCutpointivtMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtDeliverypointivtMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtEmptytubeivtMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtEmptyvehiclerecordMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtHotpointivtMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtHotregioniomstMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtSbpointivtMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtStpointivtMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolpointivtDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolpointivtParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolregionioDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolregionioParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCutpointivtDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCutpointivtParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtDeliverypointivtDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtDeliverypointivtParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptytubeivtDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptytubeivtParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptyvehiclerecordDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptyvehiclerecordParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotpointivtDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotpointivtParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotregioniomstDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotregioniomstParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtSbpointivtDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtSbpointivtParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtStpointivtDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtStpointivtParam.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCoolpointivtService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCoolregionioService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCutpointivtService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtDeliverypointivtService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtEmptytubeivtService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtEmptyvehiclerecordService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtHotpointivtService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtHotregioniomstService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtSbpointivtService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtStpointivtService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCoolpointivtServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCoolregionioServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCutpointivtServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtDeliverypointivtServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtEmptytubeivtServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtEmptyvehiclerecordServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtHotpointivtServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtHotregioniomstServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtSbpointivtServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtStpointivtServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/controller/PdmBiSubpackagerelationController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/IPdmBiSubpackagerelationService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/PdmBiSubpackagerelation.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/mapper/PdmBiSubpackagerelationMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/mapper/xml/PdmBiSubpackagerelationMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dto/SubPackageQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/impl/PdmBiSubpackagerelationServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/controller/SchBaseVehiclematerialgroupController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/ISchBaseVehiclematerialgroupService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/SchBaseVehiclematerialgroup.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/mapper/SchBaseVehiclematerialgroupMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/mapper/SchBaseVehiclematerialgroupMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dto/SchBaseVehiclematerialgroupDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dto/SchBaseVehiclematerialgroupQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/impl/SchBaseVehiclematerialgroupServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/controller/SchBaseAcsandlmsinteractivelogController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/ISchBaseAcsandlmsinteractivelogService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/SchBaseAcsandlmsinteractivelog.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/mapper/SchBaseAcsandlmsinteractivelogMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/mapper/SchBaseAcsandlmsinteractivelogMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dto/SchBaseAcsandlmsinteractivelogDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dto/SchBaseAcsandlmsinteractivelogQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/impl/SchBaseAcsandlmsinteractivelogServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/controller/SchBasePointController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/ISchBasePointService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/SchBasePoint.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/mapper/SchBasePointMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/mapper/SchBasePointMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dto/SchBasePointDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dto/SchBasePointQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/impl/SchBasePointServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/controller/SchBaseRegionController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/ISchBaseRegionService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/SchBaseRegion.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/mapper/SchBaseRegionMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/mapper/SchBaseRegionMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dto/SchBaseRegionDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dto/SchBaseRegionQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/impl/SchBaseRegionServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskconfigController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskconfigService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTaskconfig.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskconfigServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AbstractTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AcsTaskDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/GeneralDefinition.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/GroupBindMaterialStatusEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/GroupStatusEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/NoticeTypeEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/PackageInfoIvtEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/PointStatusEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/TaskDirectionEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/TaskFinishedTypeEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/WorkOrderStatusEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/AcsUtil.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskFactory.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskType.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskApplyType.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskOperateType.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskStatus.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/CallEmpReelTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/CoolCutTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/InCoolIvtTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/InHotTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/OutHotTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtBsrealstorattrController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtSectattrController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtStructattrController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtUserstorController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtBsrealstorattr.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtSectattr.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtStructattr.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtUserstor.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/SectQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/StorQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/UserStorQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtBsrealstorattrMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtSectattrMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtStructattrMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtUserstorMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtBsrealstorattrMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtSectattrMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtStructattrMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtUserstorMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtBsrealstorattrService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtSectattrService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtStructattrService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtUserstorService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtBsrealstorattrServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtSectattrServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtStructattrServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtUserstorServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/controller/iostorInv/StIvtIostorinvController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/controller/iostorInv/StIvtIostorinvOutController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/enums/IOSEnum.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvOutService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvdisService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvdtlService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinv.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinvdis.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinvdtl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvOutMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvdisMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvdtlMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvOutMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvdisMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvdtlMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dto/IostorInvQuery.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvOutServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvdisServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvdtlServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/IosInRuleService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/IosOutRuleService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/dto/RuleDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/impl/IosInRuleServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/impl/IosOutRuleServiceImpl.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/DatabaseBackup.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/MesUtils.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/PointUtils.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/TaskUtils.java create mode 100644 nladmin-ui/src/views/wms/basedata/master/classification/index.vue create mode 100644 nladmin-ui/src/views/wms/basedata/master/classification/mdBaseClassstandard.js create mode 100644 nladmin-ui/src/views/wms/basedata/master/customer/customerbase.js create mode 100644 nladmin-ui/src/views/wms/basedata/master/customer/index.vue create mode 100644 nladmin-ui/src/views/wms/basedata/master/unit/index.vue create mode 100644 nladmin-ui/src/views/wms/basedata/master/unit/measureunit.js create mode 100644 nladmin-ui/src/views/wms/basedata/master/vehicle/index.vue create mode 100644 nladmin-ui/src/views/wms/basedata/master/vehicle/storagevehicleinfo.js create mode 100644 nladmin-ui/src/views/wms/basedata/material/index.vue create mode 100644 nladmin-ui/src/views/wms/basedata/material/mdBaseMaterial.js create mode 100644 nladmin-ui/src/views/wms/basedata/st/sect/index.vue create mode 100644 nladmin-ui/src/views/wms/basedata/st/sect/sectattr.js create mode 100644 nladmin-ui/src/views/wms/basedata/st/stor/index.vue create mode 100644 nladmin-ui/src/views/wms/basedata/st/stor/storattr.js create mode 100644 nladmin-ui/src/views/wms/basedata/workshop/index.vue create mode 100644 nladmin-ui/src/views/wms/basedata/workshop/mdBaseWorkshop.js create mode 100644 nladmin-ui/src/views/wms/das/device/check/dasDeviceCheckRecord.js create mode 100644 nladmin-ui/src/views/wms/das/device/check/index.vue create mode 100644 nladmin-ui/src/views/wms/das/device/operation/dasDeviceOperationRecord.js create mode 100644 nladmin-ui/src/views/wms/das/device/operation/index.vue create mode 100644 nladmin-ui/src/views/wms/das/inKiln/index.vue create mode 100644 nladmin-ui/src/views/wms/das/inspection/dasQualityInspection.js create mode 100644 nladmin-ui/src/views/wms/das/inspection/index.vue create mode 100644 nladmin-ui/src/views/wms/das/intoKiln/index.vue create mode 100644 nladmin-ui/src/views/wms/das/materialtimeout/index.vue create mode 100644 nladmin-ui/src/views/wms/das/outKiln/index.vue create mode 100644 nladmin-ui/src/views/wms/ext/record/index.vue create mode 100644 nladmin-ui/src/views/wms/ext/record/sysInteractRecord.js create mode 100644 nladmin-ui/src/views/wms/pdm/bi/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/bi/subpackagerelation.js create mode 100644 nladmin-ui/src/views/wms/pdm/consumption/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/consumption/pdmBdMudConsumption.js create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/Dialog.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/coolpointivt.js create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/coolregionio.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/inventory.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/cutpointivt/cutpointivt.js create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/cutpointivt/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/deliverypointivt/deliverypointivt.js create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/deliverypointivt/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/Dialog.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/hotpointivt.js create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/pointIvt.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/taskDtl.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/sbpointivt.js create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/stpointivt/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/ivt/stpointivt/stpointivt.js create mode 100644 nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/Dialog.vue create mode 100644 nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/rawfoilworkorder.js create mode 100644 nladmin-ui/src/views/wms/pdm/order/slittingplan/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/order/slittingplan/slittingproductionplan.js create mode 100644 nladmin-ui/src/views/wms/pdm/record/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/record/pdmBdRequestMaterialRecord.js create mode 100644 nladmin-ui/src/views/wms/pdm/residue/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/residue/pdmBdMaterialResidue.js create mode 100644 nladmin-ui/src/views/wms/pdm/track/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/track/pdmBdProductionProcessTracking.js create mode 100644 nladmin-ui/src/views/wms/pdm/vehiclebiding/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/vehiclebiding/pdmBdVehicleBinding.js create mode 100644 nladmin-ui/src/views/wms/pdm/workerorder/ProductionOrder.vue create mode 100644 nladmin-ui/src/views/wms/pdm/workerorder/index.vue create mode 100644 nladmin-ui/src/views/wms/pdm/workerorder/pdmBdWorkorder.js create mode 100644 nladmin-ui/src/views/wms/sch/group/MaterialDialog.vue create mode 100644 nladmin-ui/src/views/wms/sch/group/WorkOrderDialog.vue create mode 100644 nladmin-ui/src/views/wms/sch/group/index.vue create mode 100644 nladmin-ui/src/views/wms/sch/group/schBaseVehiclematerialgroup.js create mode 100644 nladmin-ui/src/views/wms/sch/interactivelog/index.vue create mode 100644 nladmin-ui/src/views/wms/sch/interactivelog/schBaseAcsandlmsinteractivelog.js create mode 100644 nladmin-ui/src/views/wms/sch/point/PointDialog.vue create mode 100644 nladmin-ui/src/views/wms/sch/point/ViewDialog.vue create mode 100644 nladmin-ui/src/views/wms/sch/point/index.vue create mode 100644 nladmin-ui/src/views/wms/sch/point/schBasePoint.js create mode 100644 nladmin-ui/src/views/wms/sch/region/index.vue create mode 100644 nladmin-ui/src/views/wms/sch/region/schBaseRegion.js create mode 100644 nladmin-ui/src/views/wms/sch/task/config/index.vue create mode 100644 nladmin-ui/src/views/wms/sch/task/config/schBaseTaskconfig.js create mode 100644 nladmin-ui/src/views/wms/sch/task/index.vue create mode 100644 nladmin-ui/src/views/wms/sch/task/schBaseTask.js create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/inbill/AddDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/inbill/AddDtl.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/inbill/DivDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/inbill/TaskDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/inbill/ViewDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/inbill/inbill.js create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/inbill/index.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/AddDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/AddDtl.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/DivDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/MoneyDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/StructIvt.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/TaskDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/ViewDialog.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/index.vue create mode 100644 nladmin-ui/src/views/wms/storage_manage/ios/outbill/outbill.js diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/controller/MdBaseClassstandardController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/controller/MdBaseClassstandardController.java new file mode 100644 index 0000000..3e01a2c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/controller/MdBaseClassstandardController.java @@ -0,0 +1,87 @@ +package org.nl.wms.basedata.master.classification.controller; + + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.basedata.master.classification.service.IMdBaseClassstandardService; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** +* @author lyd +* @date 2023-05-11 +**/ +@Slf4j +@RestController +@RequestMapping("/api/Classstandard") +public class MdBaseClassstandardController { + + @Autowired + private IMdBaseClassstandardService mdBaseClassstandardService; + + @GetMapping + @Log("查询基础分类") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(mdBaseClassstandardService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增基础分类") + public ResponseEntity create(@Validated @RequestBody MdBaseClassstandard entity){ + mdBaseClassstandardService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改基础分类") + public ResponseEntity update(@Validated @RequestBody MdBaseClassstandard entity){ + mdBaseClassstandardService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除基础分类") + @DeleteMapping + public ResponseEntity delete(@RequestBody List ids) { + mdBaseClassstandardService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @GetMapping("/getClass") + @Log("获取Code获取树下拉框") + //@PreAuthorize("@el.check('materialtype:list')") + public ResponseEntity queryClassByCode(@RequestParam Map whereJson) { + return new ResponseEntity<>(mdBaseClassstandardService.queryClassByCode(whereJson), HttpStatus.OK); + } + + @GetMapping("/getClassName") + @Log("获取分类名称下拉框") + public ResponseEntity getClassName() { + return new ResponseEntity<>(mdBaseClassstandardService.getClassName(), HttpStatus.OK); + } + + @GetMapping("/loadClass") + @Log("查询基础类型") + public ResponseEntity query(@RequestParam Map whereJson) { + return new ResponseEntity<>(mdBaseClassstandardService.loadClass(whereJson), HttpStatus.OK); + } + + + @PostMapping("/superior") + public ResponseEntity getSuperior(@RequestBody String id) { + MdBaseClassstandard classstandard = mdBaseClassstandardService.getById(id); + ArrayList list = mdBaseClassstandardService.getSuperior(classstandard, new ArrayList<>()); + return new ResponseEntity<>(mdBaseClassstandardService.buildTree(list), HttpStatus.OK); + } +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/IMdBaseClassstandardService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/IMdBaseClassstandardService.java new file mode 100644 index 0000000..cfbf1d9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/IMdBaseClassstandardService.java @@ -0,0 +1,86 @@ +package org.nl.wms.basedata.master.classification.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** +* @description 服务接口 +* @author lyd +* @date 2023-05-11 +**/ +public interface IMdBaseClassstandardService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(MdBaseClassstandard entity); + + /** + * 编辑 + * @param entity / + */ + void update(MdBaseClassstandard entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(List ids); + + /** + * 获取下拉框 + * @return + */ + List getClassName(); + + /** + * loadClass + * @param whereJson + * @return + */ + List loadClass(Map whereJson); + + /** + * 获取父级树 + * @param classstandard + * @param objects + * @return + */ + ArrayList getSuperior(MdBaseClassstandard classstandard, ArrayList objects); + + /** + * 构建树形 + * @param list + * @return + */ + List buildTree(ArrayList list); + + /** + * 根据编码获取对应的父级数据 + * @param whereJson + * @return + */ + List queryClassByCode(Map whereJson); + + /** + * 获取所有的子节点id + * @param classId 父节点id + * @return 子节点id数组 + */ + ArrayList getAllChildrenIds(String classId); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/MdBaseClassstandard.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/MdBaseClassstandard.java new file mode 100644 index 0000000..6c5cf3d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/MdBaseClassstandard.java @@ -0,0 +1,76 @@ +package org.nl.wms.basedata.master.classification.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + * @author lyd + * @description / + * @date 2023-05-11 + **/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("md_base_classstandard") +public class MdBaseClassstandard implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "class_id", type = IdType.NONE) + private String class_id; + + private String class_code; + + private String class_name; + + private String class_desc; + + private String parent_class_id; + + private Integer sub_count; + + private Boolean is_leaf; + + private Boolean is_modify; + + private Boolean is_delete; + + private String class_level; + + private String ext_id; + + private String ext_parent_id; + + private String workshop_code; + + private String remark; + + private String create_id; + + private String create_name; + + private String create_time; + + private String update_id; + + private String update_name; + + private String update_time; + + @TableField(exist = false) + private Boolean hasChildren; + + @TableField(exist = false) + private String id; + + @TableField(exist = false) + private String label; + @TableField(exist = false) + private Boolean leaf; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/mapper/MdBaseClassstandardMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/mapper/MdBaseClassstandardMapper.java new file mode 100644 index 0000000..246d097 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/mapper/MdBaseClassstandardMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.basedata.master.classification.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; + +import java.util.ArrayList; + +/** +* @author lyd +* @date 2023-05-11 +**/ +public interface MdBaseClassstandardMapper extends BaseMapper { + + ArrayList getAllChildrenIds(String classId); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/mapper/MdBaseClassstandardMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/mapper/MdBaseClassstandardMapper.xml new file mode 100644 index 0000000..764a135 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dao/mapper/MdBaseClassstandardMapper.xml @@ -0,0 +1,19 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardDto.java new file mode 100644 index 0000000..598630f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardDto.java @@ -0,0 +1,73 @@ +package org.nl.wms.basedata.master.classification.service.dto; + +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-11 +**/ +@Data +public class MdBaseClassstandardDto implements Serializable { + + /** 分类标识 */ + private String class_id; + + /** 分类编码 */ + private String class_code; + + /** 分类名称 */ + private String class_name; + + /** 分类简要描述 */ + private String class_desc; + + /** 上级分类标识 */ + private String parent_class_id; + + /** 子级数目 */ + private String sub_count; + + /** 是否叶子 */ + private Boolean is_leaf; + + /** 是否可修改 */ + private Boolean is_modify; + + /** 是否删除 */ + private Boolean is_delete; + + /** 级别 */ + private String class_level; + + /** 外部标识 */ + private String ext_id; + + /** 外部上级标识 */ + private String ext_parent_id; + + /** 车间编码 */ + private String workshop_code; + + /** 备注 */ + private String remark; + + /** 创建人 */ + private String create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_id; + + /** 修改人 */ + private String update_name; + + /** 修改时间 */ + private String update_time; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardQuery.java new file mode 100644 index 0000000..3db9e11 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.basedata.master.classification.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; + +/** +* @author lyd +* @date 2023-05-11 +**/ +public class MdBaseClassstandardQuery extends BaseQuery { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardTrees.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardTrees.java new file mode 100644 index 0000000..f8c21ed --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/dto/MdBaseClassstandardTrees.java @@ -0,0 +1,26 @@ +package org.nl.wms.basedata.master.classification.service.dto; + +import com.baomidou.mybatisplus.annotation.TableField; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; + +import java.io.Serializable; +import java.util.List; + +/** + * @Author: lyd + * @Description: vue-tree-select所需要的实体 + * @Date: 2023/5/12 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class MdBaseClassstandardTrees extends MdBaseClassstandard implements Serializable { + + @TableField(exist = false) + private List children; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/impl/MdBaseClassstandardServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/impl/MdBaseClassstandardServiceImpl.java new file mode 100644 index 0000000..ba6cf26 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/classification/service/impl/MdBaseClassstandardServiceImpl.java @@ -0,0 +1,275 @@ +package org.nl.wms.basedata.master.classification.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.language.LangProcess; +import org.nl.wms.basedata.master.classification.service.IMdBaseClassstandardService; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; +import org.nl.wms.basedata.master.classification.service.dao.mapper.MdBaseClassstandardMapper; +import org.nl.wms.basedata.master.classification.service.dto.MdBaseClassstandardTrees; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * @author lyd + * @description 服务实现 + * @date 2023-05-11 + **/ +@Slf4j +@Service +public class MdBaseClassstandardServiceImpl extends ServiceImpl implements IMdBaseClassstandardService { + + @Autowired + private MdBaseClassstandardMapper mdBaseClassstandardMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page) { + String class_code = ObjectUtil.isNotEmpty(whereJson.get("class_code")) + ? whereJson.get("class_code").toString() + : null; + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(ObjectUtil.isNotEmpty(class_code), MdBaseClassstandard::getClass_code, class_code) + .eq(MdBaseClassstandard::getIs_delete, false) + .eq(MdBaseClassstandard::getParent_class_id, "0") + .or(la -> la.isNull(MdBaseClassstandard::getParent_class_id)); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + mdBaseClassstandardMapper.selectPage(pages, lam); + pages.getRecords().forEach(classstandard -> { + classstandard.setIs_leaf((classstandard.getSub_count() <= 0)); + classstandard.setHasChildren(classstandard.getSub_count() > 0); + }); + return pages; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create(MdBaseClassstandard entity) { + // 判断是否存在 + MdBaseClassstandard mdBaseClassstandard = mdBaseClassstandardMapper + .selectOne(new LambdaQueryWrapper() + .eq(MdBaseClassstandard::getClass_code, entity.getClass_code()) + .eq(MdBaseClassstandard::getIs_delete, false)); + if (ObjectUtil.isNotEmpty(mdBaseClassstandard) && !mdBaseClassstandard.getClass_id().equals(entity.getClass_id())) { + throw new BadRequestException(LangProcess.msg("error_ParamExist", entity.getClass_id())); + } + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setClass_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + entity.setIs_leaf(true); + entity.setClass_level(Math.ceil(entity.getClass_code().length() / 2.0) + ""); + entity.setSub_count(0); + mdBaseClassstandardMapper.insert(entity); + // 更新节点 + if (ObjectUtil.isNotEmpty(entity.getParent_class_id()) && !entity.getParent_class_id().equals(IOSEnum.IS_NOTANDYES.code("否"))) { + updateSubCnt(entity.getParent_class_id()); + } + } + + private void updateSubCnt(String parentClassId) { + MdBaseClassstandard classObject = mdBaseClassstandardMapper.selectById(parentClassId); + if (ObjectUtil.isEmpty(classObject)) return; + List classList = mdBaseClassstandardMapper + .selectList(new LambdaQueryWrapper().eq(MdBaseClassstandard::getParent_class_id, parentClassId)); + int size = classList.size(); + classObject.setSub_count(size); + classObject.setIs_leaf(size > 0); + mdBaseClassstandardMapper.updateById(classObject); + } + + @Override + public void update(MdBaseClassstandard entity) { + String errorSystemAuthError = "error_SystemAuthError"; + MdBaseClassstandard dto = mdBaseClassstandardMapper.selectById(entity.getClass_id()); + if (dto == null) throw new BadRequestException(LangProcess.msg(errorSystemAuthError)); + // 判断是否存在 + MdBaseClassstandard mdBaseClassstandard = mdBaseClassstandardMapper + .selectOne(new LambdaQueryWrapper() + .eq(MdBaseClassstandard::getClass_code, entity.getClass_code()) + .eq(MdBaseClassstandard::getIs_delete, false)); + if (ObjectUtil.isNotEmpty(mdBaseClassstandard) && !mdBaseClassstandard.getClass_id().equals(entity.getClass_id())) { + throw new BadRequestException(LangProcess.msg("error_ParamExist", entity.getClass_id())); + } + // 查询原来的父id + String oldPid = dto.getParent_class_id(); + String newPid = entity.getParent_class_id(); + if (entity.getParent_class_id() != null && entity.getClass_id().equals(entity.getParent_class_id())) { + throw new BadRequestException(LangProcess.msg("login_childError")); + } + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + // 更新 + mdBaseClassstandardMapper.updateById(entity); + //更新父节点中子节点数目 + updateSubCnt(oldPid); + updateSubCnt(newPid); + } + + @Override + public void deleteAll(List ids) { + // 递归删除子类 + for (String id : ids) { + // 获取元素体 + MdBaseClassstandard classstandard = mdBaseClassstandardMapper.selectById(id); + mdBaseClassstandardMapper.deleteById(classstandard.getClass_id()); + // 找出所有当前节点的子节点 + List baseClassstandardList = mdBaseClassstandardMapper.selectList( + new LambdaQueryWrapper() + .eq(MdBaseClassstandard::getParent_class_id, classstandard.getClass_id())); + if (baseClassstandardList.size() > 0) { + List collect = baseClassstandardList.stream() + .map(md -> md.getClass_id()) + .collect(Collectors.toList()); + deleteAll(collect); + } + updateSubCnt(classstandard.getParent_class_id()); + } + } + + @Override + public List getClassName() { + return mdBaseClassstandardMapper.selectList(new LambdaQueryWrapper() + .isNull(MdBaseClassstandard::getParent_class_id) + .or() + .eq(MdBaseClassstandard::getParent_class_id, "0") + .eq(MdBaseClassstandard::getIs_delete, false)); + } + + @Override + public List loadClass(Map whereJson) { + String pid = ObjectUtil.isNotEmpty(whereJson.get("pid")) ? whereJson.get("pid").toString() : null; + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(ObjectUtil.isNotEmpty(pid), MdBaseClassstandard::getParent_class_id, pid) + .or(ObjectUtil.isEmpty(pid), la -> la.isNull(MdBaseClassstandard::getParent_class_id) + .or() + .eq(MdBaseClassstandard::getParent_class_id, "0")) + .eq(MdBaseClassstandard::getIs_delete, false); + List classstandardList = mdBaseClassstandardMapper.selectList(lam); + classstandardList.forEach(classstandard -> { + classstandard.setHasChildren(classstandard.getSub_count() > 0); + classstandard.setLeaf((classstandard.getSub_count() <= 0)); + classstandard.setId(classstandard.getClass_id()); + classstandard.setLabel(classstandard.getClass_name()); + }); + return classstandardList; + } + + /** + * 递归获取树形数据,从子级到父级以及最高级 + * + * @param classstandard + * @param res + * @return + */ + @Override + public ArrayList getSuperior(MdBaseClassstandard classstandard, ArrayList res) { + if (ObjectUtil.isEmpty(classstandard.getParent_class_id()) || classstandard.getParent_class_id().equals(IOSEnum.IS_NOTANDYES.code("否"))) { + // 父类id为空或者是0就是顶级类别 + List classstandardList = mdBaseClassstandardMapper + .selectList(new LambdaQueryWrapper() + .eq(MdBaseClassstandard::getIs_delete, false) + .eq(MdBaseClassstandard::getParent_class_id, "0") + .or(la -> la.isNull(MdBaseClassstandard::getParent_class_id))); + res.addAll(classstandardList); + return res; + } + // 递归寻找同级 + List mdBaseClassstandards = mdBaseClassstandardMapper.selectList( + new LambdaQueryWrapper() + .eq(MdBaseClassstandard::getIs_delete, false) + .eq(MdBaseClassstandard::getParent_class_id, classstandard.getParent_class_id())); + res.addAll(mdBaseClassstandards); + return getSuperior(mdBaseClassstandardMapper.selectById(classstandard.getParent_class_id()), res); + } + + @Override + public List buildTree(ArrayList list) { + // 初始化数据 + list.forEach(classstandard -> { + classstandard.setId(classstandard.getClass_id()); + classstandard.setLabel(classstandard.getClass_name()); + classstandard.setLeaf((classstandard.getSub_count() <= 0)); + classstandard.setHasChildren(classstandard.getSub_count() > 0); + }); + + // 创建树结构 + return list.stream() + .filter(node -> "0".equals(node.getParent_class_id()) || ObjectUtil.isEmpty(node.getParent_class_id())) + .map(node -> createTree(node, list)) + .collect(Collectors.toList()); + } + + private MdBaseClassstandard createTree(MdBaseClassstandard node, List list) { + List children = list.stream() + .filter(child -> node.getClass_id().equals(child.getParent_class_id())) + .map(child -> createTree(child, list)) + .collect(Collectors.toList()); + if (!children.isEmpty()) { + MdBaseClassstandardTrees tObj = new MdBaseClassstandardTrees(); + // 赋值一份实体,可以避免vue-tree拿到children属性显示展开图标 + BeanUtils.copyProperties(node, tObj); + tObj.setChildren(children); + return tObj; + } else { + node.setLeaf(true); + } + return node; + } + + @Override + public List queryClassByCode(Map whereJson) { + String parentClassCode = ObjectUtil.isNotEmpty(whereJson.get("parent_class_code")) + ? (String) whereJson.get("parent_class_code") : null; + if (null == parentClassCode) { + throw new BadRequestException("父节点编号不能为空!"); + } + List classstandards = mdBaseClassstandardMapper.selectList( + new LambdaQueryWrapper().eq(MdBaseClassstandard::getClass_code, parentClassCode)); + if (classstandards.size() == 0) { + throw new BadRequestException("请输入正确的父节点编号!"); + } + // 处理数据 + classstandards.forEach(classstandard -> { + classstandard.setHasChildren(classstandard.getSub_count() > 0); + classstandard.setLeaf((classstandard.getSub_count() == 0)); + classstandard.setId(classstandard.getClass_id()); + classstandard.setLabel(classstandard.getClass_name()); + }); + return classstandards; + } + + @Override + public ArrayList getAllChildrenIds(String classId) { + return mdBaseClassstandardMapper.getAllChildrenIds(classId); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/controller/CustomerbaseController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/controller/CustomerbaseController.java new file mode 100644 index 0000000..783a370 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/controller/CustomerbaseController.java @@ -0,0 +1,59 @@ +package org.nl.wms.basedata.master.customer.controller; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.basedata.master.customer.service.ICustomerbaseService; +import org.nl.wms.basedata.master.customer.service.dao.Customerbase; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2024-03-25 +**/ +@Slf4j +@RestController +@RequestMapping("/api/customerbase") +public class CustomerbaseController { + + @Autowired + private ICustomerbaseService customerbaseService; + + @GetMapping + @Log("查询客户信息管理") + //@SaCheckPermission("@el.check('customerbase:list')") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(customerbaseService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增客户信息管理") + //@SaCheckPermission("@el.check('customerbase:add')") + public ResponseEntity create(@Validated @RequestBody Customerbase entity){ + customerbaseService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改客户信息管理") + //@SaCheckPermission("@el.check('customerbase:edit')") + public ResponseEntity update(@Validated @RequestBody Customerbase entity){ + customerbaseService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除客户信息管理") + //@SaCheckPermission("@el.check('customerbase:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + customerbaseService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/ICustomerbaseService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/ICustomerbaseService.java new file mode 100644 index 0000000..5f28dcc --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/ICustomerbaseService.java @@ -0,0 +1,43 @@ +package org.nl.wms.basedata.master.customer.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.basedata.master.customer.service.dao.Customerbase; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2024-03-25 +**/ +public interface ICustomerbaseService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(Customerbase entity); + + /** + * 编辑 + * @param entity / + */ + void update(Customerbase entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/Customerbase.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/Customerbase.java new file mode 100644 index 0000000..0a58b6e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/Customerbase.java @@ -0,0 +1,139 @@ +package org.nl.wms.basedata.master.customer.service.dao; + + import com.baomidou.mybatisplus.annotation.IdType; + import com.baomidou.mybatisplus.annotation.TableId; + import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2024-03-25 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("md_cs_customerbase") +public class Customerbase implements Serializable { + +private static final long serialVersionUID = 1L; + + @TableId(value = "cust_id", type = IdType.NONE) + /** 客户标识 */ + private String cust_id; + + /** 客户编码 */ + private String cust_code; + + /** 客户名称 */ + private String cust_name; + + /** 客户简称 */ + private String cust_simple_name; + + /** 国家 */ + private String country; + + /** 省份 */ + private String state; + + /** 城市 */ + private String city; + + /** 传真 */ + private String faxnumber; + + /** 邮箱 */ + private String webSite; + + /** 法人代表 */ + private String jurid_name; + + /** 税务登记号 */ + private String tax_no; + + /** 工商注册号 */ + private String register_no; + + /** 经营许可证号 */ + private String manage_lice_no; + + /** 营业执照 */ + private String busi_char_name; + + /** 行政区划 */ + private String area_id; + + /** 邮政编码 */ + private String zip_code; + + /** 公司电话 */ + private String corp_tele_no; + + /** 公司地址 */ + private String corp_address; + + /** 业务员 */ + private String sales_owner; + + /** 创建人 */ + private String create_id; + + /** 创建人姓名 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_optid; + + /** 修改人姓名 */ + private String update_optname; + + /** 修改时间 */ + private String update_time; + + /** 启用时间 */ + private String is_used_time; + + /** 是否启用 */ + private String is_used; + + /** 是否删除 */ + private String is_delete; + + /** 外部标识 */ + private String ext_id; + + /** 备注 */ + private String remark; + + /** 分类标识 */ + private String class_id; + + /** 分类编码 */ + private String class_code; + + /** 分类名称 */ + private String class_name; + + /** 子卷打印模板号 */ + private String zj_print_no; + + /** 包装打印模板号 */ + private String bz_print_no; + + /** 送货单打印模板号 */ + private String shd_print_no; + + /** 送货单明细数 */ + private String shd_dtl_num; + + /** is_auto_table */ + private String is_auto_table; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/mapper/CustomerbaseMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/mapper/CustomerbaseMapper.java new file mode 100644 index 0000000..3f7403a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/mapper/CustomerbaseMapper.java @@ -0,0 +1,12 @@ +package org.nl.wms.basedata.master.customer.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.basedata.master.customer.service.dao.Customerbase; + +/** +* @author lyd +* @date 2024-03-25 +**/ +public interface CustomerbaseMapper extends BaseMapper { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/mapper/CustomerbaseMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/mapper/CustomerbaseMapper.xml new file mode 100644 index 0000000..d1df625 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dao/mapper/CustomerbaseMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dto/CustomerbaseDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dto/CustomerbaseDto.java new file mode 100644 index 0000000..581e28b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dto/CustomerbaseDto.java @@ -0,0 +1,130 @@ +package org.nl.wms.basedata.master.customer.service.dto; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2024-03-25 +**/ +@Data +public class CustomerbaseDto implements Serializable { + + /** 客户标识 */ + /** 防止精度丢失 */ + @JsonSerialize(using= ToStringSerializer.class) + private String cust_id; + + /** 客户编码 */ + private String cust_code; + + /** 客户名称 */ + private String cust_name; + + /** 客户简称 */ + private String cust_simple_name; + + /** 国家 */ + private String country; + + /** 省份 */ + private String state; + + /** 城市 */ + private String city; + + /** 传真 */ + private String faxnumber; + + /** 邮箱 */ + private String webSite; + + /** 法人代表 */ + private String jurid_name; + + /** 税务登记号 */ + private String tax_no; + + /** 工商注册号 */ + private String register_no; + + /** 经营许可证号 */ + private String manage_lice_no; + + /** 营业执照 */ + private String busi_char_name; + + /** 行政区划 */ + private Long area_id; + + /** 邮政编码 */ + private String zip_code; + + /** 公司电话 */ + private String corp_tele_no; + + /** 公司地址 */ + private String corp_address; + + /** 业务员 */ + private String sales_owner; + + /** 创建人 */ + private Long create_id; + + /** 创建人姓名 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private Long update_optid; + + /** 修改人姓名 */ + private String update_optname; + + /** 修改时间 */ + private String update_time; + + /** 启用时间 */ + private String is_used_time; + + /** 是否启用 */ + private String is_used; + + /** 是否删除 */ + private String is_delete; + + /** 外部标识 */ + private String ext_id; + + /** 备注 */ + private String remark; + + /** 分类标识 */ + private Long class_id; + + /** 分类编码 */ + private String class_code; + + /** 分类名称 */ + private String class_name; + + /** 子卷打印模板号 */ + private String zj_print_no; + + /** 包装打印模板号 */ + private String bz_print_no; + + /** 送货单打印模板号 */ + private String shd_print_no; + + /** 送货单明细数 */ + private String shd_dtl_num; + + private String is_auto_table; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dto/CustomerbaseQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dto/CustomerbaseQuery.java new file mode 100644 index 0000000..0842b1c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/dto/CustomerbaseQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.basedata.master.customer.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.basedata.master.customer.service.dao.Customerbase; + +/** +* @author lyd +* @date 2024-03-25 +**/ +public class CustomerbaseQuery extends BaseQuery { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/impl/CustomerbaseServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/impl/CustomerbaseServiceImpl.java new file mode 100644 index 0000000..5b4cba4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/customer/service/impl/CustomerbaseServiceImpl.java @@ -0,0 +1,95 @@ +package org.nl.wms.basedata.master.customer.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.language.LangProcess; +import org.nl.wms.basedata.master.customer.service.ICustomerbaseService; +import org.nl.wms.basedata.master.customer.service.dao.Customerbase; +import org.nl.wms.basedata.master.customer.service.dao.mapper.CustomerbaseMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务实现 +* @author lyd +* @date 2024-03-25 +**/ +@Slf4j +@Service +public class CustomerbaseServiceImpl extends ServiceImpl implements ICustomerbaseService { + + @Autowired + private CustomerbaseMapper customerbaseMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page){ + String o = ObjectUtil.isEmpty(whereJson.get("search")) ? null : (String)whereJson.get("search"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.like(o != null, Customerbase::getCust_code, o) + .or(o != null) + .like(o != null, Customerbase::getCust_name, o); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + customerbaseMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(Customerbase entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setCust_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_optid(currentUserId); + entity.setUpdate_optname(nickName); + entity.setUpdate_time(now); + customerbaseMapper.insert(entity); + } + + @Override + public void update(Customerbase entity) { + Customerbase dto = customerbaseMapper.selectById(entity.getCust_id()); + if (dto == null) { + throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); + } + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_optid(currentUserId); + entity.setUpdate_optname(nickName); + entity.setUpdate_time(now); + + customerbaseMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + Customerbase customerbase = new Customerbase(); + customerbase.setUpdate_optid(SecurityUtils.getCurrentUserId()); + customerbase.setUpdate_optname(SecurityUtils.getCurrentUsername()); + customerbase.setUpdate_time(DateUtil.now()); + customerbase.setIs_delete("1"); + LambdaQueryWrapper lam = new QueryWrapper().lambda(); + lam.in(Customerbase::getCust_id, ids); + customerbaseMapper.update(customerbase, lam); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/controller/MeasureunitController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/controller/MeasureunitController.java new file mode 100644 index 0000000..2b601e5 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/controller/MeasureunitController.java @@ -0,0 +1,55 @@ +package org.nl.wms.basedata.master.unit.controller; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.basedata.master.unit.service.IMeasureunitService; +import org.nl.wms.basedata.master.unit.service.dao.Measureunit; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2024-03-25 +**/ +@Slf4j +@RestController +@RequestMapping("/api/measureunit") +public class MeasureunitController { + + @Autowired + private IMeasureunitService measureunitService; + + @GetMapping + @Log("查询计量单位") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(measureunitService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增计量单位") + public ResponseEntity create(@Validated @RequestBody Measureunit entity){ + measureunitService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改计量单位") + public ResponseEntity update(@Validated @RequestBody Measureunit entity){ + measureunitService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除计量单位") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + measureunitService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/IMeasureunitService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/IMeasureunitService.java new file mode 100644 index 0000000..5fcb503 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/IMeasureunitService.java @@ -0,0 +1,43 @@ +package org.nl.wms.basedata.master.unit.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.basedata.master.unit.service.dao.Measureunit; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2024-03-25 +**/ +public interface IMeasureunitService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(Measureunit entity); + + /** + * 编辑 + * @param entity / + */ + void update(Measureunit entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/Measureunit.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/Measureunit.java new file mode 100644 index 0000000..7976492 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/Measureunit.java @@ -0,0 +1,65 @@ +package org.nl.wms.basedata.master.unit.service.dao; + + import com.baomidou.mybatisplus.annotation.IdType; + import com.baomidou.mybatisplus.annotation.TableId; + import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + + import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2024-03-25 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("md_pb_measureunit") +public class Measureunit implements Serializable { + +private static final long serialVersionUID = 1L; + + @TableId(value = "measure_unit_id", type = IdType.NONE) + /** 计量单位标识 */ + private String measure_unit_id; + + /** 编码 */ + private String unit_code; + + /** 名称 */ + private String unit_name; + + /** 数据精度 */ + private BigDecimal qty_precision; + + /** 是否启用 */ + private String is_used; + + /** 创建人 */ + private String create_id; + + /** 创建人姓名 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_optid; + + /** 修改人姓名 */ + private String update_optname; + + /** 修改时间 */ + private String update_time; + + /** 是否删除 */ + private String is_delete; + + /** 外部标识 */ + private String ext_id; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/mapper/MeasureunitMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/mapper/MeasureunitMapper.java new file mode 100644 index 0000000..2cbdd36 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/mapper/MeasureunitMapper.java @@ -0,0 +1,12 @@ +package org.nl.wms.basedata.master.unit.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.basedata.master.unit.service.dao.Measureunit; + +/** +* @author lyd +* @date 2024-03-25 +**/ +public interface MeasureunitMapper extends BaseMapper { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/mapper/MeasureunitMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/mapper/MeasureunitMapper.xml new file mode 100644 index 0000000..b68f923 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dao/mapper/MeasureunitMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dto/MeasureunitDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dto/MeasureunitDto.java new file mode 100644 index 0000000..64b7481 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dto/MeasureunitDto.java @@ -0,0 +1,58 @@ +package org.nl.wms.basedata.master.unit.service.dto; + +import java.math.BigDecimal; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2024-03-25 +**/ +@Data +public class MeasureunitDto implements Serializable { + + /** 计量单位标识 */ + /** 防止精度丢失 */ + @JsonSerialize(using= ToStringSerializer.class) + private String measure_unit_id; + + /** 编码 */ + private String unit_code; + + /** 名称 */ + private String unit_name; + + /** 数据精度 */ + private BigDecimal qty_precision; + + /** 是否启用 */ + private String is_used; + + /** 创建人 */ + private String create_id; + + /** 创建人姓名 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_optid; + + /** 修改人姓名 */ + private String update_optname; + + /** 修改时间 */ + private String update_time; + + /** 是否删除 */ + private String is_delete; + + /** 外部标识 */ + private String ext_id; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dto/MeasureunitQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dto/MeasureunitQuery.java new file mode 100644 index 0000000..1679427 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/dto/MeasureunitQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.basedata.master.unit.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.basedata.master.unit.service.dao.Measureunit; + +/** +* @author lyd +* @date 2024-03-25 +**/ +public class MeasureunitQuery extends BaseQuery { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/impl/MeasureunitServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/impl/MeasureunitServiceImpl.java new file mode 100644 index 0000000..02add4e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/unit/service/impl/MeasureunitServiceImpl.java @@ -0,0 +1,85 @@ +package org.nl.wms.basedata.master.unit.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.language.LangProcess; +import org.nl.wms.basedata.master.unit.service.IMeasureunitService; +import org.nl.wms.basedata.master.unit.service.dao.Measureunit; +import org.nl.wms.basedata.master.unit.service.dao.mapper.MeasureunitMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务实现 +* @author lyd +* @date 2024-03-25 +**/ +@Slf4j +@Service +public class MeasureunitServiceImpl extends ServiceImpl implements IMeasureunitService { + + @Autowired + private MeasureunitMapper measureunitMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page){ + String o = ObjectUtil.isEmpty(whereJson.get("search")) ? null : (String)whereJson.get("search"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.like(o != null, Measureunit::getUnit_code, o) + .or(o != null) + .like(o != null, Measureunit::getUnit_name, o); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + measureunitMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(Measureunit entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setMeasure_unit_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_optid(currentUserId); + entity.setUpdate_optname(nickName); + entity.setUpdate_time(now); + measureunitMapper.insert(entity); + } + + @Override + public void update(Measureunit entity) { + Measureunit dto = measureunitMapper.selectById(entity.getMeasure_unit_id()); + if (dto == null) throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_optid(currentUserId); + entity.setUpdate_optname(nickName); + entity.setUpdate_time(now); + + measureunitMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + measureunitMapper.deleteBatchIds(ids); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/controller/StoragevehicleinfoController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/controller/StoragevehicleinfoController.java new file mode 100644 index 0000000..3f3492e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/controller/StoragevehicleinfoController.java @@ -0,0 +1,64 @@ +package org.nl.wms.basedata.master.vehicle.controller; + +import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.basedata.master.vehicle.service.IStoragevehicleinfoService; +import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo; +import org.nl.wms.basedata.master.vehicle.service.dto.StoragevehicleinfoQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2024-03-26 +**/ +@Slf4j +@RestController +@RequestMapping("/api/storagevehicleinfo") +public class StoragevehicleinfoController { + + @Autowired + private IStoragevehicleinfoService storagevehicleinfoService; + + @GetMapping + @Log("查询载具信息管理") + public ResponseEntity query(StoragevehicleinfoQuery whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(storagevehicleinfoService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增载具信息管理") + public ResponseEntity create(@Validated @RequestBody Storagevehicleinfo entity){ + storagevehicleinfoService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改载具信息管理") + public ResponseEntity update(@Validated @RequestBody Storagevehicleinfo entity){ + storagevehicleinfoService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除载具信息管理") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + storagevehicleinfoService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PutMapping("/changeActive") + @Log("修改点位启用状态") + public ResponseEntity changeActive(@RequestBody Storagevehicleinfo json) { + storagevehicleinfoService.changeActive(json); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/IStoragevehicleinfoService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/IStoragevehicleinfoService.java new file mode 100644 index 0000000..d4f864e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/IStoragevehicleinfoService.java @@ -0,0 +1,50 @@ +package org.nl.wms.basedata.master.vehicle.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo; +import org.nl.wms.basedata.master.vehicle.service.dto.StoragevehicleinfoQuery; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2024-03-26 +**/ +public interface IStoragevehicleinfoService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(StoragevehicleinfoQuery whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(Storagevehicleinfo entity); + + /** + * 编辑 + * @param entity / + */ + void update(Storagevehicleinfo entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); + + /** + * 启用/禁用 + * @param json + */ + void changeActive(Storagevehicleinfo json); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/Storagevehicleinfo.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/Storagevehicleinfo.java new file mode 100644 index 0000000..9b49fc2 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/Storagevehicleinfo.java @@ -0,0 +1,144 @@ +package org.nl.wms.basedata.master.vehicle.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * @author lyd + * @description / + * @date 2024-03-26 + **/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("md_pb_storagevehicleinfo") +public class Storagevehicleinfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "storagevehicle_id", type = IdType.NONE) + /** 载具标识 */ + private String storagevehicle_id; + + /** + * 载具编码 + */ + private String storagevehicle_code; + + /** + * 载具名称 + */ + private String storagevehicle_name; + + /** + * 一维码 + */ + private String one_code; + + /** + * 二维码 + */ + private String two_code; + + /** + * RFID编码 + */ + private String rfid_code; + + /** + * 创建人 + */ + private String create_id; + + /** + * 创建人姓名 + */ + private String create_name; + + /** + * 创建时间 + */ + private String create_time; + + /** + * 修改人 + */ + private String update_optid; + + /** + * 修改人姓名 + */ + private String update_optname; + + /** + * 修改时间 + */ + private String update_time; + + /** + * 是否删除 + */ + private String is_delete; + + /** + * 是否启用 + */ + private String is_used; + + /** + * 载具类型 + */ + private String storagevehicle_type; + + /** + * 载具宽度 + */ + private BigDecimal vehicle_width; + + /** + * 载具长度 + */ + private BigDecimal vehicle_long; + + /** + * 载具高度 + */ + private BigDecimal vehicle_height; + + /** + * 载具是否超仓位 + */ + private String overstruct_type; + + /** + * 占仓位数 + */ + private BigDecimal occupystruct_qty; + + /** + * 外部标识 + */ + private String ext_id; + + @TableField(exist = false) + private String material_code; + + @TableField(exist = false) + private String material_name; + + @TableField(exist = false) + private String point_code; + + @TableField(exist = false) + private String point_name; + + @TableField(exist = false) + private String storagevehicle_type_name; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/mapper/StoragevehicleinfoMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/mapper/StoragevehicleinfoMapper.java new file mode 100644 index 0000000..e42e4de --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/mapper/StoragevehicleinfoMapper.java @@ -0,0 +1,21 @@ +package org.nl.wms.basedata.master.vehicle.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo; +import org.nl.wms.basedata.master.vehicle.service.dto.StoragevehicleinfoQuery; + +/** +* @author lyd +* @date 2024-03-26 +**/ +public interface StoragevehicleinfoMapper extends BaseMapper { + + /** + * 左连接分页查询 + * @param pages 分页查询 + * @param queryObj 条件实体 + * @return 分页数据 + */ + IPage selectPageLeftJoin(IPage pages, StoragevehicleinfoQuery queryObj); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/mapper/StoragevehicleinfoMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/mapper/StoragevehicleinfoMapper.xml new file mode 100644 index 0000000..81818f3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dao/mapper/StoragevehicleinfoMapper.xml @@ -0,0 +1,34 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dto/StoragevehicleinfoDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dto/StoragevehicleinfoDto.java new file mode 100644 index 0000000..4c34bc1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dto/StoragevehicleinfoDto.java @@ -0,0 +1,82 @@ +package org.nl.wms.basedata.master.vehicle.service.dto; + +import java.math.BigDecimal; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2024-03-26 +**/ +@Data +public class StoragevehicleinfoDto implements Serializable { + + /** 载具标识 */ + /** 防止精度丢失 */ + @JsonSerialize(using= ToStringSerializer.class) + private Long storagevehicle_id; + + /** 载具编码 */ + private String storagevehicle_code; + + /** 载具名称 */ + private String storagevehicle_name; + + /** 一维码 */ + private String one_code; + + /** 二维码 */ + private String two_code; + + /** RFID编码 */ + private String rfid_code; + + /** 创建人 */ + private Long create_id; + + /** 创建人姓名 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private Long update_optid; + + /** 修改人姓名 */ + private String update_optname; + + /** 修改时间 */ + private String update_time; + + /** 是否删除 */ + private String is_delete; + + /** 是否启用 */ + private String is_used; + + /** 载具类型 */ + private String storagevehicle_type; + + /** 载具宽度 */ + private BigDecimal vehicle_width; + + /** 载具长度 */ + private BigDecimal vehicle_long; + + /** 载具高度 */ + private BigDecimal vehicle_height; + + /** 载具是否超仓位 */ + private String overstruct_type; + + /** 占仓位数 */ + private BigDecimal occupystruct_qty; + + /** 外部标识 */ + private String ext_id; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dto/StoragevehicleinfoQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dto/StoragevehicleinfoQuery.java new file mode 100644 index 0000000..9aaf39e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/dto/StoragevehicleinfoQuery.java @@ -0,0 +1,41 @@ +package org.nl.wms.basedata.master.vehicle.service.dto; + +import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo; + +import java.io.Serializable; +import java.util.ArrayList; + +/** +* @author lyd +* @date 2024-03-26 +**/ +public class StoragevehicleinfoQuery extends Storagevehicleinfo implements Serializable { + private String storagevehicle_code_begin; + private String storagevehicle_code_end; + + private ArrayList classIds; + + public String getStoragevehicle_code_begin() { + return storagevehicle_code_begin; + } + + public void setStoragevehicle_code_begin(String storagevehicle_code_begin) { + this.storagevehicle_code_begin = storagevehicle_code_begin; + } + + public String getStoragevehicle_code_end() { + return storagevehicle_code_end; + } + + public void setStoragevehicle_code_end(String storagevehicle_code_end) { + this.storagevehicle_code_end = storagevehicle_code_end; + } + + public ArrayList getClassIds() { + return classIds; + } + + public void setClassIds(ArrayList classIds) { + this.classIds = classIds; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/impl/StoragevehicleinfoServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/impl/StoragevehicleinfoServiceImpl.java new file mode 100644 index 0000000..4033b09 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/master/vehicle/service/impl/StoragevehicleinfoServiceImpl.java @@ -0,0 +1,110 @@ +package org.nl.wms.basedata.master.vehicle.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.config.language.LangProcess; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.basedata.master.classification.service.IMdBaseClassstandardService; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; +import org.nl.wms.basedata.master.vehicle.service.IStoragevehicleinfoService; +import org.nl.wms.basedata.master.vehicle.service.dao.mapper.StoragevehicleinfoMapper; +import org.nl.wms.basedata.master.vehicle.service.dao.Storagevehicleinfo; +import org.nl.wms.basedata.master.vehicle.service.dto.StoragevehicleinfoQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; + +/** +* @description 服务实现 +* @author lyd +* @date 2024-03-26 +**/ +@Slf4j +@Service +public class StoragevehicleinfoServiceImpl extends ServiceImpl implements IStoragevehicleinfoService { + + @Autowired + private StoragevehicleinfoMapper storagevehicleinfoMapper; + + @Autowired + private IMdBaseClassstandardService mdBaseClassstandardService; + + @Override + public IPage queryAll(StoragevehicleinfoQuery queryObj, PageQuery page) { + // 获取所有子集 + if (ObjectUtil.isNotEmpty(queryObj.getStoragevehicle_type())) { + ArrayList list = mdBaseClassstandardService.getAllChildrenIds(queryObj.getStoragevehicle_type()); + list.add(queryObj.getStoragevehicle_type()); + queryObj.setClassIds(list); + } + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + pages = storagevehicleinfoMapper.selectPageLeftJoin(pages, queryObj); + return pages; + } + + @Override + public void create(Storagevehicleinfo entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setStoragevehicle_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_optid(currentUserId); + entity.setUpdate_optname(nickName); + entity.setUpdate_time(now); + storagevehicleinfoMapper.insert(entity); + } + + @Override + public void update(Storagevehicleinfo entity) { + Storagevehicleinfo dto = storagevehicleinfoMapper.selectById(entity.getStoragevehicle_id()); + if (dto == null) throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_optid(currentUserId); + entity.setUpdate_optname(nickName); + entity.setUpdate_time(now); + + storagevehicleinfoMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + storagevehicleinfoMapper.deleteBatchIds(ids); + } + + @Override + public void changeActive(Storagevehicleinfo json) { + Storagevehicleinfo dto = storagevehicleinfoMapper.selectById(json.getStoragevehicle_id()); + if (dto == null) { + throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); + } + this.update(new UpdateWrapper().lambda() + .set(Storagevehicleinfo::getIs_used, "1".equals(json.getIs_used())?"0":"1") + .set(Storagevehicleinfo::getUpdate_optid, SecurityUtils.getCurrentUserId()) + .set(Storagevehicleinfo::getUpdate_optname, SecurityUtils.getCurrentUsername()) + .set(Storagevehicleinfo::getUpdate_time, DateUtil.now()) + .eq(Storagevehicleinfo::getStoragevehicle_id, json.getStoragevehicle_id())); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/controller/MdMeMaterialbaseController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/controller/MdMeMaterialbaseController.java new file mode 100644 index 0000000..cd9fc3e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/controller/MdMeMaterialbaseController.java @@ -0,0 +1,108 @@ +package org.nl.wms.basedata.material.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.basedata.material.dto.MdMeMaterialbaseParam; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; + + +/** + * {@code @Description:} 物料基本信息表(MdMeMaterialbase)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/mdMeMaterialbase") +@Slf4j +public class MdMeMaterialbaseController { + + + @Resource + private ImdMeMaterialbaseService mdMeMaterialbaseService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询物料基本信息表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(mdMeMaterialbaseService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询物料基本信息表") + public ResponseEntity selectList(@RequestBody MdMeMaterialbaseParam params) { + return new ResponseEntity<>(mdMeMaterialbaseService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增物料基本信息表") + public ResponseEntity create(@RequestBody MdMeMaterialbaseParam params) { + mdMeMaterialbaseService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改物料基本信息表") + //@SaCheckPermission("@el.check(MdMeMaterialbase:edit')") + public ResponseEntity update(@RequestBody MdMeMaterialbaseParam params) { + mdMeMaterialbaseService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除物料基本信息表") + //@SaCheckPermission("@el.check(MdMeMaterialbase:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + mdMeMaterialbaseService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/MdMeMaterialbase.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/MdMeMaterialbase.java new file mode 100644 index 0000000..73d6c35 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/MdMeMaterialbase.java @@ -0,0 +1,224 @@ +package org.nl.wms.basedata.material.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 物料基本信息表(MdMeMaterialbase)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("md_me_materialbase") +public class MdMeMaterialbase extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + + + + /** + * 物料标识 + */ + @TableId(type = IdType.ASSIGN_ID) + private String material_id; + + + /** + * 物料编码 + */ + private String material_code; + + + /** + * 物料名称 + */ + private String material_name; + + + /** + * 规格 + */ + private String material_spec; + + + /** + * 型号 + */ + private String material_model; + + + /** + * 外文名称 + */ + private String english_name; + + + /** + * 基本计量单位 + */ + private Long base_unit_id; + + + /** + * 辅助计量单位 + */ + private Long ass_unit_id; + + + /** + * 批准文号 + */ + private String approve_fileno; + + + /** + * 工程图号 + */ + private String print_no; + + + /** + * 物料分类标识 + */ + private Long material_type_id; + + + /** + * 长度单位 + */ + private Long len_unit_id; + + + /** + * 物料长度 + */ + private BigDecimal length; + + + /** + * 物料宽度 + */ + private BigDecimal width; + + + /** + * 物料高度 + */ + private BigDecimal height; + + + /** + * 重量单位 + */ + private Long weight_unit_id; + + + /** + * 物料毛重 + */ + private BigDecimal gross_weight; + + + /** + * 物料净重 + */ + private BigDecimal net_weight; + + + /** + * 体积单位 + */ + private Long cubage_unit_id; + + + /** + * 物料体积 + */ + private BigDecimal cubage; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人姓名 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人姓名 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 启用时间 + */ + private String is_used_time; + + + /** + * 是否启用 + */ + private String is_used; + + + /** + * 是否删除 + */ + private String is_delete; + + + /** + * 外部标识 + */ + private String ext_id; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.material_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/mapper/MdMeMaterialbaseMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/mapper/MdMeMaterialbaseMapper.java new file mode 100644 index 0000000..483f459 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/mapper/MdMeMaterialbaseMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.basedata.material.dao.mapper; + +import org.nl.wms.basedata.material.dao.MdMeMaterialbase; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 物料基本信息表(MdMeMaterialbase)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface MdMeMaterialbaseMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/xml/MdMeMaterialbaseMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/xml/MdMeMaterialbaseMapper.xml new file mode 100644 index 0000000..a367afc --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dao/xml/MdMeMaterialbaseMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dto/MdMeMaterialbaseDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dto/MdMeMaterialbaseDto.java new file mode 100644 index 0000000..2cf6af5 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dto/MdMeMaterialbaseDto.java @@ -0,0 +1,150 @@ +package org.nl.wms.basedata.material.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 物料基本信息表(MdMeMaterialbase)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class MdMeMaterialbaseDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 物料标识 + */ + private Long material_id; + /** + * 物料编码 + */ + private String material_code; + /** + * 物料名称 + */ + private String material_name; + /** + * 规格 + */ + private String material_spec; + /** + * 型号 + */ + private String material_model; + /** + * 外文名称 + */ + private String english_name; + /** + * 基本计量单位 + */ + private Long base_unit_id; + /** + * 辅助计量单位 + */ + private Long ass_unit_id; + /** + * 批准文号 + */ + private String approve_fileno; + /** + * 工程图号 + */ + private String print_no; + /** + * 物料分类标识 + */ + private Long material_type_id; + /** + * 长度单位 + */ + private Long len_unit_id; + /** + * 物料长度 + */ + private BigDecimal length; + /** + * 物料宽度 + */ + private BigDecimal width; + /** + * 物料高度 + */ + private BigDecimal height; + /** + * 重量单位 + */ + private Long weight_unit_id; + /** + * 物料毛重 + */ + private BigDecimal gross_weight; + /** + * 物料净重 + */ + private BigDecimal net_weight; + /** + * 体积单位 + */ + private Long cubage_unit_id; + /** + * 物料体积 + */ + private BigDecimal cubage; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 启用时间 + */ + private String is_used_time; + /** + * 是否启用 + */ + private String is_used; + /** + * 是否删除 + */ + private String is_delete; + /** + * 外部标识 + */ + private String ext_id; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dto/MdMeMaterialbaseParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dto/MdMeMaterialbaseParam.java new file mode 100644 index 0000000..220cbc7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/dto/MdMeMaterialbaseParam.java @@ -0,0 +1,145 @@ +package org.nl.wms.basedata.material.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.basedata.material.dao.MdMeMaterialbase; + +/** + * {@code @Description:} 物料基本信息表(MdMeMaterialbase)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class MdMeMaterialbaseParam extends BaseQuery { + /** + * 物料标识 + */ + private Long material_id; + /** + * 物料编码 + */ + private String material_code; + /** + * 物料名称 + */ + private String material_name; + /** + * 规格 + */ + private String material_spec; + /** + * 型号 + */ + private String material_model; + /** + * 外文名称 + */ + private String english_name; + /** + * 基本计量单位 + */ + private Long base_unit_id; + /** + * 辅助计量单位 + */ + private Long ass_unit_id; + /** + * 批准文号 + */ + private String approve_fileno; + /** + * 工程图号 + */ + private String print_no; + /** + * 物料分类标识 + */ + private Long material_type_id; + /** + * 长度单位 + */ + private Long len_unit_id; + /** + * 物料长度 + */ + private BigDecimal length; + /** + * 物料宽度 + */ + private BigDecimal width; + /** + * 物料高度 + */ + private BigDecimal height; + /** + * 重量单位 + */ + private Long weight_unit_id; + /** + * 物料毛重 + */ + private BigDecimal gross_weight; + /** + * 物料净重 + */ + private BigDecimal net_weight; + /** + * 体积单位 + */ + private Long cubage_unit_id; + /** + * 物料体积 + */ + private BigDecimal cubage; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 启用时间 + */ + private String is_used_time; + /** + * 是否启用 + */ + private String is_used; + /** + * 是否删除 + */ + private String is_delete; + /** + * 外部标识 + */ + private String ext_id; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/service/ImdMeMaterialbaseService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/service/ImdMeMaterialbaseService.java new file mode 100644 index 0000000..79d9449 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/service/ImdMeMaterialbaseService.java @@ -0,0 +1,65 @@ +package org.nl.wms.basedata.material.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.basedata.material.dao.MdMeMaterialbase; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.basedata.material.dto.MdMeMaterialbaseParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 物料基本信息表(MdMeMaterialbase)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface ImdMeMaterialbaseService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(MdMeMaterialbaseParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(MdMeMaterialbaseParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(MdMeMaterialbaseParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/service/impl/MdMeMaterialbaseServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/service/impl/MdMeMaterialbaseServiceImpl.java new file mode 100644 index 0000000..45bea5f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/material/service/impl/MdMeMaterialbaseServiceImpl.java @@ -0,0 +1,141 @@ +package org.nl.wms.basedata.material.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.basedata.material.dao.MdMeMaterialbase; +import org.nl.wms.basedata.material.dto.MdMeMaterialbaseParam; +import org.nl.wms.basedata.material.dao.mapper.MdMeMaterialbaseMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 物料基本信息表(MdMeMaterialbase)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("mdMeMaterialbaseService") +public class MdMeMaterialbaseServiceImpl extends ServiceImpl implements ImdMeMaterialbaseService { + + + @Resource + private MdMeMaterialbaseMapper mdMeMaterialbaseMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(MdMeMaterialbase::getName, whereJson.get("name")); + // } + //queryWrapper.orderByDesc(MdMeMaterialbase::getName); + return mdMeMaterialbaseMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(MdMeMaterialbaseParam params) { + return mdMeMaterialbaseMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), MdMeMaterialbase::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), MdMeMaterialbase::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(MdMeMaterialbaseParam params) { + mdMeMaterialbaseMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(MdMeMaterialbaseParam params) { + // MdMeMaterialbase dto = mdMeMaterialbaseMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + mdMeMaterialbaseMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + mdMeMaterialbaseMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private MdMeMaterialbase getBasicInfo(MdMeMaterialbaseParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + MdMeMaterialbase mdMeMaterialbase = new MdMeMaterialbase(); + BeanUtils.copyProperties(params, mdMeMaterialbase); + return mdMeMaterialbase; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/controller/MdBaseWorkshopController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/controller/MdBaseWorkshopController.java new file mode 100644 index 0000000..6b472de --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/controller/MdBaseWorkshopController.java @@ -0,0 +1,68 @@ +package org.nl.wms.basedata.workshop.controller; + + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.basedata.workshop.service.IMdBaseWorkshopService; +import org.nl.wms.basedata.workshop.service.dao.MdBaseWorkshop; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2023-05-05 +**/ +@Slf4j +@RestController +@RequestMapping("/api/mdBaseWorkshop") +public class MdBaseWorkshopController { + + @Autowired + private IMdBaseWorkshopService mdBaseWorkshopService; + + @GetMapping + @Log("查询车间基础信息") + + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(mdBaseWorkshopService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增车间基础信息") + + public ResponseEntity create(@Validated @RequestBody MdBaseWorkshop entity){ + mdBaseWorkshopService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改车间基础信息") + + public ResponseEntity update(@Validated @RequestBody MdBaseWorkshop entity){ + mdBaseWorkshopService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除车间基础信息") + + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + mdBaseWorkshopService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @GetMapping("/getWorkShopList") + @Log("获取车间下拉框") + + public ResponseEntity getWorkShopList(){ + return new ResponseEntity<>(mdBaseWorkshopService.getWorkShopList(),HttpStatus.OK); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/IMdBaseWorkshopService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/IMdBaseWorkshopService.java new file mode 100644 index 0000000..030e9e9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/IMdBaseWorkshopService.java @@ -0,0 +1,50 @@ +package org.nl.wms.basedata.workshop.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.basedata.workshop.service.dao.MdBaseWorkshop; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2023-05-05 +**/ +public interface IMdBaseWorkshopService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(MdBaseWorkshop entity); + + /** + * 编辑 + * @param entity / + */ + void update(MdBaseWorkshop entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); + + /** + * 获取车间下拉框 + * @return + */ + List getWorkShopList(); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/MdBaseWorkshop.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/MdBaseWorkshop.java new file mode 100644 index 0000000..91c9f41 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/MdBaseWorkshop.java @@ -0,0 +1,56 @@ +package org.nl.wms.basedata.workshop.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-05 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("md_base_workshop") +public class MdBaseWorkshop implements Serializable { + private static final long serialVersionUID = 1L; + @TableId(value = "workshop_code", type = IdType.NONE) + + private String workshop_code; + + + private String workshop_name; + + + private String remark; + + + private Boolean is_used; + + + private Boolean is_delete; + + + private String create_id; + + + private String create_name; + + + private String create_time; + + + private String update_id; + + + private String update_name; + + + private String update_time; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/mapper/MdBaseWorkshopMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/mapper/MdBaseWorkshopMapper.java new file mode 100644 index 0000000..41dac79 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/mapper/MdBaseWorkshopMapper.java @@ -0,0 +1,12 @@ +package org.nl.wms.basedata.workshop.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.basedata.workshop.service.dao.MdBaseWorkshop; + +/** +* @author lyd +* @date 2023-05-05 +**/ +public interface MdBaseWorkshopMapper extends BaseMapper { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/mapper/MdBaseWorkshopMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/mapper/MdBaseWorkshopMapper.xml new file mode 100644 index 0000000..5bfe0ab --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dao/mapper/MdBaseWorkshopMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dto/MdBaseWorkshopDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dto/MdBaseWorkshopDto.java new file mode 100644 index 0000000..2aa70a4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dto/MdBaseWorkshopDto.java @@ -0,0 +1,46 @@ +package org.nl.wms.basedata.workshop.service.dto; + +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-05 +**/ +@Data +public class MdBaseWorkshopDto implements Serializable { + + /** 车间编码 */ + private String workshop_code; + + /** 车间名称 */ + private String workshop_name; + + /** 备注 */ + private String remark; + + /** 是否启用 */ + private String is_used; + + /** 是否删除 */ + private String is_delete; + + /** 创建人 */ + private Long create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private Long update_id; + + /** 修改人 */ + private String update_name; + + /** 修改时间 */ + private String update_time; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dto/MdBaseWorkshopQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dto/MdBaseWorkshopQuery.java new file mode 100644 index 0000000..7b8302c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/dto/MdBaseWorkshopQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.basedata.workshop.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.basedata.workshop.service.dao.MdBaseWorkshop; + +/** +* @author lyd +* @date 2023-05-05 +**/ +public class MdBaseWorkshopQuery extends BaseQuery { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/impl/MdBaseWorkshopServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/impl/MdBaseWorkshopServiceImpl.java new file mode 100644 index 0000000..c22475d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata/workshop/service/impl/MdBaseWorkshopServiceImpl.java @@ -0,0 +1,82 @@ +package org.nl.wms.basedata.workshop.service.impl; + +import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.basedata.workshop.service.IMdBaseWorkshopService; +import org.nl.wms.basedata.workshop.service.dao.mapper.MdBaseWorkshopMapper; +import org.nl.wms.basedata.workshop.service.dao.MdBaseWorkshop; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** +* @description 服务实现 +* @author lyd +* @date 2023-05-05 +**/ +@Slf4j +@Service +public class MdBaseWorkshopServiceImpl extends ServiceImpl implements IMdBaseWorkshopService { + + @Autowired + private MdBaseWorkshopMapper mdBaseWorkshopMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page){ + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + mdBaseWorkshopMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(MdBaseWorkshop entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + mdBaseWorkshopMapper.insert(entity); + } + + @Override + public void update(MdBaseWorkshop entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + + mdBaseWorkshopMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + mdBaseWorkshopMapper.deleteBatchIds(ids); + } + + @Override + public List getWorkShopList() { + return mdBaseWorkshopMapper.selectList(new LambdaQueryWrapper() + .eq(MdBaseWorkshop::getIs_used, true) + .eq(MdBaseWorkshop::getIs_delete, false)); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/controller/AcsToWmsController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/controller/AcsToWmsController.java new file mode 100644 index 0000000..bb9d0e3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/controller/AcsToWmsController.java @@ -0,0 +1,36 @@ +package org.nl.wms.ext.acs.controller; + +import cn.dev33.satoken.annotation.SaIgnore; +import com.alibaba.fastjson.JSONObject; + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.ext.acs.service.AcsToWmsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Author: lyd + * @Description: acs请求lms接口 + * @Date: 2023/6/16 + */ +@RestController +@RequestMapping("/api/wms") +@Slf4j +public class AcsToWmsController { + @Autowired + private AcsToWmsService acsToWmsService; + + @PostMapping("/apply") + @SaIgnore + public ResponseEntity apply(@RequestBody JSONObject param) { + return new ResponseEntity<>(acsToWmsService.acsApply(param), HttpStatus.OK); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java new file mode 100644 index 0000000..298a9da --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java @@ -0,0 +1,33 @@ +package org.nl.wms.ext.acs.service; + +import com.alibaba.fastjson.JSONObject; +import org.nl.wms.ext.acs.service.dto.to.BaseResponse; +import org.nl.wms.ext.acs.service.dto.to.wms.ApplyTaskRequest; + +/** + * @Author: lyd + * @Description: acs请求wms + * @Date: 2023/6/26 + */ +public interface AcsToWmsService { + /** + * ACS请求接口 + * @param param + * @return BaseResponse + */ + BaseResponse acsApply(JSONObject param); + + /** + * 任务反馈 + * @param param + * @return BaseResponse + */ + BaseResponse feedbackTaskStatus(JSONObject param); + + /** + * 实时修改点位状态 + * @param param + * @return BaseResponse + */ + BaseResponse realTimeSetPoint(JSONObject param); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java new file mode 100644 index 0000000..c212fd4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java @@ -0,0 +1,23 @@ +package org.nl.wms.ext.acs.service; + +import org.nl.wms.ext.acs.service.dto.to.wms.AcsResponse; +import org.nl.wms.sch.task_manage.AcsTaskDto; + +import java.util.List; + +/** + * @Author: lyd + * @Description: Wms请求Acs,统一管理与ACS对接的接口 + * @Date: 2023/6/30 + */ +public interface WmsToAcsService { + + /** + * 下发任务 + * 统一在这里维护 + * @param list: 任务链表 + * @return + */ + AcsResponse renotifyAcs(List list); + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/ResultForAcs.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/ResultForAcs.java new file mode 100644 index 0000000..424377c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/ResultForAcs.java @@ -0,0 +1,46 @@ +package org.nl.wms.ext.acs.service.dto; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.http.HttpStatus; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.Data; + +/** + * @Author: lyd + * @Description: 统一接口返回 - 请求ACS返回的数据类型 - 以前不做处理的类型 + * @Date: 2023/7/28 + */ +@Data +public class ResultForAcs { + private int status; + private String message; + private String timestamp; + private JSONObject data; + private JSONArray errArr; + + public static ResultForAcs requestRefuse(String message) { + ResultForAcs result = new ResultForAcs(); + result.setStatus(HttpStatus.HTTP_BAD_REQUEST); + result.setMessage(message); + result.setTimestamp(DateUtil.now()); + return result; + } + + public static ResultForAcs requestOk() { + ResultForAcs result = new ResultForAcs(); + result.setStatus(HttpStatus.HTTP_OK); + result.setMessage("请求成功"); + result.setTimestamp(DateUtil.now()); + return result; + } + + public static ResultForAcs requestOk(String message, JSONObject data) { + ResultForAcs result = new ResultForAcs(); + result.setStatus(HttpStatus.HTTP_OK); + result.setMessage(message); + result.setTimestamp(DateUtil.now()); + result.setData(data); + return result; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/BaseRequest.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/BaseRequest.java new file mode 100644 index 0000000..5988882 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/BaseRequest.java @@ -0,0 +1,64 @@ +package org.nl.wms.ext.acs.service.dto.to; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import lombok.Data; + +import java.util.HashMap; +import java.util.Map; + +/** + *

+ * ACS请求基础实体 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Data +public class BaseRequest { + + /** + * 请求号:uuid 唯一,LMS需要返回对应值 + */ + private String requestNo; + + /** + * 请求时间 + */ + private String requestDate; + + /** + * 请求方法编号 + */ + private String request_medthod_code; + + /** + * 请求方法名称 + */ + private String request_medthod_name; + + /** + * 设备号 + */ + private String device_code; + + + /** + * 系统编号 + */ + private String systemCode; + + /** + * 扩展参数:砖型等 + */ + private Map parameters = new HashMap(); + + public static BaseRequest createRequest() { + BaseRequest baseRequest = new BaseRequest(); + baseRequest.setRequestNo(IdUtil.simpleUUID()); + baseRequest.setRequestDate(DateUtil.now()); + return baseRequest; + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/BaseResponse.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/BaseResponse.java new file mode 100644 index 0000000..9c0826c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/BaseResponse.java @@ -0,0 +1,105 @@ +package org.nl.wms.ext.acs.service.dto.to; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.http.HttpStatus; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; + +/** + *

+ * 返回参数 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class BaseResponse implements Serializable { + + /** + * 请求号 + */ + private String requestNo; + + /** + * 响应时间 + */ + private String responseDate; + + /** + * 结果 200成功 + */ + private int code; + + /** + * 信息 + */ + private String message; + + /** + * 扩展信息 + */ + private Map parameters = new HashMap(); + + public static BaseResponse build(String requestNo) { + BaseResponse response = new BaseResponse(); + response.setRequestNo(requestNo); + response.setCode(HttpStatus.HTTP_OK); + response.setMessage("请求成功"); + response.setResponseDate(DateUtil.now()); + return response; + } + + public static BaseResponse responseOk(String requestNo) { + BaseResponse response = new BaseResponse(); + response.setRequestNo(requestNo); + response.setCode(HttpStatus.HTTP_OK); + response.setMessage("请求成功"); + response.setResponseDate(DateUtil.now()); + return response; + } + public static BaseResponse responseOk(String requestNo, String message) { + BaseResponse response = new BaseResponse(); + response.setRequestNo(requestNo); + response.setCode(HttpStatus.HTTP_OK); + response.setMessage(message); + response.setResponseDate(DateUtil.now()); + return response; + } + public static BaseResponse responseOk(String requestNo, HashMap parameters) { + BaseResponse response = new BaseResponse(); + response.setRequestNo(requestNo); + response.setCode(HttpStatus.HTTP_OK); + response.setMessage("请求成功"); + response.setResponseDate(DateUtil.now()); + response.setParameters(parameters); + return response; + } + + public static BaseResponse responseError(String requestNo, String message) { + BaseResponse response = new BaseResponse(); + response.setRequestNo(requestNo); + response.setCode(HttpStatus.HTTP_BAD_REQUEST); + response.setMessage(message); + response.setResponseDate(DateUtil.now()); + return response; + } + public static BaseResponse responseError(String requestNo, int code, String message) { + BaseResponse response = new BaseResponse(); + response.setRequestNo(requestNo); + response.setCode(code); + response.setMessage(message); + response.setResponseDate(DateUtil.now()); + return response; + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/acs/IssueAcsRequest.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/acs/IssueAcsRequest.java new file mode 100644 index 0000000..7d8e1d6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/acs/IssueAcsRequest.java @@ -0,0 +1,30 @@ +package org.nl.wms.ext.acs.service.dto.to.acs; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import lombok.Data; +import org.nl.wms.ext.acs.service.dto.to.BaseRequest; + +import java.util.List; + +/** + * @Author: lyd + * @Description: 下发ACS实体类 + * @Date: 2023/7/26 + */ +@Data +public class IssueAcsRequest extends BaseRequest { + /** + * 类型根据泛型来定义 + */ + private List list = null; + + public static IssueAcsRequest buildRequestObj(String name, List list) { + IssueAcsRequest request = new IssueAcsRequest<>(); + request.setRequest_medthod_name(name); + request.setRequestNo(IdUtil.simpleUUID()); + request.setRequestDate(DateUtil.now()); + request.setList(list); + return request; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/AcsResponse.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/AcsResponse.java new file mode 100644 index 0000000..68cb703 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/AcsResponse.java @@ -0,0 +1,35 @@ +package org.nl.wms.ext.acs.service.dto.to.wms; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.http.HttpStatus; +import com.alibaba.fastjson.JSONArray; +import lombok.Data; +import org.nl.wms.ext.acs.service.dto.to.BaseResponse; + +/** + * @Author: lyd + * @Description: 下发acs的反馈数据*new + * @Date: 2023/7/26 + */ +@Data +public class AcsResponse extends BaseResponse { + private JSONArray errArr = new JSONArray(); + private JSONArray data = new JSONArray(); + + public static AcsResponse requestRefuse(String message) { + AcsResponse result = new AcsResponse(); + result.setCode(HttpStatus.HTTP_BAD_REQUEST); + result.setMessage(message); + result.setResponseDate(DateUtil.now()); + return result; + } + + public static AcsResponse requestOk() { + AcsResponse result = new AcsResponse(); + result.setCode(HttpStatus.HTTP_OK); + result.setMessage("请求成功"); + result.setResponseDate(DateUtil.now()); + return result; + } +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/ApplyTaskRequest.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/ApplyTaskRequest.java new file mode 100644 index 0000000..dba6e00 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/ApplyTaskRequest.java @@ -0,0 +1,47 @@ +package org.nl.wms.ext.acs.service.dto.to.wms; + +import lombok.Data; +import org.nl.wms.ext.acs.service.dto.to.BaseRequest; + +/** + *

+ * ACS 任务申请请求实体 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Data +public class ApplyTaskRequest extends BaseRequest { + + /** + * 载具号 + */ + private String vehicle_code; + + /** + * 载具类型 + */ + private String vehicle_type; + + /** + * 重量 + */ + private String weight; + + /** + * 工单号 + */ + private String order_code; + + /** + * 物料 + */ + private String material_code; + + /** + * 数量 + */ + private String qty; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/FeedBackTaskStatusRequest.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/FeedBackTaskStatusRequest.java new file mode 100644 index 0000000..552606b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/dto/to/wms/FeedBackTaskStatusRequest.java @@ -0,0 +1,54 @@ +package org.nl.wms.ext.acs.service.dto.to.wms; + +import com.alibaba.fastjson.JSONObject; +import lombok.Data; +import org.nl.wms.ext.acs.service.dto.to.BaseRequest; + +/** + *

+ * ACS任务反馈请求实体 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Data +public class FeedBackTaskStatusRequest extends BaseRequest { + + /** + * 任务id + */ + private String task_id; + + /** + * 任务code + */ + private JSONObject task_info; + + /** + * 任务状态 + */ + private String task_status; + + /** + * 任务类型 + */ + private String task_type; + + /** + * 车号 + */ + private String car_no; + + /** + * 载具号 + */ + private String vehicle_code; + + /** + * 动作 1请求取货 2取货完成 3请求放货 4放货完成 + */ + private String action; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java new file mode 100644 index 0000000..4e9ec71 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -0,0 +1,165 @@ +package org.nl.wms.ext.acs.service.impl; + +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpStatus; +import com.alibaba.fastjson.JSONObject; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.exception.BadRequestException; +import org.nl.config.language.LangProcess; +import org.nl.system.service.notice.ISysNoticeService; +import org.nl.wms.ext.acs.service.AcsToWmsService; +import org.nl.wms.ext.acs.service.dto.to.BaseResponse; +import org.nl.wms.ext.acs.service.dto.to.wms.FeedBackTaskStatusRequest; +import org.nl.wms.ext.record.service.ISysInteractRecordService; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.GeneralDefinition; +import org.nl.wms.sch.task_manage.enums.NoticeTypeEnum; +import org.nl.wms.sch.task_manage.task.TaskFactory; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.PostConstruct; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +/** + * @Author: lyd + * @Description: acs请求wms的实现类 + * @Date: 2023/6/26 + */ +@Slf4j +@Service +public class AcsToWmsServiceImpl implements AcsToWmsService { + + /** + * 将解析的整数与结果相乘 + */ + private Map methodCache = new ConcurrentHashMap<>(); + + @Autowired + private ISchBaseTaskService taskService; + @Autowired + private TaskFactory taskFactory; + @Autowired + private ISysNoticeService noticeService; + @Autowired + private ISysInteractRecordService interactRecordService; + + /** + * 初始化反射方法 + */ + @PostConstruct + public void initCacheMethod() { + for (Method method : this.getClass().getMethods()) { + if (method.getParameterCount() == 1 && method.getParameterTypes()[0] == JSONObject.class) { + methodCache.put(method.getName(), method); + } + } + } + + @Override + public BaseResponse acsApply(JSONObject param) { + String requestNo = param.getString("requestNo"); + String requestMethodName = param.getString("request_medthod_name"); + BaseResponse result = BaseResponse.build(requestNo); + try { + // 获取请求方法名 + String requestMethodCode = param.getString("request_medthod_code"); + Method method = methodCache.get(StrUtil.toCamelCase(requestMethodCode)); + if (method == null) { + throw new BadRequestException(LangProcess.msg("error_isNull",requestMethodCode)); + } + result = (BaseResponse) method.invoke(this, param); + } catch (Exception e) { + String message = ObjectUtil.isEmpty(e.getMessage()) + ? ((InvocationTargetException) e).getTargetException().getMessage() + : e.getMessage(); + log.error("ACS请求LMS出现错误: {}", message); + result.setCode(HttpStatus.HTTP_BAD_REQUEST); + result.setMessage(message); + result.setRequestNo(requestNo); + // 消息通知 + noticeService.createNotice("异常信息:" + message, "acsApply: " + param.getString("request_medthod_code"), + NoticeTypeEnum.EXCEPTION.getCode()); + } + // acs对接记录 + interactRecordService.saveRecord(requestMethodName, param, result, GeneralDefinition.ACS_LMS); + return result; + } + + /** + * 提前要料 + * + * @param param + * @return + */ + @Deprecated + @Transactional(rollbackFor = Exception.class) + public BaseResponse pressRequestMaterial2(JSONObject param) { + return null; + } + + /** + * 任务反馈 + */ + @Override + public BaseResponse feedbackTaskStatus(JSONObject param) { + // todo: action暂未维护 + String requestNo = param.getString("requestNo"); + FeedBackTaskStatusRequest taskStatusRequest = param.toJavaObject(FeedBackTaskStatusRequest.class); + JSONObject taskInfo = taskStatusRequest.getTask_info(); + if (ObjectUtil.isEmpty(taskInfo)) { + throw new BadRequestException("任务信息不能为空!"); + } + SchBaseTask taskObj = taskService.getByCode(taskInfo.getString("task_code")); + if (ObjectUtil.isEmpty(taskObj)) { + throw new BadRequestException("未找到任务编码为 [" + taskInfo.getString("task_code") + "] 的任务"); + } + // 任务处理类 + String processingClass = taskObj.getConfig_code(); + //1:执行中,2:完成 ,3:acs取消 + String acsTaskStatus = param.getString("task_status"); + String message = ""; + TaskStatus status = TaskStatus.APPLY; + switch (acsTaskStatus) { + case "1": + status = TaskStatus.EXECUTING; + break; + case "2": + status = TaskStatus.FINISHED; + break; + case "3": + status = TaskStatus.CANCELED; + break; + default: + break; + } + // 根据配置去工厂类获得类对象 + AbstractTask abstractTask = taskFactory.getTask(processingClass); + // 更新任务 + try { + abstractTask.updateTaskStatus(taskInfo, status); + } catch (Exception e) { + log.error("任务状态更新失败: {}", message); + return BaseResponse.responseError(requestNo, "任务:[" + taskInfo.getString("task_code") + "]状态更新失败," + message); + } + return BaseResponse.responseOk(requestNo, "任务状态反馈成功!"); + } + + /** + * 实时修改点位状态 + */ + @SneakyThrows + @Override + public BaseResponse realTimeSetPoint(JSONObject param) { + return null; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java new file mode 100644 index 0000000..e6a8c97 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java @@ -0,0 +1,36 @@ +package org.nl.wms.ext.acs.service.impl; + +import lombok.extern.slf4j.Slf4j; +import org.nl.wms.ext.acs.service.WmsToAcsService; +import org.nl.wms.ext.acs.service.dto.to.acs.IssueAcsRequest; +import org.nl.wms.ext.acs.service.dto.to.wms.AcsResponse; +import org.nl.wms.ext.record.service.ISysInteractRecordService; +import org.nl.wms.sch.task_manage.AcsTaskDto; +import org.nl.wms.sch.task_manage.GeneralDefinition; +import org.nl.wms.sch.task_manage.task.AcsUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @Author: lyd + * @Description: WMS请求ACS - 业务开发 + * @Date: 2023/6/30 + */ +@Slf4j +@Service +public class WmsToAcsServiceImpl implements WmsToAcsService { + @Autowired + private ISysInteractRecordService interactRecordService; + + @Override + public AcsResponse renotifyAcs(List list) { + String api = "api/wms/task"; + AcsResponse resultForAcs = AcsUtil.notifyAcs2(api, IssueAcsRequest.buildRequestObj("下发任务", list)); + // 记录日志 + interactRecordService.saveRecord("下发任务", list, resultForAcs, GeneralDefinition.LMS_ACS); + return resultForAcs; + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/controller/MesToWmsController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/controller/MesToWmsController.java new file mode 100644 index 0000000..abfce0c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/controller/MesToWmsController.java @@ -0,0 +1,31 @@ +package org.nl.wms.ext.mes.controller; + +import cn.dev33.satoken.annotation.SaIgnore; +import com.alibaba.fastjson.JSONObject; + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.ext.mes.service.MesToWmsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Author: lyd + * @Description: mes请求wms + * @Date: 2023/8/30 + */ +@RestController +@RequestMapping("/api/mes") +@Slf4j +@SaIgnore +public class MesToWmsController { + @Autowired + private MesToWmsService mesToWmsService; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/MesToWmsService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/MesToWmsService.java new file mode 100644 index 0000000..4b67424 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/MesToWmsService.java @@ -0,0 +1,11 @@ +package org.nl.wms.ext.mes.service; + +import com.alibaba.fastjson.JSONObject; + +/** + * @Author: lyd + * @Description: mes请求wms + * @Date: 2023/8/3 + */ +public interface MesToWmsService { +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/WmsToMesService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/WmsToMesService.java new file mode 100644 index 0000000..02db4cc --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/WmsToMesService.java @@ -0,0 +1,9 @@ +package org.nl.wms.ext.mes.service; + +/** + * @Author: lyd + * @Description: wms请求acs + * @Date: 2023/8/3 + */ +public interface WmsToMesService { +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/dto/ResultForMes.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/dto/ResultForMes.java new file mode 100644 index 0000000..67a16b8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/dto/ResultForMes.java @@ -0,0 +1,28 @@ +package org.nl.wms.ext.mes.service.dto; + +import cn.hutool.http.HttpStatus; +import lombok.Data; + +/** + * @Author: lyd + * @Description: mes反馈实体 + * @Date: 2023/9/6 + */ +@Data +public class ResultForMes { + private int status; + private String message; + public static ResultForMes requestRefuse(String message) { + ResultForMes result = new ResultForMes(); + result.setStatus(HttpStatus.HTTP_BAD_REQUEST); + result.setMessage(message); + return result; + } + + public static ResultForMes requestSuccess() { + ResultForMes result = new ResultForMes(); + result.setStatus(HttpStatus.HTTP_OK); + result.setMessage("请求成功"); + return result; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/impl/MesToWmsServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/impl/MesToWmsServiceImpl.java new file mode 100644 index 0000000..b4fa3f3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/impl/MesToWmsServiceImpl.java @@ -0,0 +1,16 @@ +package org.nl.wms.ext.mes.service.impl; + +import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; +import org.nl.wms.ext.mes.service.MesToWmsService; +import org.springframework.stereotype.Service; + +/** + * @Author: lyd + * @Description: + * @Date: 2023/8/3 + */ +@Slf4j +@Service +public class MesToWmsServiceImpl implements MesToWmsService { +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/impl/WmsToMesServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/impl/WmsToMesServiceImpl.java new file mode 100644 index 0000000..97fe2d8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/mes/service/impl/WmsToMesServiceImpl.java @@ -0,0 +1,16 @@ +package org.nl.wms.ext.mes.service.impl; + +import lombok.extern.slf4j.Slf4j; +import org.nl.wms.ext.mes.service.WmsToMesService; +import org.springframework.stereotype.Service; + +/** + * @Author: lyd + * @Description: wms请求mes的实现类 + * @Date: 2023/8/3 + */ +@Slf4j +@Service +public class WmsToMesServiceImpl implements WmsToMesService { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/controller/SysInteractRecordController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/controller/SysInteractRecordController.java new file mode 100644 index 0000000..e4f86b8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/controller/SysInteractRecordController.java @@ -0,0 +1,61 @@ +package org.nl.wms.ext.record.controller; + + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.ext.record.service.ISysInteractRecordService; +import org.nl.wms.ext.record.service.dao.SysInteractRecord; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2023-07-19 +**/ +@Slf4j +@RestController +@RequestMapping("/api/sysInteractRecord") +public class SysInteractRecordController { + + @Autowired + private ISysInteractRecordService sysInteractRecordService; + + @GetMapping + @Log("查询外部系统接口记录") + + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(sysInteractRecordService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增外部系统接口记录") + + public ResponseEntity create(@Validated @RequestBody SysInteractRecord entity){ + sysInteractRecordService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改外部系统接口记录") + + public ResponseEntity update(@Validated @RequestBody SysInteractRecord entity){ + sysInteractRecordService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除外部系统接口记录") + + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + sysInteractRecordService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/ISysInteractRecordService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/ISysInteractRecordService.java new file mode 100644 index 0000000..3c89f0d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/ISysInteractRecordService.java @@ -0,0 +1,75 @@ +package org.nl.wms.ext.record.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.system.service.param.dao.Param; +import org.nl.wms.ext.acs.service.dto.to.BaseResponse; +import org.nl.wms.ext.record.service.dao.SysInteractRecord; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2023-07-19 +**/ +public interface ISysInteractRecordService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(SysInteractRecord entity); + + /** + * 编辑 + * @param entity / + */ + void update(SysInteractRecord entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); + + /** + * 创建记录 + * @param request 、 + * @param response 、 + * @param direction 、 + */ + void saveRecord(Object request, BaseResponse response, String direction); + + /** + * 保存记录 + * @param name 、 + * @param request 、 + * @param response 、 + * @param direction 、 + */ + void saveRecord(String name, K request, V response, String direction); + + /** + * 删除 + * @param day 、 + */ + void deleteByDay(String day); + + /** + * 删除记录 + * @param maxRowsToKeep 最大保存容量 + * @param maxRowsToDelete 最大删除数 + */ + void deleteByRows(Param maxRowsToKeep, Param maxRowsToDelete); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/SysInteractRecord.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/SysInteractRecord.java new file mode 100644 index 0000000..bc84395 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/SysInteractRecord.java @@ -0,0 +1,52 @@ +package org.nl.wms.ext.record.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-07-19 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sys_interact_record") +public class SysInteractRecord implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "interact_id", type = IdType.NONE) + + private String interact_id; + + + private String interact_name; + + + private int code; + + + private String message; + + + private String request_param; + + + private String response_param; + + + private String record_time; + + + private String direction; + + + private Boolean is_success; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/mapper/SysInteractRecordMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/mapper/SysInteractRecordMapper.java new file mode 100644 index 0000000..a12a176 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/mapper/SysInteractRecordMapper.java @@ -0,0 +1,24 @@ +package org.nl.wms.ext.record.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.ext.record.service.dao.SysInteractRecord; + +/** +* @author lyd +* @date 2023-07-19 +**/ +public interface SysInteractRecordMapper extends BaseMapper { + + /** + * 删除 + * @param day / + */ + void deleteByDay(String day); + + /** + * 删除一行 + * @param maxRowsToKeep / + * @param maxRowsToDelete / + */ + void deleteByRows(String maxRowsToKeep, String maxRowsToDelete); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/mapper/SysInteractRecordMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/mapper/SysInteractRecordMapper.xml new file mode 100644 index 0000000..af5b747 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dao/mapper/SysInteractRecordMapper.xml @@ -0,0 +1,12 @@ + + + + + + DELETE FROM sys_interact_record + WHERE record_time DATE_SUB(NOW(), INTERVAL #{day} DAY); + + + CALL DeleteRowsIfNeeded(#{maxRowsToKeep}, #{maxRowsToDelete}) + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dto/SysInteractRecordDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dto/SysInteractRecordDto.java new file mode 100644 index 0000000..3939677 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dto/SysInteractRecordDto.java @@ -0,0 +1,40 @@ +package org.nl.wms.ext.record.service.dto; + +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-07-19 +**/ +@Data +public class SysInteractRecordDto implements Serializable { + + /** 对接标识 */ + private String interact_id; + + /** 对接编码 */ + private String interact_code; + + /** 响应编码 */ + private String code; + + /** 响应信息 */ + private String message; + + /** 请求报文 */ + private String request_param; + + /** 响应结果 */ + private String response_param; + + /** 记录时间 */ + private String record_time; + + /** 方向 */ + private String direction; + + /** 是否成功 */ + private Boolean is_success; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dto/SysInteractRecordQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dto/SysInteractRecordQuery.java new file mode 100644 index 0000000..3222808 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/dto/SysInteractRecordQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.ext.record.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.ext.record.service.dao.SysInteractRecord; + +/** +* @author lyd +* @date 2023-07-19 +**/ +public class SysInteractRecordQuery extends BaseQuery { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/impl/SysInteractRecordServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/impl/SysInteractRecordServiceImpl.java new file mode 100644 index 0000000..df2fc8a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/record/service/impl/SysInteractRecordServiceImpl.java @@ -0,0 +1,147 @@ +package org.nl.wms.ext.record.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.http.HttpStatus; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.config.language.LangProcess; +import org.nl.system.service.param.dao.Param; +import org.nl.wms.ext.acs.service.dto.ResultForAcs; +import org.nl.wms.ext.acs.service.dto.to.BaseResponse; +import org.nl.wms.ext.acs.service.dto.to.wms.AcsResponse; +import org.nl.wms.ext.mes.service.dto.ResultForMes; +import org.nl.wms.ext.record.service.ISysInteractRecordService; +import org.nl.wms.ext.record.service.dao.SysInteractRecord; +import org.nl.wms.ext.record.service.dao.mapper.SysInteractRecordMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.Map; +import java.util.Set; + +/** +* @description 服务实现 +* @author lyd +* @date 2023-07-19 +**/ +@Slf4j +@Service +public class SysInteractRecordServiceImpl extends ServiceImpl implements ISysInteractRecordService { + + @Autowired + private SysInteractRecordMapper sysInteractRecordMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page){ + String blurry = ObjectUtil.isNotEmpty(whereJson.get("blurry")) ? whereJson.get("blurry").toString() : null; + String interactDirection = ObjectUtil.isNotEmpty(whereJson.get("interact_direction")) ? whereJson.get("interact_direction").toString() : null; + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(interactDirection!=null, SysInteractRecord::getDirection, interactDirection) + .and(blurry != null, s -> s.like(SysInteractRecord::getInteract_name, blurry) + .or() + .like(SysInteractRecord::getMessage, blurry) + .or() + .like(SysInteractRecord::getRequest_param, blurry) + .or() + .like(SysInteractRecord::getResponse_param, blurry)); + lam.orderByDesc(SysInteractRecord::getRecord_time); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + sysInteractRecordMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(SysInteractRecord entity) { + + entity.setInteract_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + sysInteractRecordMapper.insert(entity); + } + + @Override + public void update(SysInteractRecord entity) { + SysInteractRecord dto = sysInteractRecordMapper.selectById(entity.getInteract_id()); + if (dto == null) throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); + sysInteractRecordMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + sysInteractRecordMapper.deleteBatchIds(ids); + } + + @Override + public void saveRecord(Object param, BaseResponse response, String direction) { + SysInteractRecord entity = new SysInteractRecord(); + entity.setInteract_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setInteract_name(response.getRequestNo()); + entity.setCode(response.getCode()); + entity.setMessage(response.getMessage()); + entity.setRecord_time(DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss.SSS")); + entity.setDirection(direction); + entity.setRequest_param(JSONObject.toJSONString(param)); + entity.setResponse_param(JSONObject.toJSONString(response)); + entity.setIs_success(response.getCode() == HttpStatus.HTTP_OK); + sysInteractRecordMapper.insert(entity); + } + + @Override + public void saveRecord(String name, K request, V response, String direction) { + SysInteractRecord entity = new SysInteractRecord(); + entity.setInteract_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setRecord_time(DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss.SSS")); + entity.setInteract_name(name); + entity.setDirection(direction); + entity.setRequest_param(JSONObject.toJSONString(request)); + entity.setResponse_param(JSONObject.toJSONString(response)); + // acs请求wms的返回数据 + if (response instanceof BaseResponse) { + BaseResponse re = (BaseResponse) response; + entity.setCode(re.getCode()); + entity.setMessage(re.getMessage()); + entity.setIs_success(re.getCode() == HttpStatus.HTTP_OK); + } + // wms请求acs的返回数据 + if (response instanceof ResultForAcs) { + ResultForAcs re = (ResultForAcs) response; + entity.setCode(re.getStatus()); + entity.setMessage(re.getMessage()); + entity.setIs_success(re.getStatus() == HttpStatus.HTTP_OK); + } + // wms请求acs的返回数据 + if (response instanceof AcsResponse) { + AcsResponse re = (AcsResponse) response; + entity.setCode(re.getCode()); + entity.setMessage(re.getMessage()); + entity.setIs_success(re.getCode() == HttpStatus.HTTP_OK); + } + // wms请求mes的返回数据 + if (response instanceof ResultForMes) { + ResultForMes re = (ResultForMes) response; + entity.setCode(re.getStatus()); + entity.setMessage(re.getMessage()); + entity.setIs_success(re.getStatus() == HttpStatus.HTTP_OK); + } + sysInteractRecordMapper.insert(entity); + } + + @Override + public void deleteByDay(String day) { + sysInteractRecordMapper.deleteByDay(day); + } + + @Override + public void deleteByRows(Param maxRowsToKeep, Param maxRowsToDelete) { + sysInteractRecordMapper.deleteByRows(maxRowsToKeep.getValue(), maxRowsToDelete.getValue()); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/controller/MdPbInterfacebackController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/controller/MdPbInterfacebackController.java new file mode 100644 index 0000000..9039c12 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/controller/MdPbInterfacebackController.java @@ -0,0 +1,111 @@ +package org.nl.wms.md.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.md.dto.MdPbInterfacebackParam; +import org.nl.wms.md.service.ImdPbInterfacebackService; + + +/** + * {@code @Description:} 接口回传设置表(MdPbInterfaceback)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-16 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/mdPbInterfaceback") +@Slf4j +public class MdPbInterfacebackController { + + + @Resource + private ImdPbInterfacebackService mdPbInterfacebackService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询接口回传设置表") + //@SaCheckPermission("@el.check(MdPbInterfaceback:list") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(mdPbInterfacebackService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询接口回传设置表") + //@SaCheckPermission("@el.check(MdPbInterfaceback:list") + public ResponseEntity selectList(@RequestBody MdPbInterfacebackParam params) { + return new ResponseEntity<>(mdPbInterfacebackService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增接口回传设置表") + //@SaCheckPermission("@el.check(MdPbInterfaceback:add") + public ResponseEntity create(@RequestBody MdPbInterfacebackParam params) { + mdPbInterfacebackService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改接口回传设置表") + //@SaCheckPermission("@el.check(MdPbInterfaceback:edit')") + public ResponseEntity update(@RequestBody MdPbInterfacebackParam params) { + mdPbInterfacebackService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除接口回传设置表") + //@SaCheckPermission("@el.check(MdPbInterfaceback:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + mdPbInterfacebackService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/MdPbInterfaceback.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/MdPbInterfaceback.java new file mode 100644 index 0000000..8165374 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/MdPbInterfaceback.java @@ -0,0 +1,82 @@ +package org.nl.wms.md.dao; + +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 接口回传设置表(MdPbInterfaceback)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-16 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("md_pb_interfaceback") +public class MdPbInterfaceback extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 标识 + */ + private Long interface_id; + + + /** + * 类型 + */ + private String interface_type; + + + /** + * 接口名称 + */ + private String interface_name; + + + /** + * 接口描述 + */ + private String remark; + + + /** + * 是否回传 + */ + private String is_back; + + + /** + * 业务说明 + */ + private String business_comment; + + + /** + * 回传区域 + */ + private String product_area; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.interface_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/mapper/MdPbInterfacebackMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/mapper/MdPbInterfacebackMapper.java new file mode 100644 index 0000000..88e8d5f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/mapper/MdPbInterfacebackMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.md.dao.mapper; + +import org.nl.wms.md.dao.MdPbInterfaceback; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 接口回传设置表(MdPbInterfaceback)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-16 + */ +public interface MdPbInterfacebackMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/xml/MdPbInterfacebackMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/xml/MdPbInterfacebackMapper.xml new file mode 100644 index 0000000..54523b6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dao/xml/MdPbInterfacebackMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dto/MdPbInterfacebackDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dto/MdPbInterfacebackDto.java new file mode 100644 index 0000000..cc02c9a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dto/MdPbInterfacebackDto.java @@ -0,0 +1,57 @@ +package org.nl.wms.md.dto; + +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 接口回传设置表(MdPbInterfaceback)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-16 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class MdPbInterfacebackDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 标识 + */ + private Long interface_id; + /** + * 类型 + */ + private String interface_type; + /** + * 接口名称 + */ + private String interface_name; + /** + * 接口描述 + */ + private String remark; + /** + * 是否回传 + */ + private String is_back; + /** + * 业务说明 + */ + private String business_comment; + /** + * 回传区域 + */ + private String product_area; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dto/MdPbInterfacebackParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dto/MdPbInterfacebackParam.java new file mode 100644 index 0000000..76ebccd --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/dto/MdPbInterfacebackParam.java @@ -0,0 +1,51 @@ +package org.nl.wms.md.dto; + + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.md.dao.MdPbInterfaceback; + +/** + * {@code @Description:} 接口回传设置表(MdPbInterfaceback)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-16 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class MdPbInterfacebackParam extends BaseQuery { + /** + * 标识 + */ + private Long interface_id; + /** + * 类型 + */ + private String interface_type; + /** + * 接口名称 + */ + private String interface_name; + /** + * 接口描述 + */ + private String remark; + /** + * 是否回传 + */ + private String is_back; + /** + * 业务说明 + */ + private String business_comment; + /** + * 回传区域 + */ + private String product_area; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/service/ImdPbInterfacebackService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/service/ImdPbInterfacebackService.java new file mode 100644 index 0000000..ee4ac45 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/service/ImdPbInterfacebackService.java @@ -0,0 +1,65 @@ +package org.nl.wms.md.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.md.dao.MdPbInterfaceback; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.md.dto.MdPbInterfacebackParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 接口回传设置表(MdPbInterfaceback)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-16 + */ +public interface ImdPbInterfacebackService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(MdPbInterfacebackParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(MdPbInterfacebackParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(MdPbInterfacebackParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/service/impl/MdPbInterfacebackServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/service/impl/MdPbInterfacebackServiceImpl.java new file mode 100644 index 0000000..2ebafd5 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/md/service/impl/MdPbInterfacebackServiceImpl.java @@ -0,0 +1,144 @@ +package org.nl.wms.md.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.md.dao.MdPbInterfaceback; +import org.nl.wms.md.dto.MdPbInterfacebackParam; +import org.nl.wms.md.dao.mapper.MdPbInterfacebackMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.md.service.ImdPbInterfacebackService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 接口回传设置表(MdPbInterfaceback)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-16 + */ +@Service("mdPbInterfacebackService") +public class MdPbInterfacebackServiceImpl extends ServiceImpl implements ImdPbInterfacebackService { + + + @Resource + private MdPbInterfacebackMapper mdPbInterfacebackMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(MdPbInterfaceback::getName, whereJson.get("name")); + // } + //queryWrapper.eq(MdPbInterfaceback::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(MdPbInterfaceback::getName); + return mdPbInterfacebackMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(MdPbInterfacebackParam params) { + return mdPbInterfacebackMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), MdPbInterfaceback::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), MdPbInterfaceback::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(MdPbInterfacebackParam params) { + mdPbInterfacebackMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(MdPbInterfacebackParam params) { + // MdPbInterfaceback dto = mdPbInterfacebackMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + mdPbInterfacebackMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + mdPbInterfacebackMapper.update(null, updateWrapper); + //mdPbInterfacebackMapper.deleteBatchIds(ids); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private MdPbInterfaceback getBasicInfo(MdPbInterfacebackParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + MdPbInterfaceback mdPbInterfaceback = new MdPbInterfaceback(); + BeanUtils.copyProperties(params, mdPbInterfaceback); + return mdPbInterfaceback; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/controller/PdmBiRawfoilworkorderController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/controller/PdmBiRawfoilworkorderController.java new file mode 100644 index 0000000..daa3026 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/controller/PdmBiRawfoilworkorderController.java @@ -0,0 +1,123 @@ +package org.nl.wms.pdm.bi.controller; + +import java.util.Set; +import java.util.Map; + +import com.alibaba.fastjson.JSONObject; +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.bi.dto.PdmBiRawfoilworkorderParam; +import org.nl.wms.pdm.bi.service.IpdmBiRawfoilworkorderService; + + +/** + * {@code @Description:} 生箔工序工单(PdmBiRawfoilworkorder)控制层 + * {@code @Author:} gbx + * + * @since 2024-03-28 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/rawfoilworkorder") +@Slf4j +public class PdmBiRawfoilworkorderController { + + + @Resource + private IpdmBiRawfoilworkorderService pdmBiRawfoilworkorderService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询生箔工序工单") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(pdmBiRawfoilworkorderService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询生箔工序工单") + public ResponseEntity selectList(@RequestBody PdmBiRawfoilworkorderParam params) { + return new ResponseEntity<>(pdmBiRawfoilworkorderService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增生箔工序工单") + public ResponseEntity create(@RequestBody PdmBiRawfoilworkorderParam params) { + pdmBiRawfoilworkorderService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改生箔工序工单") + //@SaCheckPermission("@el.check(PdmBiRawfoilworkorder:edit')") + public ResponseEntity update(@RequestBody PdmBiRawfoilworkorderParam params) { + pdmBiRawfoilworkorderService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除生箔工序工单") + //@SaCheckPermission("@el.check(PdmBiRawfoilworkorder:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + pdmBiRawfoilworkorderService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + + @Log("称重") + @PostMapping("/confirm") + public ResponseEntity confirm(@RequestBody JSONObject whereJson) { + pdmBiRawfoilworkorderService.confirm(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @Log("强制确认") + @PostMapping("/compelEnd") + public ResponseEntity compelEnd(@RequestBody JSONObject whereJson) { + pdmBiRawfoilworkorderService.compelEnd(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/controller/PdmBiSlittingproductionplanController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/controller/PdmBiSlittingproductionplanController.java new file mode 100644 index 0000000..e0bf906 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/controller/PdmBiSlittingproductionplanController.java @@ -0,0 +1,149 @@ +package org.nl.wms.pdm.bi.controller; + +import java.util.Set; +import java.util.Map; + +import com.alibaba.fastjson.JSONObject; +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.bi.dto.PdmBiSlittingproductionplanParam; +import org.nl.wms.pdm.bi.service.IpdmBiSlittingproductionplanService; + + +/** + * {@code @Description:} 分切生产计划(PdmBiSlittingproductionplan)控制层 + * {@code @Author:} gbx + * + * @since 2024-03-28 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/slittingproductionplan") +@Slf4j +public class PdmBiSlittingproductionplanController { + + + @Resource + private IpdmBiSlittingproductionplanService pdmBiSlittingproductionplanService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询分切生产计划") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(pdmBiSlittingproductionplanService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询分切生产计划") + public ResponseEntity selectList(@RequestBody PdmBiSlittingproductionplanParam params) { + return new ResponseEntity<>(pdmBiSlittingproductionplanService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增分切生产计划") + public ResponseEntity create(@RequestBody PdmBiSlittingproductionplanParam params) { + pdmBiSlittingproductionplanService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改分切生产计划") + //@SaCheckPermission("@el.check(PdmBiSlittingproductionplan:edit')") + public ResponseEntity update(@RequestBody PdmBiSlittingproductionplanParam params) { + pdmBiSlittingproductionplanService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除分切生产计划") + //@SaCheckPermission("@el.check(PdmBiSlittingproductionplan:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + pdmBiSlittingproductionplanService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + + @Log("上料完成") + + @PostMapping("/upMaterFinish") + public ResponseEntity upMaterFinish(@RequestBody JSONObject whereJson) { + pdmBiSlittingproductionplanService.upMaterFinish(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @Log("套管完成") + + @PostMapping("/caseFinish") + public ResponseEntity caseFinish(@RequestBody JSONObject whereJson) { + pdmBiSlittingproductionplanService.caseFinish(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @Log("配送完成") + + @PostMapping("/sendFinish") + public ResponseEntity sendFinish(@RequestBody JSONObject whereJson) { + pdmBiSlittingproductionplanService.sendFinish(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @Log("入站完成") + + @PostMapping("/inFinish") + public ResponseEntity inFinish(@RequestBody JSONObject whereJson) { + pdmBiSlittingproductionplanService.inFinish(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @Log("强制完成") + + @PostMapping("/compelFinish") + public ResponseEntity compelFinish(@RequestBody JSONObject whereJson) { + pdmBiSlittingproductionplanService.compelFinish(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/PdmBiRawfoilworkorder.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/PdmBiRawfoilworkorder.java new file mode 100644 index 0000000..b20a499 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/PdmBiRawfoilworkorder.java @@ -0,0 +1,212 @@ +package org.nl.wms.pdm.bi.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 生箔工序工单(PdmBiRawfoilworkorder)实体类 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("pdm_bi_rawfoilworkorder") +public class PdmBiRawfoilworkorder extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + + + + /** + * 工单标识 + */ + @TableId(type = IdType.ASSIGN_ID) + private String workorder_id; + + + /** + * 母卷号 + */ + private String container_name; + + + /** + * 机台编码 + */ + private String resource_name; + + + /** + * 生产工单 + */ + private String mfg_order_name; + + + /** + * 产品编码 + */ + private String product_name; + + + /** + * 产品名称 + */ + private String description; + + + /** + * 理论长度 + */ + private BigDecimal theory_height; + + + /** + * 设备生产速度 + */ + private BigDecimal eqp_velocity; + + + /** + * 上卷开始时间 + */ + private String up_coiler_date; + + + /** + * 是否重新更新 + */ + private String is_reload_send; + + + /** + * 重量 + */ + private BigDecimal productin_qty; + + + /** + * 开始时间 + */ + private String realstart_time; + + + /** + * 结束时间 + */ + private String realend_time; + + + /** + * 状态 + */ + private String status; + + + /** + * 完成方式 + */ + private String finish_type; + + + /** + * 车号 + */ + private String agvno; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 是否删除 + */ + private String is_delete; + + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 点位编码 + */ + private String point_code; + + + /** + * 请求烘烤 + */ + private String is_baking; + + + /** + * 请求入半成品库 + */ + private String is_instor; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.workorder_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/PdmBiSlittingproductionplan.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/PdmBiSlittingproductionplan.java new file mode 100644 index 0000000..d9fe80b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/PdmBiSlittingproductionplan.java @@ -0,0 +1,318 @@ +package org.nl.wms.pdm.bi.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 分切生产计划(PdmBiSlittingproductionplan)实体类 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("pdm_bi_slittingproductionplan") +public class PdmBiSlittingproductionplan extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + + + + /** + * 分切计划标识 + */ + @TableId(type = IdType.ASSIGN_ID) + private String workorder_id; + + + /** + * 分切订单类型 + */ + private String order_type; + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 子卷号 + */ + private String container_name; + + + /** + * 产品编码 + */ + private String product_name; + + + /** + * 产品描述 + */ + private String description; + + + /** + * 来源母卷号 + */ + private String parent_container_name; + + + /** + * 改制来源子卷号 + */ + private String restruct_container_name; + + + /** + * 子卷立库木箱号 + */ + private String package_box_sn; + + + /** + * 来源卷位置 + */ + private String ware_house; + + + /** + * 分切机台编码 + */ + private String resource_name; + + + /** + * 分切组 + */ + private String split_group; + + + /** + * 生产顺序 + */ + private String manufacture_sort; + + + /** + * 生产订单 + */ + private String mfg_order_name; + + + /** + * 生产日期 + */ + private String manufacture_date; + + + /** + * 管件类型 + */ + private String paper_tube_or_FRP; + + + /** + * 纸筒物料编码 + */ + private String paper_tube_material; + + + /** + * 纸筒物料描述 + */ + private String paper_tube_description; + + + /** + * 纸筒规格 + */ + private String paper_tube_model; + + + /** + * FRP管物料编码 + */ + private String FRP_material; + + + /** + * FRP管物料描述 + */ + private String FRP_description; + + + /** + * FRP管规格 + */ + private String FRP_model; + + + /** + * 子卷幅宽 + */ + private BigDecimal split_breadth; + + + /** + * 子卷理论长度 + */ + private BigDecimal split_height; + + + /** + * 子卷理论重量 + */ + private BigDecimal split_weight; + + + /** + * 开始时间 + */ + private String start_time; + + + /** + * 结束时间 + */ + private String end_time; + + + /** + * 状态 + */ + private String status; + + + /** + * 上料完成 + */ + private String is_parent_ok; + + + /** + * 子卷套轴完成 + */ + private String is_child_tz_ok; + + + /** + * 子卷配送完成 + */ + private String is_child_ps_ok; + + + /** + * 气涨轴编码 + */ + private String qzzno; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人姓名 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 部门ID + */ + private Long sysdeptid; + + + /** + * 公司ID + */ + private Long syscompanyid; + + + /** + * 是否删除 + */ + private String is_delete; + + + /** + * 销售订单及行号 + */ + private String sale_order_name; + + + /** + * 是否呼叫 + */ + private String is_call; + + + /** + * 呼叫时间 + */ + private String call_time; + + + /** + * 是否呼叫纸管 + */ + private String is_paper_ok; + + + /** + * 气涨轴规格 + */ + private String qzz_size; + + + /** + * 上下 + */ + private String up_or_down; + + + /** + * 左右 + */ + private String left_or_right; + + + /** + * 子卷等级 + */ + private String level; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.workorder_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/mapper/PdmBiRawfoilworkorderMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/mapper/PdmBiRawfoilworkorderMapper.java new file mode 100644 index 0000000..397938a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/mapper/PdmBiRawfoilworkorderMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.bi.dao.mapper; + +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 生箔工序工单(PdmBiRawfoilworkorder)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +public interface PdmBiRawfoilworkorderMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/mapper/PdmBiSlittingproductionplanMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/mapper/PdmBiSlittingproductionplanMapper.java new file mode 100644 index 0000000..b49cc7a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/mapper/PdmBiSlittingproductionplanMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.bi.dao.mapper; + +import org.nl.wms.pdm.bi.dao.PdmBiSlittingproductionplan; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 分切生产计划(PdmBiSlittingproductionplan)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +public interface PdmBiSlittingproductionplanMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/xml/PdmBiRawfoilworkorderMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/xml/PdmBiRawfoilworkorderMapper.xml new file mode 100644 index 0000000..87e0b0b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/xml/PdmBiRawfoilworkorderMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/xml/PdmBiSlittingproductionplanMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/xml/PdmBiSlittingproductionplanMapper.xml new file mode 100644 index 0000000..e43c47a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dao/xml/PdmBiSlittingproductionplanMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiRawfoilworkorderDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiRawfoilworkorderDto.java new file mode 100644 index 0000000..98432a6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiRawfoilworkorderDto.java @@ -0,0 +1,142 @@ +package org.nl.wms.pdm.bi.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 生箔工序工单(PdmBiRawfoilworkorder)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PdmBiRawfoilworkorderDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 工单标识 + */ + private Long workorder_id; + /** + * 母卷号 + */ + private String container_name; + /** + * 机台编码 + */ + private String resource_name; + /** + * 生产工单 + */ + private String mfg_order_name; + /** + * 产品编码 + */ + private String product_name; + /** + * 产品名称 + */ + private String description; + /** + * 理论长度 + */ + private BigDecimal theory_height; + /** + * 设备生产速度 + */ + private BigDecimal eqp_velocity; + /** + * 上卷开始时间 + */ + private String up_coiler_date; + /** + * 是否重新更新 + */ + private String is_reload_send; + /** + * 重量 + */ + private BigDecimal productin_qty; + /** + * 开始时间 + */ + private String realstart_time; + /** + * 结束时间 + */ + private String realend_time; + /** + * 状态 + */ + private String status; + /** + * 完成方式 + */ + private String finish_type; + /** + * 车号 + */ + private String agvno; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 是否删除 + */ + private String is_delete; + /** + * 生产区域 + */ + private String product_area; + /** + * 点位编码 + */ + private String point_code; + /** + * 请求烘烤 + */ + private String is_baking; + /** + * 请求入半成品库 + */ + private String is_instor; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiRawfoilworkorderParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiRawfoilworkorderParam.java new file mode 100644 index 0000000..61cd752 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiRawfoilworkorderParam.java @@ -0,0 +1,137 @@ +package org.nl.wms.pdm.bi.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; + +/** + * {@code @Description:} 生箔工序工单(PdmBiRawfoilworkorder)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class PdmBiRawfoilworkorderParam extends BaseQuery { + /** + * 工单标识 + */ + private String workorder_id; + /** + * 母卷号 + */ + private String container_name; + /** + * 机台编码 + */ + private String resource_name; + /** + * 生产工单 + */ + private String mfg_order_name; + /** + * 产品编码 + */ + private String product_name; + /** + * 产品名称 + */ + private String description; + /** + * 理论长度 + */ + private BigDecimal theory_height; + /** + * 设备生产速度 + */ + private BigDecimal eqp_velocity; + /** + * 上卷开始时间 + */ + private String up_coiler_date; + /** + * 是否重新更新 + */ + private String is_reload_send; + /** + * 重量 + */ + private BigDecimal productin_qty; + /** + * 开始时间 + */ + private String realstart_time; + /** + * 结束时间 + */ + private String realend_time; + /** + * 状态 + */ + private String status; + /** + * 完成方式 + */ + private String finish_type; + /** + * 车号 + */ + private String agvno; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 是否删除 + */ + private String is_delete; + /** + * 生产区域 + */ + private String product_area; + /** + * 点位编码 + */ + private String point_code; + /** + * 请求烘烤 + */ + private String is_baking; + /** + * 请求入半成品库 + */ + private String is_instor; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiSlittingproductionplanDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiSlittingproductionplanDto.java new file mode 100644 index 0000000..0d7b142 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiSlittingproductionplanDto.java @@ -0,0 +1,210 @@ +package org.nl.wms.pdm.bi.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 分切生产计划(PdmBiSlittingproductionplan)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PdmBiSlittingproductionplanDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 分切计划标识 + */ + private Long workorder_id; + /** + * 分切订单类型 + */ + private String order_type; + /** + * 子卷号 + */ + private String container_name; + /** + * 产品编码 + */ + private String product_name; + /** + * 产品描述 + */ + private String description; + /** + * 来源母卷号 + */ + private String parent_container_name; + /** + * 改制来源子卷号 + */ + private String restruct_container_name; + /** + * 子卷立库木箱号 + */ + private String package_box_sn; + /** + * 来源卷位置 + */ + private String ware_house; + /** + * 分切机台编码 + */ + private String resource_name; + /** + * 分切组 + */ + private String split_group; + /** + * 生产顺序 + */ + private String manufacture_sort; + /** + * 生产订单 + */ + private String mfg_order_name; + /** + * 生产日期 + */ + private String manufacture_date; + /** + * 管件类型 + */ + private String paper_tube_or_FRP; + /** + * 纸筒物料编码 + */ + private String paper_tube_material; + /** + * 纸筒物料描述 + */ + private String paper_tube_description; + /** + * 纸筒规格 + */ + private String paper_tube_model; + /** + * FRP管物料编码 + */ + private String FRP_material; + /** + * FRP管物料描述 + */ + private String FRP_description; + /** + * FRP管规格 + */ + private String FRP_model; + /** + * 子卷幅宽 + */ + private BigDecimal split_breadth; + /** + * 子卷理论长度 + */ + private BigDecimal split_height; + /** + * 子卷理论重量 + */ + private BigDecimal split_weight; + /** + * 开始时间 + */ + private String start_time; + /** + * 结束时间 + */ + private String end_time; + /** + * 状态 + */ + private String status; + /** + * 上料完成 + */ + private String is_parent_ok; + /** + * 子卷套轴完成 + */ + private String is_child_tz_ok; + /** + * 子卷配送完成 + */ + private String is_child_ps_ok; + /** + * 气涨轴编码 + */ + private String qzzno; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 部门ID + */ + private Long sysdeptid; + /** + * 公司ID + */ + private Long syscompanyid; + /** + * 是否删除 + */ + private String is_delete; + /** + * 销售订单及行号 + */ + private String sale_order_name; + /** + * 是否呼叫 + */ + private String is_call; + /** + * 呼叫时间 + */ + private String call_time; + /** + * 是否呼叫纸管 + */ + private String is_paper_ok; + /** + * 气涨轴规格 + */ + private String qzz_size; + /** + * 上下 + */ + private String up_or_down; + /** + * 左右 + */ + private String left_or_right; + /** + * 子卷等级 + */ + private String level; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiSlittingproductionplanParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiSlittingproductionplanParam.java new file mode 100644 index 0000000..3d146bb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/dto/PdmBiSlittingproductionplanParam.java @@ -0,0 +1,205 @@ +package org.nl.wms.pdm.bi.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.bi.dao.PdmBiSlittingproductionplan; + +/** + * {@code @Description:} 分切生产计划(PdmBiSlittingproductionplan)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class PdmBiSlittingproductionplanParam extends BaseQuery { + /** + * 分切计划标识 + */ + private String workorder_id; + /** + * 分切订单类型 + */ + private String order_type; + /** + * 子卷号 + */ + private String container_name; + /** + * 产品编码 + */ + private String product_name; + /** + * 产品描述 + */ + private String description; + /** + * 来源母卷号 + */ + private String parent_container_name; + /** + * 改制来源子卷号 + */ + private String restruct_container_name; + /** + * 子卷立库木箱号 + */ + private String package_box_sn; + /** + * 来源卷位置 + */ + private String ware_house; + /** + * 分切机台编码 + */ + private String resource_name; + /** + * 分切组 + */ + private String split_group; + /** + * 生产顺序 + */ + private String manufacture_sort; + /** + * 生产订单 + */ + private String mfg_order_name; + /** + * 生产日期 + */ + private String manufacture_date; + /** + * 管件类型 + */ + private String paper_tube_or_FRP; + /** + * 纸筒物料编码 + */ + private String paper_tube_material; + /** + * 纸筒物料描述 + */ + private String paper_tube_description; + /** + * 纸筒规格 + */ + private String paper_tube_model; + /** + * FRP管物料编码 + */ + private String FRP_material; + /** + * FRP管物料描述 + */ + private String FRP_description; + /** + * FRP管规格 + */ + private String FRP_model; + /** + * 子卷幅宽 + */ + private BigDecimal split_breadth; + /** + * 子卷理论长度 + */ + private BigDecimal split_height; + /** + * 子卷理论重量 + */ + private BigDecimal split_weight; + /** + * 开始时间 + */ + private String start_time; + /** + * 结束时间 + */ + private String end_time; + /** + * 状态 + */ + private String status; + /** + * 上料完成 + */ + private String is_parent_ok; + /** + * 子卷套轴完成 + */ + private String is_child_tz_ok; + /** + * 子卷配送完成 + */ + private String is_child_ps_ok; + /** + * 气涨轴编码 + */ + private String qzzno; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 部门ID + */ + private Long sysdeptid; + /** + * 公司ID + */ + private Long syscompanyid; + /** + * 是否删除 + */ + private String is_delete; + /** + * 销售订单及行号 + */ + private String sale_order_name; + /** + * 是否呼叫 + */ + private String is_call; + /** + * 呼叫时间 + */ + private String call_time; + /** + * 是否呼叫纸管 + */ + private String is_paper_ok; + /** + * 气涨轴规格 + */ + private String qzz_size; + /** + * 上下 + */ + private String up_or_down; + /** + * 左右 + */ + private String left_or_right; + /** + * 子卷等级 + */ + private String level; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/IpdmBiRawfoilworkorderService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/IpdmBiRawfoilworkorderService.java new file mode 100644 index 0000000..e7f94e8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/IpdmBiRawfoilworkorderService.java @@ -0,0 +1,78 @@ +package org.nl.wms.pdm.bi.service; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.bi.dto.PdmBiRawfoilworkorderParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 生箔工序工单(PdmBiRawfoilworkorder)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +public interface IpdmBiRawfoilworkorderService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(PdmBiRawfoilworkorderParam params); + + + /** + * 创建 + * + * @param params / + */ + void create(PdmBiRawfoilworkorderParam params); + + + /** + * 编辑 + * + * @param params / + */ + void update(PdmBiRawfoilworkorderParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + /** + * 强制确认 + * + * @param whereJson / + */ + void compelEnd(JSONObject whereJson); + + /** + * 称重 + * + * @param whereJson / + */ + void confirm(JSONObject whereJson); + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/IpdmBiSlittingproductionplanService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/IpdmBiSlittingproductionplanService.java new file mode 100644 index 0000000..f7c02bd --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/IpdmBiSlittingproductionplanService.java @@ -0,0 +1,101 @@ +package org.nl.wms.pdm.bi.service; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.bi.dao.PdmBiSlittingproductionplan; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.bi.dto.PdmBiSlittingproductionplanParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 分切生产计划(PdmBiSlittingproductionplan)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +public interface IpdmBiSlittingproductionplanService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(PdmBiSlittingproductionplanParam params); + + + /** + * 创建 + * + * @param params / + */ + void create(PdmBiSlittingproductionplanParam params); + + + /** + * 编辑 + * + * @param params / + */ + void update(PdmBiSlittingproductionplanParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + + /** + * 上料完成 + * + * @param whereJson / + */ + void upMaterFinish(JSONObject whereJson); + + /** + * 套管完成 + * + * @param whereJson / + */ + void caseFinish(JSONObject whereJson); + + /** + * 配送完成 + * + * @param whereJson / + */ + void sendFinish(JSONObject whereJson); + + /** + * 入站完成 + * + * @param whereJson / + */ + void inFinish(JSONObject whereJson); + + /** + * 强制完成 + * + * @param whereJson / + */ + void compelFinish(JSONObject whereJson); + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/impl/PdmBiRawfoilworkorderServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/impl/PdmBiRawfoilworkorderServiceImpl.java new file mode 100644 index 0000000..56f7a5a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/impl/PdmBiRawfoilworkorderServiceImpl.java @@ -0,0 +1,242 @@ +package org.nl.wms.pdm.bi.service.impl; + +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.enums.WorkOrderStatusEnum; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.IdUtil; +import org.nl.wms.basedata.material.dao.MdMeMaterialbase; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; +import org.nl.wms.pdm.bi.dto.PdmBiRawfoilworkorderParam; +import org.nl.wms.pdm.bi.dao.mapper.PdmBiRawfoilworkorderMapper; +import org.nl.wms.pdm.bi.service.IpdmBiRawfoilworkorderService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.pdm.ivt.dao.StIvtSbpointivt; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtSbpointivtMapper; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskMapper; +import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskconfigMapper; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import static org.nl.common.enums.WorkOrderStatusEnum.PRODUCT_STATUS; + + +/** + * {@code @Description:} 生箔工序工单(PdmBiRawfoilworkorder)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +@Service("pdmBiRawfoilworkorderService") +public class PdmBiRawfoilworkorderServiceImpl extends ServiceImpl implements IpdmBiRawfoilworkorderService { + + + @Resource + private PdmBiRawfoilworkorderMapper pdmBiRawfoilworkorderMapper; + + @Resource + private StIvtSbpointivtMapper stIvtSbpointivtMapper; + @Resource + private ImdMeMaterialbaseService materialBaseMapper; + @Resource + private SchBaseTaskMapper schBaseTaskMapper; + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (whereJson.containsKey("product_area")) { + queryWrapper.eq(PdmBiRawfoilworkorder::getProduct_area, whereJson.get("product_area")); + } + if (whereJson.containsKey("resource_name")) { + queryWrapper.like(PdmBiRawfoilworkorder::getResource_name, whereJson.get("resource_name")); + } + if (whereJson.containsKey("status")) { + queryWrapper.eq(PdmBiRawfoilworkorder::getStatus, whereJson.get("status")); + } + if (whereJson.containsKey("container_name")) { + queryWrapper.like(PdmBiRawfoilworkorder::getContainer_name, whereJson.get("container_name")); + } + if (whereJson.containsKey("begin_time")) { + queryWrapper.ge(PdmBiRawfoilworkorder::getCreate_time, whereJson.get("begin_time")); + } + if (whereJson.containsKey("end_time")) { + queryWrapper.le(PdmBiRawfoilworkorder::getCreate_time, whereJson.get("end_time")); + } + queryWrapper.eq(PdmBiRawfoilworkorder::getIs_delete, IOSEnum.IS_NOTANDYES.code("否")); + queryWrapper.orderByDesc(PdmBiRawfoilworkorder::getCreate_time); + return pdmBiRawfoilworkorderMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(PdmBiRawfoilworkorderParam params) { + return pdmBiRawfoilworkorderMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), PdmBiRawfoilworkorder::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), PdmBiRawfoilworkorder::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(PdmBiRawfoilworkorderParam params) { + parametersValidation(params, true); + pdmBiRawfoilworkorderMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(PdmBiRawfoilworkorderParam params) { + parametersValidation(params, false); + pdmBiRawfoilworkorderMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 业务参数校验 + * + * @param params 对象实体 + */ + private void parametersValidation(PdmBiRawfoilworkorderParam params, boolean isCreate) { + StIvtSbpointivt stIvtSbpointivt = stIvtSbpointivtMapper.selectOne(new LambdaQueryWrapper().eq(StIvtSbpointivt::getExt_code, params.getResource_name())); + if (!isCreate) { + PdmBiRawfoilworkorder dto = pdmBiRawfoilworkorderMapper.selectById(params.getWorkorder_id()); + if (dto == null) { + throw new BadRequestException("不存在该数据!"); + } + } + if (stIvtSbpointivt != null) { + throw new BadRequestException("点位设备不存在"); + } + PdmBiRawfoilworkorder pdmBiRawfoilworkorder = pdmBiRawfoilworkorderMapper.selectOne(new LambdaQueryWrapper().eq(PdmBiRawfoilworkorder::getContainer_name, params.getCreate_name()).ne(PdmBiRawfoilworkorder::getStatus, PRODUCT_STATUS.code("结束"))); + if (pdmBiRawfoilworkorder != null) { + throw new BadRequestException("母卷号已存在"); + } + MdMeMaterialbase mdMeMaterialbase = materialBaseMapper.getOne(new LambdaQueryWrapper().eq(MdMeMaterialbase::getMaterial_code, params.getProduct_name()).eq(MdMeMaterialbase::getIs_delete, IOSEnum.IS_NOTANDYES.code("否")).eq(MdMeMaterialbase::getIs_used, IOSEnum.IS_NOTANDYES.code("是"))); + if (mdMeMaterialbase == null) { + throw new BadRequestException("物料不存在"); + } + } + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + .set("update_optid", SecurityUtils.getCurrentUserId()) + .set("update_optname", SecurityUtils.getCurrentNickName()) + .set("update_time", DateUtil.now()) + .in("workorder_id", ids); + pdmBiRawfoilworkorderMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private PdmBiRawfoilworkorder getBasicInfo(PdmBiRawfoilworkorderParam params, boolean isCreate) { + if (isCreate) { + params.setWorkorder_id(IdUtil.getStringId()); + params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + params.setCreate_name(SecurityUtils.getCurrentNickName()); + params.setCreate_time(DateUtil.now()); + params.setUp_coiler_date(DateUtil.now()); + params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + params.setStatus(PRODUCT_STATUS.code("开始")); + } + params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + params.setUpdate_time(DateUtil.now()); + PdmBiRawfoilworkorder pdmBiRawfoilworkorder = new PdmBiRawfoilworkorder(); + BeanUtils.copyProperties(params, pdmBiRawfoilworkorder); + return pdmBiRawfoilworkorder; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void compelEnd(JSONObject whereJson) { + //查询该生箔工单是否存在未完成的任务 + List taskList = schBaseTaskMapper.selectList(new LambdaQueryWrapper().eq(SchBaseTask::getMaterial_code, whereJson.getString("container_name")).eq(SchBaseTask::getIs_delete, IOSEnum.IS_NOTANDYES.code("否")).ne(SchBaseTask::getTask_status, TaskStatus.FINISHED)); + if (CollectionUtil.isNotEmpty(taskList)) { + throw new BadRequestException("该生箔工单存在未完成的任务,请先完成任务!"); + } + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("status", WorkOrderStatusEnum.PRODUCT_STATUS.code("结束")); + updateWrapper.set("finish_type", WorkOrderStatusEnum.FINISH_TYPE.code("手动")); + updateWrapper.set("update_optid", SecurityUtils.getCurrentUserId()); + updateWrapper.set("update_optname", SecurityUtils.getCurrentUsername()); + updateWrapper.set("realend_time", DateUtil.now()); + updateWrapper.set("update_time", DateUtil.now()); + updateWrapper.eq("workorder_id", whereJson.getString("workorder_id")); + pdmBiRawfoilworkorderMapper.update(null, updateWrapper); + + } + + + @Override + @Transactional(rollbackFor = Exception.class) + public void confirm(JSONObject whereJson) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + BigDecimal productinQty = whereJson.containsKey("productin_qty") && StringUtils.isNotEmpty(whereJson.getString("productin_qty")) ? + new BigDecimal(whereJson.getString("productin_qty")) : BigDecimal.ZERO; + updateWrapper.set("productin_qty", productinQty); + updateWrapper.set("update_optid", SecurityUtils.getCurrentUserId()); + updateWrapper.set("update_optname", SecurityUtils.getCurrentUsername()); + updateWrapper.set("update_time", DateUtil.now()); + updateWrapper.eq("workorder_id", whereJson.getString("workorder_id")); + pdmBiRawfoilworkorderMapper.update(null, updateWrapper); + + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/impl/PdmBiSlittingproductionplanServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/impl/PdmBiSlittingproductionplanServiceImpl.java new file mode 100644 index 0000000..7ec768a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/bi/service/impl/PdmBiSlittingproductionplanServiceImpl.java @@ -0,0 +1,225 @@ +package org.nl.wms.pdm.bi.service.impl; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.enums.WorkOrderStatusEnum; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.IdUtil; +import org.nl.wms.pdm.bi.dao.PdmBiSlittingproductionplan; +import org.nl.wms.pdm.bi.dao.PdmBiSlittingproductionplan; +import org.nl.wms.pdm.bi.dao.PdmBiSlittingproductionplan; +import org.nl.wms.pdm.bi.dto.PdmBiSlittingproductionplanParam; +import org.nl.wms.pdm.bi.dao.mapper.PdmBiSlittingproductionplanMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.bi.service.IpdmBiSlittingproductionplanService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.*; + + +/** + * {@code @Description:} 分切生产计划(PdmBiSlittingproductionplan)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-03-27 + */ +@Service("pdmBiSlittingproductionplanService") +public class PdmBiSlittingproductionplanServiceImpl extends ServiceImpl implements IpdmBiSlittingproductionplanService { + + + @Resource + private PdmBiSlittingproductionplanMapper pdmBiSlittingproductionplanMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (whereJson.containsKey("order_type")) { + queryWrapper.eq(PdmBiSlittingproductionplan::getOrder_type, whereJson.get("order_type")); + } + if (whereJson.containsKey("product_area")) { + queryWrapper.eq(PdmBiSlittingproductionplan::getProduct_area, whereJson.get("product_area")); + } + if (whereJson.containsKey("status")) { + queryWrapper.eq(PdmBiSlittingproductionplan::getStatus, whereJson.get("status")); + } + if (whereJson.containsKey("resource_name")) { + queryWrapper.like(PdmBiSlittingproductionplan::getResource_name, whereJson.get("resource_name")); + } + if (whereJson.containsKey("parent_container_name")) { + queryWrapper.like(PdmBiSlittingproductionplan::getParent_container_name, whereJson.get("parent_container_name")); + } + if (whereJson.containsKey("container_name")) { + queryWrapper.like(PdmBiSlittingproductionplan::getContainer_name, whereJson.get("container_name")); + } + if (whereJson.containsKey("qzzno")) { + queryWrapper.like(PdmBiSlittingproductionplan::getQzzno, whereJson.get("qzzno")); + } + if (whereJson.containsKey("is_parent_ok")) { + queryWrapper.eq(PdmBiSlittingproductionplan::getIs_parent_ok, whereJson.get("is_parent_ok")); + } + if (whereJson.containsKey("is_child_tz_ok")) { + queryWrapper.eq(PdmBiSlittingproductionplan::getIs_child_tz_ok, whereJson.get("is_child_tz_ok")); + } + if (whereJson.containsKey("is_child_ps_ok")) { + queryWrapper.eq(PdmBiSlittingproductionplan::getIs_child_ps_ok, whereJson.get("is_child_ps_ok")); + } + if (whereJson.containsKey("is_call")) { + queryWrapper.eq(PdmBiSlittingproductionplan::getIs_call, whereJson.get("is_call")); + } + if (whereJson.containsKey("begin_time")) { + queryWrapper.ge(PdmBiSlittingproductionplan::getManufacture_date, whereJson.get("begin_time")); + } + if (whereJson.containsKey("end_time")) { + queryWrapper.le(PdmBiSlittingproductionplan::getManufacture_date, whereJson.get("end_time")); + } + return pdmBiSlittingproductionplanMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(PdmBiSlittingproductionplanParam params) { + return pdmBiSlittingproductionplanMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), PdmBiSlittingproductionplan::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), PdmBiSlittingproductionplan::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(PdmBiSlittingproductionplanParam params) { + pdmBiSlittingproductionplanMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(PdmBiSlittingproductionplanParam params) { + PdmBiSlittingproductionplan dto = pdmBiSlittingproductionplanMapper.selectById(params.getWorkorder_id()); + if (dto == null) { + throw new BadRequestException("不存在该数据!"); + } + pdmBiSlittingproductionplanMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + // 物理删除 + pdmBiSlittingproductionplanMapper.deleteBatchIds(ids); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private PdmBiSlittingproductionplan getBasicInfo(PdmBiSlittingproductionplanParam params, boolean isCreate) { + if (isCreate) { + params.setWorkorder_id(IdUtil.getStringId()); + params.setStatus(WorkOrderStatusEnum.CUT_PRODUCT_STATUS.code("开始")); + params.setIs_parent_ok(IOSEnum.IS_NOTANDYES.code("否")); + params.setIs_child_tz_ok(IOSEnum.IS_NOTANDYES.code("否")); + params.setIs_child_ps_ok(IOSEnum.IS_NOTANDYES.code("否")); + params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + } + params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + params.setUpdate_time(DateUtil.now()); + PdmBiSlittingproductionplan pdmBiSlittingproductionplan = new PdmBiSlittingproductionplan(); + BeanUtils.copyProperties(params, pdmBiSlittingproductionplan); + return pdmBiSlittingproductionplan; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void upMaterFinish(JSONObject whereJson) { + //todo 逻辑待定 + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void caseFinish(JSONObject whereJson) { + //todo 逻辑待定 + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void sendFinish(JSONObject whereJson) { + //todo 逻辑待定 + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void inFinish(JSONObject whereJson) { + //todo 逻辑待定 + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void compelFinish(JSONObject whereJson) { + JSONArray data = whereJson.getJSONArray("data"); + Set workorderIds = new HashSet<>(); + for (int i = 0; i < data.size(); i++) { + JSONObject json = data.getJSONObject(i); + String id = json.getString("workorder_id"); + workorderIds.add(id); + } + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("status", WorkOrderStatusEnum.PRODUCT_STATUS.code("结束")); + updateWrapper.set("end_time", DateUtil.now()); + updateWrapper.set("update_optid", SecurityUtils.getCurrentUserId()); + updateWrapper.set("update_optname", SecurityUtils.getCurrentUsername()); + updateWrapper.set("update_time", DateUtil.now()); + updateWrapper.in("workorder_id", workorderIds); + pdmBiSlittingproductionplanMapper.update(null, updateWrapper); + + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/enums/SUBEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/enums/SUBEnum.java new file mode 100644 index 0000000..2433460 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/enums/SUBEnum.java @@ -0,0 +1,42 @@ +package org.nl.wms.pdm.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.config.MapOf; + +import java.util.Map; + +/** + * 子卷包装枚举 + * + * @author lxy + * @Date 2023/11/14 20:11 + */ +@AllArgsConstructor +@Getter +public enum SUBEnum { + // 子卷包装状态 + STATUS(MapOf.of("生成", "0", "包装", "1", "入库", "2", "出库", "3")), + ; + + private Map code; + + public String code(String desc) { + String code = this.getCode().get(desc); + if (StringUtils.isNotEmpty(code)) { + return code; + } + throw new BadRequestException(this.name() + "对应类型" + desc + "未定义"); + } + + public String check(String code) { + for (Map.Entry entry : this.getCode().entrySet()) { + if (entry.getValue().equals("code")) { + return entry.getValue(); + } + } + throw new BadRequestException(this.name() + "对应类型" + code + "未定义"); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCoolpointivtController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCoolpointivtController.java new file mode 100644 index 0000000..656f21d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCoolpointivtController.java @@ -0,0 +1,123 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import com.alibaba.fastjson.JSONObject; +import org.nl.common.base.TableDataInfo; +import org.springframework.data.domain.Pageable; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtCoolpointivtParam; +import org.nl.wms.pdm.ivt.service.IstIvtCoolpointivtService; + + +/** + * {@code @Description:} 冷却区点位库存表(StIvtCoolpointivt)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/stIvtCoolpointivt") +@Slf4j +public class StIvtCoolpointivtController { + + + @Resource + private IstIvtCoolpointivtService stIvtCoolpointivtService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询冷却区点位库存表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtCoolpointivtService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询冷却区点位库存表") + public ResponseEntity selectList(@RequestBody StIvtCoolpointivtParam params) { + return new ResponseEntity<>(stIvtCoolpointivtService.selectList(params), HttpStatus.OK); + } + + @GetMapping("/coolRegionIOQueryAll") + @Log("冷却区 出入表") + //@SaCheckPermission("@el.check('stIvtCoolpointivt:list')") + public ResponseEntity coolRegionIOQueryAll(@RequestParam Map whereJson, Pageable page) { + // return new ResponseEntity<>(stIvtCoolpointivtService.coolRegionIOQueryAll(whereJson, page), HttpStatus.OK); + return null; + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增冷却区点位库存表") + public ResponseEntity create(@RequestBody StIvtCoolpointivtParam params) { + stIvtCoolpointivtService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改冷却区点位库存表") + //@SaCheckPermission("@el.check(StIvtCoolpointivt:edit')") + public ResponseEntity update(@RequestBody StIvtCoolpointivtParam params) { + stIvtCoolpointivtService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除冷却区点位库存表") + //@SaCheckPermission("@el.check(StIvtCoolpointivt:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtCoolpointivtService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/uploadMes") + @Log("手动回传MES") + public ResponseEntity uploadMes(@RequestBody JSONObject form) { + //stIvtCoolpointivtService.uploadMes(form); + return new ResponseEntity<>(HttpStatus.OK); + } +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCoolregionioController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCoolregionioController.java new file mode 100644 index 0000000..4ded2a7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCoolregionioController.java @@ -0,0 +1,108 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtCoolregionioParam; +import org.nl.wms.pdm.ivt.service.IstIvtCoolregionioService; + + +/** + * {@code @Description:} 冷却区出入表(StIvtCoolregionio)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/stIvtCoolregionio") +@Slf4j +public class StIvtCoolregionioController { + + + @Resource + private IstIvtCoolregionioService stIvtCoolregionioService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询冷却区出入表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtCoolregionioService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询冷却区出入表") + public ResponseEntity selectList(@RequestBody StIvtCoolregionioParam params) { + return new ResponseEntity<>(stIvtCoolregionioService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增冷却区出入表") + public ResponseEntity create(@RequestBody StIvtCoolregionioParam params) { + stIvtCoolregionioService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改冷却区出入表") + //@SaCheckPermission("@el.check(StIvtCoolregionio:edit')") + public ResponseEntity update(@RequestBody StIvtCoolregionioParam params) { + stIvtCoolregionioService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除冷却区出入表") + //@SaCheckPermission("@el.check(StIvtCoolregionio:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtCoolregionioService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCutpointivtController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCutpointivtController.java new file mode 100644 index 0000000..3541ea4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtCutpointivtController.java @@ -0,0 +1,108 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtCutpointivtParam; +import org.nl.wms.pdm.ivt.service.IstIvtCutpointivtService; + + +/** + * {@code @Description:} 分切区点位库存表(StIvtCutpointivt)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/cutpointivt") +@Slf4j +public class StIvtCutpointivtController { + + + @Resource + private IstIvtCutpointivtService stIvtCutpointivtService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询分切区点位库存表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtCutpointivtService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询分切区点位库存表") + public ResponseEntity selectList(@RequestBody StIvtCutpointivtParam params) { + return new ResponseEntity<>(stIvtCutpointivtService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增分切区点位库存表") + public ResponseEntity create(@RequestBody StIvtCutpointivtParam params) { + stIvtCutpointivtService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改分切区点位库存表") + //@SaCheckPermission("@el.check(StIvtCutpointivt:edit')") + public ResponseEntity update(@RequestBody StIvtCutpointivtParam params) { + stIvtCutpointivtService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除分切区点位库存表") + //@SaCheckPermission("@el.check(StIvtCutpointivt:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtCutpointivtService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtDeliverypointivtController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtDeliverypointivtController.java new file mode 100644 index 0000000..c7f8202 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtDeliverypointivtController.java @@ -0,0 +1,108 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtDeliverypointivtParam; +import org.nl.wms.pdm.ivt.service.IstIvtDeliverypointivtService; + + +/** + * {@code @Description:} 分切输送线点位库存表(StIvtDeliverypointivt)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/deliverypointivt") +@Slf4j +public class StIvtDeliverypointivtController { + + + @Resource + private IstIvtDeliverypointivtService stIvtDeliverypointivtService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询分切输送线点位库存表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtDeliverypointivtService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询分切输送线点位库存表") + public ResponseEntity selectList(@RequestBody StIvtDeliverypointivtParam params) { + return new ResponseEntity<>(stIvtDeliverypointivtService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增分切输送线点位库存表") + public ResponseEntity create(@RequestBody StIvtDeliverypointivtParam params) { + stIvtDeliverypointivtService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改分切输送线点位库存表") + //@SaCheckPermission("@el.check(StIvtDeliverypointivt:edit')") + public ResponseEntity update(@RequestBody StIvtDeliverypointivtParam params) { + stIvtDeliverypointivtService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除分切输送线点位库存表") + //@SaCheckPermission("@el.check(StIvtDeliverypointivt:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtDeliverypointivtService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtEmptytubeivtController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtEmptytubeivtController.java new file mode 100644 index 0000000..c505c20 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtEmptytubeivtController.java @@ -0,0 +1,108 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtEmptytubeivtParam; +import org.nl.wms.pdm.ivt.service.IstIvtEmptytubeivtService; + + +/** + * {@code @Description:} 空纸管库区点位库存表(StIvtEmptytubeivt)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/stIvtEmptytubeivt") +@Slf4j +public class StIvtEmptytubeivtController { + + + @Resource + private IstIvtEmptytubeivtService stIvtEmptytubeivtService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询空纸管库区点位库存表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtEmptytubeivtService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询空纸管库区点位库存表") + public ResponseEntity selectList(@RequestBody StIvtEmptytubeivtParam params) { + return new ResponseEntity<>(stIvtEmptytubeivtService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增空纸管库区点位库存表") + public ResponseEntity create(@RequestBody StIvtEmptytubeivtParam params) { + stIvtEmptytubeivtService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改空纸管库区点位库存表") + //@SaCheckPermission("@el.check(StIvtEmptytubeivt:edit')") + public ResponseEntity update(@RequestBody StIvtEmptytubeivtParam params) { + stIvtEmptytubeivtService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除空纸管库区点位库存表") + //@SaCheckPermission("@el.check(StIvtEmptytubeivt:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtEmptytubeivtService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtEmptyvehiclerecordController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtEmptyvehiclerecordController.java new file mode 100644 index 0000000..4f64dd3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtEmptyvehiclerecordController.java @@ -0,0 +1,108 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtEmptyvehiclerecordParam; +import org.nl.wms.pdm.ivt.service.IstIvtEmptyvehiclerecordService; + + +/** + * {@code @Description:} 空载具作业记录表(StIvtEmptyvehiclerecord)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/stIvtEmptyvehiclerecord") +@Slf4j +public class StIvtEmptyvehiclerecordController { + + + @Resource + private IstIvtEmptyvehiclerecordService stIvtEmptyvehiclerecordService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询空载具作业记录表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtEmptyvehiclerecordService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询空载具作业记录表") + public ResponseEntity selectList(@RequestBody StIvtEmptyvehiclerecordParam params) { + return new ResponseEntity<>(stIvtEmptyvehiclerecordService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增空载具作业记录表") + public ResponseEntity create(@RequestBody StIvtEmptyvehiclerecordParam params) { + stIvtEmptyvehiclerecordService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改空载具作业记录表") + //@SaCheckPermission("@el.check(StIvtEmptyvehiclerecord:edit')") + public ResponseEntity update(@RequestBody StIvtEmptyvehiclerecordParam params) { + stIvtEmptyvehiclerecordService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除空载具作业记录表") + //@SaCheckPermission("@el.check(StIvtEmptyvehiclerecord:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtEmptyvehiclerecordService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtHotpointivtController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtHotpointivtController.java new file mode 100644 index 0000000..4ef1b17 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtHotpointivtController.java @@ -0,0 +1,118 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.data.domain.Pageable; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtHotpointivtParam; +import org.nl.wms.pdm.ivt.service.IstIvtHotpointivtService; + + +/** + * {@code @Description:} 烘烤区点位库存表(StIvtHotpointivt)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/hotpointivt") +@Slf4j +public class StIvtHotpointivtController { + + + @Resource + private IstIvtHotpointivtService stIvtHotpointivtService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询烘烤区点位库存表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtHotpointivtService.query(whereJson, page)), HttpStatus.OK); + } + + + @GetMapping("/taskDtlQuery") + @Log("查询烘烤任务明细") + public ResponseEntity taskDtlQuery(@RequestParam Map whereJson, Pageable page) { + //return new ResponseEntity<>(stIvtHotpointivtService.taskDtlQuery(whereJson, page), HttpStatus.OK); + return null; + } + + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询烘烤区点位库存表") + public ResponseEntity selectList(@RequestBody StIvtHotpointivtParam params) { + return new ResponseEntity<>(stIvtHotpointivtService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增烘烤区点位库存表") + public ResponseEntity create(@RequestBody StIvtHotpointivtParam params) { + stIvtHotpointivtService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改烘烤区点位库存表") + //@SaCheckPermission("@el.check(StIvtHotpointivt:edit')") + public ResponseEntity update(@RequestBody StIvtHotpointivtParam params) { + stIvtHotpointivtService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除烘烤区点位库存表") + //@SaCheckPermission("@el.check(StIvtHotpointivt:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtHotpointivtService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtHotregioniomstController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtHotregioniomstController.java new file mode 100644 index 0000000..d10b8a1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtHotregioniomstController.java @@ -0,0 +1,108 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtHotregioniomstParam; +import org.nl.wms.pdm.ivt.service.IstIvtHotregioniomstService; + + +/** + * {@code @Description:} 烘箱区出入主表(StIvtHotregioniomst)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/stIvtHotregioniomst") +@Slf4j +public class StIvtHotregioniomstController { + + + @Resource + private IstIvtHotregioniomstService stIvtHotregioniomstService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询烘箱区出入主表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtHotregioniomstService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询烘箱区出入主表") + public ResponseEntity selectList(@RequestBody StIvtHotregioniomstParam params) { + return new ResponseEntity<>(stIvtHotregioniomstService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增烘箱区出入主表") + public ResponseEntity create(@RequestBody StIvtHotregioniomstParam params) { + stIvtHotregioniomstService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改烘箱区出入主表") + //@SaCheckPermission("@el.check(StIvtHotregioniomst:edit')") + public ResponseEntity update(@RequestBody StIvtHotregioniomstParam params) { + stIvtHotregioniomstService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除烘箱区出入主表") + //@SaCheckPermission("@el.check(StIvtHotregioniomst:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtHotregioniomstService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtSbpointivtController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtSbpointivtController.java new file mode 100644 index 0000000..6f0d227 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtSbpointivtController.java @@ -0,0 +1,108 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtSbpointivtParam; +import org.nl.wms.pdm.ivt.service.IstIvtSbpointivtService; + + +/** + * {@code @Description:} 生箔点位库存表(StIvtSbpointivt)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/sbpointivt") +@Slf4j +public class StIvtSbpointivtController { + + + @Resource + private IstIvtSbpointivtService stIvtSbpointivtService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询生箔点位库存表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtSbpointivtService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询生箔点位库存表") + public ResponseEntity selectList(@RequestBody StIvtSbpointivtParam params) { + return new ResponseEntity<>(stIvtSbpointivtService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增生箔点位库存表") + public ResponseEntity create(@RequestBody StIvtSbpointivtParam params) { + stIvtSbpointivtService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改生箔点位库存表") + //@SaCheckPermission("@el.check(StIvtSbpointivt:edit')") + public ResponseEntity update(@RequestBody StIvtSbpointivtParam params) { + stIvtSbpointivtService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除生箔点位库存表") + //@SaCheckPermission("@el.check(StIvtSbpointivt:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtSbpointivtService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtStpointivtController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtStpointivtController.java new file mode 100644 index 0000000..43cb24f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/controller/StIvtStpointivtController.java @@ -0,0 +1,108 @@ +package org.nl.wms.pdm.ivt.controller; + +import java.util.Set; +import java.util.Map; + +import org.nl.common.base.TableDataInfo; +import org.springframework.web.bind.annotation.*; +import lombok.RequiredArgsConstructor; + +import javax.annotation.Resource; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.ivt.dto.StIvtStpointivtParam; +import org.nl.wms.pdm.ivt.service.IstIvtStpointivtService; + + +/** + * {@code @Description:} 表处点位库存表(StIvtStpointivt)控制层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/stpointivt") +@Slf4j +public class StIvtStpointivtController { + + + @Resource + private IstIvtStpointivtService stIvtStpointivtService; + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @GetMapping + @Log("查询表处点位库存表") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stIvtStpointivtService.query(whereJson, page)), HttpStatus.OK); + } + + + /** + * 条件查询 + * + * @param params 查询条件 + */ + @PostMapping("/selectList") + @Log("条件查询表处点位库存表") + public ResponseEntity selectList(@RequestBody StIvtStpointivtParam params) { + return new ResponseEntity<>(stIvtStpointivtService.selectList(params), HttpStatus.OK); + } + + + /** + * 新增数据 + * + * @param params 实体对象 + * @return 新增结果 + */ + @PostMapping + @Log("新增表处点位库存表") + public ResponseEntity create(@RequestBody StIvtStpointivtParam params) { + stIvtStpointivtService.create(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 修改数据 + * + * @param params 实体对象 + * @return 修改结果 + */ + @PutMapping + @Log("修改表处点位库存表") + //@SaCheckPermission("@el.check(StIvtStpointivt:edit')") + public ResponseEntity update(@RequestBody StIvtStpointivtParam params) { + stIvtStpointivtService.update(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * 删除数据 + * + * @param ids 多个主键Id + * @return 删除结果 + */ + @Log("删除表处点位库存表") + //@SaCheckPermission("@el.check(StIvtStpointivt:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + stIvtStpointivtService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCoolpointivt.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCoolpointivt.java new file mode 100644 index 0000000..b412d96 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCoolpointivt.java @@ -0,0 +1,211 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 冷却区点位库存表(StIvtCoolpointivt)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_coolpointivt") +public class StIvtCoolpointivt extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 库存记录标识 + */ + private Long ivt_id; + + + /** + * 点位编码 + */ + private String point_code; + + + /** + * 满轴位编码 + */ + private String full_point_code; + + + /** + * 母卷号 + */ + private String container_name; + + + /** + * 母卷工单标识 + */ + private String workorder_id; + + + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + + + /** + * 空轴位编码 + */ + private String empty_point_code; + + + /** + * 空轴编码 + */ + private String empty_vehicle_code; + + + /** + * 下料区域标识 + */ + private Long region_id; + + + /** + * 批次 + */ + private String pcsn; + + + /** + * 库存数 + */ + private BigDecimal ivt_qty; + + + /** + * 计量单位标识 + */ + private Long qty_unit_id; + + + /** + * 入库时间 + */ + private String instorage_time; + + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 位置 + */ + private String point_location; + + + /** + * 顺序号 + */ + private BigDecimal sort_seq; + + + /** + * 是否启用 + */ + private String is_used; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人姓名 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private String update_optid; + + + /** + * 修改人姓名 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 规划 + */ + private String plan; + + + /** + * 满轴位状态 + */ + private String full_point_status; + + + /** + * 库存状态 + */ + private String cool_ivt_status; + + + /** + * 空轴位状态 + */ + private String empty_point_status; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.ivt_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCoolregionio.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCoolregionio.java new file mode 100644 index 0000000..4d2dcaa --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCoolregionio.java @@ -0,0 +1,193 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 冷却区出入表(StIvtCoolregionio)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_coolregionio") +public class StIvtCoolregionio extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 出入单标识 + */ + private Long iostorinv_id; + + + /** + * 单据编号 + */ + private String bill_code; + + + /** + * 出入类型 + */ + private String io_type; + + + /** + * 物料标识 + */ + private String material_id; + + + /** + * 批次 + */ + private String pcsn; + + + /** + * 载具编码 + */ + private String vehicle_code; + + + /** + * 数量 + */ + private BigDecimal qty; + + + /** + * 数量单位标识 + */ + private Long qty_unit_id; + + + /** + * 单据状态 + */ + private String bill_status; + + + /** + * 起始点位编码 + */ + private String start_point_code; + + + /** + * 终点点位编码 + */ + private String end_point_code; + + + /** + * 客户标识 + */ + private String cust_id; + + + /** + * 生成方式 + */ + private String create_mode; + + + /** + * 任务标识 + */ + private String task_id; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private String create_id; + + + /** + * 创建人姓名 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private String update_optid; + + + /** + * 修改人姓名 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 确认人 + */ + private String confirm_optid; + + + /** + * 确认人姓名 + */ + private String confirm_optname; + + + /** + * 确认时间 + */ + private String confirm_time; + + + /** + * 是否删除 + */ + private String is_delete; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.iostorinv_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCutpointivt.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCutpointivt.java new file mode 100644 index 0000000..277506f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtCutpointivt.java @@ -0,0 +1,205 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 分切区点位库存表(StIvtCutpointivt)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_cutpointivt") +public class StIvtCutpointivt extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 库存记录标识 + */ + private Long ivt_id; + + + /** + * 点位编码 + */ + private String point_code; + + + /** + * 满轴位编码 + */ + private String full_point_code; + + + /** + * 满轴位状态 + */ + private String full_point_status; + + + /** + * 母卷号 + */ + private String container_name; + + + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + + + /** + * 空轴位编码 + */ + private String empty_point_code; + + + /** + * 空轴位状态 + */ + private String empty_point_status; + + + /** + * 空轴编码 + */ + private String empty_vehicle_code; + + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 位置 + */ + private String point_location; + + + /** + * 分切下料位上轴点位 + */ + private String up_point_code; + + + /** + * 分切下料位下轴点位 + */ + private String down_point_code; + + + /** + * 顺序号 + */ + private BigDecimal sort_seq; + + + /** + * 是否启用 + */ + private String is_used; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人姓名 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人姓名 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 规划 + */ + private String plan; + + + /** + * 对应MES系统设备编码 + */ + private String ext_code; + + + /** + * 分切下料位上轴 + */ + private String up_qzzno; + + + /** + * 分切下料位下轴 + */ + private String down_qzzno; + + + /** + * 气胀轴代数 + */ + private String qzz_generation; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.ivt_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtDeliverypointivt.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtDeliverypointivt.java new file mode 100644 index 0000000..fc20754 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtDeliverypointivt.java @@ -0,0 +1,145 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 分切输送线点位库存表(StIvtDeliverypointivt)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_deliverypointivt") +public class StIvtDeliverypointivt extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 库存记录标识 + */ + private Long ivt_id; + + + /** + * 点位编码 + */ + private String point_code; + + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 位置 + */ + private String point_location; + + + /** + * 顺序号 + */ + private BigDecimal sort_seq; + + + /** + * 是否启用 + */ + private String is_used; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人姓名 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人姓名 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 规划 + */ + private String plan; + + + /** + * 气涨轴编码 + */ + private String qzzno; + + + /** + * 载具码 + */ + private String vehicle_code; + + + /** + * 点位状态 + */ + private String point_status; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.ivt_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtEmptytubeivt.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtEmptytubeivt.java new file mode 100644 index 0000000..f3bd418 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtEmptytubeivt.java @@ -0,0 +1,139 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 空纸管库区点位库存表(StIvtEmptytubeivt)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_emptytubeivt") +public class StIvtEmptytubeivt extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 库存记录标识 + */ + private Long ivt_id; + + + /** + * 点位编码 + */ + private String point_code; + + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 物料编码 + */ + private String material_code; + + + /** + * 物料名称 + */ + private String material_name; + + + /** + * 数量 + */ + private BigDecimal qty; + + + /** + * 顺序号 + */ + private BigDecimal sort_seq; + + + /** + * 是否启用 + */ + private String is_used; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 规划 + */ + private String plan; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.ivt_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtEmptyvehiclerecord.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtEmptyvehiclerecord.java new file mode 100644 index 0000000..dff383c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtEmptyvehiclerecord.java @@ -0,0 +1,151 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 空载具作业记录表(StIvtEmptyvehiclerecord)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_emptyvehiclerecord") +public class StIvtEmptyvehiclerecord extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 记录标识 + */ + private Long record_uuid; + + + /** + * 单据编号 + */ + private String bill_code; + + + /** + * 单据类型 + */ + private String io_type; + + + /** + * 单据状态 + */ + private String bill_status; + + + /** + * 载具数量 + */ + private BigDecimal vehicle_qty; + + + /** + * 起始点位 + */ + private String start_point_code; + + + /** + * 下一点位 + */ + private String next_point_code; + + + /** + * 起始区域 + */ + private Long start_region_id; + + + /** + * 终点区域 + */ + private Long end_region_id; + + + /** + * 任务标识 + */ + private Long task_uuid; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人姓名 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人姓名 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 是否删除 + */ + private String is_delete; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.record_uuid; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtHotpointivt.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtHotpointivt.java new file mode 100644 index 0000000..90a5992 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtHotpointivt.java @@ -0,0 +1,199 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 烘烤区点位库存表(StIvtHotpointivt)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_hotpointivt") +public class StIvtHotpointivt extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 库存记录标识 + */ + private Long ivt_id; + + + /** + * 点位编码 + */ + private String point_code; + + + /** + * 点位状态 + */ + private String point_status; + + + /** + * 母卷号 + */ + private String container_name; + + + /** + * 母卷工单标识 + */ + private String workorder_id; + + + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + + + /** + * 批次 + */ + private String pcsn; + + + /** + * 库存数 + */ + private BigDecimal ivt_qty; + + + /** + * 计量单位标识 + */ + private Long qty_unit_id; + + + /** + * 入库时间 + */ + private String instorage_time; + + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 温度 + */ + private BigDecimal temperature; + + + /** + * 组别 + */ + private String group_name; + + + /** + * 位置 + */ + private String point_location; + + + /** + * 顺序号 + */ + private BigDecimal sort_seq; + + + /** + * 是否启用 + */ + private String is_used; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人姓名 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private String update_optid; + + + /** + * 修改人姓名 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 规划 + */ + private String plan; + + + /** + * 外部编码 + */ + private String ext_code; + + + /** + * 倒计时 + */ + private String last_time; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.ivt_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtHotregioniomst.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtHotregioniomst.java new file mode 100644 index 0000000..f0aa10e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtHotregioniomst.java @@ -0,0 +1,198 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 烘箱区出入主表(StIvtHotregioniomst)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_hotregioniomst") +public class StIvtHotregioniomst extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 出入单标识 + */ + private Long iostorinv_id; + + + /** + * 出入类型 + */ + private String io_type; + + + /** + * 单据编号 + */ + private String bill_code; + + + /** + * 母卷号 + */ + private String container_name; + + + /** + * 母卷工单标识 + */ + private String workorder_id; + + + /** + * 物料标识 + */ + private Long material_id; + + + /** + * 批次 + */ + private String pcsn; + + + /** + * 载具编码 + */ + private String vehicle_code; + + + /** + * 数量 + */ + private BigDecimal qty; + + + /** + * 数量单位标识 + */ + private Long qty_unit_id; + + + /** + * 单据状态 + */ + private String bill_status; + + + /** + * 生成方式 + */ + private String create_mode; + + + /** + * 起始点位编码 + */ + private String start_point_code; + + + /** + * 终点点位编码 + */ + private String end_point_code; + + + /** + * 任务类型 + */ + private String task_type; + + + /** + * 任务标识 + */ + private Long task_id; + + + /** + * 烘箱温度 + */ + private BigDecimal temperature; + + + /** + * 烘烤时间 + */ + private BigDecimal oven_time; + + + /** + * 备注 + */ + private String remark; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人姓名 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 确认人 + */ + private Long confirm_optid; + + + /** + * 确认人姓名 + */ + private String confirm_optname; + + + /** + * 确认时间 + */ + private String confirm_time; + + + /** + * 是否删除 + */ + private String is_delete; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.iostorinv_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtSbpointivt.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtSbpointivt.java new file mode 100644 index 0000000..577dff1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtSbpointivt.java @@ -0,0 +1,138 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 生箔点位库存表(StIvtSbpointivt)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_sbpointivt") +public class StIvtSbpointivt extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 点位标识 + */ + private Long point_id; + + + /** + * 点位编码 + */ + private String point_code; + + + /** + * 载具编码 + */ + private String vehicle_code; + + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 位置 + */ + private String point_location; + + + /** + * 外部编码 + */ + private String ext_code; + + + /** + * 备注 + */ + private String remark; + + + /** + * 是否启用 + */ + private String is_used; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 规划 + */ + private String plan; + + + /** + * MES启用 + */ + private String mes_used; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.point_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtStpointivt.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtStpointivt.java new file mode 100644 index 0000000..f1615b7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/StIvtStpointivt.java @@ -0,0 +1,162 @@ +package org.nl.wms.pdm.ivt.dao; + +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + + +/** + * {@code @Description:} 表处点位库存表(StIvtStpointivt)实体类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("st_ivt_stpointivt") +public class StIvtStpointivt extends Model { + + private static final long serialVersionUID = -7739291296662381393L; + //@TableId(type = IdType.ASSIGN_ID) + + + /** + * 点位标识 + */ + private Long point_id; + + + /** + * 点位编码 + */ + private String point_code; + + + /** + * 生产区域 + */ + private String product_area; + + + /** + * 位置 + */ + private String point_location; + + + /** + * 表处上料位轴编码 + */ + private String up_scroll; + + + /** + * 表处上料位母卷号 + */ + private String up_pcsn; + + + /** + * 表处上料点位编码 + */ + private String up_point_code; + + + /** + * 表处下料位轴编码 + */ + private String down_scroll; + + + /** + * 表处下料位母卷号 + */ + private String down_pcsn; + + + /** + * 表处下料点位编码 + */ + private String down_point_code; + + + /** + * 外部编码 + */ + private String ext_code; + + + /** + * 备注 + */ + private String remark; + + + /** + * 是否启用 + */ + private String is_used; + + + /** + * 创建人 + */ + private Long create_id; + + + /** + * 创建人 + */ + private String create_name; + + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private String create_time; + + + /** + * 修改人 + */ + private Long update_optid; + + + /** + * 修改人 + */ + private String update_optname; + + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String update_time; + + + /** + * 规划 + */ + private String plan; + + + /** + * 获取主键值 + * + * @return 主键值 + */ + @Override + protected Serializable pkVal() { + return this.point_id; + } + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCoolpointivtMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCoolpointivtMapper.java new file mode 100644 index 0000000..578c445 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCoolpointivtMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 冷却区点位库存表(StIvtCoolpointivt)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtCoolpointivtMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCoolregionioMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCoolregionioMapper.java new file mode 100644 index 0000000..e122a47 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCoolregionioMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtCoolregionio; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 冷却区出入表(StIvtCoolregionio)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtCoolregionioMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCutpointivtMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCutpointivtMapper.java new file mode 100644 index 0000000..6995541 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtCutpointivtMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtCutpointivt; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 分切区点位库存表(StIvtCutpointivt)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtCutpointivtMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtDeliverypointivtMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtDeliverypointivtMapper.java new file mode 100644 index 0000000..40b6158 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtDeliverypointivtMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtDeliverypointivt; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 分切输送线点位库存表(StIvtDeliverypointivt)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtDeliverypointivtMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtEmptytubeivtMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtEmptytubeivtMapper.java new file mode 100644 index 0000000..edc873e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtEmptytubeivtMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtEmptytubeivt; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 空纸管库区点位库存表(StIvtEmptytubeivt)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtEmptytubeivtMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtEmptyvehiclerecordMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtEmptyvehiclerecordMapper.java new file mode 100644 index 0000000..cb6386d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtEmptyvehiclerecordMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtEmptyvehiclerecord; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 空载具作业记录表(StIvtEmptyvehiclerecord)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtEmptyvehiclerecordMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtHotpointivtMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtHotpointivtMapper.java new file mode 100644 index 0000000..631faf3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtHotpointivtMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtHotpointivt; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 烘烤区点位库存表(StIvtHotpointivt)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtHotpointivtMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtHotregioniomstMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtHotregioniomstMapper.java new file mode 100644 index 0000000..7cfb893 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtHotregioniomstMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtHotregioniomst; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 烘箱区出入主表(StIvtHotregioniomst)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtHotregioniomstMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtSbpointivtMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtSbpointivtMapper.java new file mode 100644 index 0000000..ae3ea5b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtSbpointivtMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtSbpointivt; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 生箔点位库存表(StIvtSbpointivt)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtSbpointivtMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtStpointivtMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtStpointivtMapper.java new file mode 100644 index 0000000..b9ee251 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/mapper/StIvtStpointivtMapper.java @@ -0,0 +1,15 @@ +package org.nl.wms.pdm.ivt.dao.mapper; + +import org.nl.wms.pdm.ivt.dao.StIvtStpointivt; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * {@code @Description:} 表处点位库存表(StIvtStpointivt)数据持久层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface StIvtStpointivtMapper extends BaseMapper { + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCoolpointivtMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCoolpointivtMapper.xml new file mode 100644 index 0000000..2a479ad --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCoolpointivtMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCoolregionioMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCoolregionioMapper.xml new file mode 100644 index 0000000..33294b7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCoolregionioMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCutpointivtMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCutpointivtMapper.xml new file mode 100644 index 0000000..5ab884d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtCutpointivtMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtDeliverypointivtMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtDeliverypointivtMapper.xml new file mode 100644 index 0000000..63532fb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtDeliverypointivtMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtEmptytubeivtMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtEmptytubeivtMapper.xml new file mode 100644 index 0000000..5d8b024 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtEmptytubeivtMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtEmptyvehiclerecordMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtEmptyvehiclerecordMapper.xml new file mode 100644 index 0000000..9ece1e6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtEmptyvehiclerecordMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtHotpointivtMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtHotpointivtMapper.xml new file mode 100644 index 0000000..ccd0b7e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtHotpointivtMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtHotregioniomstMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtHotregioniomstMapper.xml new file mode 100644 index 0000000..9cc7112 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtHotregioniomstMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtSbpointivtMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtSbpointivtMapper.xml new file mode 100644 index 0000000..6e7e8de --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtSbpointivtMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtStpointivtMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtStpointivtMapper.xml new file mode 100644 index 0000000..d767a52 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dao/xml/StIvtStpointivtMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolpointivtDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolpointivtDto.java new file mode 100644 index 0000000..ccdabbb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolpointivtDto.java @@ -0,0 +1,142 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 冷却区点位库存表(StIvtCoolpointivt)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtCoolpointivtDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 满轴位编码 + */ + private String full_point_code; + /** + * 母卷号 + */ + private String container_name; + /** + * 母卷工单标识 + */ + private String workorder_id; + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + /** + * 空轴位编码 + */ + private String empty_point_code; + /** + * 空轴编码 + */ + private String empty_vehicle_code; + /** + * 下料区域标识 + */ + private Long region_id; + /** + * 批次 + */ + private String pcsn; + /** + * 库存数 + */ + private BigDecimal ivt_qty; + /** + * 计量单位标识 + */ + private Long qty_unit_id; + /** + * 入库时间 + */ + private String instorage_time; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * 满轴位状态 + */ + private String full_point_status; + /** + * 库存状态 + */ + private String cool_ivt_status; + /** + * 空轴位状态 + */ + private String empty_point_status; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolpointivtParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolpointivtParam.java new file mode 100644 index 0000000..c5c1ccf --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolpointivtParam.java @@ -0,0 +1,137 @@ +package org.nl.wms.pdm.ivt.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; + +/** + * {@code @Description:} 冷却区点位库存表(StIvtCoolpointivt)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtCoolpointivtParam extends BaseQuery { + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 满轴位编码 + */ + private String full_point_code; + /** + * 母卷号 + */ + private String container_name; + /** + * 母卷工单标识 + */ + private String workorder_id; + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + /** + * 空轴位编码 + */ + private String empty_point_code; + /** + * 空轴编码 + */ + private String empty_vehicle_code; + /** + * 下料区域标识 + */ + private Long region_id; + /** + * 批次 + */ + private String pcsn; + /** + * 库存数 + */ + private BigDecimal ivt_qty; + /** + * 计量单位标识 + */ + private Long qty_unit_id; + /** + * 入库时间 + */ + private String instorage_time; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * 满轴位状态 + */ + private String full_point_status; + /** + * 库存状态 + */ + private String cool_ivt_status; + /** + * 空轴位状态 + */ + private String empty_point_status; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolregionioDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolregionioDto.java new file mode 100644 index 0000000..f37b6a9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolregionioDto.java @@ -0,0 +1,130 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 冷却区出入表(StIvtCoolregionio)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtCoolregionioDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 出入单标识 + */ + private Long iostorinv_id; + /** + * 单据编号 + */ + private String bill_code; + /** + * 出入类型 + */ + private String io_type; + /** + * 物料标识 + */ + private Long material_id; + /** + * 批次 + */ + private String pcsn; + /** + * 载具编码 + */ + private String vehicle_code; + /** + * 数量 + */ + private BigDecimal qty; + /** + * 数量单位标识 + */ + private Long qty_unit_id; + /** + * 单据状态 + */ + private String bill_status; + /** + * 起始点位编码 + */ + private String start_point_code; + /** + * 终点点位编码 + */ + private String end_point_code; + /** + * 客户标识 + */ + private Long cust_id; + /** + * 生成方式 + */ + private String create_mode; + /** + * 任务标识 + */ + private Long task_id; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 确认人 + */ + private Long confirm_optid; + /** + * 确认人姓名 + */ + private String confirm_optname; + /** + * 确认时间 + */ + private String confirm_time; + /** + * 是否删除 + */ + private String is_delete; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolregionioParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolregionioParam.java new file mode 100644 index 0000000..e93e811 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCoolregionioParam.java @@ -0,0 +1,125 @@ +package org.nl.wms.pdm.ivt.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtCoolregionio; + +/** + * {@code @Description:} 冷却区出入表(StIvtCoolregionio)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtCoolregionioParam extends BaseQuery { + /** + * 出入单标识 + */ + private String iostorinv_id; + /** + * 单据编号 + */ + private String bill_code; + /** + * 出入类型 + */ + private String io_type; + /** + * 物料标识 + */ + private Long material_id; + /** + * 批次 + */ + private String pcsn; + /** + * 载具编码 + */ + private String vehicle_code; + /** + * 数量 + */ + private BigDecimal qty; + /** + * 数量单位标识 + */ + private Long qty_unit_id; + /** + * 单据状态 + */ + private String bill_status; + /** + * 起始点位编码 + */ + private String start_point_code; + /** + * 终点点位编码 + */ + private String end_point_code; + /** + * 客户标识 + */ + private Long cust_id; + /** + * 生成方式 + */ + private String create_mode; + /** + * 任务标识 + */ + private Long task_id; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 确认人 + */ + private Long confirm_optid; + /** + * 确认人姓名 + */ + private String confirm_optname; + /** + * 确认时间 + */ + private String confirm_time; + /** + * 是否删除 + */ + private String is_delete; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCutpointivtDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCutpointivtDto.java new file mode 100644 index 0000000..1d325f5 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCutpointivtDto.java @@ -0,0 +1,138 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 分切区点位库存表(StIvtCutpointivt)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtCutpointivtDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 满轴位编码 + */ + private String full_point_code; + /** + * 满轴位状态 + */ + private String full_point_status; + /** + * 母卷号 + */ + private String container_name; + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + /** + * 空轴位编码 + */ + private String empty_point_code; + /** + * 空轴位状态 + */ + private String empty_point_status; + /** + * 空轴编码 + */ + private String empty_vehicle_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 分切下料位上轴点位 + */ + private String up_point_code; + /** + * 分切下料位下轴点位 + */ + private String down_point_code; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * 对应MES系统设备编码 + */ + private String ext_code; + /** + * 分切下料位上轴 + */ + private String up_qzzno; + /** + * 分切下料位下轴 + */ + private String down_qzzno; + /** + * 气胀轴代数 + */ + private String qzz_generation; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCutpointivtParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCutpointivtParam.java new file mode 100644 index 0000000..e713529 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtCutpointivtParam.java @@ -0,0 +1,133 @@ +package org.nl.wms.pdm.ivt.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtCutpointivt; + +/** + * {@code @Description:} 分切区点位库存表(StIvtCutpointivt)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtCutpointivtParam extends BaseQuery { + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 满轴位编码 + */ + private String full_point_code; + /** + * 满轴位状态 + */ + private String full_point_status; + /** + * 母卷号 + */ + private String container_name; + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + /** + * 空轴位编码 + */ + private String empty_point_code; + /** + * 空轴位状态 + */ + private String empty_point_status; + /** + * 空轴编码 + */ + private String empty_vehicle_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 分切下料位上轴点位 + */ + private String up_point_code; + /** + * 分切下料位下轴点位 + */ + private String down_point_code; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * 对应MES系统设备编码 + */ + private String ext_code; + /** + * 分切下料位上轴 + */ + private String up_qzzno; + /** + * 分切下料位下轴 + */ + private String down_qzzno; + /** + * 气胀轴代数 + */ + private String qzz_generation; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtDeliverypointivtDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtDeliverypointivtDto.java new file mode 100644 index 0000000..2d21214 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtDeliverypointivtDto.java @@ -0,0 +1,98 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 分切输送线点位库存表(StIvtDeliverypointivt)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtDeliverypointivtDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * 气涨轴编码 + */ + private String qzzno; + /** + * 载具码 + */ + private String vehicle_code; + /** + * 点位状态 + */ + private String point_status; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtDeliverypointivtParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtDeliverypointivtParam.java new file mode 100644 index 0000000..5f87a81 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtDeliverypointivtParam.java @@ -0,0 +1,93 @@ +package org.nl.wms.pdm.ivt.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtDeliverypointivt; + +/** + * {@code @Description:} 分切输送线点位库存表(StIvtDeliverypointivt)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtDeliverypointivtParam extends BaseQuery { + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * 气涨轴编码 + */ + private String qzzno; + /** + * 载具码 + */ + private String vehicle_code; + /** + * 点位状态 + */ + private String point_status; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptytubeivtDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptytubeivtDto.java new file mode 100644 index 0000000..1a39326 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptytubeivtDto.java @@ -0,0 +1,94 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 空纸管库区点位库存表(StIvtEmptytubeivt)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtEmptytubeivtDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 物料编码 + */ + private String material_code; + /** + * 物料名称 + */ + private String material_name; + /** + * 数量 + */ + private BigDecimal qty; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptytubeivtParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptytubeivtParam.java new file mode 100644 index 0000000..1377eaa --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptytubeivtParam.java @@ -0,0 +1,89 @@ +package org.nl.wms.pdm.ivt.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtEmptytubeivt; + +/** + * {@code @Description:} 空纸管库区点位库存表(StIvtEmptytubeivt)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtEmptytubeivtParam extends BaseQuery { + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 物料编码 + */ + private String material_code; + /** + * 物料名称 + */ + private String material_name; + /** + * 数量 + */ + private BigDecimal qty; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptyvehiclerecordDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptyvehiclerecordDto.java new file mode 100644 index 0000000..19365eb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptyvehiclerecordDto.java @@ -0,0 +1,102 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 空载具作业记录表(StIvtEmptyvehiclerecord)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtEmptyvehiclerecordDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 记录标识 + */ + private Long record_uuid; + /** + * 单据编号 + */ + private String bill_code; + /** + * 单据类型 + */ + private String io_type; + /** + * 单据状态 + */ + private String bill_status; + /** + * 载具数量 + */ + private BigDecimal vehicle_qty; + /** + * 起始点位 + */ + private String start_point_code; + /** + * 下一点位 + */ + private String next_point_code; + /** + * 起始区域 + */ + private Long start_region_id; + /** + * 终点区域 + */ + private Long end_region_id; + /** + * 任务标识 + */ + private Long task_uuid; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 是否删除 + */ + private String is_delete; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptyvehiclerecordParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptyvehiclerecordParam.java new file mode 100644 index 0000000..bd273ad --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtEmptyvehiclerecordParam.java @@ -0,0 +1,97 @@ +package org.nl.wms.pdm.ivt.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtEmptyvehiclerecord; + +/** + * {@code @Description:} 空载具作业记录表(StIvtEmptyvehiclerecord)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtEmptyvehiclerecordParam extends BaseQuery { + /** + * 记录标识 + */ + private Long record_uuid; + /** + * 单据编号 + */ + private String bill_code; + /** + * 单据类型 + */ + private String io_type; + /** + * 单据状态 + */ + private String bill_status; + /** + * 载具数量 + */ + private BigDecimal vehicle_qty; + /** + * 起始点位 + */ + private String start_point_code; + /** + * 下一点位 + */ + private String next_point_code; + /** + * 起始区域 + */ + private Long start_region_id; + /** + * 终点区域 + */ + private Long end_region_id; + /** + * 任务标识 + */ + private Long task_uuid; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 是否删除 + */ + private String is_delete; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotpointivtDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotpointivtDto.java new file mode 100644 index 0000000..da06dce --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotpointivtDto.java @@ -0,0 +1,134 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 烘烤区点位库存表(StIvtHotpointivt)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtHotpointivtDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 点位状态 + */ + private String point_status; + /** + * 母卷号 + */ + private String container_name; + /** + * 母卷工单标识 + */ + private String workorder_id; + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + /** + * 批次 + */ + private String pcsn; + /** + * 库存数 + */ + private BigDecimal ivt_qty; + /** + * 计量单位标识 + */ + private Long qty_unit_id; + /** + * 入库时间 + */ + private String instorage_time; + /** + * 生产区域 + */ + private String product_area; + /** + * 温度 + */ + private BigDecimal temperature; + /** + * 组别 + */ + private String group_name; + /** + * 位置 + */ + private String point_location; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * 外部编码 + */ + private String ext_code; + /** + * 倒计时 + */ + private String last_time; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotpointivtParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotpointivtParam.java new file mode 100644 index 0000000..26e6cfd --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotpointivtParam.java @@ -0,0 +1,129 @@ +package org.nl.wms.pdm.ivt.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtHotpointivt; + +/** + * {@code @Description:} 烘烤区点位库存表(StIvtHotpointivt)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtHotpointivtParam extends BaseQuery { + /** + * 库存记录标识 + */ + private Long ivt_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 点位状态 + */ + private String point_status; + /** + * 母卷号 + */ + private String container_name; + /** + * 母卷工单标识 + */ + private String workorder_id; + /** + * 母卷轴编码 + */ + private String full_vehicle_code; + /** + * 批次 + */ + private String pcsn; + /** + * 库存数 + */ + private BigDecimal ivt_qty; + /** + * 计量单位标识 + */ + private Long qty_unit_id; + /** + * 入库时间 + */ + private String instorage_time; + /** + * 生产区域 + */ + private String product_area; + /** + * 温度 + */ + private BigDecimal temperature; + /** + * 组别 + */ + private String group_name; + /** + * 位置 + */ + private String point_location; + /** + * 顺序号 + */ + private BigDecimal sort_seq; + /** + * 是否启用 + */ + private String is_used; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人姓名 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * 外部编码 + */ + private String ext_code; + /** + * 倒计时 + */ + private String last_time; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotregioniomstDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotregioniomstDto.java new file mode 100644 index 0000000..d18c9f0 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotregioniomstDto.java @@ -0,0 +1,134 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.math.BigDecimal; +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 烘箱区出入主表(StIvtHotregioniomst)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtHotregioniomstDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 出入单标识 + */ + private Long iostorinv_id; + /** + * 出入类型 + */ + private String io_type; + /** + * 单据编号 + */ + private String bill_code; + /** + * 母卷号 + */ + private String container_name; + /** + * 母卷工单标识 + */ + private String workorder_id; + /** + * 物料标识 + */ + private Long material_id; + /** + * 批次 + */ + private String pcsn; + /** + * 载具编码 + */ + private String vehicle_code; + /** + * 数量 + */ + private BigDecimal qty; + /** + * 数量单位标识 + */ + private Long qty_unit_id; + /** + * 单据状态 + */ + private String bill_status; + /** + * 生成方式 + */ + private String create_mode; + /** + * 起始点位编码 + */ + private String start_point_code; + /** + * 终点点位编码 + */ + private String end_point_code; + /** + * 任务类型 + */ + private String task_type; + /** + * 任务标识 + */ + private Long task_id; + /** + * 烘箱温度 + */ + private BigDecimal temperature; + /** + * 烘烤时间 + */ + private BigDecimal oven_time; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 确认人 + */ + private Long confirm_optid; + /** + * 确认人姓名 + */ + private String confirm_optname; + /** + * 确认时间 + */ + private String confirm_time; + /** + * 是否删除 + */ + private String is_delete; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotregioniomstParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotregioniomstParam.java new file mode 100644 index 0000000..3884122 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtHotregioniomstParam.java @@ -0,0 +1,129 @@ +package org.nl.wms.pdm.ivt.dto; + + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtHotregioniomst; + +/** + * {@code @Description:} 烘箱区出入主表(StIvtHotregioniomst)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtHotregioniomstParam extends BaseQuery { + /** + * 出入单标识 + */ + private Long iostorinv_id; + /** + * 出入类型 + */ + private String io_type; + /** + * 单据编号 + */ + private String bill_code; + /** + * 母卷号 + */ + private String container_name; + /** + * 母卷工单标识 + */ + private String workorder_id; + /** + * 物料标识 + */ + private Long material_id; + /** + * 批次 + */ + private String pcsn; + /** + * 载具编码 + */ + private String vehicle_code; + /** + * 数量 + */ + private BigDecimal qty; + /** + * 数量单位标识 + */ + private Long qty_unit_id; + /** + * 单据状态 + */ + private String bill_status; + /** + * 生成方式 + */ + private String create_mode; + /** + * 起始点位编码 + */ + private String start_point_code; + /** + * 终点点位编码 + */ + private String end_point_code; + /** + * 任务类型 + */ + private String task_type; + /** + * 任务标识 + */ + private Long task_id; + /** + * 烘箱温度 + */ + private BigDecimal temperature; + /** + * 烘烤时间 + */ + private BigDecimal oven_time; + /** + * 备注 + */ + private String remark; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人姓名 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 确认人 + */ + private Long confirm_optid; + /** + * 确认人姓名 + */ + private String confirm_optname; + /** + * 确认时间 + */ + private String confirm_time; + /** + * 是否删除 + */ + private String is_delete; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtSbpointivtDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtSbpointivtDto.java new file mode 100644 index 0000000..680aeb3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtSbpointivtDto.java @@ -0,0 +1,93 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 生箔点位库存表(StIvtSbpointivt)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtSbpointivtDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 点位标识 + */ + private Long point_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 载具编码 + */ + private String vehicle_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 外部编码 + */ + private String ext_code; + /** + * 备注 + */ + private String remark; + /** + * 是否启用 + */ + private String is_used; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * MES启用 + */ + private String mes_used; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtSbpointivtParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtSbpointivtParam.java new file mode 100644 index 0000000..67f8260 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtSbpointivtParam.java @@ -0,0 +1,87 @@ +package org.nl.wms.pdm.ivt.dto; + + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtSbpointivt; + +/** + * {@code @Description:} 生箔点位库存表(StIvtSbpointivt)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtSbpointivtParam extends BaseQuery { + /** + * 点位标识 + */ + private Long point_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 载具编码 + */ + private String vehicle_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 外部编码 + */ + private String ext_code; + /** + * 备注 + */ + private String remark; + /** + * 是否启用 + */ + private String is_used; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + /** + * MES启用 + */ + private String mes_used; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtStpointivtDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtStpointivtDto.java new file mode 100644 index 0000000..a0f32d4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtStpointivtDto.java @@ -0,0 +1,109 @@ +package org.nl.wms.pdm.ivt.dto; + +import java.io.Serializable; + +import lombok.*; +import lombok.Data; +import lombok.Builder; + + +/** + * {@code @Description:} 表处点位库存表(StIvtStpointivt)数据传输类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StIvtStpointivtDto implements Serializable { + + private static final long serialVersionUID = -7739291296662381396L; + + + /** + * 点位标识 + */ + private Long point_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 表处上料位轴编码 + */ + private String up_scroll; + /** + * 表处上料位母卷号 + */ + private String up_pcsn; + /** + * 表处上料点位编码 + */ + private String up_point_code; + /** + * 表处下料位轴编码 + */ + private String down_scroll; + /** + * 表处下料位母卷号 + */ + private String down_pcsn; + /** + * 表处下料点位编码 + */ + private String down_point_code; + /** + * 外部编码 + */ + private String ext_code; + /** + * 备注 + */ + private String remark; + /** + * 是否启用 + */ + private String is_used; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; + +} + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtStpointivtParam.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtStpointivtParam.java new file mode 100644 index 0000000..0bff508 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/dto/StIvtStpointivtParam.java @@ -0,0 +1,103 @@ +package org.nl.wms.pdm.ivt.dto; + + +import lombok.Data; +import lombok.*; +import lombok.EqualsAndHashCode; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.ivt.dao.StIvtStpointivt; + +/** + * {@code @Description:} 表处点位库存表(StIvtStpointivt)查询参数类 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +public class StIvtStpointivtParam extends BaseQuery { + /** + * 点位标识 + */ + private Long point_id; + /** + * 点位编码 + */ + private String point_code; + /** + * 生产区域 + */ + private String product_area; + /** + * 位置 + */ + private String point_location; + /** + * 表处上料位轴编码 + */ + private String up_scroll; + /** + * 表处上料位母卷号 + */ + private String up_pcsn; + /** + * 表处上料点位编码 + */ + private String up_point_code; + /** + * 表处下料位轴编码 + */ + private String down_scroll; + /** + * 表处下料位母卷号 + */ + private String down_pcsn; + /** + * 表处下料点位编码 + */ + private String down_point_code; + /** + * 外部编码 + */ + private String ext_code; + /** + * 备注 + */ + private String remark; + /** + * 是否启用 + */ + private String is_used; + /** + * 创建人 + */ + private Long create_id; + /** + * 创建人 + */ + private String create_name; + /** + * 创建时间 + */ + private String create_time; + /** + * 修改人 + */ + private Long update_optid; + /** + * 修改人 + */ + private String update_optname; + /** + * 修改时间 + */ + private String update_time; + /** + * 规划 + */ + private String plan; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCoolpointivtService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCoolpointivtService.java new file mode 100644 index 0000000..ea4c3a6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCoolpointivtService.java @@ -0,0 +1,65 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtCoolpointivtParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 冷却区点位库存表(StIvtCoolpointivt)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtCoolpointivtService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtCoolpointivtParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtCoolpointivtParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtCoolpointivtParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCoolregionioService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCoolregionioService.java new file mode 100644 index 0000000..a0b76d1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCoolregionioService.java @@ -0,0 +1,73 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtCoolregionio; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtCoolregionioParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 冷却区出入表(StIvtCoolregionio)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtCoolregionioService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtCoolregionioParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtCoolregionioParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtCoolregionioParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + + /** + * 物理删除 + * + * @param id 主键 + */ + void delete(String id); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCutpointivtService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCutpointivtService.java new file mode 100644 index 0000000..51ef787 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtCutpointivtService.java @@ -0,0 +1,65 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtCutpointivt; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtCutpointivtParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 分切区点位库存表(StIvtCutpointivt)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtCutpointivtService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtCutpointivtParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtCutpointivtParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtCutpointivtParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtDeliverypointivtService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtDeliverypointivtService.java new file mode 100644 index 0000000..0122eaf --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtDeliverypointivtService.java @@ -0,0 +1,65 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtDeliverypointivt; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtDeliverypointivtParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 分切输送线点位库存表(StIvtDeliverypointivt)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtDeliverypointivtService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtDeliverypointivtParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtDeliverypointivtParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtDeliverypointivtParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtEmptytubeivtService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtEmptytubeivtService.java new file mode 100644 index 0000000..728e2f9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtEmptytubeivtService.java @@ -0,0 +1,65 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtEmptytubeivt; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtEmptytubeivtParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 空纸管库区点位库存表(StIvtEmptytubeivt)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtEmptytubeivtService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtEmptytubeivtParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtEmptytubeivtParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtEmptytubeivtParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtEmptyvehiclerecordService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtEmptyvehiclerecordService.java new file mode 100644 index 0000000..522f3bb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtEmptyvehiclerecordService.java @@ -0,0 +1,65 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtEmptyvehiclerecord; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtEmptyvehiclerecordParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 空载具作业记录表(StIvtEmptyvehiclerecord)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtEmptyvehiclerecordService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtEmptyvehiclerecordParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtEmptyvehiclerecordParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtEmptyvehiclerecordParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtHotpointivtService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtHotpointivtService.java new file mode 100644 index 0000000..55fb753 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtHotpointivtService.java @@ -0,0 +1,65 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtHotpointivt; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtHotpointivtParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 烘烤区点位库存表(StIvtHotpointivt)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtHotpointivtService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtHotpointivtParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtHotpointivtParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtHotpointivtParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtHotregioniomstService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtHotregioniomstService.java new file mode 100644 index 0000000..877068f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtHotregioniomstService.java @@ -0,0 +1,71 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtHotregioniomst; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtHotregioniomstParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 烘箱区出入主表(StIvtHotregioniomst)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtHotregioniomstService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtHotregioniomstParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtHotregioniomstParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtHotregioniomstParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + /** + * 物理删除 + * + * @param id 主键 + */ + void delete(String id); + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtSbpointivtService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtSbpointivtService.java new file mode 100644 index 0000000..a00f959 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtSbpointivtService.java @@ -0,0 +1,65 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtSbpointivt; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtSbpointivtParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 生箔点位库存表(StIvtSbpointivt)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtSbpointivtService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtSbpointivtParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtSbpointivtParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtSbpointivtParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtStpointivtService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtStpointivtService.java new file mode 100644 index 0000000..1bf4769 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/IstIvtStpointivtService.java @@ -0,0 +1,65 @@ +package org.nl.wms.pdm.ivt.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.ivt.dao.StIvtStpointivt; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.ivt.dto.StIvtStpointivtParam; + +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * {@code @Description:} 表处点位库存表(StIvtStpointivt)服务接口层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +public interface IstIvtStpointivtService extends IService { + + + /** + * 分页查询 + * + * @param whereJson 查询条件 + * @return IPage + */ + IPage query(Map whereJson, PageQuery page); + + /** + * 条件查询 + * + * @param params 查询条件 + * @return List + */ + List selectList(StIvtStpointivtParam params); + + + /** + * 创建 + * + * @param params 对象实体 + */ + void create(StIvtStpointivtParam params); + + + /** + * 编辑 + * + * @param params 对象实体 + */ + void update(StIvtStpointivtParam params); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + +} + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCoolpointivtServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCoolpointivtServiceImpl.java new file mode 100644 index 0000000..18a3522 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCoolpointivtServiceImpl.java @@ -0,0 +1,170 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; +import org.nl.wms.pdm.ivt.dto.StIvtCoolpointivtParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtCoolpointivtMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtCoolpointivtService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 冷却区点位库存表(StIvtCoolpointivt)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtCoolpointivtService") +public class StIvtCoolpointivtServiceImpl extends ServiceImpl implements IstIvtCoolpointivtService { + + + @Resource + private StIvtCoolpointivtMapper stIvtCoolpointivtMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (whereJson.containsKey("product_area")) { + queryWrapper.eq(StIvtCoolpointivt::getProduct_area, whereJson.get("product_area")); + } + if (whereJson.containsKey("point_code")) { + queryWrapper.like(StIvtCoolpointivt::getPoint_code, whereJson.get("point_code")); + } + if (whereJson.containsKey("container_name")) { + queryWrapper.like(StIvtCoolpointivt::getContainer_name, whereJson.get("container_name")); + } + if (whereJson.containsKey("full_point_status")) { + queryWrapper.eq(StIvtCoolpointivt::getFull_point_status, whereJson.get("full_point_status")); + } + if (whereJson.containsKey("empty_point_status")) { + queryWrapper.eq(StIvtCoolpointivt::getEmpty_point_status, whereJson.get("empty_point_status")); + } + if (whereJson.containsKey("cool_ivt_status")) { + queryWrapper.eq(StIvtCoolpointivt::getCool_ivt_status, whereJson.get("cool_ivt_status")); + } + if (whereJson.containsKey("is_used")) { + queryWrapper.eq(StIvtCoolpointivt::getIs_used, whereJson.get("is_used")); + } + if (whereJson.containsKey("begin_time")) { + queryWrapper.le(StIvtCoolpointivt::getInstorage_time, whereJson.get("begin_time")); + } + if (whereJson.containsKey("end_time")) { + queryWrapper.ge(StIvtCoolpointivt::getInstorage_time, whereJson.get("end_time")); + } + if (whereJson.containsKey("point_location")) { + queryWrapper.eq(StIvtCoolpointivt::getPoint_location, whereJson.get("point_location")); + } + queryWrapper.orderByDesc(StIvtCoolpointivt::getPoint_code); + return stIvtCoolpointivtMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtCoolpointivtParam params) { + return stIvtCoolpointivtMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtCoolpointivt::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtCoolpointivt::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtCoolpointivtParam params) { + stIvtCoolpointivtMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtCoolpointivtParam params) { + // StIvtCoolpointivt dto = stIvtCoolpointivtMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtCoolpointivtMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtCoolpointivtMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtCoolpointivt getBasicInfo(StIvtCoolpointivtParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtCoolpointivt stIvtCoolpointivt = new StIvtCoolpointivt(); + BeanUtils.copyProperties(params, stIvtCoolpointivt); + return stIvtCoolpointivt; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCoolregionioServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCoolregionioServiceImpl.java new file mode 100644 index 0000000..8078cca --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCoolregionioServiceImpl.java @@ -0,0 +1,155 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.common.exception.BadRequestException; +import org.nl.wms.pdm.ivt.dao.StIvtCoolregionio; +import org.nl.wms.pdm.ivt.dto.StIvtCoolregionioParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtCoolregionioMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtCoolregionioService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 冷却区出入表(StIvtCoolregionio)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtCoolregionioService") +public class StIvtCoolregionioServiceImpl extends ServiceImpl implements IstIvtCoolregionioService { + + + @Resource + private StIvtCoolregionioMapper stIvtCoolregionioMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(StIvtCoolregionio::getName, whereJson.get("name")); + // } + //queryWrapper.eq(StIvtCoolregionio::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(StIvtCoolregionio::getName); + return stIvtCoolregionioMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtCoolregionioParam params) { + return stIvtCoolregionioMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtCoolregionio::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtCoolregionio::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtCoolregionioParam params) { + stIvtCoolregionioMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtCoolregionioParam params) { + StIvtCoolregionio dto = stIvtCoolregionioMapper.selectById(params.getIostorinv_id()); + if (dto == null) { + throw new BadRequestException("不存在该数据!"); + } + stIvtCoolregionioMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtCoolregionioMapper.update(null, updateWrapper); + } + /** + * 物理删除 + * + * @param id 主键 + */ + @Override + public void delete(String id) { + stIvtCoolregionioMapper.delete(new LambdaQueryWrapper().eq(StIvtCoolregionio::getTask_id,id)); + } + + + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtCoolregionio getBasicInfo(StIvtCoolregionioParam params, boolean isCreate) { + if (isCreate) { + params.setIostorinv_id(IdUtil.getStringId()); + params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + params.setCreate_name(SecurityUtils.getCurrentNickName()); + params.setCreate_time(DateUtil.now()); + params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + } + params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + params.setUpdate_time(DateUtil.now()); + StIvtCoolregionio stIvtCoolregionio = new StIvtCoolregionio(); + BeanUtils.copyProperties(params, stIvtCoolregionio); + return stIvtCoolregionio; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCutpointivtServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCutpointivtServiceImpl.java new file mode 100644 index 0000000..04f59e7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtCutpointivtServiceImpl.java @@ -0,0 +1,143 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.ivt.dao.StIvtCutpointivt; +import org.nl.wms.pdm.ivt.dto.StIvtCutpointivtParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtCutpointivtMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtCutpointivtService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 分切区点位库存表(StIvtCutpointivt)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtCutpointivtService") +public class StIvtCutpointivtServiceImpl extends ServiceImpl implements IstIvtCutpointivtService { + + + @Resource + private StIvtCutpointivtMapper stIvtCutpointivtMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(StIvtCutpointivt::getName, whereJson.get("name")); + // } + //queryWrapper.eq(StIvtCutpointivt::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(StIvtCutpointivt::getName); + return stIvtCutpointivtMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtCutpointivtParam params) { + return stIvtCutpointivtMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtCutpointivt::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtCutpointivt::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtCutpointivtParam params) { + stIvtCutpointivtMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtCutpointivtParam params) { + // StIvtCutpointivt dto = stIvtCutpointivtMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtCutpointivtMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtCutpointivtMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtCutpointivt getBasicInfo(StIvtCutpointivtParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtCutpointivt stIvtCutpointivt = new StIvtCutpointivt(); + BeanUtils.copyProperties(params, stIvtCutpointivt); + return stIvtCutpointivt; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtDeliverypointivtServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtDeliverypointivtServiceImpl.java new file mode 100644 index 0000000..aa839e2 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtDeliverypointivtServiceImpl.java @@ -0,0 +1,143 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.ivt.dao.StIvtDeliverypointivt; +import org.nl.wms.pdm.ivt.dto.StIvtDeliverypointivtParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtDeliverypointivtMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtDeliverypointivtService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 分切输送线点位库存表(StIvtDeliverypointivt)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtDeliverypointivtService") +public class StIvtDeliverypointivtServiceImpl extends ServiceImpl implements IstIvtDeliverypointivtService { + + + @Resource + private StIvtDeliverypointivtMapper stIvtDeliverypointivtMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(StIvtDeliverypointivt::getName, whereJson.get("name")); + // } + //queryWrapper.eq(StIvtDeliverypointivt::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(StIvtDeliverypointivt::getName); + return stIvtDeliverypointivtMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtDeliverypointivtParam params) { + return stIvtDeliverypointivtMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtDeliverypointivt::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtDeliverypointivt::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtDeliverypointivtParam params) { + stIvtDeliverypointivtMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtDeliverypointivtParam params) { + // StIvtDeliverypointivt dto = stIvtDeliverypointivtMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtDeliverypointivtMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtDeliverypointivtMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtDeliverypointivt getBasicInfo(StIvtDeliverypointivtParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtDeliverypointivt stIvtDeliverypointivt = new StIvtDeliverypointivt(); + BeanUtils.copyProperties(params, stIvtDeliverypointivt); + return stIvtDeliverypointivt; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtEmptytubeivtServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtEmptytubeivtServiceImpl.java new file mode 100644 index 0000000..3087991 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtEmptytubeivtServiceImpl.java @@ -0,0 +1,143 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.ivt.dao.StIvtEmptytubeivt; +import org.nl.wms.pdm.ivt.dto.StIvtEmptytubeivtParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtEmptytubeivtMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtEmptytubeivtService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 空纸管库区点位库存表(StIvtEmptytubeivt)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtEmptytubeivtService") +public class StIvtEmptytubeivtServiceImpl extends ServiceImpl implements IstIvtEmptytubeivtService { + + + @Resource + private StIvtEmptytubeivtMapper stIvtEmptytubeivtMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(StIvtEmptytubeivt::getName, whereJson.get("name")); + // } + //queryWrapper.eq(StIvtEmptytubeivt::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(StIvtEmptytubeivt::getName); + return stIvtEmptytubeivtMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtEmptytubeivtParam params) { + return stIvtEmptytubeivtMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtEmptytubeivt::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtEmptytubeivt::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtEmptytubeivtParam params) { + stIvtEmptytubeivtMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtEmptytubeivtParam params) { + // StIvtEmptytubeivt dto = stIvtEmptytubeivtMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtEmptytubeivtMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtEmptytubeivtMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtEmptytubeivt getBasicInfo(StIvtEmptytubeivtParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtEmptytubeivt stIvtEmptytubeivt = new StIvtEmptytubeivt(); + BeanUtils.copyProperties(params, stIvtEmptytubeivt); + return stIvtEmptytubeivt; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtEmptyvehiclerecordServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtEmptyvehiclerecordServiceImpl.java new file mode 100644 index 0000000..a28f9c1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtEmptyvehiclerecordServiceImpl.java @@ -0,0 +1,143 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.ivt.dao.StIvtEmptyvehiclerecord; +import org.nl.wms.pdm.ivt.dto.StIvtEmptyvehiclerecordParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtEmptyvehiclerecordMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtEmptyvehiclerecordService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 空载具作业记录表(StIvtEmptyvehiclerecord)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtEmptyvehiclerecordService") +public class StIvtEmptyvehiclerecordServiceImpl extends ServiceImpl implements IstIvtEmptyvehiclerecordService { + + + @Resource + private StIvtEmptyvehiclerecordMapper stIvtEmptyvehiclerecordMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(StIvtEmptyvehiclerecord::getName, whereJson.get("name")); + // } + //queryWrapper.eq(StIvtEmptyvehiclerecord::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(StIvtEmptyvehiclerecord::getName); + return stIvtEmptyvehiclerecordMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtEmptyvehiclerecordParam params) { + return stIvtEmptyvehiclerecordMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtEmptyvehiclerecord::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtEmptyvehiclerecord::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtEmptyvehiclerecordParam params) { + stIvtEmptyvehiclerecordMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtEmptyvehiclerecordParam params) { + // StIvtEmptyvehiclerecord dto = stIvtEmptyvehiclerecordMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtEmptyvehiclerecordMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtEmptyvehiclerecordMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtEmptyvehiclerecord getBasicInfo(StIvtEmptyvehiclerecordParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtEmptyvehiclerecord stIvtEmptyvehiclerecord = new StIvtEmptyvehiclerecord(); + BeanUtils.copyProperties(params, stIvtEmptyvehiclerecord); + return stIvtEmptyvehiclerecord; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtHotpointivtServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtHotpointivtServiceImpl.java new file mode 100644 index 0000000..70260fd --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtHotpointivtServiceImpl.java @@ -0,0 +1,143 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.ivt.dao.StIvtHotpointivt; +import org.nl.wms.pdm.ivt.dto.StIvtHotpointivtParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtHotpointivtMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtHotpointivtService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 烘烤区点位库存表(StIvtHotpointivt)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtHotpointivtService") +public class StIvtHotpointivtServiceImpl extends ServiceImpl implements IstIvtHotpointivtService { + + + @Resource + private StIvtHotpointivtMapper stIvtHotpointivtMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(StIvtHotpointivt::getName, whereJson.get("name")); + // } + //queryWrapper.eq(StIvtHotpointivt::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(StIvtHotpointivt::getName); + return stIvtHotpointivtMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtHotpointivtParam params) { + return stIvtHotpointivtMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtHotpointivt::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtHotpointivt::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtHotpointivtParam params) { + stIvtHotpointivtMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtHotpointivtParam params) { + // StIvtHotpointivt dto = stIvtHotpointivtMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtHotpointivtMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtHotpointivtMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtHotpointivt getBasicInfo(StIvtHotpointivtParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtHotpointivt stIvtHotpointivt = new StIvtHotpointivt(); + BeanUtils.copyProperties(params, stIvtHotpointivt); + return stIvtHotpointivt; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtHotregioniomstServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtHotregioniomstServiceImpl.java new file mode 100644 index 0000000..2448fe4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtHotregioniomstServiceImpl.java @@ -0,0 +1,149 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.ivt.dao.StIvtCoolregionio; +import org.nl.wms.pdm.ivt.dao.StIvtHotregioniomst; +import org.nl.wms.pdm.ivt.dto.StIvtHotregioniomstParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtHotregioniomstMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtHotregioniomstService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 烘箱区出入主表(StIvtHotregioniomst)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtHotregioniomstService") +public class StIvtHotregioniomstServiceImpl extends ServiceImpl implements IstIvtHotregioniomstService { + + + @Resource + private StIvtHotregioniomstMapper stIvtHotregioniomstMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(StIvtHotregioniomst::getName, whereJson.get("name")); + // } + //queryWrapper.eq(StIvtHotregioniomst::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(StIvtHotregioniomst::getName); + return stIvtHotregioniomstMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtHotregioniomstParam params) { + return stIvtHotregioniomstMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtHotregioniomst::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtHotregioniomst::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtHotregioniomstParam params) { + stIvtHotregioniomstMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtHotregioniomstParam params) { + // StIvtHotregioniomst dto = stIvtHotregioniomstMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtHotregioniomstMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtHotregioniomstMapper.update(null, updateWrapper); + } + + @Override + public void delete(String id) { + stIvtHotregioniomstMapper.delete(new LambdaQueryWrapper().eq(StIvtHotregioniomst::getTask_id,id)); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtHotregioniomst getBasicInfo(StIvtHotregioniomstParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtHotregioniomst stIvtHotregioniomst = new StIvtHotregioniomst(); + BeanUtils.copyProperties(params, stIvtHotregioniomst); + return stIvtHotregioniomst; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtSbpointivtServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtSbpointivtServiceImpl.java new file mode 100644 index 0000000..9727054 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtSbpointivtServiceImpl.java @@ -0,0 +1,152 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; +import org.nl.wms.pdm.ivt.dao.StIvtSbpointivt; +import org.nl.wms.pdm.ivt.dto.StIvtSbpointivtParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtSbpointivtMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtSbpointivtService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 生箔点位库存表(StIvtSbpointivt)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtSbpointivtService") +public class StIvtSbpointivtServiceImpl extends ServiceImpl implements IstIvtSbpointivtService { + + + @Resource + private StIvtSbpointivtMapper stIvtSbpointivtMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (whereJson.containsKey("point_code")) { + queryWrapper.like(StIvtSbpointivt::getPoint_code, whereJson.get("point_code")); + } + if (whereJson.containsKey("product_area")) { + queryWrapper.eq(StIvtSbpointivt::getProduct_area, whereJson.get("product_area")); + } + if (whereJson.containsKey("is_used")) { + queryWrapper.eq(StIvtSbpointivt::getIs_used, whereJson.get("is_used")); + } + if (whereJson.containsKey("mes_used")) { + queryWrapper.eq(StIvtSbpointivt::getMes_used, whereJson.get("mes_used")); + } + queryWrapper.orderByDesc(StIvtSbpointivt::getPoint_code); + return stIvtSbpointivtMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtSbpointivtParam params) { + return stIvtSbpointivtMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtSbpointivt::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtSbpointivt::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtSbpointivtParam params) { + stIvtSbpointivtMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtSbpointivtParam params) { + // StIvtSbpointivt dto = stIvtSbpointivtMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtSbpointivtMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtSbpointivtMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtSbpointivt getBasicInfo(StIvtSbpointivtParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtSbpointivt stIvtSbpointivt = new StIvtSbpointivt(); + BeanUtils.copyProperties(params, stIvtSbpointivt); + return stIvtSbpointivt; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtStpointivtServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtStpointivtServiceImpl.java new file mode 100644 index 0000000..9407b34 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/ivt/service/impl/StIvtStpointivtServiceImpl.java @@ -0,0 +1,143 @@ +package org.nl.wms.pdm.ivt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.nl.wms.pdm.ivt.dao.StIvtStpointivt; +import org.nl.wms.pdm.ivt.dto.StIvtStpointivtParam; +import org.nl.wms.pdm.ivt.dao.mapper.StIvtStpointivtMapper; +import cn.hutool.core.util.ObjectUtil; +import org.nl.wms.pdm.ivt.service.IstIvtStpointivtService; +import cn.hutool.core.date.DateUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.BeanUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.IdUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; + +import javax.annotation.Resource; +import java.util.Map; +import java.util.Set; +import java.util.List; + + +/** + * {@code @Description:} 表处点位库存表(StIvtStpointivt)服务实现层 + * {@code @Author:} gbx + * + * @since 2024-04-01 + */ +@Service("stIvtStpointivtService") +public class StIvtStpointivtServiceImpl extends ServiceImpl implements IstIvtStpointivtService { + + + @Resource + private StIvtStpointivtMapper stIvtStpointivtMapper; + + + /** + * 查询数据分页 + * + * @param whereJson 查询条件 + * @param page 分页参数 + */ + @Override + public IPage query(Map whereJson, PageQuery page) { + IPage resultPage = new Page<>(page.getPage(), page.getSize()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // if (whereJson.containsKey("name")) { + // queryWrapper.like(StIvtStpointivt::getName, whereJson.get("name")); + // } + //queryWrapper.eq(StIvtStpointivt::getIs_delete,IOSEnum.IS_NOTANDYES.code("否")); + //queryWrapper.orderByDesc(StIvtStpointivt::getName); + return stIvtStpointivtMapper.selectPage(resultPage, queryWrapper); + } + + /** + * 根据条件查询 + * + * @param params 查询条件 + */ + @Override + public List selectList(StIvtStpointivtParam params) { + return stIvtStpointivtMapper.selectList(new QueryWrapper() + .lambda() + //.eq(ObjectUtil.isNotEmpty(params), StIvtStpointivt::getId, params.getFuzzy()) + //.or() + //.eq(ObjectUtil.isNotEmpty(params), StIvtStpointivt::getDjid, params.getFuzzy()) + ); + } + + + /** + * 创建 + * + * @param params 对象实体 + */ + @Override + public void create(StIvtStpointivtParam params) { + stIvtStpointivtMapper.insert(getBasicInfo(params, true)); + } + + + /** + * 编辑 + * + * @param params 对象实体 + */ + @Override + public void update(StIvtStpointivtParam params) { + // StIvtStpointivt dto = stIvtStpointivtMapper.selectById(params.getId()); + // if (dto == null) { + // throw new BadRequestException("不存在该数据!"); + // } + stIvtStpointivtMapper.updateById(getBasicInfo(params, false)); + } + + + /** + * 多选删除 + * + * @param ids 多个Id主键 + */ + @Override + public void deleteAll(Set ids) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("is_delete", IOSEnum.IS_NOTANDYES.code("是")) + //.set("update_optid", SecurityUtils.getCurrentUserId()) + //.set("update_optname", SecurityUtils.getCurrentNickName()) + //.set("update_time", DateUtil.now()) + .in("id", ids); + stIvtStpointivtMapper.update(null, updateWrapper); + } + + + /** + * 获取实体基础信息 + * + * @param params 对象实体 + * @param isCreate 是否创建 + */ + private StIvtStpointivt getBasicInfo(StIvtStpointivtParam params, boolean isCreate) { + // if (isCreate) { + // params.setId(IdUtil.getStringId()); + // params.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setCreate_name(SecurityUtils.getCurrentNickName()); + // params.setCreate_time(DateUtil.now()); + // params.setIs_delete(IOSEnum.IS_NOTANDYES.code("否")); + // } + // params.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + // params.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // params.setUpdate_time(DateUtil.now()); + StIvtStpointivt stIvtStpointivt = new StIvtStpointivt(); + BeanUtils.copyProperties(params, stIvtStpointivt); + return stIvtStpointivt; + } + + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/controller/PdmBiSubpackagerelationController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/controller/PdmBiSubpackagerelationController.java new file mode 100644 index 0000000..77e08c3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/controller/PdmBiSubpackagerelationController.java @@ -0,0 +1,43 @@ +package org.nl.wms.pdm.subpackage.controller; + + +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.subpackage.service.IPdmBiSubpackagerelationService; +import org.nl.wms.pdm.subpackage.service.dto.SubPackageQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 子卷包装关系表 前端控制器 + *

+ * + * @author generator + * @since 2023-11-14 + */ +@RestController +@RequestMapping("/api/pdmBiSubpackagerelation") +public class PdmBiSubpackagerelationController { + + @Autowired + private IPdmBiSubpackagerelationService iPdmBiSubpackagerelationService; + + @GetMapping + @Log("查询子卷包装关系") + public ResponseEntity query(SubPackageQuery query, PageQuery page){ + return new ResponseEntity<>(iPdmBiSubpackagerelationService.pageQuery(query,page), HttpStatus.OK); + } + + @GetMapping("/getTestOut") + @Log("出库新增物料测试") + public ResponseEntity getTestOut(SubPackageQuery query, PageQuery page){ + return new ResponseEntity<>(iPdmBiSubpackagerelationService.getTestOut(query,page), HttpStatus.OK); + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/IPdmBiSubpackagerelationService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/IPdmBiSubpackagerelationService.java new file mode 100644 index 0000000..703da4b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/IPdmBiSubpackagerelationService.java @@ -0,0 +1,33 @@ +package org.nl.wms.pdm.subpackage.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.subpackage.service.dao.PdmBiSubpackagerelation; +import org.nl.wms.pdm.subpackage.service.dto.SubPackageQuery; + +/** + *

+ * 子卷包装关系表 服务类 + *

+ * + * @author generator + * @since 2023-11-14 + */ +public interface IPdmBiSubpackagerelationService extends IService { + + /** + * 分页查询 + * @param query / + * @param page / + * @return / + */ + Object pageQuery(SubPackageQuery query, PageQuery page); + + /** + * 测试 + * @param query + * @param page + * @return + */ + Object getTestOut(SubPackageQuery query, PageQuery page); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/PdmBiSubpackagerelation.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/PdmBiSubpackagerelation.java new file mode 100644 index 0000000..c36e198 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/PdmBiSubpackagerelation.java @@ -0,0 +1,258 @@ +package org.nl.wms.pdm.subpackage.service.dao; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + *

+ * 子卷包装关系表 + *

+ * + * @author generator + * @since 2023-11-14 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("pdm_bi_subpackagerelation") +public class PdmBiSubpackagerelation implements Serializable { + + private static final Long serialVersionUID = 1L; + + /** + * 子卷包装标识 + */ + @TableId + private String workorder_id; + + /** + * 木箱唯一码 + */ + private String package_box_sn; + + /** + * 箱内子卷数量 + */ + private BigDecimal quanlity_in_box; + + /** + * 木箱自身重量 + */ + private BigDecimal box_weight; + + /** + * 保质期 + */ + private String quality_guaran_period; + + /** + * 销售订单及行号 + */ + private String sale_order_name; + + /** + * 客户编号 + */ + private String customer_name; + + /** + * 客户名称 + */ + private String customer_description; + + /** + * 产品编码 + */ + private String product_name; + + /** + * 产品描述 + */ + private String product_description; + + /** + * 入库日期 + */ + private String date_of_FG_inbound; + + /** + * 子卷号 + */ + private String container_name; + + /** + * 产品规格(幅宽) + */ + private String width; + + /** + * 产品厚度 + */ + private String thickness; + + /** + * 单位面积质量 + */ + private BigDecimal mass_per_unit_area; + + /** + * 净重 + */ + private BigDecimal net_weight; + + /** + * 长度 + */ + private BigDecimal length; + + /** + * 制造完成日期 + */ + private String date_of_production; + + /** + * 计划外分切的子卷 + */ + private String is_un_plan_production; + + /** + * 子卷的物性值1 + */ + private String un_plan_product_property1; + + /** + * 子卷的物性值2 + */ + private String un_plan_product_property2; + + /** + * 子卷的物性值3 + */ + private String un_plan_product_property3; + + /** + * 备注 + */ + private String remark; + + /** + * 创建人 + */ + private String create_id; + + /** + * 创建人姓名 + */ + private String create_name; + + /** + * 创建时间 + */ + private String create_time; + + /** + * 状态 + */ + private String status; + + /** + * 是否需要重打外包装标签 + */ + private String isRePrintPackageBoxLabel; + + /** + * 是否需要拆包重打子卷标签 + */ + private String isUnPackBox; + + /** + * 木箱料号 + */ + private String box_type; + + /** + * SAP批次 + */ + private String sap_pcsn; + + /** + * 交货单号 + */ + private String vbeln; + + /** + * 交货单行号 + */ + private String posnr; + + /** + * 木箱长度 + */ + private String box_length; + + /** + * 木箱宽度 + */ + private String box_width; + + /** + * 木箱高度 + */ + private String box_high; + + /** + * 销售订单描述 + */ + private String sale_order_description; + + /** + * 客户要求规格幅宽 + */ + private String width_standard; + + /** + * 物料标准厚度 + */ + private String thickness_request; + + /** + * 实际木箱自身重量 + */ + private BigDecimal real_weight; + + /** + * 包装关系类型 + */ + private String sub_type; + + /** + * 客户需求抗拉下限 + */ + private String demand_limit; + + /** + * 内控标准抗拉下限 + */ + private String standard_limit; + + /** + * 生产实际抗拉值 + */ + private String actual_value; + + /** + * 解绑删除标识 + */ + private String need_delete; + + /** + * 储存地点 + */ + private String ext_code; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/mapper/PdmBiSubpackagerelationMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/mapper/PdmBiSubpackagerelationMapper.java new file mode 100644 index 0000000..51880c8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/mapper/PdmBiSubpackagerelationMapper.java @@ -0,0 +1,38 @@ +package org.nl.wms.pdm.subpackage.service.dao.mapper; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.subpackage.service.dao.PdmBiSubpackagerelation; +import org.nl.wms.pdm.subpackage.service.dto.SubPackageQuery; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 子卷包装关系表 Mapper 接口 + *

+ * + * @author generator + * @since 2023-11-14 + */ +public interface PdmBiSubpackagerelationMapper extends BaseMapper { + + /** + * 分页查询 + * @param query 查询条件 + * @param pageQuery 分页工具 + * @return List + */ + List getPageQuery(@Param("query") SubPackageQuery query, @Param("pageQuery") PageQuery pageQuery); + + /** + * 出库新增测试 + * @param query + * @param pageQuery + * @return + */ + List getTestOut(@Param("query") SubPackageQuery query, @Param("pageQuery") PageQuery pageQuery); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/mapper/xml/PdmBiSubpackagerelationMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/mapper/xml/PdmBiSubpackagerelationMapper.xml new file mode 100644 index 0000000..a9ef87d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dao/mapper/xml/PdmBiSubpackagerelationMapper.xml @@ -0,0 +1,91 @@ + + + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dto/SubPackageQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dto/SubPackageQuery.java new file mode 100644 index 0000000..7327555 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/dto/SubPackageQuery.java @@ -0,0 +1,58 @@ +package org.nl.wms.pdm.subpackage.service.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.common.domain.query.QParam; +import org.nl.common.enums.QueryTEnum; +import org.nl.wms.pdm.subpackage.service.dao.PdmBiSubpackagerelation; + +import java.util.List; + +/** + * 查询条件 + * @author LXY + * @Date 2023/11/10 14:49 + */ +@Data +public class SubPackageQuery extends BaseQuery { + + + /** + * 箱号 + */ + private String package_box_sn; + + /** + * 订单号 + */ + private String sale_order_name; + + /** + * 客户 + */ + private String customer_name; + + /** + * 子卷号 + */ + private String container_name; + + /** + * 状态 + */ + private String status; + + /** + * sap批次 + */ + private String sap_pcsn; + + private List list; + + @Override + public void paramMapping() { + super.doP.put("package_box_sn", QParam.builder().k(new String[]{"package_box_sn"}).type(QueryTEnum.LK).build()); + } + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/impl/PdmBiSubpackagerelationServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/impl/PdmBiSubpackagerelationServiceImpl.java new file mode 100644 index 0000000..92abaa4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/subpackage/service/impl/PdmBiSubpackagerelationServiceImpl.java @@ -0,0 +1,50 @@ +package org.nl.wms.pdm.subpackage.service.impl; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.pdm.subpackage.service.IPdmBiSubpackagerelationService; +import org.nl.wms.pdm.subpackage.service.dao.PdmBiSubpackagerelation; +import org.nl.wms.pdm.subpackage.service.dao.mapper.PdmBiSubpackagerelationMapper; +import org.nl.wms.pdm.subpackage.service.dto.SubPackageQuery; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 子卷包装关系表 服务实现类 + *

+ * + * @author generator + * @since 2023-11-14 + */ +@Service +public class PdmBiSubpackagerelationServiceImpl extends ServiceImpl implements IPdmBiSubpackagerelationService { + + @Override + public Object pageQuery(SubPackageQuery query, PageQuery pageQuery) { + Page page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); + page.setOrderBy("package_box_sn DESC"); + List mst_detail = this.baseMapper.getPageQuery(query, pageQuery); + + TableDataInfo build = TableDataInfo.build(mst_detail); + build.setTotalElements(page.getTotal()); + return build; + } + + @Override + public Object getTestOut(SubPackageQuery query, PageQuery pageQuery) { + Page page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); + page.setOrderBy("package_box_sn DESC"); + List mst_detail = this.baseMapper.getTestOut(query, pageQuery); + + TableDataInfo build = TableDataInfo.build(mst_detail); + build.setTotalElements(page.getTotal()); + return build; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/controller/SchBaseVehiclematerialgroupController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/controller/SchBaseVehiclematerialgroupController.java new file mode 100644 index 0000000..e4fa7a7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/controller/SchBaseVehiclematerialgroupController.java @@ -0,0 +1,71 @@ +package org.nl.wms.sch.group.controller; + +import com.alibaba.fastjson.JSONObject; + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.sch.group.service.ISchBaseVehiclematerialgroupService; +import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; +import org.nl.wms.sch.group.service.dto.SchBaseVehiclematerialgroupQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2023-05-16 +**/ +@Slf4j +@RestController +@RequestMapping("/api/schBaseVehiclematerialgroup") +public class SchBaseVehiclematerialgroupController { + + @Autowired + private ISchBaseVehiclematerialgroupService schBaseVehiclematerialgroupService; + + @GetMapping + @Log("查询组盘信息管理") + + public ResponseEntity query(SchBaseVehiclematerialgroupQuery whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(schBaseVehiclematerialgroupService + .queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增组盘信息管理") + + public ResponseEntity create(@Validated @RequestBody SchBaseVehiclematerialgroup entity){ + schBaseVehiclematerialgroupService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改组盘信息管理") + + public ResponseEntity update(@Validated @RequestBody SchBaseVehiclematerialgroup entity){ + schBaseVehiclematerialgroupService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除组盘信息管理") + + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + schBaseVehiclematerialgroupService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/getGroup") + @Log("获取组盘信息管理") + + public ResponseEntity getGroup(@RequestBody JSONObject entity){ + return new ResponseEntity<>(schBaseVehiclematerialgroupService.getGroup(entity), HttpStatus.OK); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/ISchBaseVehiclematerialgroupService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/ISchBaseVehiclematerialgroupService.java new file mode 100644 index 0000000..300e7c0 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/ISchBaseVehiclematerialgroupService.java @@ -0,0 +1,100 @@ +package org.nl.wms.sch.group.service; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; +import org.nl.wms.sch.group.service.dto.SchBaseVehiclematerialgroupQuery; + +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2023-05-16 +**/ +public interface ISchBaseVehiclematerialgroupService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(SchBaseVehiclematerialgroupQuery whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(SchBaseVehiclematerialgroup entity); + + /** + * 编辑 + * @param entity / + */ + void update(SchBaseVehiclematerialgroup entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); + + /** + * 根据载具编码返回数据 + * @param entity + * @return + */ + SchBaseVehiclematerialgroup getGroup(JSONObject entity); + + /** + * 根据载具编码、载具类型、状态、物料查找组盘信息 + * @param vehicleCode + * @param vehicleType + * @param value 物料托盘组盘状态 + * @param materialId + * @return + */ + SchBaseVehiclematerialgroup getGroupInfo(String vehicleCode, String vehicleType, String value, String materialId); + + /** + * 根据载具编码、载具类型、状态、物料查找组盘信息 + * @param vehicleCode + * @param vehicleType + * @param value 物料托盘组盘状态 + * @return + */ + SchBaseVehiclematerialgroup getGroupInfo(String vehicleCode, String vehicleType, String value); + + /** + * 根据载具编码、状态、物料查找组盘信息 + * @param vehicleCode + * @param value 物料托盘组盘状态 + * @return + */ + SchBaseVehiclematerialgroup getGroupInfo(String vehicleCode, String value); + + /** + * 返回当前物料的剩余库存数 + * @param materialId + * @return + */ + int getInventoryQtyByMaterialId(String materialId); + + /** + * 解绑同载具的信息 + * @param vehicleCode + * @param vehicleType + */ + void unBindingSameVehicleMaterial(String vehicleCode, String vehicleType); + + /** + * 包装获取组盘信息 + * @param vehicleCode + * @param value + * @return + */ + SchBaseVehiclematerialgroup getOneByVehicleCode(String vehicleCode, String value); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/SchBaseVehiclematerialgroup.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/SchBaseVehiclematerialgroup.java new file mode 100644 index 0000000..7262da0 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/SchBaseVehiclematerialgroup.java @@ -0,0 +1,166 @@ +package org.nl.wms.sch.group.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * @author lyd + * @description / + * @date 2023-05-16 + **/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sch_base_vehiclematerialgroup") +public class SchBaseVehiclematerialgroup implements Serializable { + private static final long serialVersionUID = 1L; + @TableId(value = "group_id", type = IdType.NONE) + + private String group_id; + + + private String vehicle_code; + + + private String material_id; + + + private String redundance_material_code; + + + private String vehicle_type; + + + + private String child_vehicle_code; + + + private String source_vehicle_code; + + + private String point_code; + + + private String point_name; + + + private Boolean is_full; + + + private Boolean is_firing; + + + private String pcsn; + + private String mix_times; + + + private String instorage_time; + + + private Integer standing_time; + + + private Integer material_qty; + + + private BigDecimal material_weight; + + + private String workorder_code; + + + private Integer group_number; + + + private String task_code; + + + private String ext_data; + + + private String workshop_code; + + + private String group_status; + + private String move_way; + + + private String table_name; + + + private String table_fk; + + + private String table_fk_id; + + + private String buss_move_id; + + + private Boolean is_first_flow_task; + + + private String flow_code; + + + private BigDecimal flow_num; + + + private String before_task_code; + + + private String next_task_code; + + + private String remark; + + + private String group_bind_material_status; + + + private Boolean is_delete; + + + private String create_id; + + + private String create_name; + + + private String create_time; + + + private String update_id; + + + private String update_name; + + + private String update_time; + + private String out_kiln_time; + + private String into_kiln_time; + + + @TableField(exist = false) + private String material_name; + @TableField(exist = false) + private String material_code; + @TableField(exist = false) + private String material_spec; + @TableField(exist = false) + private String region_name; + @TableField(exist = false) + private String group_bind_material_status_name; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/mapper/SchBaseVehiclematerialgroupMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/mapper/SchBaseVehiclematerialgroupMapper.java new file mode 100644 index 0000000..9579533 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/mapper/SchBaseVehiclematerialgroupMapper.java @@ -0,0 +1,36 @@ +package org.nl.wms.sch.group.service.dao.mapper; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; +import org.nl.wms.sch.group.service.dto.SchBaseVehiclematerialgroupQuery; + +/** +* @author lyd +* @date 2023-05-16 +**/ +public interface SchBaseVehiclematerialgroupMapper extends BaseMapper { + + /** + * 分页查询 + * @param pages 、 + * @param query 查询条件 + * @return IPage + */ + IPage selectPageLeftJoin(IPage pages, SchBaseVehiclematerialgroupQuery query); + + /** + * 获取组盘信息 + * @param entity 、 + * @return SchBaseVehiclematerialgroup 实体类 + */ + SchBaseVehiclematerialgroup getGroup(JSONObject entity); + + /** + * 获取物料嘻嘻 + * @param materialId 物料id + * @return int 数字 + */ + int getInventoryQtyByMaterialId(String materialId); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/mapper/SchBaseVehiclematerialgroupMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/mapper/SchBaseVehiclematerialgroupMapper.xml new file mode 100644 index 0000000..e5ba082 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dao/mapper/SchBaseVehiclematerialgroupMapper.xml @@ -0,0 +1,68 @@ + + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dto/SchBaseVehiclematerialgroupDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dto/SchBaseVehiclematerialgroupDto.java new file mode 100644 index 0000000..7122789 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dto/SchBaseVehiclematerialgroupDto.java @@ -0,0 +1,131 @@ +package org.nl.wms.sch.group.service.dto; + +import java.math.BigDecimal; + + +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-16 +**/ +@Data +public class SchBaseVehiclematerialgroupDto implements Serializable { + + /** 组盘id */ + private String group_id; + + /** 载具编码 */ + private String vehicle_code; + + /** 物料标识 */ + private String material_id; + + /** 子载具编码 */ + private String child_vehicle_code; + + /** 来源载具编码 */ + private String source_vehicle_code; + + /** 点位编码 */ + private String point_code; + + /** 点位名称 */ + private String point_name; + + /** 是否满托 */ + private Boolean is_full; + + /** 是否已烧制 */ + private Boolean is_firing; + + /** 批次 */ + private String pcsn; + + /** 入库时间 */ + private String instorage_time; + + /** 静置时间(分钟) */ + private BigDecimal standing_time; + + /** 物料数量 */ + private BigDecimal material_qty; + + /** 物料重量 */ + private BigDecimal material_weight; + + /** 搬运工单编码 */ + private String workorder_code; + + /** 组盘次数 */ + private BigDecimal group_number; + + /** 任务编码 */ + private String task_code; + + /** 额外信息 */ + private String ext_data; + + /** 车间编码 */ + private String workshop_code; + + /** 组盘状态 */ + private String group_status; + + /** 业务表表名 */ + private String table_name; + + /** 业务表表名主键字段 */ + private String table_fk; + + /** 业务表表名主键值 */ + private String table_fk_id; + + /** 业务链路标识 */ + private String buss_move_id; + + /** 是否首个流程任务 */ + private Boolean is_first_flow_task; + + /** 流程编码 */ + private String flow_code; + + /** 流程顺序 */ + private BigDecimal flow_num; + + /** 上一任务编码 */ + private String before_task_code; + + /** 下一任务编码 */ + private String next_task_code; + + /** 备注 */ + private String remark; + + /** 是否删除 */ + private Boolean is_delete; + + /** 创建人 */ + private String create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_id; + + /** 修改人 */ + private String update_name; + + /** 修改时间 */ + private String update_time; + /** 出窑时间 */ + private String out_kiln_time; + /** 入窑时间 */ + private String into_kiln_time; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dto/SchBaseVehiclematerialgroupQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dto/SchBaseVehiclematerialgroupQuery.java new file mode 100644 index 0000000..576d285 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/dto/SchBaseVehiclematerialgroupQuery.java @@ -0,0 +1,19 @@ +package org.nl.wms.sch.group.service.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; + +import java.io.Serializable; + +/** +* @author lyd +* @date 2023-05-16 +**/ +@Data +public class SchBaseVehiclematerialgroupQuery implements Serializable { + private String vehicle_code; + private String workshop_code; + private String region_code; + private String group_bind_material_status; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/impl/SchBaseVehiclematerialgroupServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/impl/SchBaseVehiclematerialgroupServiceImpl.java new file mode 100644 index 0000000..2fc58ca --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/group/service/impl/SchBaseVehiclematerialgroupServiceImpl.java @@ -0,0 +1,155 @@ +package org.nl.wms.sch.group.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; +import org.nl.wms.sch.group.service.ISchBaseVehiclematerialgroupService; +import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; +import org.nl.wms.sch.group.service.dao.mapper.SchBaseVehiclematerialgroupMapper; +import org.nl.wms.sch.group.service.dto.SchBaseVehiclematerialgroupQuery; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.task_manage.GeneralDefinition; +import org.nl.wms.sch.task_manage.enums.GroupBindMaterialStatusEnum; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; +import java.util.Set; + +/** + * @author lyd + * @description 服务实现 + * @date 2023-05-16 + **/ +@Slf4j +@Service +public class SchBaseVehiclematerialgroupServiceImpl extends ServiceImpl implements ISchBaseVehiclematerialgroupService { + + @Autowired + private SchBaseVehiclematerialgroupMapper vehiclematerialgroupMapper; + @Autowired + private ISchBasePointService pointService; + @Autowired + private ImdMeMaterialbaseService materialService; + + @Override + public IPage queryAll(SchBaseVehiclematerialgroupQuery whereJson, PageQuery page) { + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + pages = vehiclematerialgroupMapper.selectPageLeftJoin(pages, whereJson); + return pages; + } + + @Override + public void create(SchBaseVehiclematerialgroup entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setGroup_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + vehiclematerialgroupMapper.insert(entity); + } + + @Override + public void update(SchBaseVehiclematerialgroup entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + vehiclematerialgroupMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + vehiclematerialgroupMapper.deleteBatchIds(ids); + } + + @Override + public SchBaseVehiclematerialgroup getGroup(JSONObject entity) { + return vehiclematerialgroupMapper.getGroup(entity); + } + + @Override + public SchBaseVehiclematerialgroup getGroupInfo(String vehicleCode, String vehicleType, String value, String materialId) { + LambdaQueryWrapper lambda = new QueryWrapper().lambda(); + lambda.eq(SchBaseVehiclematerialgroup::getVehicle_code, vehicleCode) + .eq(SchBaseVehiclematerialgroup::getVehicle_type, vehicleType) + .eq(SchBaseVehiclematerialgroup::getGroup_bind_material_status, value) + .eq(SchBaseVehiclematerialgroup::getMaterial_id, materialId) + .eq(SchBaseVehiclematerialgroup::getIs_delete, false); + List selectOne = vehiclematerialgroupMapper.selectList(lambda); + return selectOne.size() > 0 ? selectOne.get(0) : null; + } + + @Override + public SchBaseVehiclematerialgroup getGroupInfo(String vehicleCode, String vehicleType, String value) { + LambdaQueryWrapper lambda = new QueryWrapper().lambda(); + lambda.eq(SchBaseVehiclematerialgroup::getVehicle_code, vehicleCode) + .eq(SchBaseVehiclematerialgroup::getVehicle_type, vehicleType) + .eq(SchBaseVehiclematerialgroup::getGroup_bind_material_status, value) + .eq(SchBaseVehiclematerialgroup::getIs_delete, false); + List selectOne = vehiclematerialgroupMapper.selectList(lambda); + return selectOne.size() > 0 ? selectOne.get(0) : null; + } + + @Override + public SchBaseVehiclematerialgroup getGroupInfo(String vehicleCode, String value) { + LambdaQueryWrapper lambda = new QueryWrapper().lambda(); + lambda.eq(SchBaseVehiclematerialgroup::getVehicle_code, vehicleCode) + .eq(SchBaseVehiclematerialgroup::getGroup_bind_material_status, value) + .eq(SchBaseVehiclematerialgroup::getIs_delete, false); + List selectOne = vehiclematerialgroupMapper.selectList(lambda); + return selectOne.size() > 0 ? selectOne.get(0) : null; + } + + @Override + public int getInventoryQtyByMaterialId(String materialId) { + return vehiclematerialgroupMapper.getInventoryQtyByMaterialId(materialId); + } + + @Override + public void unBindingSameVehicleMaterial(String vehicleCode, String vehicleType) { + LambdaQueryWrapper lambda = new QueryWrapper().lambda(); + lambda.eq(SchBaseVehiclematerialgroup::getVehicle_code, vehicleCode) + .eq(SchBaseVehiclematerialgroup::getVehicle_type, vehicleType) + .ne(SchBaseVehiclematerialgroup::getGroup_bind_material_status, GroupBindMaterialStatusEnum.UNBOUND.getValue()) + .eq(SchBaseVehiclematerialgroup::getIs_delete, false); + List list = vehiclematerialgroupMapper.selectList(lambda); + list.forEach(schBaseVehiclematerialgroup -> + schBaseVehiclematerialgroup.setGroup_bind_material_status(GroupBindMaterialStatusEnum.UNBOUND.getValue())); + this.updateBatchById(list); + } + + @Override + public SchBaseVehiclematerialgroup getOneByVehicleCode(String vehicleCode, String value) { + List list = new ArrayList<>(); +// list.add(GeneralDefinition.STEEL_TRAY); +// list.add(GeneralDefinition.MATERIAL_CUP); + LambdaQueryWrapper lambda = new QueryWrapper().lambda(); + lambda.eq(SchBaseVehiclematerialgroup::getVehicle_code, vehicleCode) + .eq(SchBaseVehiclematerialgroup::getGroup_bind_material_status, value) + .eq(SchBaseVehiclematerialgroup::getIs_delete, false) + .notIn(SchBaseVehiclematerialgroup::getVehicle_type, list); + List selectOne = vehiclematerialgroupMapper.selectList(lambda); + return selectOne.size() > 0 ? selectOne.get(0) : null; + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/controller/SchBaseAcsandlmsinteractivelogController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/controller/SchBaseAcsandlmsinteractivelogController.java new file mode 100644 index 0000000..a45fa70 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/controller/SchBaseAcsandlmsinteractivelogController.java @@ -0,0 +1,61 @@ +package org.nl.wms.sch.interactivelog.controller; + + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.sch.interactivelog.service.ISchBaseAcsandlmsinteractivelogService; +import org.nl.wms.sch.interactivelog.service.dao.SchBaseAcsandlmsinteractivelog; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2023-05-26 +**/ +@Slf4j +@RestController +@RequestMapping("/api/schBaseAcsandlmsinteractivelog") +public class SchBaseAcsandlmsinteractivelogController { + + @Autowired + private ISchBaseAcsandlmsinteractivelogService schBaseAcsandlmsinteractivelogService; + + @GetMapping + @Log("查询ACS和LMS交互日志表") + + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(schBaseAcsandlmsinteractivelogService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增ACS和LMS交互日志表") + + public ResponseEntity create(@Validated @RequestBody SchBaseAcsandlmsinteractivelog entity){ + schBaseAcsandlmsinteractivelogService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改ACS和LMS交互日志表") + + public ResponseEntity update(@Validated @RequestBody SchBaseAcsandlmsinteractivelog entity){ + schBaseAcsandlmsinteractivelogService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除ACS和LMS交互日志表") + + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + schBaseAcsandlmsinteractivelogService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/ISchBaseAcsandlmsinteractivelogService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/ISchBaseAcsandlmsinteractivelogService.java new file mode 100644 index 0000000..744c54c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/ISchBaseAcsandlmsinteractivelogService.java @@ -0,0 +1,43 @@ +package org.nl.wms.sch.interactivelog.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.sch.interactivelog.service.dao.SchBaseAcsandlmsinteractivelog; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2023-05-26 +**/ +public interface ISchBaseAcsandlmsinteractivelogService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(SchBaseAcsandlmsinteractivelog entity); + + /** + * 编辑 + * @param entity / + */ + void update(SchBaseAcsandlmsinteractivelog entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/SchBaseAcsandlmsinteractivelog.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/SchBaseAcsandlmsinteractivelog.java new file mode 100644 index 0000000..c4d8073 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/SchBaseAcsandlmsinteractivelog.java @@ -0,0 +1,73 @@ +package org.nl.wms.sch.interactivelog.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-26 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sch_base_acsandlmsinteractivelog") +public class SchBaseAcsandlmsinteractivelog implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "log_id", type = IdType.NONE) + + private String log_id; + + + private String request_name; + + + private String request_param; + + + private String response_param; + + + private String acs_trace_id; + + + private String request_desc; + + + private String request_type; + + + private String remark; + + + private Boolean is_finish; + + + private String workshop_code; + + + private String create_id; + + + private String create_name; + + + private String create_time; + + + private String update_id; + + + private String update_name; + + + private String update_time; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/mapper/SchBaseAcsandlmsinteractivelogMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/mapper/SchBaseAcsandlmsinteractivelogMapper.java new file mode 100644 index 0000000..8a5ef66 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/mapper/SchBaseAcsandlmsinteractivelogMapper.java @@ -0,0 +1,12 @@ +package org.nl.wms.sch.interactivelog.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.sch.interactivelog.service.dao.SchBaseAcsandlmsinteractivelog; + +/** +* @author lyd +* @date 2023-05-26 +**/ +public interface SchBaseAcsandlmsinteractivelogMapper extends BaseMapper { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/mapper/SchBaseAcsandlmsinteractivelogMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/mapper/SchBaseAcsandlmsinteractivelogMapper.xml new file mode 100644 index 0000000..44bd41d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dao/mapper/SchBaseAcsandlmsinteractivelogMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dto/SchBaseAcsandlmsinteractivelogDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dto/SchBaseAcsandlmsinteractivelogDto.java new file mode 100644 index 0000000..ed0fa6f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dto/SchBaseAcsandlmsinteractivelogDto.java @@ -0,0 +1,61 @@ +package org.nl.wms.sch.interactivelog.service.dto; + +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-26 +**/ +@Data +public class SchBaseAcsandlmsinteractivelogDto implements Serializable { + + /** 日志标识 */ + private String log_id; + + /** 请求名字 */ + private String request_name; + + /** 生成任务的请求参数 */ + private String request_param; + + /** 下发任务的请求参数 */ + private String response_param; + + /** 链路标识 */ + private String acs_trace_id; + + /** 请求描述 */ + private String request_desc; + + /** 请求类型 */ + private String request_type; + + /** 备注 */ + private String remark; + + /** 是否处理完成 */ + private Boolean is_finish; + + /** 车间编码 */ + private String workshop_code; + + /** 创建人 */ + private String create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_id; + + /** 修改人 */ + private String update_name; + + /** 修改时间 */ + private String update_time; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dto/SchBaseAcsandlmsinteractivelogQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dto/SchBaseAcsandlmsinteractivelogQuery.java new file mode 100644 index 0000000..3c56b79 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/dto/SchBaseAcsandlmsinteractivelogQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.sch.interactivelog.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.sch.interactivelog.service.dao.SchBaseAcsandlmsinteractivelog; + +/** +* @author lyd +* @date 2023-05-26 +**/ +public class SchBaseAcsandlmsinteractivelogQuery extends BaseQuery { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/impl/SchBaseAcsandlmsinteractivelogServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/impl/SchBaseAcsandlmsinteractivelogServiceImpl.java new file mode 100644 index 0000000..d4b081f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/interactivelog/service/impl/SchBaseAcsandlmsinteractivelogServiceImpl.java @@ -0,0 +1,81 @@ +package org.nl.wms.sch.interactivelog.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.language.LangProcess; +import org.nl.wms.sch.interactivelog.service.ISchBaseAcsandlmsinteractivelogService; +import org.nl.wms.sch.interactivelog.service.dao.mapper.SchBaseAcsandlmsinteractivelogMapper; +import org.nl.wms.sch.interactivelog.service.dao.SchBaseAcsandlmsinteractivelog; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务实现 +* @author lyd +* @date 2023-05-26 +**/ +@Slf4j +@Service +public class SchBaseAcsandlmsinteractivelogServiceImpl extends ServiceImpl implements ISchBaseAcsandlmsinteractivelogService { + + @Autowired + private SchBaseAcsandlmsinteractivelogMapper schBaseAcsandlmsinteractivelogMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page){ + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + schBaseAcsandlmsinteractivelogMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(SchBaseAcsandlmsinteractivelog entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setLog_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + schBaseAcsandlmsinteractivelogMapper.insert(entity); + } + + @Override + public void update(SchBaseAcsandlmsinteractivelog entity) { + SchBaseAcsandlmsinteractivelog dto = schBaseAcsandlmsinteractivelogMapper.selectById(entity.getLog_id()); + if (dto == null) throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + + schBaseAcsandlmsinteractivelogMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + schBaseAcsandlmsinteractivelogMapper.deleteBatchIds(ids); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/controller/SchBasePointController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/controller/SchBasePointController.java new file mode 100644 index 0000000..b77609c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/controller/SchBasePointController.java @@ -0,0 +1,78 @@ +package org.nl.wms.sch.point.controller; +import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2023-05-15 +**/ +@Slf4j +@RestController +@RequestMapping("/api/schBasePoint") +public class SchBasePointController { + + @Autowired + private ISchBasePointService schBasePointService; + + @GetMapping + @Log("查询点位管理") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(schBasePointService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增点位管理") + public ResponseEntity create(@Validated @RequestBody SchBasePoint entity){ + schBasePointService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + + + + } + + @PutMapping + @Log("修改点位管理") + public ResponseEntity update(@Validated @RequestBody SchBasePoint entity){ + schBasePointService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除点位管理") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + schBasePointService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @Log("启动与禁用") + @PostMapping("/changeUsed") + public ResponseEntity changeUsedOn(@RequestBody JSONObject jsonObject) { + schBasePointService.changeUsed(jsonObject); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @PostMapping("/getPointList") + @Log("获取区域下拉框") + public ResponseEntity getPointList(@RequestBody(required = false) SchBasePoint region){ + return new ResponseEntity<>(schBasePointService.getPointList(region),HttpStatus.OK); + } + + @Log("锁定与解锁") + @PostMapping("/changeLock") + public ResponseEntity changeLock(@RequestBody JSONObject points) { + schBasePointService.changeLock(points); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/ISchBasePointService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/ISchBasePointService.java new file mode 100644 index 0000000..60472bb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/ISchBasePointService.java @@ -0,0 +1,71 @@ +package org.nl.wms.sch.point.service; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2023-05-15 +**/ +public interface ISchBasePointService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(SchBasePoint entity); + + /** + * 编辑 + * @param entity / + */ + void update(SchBasePoint entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); + + /** + * 改变启用状态 + * @param jsonObject + */ + void changeUsed(JSONObject jsonObject); + + /** + * 获取点位 + * @param region + * @return + */ + List getPointList(SchBasePoint region); + + /** + * 解锁/上锁 + * @param points + */ + void changeLock(JSONObject points); + + /** + * 业务锁 + * @param list 点位集合 + * @param lock_ype 锁定类型 + */ + void lockPoint(List list, String lock_ype); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/SchBasePoint.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/SchBasePoint.java new file mode 100644 index 0000000..00595da --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/SchBasePoint.java @@ -0,0 +1,158 @@ +package org.nl.wms.sch.point.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.util.List; + +/** +* @description / +* @author lyd +* @date 2023-05-15 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sch_base_point") +public class SchBasePoint implements Serializable { + + private static final long serialVersionUID = 1L; + + /** 点位编码 */ + @TableId(value = "point_code", type = IdType.NONE) + private String point_code; + + /** 点位名称 */ + private String point_name; + + /** 区域编码 */ + private String region_code; + + /** 区域名称 */ + private String region_name; + + /** 点位类型 */ + private String point_type; + + /** 点位状态 */ + private String point_status; + + /** 可以存放物料类型 */ + private String can_material_type; + + /** 可以存放载具类型 */ + private String can_vehicle_type; + + /** 载具最大数量 */ + private Integer vehicle_max_qty; + + /** 载具类型 */ + private String vehicle_type; + + /** 载具编码 */ + private String vehicle_code; + + /** 载具数量 */ + private Integer vehicle_qty; + + /** 块 */ + private Integer block_num; + + /** 排 */ + private Integer row_num; + + /** 列 */ + private Integer col_num; + + /** 层 */ + private Integer layer_num; + + /** 入库顺序 */ + private Integer in_order_seq; + + /** 出库顺序 */ + private Integer out_order_seq; + + /** 入空顺序 */ + private Integer in_empty_seq; + + /** 出空顺序 */ + private Integer out_empty_seq; + + /** 父点位 */ + private String parent_point_code; + + /** 外部编码 */ + private String ext_point_code; + + /** 进行中的任务编码 */ + private String ing_task_code; + + /** 是否工单 */ + private Boolean is_has_workder; + + /** 车间编码 */ + private String workshop_code; + + /** 是否自动 */ + private Boolean is_auto; + + /** 备注 */ + private String remark; + + /** 是否使用 */ + private Boolean is_used; + + /** 创建人 */ + private String create_id; + + + private String create_name; + + + private String create_time; + + + private String update_id; + + + private String update_name; + + + private String update_time; + private String source_id; + /** 物料编码 */ + private String material_code; + /** 位置 */ + private String point_location; + /** 锁定类型 */ + private String lock_type; + + + @TableField(exist = false) + private List can_vehicle_types; + + @TableField(exist = false) + private String point_type_name; + + @TableField(exist = false) + private String point_status_name; + + /** + * 组盘标识 + */ + @TableField(exist = false) + private String group_id; + + @TableField(exist = false) + private String record_id; + + @TableField(exist = false) + private String device_code; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/mapper/SchBasePointMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/mapper/SchBasePointMapper.java new file mode 100644 index 0000000..2e0fe47 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/mapper/SchBasePointMapper.java @@ -0,0 +1,20 @@ +package org.nl.wms.sch.point.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.sch.point.service.dao.SchBasePoint; + +import java.util.List; + +/** +* @author lyd +* @date 2023-05-15 +**/ +public interface SchBasePointMapper extends BaseMapper { + + /** + * 批量禁用启用 + * @param pointCodes + * @param used + */ + void batchChangeUsed(List pointCodes, Boolean used); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/mapper/SchBasePointMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/mapper/SchBasePointMapper.xml new file mode 100644 index 0000000..66342b0 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dao/mapper/SchBasePointMapper.xml @@ -0,0 +1,15 @@ + + + + + + UPDATE sch_base_point + SET is_used = #{used} + + point_code IN + + #{code} + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dto/SchBasePointDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dto/SchBasePointDto.java new file mode 100644 index 0000000..a17f670 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dto/SchBasePointDto.java @@ -0,0 +1,115 @@ +package org.nl.wms.sch.point.service.dto; + +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-15 +**/ +@Data +public class SchBasePointDto implements Serializable { + + /** 点位编码 */ + private String point_code; + + /** 点位名称 */ + private String point_name; + + /** 区域编码 */ + private String region_code; + + /** 区域名称 */ + private String region_name; + + /** 点位类型 */ + private String point_type; + + /** 点位状态 */ + private String point_status; + + /** 允许的物料类型 */ + private String can_material_type; + + /** 允许的载具类型 */ + private String can_vehicle_type; + + /** 载具允许最大数量 */ + private Integer vehicle_max_qty; + + /** 载具类型 */ + private String vehicle_type; + + /** 载具编码 */ + private String vehicle_code; + + /** 载具数量 */ + private Integer vehicle_qty; + + /** 块 */ + private Integer block_num; + + /** 排 */ + private Integer row_num; + + /** 列 */ + private Integer col_num; + + /** 层 */ + private Integer layer_num; + + /** 入库顺序 */ + private Integer in_order_seq; + + /** 出库顺序 */ + private Integer out_order_seq; + + /** 入空载具顺序 */ + private Integer in_empty_seq; + + /** 出空载具顺序 */ + private Integer out_empty_seq; + + /** 父点位编码 */ + private String parent_point_code; + + /** 外部点位编码 */ + private String ext_point_code; + + /** 在执行的任务标识 */ + private String ing_task_code; + + /** 是否创建工单 */ + private Boolean is_has_workder; + + /** 车间编码 */ + private String workshop_code; + + /** 是否自动 */ + private Boolean is_auto; + + /** 备注 */ + private String remark; + + /** 是否启用 */ + private Boolean is_used; + + /** 创建人 */ + private String create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_id; + + /** 修改人 */ + private String update_name; + + /** 修改时间 */ + private String update_time; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dto/SchBasePointQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dto/SchBasePointQuery.java new file mode 100644 index 0000000..0ce389d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/dto/SchBasePointQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.sch.point.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.sch.point.service.dao.SchBasePoint; + +/** +* @author lyd +* @date 2023-05-15 +**/ +public class SchBasePointQuery extends BaseQuery { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/impl/SchBasePointServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/impl/SchBasePointServiceImpl.java new file mode 100644 index 0000000..1a89e88 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/service/impl/SchBasePointServiceImpl.java @@ -0,0 +1,214 @@ +package org.nl.wms.sch.point.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.language.LangProcess; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.sch.point.service.dao.mapper.SchBasePointMapper; +import org.nl.wms.sch.region.service.dao.SchBaseRegion; +import org.nl.wms.sch.region.service.dao.mapper.SchBaseRegionMapper; +import org.nl.wms.sch.task_manage.enums.PointStatusEnum; +import org.nl.wms.util.PointUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; + +/** + * @author lyd + * @description 服务实现 + * @date 2023-05-15 + **/ +@Slf4j +@Service +public class SchBasePointServiceImpl extends ServiceImpl implements ISchBasePointService { + + @Autowired + private SchBasePointMapper pointMapper; + + @Autowired + private SchBaseRegionMapper regionMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page) { + String blurry = ObjectUtil.isNotEmpty(whereJson.get("blurry")) + ? whereJson.get("blurry").toString() : null; + String workshop_code = ObjectUtil.isNotEmpty(whereJson.get("workshop_code")) + ? whereJson.get("workshop_code").toString() : null; + String region_code = ObjectUtil.isNotEmpty(whereJson.get("region_code")) + ? whereJson.get("region_code").toString() : null; + String point_type = ObjectUtil.isNotEmpty(whereJson.get("point_type")) + ? whereJson.get("point_type").toString() : null; + String point_status = ObjectUtil.isNotEmpty(whereJson.get("point_status")) + ? whereJson.get("point_status").toString() : null; + Boolean is_used = ObjectUtil.isNotEmpty(whereJson.get("is_used")) + ? Boolean.valueOf(whereJson.get("is_used").toString()) : null; + String lock_type = ObjectUtil.isNotEmpty(whereJson.get("lock_type")) + ? String.valueOf(whereJson.get("lock_type").toString()) : null; + Boolean parent_point = ObjectUtil.isNotEmpty(whereJson.get("parent_point")) + ? Boolean.valueOf(whereJson.get("parent_point").toString()) : false; + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(ObjectUtil.isNotEmpty(workshop_code), SchBasePoint::getWorkshop_code, workshop_code) + .and(ObjectUtil.isNotEmpty(blurry), la -> la.like(SchBasePoint::getPoint_code, blurry) + .or().like(SchBasePoint::getPoint_name, blurry)) + .eq(ObjectUtil.isNotEmpty(region_code), SchBasePoint::getRegion_code, region_code) + .eq(ObjectUtil.isNotEmpty(point_type), SchBasePoint::getPoint_type, point_type) + .eq(ObjectUtil.isNotEmpty(point_status), SchBasePoint::getPoint_status, point_status) + .eq(ObjectUtil.isNotEmpty(is_used), SchBasePoint::getIs_used, is_used) + .eq(ObjectUtil.isNotEmpty(lock_type), SchBasePoint::getLock_type, lock_type) + .orderByAsc(SchBasePoint::getRegion_code) + .orderByAsc(SchBasePoint::getPoint_code) + .orderByAsc(SchBasePoint::getPoint_type) + .apply(parent_point, "point_code = parent_point_code"); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + pointMapper.selectPage(pages, lam); + // 可以存放的载具类型 + pages.getRecords().forEach(point -> { + if (ObjectUtil.isNotEmpty(point.getCan_vehicle_type())) { + point.setCan_vehicle_types(Arrays.asList(point.getCan_vehicle_type().split(","))); + } + String pointStatus = point.getPoint_status(); // 点位状态 + String pointType = point.getPoint_type(); // 点位类型 + SchBaseRegion regionObj = regionMapper.selectById(point.getRegion_code()); + if (ObjectUtil.isNotEmpty(regionObj)) { + if (ObjectUtil.isNotEmpty(pointStatus) && ObjectUtil.isNotEmpty(regionObj.getPoint_status_explain())) { + // 设置 + point.setPoint_status_name(PointUtils.getStatusOrTypeName( + regionObj.getPoint_status_explain(), pointStatus)); + } + if (ObjectUtil.isNotEmpty(pointType) && ObjectUtil.isNotEmpty(regionObj.getPoint_type_explain())) { + // 设置 + point.setPoint_type_name(PointUtils.getStatusOrTypeName( + regionObj.getPoint_type_explain(), pointType)); + } + } + }); + return pages; + } + + @Override + public void create(SchBasePoint entity) { + String point_code = entity.getPoint_code(); + SchBasePoint pointObj = pointMapper.selectById(point_code); + if (ObjectUtil.isNotEmpty(pointObj) && !pointObj.getPoint_code().equals(entity.getPoint_code())) { + throw new BadRequestException(LangProcess.msg("error_ParamExist",entity.getPoint_code())); + } + + // 默认父类点位为自身 + if (ObjectUtil.isEmpty(entity.getParent_point_code())) { + entity.setParent_point_code(entity.getPoint_code()); + } + + if (ObjectUtil.isNotEmpty(entity.getCan_vehicle_types())) { + String can_vehicle_type = String.join(",", entity.getCan_vehicle_types()); + entity.setCan_vehicle_type(can_vehicle_type); + } + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + // 获取region_name + SchBaseRegion baseRegion = regionMapper.selectById(entity.getRegion_code()); + entity.setRegion_name(baseRegion.getRegion_name()); + + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + pointMapper.insert(entity); + } + + @Override + public void update(SchBasePoint entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + // 获取region_name + SchBaseRegion baseRegion = regionMapper.selectById(entity.getRegion_code()); + entity.setRegion_name(baseRegion.getRegion_name()); + if (ObjectUtil.isNotEmpty(entity.getCan_vehicle_types())) { + String can_vehicle_type = String.join(",", entity.getCan_vehicle_types()); + entity.setCan_vehicle_type(can_vehicle_type); + } + String pointStatus = entity.getPoint_status(); + // 根据点位状态来判断更新内容 + if (ObjectUtil.isNotEmpty(pointStatus) && pointStatus.equals(PointStatusEnum.EMPTY_POINT.getCode())) { + entity.setVehicle_type(""); + entity.setVehicle_code(""); + entity.setVehicle_qty(0); + } + pointMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + pointMapper.deleteBatchIds(ids); + } + + @Override + public void changeUsed(JSONObject jsonObject) { + // 不可能为空 + JSONArray data = jsonObject.getJSONArray("data"); + Boolean used = jsonObject.getBoolean("used"); + Assert.notNull(data, "数据为空!"); + Assert.notNull(used, "数据为空!"); + List schBasePoints = JSONArray.parseArray(JSONArray.toJSONString(data), SchBasePoint.class); + // 获取所有pointCode + List pointCodes = schBasePoints.stream() + .map(SchBasePoint::getPoint_code) + .collect(Collectors.toList()); + pointMapper.batchChangeUsed(pointCodes, used); + } + + @Override + public List getPointList(SchBasePoint region) { + if (ObjectUtil.isEmpty(region)) return this.list(); + return pointMapper.selectList(new LambdaQueryWrapper() + .eq(SchBasePoint::getRegion_code, region.getRegion_code()) + .eq(SchBasePoint::getIs_has_workder, true)); + } + + @Override + public void changeLock(JSONObject points) { + JSONArray data = points.getJSONArray("data"); + Boolean lockType = points.getBoolean("lock_type"); + List pointList = data.toJavaList(SchBasePoint.class); + pointList.forEach(point -> point.setIng_task_code(lockType ? "" : "-")); + this.updateBatchById(pointList); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void lockPoint(List list, String lock_ype) { + list.forEach(row -> { + row.setPoint_status(lock_ype); + }); + + this.updateBatchById(list); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/controller/SchBaseRegionController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/controller/SchBaseRegionController.java new file mode 100644 index 0000000..6723121 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/controller/SchBaseRegionController.java @@ -0,0 +1,82 @@ +package org.nl.wms.sch.region.controller; + + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.sch.region.service.ISchBaseRegionService; +import org.nl.wms.sch.region.service.dao.SchBaseRegion; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2023-05-15 +**/ +@Slf4j +@RestController +@RequestMapping("/api/schBaseRegion") +public class SchBaseRegionController { + + @Autowired + private ISchBaseRegionService regionService; + + @GetMapping + @Log("查询区域管理") + + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(regionService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增区域管理") + + public ResponseEntity create(@Validated @RequestBody SchBaseRegion entity){ + regionService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改区域管理") + + public ResponseEntity update(@Validated @RequestBody SchBaseRegion entity){ + regionService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除区域管理") + + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + regionService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/getRegionList") + @Log("获取区域下拉框") + + public ResponseEntity getRegionList(@RequestBody(required = false) SchBaseRegion region){ + return new ResponseEntity<>(regionService.getRegionList(region),HttpStatus.OK); + } + + @PostMapping("/getPointStatusSelectById") + @Log("获取点位状态下拉框") + + public ResponseEntity getPointStatusSelectById(@RequestBody String region_id) { + return new ResponseEntity<>(regionService.getPointStatusSelectById(region_id), HttpStatus.OK); + } + + @PostMapping("/getPointTypeSelectById") + @Log("获取点位类型下拉框") + + public ResponseEntity getPointTypeSelectById(@RequestBody String region_id) { + return new ResponseEntity<>(regionService.getPointTypeSelectById(region_id), HttpStatus.OK); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/ISchBaseRegionService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/ISchBaseRegionService.java new file mode 100644 index 0000000..0a091cf --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/ISchBaseRegionService.java @@ -0,0 +1,66 @@ +package org.nl.wms.sch.region.service; + +import com.alibaba.fastjson.JSONArray; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.sch.region.service.dao.SchBaseRegion; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2023-05-15 +**/ +public interface ISchBaseRegionService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(SchBaseRegion entity); + + /** + * 编辑 + * @param entity / + */ + void update(SchBaseRegion entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); + + /** + * 获取区域下拉框 + * @param region + * @return List + */ + List getRegionList(SchBaseRegion region); + + /** + * 获取点位状态 + * @param regionId + * @return JSONArray + */ + JSONArray getPointStatusSelectById(String regionId); + + /** + * 获取点位类型 + * @param regionId + * @return JSONArray + */ + JSONArray getPointTypeSelectById(String regionId); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/SchBaseRegion.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/SchBaseRegion.java new file mode 100644 index 0000000..8dc4f74 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/SchBaseRegion.java @@ -0,0 +1,67 @@ +package org.nl.wms.sch.region.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + * @description / + * @author lyd + * @date 2023-05-16 + **/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sch_base_region") +public class SchBaseRegion implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "region_code", type = IdType.NONE) + + private String region_code; + + + private String region_name; + + + private String point_type_explain; + + + private String point_status_explain; + + + private Boolean is_has_workder; + + + private String workshop_code; + + + private String remark; + + + private String create_id; + + + private String create_name; + + + private String create_time; + + + private String update_optid; + + + private String update_optname; + + + private String update_time; + + + private Integer order_seq; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/mapper/SchBaseRegionMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/mapper/SchBaseRegionMapper.java new file mode 100644 index 0000000..2837734 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/mapper/SchBaseRegionMapper.java @@ -0,0 +1,12 @@ +package org.nl.wms.sch.region.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.sch.region.service.dao.SchBaseRegion; + +/** +* @author lyd +* @date 2023-05-15 +**/ +public interface SchBaseRegionMapper extends BaseMapper { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/mapper/SchBaseRegionMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/mapper/SchBaseRegionMapper.xml new file mode 100644 index 0000000..9174217 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dao/mapper/SchBaseRegionMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dto/SchBaseRegionDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dto/SchBaseRegionDto.java new file mode 100644 index 0000000..2f704a5 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dto/SchBaseRegionDto.java @@ -0,0 +1,55 @@ +package org.nl.wms.sch.region.service.dto; + +import lombok.Data; +import java.io.Serializable; + +/** + * @description / + * @author lyd + * @date 2023-05-16 + **/ +@Data +public class SchBaseRegionDto implements Serializable { + + /** 区域编码 */ + private String region_code; + + /** 区域名称 */ + private String region_name; + + /** 点位类型说明 */ + private String point_type_explain; + + /** 点位状态说明 */ + private String point_status_explain; + + /** 是否创建工单 */ + private Boolean is_has_workder; + + /** 车间编码 */ + private String workshop_code; + + /** 备注 */ + private String remark; + + /** 创建人 */ + private String create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_id; + + /** 修改人 */ + private String update_name; + + /** 修改时间 */ + private String update_time; + + /** 顺和号 */ + private Integer order_seq; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dto/SchBaseRegionQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dto/SchBaseRegionQuery.java new file mode 100644 index 0000000..6a3d20f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/dto/SchBaseRegionQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.sch.region.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.sch.region.service.dao.SchBaseRegion; + +/** +* @author lyd +* @date 2023-05-15 +**/ +public class SchBaseRegionQuery extends BaseQuery { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/impl/SchBaseRegionServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/impl/SchBaseRegionServiceImpl.java new file mode 100644 index 0000000..e892d7e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/region/service/impl/SchBaseRegionServiceImpl.java @@ -0,0 +1,132 @@ +package org.nl.wms.sch.region.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.sch.region.service.ISchBaseRegionService; +import org.nl.wms.sch.region.service.dao.mapper.SchBaseRegionMapper; +import org.nl.wms.sch.region.service.dao.SchBaseRegion; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + * @author lyd + * @description 服务实现 + * @date 2023-05-15 + **/ +@Slf4j +@Service +public class SchBaseRegionServiceImpl extends ServiceImpl implements ISchBaseRegionService { + + @Autowired + private SchBaseRegionMapper schBaseRegionMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page) { + String workshop_code = ObjectUtil.isNotEmpty(whereJson.get("workshop_code")) ? whereJson.get("workshop_code").toString() : null; + String blurry = ObjectUtil.isNotEmpty(whereJson.get("blurry")) ? whereJson.get("blurry").toString() : null; + Boolean is_has_workder = ObjectUtil.isNotEmpty(whereJson.get("is_has_workder")) ? Boolean.valueOf(whereJson.get("is_has_workder").toString()) : null; + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(ObjectUtil.isNotEmpty(workshop_code), SchBaseRegion::getWorkshop_code, workshop_code) + .eq(ObjectUtil.isNotEmpty(is_has_workder), SchBaseRegion::getIs_has_workder, is_has_workder) + .like(ObjectUtil.isNotEmpty(blurry), SchBaseRegion::getRegion_code, blurry) + .or(ObjectUtil.isNotEmpty(blurry), la -> la.like(SchBaseRegion::getRegion_name, blurry)) + .orderByAsc(SchBaseRegion::getOrder_seq); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + schBaseRegionMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(SchBaseRegion entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_optid(currentUserId); + entity.setUpdate_optname(nickName); + entity.setUpdate_time(now); + schBaseRegionMapper.insert(entity); + } + + @Override + public void update(SchBaseRegion entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_optid(currentUserId); + entity.setUpdate_optname(nickName); + entity.setUpdate_time(now); + + schBaseRegionMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + schBaseRegionMapper.deleteBatchIds(ids); + } + + @Override + public List getRegionList(SchBaseRegion region) { + return schBaseRegionMapper.selectList(new LambdaQueryWrapper() + .eq(ObjectUtil.isNotEmpty(region), SchBaseRegion::getIs_has_workder, true) + .orderByAsc(SchBaseRegion::getOrder_seq)); + } + + @Override + public JSONArray getPointStatusSelectById(String regionId) { + /** + * label,value + */ + SchBaseRegion schBaseRegion = schBaseRegionMapper.selectById(regionId); + JSONArray res = new JSONArray(); + String pointStatusExplain = schBaseRegion.getPoint_status_explain(); + if (ObjectUtil.isEmpty(pointStatusExplain)) return res; + String[] explain = pointStatusExplain.split(","); + for (int i = 0; i < explain.length; i++) { + String[] status = explain[i].split("-"); + JSONObject point_status = new JSONObject(); + point_status.put("label", status[1]); + point_status.put("value", status[0]); + res.add(point_status); + } + return res; + } + + @Override + public JSONArray getPointTypeSelectById(String regionId) { + /** + * label,value + */ + SchBaseRegion schBaseRegion = schBaseRegionMapper.selectById(regionId); + JSONArray res = new JSONArray(); + String pointTypeExplain = schBaseRegion.getPoint_type_explain(); + if (ObjectUtil.isEmpty(pointTypeExplain)) return res; + String[] explain = pointTypeExplain.split(","); + for (int i = 0; i < explain.length; i++) { + String[] types = explain[i].split("-"); + JSONObject point_type = new JSONObject(); + point_type.put("label", types[1]); + point_type.put("value", types[0]); + res.add(point_type); + } + return res; + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskController.java new file mode 100644 index 0000000..6b8220f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskController.java @@ -0,0 +1,80 @@ +package org.nl.wms.sch.task.controller; + +import cn.dev33.satoken.annotation.SaIgnore; + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task.service.dto.SchBaseTaskQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2023-05-15 +**/ +@Slf4j +@RestController +@RequestMapping("/api/schBaseTask") +public class SchBaseTaskController { + + @Autowired + private ISchBaseTaskService schBaseTaskService; + + @GetMapping + @Log("查询任务管理") + + public ResponseEntity query(SchBaseTaskQuery whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(schBaseTaskService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增任务管理") + + public ResponseEntity create(@Validated @RequestBody SchBaseTask entity){ + schBaseTaskService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改任务管理") + + public ResponseEntity update(@Validated @RequestBody SchBaseTask entity){ + schBaseTaskService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除任务管理") + + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + schBaseTaskService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @GetMapping("/taskStatusList") + @Log("任务状态下拉框") + + @SaIgnore + public ResponseEntity getTaskStatusList(){ + return new ResponseEntity<>(TableDataInfo.build(schBaseTaskService.getTaskStatusList()),HttpStatus.OK); + } + + @PutMapping("/operation") + @Log("任务操作") + + public ResponseEntity update(@RequestBody Map map) { + schBaseTaskService.operation(map); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskconfigController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskconfigController.java new file mode 100644 index 0000000..2d2dd0e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/controller/SchBaseTaskconfigController.java @@ -0,0 +1,58 @@ +package org.nl.wms.sch.task.controller; + + + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.sch.task.service.ISchBaseTaskconfigService; +import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task.service.dto.SchBaseTaskconfigQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author lyd +* @date 2023-05-15 +**/ +@Slf4j +@RestController +@RequestMapping("/api/schBaseTaskconfig") +public class SchBaseTaskconfigController { + + @Autowired + private ISchBaseTaskconfigService schBaseTaskconfigService; + + @GetMapping + @Log("查询任务配置") + public ResponseEntity query(SchBaseTaskconfigQuery whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(schBaseTaskconfigService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增任务配置") + public ResponseEntity create(@Validated @RequestBody SchBaseTaskconfig entity){ + schBaseTaskconfigService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改任务配置") + public ResponseEntity update(@Validated @RequestBody SchBaseTaskconfig entity){ + schBaseTaskconfigService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除任务配置") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + schBaseTaskconfigService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java new file mode 100644 index 0000000..b5c85e1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java @@ -0,0 +1,116 @@ +package org.nl.wms.sch.task.service; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.ext.acs.service.dto.to.BaseRequest; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task.service.dto.SchBaseTaskQuery; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + * @author lyd + * @description 服务接口 + * @date 2023-05-15 + **/ +public interface ISchBaseTaskService extends IService { + + /** + * 查询数据分页 + * + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(SchBaseTaskQuery whereJson, PageQuery pageable); + + + /** + * 创建 + * + * @param entity / + */ + void create(SchBaseTask entity); + + /** + * 编辑 + * + * @param entity / + */ + void update(SchBaseTask entity); + + /** + * 多选删除 + * + * @param ids / + */ + void deleteAll(Set ids); + + + /** + * 根据任务配置查询为完成的列表 + * + * @param config_code 任务配置编码 + * @return 未完成任务列表 + */ + List findUnFinishTasksByTaskConfig(String config_code); + + /** + * 根据任务配置查询为完成的列表 + * + * @param config_code 任务配置编码 + * @param task_code 当前任务 + * @return 未完成任务列表 + */ + List findUnFinishTasksByTaskConfig(String config_code, String task_code); + + /** + * 根据任务配置查询同台设备未完成的任务列表 + * @param config_code 任务配置 + * @param device_code 设备 + * @param direction + * @return List + */ + List findUnFinishTasksByTaskConfig(String config_code, String device_code, String direction); + + /** + * 根据状态查找 + * @param config_code + * @param status + * @return List + */ + List findTasksByTaskStatus(String config_code, TaskStatus status); + + /** + * 任务申请 + * @see BaseRequest + * @param param / + */ + void apply(JSONObject param); + + /** + * 获取任务状态下拉框 + * @return + */ + JSONArray getTaskStatusList(); + + /** + * 任务操作 + * + * @param param + */ + void operation(Map param); + + /** + * 根据code查找 + * @param taskCode 任务编码 + * @return SchBaseTask + */ + SchBaseTask getByCode(String taskCode); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskconfigService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskconfigService.java new file mode 100644 index 0000000..d1095b5 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskconfigService.java @@ -0,0 +1,44 @@ +package org.nl.wms.sch.task.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task.service.dto.SchBaseTaskconfigQuery; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author lyd +* @date 2023-05-15 +**/ +public interface ISchBaseTaskconfigService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(SchBaseTaskconfigQuery whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(SchBaseTaskconfig entity); + + /** + * 编辑 + * @param entity / + */ + void update(SchBaseTaskconfig entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTask.java new file mode 100644 index 0000000..a340fc9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTask.java @@ -0,0 +1,150 @@ +package org.nl.wms.sch.task.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.io.Serializable; + +/** + * @author lyd + * @description / + * @date 2023-05-15 + **/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sch_base_task") +public class SchBaseTask implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "task_id", type = IdType.NONE) + private String task_id; + + /** 任务编码 */ + private String task_code; + + /** 任务类型 */ + private String task_type; + + /** 任务状态 */ + private String task_status; + + /** 配置编码 */ + private String config_code; + + /** 点位1 */ + private String point_code1; + + /** 点位2 */ + private String point_code2; + + /** 点位3 */ + private String point_code3; + + /** 点位4 */ + private String point_code4; + + /** 组盘id */ + private String group_id; + + /** 载具类型 */ + private String vehicle_type; + + /** 载具数量 */ + private Integer vehicle_qty; + + /** 载具编码 */ + private String vehicle_code; + + /** 载具编码2 */ + private String vehicle_code2; + + /** - */ + private String handle_status; + + /** 车号 */ + private String car_no; + + /** 任务组id */ + private Long task_group_id; + + /** 任务组序号 */ + private BigDecimal task_group_seq; + + /** 完成类型 */ + private String finished_type; + + /** 创建模式 */ + private String create_mode; + + /** acs链路id */ + private String acs_trace_id; + + /** 请求参数 */ + private String request_param; + + /** 反馈参数 */ + private String response_param; + + /** 生成区域 */ + private String workshop_code; + + /** 外部数据 */ + private String ext_group_data; + + /** 备注 */ + private String remark; + + /** 是否删除 */ + private Boolean is_delete; + + /** 创建人 */ + private String create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 更新id */ + private String update_id; + + /** 更新人 */ + private String update_name; + + /** 更新时间 */ + private String update_time; + + /** 处理类 */ + private String handle_class; + + /** 是否下发 */ + private String is_send; + + /** 配置表 -> 优先级 */ + @TableField(exist = false) + private String priority; + + /** 配置表 -> acs任务类型 */ + @TableField(exist = false) + private String acs_task_type; + + /** 配置表 -> agv系统 */ + @TableField(exist = false) + private String agv_system_type; + + /** 额外参数 */ + @TableField(exist = false) + private String dtl_type; + + private String material_code; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTaskconfig.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTaskconfig.java new file mode 100644 index 0000000..0082e50 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/SchBaseTaskconfig.java @@ -0,0 +1,158 @@ +package org.nl.wms.sch.task.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.io.Serializable; +import java.util.List; + +/** +* @description / +* @author lyd +* @date 2023-05-15 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sch_base_taskconfig") +public class SchBaseTaskconfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "config_id", type = IdType.NONE) + + private String config_id; + + + private String config_code; + + + private String config_name; + + + private String route_plan_code; + + + private String task_qf_type; + + + private String acs_task_type; + private String agv_system_type; + + + private String task_name; + + + private String task_type; + @TableField(exist = false) + private String task_type_id; + @TableField(exist = false) + private String task_type_name; + + + private String task_direction; + + + private String priority; + + + private Integer task_create_max_num; + + + private Integer task_issue_max_num; + + + private Boolean is_auto_issue; + + + private String start_region_str; + + + private String next_region_str; + + + private String start_point_pre; + + + private String next_region_pre; + + + private Boolean is_check_workorder; + + + private Boolean is_check_start_lock; + + + private Boolean is_immediate_create; + + + private Boolean is_check_next_lock; + + + private Boolean is_start_auto; + + + private Boolean is_next_auto; + + + private Boolean is_lock_start; + + + private Boolean is_lock_next; + + + private String request_param; + + + private String response_param; + + + private Boolean is_group_congrol_issue_seq; + + + private BigDecimal unfinish_notify_time; + + + private String sql_param; + + + private String workshop_code; + + + private String remark; + + + private Boolean is_used; + + + private Boolean is_delete; + + + private String create_id; + + + private String create_name; + + + private String create_time; + + + private String update_id; + + + private String update_name; + + + private String update_time; + + @TableField(exist = false) + private List start_region_strs; + + @TableField(exist = false) + private List next_region_strs; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskMapper.java new file mode 100644 index 0000000..d97fa90 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskMapper.java @@ -0,0 +1,17 @@ +package org.nl.wms.sch.task.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task.service.dto.SchBaseTaskQuery; + +import java.util.List; + +/** +* @author lyd +* @date 2023-05-15 +**/ +public interface SchBaseTaskMapper extends BaseMapper { + + IPage selectPageLeftJoin(IPage pages, SchBaseTaskQuery whereJson, List collect); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskMapper.xml new file mode 100644 index 0000000..002dd4c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskMapper.xml @@ -0,0 +1,48 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.java new file mode 100644 index 0000000..a17f936 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.java @@ -0,0 +1,21 @@ +package org.nl.wms.sch.task.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task.service.dto.SchBaseTaskconfigQuery; + +/** +* @author lyd +* @date 2023-05-15 +**/ +public interface SchBaseTaskconfigMapper extends BaseMapper { + + /** + * 连接查询 + * @param pages 分页 + * @param config 参数 + * @return 任务配置数据 + */ + IPage selectPageLeftJoin(IPage pages, SchBaseTaskconfigQuery config); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.xml new file mode 100644 index 0000000..34b192d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dao/mapper/SchBaseTaskconfigMapper.xml @@ -0,0 +1,21 @@ + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskDto.java new file mode 100644 index 0000000..0923f77 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskDto.java @@ -0,0 +1,111 @@ +package org.nl.wms.sch.task.service.dto; + +import java.math.BigDecimal; + + +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-15 +**/ +@Data +public class SchBaseTaskDto implements Serializable { + + /** 任务标识 */ + private String task_id; + + /** 任务编码 */ + private String task_code; + + + /** 任务状态 */ + private String task_status; + + /** 配置编码 */ + private String config_code; + + /** 点位1 */ + private String point_code1; + + /** 点位2 */ + private String point_code2; + + /** 点位3 */ + private String point_code3; + + /** 点位4 */ + private String point_code4; + + + private String group_id; + + /** 载具类型 */ + private String vehicle_type; + + /** 载具数量 */ + private BigDecimal vehicle_qty; + + /** 载具编码 */ + private String vehicle_code; + + /** 处理状态 */ + private String handle_status; + + /** 车号 */ + private String car_no; + + + /** 任务组标识 */ + private Long task_group_id; + + /** 任务组顺序号 */ + private BigDecimal task_group_seq; + + /** 任务完成类型 */ + private String finished_type; + + /** 生成方式 */ + private String create_mode; + + /** 链路标识 */ + private String acs_trace_id; + + /** 生成任务的请求参数 */ + private String request_param; + + /** 下发任务的请求参数 */ + private String response_param; + + /** 车间编码 */ + private String workshop_code; + + /** 额外组盘信息 */ + private String ext_group_data; + + /** 备注 */ + private String remark; + + /** 是否删除 */ + private Boolean is_delete; + + /** 创建人 */ + private String create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_id; + + /** 修改人 */ + private String update_name; + + /** 修改时间 */ + private String update_time; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskQuery.java new file mode 100644 index 0000000..7e84b50 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskQuery.java @@ -0,0 +1,25 @@ +package org.nl.wms.sch.task.service.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.sch.task.service.dao.SchBaseTask; + +import java.io.Serializable; + +/** +* @author lyd +* @date 2023-05-15 +**/ +@Data +public class SchBaseTaskQuery implements Serializable { + private String task_code; + private String vehicle_code; + private String point_code; + private String begin_time; + private String end_time; + private String more_task_status; + private String unFinished; + + private String config_code; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigDto.java new file mode 100644 index 0000000..eb845ba --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigDto.java @@ -0,0 +1,134 @@ +package org.nl.wms.sch.task.service.dto; + +import java.math.BigDecimal; +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author lyd +* @date 2023-05-15 +**/ +@Data +public class SchBaseTaskconfigDto implements Serializable { + + /** 配置标识 */ + private String config_id; + + /** 配置编码 */ + private String config_code; + + /** 配置名称 */ + private String config_name; + + /** 路由编码 */ + private String route_plan_code; + + /** 任务取放类型 */ + private String task_qf_type; + + /** acs任务类型 */ + private String acs_task_type; + + /** 任务名字 */ + private String task_name; + + /** 任务类型 */ + private String task_type; + + /** 优先级 */ + private String priority; + + /** 任务方向 **/ + private String task_direction; + + /** 允许最大任务生成数 */ + private Integer task_create_max_num; + + /** 允许最大任务下发数 */ + private Integer task_issue_max_num; + + /** 是否自动下发 */ + private Boolean is_auto_issue; + + /** 起点区域配置 */ + private String start_region_str; + + /** 终点区域配置 */ + private String next_region_str; + + /** 起点点位前缀 */ + private String start_point_pre; + + /** 终点点位前缀 */ + private String next_region_pre; + + /** 是否校验工单 */ + private Boolean is_check_workorder; + + /** 是否判断起点锁定 */ + private Boolean is_check_start_lock; + + /** 是否立即创建 */ + private Boolean is_immediate_create; + + /** 是否判断终点锁定 */ + private Boolean is_check_next_lock; + + /** 是否起点自动 */ + private Boolean is_start_auto; + + /** 是否终点自动 */ + private Boolean is_next_auto; + + /** 是否锁定起点 */ + private Boolean is_lock_start; + + /** 是否锁定终点 */ + private Boolean is_lock_next; + + /** 生成任务的请求参数 */ + private String request_param; + + /** 下发任务的请求参数 */ + private String response_param; + + /** 是否按组控制下发顺序 */ + private Boolean is_group_congrol_issue_seq; + + /** 任务未完成通知时间数 */ + private BigDecimal unfinish_notify_time; + + /** sql配置 */ + private String sql_param; + + /** 车间编码 */ + private String workshop_code; + + /** 备注 */ + private String remark; + + /** 是否启用 */ + private Boolean is_used; + + /** 是否删除 */ + private Boolean is_delete; + + /** 创建人 */ + private String create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private String update_id; + + /** 修改人 */ + private String update_name; + + /** 修改时间 */ + private String update_time; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigQuery.java new file mode 100644 index 0000000..3b0c1a3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/dto/SchBaseTaskconfigQuery.java @@ -0,0 +1,18 @@ +package org.nl.wms.sch.task.service.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; + +import java.io.Serializable; + +/** +* @author lyd +* @date 2023-05-15 +**/ +@Data +public class SchBaseTaskconfigQuery extends SchBaseTaskconfig { + + private String blurry; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java new file mode 100644 index 0000000..3a7f277 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java @@ -0,0 +1,258 @@ +package org.nl.wms.sch.task.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.language.LangProcess; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskMapper; +import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskconfigMapper; +import org.nl.wms.sch.task.service.dto.SchBaseTaskQuery; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.task.TaskFactory; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; + +/** + * @author lyd + * @description 服务实现 + * @date 2023-05-15 + **/ +@Slf4j +@Service +public class SchBaseTaskServiceImpl extends ServiceImpl implements ISchBaseTaskService { + + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; + @Autowired + private SchBaseTaskconfigMapper schBaseTaskconfigMapper; + + @Autowired + private TaskFactory taskFactory; + + @Override + public IPage queryAll(SchBaseTaskQuery whereJson, PageQuery page) { + List collect = ObjectUtil.isNotEmpty(whereJson.getMore_task_status()) + ? Arrays.stream(whereJson.getMore_task_status().split(",")).collect(Collectors.toList()) : null; + if (collect != null) { + if (collect.contains(TaskStatus.UNFINISHED.getCode())) { + collect = null; + whereJson.setUnFinished(TaskStatus.EXECUTING.getCode()); + } + } + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + pages = schBaseTaskMapper.selectPageLeftJoin(pages, whereJson, collect); + return pages; +// String task_code = ObjectUtil.isNotEmpty(whereJson.get("task_code")) +// ? whereJson.get("task_code").toString() : null; +// String vehicle_code = ObjectUtil.isNotEmpty(whereJson.get("vehicle_code")) +// ? whereJson.get("vehicle_code").toString() : null; +// String point_code = ObjectUtil.isNotEmpty(whereJson.get("point_code")) +// ? whereJson.get("point_code").toString() : null; +// String begin_time = ObjectUtil.isNotEmpty(whereJson.get("begin_time")) +// ? whereJson.get("begin_time").toString() : null; +// String end_time = ObjectUtil.isNotEmpty(whereJson.get("end_time")) +// ? whereJson.get("end_time").toString() : null; +// String more_task_status = ObjectUtil.isNotEmpty(whereJson.get("more_task_status")) +// ? whereJson.get("more_task_status").toString() : null; +// List collect = ObjectUtil.isNotEmpty(more_task_status) +// ? Arrays.stream(more_task_status.split(",")).collect(Collectors.toList()) : null; +// String unFinished = null; +// if (collect != null) { +// if (collect.contains(TaskStatus.UNFINISHED.getCode())) { +// collect = null; +// unFinished = TaskStatus.EXECUTING.getCode(); +// } +// } +// LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); +// lam.eq(ObjectUtil.isNotEmpty(task_code), SchBaseTask::getTask_code, task_code) +// .eq(ObjectUtil.isNotEmpty(vehicle_code), SchBaseTask::getVehicle_code, vehicle_code) +// .eq(ObjectUtil.isNotEmpty(point_code), SchBaseTask::getPoint_code1, point_code) +// .ge(ObjectUtil.isNotEmpty(begin_time), SchBaseTask::getCreate_time, begin_time) +// .le(ObjectUtil.isNotEmpty(end_time), SchBaseTask::getCreate_time, end_time) +// .in(ObjectUtil.isNotEmpty(collect), SchBaseTask::getTask_status, collect) +// .le(ObjectUtil.isNotEmpty(unFinished), SchBaseTask::getTask_status, unFinished) +// .orderByDesc(SchBaseTask::getUpdate_time); +// IPage pages = new Page<>(page.getPage() + 1, page.getSize()); +// schBaseTaskMapper.selectPage(pages, lam); +// return pages; + } + + + @Override + public void update(SchBaseTask entity) { + SchBaseTask dto = schBaseTaskMapper.selectById(entity.getTask_code()); + if (dto == null) throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + + schBaseTaskMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + schBaseTaskMapper.deleteBatchIds(ids); + } + + @Override + public List findUnFinishTasksByTaskConfig(String config_code) { + Assert.notNull(config_code, "任务配置编码不能为空!"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getConfig_code, config_code) + .ne(SchBaseTask::getIs_delete, true) + .lt(SchBaseTask::getTask_status, TaskStatus.FINISHED.getCode()); + List schBaseTasks = schBaseTaskMapper.selectList(lam); + return schBaseTasks; + } + + @Override + public List findUnFinishTasksByTaskConfig(String config_code, String task_code) { + Assert.notNull(config_code, "任务配置编码不能为空!"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getConfig_code, config_code) + .lt(SchBaseTask::getTask_status, TaskStatus.FINISHED.getCode()) + .ne(SchBaseTask::getTask_code, task_code) + .eq(SchBaseTask::getIs_delete, false); + List schBaseTasks = schBaseTaskMapper.selectList(lam); + return schBaseTasks; + } + + @Override + public List findUnFinishTasksByTaskConfig(String config_code, String device_code, String direction) { + Assert.notNull(config_code, "任务配置编码不能为空!"); + Assert.notNull(direction, "任务配置编置的方向不能为空!"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getConfig_code, config_code) + .lt(SchBaseTask::getTask_status, TaskStatus.FINISHED.getCode()) + .eq(direction.equals("1"), SchBaseTask::getPoint_code1, device_code) + .eq(direction.equals("2"), SchBaseTask::getPoint_code2, device_code) + .eq(SchBaseTask::getIs_delete, false); + List schBaseTasks = schBaseTaskMapper.selectList(lam); + return schBaseTasks; + } + + @Override + public List findTasksByTaskStatus(String config_code, TaskStatus status) { + Assert.notNull(config_code, "任务配置编码不能为空!"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getConfig_code, config_code) + .eq(SchBaseTask::getTask_status, status.getCode()) + .ne(SchBaseTask::getIs_delete, true); + + List schBaseTasks = schBaseTaskMapper.selectList(lam); + return schBaseTasks; + } + + @Override + public void create(SchBaseTask entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + Assert.notNull(entity.getTask_status(), "任务状态不能为空!"); + + entity.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + schBaseTaskMapper.insert(entity); + + } + + @Override + public void apply(JSONObject param) { + /** + * 参数:设备编号(确定的点), 任务类型, 载具编码 + * hint: 根据任务类型来判断校验 + */ + String configCode = param.getString("config_code"); + // 校验设备编码 + AbstractTask task = taskFactory.getTask(configCode); + // 执行创建任务 + task.apply(param); + } + + @Override + public JSONArray getTaskStatusList() { + TaskStatus[] values = TaskStatus.values(); + JSONArray arr = new JSONArray(); + for (TaskStatus value : values) { + JSONObject json = new JSONObject(); + json.put("code", value.getCode()); + json.put("name", value.getName()); + arr.add(json); + } + return arr; + } + + @Override + public void operation(Map param) { + String task_code = ObjectUtil.isNotEmpty(param.get("task_code")) ? param.get("task_code").toString() : null; + String method_name = ObjectUtil.isNotEmpty(param.get("method_name")) ? param.get("method_name").toString() : null; + String config_code = ObjectUtil.isNotEmpty(param.get("config_code")) ? param.get("config_code").toString() : null; + if (ObjectUtil.isEmpty(task_code) || ObjectUtil.isEmpty(method_name) || ObjectUtil.isEmpty(config_code)) { + throw new BadRequestException(LangProcess.msg("error_NullPoint")); + } + // 根据标识找到任务 + SchBaseTask taskOne = this.getByCode(task_code); + if (Integer.parseInt(taskOne.getTask_status()) >= Integer.parseInt(TaskStatus.FINISHED.getCode())) { + throw new BadRequestException(LangProcess.msg("task_statusWrong")); + } + // 根据配置去工厂类获得类对象 + String processing_class = config_code; + String message = ""; + // 根据任务类型获取对应的任务操作类 + AbstractTask abstractTask = taskFactory.getTask(processing_class); + // 调用每个任务类的method_name()强制结束方法 + JSONObject result; + switch (method_name) { + case "immediateNotifyAcs": + break; + case "forceFinish": + abstractTask.forceFinish(task_code); + break; + case "cancel": + abstractTask.cancel(task_code); + break; + default: + break; + } + } + + @Override + public SchBaseTask getByCode(String taskCode) { + LambdaQueryWrapper lam = new QueryWrapper().lambda(); + lam.eq(SchBaseTask::getTask_code, taskCode); + return this.getOne(lam); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskconfigServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskconfigServiceImpl.java new file mode 100644 index 0000000..45d831a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskconfigServiceImpl.java @@ -0,0 +1,102 @@ +package org.nl.wms.sch.task.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.language.LangProcess; +import org.nl.wms.basedata.master.classification.service.IMdBaseClassstandardService; +import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard; +import org.nl.wms.sch.task.service.ISchBaseTaskconfigService; +import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskconfigMapper; +import org.nl.wms.sch.task.service.dto.SchBaseTaskconfigQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Arrays; +import java.util.Map; +import java.util.Set; + +/** + * @author lyd + * @description 服务实现 + * @date 2023-05-15 + **/ +@Slf4j +@Service +public class SchBaseTaskconfigServiceImpl extends ServiceImpl implements ISchBaseTaskconfigService { + + @Autowired + private SchBaseTaskconfigMapper schBaseTaskconfigMapper; + @Autowired + private IMdBaseClassstandardService classstandardService; + + @Override + public IPage queryAll(SchBaseTaskconfigQuery whereJson, PageQuery page) { + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + pages = schBaseTaskconfigMapper.selectPageLeftJoin(pages, whereJson); + return pages; + } + + @Override + public void create(SchBaseTaskconfig entity) { + SchBaseTaskconfig schBaseTaskconfig = schBaseTaskconfigMapper.selectOne(new LambdaQueryWrapper().eq(SchBaseTaskconfig::getConfig_code, entity.getConfig_code())); + if (ObjectUtil.isNotEmpty(schBaseTaskconfig)) { + throw new BadRequestException(LangProcess.msg("error_ParamExist", entity.getConfig_code())); + } + + MdBaseClassstandard classstandard = classstandardService.getById(entity.getTask_type_id()); + if (classstandard == null) { + throw new BadRequestException(LangProcess.msg("error_isNull", entity.getTask_type())); + } + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setConfig_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + entity.setTask_type(classstandard.getClass_code()); + schBaseTaskconfigMapper.insert(entity); + } + + @Override + public void update(SchBaseTaskconfig entity) { + SchBaseTaskconfig dto = schBaseTaskconfigMapper.selectById(entity.getConfig_id()); + if (dto == null) { + throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); + } + MdBaseClassstandard classstandard = classstandardService.getById(entity.getTask_type_id()); + if (classstandard == null) { + throw new BadRequestException(LangProcess.msg("error_isNull", entity.getTask_type())); + } + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + entity.setTask_type(classstandard.getClass_code()); + schBaseTaskconfigMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + schBaseTaskconfigMapper.deleteBatchIds(ids); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AbstractTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AbstractTask.java new file mode 100644 index 0000000..45472a6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AbstractTask.java @@ -0,0 +1,318 @@ +package org.nl.wms.sch.task_manage; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.http.HttpStatus; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.exception.BadRequestException; +import org.nl.config.SpringContextHolder; +import org.nl.config.language.LangProcess; +import org.nl.wms.ext.acs.service.WmsToAcsService; +import org.nl.wms.ext.acs.service.dto.to.wms.AcsResponse; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.ISchBaseTaskconfigService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task_manage.enums.TaskDirectionEnum; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.nl.wms.util.TaskUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author ldjun + * @version 1.0 + * @date 2023年05月16日 16:42 + * @desc 任务抽象父类,申请任务的相关率先判断以及生成,接着到子类执行任务的创建,最后统一通过定时任务去下发到ACS + *

模板模式+策略模式,将具体的创建任务交付给具体的子类,能够做到责任拆分,各司其职

+ */ +@Slf4j +@Component +public abstract class AbstractTask { + @Autowired + private ISchBaseTaskService taskService; + @Autowired + private ISchBaseTaskconfigService taskConfigService; + @Autowired + private ISchBasePointService pointService; + @Autowired + private WmsToAcsService wmsToAcsService; + + /** + * 任务创建 + * 根据配置生成任务,如并发控制等 + * + * @throws BadRequestException / + */ + public abstract void create() throws BadRequestException; + + /** + * 任务创建 + * 只会创建完整的任务,创建失败则抛出异常 + * + * @param task / + */ + public void createCompletion(SchBaseTask task) { + } + + + /** + * @return WCS的任务集合 + * @discription 重新下发给wcs任务 + * @author ldjun + * @created 2020年6月12日 下午5:52:28 + */ + protected AcsResponse renotifyAcs(SchBaseTask task) { + Assert.notNull(task); + List taskList = new ArrayList<>(); + taskList.add(task); + return this.renotifyAcs(taskList); + } + + /** + * @return WCS的任务集合 + * @discription 重新下发给wcs任务 + * @author ldjun + * @created 2020年6月12日 下午5:52:28 + */ + @SneakyThrows + protected AcsResponse renotifyAcs(List taskList) { + AcsResponse resultForAcs = AcsResponse.requestOk(); + //1、获取任务 + //2、根据任务配置补全任务 + //3、下发 + List list = new ArrayList<>(); + for (SchBaseTask task : taskList) { + AcsTaskDto taskDto = new AcsTaskDto(); + taskDto.setExt_task_uuid(task.getTask_id()); + taskDto.setTask_code(task.getTask_code()); + taskDto.setRoute_plan_code("normal"); + taskDto.setStart_device_code(task.getPoint_code1()); + taskDto.setNext_device_code(task.getPoint_code2()); + taskDto.setStart_device_code2(task.getPoint_code3()); + taskDto.setNext_device_code2(task.getPoint_code4()); + taskDto.setVehicle_code(task.getVehicle_code()); + taskDto.setVehicle_code2(task.getVehicle_code2()); + this.setTask(task.getConfig_code(), taskDto); + // 如果各类方法对返回参数有不同,可以通过调用子类实现的deliveryBeforeProcessing方法来完成赋值,也可以是统一封装到参数值中。 + this.deliveryBeforeProcessing(task, taskDto); + list.add(taskDto); + } + try { + // 创建下发对象 + resultForAcs = wmsToAcsService.renotifyAcs(list); + } catch (Exception e) { + log.error("任务下发异常: {}", e.getMessage()); + resultForAcs.setResponseDate(DateUtil.now()); + resultForAcs.setCode(HttpStatus.HTTP_BAD_REQUEST); + resultForAcs.setMessage(e.getMessage()); + } + // 如果下发完毕,就修改状态 + if (resultForAcs.getCode() == HttpStatus.HTTP_OK) { + // 解析 + JSONArray errArr = resultForAcs.getErrArr(); + for (SchBaseTask schBaseTask : taskList) { + schBaseTask.setTask_status(TaskStatus.ISSUE.getCode()); + // 判断是否是出错的任务 + for (int i = 0; ObjectUtil.isNotEmpty(errArr) && i < errArr.size(); i++) { + JSONObject errObj = errArr.getJSONObject(i); + String taskCode = errObj.getString("task_code"); + if (taskCode.equals(schBaseTask.getTask_code())) { + // 出错的任务就设置出错信息为备注,不是出错就设置下发 + schBaseTask.setTask_status(TaskStatus.START_AND_POINT.getCode()); + schBaseTask.setRemark(errObj.getString("message")); + break; + } + } + } + taskService.updateBatchById(taskList); + } + return resultForAcs; + } + + private AcsTaskDto setTask(String config_code, AcsTaskDto taskDto) { + SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper() + .eq(SchBaseTaskconfig::getConfig_code, config_code)); + taskDto.setPriority(taskConfig.getPriority()); + taskDto.setTask_type(taskConfig.getAcs_task_type()); + taskDto.setProduct_area(taskConfig.getWorkshop_code()); + taskDto.setAgv_system_type(taskConfig.getAgv_system_type()); + taskDto.setRoute_plan_code(taskConfig.getRoute_plan_code()); + return taskDto; + } + + + /** + * 定时任务 + */ + public void schedule() { + this.autoCreate(); + this.create(); + // 下发 + this.getAllFinishTask(); + } + + public void getAllFinishTask() { + List list = taskService.list(new LambdaQueryWrapper() + .eq(SchBaseTask::getTask_status, TaskStatus.START_AND_POINT.getCode()) + .eq(SchBaseTask::getIs_delete, false)); + if (ObjectUtil.isEmpty(list)) { + return; + } + // 下发 + this.renotifyAcs(list); + } + + /** + * 更新任务状态,暴露给外围使用 + * @param taskObj 任务信息 + * @param status 状态 + */ + public void updateTaskStatus(JSONObject taskObj, TaskStatus status) { + this.updateStatus(taskObj, status); + } + + + /** + * 自动生成任务 + */ + protected void autoCreate() { + + } + + /** + * 修改状态 + * 以下改为public会出现自动注入类出现问题 + * + * @param taskObj 任务信息 + * @param status 状态 + */ + public abstract void updateStatus(JSONObject taskObj, TaskStatus status); + + + /** + * 设置起点或者终点 + * + * @param taskConfig + * @param task + * @param apply_point_code + */ + protected void setTaskPoint(SchBaseTaskconfig taskConfig, SchBaseTask task, String apply_point_code) { + String taskDirection = taskConfig.getTask_direction(); + if (TaskDirectionEnum.SEND.getValue().equals(taskDirection)) { + task.setPoint_code1(apply_point_code); + } else { + task.setPoint_code2(apply_point_code); + } + + } + + /** + * 下发前的处理,可以根据任务类进行给acs任务类更新数据 + * @param task LMS任务 + * @param acsTaskDto ACS任务 + */ + public void deliveryBeforeProcessing(SchBaseTask task, AcsTaskDto acsTaskDto) { + } + + /** + * 强制结束完成任务 + * + * @param task_code 任务标识 + * @return + * @discription 强制结束完成任务 + * @author ldjun + * @created 2020年6月19日 上午10:34:58 + */ + public abstract void forceFinish(String task_code); + + /** + * 取消任务,货物搬回原点 + * + * @param task_code + */ + public abstract void cancel(String task_code); + + /** + * 申请任务 + *

创建task的总入口,会根据自定义的子类去执行创建方法。

+ * @param param 请求任务的参数(可以是只确定了单个点,也可以是4个点都确定了) + * @throws BadRequestException 如果创建失败 + */ + public void apply(JSONObject param) throws BadRequestException { + // 申请任务 + SchBaseTask task = new SchBaseTask(); + // 请求点 + String applyPointCode = param.getString("device_code"); + String requestNo = param.getString("requestNo"); + String configCode = param.getString("config_code"); + + // 1、校验数据 + SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper() + .eq(SchBaseTaskconfig::getConfig_code, configCode)); + Assert.notNull(taskConfig, LangProcess.msg("common_configTip", configCode)); + + // 最大任务数 + Integer tcmn = taskConfig.getTask_create_max_num(); + + // 获取执行中的任务(由配置文件设置,一般是最大值) + List unFinishTasksByTaskConfig = taskService.findUnFinishTasksByTaskConfig( + taskConfig.getConfig_code(), taskConfig.getTask_direction()); + Assert.isFalse(unFinishTasksByTaskConfig.size() >= tcmn, LangProcess.msg("common_maxTaskTip", applyPointCode)); + + // 校验同个点位,同种任务是否多次请求创建任务(固定只能1个任务) + List applyPointTask = taskService.findUnFinishTasksByTaskConfig( + taskConfig.getConfig_code(), applyPointCode, taskConfig.getTask_direction()); + if (applyPointTask.size() == 1) { + throw new BadRequestException(LangProcess.msg("common_taskCreatedTip", applyPointCode)); + } + + String vehicleType = param.getString("vehicle_type"); + String vehicleCode = TaskUtils.defaultVehicleCode(param.getString("vehicle_code")); + AbstractTask bean = SpringContextHolder.getBean(this.getClass()); + + // 2、创建申请任务 + task.setAcs_trace_id(requestNo); + task.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setConfig_code(configCode); + // todo + task.setCreate_mode(ObjectUtil.isNotEmpty(param.getString("create_mode")) + ? param.getString("create_mode") : GeneralDefinition.ACS_CREATION); + task.setVehicle_code(vehicleCode); + task.setVehicle_qty(param.getInteger("vehicle_qty")); + task.setVehicle_type(vehicleType); + task.setTask_status(TaskStatus.APPLY.getCode()); + // 设置起/终点 + task.setPoint_code1(param.getString("point_code1")); + task.setPoint_code2(param.getString("point_code2")); + task.setPoint_code3(param.getString("point_code3")); + task.setPoint_code4(param.getString("point_code4")); + // 将所有参数存到表中,后续需要可以提取 + task.setRequest_param(JSONObject.toJSONString(param)); + // 设置创建人信息 + TaskUtils.setCreateByAcsOrPda(task, param); + + // 3、判断是否直接找点下发 + // 立即创建吧组盘放到具体位置,免得重复创建 + if (taskConfig.getIs_immediate_create()) { + bean.createCompletion(task); + } else { + // 不需要立即创建 + // 创建一条单点任务。 + taskService.save(task); + bean.create(); + } + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AcsTaskDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AcsTaskDto.java new file mode 100644 index 0000000..f9cd2f7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AcsTaskDto.java @@ -0,0 +1,142 @@ +package org.nl.wms.sch.task_manage; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Map; + +/** + *

+ * 任务dto + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class AcsTaskDto { + /** + * 任务标识 + */ + private String ext_task_uuid; + + /** + * 任务编号 + */ + private String task_code; + + + /** + * 取货点1 + */ + String start_device_code; + + /** + * 放货点1 + */ + String next_device_code; + + /** + * 取货点2 + */ + String start_device_code2; + + /** + * 放货点2 + */ + String next_device_code2; + + /** + * 对接位 + */ + String put_device_code; + + /** + * 优先级 + */ + String priority; + + /** + * 载具号 + */ + String vehicle_code; + + /** + * 载具号2 + */ + String vehicle_code2; + + /** + * 载具类型 + */ + String vehicle_type; + + /** + * 路由方案 + */ + String route_plan_code; + + /** + * 任务类型 + */ + String task_type; + + /** + * 立库任务类型 + * + */ + String dtl_type; + + /** + * Agv系统类型 + * 1:1楼叉车系统 + * 2:2楼1区域AGV系统 + * 3:2楼2区域AGV系统 + */ + String agv_system_type; + + /** + * 备注 + */ + String remark; + + /** + * 烘箱时间 + */ + String oven_time; + + /** + * 烘箱温度 + */ + String temperature; + + /** + * agv取货高度 + */ + private String start_height; + + /** + * agv放货高度 + */ + private String next_height; + + /** + * 方向 1往左 2往右 + */ + private String direction; + + /** + * 扩展属性 + */ + Map params; + /** + * 区域 + */ + private String product_area; + private String truss_type; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java new file mode 100644 index 0000000..34103d5 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java @@ -0,0 +1,67 @@ + +package org.nl.wms.sch.task_manage; + +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import org.nl.config.SpringContextHolder; +import org.reflections.Reflections; +import org.springframework.core.annotation.Order; +import org.springframework.stereotype.Component; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + + +/** + *

+ * 自动创建任务 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Slf4j +@Component +@Order(value = 1) +public class AutoCreateTask { + private static Set> subTypes = null; + private Map, Method> methodCache = new HashMap<>(); + // 类加载时候执行扫描 + static { + Reflections reflections = new Reflections("org.nl.wms.sch.task_manage.task.tasks"); + subTypes = reflections.getSubTypesOf(AbstractTask.class); + } + + @SneakyThrows + public void run() { + log.debug("定时任务AutoCreateTask开始执行:"); + this.doExecute(); + } + + + /** + * 需要按照任务配置类型并行执行 + */ + private void doExecute() { + subTypes.forEach(clz -> { + // 调用AbstractAcsTask类的每个子类的schedule()方法 + try { + Object obj = SpringContextHolder.getBean(clz); + Method m = obj.getClass().getMethod("schedule"); + m.invoke(obj); + } catch (InvocationTargetException e) { + e.printStackTrace(); + log.info("定时器执行失败:{}", e.getTargetException().getMessage()); + } catch (Exception e) { + e.printStackTrace(); + log.info("定时器执行失败:{}", e.getMessage()); + } + + }); + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/GeneralDefinition.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/GeneralDefinition.java new file mode 100644 index 0000000..9623d96 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/GeneralDefinition.java @@ -0,0 +1,53 @@ +package org.nl.wms.sch.task_manage; + +/** + * @Author: lyd + * @Description: 通用定义类型数据 + * @Date: 2023/7/13 + */ +public class GeneralDefinition { + /** 未知 */ + public static final String UNKNOWN = "-"; + // 是否 + /**是/正确/可用... */ + public static final String YES = "1"; + /** 否/错误/不可用... */ + public static final String NO = "0"; + // 账号定义 + /** acs系统 */ + public static final String ACS_ID = "2"; + /** acs系统 */ + public static final String ACS_NAME = "ACS系统"; + /** mes系统 */ + public static final String MES_ID = "3"; + /** mes系统 */ + public static final String MES_NAME = "MES系统"; + // 任务生产方式 + /**自动创建**/ + public static final String AUTO_CREATION = "1"; + /**ACS创建**/ + public static final String ACS_CREATION = "2"; + // 请求方向 + /**ACS->LMS**/ + public static final String ACS_LMS = "1"; + /**LMS->ACS**/ + public static final String LMS_ACS = "2"; + /**MES->LMS**/ + public static final String MES_LMS = "3"; + /**LMS->MES**/ + public static final String LMS_MES = "4"; + // 参数名称 + /** 是否连接 */ + public static final String IS_CONNECT_ACS = "is_connect_acs"; + /** ACS路径 */ + public static final String ACS_URL = "acs_url"; + /** 是否连接 */ + public static final String IS_CONNECT_MES = "is_connect_mes"; + /** MES路径 */ + public static final String MES_URL = "mes_url"; + // 完成/取消 + /** 任务完成 */ + public static final String TASK_FINISH = "任务完成"; + /** 任务取消 */ + public static final String TASK_CANCEL = "任务取消"; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/GroupBindMaterialStatusEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/GroupBindMaterialStatusEnum.java new file mode 100644 index 0000000..506c1c9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/GroupBindMaterialStatusEnum.java @@ -0,0 +1,41 @@ +package org.nl.wms.sch.task_manage.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @Author: lyd + * @Description: 组盘绑定物料状态枚举 + * @Date: 2023/5/25 + */ +@Getter +@AllArgsConstructor +public enum GroupBindMaterialStatusEnum { + /** + * 待绑定 + */ + WAIT_BIND("1", "带绑定"), + /** + * 已绑定 + */ + BOUND("2", "已绑定"), + /** + * 已解绑 + */ + UNBOUND("3", "已解绑"); + + private String value; + private String label; + +// static { // 只会初始化一次 +// SysDictServiceImpl bean = SpringContextHolder.getBean(SysDictServiceImpl.class); +// List taskDirection = bean.list(new LambdaQueryWrapper() +// .eq(Dict::getCode, "group_bind_material_status") +// .orderByAsc(Dict::getDict_sort)); +// GroupBindMaterialStatusEnum[] values = GroupBindMaterialStatusEnum.values(); +// for (int i = 0; i < values.length; i++) { +// values[i].value = taskDirection.get(i).getValue(); +// values[i].label = taskDirection.get(i).getLabel(); +// } +// } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/GroupStatusEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/GroupStatusEnum.java new file mode 100644 index 0000000..9643b50 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/GroupStatusEnum.java @@ -0,0 +1,29 @@ +package org.nl.wms.sch.task_manage.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @Author: lyd + * @Description: 组盘状态枚举 + * @Date: 2023/5/24 + */ +@Getter +@AllArgsConstructor +public enum GroupStatusEnum { + // 系统外 + OUT_SYSTEM("1", "系统外"), + // 存储中 + IN_STORAGE("2", "存储中"), + // 处理中 + IN_PROCESS("3", "处理中"), + // 搬运中 + IN_CARRY("4", "搬运中"), + // 可放料 + DISCHARGE_MATERIAL("5", "可放料"), + // 可取料 + CABLE_RETRIEVABLE_MATERIAL("6", "可取料"); + + private final String type; + private final String name; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/NoticeTypeEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/NoticeTypeEnum.java new file mode 100644 index 0000000..1ea9009 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/NoticeTypeEnum.java @@ -0,0 +1,24 @@ +package org.nl.wms.sch.task_manage.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @Author: lyd + * @Description: 通知类型枚举 + * @Date: 2023/6/15 + */ +@Getter +@AllArgsConstructor +public enum NoticeTypeEnum { + + // 异常 + EXCEPTION("1", "异常"), + // 警告 + WARN("2", "警告"), + // 通知 + NOTIFICATION("3", "通知"); + + private final String code; + private final String name; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/PackageInfoIvtEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/PackageInfoIvtEnum.java new file mode 100644 index 0000000..35103f2 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/PackageInfoIvtEnum.java @@ -0,0 +1,65 @@ +package org.nl.wms.sch.task_manage.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.MapOf; + + +import java.util.Map; + +/** + * 装箱区点位库存枚举 + * + * @author gbx + * @since 2024-01-31 + */ +@AllArgsConstructor +@Getter +public enum PackageInfoIvtEnum { + //点位类型 + POINT_STATUS(MapOf.of("满轴缓存位", "1", "空载具缓存位", "2", "待检区", "3", "管制区", "4", "装箱区", "5", "装箱位", "6")), + + //任务类型 + TASK_TYPE(MapOf.of("输送线->满轴缓存位", "010701", "满轴缓存位->待检区", "010702", "满轴缓存位->管制区", "010703", "放空(空载具缓存位->输送线)", + "010704", "取空(待检区->空载具缓存位)", "010705", "待检区->管制区", "010706","管制区->待检区", "010707","待检区->装箱区", "010708", "装箱区->装箱对接位", "010709","放空(装箱区->待检区)", "010710")), + + //ACS任务类型 + ACS_TASK_TYPE(MapOf.of("agv任务", "1", "桁架任务", "6")), + + //ACS系统类型 + AGV_SYSTEM_TYPE(MapOf.of("1楼叉车系统", "1", "2楼1区域AGV系统", "2", "2楼2区域AGV系统", "3")), + + //桁架任务类型 + TRUSS_TYPE(MapOf.of("点对点任务", "1", "下卷拔轴任务", "6", "换轴任务", "7","放轴任务", "8")), + + //是否 + IS_USED(MapOf.of("启用", "1", "未启用", "0")), + + //位置 + POINT_LOCATION(MapOf.of("上", "0", "下", "1")), + + //库存状态 + IVT_STATUS(MapOf.of("空", "0","空载具", "1","有子卷","2")); + + + private Map code; + + public String code(String desc) { + String code = this.getCode().get(desc); + if (StringUtils.isNotEmpty(code)) { + return code; + } + throw new BadRequestException(this.name() + "对应类型" + desc + "未定义"); + } + + public String check(String code) { + for (Map.Entry entry : this.getCode().entrySet()) { + if (entry.getValue().equals("code")) { + return entry.getValue(); + } + } + throw new BadRequestException(this.name() + "对应类型" + code + "未定义"); + } +} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/PointStatusEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/PointStatusEnum.java new file mode 100644 index 0000000..e07927d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/PointStatusEnum.java @@ -0,0 +1,24 @@ +package org.nl.wms.sch.task_manage.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @Author: lyd + * @Description: + * @Date: 2023/5/25 + */ +@Getter +@AllArgsConstructor +public enum PointStatusEnum { + + // 空位/无货 + EMPTY_POINT("1", "空位/无货"), + // 有料 + FULL_POINT("3", "有料"), + // 空载具/有货 + EMPTY_VEHICLE("2", "空载具/有货"); + + private final String code; + private final String label; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/TaskDirectionEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/TaskDirectionEnum.java new file mode 100644 index 0000000..19a6e3e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/TaskDirectionEnum.java @@ -0,0 +1,47 @@ +package org.nl.wms.sch.task_manage.enums; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.nl.config.SpringContextHolder; +import org.nl.system.service.dict.dao.Dict; +import org.nl.system.service.dict.impl.SysDictServiceImpl; + +import java.util.List; + +/** + * @Author: lyd + * @Description: 任务配置 - 任务去向枚举 + * @Date: 2023/5/25 + */ +@Getter +public enum TaskDirectionEnum { + + /** + * 送货 + */ + SEND, + /** + * 取货 + */ + CALL, + /** + * 移货 + */ + MOVE; + + private String value; + private String label; + + static { + SysDictServiceImpl bean = SpringContextHolder.getBean(SysDictServiceImpl.class); + List taskDirection = bean.list(new LambdaQueryWrapper() + .eq(Dict::getCode, "task_direction") + .orderByAsc(Dict::getDict_sort)); + TaskDirectionEnum[] values = TaskDirectionEnum.values(); + for (int i = 0; i < values.length; i++) { + values[i].value = taskDirection.get(i).getValue(); + values[i].label = taskDirection.get(i).getLabel(); + } + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/TaskFinishedTypeEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/TaskFinishedTypeEnum.java new file mode 100644 index 0000000..d732e39 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/TaskFinishedTypeEnum.java @@ -0,0 +1,25 @@ +package org.nl.wms.sch.task_manage.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @Author: lyd + * @Description: 任务完成枚举 + * @Date: 2023/6/13 + */ +@Getter +@AllArgsConstructor +public enum TaskFinishedTypeEnum { + + // ACS自动完成 + AUTO_ACS("1", "ACS自动完成"), + // PC手动完成 + MANUAL_PC("2", "PC手动完成"), + // PDA手持 + MANUAL_PDA("3", "PDA手持"); + + private final String code; + + private final String description; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/WorkOrderStatusEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/WorkOrderStatusEnum.java new file mode 100644 index 0000000..0ffa420 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/enums/WorkOrderStatusEnum.java @@ -0,0 +1,28 @@ +package org.nl.wms.sch.task_manage.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @Author: lyd + * @Description: 工单状态枚举 + * @Date: 2023/6/16 + */ +@Getter +@AllArgsConstructor +public enum WorkOrderStatusEnum { + + // 未生产 + UNPRODUCED("1", "未生产"), + // 已下发 + ISSUED("2", "已下发"), + // 生产中 + PRODUCING("3", "生产中"), + // 暂停 + STOP("4", "暂停"), + // 完成 + COMPLETE("5", "完成"); + + private final String code; + private final String name; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/AcsUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/AcsUtil.java new file mode 100644 index 0000000..a3427f7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/AcsUtil.java @@ -0,0 +1,115 @@ +package org.nl.wms.sch.task_manage.task; + +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpRequest; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; +import org.nl.config.SpringContextHolder; +import org.nl.system.service.param.dao.Param; +import org.nl.system.service.param.impl.SysParamServiceImpl; +import org.nl.wms.ext.acs.service.dto.ResultForAcs; +import org.nl.wms.ext.acs.service.dto.to.wms.AcsResponse; +import org.nl.wms.sch.task_manage.GeneralDefinition; + +import java.util.List; + +/** + *

+ * ACS连接工具类: 不允许直接操作结果,将其封装到ResultForAcs,由实现类操作 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Slf4j +public class AcsUtil { + /** + * 原生默认请求方法: 默认执行的参数都是jsonArray + * @param api + * @param list + * @return + * @param + */ + public static ResultForAcs notifyAcs(String api, List list) { + SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class); + // list转JSONArray + String s = JSON.toJSONString(list); + //判断是否连接ACS系统 + Param isConnectAcs = sysParamService.findByCode(GeneralDefinition.IS_CONNECT_ACS); + if (ObjectUtil.isEmpty(isConnectAcs)) { + return ResultForAcs.requestRefuse("参数表中:" + GeneralDefinition.IS_CONNECT_ACS + "不存在"); + } + String isConnect = isConnectAcs.getValue(); + //ACS地址:127.0.0.1:8010 + Param acsUrlObj = sysParamService.findByCode(GeneralDefinition.ACS_URL); + if (ObjectUtil.isEmpty(acsUrlObj)) { + return ResultForAcs.requestRefuse("参数表中:" + GeneralDefinition.ACS_URL + "不存在"); + } + String acsUrl = acsUrlObj.getValue(); + JSONObject result; + if (StrUtil.equals(GeneralDefinition.NO, isConnect)) { + return ResultForAcs.requestRefuse("未连接ACS!"); + } + String url = acsUrl + api; + log.info("下发acs任务的参数为:{}", list.toString()); + ResultForAcs resultForAcs; + try { + String resultMsg = HttpRequest.post(url) + .body(s) + .execute().body(); + result = JSONObject.parseObject(resultMsg); + resultForAcs = JSONObject.toJavaObject(result, ResultForAcs.class); + } catch (Exception e) { + String msg = e.getMessage(); + //网络不通 + log.error("连接失败:{}", msg); + return ResultForAcs.requestRefuse("网络不通,操作失败!"); + } + return resultForAcs; + } + + /** + * 新的请求方式:对象中包含数组 + * @param api + * @param object + * @return + * @param + */ + public static AcsResponse notifyAcs2(String api, T object) { + SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class); + //判断是否连接ACS系统 + Param isConnectAcs = sysParamService.findByCode(GeneralDefinition.IS_CONNECT_ACS); + if (ObjectUtil.isEmpty(isConnectAcs)) { + return AcsResponse.requestRefuse("参数表中:" + GeneralDefinition.IS_CONNECT_ACS + "不存在"); + } + String isConnect = isConnectAcs.getValue(); + //ACS地址:127.0.0.1:8010 + Param acsUrlObj = sysParamService.findByCode(GeneralDefinition.ACS_URL); + if (ObjectUtil.isEmpty(acsUrlObj)) { + return AcsResponse.requestRefuse("参数表中:" + GeneralDefinition.ACS_URL + "不存在"); + } + String acsUrl = acsUrlObj.getValue(); + JSONObject result; + if (StrUtil.equals(GeneralDefinition.NO, isConnect)) { + return AcsResponse.requestRefuse("未连接ACS!"); + } + String url = acsUrl + api; + log.info("下发acs任务的参数为:{}", object.toString()); + AcsResponse resultForAcs; + try { + String resultMsg = HttpRequest.post(url) + .body(JSON.toJSONString(object)) + .execute().body(); + result = JSONObject.parseObject(resultMsg); + resultForAcs = JSONObject.toJavaObject(result, AcsResponse.class); + } catch (Exception e) { + String msg = e.getMessage(); + //网络不通 + log.error("连接失败:{}", msg); + return AcsResponse.requestRefuse("网络不通,操作失败!"); + } + return resultForAcs; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskFactory.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskFactory.java new file mode 100644 index 0000000..1d1c5b6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskFactory.java @@ -0,0 +1,43 @@ +package org.nl.wms.sch.task_manage.task; + +import org.nl.wms.sch.task_manage.AbstractTask; +import org.springframework.beans.BeansException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.config.BeanPostProcessor; +import org.springframework.context.ApplicationContext; +import org.springframework.stereotype.Component; + +import java.util.HashMap; +import java.util.Map; + +/** + * @author ldjun + * @version 2.0 + * @date 2023年05月16日 16:42 + * @desc 采用获取注解来标识任务类型,并通过扫描和反射的方式来获取任务实例 + * 3.0 采用获取所有bean对象判断是否为AbstractTask + */ +@Component +public class TaskFactory implements BeanPostProcessor { + private final Map taskMap; + + @Autowired + public TaskFactory() { + taskMap = new HashMap<>(); + } + + @Override + public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException { + if (bean instanceof AbstractTask) { + taskMap.put(beanName, (AbstractTask) bean); + } + return bean; + } + + public AbstractTask getTask(String taskType) { + if (taskType == null) { + return null; + } + return taskMap.get(taskType); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskType.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskType.java new file mode 100644 index 0000000..dd0e424 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskType.java @@ -0,0 +1,18 @@ +package org.nl.wms.sch.task_manage.task; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * @Author: lyd + * @Description: 配置任务类型注解 + * @Date: 2023/6/21 + */ +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +public @interface TaskType { + String value(); +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskApplyType.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskApplyType.java new file mode 100644 index 0000000..0a009e1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskApplyType.java @@ -0,0 +1,38 @@ +package org.nl.wms.sch.task_manage.task.core; + +/** + * @author ldjun + * @version 1.0 + * @date 2023年05月08日 10:27 + * @desc desc + */ + +public enum TaskApplyType { + // 送料 + SEND_MATERIAL(1, "送料", "送料"), + // 送空载具 + SEND_EMPTY(2, "送空载具", "送空载具"), + // 叫料 + CALL_MATERIAL(3, "叫料", "叫料"), + // 叫空载具 + CALL_EMPTY(4, "叫空载具", "叫空载具"); + + TaskApplyType(int code, String name, String desc) { + this.code = code; + this.name = name; + this.desc = desc; + } + + /** + * 操作设备类型编码 + */ + private int code; + /** + * 操作设备类型名字 + */ + private String name; + /** + * 操作设备类型类型 + */ + private String desc; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskOperateType.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskOperateType.java new file mode 100644 index 0000000..044207e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskOperateType.java @@ -0,0 +1,33 @@ +package org.nl.wms.sch.task_manage.task.core; + +/** + *

+ * 任务操作终端类型 + *

+ * + * @author generator + * @since 2023-11-16 + */ +public enum TaskOperateType { + // ACS + ACS("1", "ACS", "ACS"), + // 创建完成 + PC("2", "PC", "创建完成"), + // 手持 + MOBILE("3", "手持", "手持"), + // 定时任务 + QUARTZ("4", "定时任务", "定时任务"), + // 其它" + OTHER("5", "其它", "其它"); + + + TaskOperateType(String code, String name, String desc) { + this.code = code; + this.name = name; + this.desc = desc; + } + + private String code; + private String name; + private String desc; +} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskStatus.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskStatus.java new file mode 100644 index 0000000..ae49399 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskStatus.java @@ -0,0 +1,71 @@ +package org.nl.wms.sch.task_manage.task.core; + +/** + *

+ * 任务状态枚举 + *

+ * + * @author generator + * @since 2023-11-16 + */ +public enum TaskStatus { + // APPLY("1", "申请", "申请"), + // // 创建完成 + // CREATED("2", "创建完成", "创建完成"), + // // 下发 + // ISSUED("3", "下发", "下发"), + // // 执行中 + // EXECUTING("4", "执行中", "执行中"), + // // 完成 + // FINISHED("5", "完成", "完成"), + // // 已取消 + // CANCELED("6", "已取消", "已取消"), + // // 未完成 + // UNFINISHED("7", "未完成", "未完成"); + APPLY("00", "申请", "申请"), + + CREATED("01", "生成", "生成"), + SURE_START("02", "确定起点", "确定起点"), + SURE_END("03", "确定终点", "确定终点"), + START_AND_POINT("04", "起点终点确认", "起点终点确认"), + ISSUE("05", "下发", "下发"), + EXECUTING("06", "执行中", "执行中"), + FINISHED("07", "完成", "完成"), + CANCELED("08", "已取消", "已取消"), + // 未完成 + UNFINISHED("09", "未完成", "未完成"); + + TaskStatus(String code, String name, String desc) { + this.code = code; + this.name = name; + this.desc = desc; + } + + private String code; + private String name; + private String desc; + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDesc() { + return desc; + } + + public void setDesc(String desc) { + this.desc = desc; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/CallEmpReelTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/CallEmpReelTask.java new file mode 100644 index 0000000..9b1a3a3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/CallEmpReelTask.java @@ -0,0 +1,413 @@ +package org.nl.wms.sch.task_manage.task.second_floor_area; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.*; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.config.language.LangProcess; +import org.nl.common.utils.CodeUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.system.service.dict.ISysDictService; +import org.nl.system.service.dict.dao.Dict; +import org.nl.system.service.dict.dao.mapper.SysDictMapper; +import org.nl.wms.basedata.material.dao.MdMeMaterialbase; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; +import org.nl.wms.md.service.ImdPbInterfacebackService; +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; +import org.nl.wms.pdm.bi.service.IpdmBiRawfoilworkorderService; +import org.nl.wms.pdm.bi.service.IpdmBiSlittingproductionplanService; +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; +import org.nl.wms.pdm.ivt.dao.StIvtCoolregionio; +import org.nl.wms.pdm.ivt.dao.StIvtSbpointivt; +import org.nl.wms.pdm.ivt.service.*; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.AcsTaskDto; +import org.nl.wms.sch.task_manage.enums.PackageInfoIvtEnum; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.util.TaskUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.Map; + + +/** + * 1 生箔区域和冷却区之前的任务创建 + * + * @author gbx + * @since 2024-03-28 + */ +@Slf4j +@Component(value = "CallEmpReelTask") +public class CallEmpReelTask extends AbstractTask { + + private final String THIS_CLASS = CallEmpReelTask.class.getName(); + + + @Resource + private ISchBaseTaskService taskService; + + + + @Resource + private ISysDictService sysDictService; + + + + @Resource + private IstIvtCoolpointivtService stIvtCoolpointivtService; + + + @Resource + private IstIvtCoolregionioService stIvtCoolRegionIoService; + + + @Resource + private IpdmBiRawfoilworkorderService pdmBiRawfoilworkorderService; + + + @Resource + private IstIvtSbpointivtService stIvtSbpointivtService; + + + @Resource + private ImdMeMaterialbaseService mdMeMaterialbaseService; + + + /** + * 特殊操作 + * + * @param task LMS任务 + * @param acsTaskDto ACS任务 + */ + @Override + public void deliveryBeforeProcessing(SchBaseTask task, AcsTaskDto acsTaskDto) { + acsTaskDto.setDtl_type(task.getDtl_type()); + acsTaskDto.setTruss_type(PackageInfoIvtEnum.TRUSS_TYPE.code("点对点任务")); + acsTaskDto.setParams(JSON.parseObject(task.getRequest_param(), + new TypeReference>() {})); + } + + @Override + public void create() throws BadRequestException { + + } + + @Override + public void createCompletion(SchBaseTask task) { + Assert.notNull(task, "请求参数不能为空"); + String taskType = task.getTask_type(); + if (StrUtil.isBlank(taskType)) { + throw new BadRequestException("业务类型不能为空"); + } + String vehicleCode = task.getVehicle_code(); + if (StrUtil.isBlank(vehicleCode)) { + throw new BadRequestException("载具号不能为空"); + } + String pointCode1 = task.getPoint_code1(); + if (StrUtil.isBlank(pointCode1)) { + throw new BadRequestException("起点不能为空"); + } + String pointCode2 = task.getPoint_code2(); + if (StrUtil.isBlank(pointCode2)) { + throw new BadRequestException("下一点不能为空"); + } + if (isSingleTask(pointCode1)) { + throw new BadRequestException("点位:" + pointCode1 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode2)) { + throw new BadRequestException("点位:" + pointCode2 + "存在未完成的任务!"); + } + if (isSingleTask(task.getPoint_code3())) { + throw new BadRequestException("点位:" + task.getPoint_code3() + "存在未完成的任务!"); + } + if (isSingleTask(task.getPoint_code4())) { + throw new BadRequestException("点位:" + task.getPoint_code4() + "存在未完成的任务!"); + } + task.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setHandle_class(THIS_CLASS); + task.setTask_status(StrUtil.isBlank(task.getTask_status()) ? TaskStatus.START_AND_POINT.getCode() : task.getTask_status()); + task.setWorkshop_code(StrUtil.isEmpty(task.getWorkshop_code())? "A1" : task.getWorkshop_code()); + Dict dict = sysDictService.getOne(new LambdaQueryWrapper() + .eq(Dict::getCode, "task_priority") + .eq(Dict::getLabel, task.getTask_type())); + task.setPriority(dict == null ? "1" : dict.getValue()); + boolean isSend = StrUtil.isBlank(task.getIs_send()) || BooleanUtil.toBoolean(task.getIs_send()); + task.setIs_send(isSend ? "1" : "0"); + TaskUtils.setCreateByDefault(task); + if (StrUtil.equals(task.getTask_type(), "1")) { + if (isSingleTask(task.getPoint_code1()) || isSingleTask(task.getPoint_code3())) { + throw new BadRequestException("点位:" + (isSingleTask(task.getPoint_code1()) ? task.getPoint_code1() : task.getPoint_code3()) + "存在未完成的任务!"); + } + task.setTask_type("010201"); + task.setAcs_task_type(PackageInfoIvtEnum.ACS_TASK_TYPE.code("桁架任务")); + // 更新对应点位库存为已裹膜 + StIvtCoolpointivt coolIvtToUpdate = stIvtCoolpointivtService.getOne(new LambdaQueryWrapper() + .eq(StIvtCoolpointivt::getFull_point_code, task.getPoint_code1()), false); + if (ObjectUtil.isEmpty(coolIvtToUpdate)) { + throw new BadRequestException("未查询到对应的冷却区点位!"); + } + coolIvtToUpdate.setCool_ivt_status("02"); + stIvtCoolpointivtService.updateById(coolIvtToUpdate); + } else if (StrUtil.equals(task.getTask_type(), "2")) { + if (isSingleTask(task.getPoint_code1()) || isSingleTask(task.getPoint_code2())) { + throw new BadRequestException("点位:" + (isSingleTask(task.getPoint_code1()) ? task.getPoint_code1() : task.getPoint_code2()) + "存在未完成的任务!"); + } + task.setTask_type("010203"); + task.setAcs_task_type(PackageInfoIvtEnum.ACS_TASK_TYPE.code("桁架任务")); + } + taskService.save(task); + // 如果需要立即下发 + if (BooleanUtil.toBoolean(task.getIs_send())) { + this.renotifyAcs(task); + } + } + + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateStatus(JSONObject taskObj, TaskStatus status) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_code, taskObj.getString("task_code")), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务更新接口任务号为空!"); + } + //更新车号和重量 + String carNo = taskObj.getString("car_no"); + if (ObjectUtil.isNotEmpty(carNo)) { + PdmBiRawfoilworkorder jsonRaw = pdmBiRawfoilworkorderService.getOne(new QueryWrapper() + .eq("container_name", schBaseTask.getMaterial_code()) + .ne("status", "09") + .eq("is_delete", "0") + ); + if (jsonRaw != null) { + jsonRaw.setAgvno(carNo); + pdmBiRawfoilworkorderService.updateById(jsonRaw); + } + } + // 更新生箔工单称重信息 + String weight = taskObj.getString("weight"); + if (ObjectUtil.isNotEmpty(weight)) { + PdmBiRawfoilworkorder jsonRaw = pdmBiRawfoilworkorderService.getOne(new QueryWrapper() + .eq("container_name", schBaseTask.getMaterial_code()) + .ne("status", "09") + .eq("is_delete", "0") + ); + if (jsonRaw != null) { + jsonRaw.setProductin_qty(new BigDecimal(weight)); + pdmBiRawfoilworkorderService.updateById(jsonRaw); + } + } + if (status.getCode().equals(IOSEnum.IS_NOTANDYES.code("否"))) { + // 更新删除字段 + schBaseTask.setIs_delete(true); + schBaseTask.setUpdate_time(DateUtil.now()); + taskService.updateById(schBaseTask); + // 更新生箔工单状态为开始、清除称重信息 + PdmBiRawfoilworkorder jsonRaw = pdmBiRawfoilworkorderService.getOne(new QueryWrapper() + .eq("container_name", schBaseTask.getMaterial_code()) + .ne("status", "09") + .eq("is_delete", "0") + ); + if (jsonRaw != null) { + jsonRaw.setStatus("01"); + jsonRaw.setProductin_qty(BigDecimal.ZERO); + pdmBiRawfoilworkorderService.updateById(jsonRaw); + } + } + // 执行中 + if (TaskStatus.EXECUTING.getCode().equals(status.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.EXECUTING.getCode()); + } + // 完成 + if (StrUtil.equals(status.getCode(), TaskStatus.FINISHED.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + String pointCode1 = schBaseTask.getPoint_code1(); + String pointCode2 = schBaseTask.getPoint_code2(); + String pointCode3 = schBaseTask.getPoint_code3(); + String pointCode4 = schBaseTask.getPoint_code4(); + PdmBiRawfoilworkorder jsonRaw = pdmBiRawfoilworkorderService.getOne(new QueryWrapper() + .eq("container_name", schBaseTask.getMaterial_code()) + .ne("status", "09") + .eq("is_delete", "0") + ); + + // 判断是两个点位的任务还是四个点位的任务 + if (ObjectUtil.isEmpty(pointCode3)) { + // 判断是取满 or 取空 :取满起点是生箔区域、取空起点是冷却区域 + StIvtSbpointivt jsonSbIvt = stIvtSbpointivtService.getOne(new QueryWrapper() + .eq("point_code", pointCode1.substring(0, pointCode1.length() - 2)) + ); + if (ObjectUtil.isNotEmpty(jsonSbIvt)) { + // 取满 + StIvtCoolpointivt jsonCoolIvt = stIvtCoolpointivtService.getOne(new QueryWrapper() + .eq("full_point_code", pointCode2) + ); + // 更新库存状态 + if (jsonCoolIvt != null) { + jsonCoolIvt.setFull_point_status("02"); + jsonCoolIvt.setInstorage_time(DateUtil.now()); + jsonCoolIvt.setContainer_name(jsonRaw.getContainer_name()); + jsonCoolIvt.setWorkorder_id(jsonRaw.getWorkorder_id()); + jsonCoolIvt.setIvt_qty(jsonRaw.getProductin_qty()); + stIvtCoolpointivtService.updateById(jsonCoolIvt); + } + // 更新母卷工单状态 + pdmBiRawfoilworkorderService.update(Wrappers.lambdaUpdate() + .set(PdmBiRawfoilworkorder::getStatus, "09") + .set(PdmBiRawfoilworkorder::getRealend_time, DateUtil.now()) + .set(PdmBiRawfoilworkorder::getUpdate_optid, SecurityUtils.getCurrentUserId()) + .set(PdmBiRawfoilworkorder::getUpdate_optname, SecurityUtils.getCurrentUsername()) + .set(PdmBiRawfoilworkorder::getFinish_type, "01") + .set(PdmBiRawfoilworkorder::getUpdate_time, DateUtil.now()) + .eq(PdmBiRawfoilworkorder::getContainer_name, schBaseTask.getMaterial_code()) + ); + } else { + // 取空 + StIvtCoolpointivt jsonCoolIvt = stIvtCoolpointivtService.getOne(new QueryWrapper() + .eq("empty_point_code", pointCode1) + ); + if (jsonCoolIvt != null) { + jsonCoolIvt.setEmpty_point_status("01"); + jsonCoolIvt.setEmpty_vehicle_code(""); + stIvtCoolpointivtService.updateById(jsonCoolIvt); + } + } + } else { + // 取满放空 + // 校验起点是否存在 + StIvtCoolpointivt jsonIvt = stIvtCoolpointivtService.getOne(new QueryWrapper() + .eq("empty_point_code", pointCode1) + ); + if (jsonIvt == null) { + throw new BadRequestException("未找到可用点位:" + pointCode1); + } + // 更新冷却库存状态 + jsonIvt.setEmpty_point_status("01"); + jsonIvt.setEmpty_vehicle_code(""); + stIvtCoolpointivtService.updateById(jsonIvt); + // 校验终点是否存在 + StIvtCoolpointivt jsonIvt2 = stIvtCoolpointivtService.getOne(new QueryWrapper() + .eq("full_point_code", pointCode4) + ); + if (jsonIvt2 == null) { + throw new BadRequestException("终点未找到可用点位:" + pointCode2); + } + // 更新工单状态为完成 + pdmBiRawfoilworkorderService.update(Wrappers.lambdaUpdate() + .set(PdmBiRawfoilworkorder::getStatus, "09") + .set(PdmBiRawfoilworkorder::getRealend_time, DateUtil.now()) + .set(PdmBiRawfoilworkorder::getUpdate_optid, SecurityUtils.getCurrentUserId()) + .set(PdmBiRawfoilworkorder::getUpdate_optname, SecurityUtils.getCurrentUsername()) + .set(PdmBiRawfoilworkorder::getFinish_type, "01") + .set(PdmBiRawfoilworkorder::getUpdate_time, DateUtil.now()) + .eq(PdmBiRawfoilworkorder::getContainer_name, schBaseTask.getMaterial_code()) + ); + // 更新冷却库存状态 + jsonIvt2.setFull_point_status("02"); + jsonIvt2.setInstorage_time(DateUtil.now()); + jsonIvt2.setContainer_name(jsonRaw.getContainer_name()); + jsonIvt2.setWorkorder_id(jsonRaw.getWorkorder_id()); + jsonIvt2.setIvt_qty(jsonRaw.getProductin_qty()); + jsonIvt2.setCool_ivt_status("01"); + stIvtCoolpointivtService.updateById(jsonIvt2); + // 插入入库单 + MdMeMaterialbase jsonMater = mdMeMaterialbaseService.getOne(new QueryWrapper() + .eq("material_code", jsonRaw.getProduct_name()) + ); + if (jsonMater == null) { + throw new BadRequestException("产品不存在"); + } + StIvtCoolregionio jsonRegion = new StIvtCoolregionio(); + jsonRegion.setIostorinv_id(IdUtil.getSnowflake(1, 1).nextId()); + jsonRegion.setBill_code(CodeUtil.getNewCode("COOLREGION_BILL_CODE")); + jsonRegion.setIo_type("0"); + jsonRegion.setMaterial_id(jsonMater.getMaterial_id()); + jsonRegion.setPcsn(jsonRaw.getContainer_name()); + jsonRegion.setVehicle_code(""); + jsonRegion.setQty(jsonRaw.getProductin_qty()); + //todo 物料单位是否需要 + //jsonRegion.setQty_unit_id(jsonMater.getQty_unit_id()); + jsonRegion.setBill_status("50"); + jsonRegion.setStart_point_code(pointCode2); + jsonRegion.setEnd_point_code(pointCode4); + jsonRegion.setCust_id(""); + jsonRegion.setCreate_mode("03"); + jsonRegion.setTask_id(taskObj.getString("task_code")); + jsonRegion.setCreate_id(SecurityUtils.getCurrentUserId()); + jsonRegion.setCreate_name(SecurityUtils.getCurrentUsername()); + jsonRegion.setCreate_time(DateUtil.now()); + jsonRegion.setUpdate_optid(SecurityUtils.getCurrentUserId()); + jsonRegion.setUpdate_optname(SecurityUtils.getCurrentUsername()); + jsonRegion.setUpdate_time(DateUtil.now()); + jsonRegion.setConfirm_optid(SecurityUtils.getCurrentUserId()); + jsonRegion.setConfirm_optname(SecurityUtils.getCurrentUsername()); + jsonRegion.setConfirm_time(DateUtil.now()); + stIvtCoolRegionIoService.save(jsonRegion); + } + } + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + + @Override + public void forceFinish(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException(LangProcess.msg("CallEmpReelTask_forceFinish")); + } + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + @Override + public void cancel(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException(LangProcess.msg("CallEmpReelTask_forceCancel")); + } + schBaseTask.setTask_status(IOSEnum.ACS_RESULT.code("取消")); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + public boolean isSingleTask(String point_code) { + return taskService.getOne(new LambdaQueryWrapper() + .and(wrapper -> wrapper + .eq(SchBaseTask::getPoint_code1, point_code) + .or() + .eq(SchBaseTask::getPoint_code2, point_code) + .or() + .eq(SchBaseTask::getPoint_code3, point_code) + .or() + .eq(SchBaseTask::getPoint_code4, point_code) + ) + .lt(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getIs_delete, "0") + ) != null; + } + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/CoolCutTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/CoolCutTask.java new file mode 100644 index 0000000..5fb9536 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/CoolCutTask.java @@ -0,0 +1,387 @@ +package org.nl.wms.sch.task_manage.task.second_floor_area; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.system.service.dict.ISysDictService; +import org.nl.system.service.dict.dao.Dict; +import org.nl.system.service.dict.dao.mapper.SysDictMapper; +import org.nl.wms.md.service.ImdPbInterfacebackService; +import org.nl.wms.pdm.bi.dao.PdmBiSlittingproductionplan; +import org.nl.wms.pdm.bi.service.IpdmBiRawfoilworkorderService; +import org.nl.wms.pdm.bi.service.IpdmBiSlittingproductionplanService; +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; +import org.nl.wms.pdm.ivt.dao.StIvtCoolregionio; +import org.nl.wms.pdm.ivt.dao.StIvtCutpointivt; +import org.nl.wms.pdm.ivt.service.*; +import org.nl.wms.pdm.ivt.service.impl.StIvtCutpointivtServiceImpl; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.AcsTaskDto; +import org.nl.wms.sch.task_manage.enums.PackageInfoIvtEnum; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.util.TaskUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.HashMap; +import java.util.Map; +import java.util.Optional; + + +/** + * @author gbx + * @since 2024-04-11 + */ +@Slf4j +@Component(value = "CoolCutTask") +public class CoolCutTask extends AbstractTask { + + private final String THIS_CLASS = CoolCutTask.class.getName(); + + + @Resource + private ISchBaseTaskService taskService; + + + @Resource + private ISysDictService sysDictService; + + + @Resource + private IstIvtCoolpointivtService stIvtCoolpointivtService; + + + @Resource + private IstIvtCoolregionioService stIvtCoolRegionIoService; + + + + @Resource + private IstIvtCutpointivtService stIvtCutpointivtService; + + //分切计划 + @Resource + private IpdmBiSlittingproductionplanService pdmBiSlittingproductionplanService; + + + /** + * 特殊操作 + * + * @param task LMS任务 + * @param acsTaskDto ACS任务 + */ + @Override + public void deliveryBeforeProcessing(SchBaseTask task, AcsTaskDto acsTaskDto) { + acsTaskDto.setDtl_type(task.getDtl_type()); + acsTaskDto.setTruss_type(PackageInfoIvtEnum.TRUSS_TYPE.code("点对点任务")); + acsTaskDto.setAgv_system_type(PackageInfoIvtEnum.AGV_SYSTEM_TYPE.code("2楼1区域AGV系统")); + acsTaskDto.setParams(JSON.parseObject(task.getRequest_param(), new TypeReference>() { + })); + } + + @Override + public void createCompletion(SchBaseTask task) { + Assert.notNull(task, "请求参数不能为空"); + String taskType = task.getTask_type(); + if (StrUtil.isBlank(taskType)) { + throw new BadRequestException("业务类型不能为空"); + } + String vehicleCode = task.getVehicle_code(); + if (StrUtil.isBlank(vehicleCode)) { + throw new BadRequestException("载具号不能为空"); + } + String pointCode1 = task.getPoint_code1(); + if (StrUtil.isBlank(pointCode1)) { + throw new BadRequestException("起点不能为空"); + } + String pointCode2 = task.getPoint_code2(); + if (StrUtil.isBlank(pointCode2)) { + throw new BadRequestException("下一点不能为空"); + } + String pointCode3 = task.getPoint_code3(); + String pointCode4 = task.getPoint_code4(); + if (isSingleTask(pointCode1)) { + throw new BadRequestException("点位:" + pointCode1 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode2)) { + throw new BadRequestException("点位:" + pointCode2 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode3)) { + throw new BadRequestException("点位:" + pointCode3 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode4)) { + throw new BadRequestException("点位:" + pointCode4 + "存在未完成的任务!"); + } + //是否立即下发 + boolean isSend = !StrUtil.isNotBlank(task.getIs_send()) || BooleanUtil.toBoolean(task.getIs_send()); + task.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setHandle_class(THIS_CLASS); + task.setIs_send(isSend ? "1" : "0"); + task.setAcs_task_type(StrUtil.isEmpty(task.getAcs_task_type()) + ? PackageInfoIvtEnum.ACS_TASK_TYPE.code("agv任务") : (task.getAcs_task_type())); + task.setTask_status(StrUtil.isEmpty(task.getTask_status()) + ? TaskStatus.START_AND_POINT.getCode() : task.getTask_status()); + task.setWorkshop_code(StrUtil.isEmpty(task.getWorkshop_code())? "A1" : task.getWorkshop_code()); + if ("010301".equals(task.getTask_type())) { + task.setAcs_task_type("2"); + } else { + //todo 2和3是什么类型 + task.setAcs_task_type("3"); + } + //根据类型获取对应的任务优先级 + String priority = Optional.ofNullable(sysDictService.getOne(new LambdaQueryWrapper() + .eq(Dict::getCode, "task_priority") + .eq(Dict::getLabel, task.getTask_type()))) + .map(Dict::getValue) + .orElse("1"); + task.setPriority(priority); + TaskUtils.setCreateByDefault(task); + taskService.save(task); + //如果目标点位没有空位先创建不下发 + if (isSend) { + this.renotifyAcs(task); + } + } + + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateStatus(JSONObject taskObj, TaskStatus status) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_code, taskObj.getString("task_code")), false); + if (schBaseTask == null) { + throw new BadRequestException("CoolCutTask任务更新接口任务号为空!"); + } + // 执行中 + if (TaskStatus.EXECUTING.getCode().equals(status.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.EXECUTING.getCode()); + } + // 完成 + if (StrUtil.equals(status.getCode(), TaskStatus.FINISHED.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + String point_code1 = schBaseTask.getPoint_code1(); + String point_code2 = schBaseTask.getPoint_code2(); + String point_code3 = schBaseTask.getPoint_code3(); + String point_code4 = schBaseTask.getPoint_code4(); + if ("010301".equals(schBaseTask.getTask_type())) { + //更新主表状态 + StIvtCoolregionio stIvtCoolregionio = stIvtCoolRegionIoService.getOne(new LambdaQueryWrapper() + .eq(StIvtCoolregionio::getTask_id, schBaseTask.getTask_id())); + stIvtCoolregionio.setBill_status("50"); + stIvtCoolRegionIoService.update(stIvtCoolregionio, new QueryWrapper<>()); + // 更新冷却区母卷库存 + StIvtCoolpointivt stIvtCoolpointivt = stIvtCoolpointivtService.getOne(new QueryWrapper().eq("full_point_code", point_code1)); + if (stIvtCoolpointivt != null) { + + if (StringUtils.isBlank(stIvtCoolpointivt.getContainer_name())) { + throw new BadRequestException("CoolCutTask任务更新接口-子卷号不能为空!"); + } + stIvtCoolpointivt.setFull_point_status("01"); + stIvtCoolpointivt.setContainer_name(""); + stIvtCoolpointivt.setWorkorder_id(""); + stIvtCoolpointivt.setIvt_qty(BigDecimal.ZERO);//包含qty的字段一般都是BigDecimal类型 + stIvtCoolpointivt.setCool_ivt_status("01"); + stIvtCoolpointivt.setInstorage_time(""); // 是String类型,赋值空字符表示清除时间 + stIvtCoolpointivt.setUpdate_optid(SecurityUtils.getCurrentUserId()); + stIvtCoolpointivt.setUpdate_optname(SecurityUtils.getCurrentNickName()); + stIvtCoolpointivt.setUpdate_time(DateUtil.now()); + stIvtCoolpointivtService.updateById(stIvtCoolpointivt); + // 更新分切区母卷库存 + StIvtCutpointivt cutPointIvt = stIvtCutpointivtService.getOne(new QueryWrapper().eq("full_point_code", point_code2)); + if (cutPointIvt != null) { + cutPointIvt.setFull_point_status("02"); + cutPointIvt.setContainer_name(stIvtCoolpointivt.getContainer_name()); + cutPointIvt.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); //注意这是Long类型,记得转换 + cutPointIvt.setUpdate_optname(SecurityUtils.getCurrentNickName()); + cutPointIvt.setUpdate_time(DateUtil.now()); + stIvtCutpointivtService.updateById(cutPointIvt); + } + } + // 更新分切区空轴库存 + StIvtCutpointivt cutPointIvt2 = stIvtCutpointivtService.getOne(new QueryWrapper().eq("empty_point_code", point_code3)); + if (cutPointIvt2 != null) { + cutPointIvt2.setEmpty_point_status("01"); + cutPointIvt2.setEmpty_vehicle_code(""); + cutPointIvt2.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + cutPointIvt2.setUpdate_optname(SecurityUtils.getCurrentNickName()); + cutPointIvt2.setUpdate_time(DateUtil.now()); + stIvtCutpointivtService.updateById(cutPointIvt2); + } + // 更新冷却区空轴库存 + StIvtCoolpointivt coolPointIvt2 = stIvtCoolpointivtService.getOne(new QueryWrapper().eq("empty_point_code", point_code4)); + if (coolPointIvt2 != null) { + coolPointIvt2.setEmpty_point_status("02"); + coolPointIvt2.setEmpty_vehicle_code(schBaseTask.getVehicle_code2()); + coolPointIvt2.setCool_ivt_status("01"); + coolPointIvt2.setInstorage_time(""); // 是String类型,赋值空字符表示清除时间 + coolPointIvt2.setUpdate_optid(SecurityUtils.getCurrentUserId()); + coolPointIvt2.setUpdate_optname(SecurityUtils.getCurrentNickName()); + coolPointIvt2.setUpdate_time(DateUtil.now()); + stIvtCoolpointivtService.updateById(coolPointIvt2); + } + // 更新该母卷对应分切计划的状态 + PdmBiSlittingproductionplan pdmBiSlittingproductionplan = new PdmBiSlittingproductionplan(); + pdmBiSlittingproductionplan.setIs_parent_ok("1"); + pdmBiSlittingproductionplanService.update(pdmBiSlittingproductionplan, new QueryWrapper().eq("parent_container_name", stIvtCoolpointivt.getContainer_name())); + // todo MES相关,判断该接口是否需要回传 + //JSONObject mom_jo = new JSONObject(); + //mom_jo.put("contain_name", container_name); + //mom_jo.put("warehouse", "1"); + //JSONObject back_jo = WQLObject.getWQLObject("MD_PB_InterfaceBack").query("interface_name = 'cutPlanMomRollDeliveryComplete'").uniqueResult(0); + //if (ObjectUtil.isNotEmpty(back_jo) && "1".equals(back_jo.getString("is_back"))) { + // new LmsToMesServiceImpl().cutPlanMomRollDeliveryComplete(mom_jo); + //} + } + if ("010302".equals(schBaseTask.getTask_type())) { + // 更新主表状态 + StIvtCoolregionio stIvtCoolregionio = new StIvtCoolregionio(); + stIvtCoolregionio.setBill_status("50"); + stIvtCoolRegionIoService.update(stIvtCoolregionio, new QueryWrapper().eq("task_id", schBaseTask.getTask_id())); + // 更新冷却区母卷库存 + StIvtCoolpointivt coolPointIvt = stIvtCoolpointivtService.getOne(new QueryWrapper().eq("full_point_code", point_code1)); + if (coolPointIvt != null) { + coolPointIvt.setFull_point_status("01"); + coolPointIvt.setContainer_name(""); + coolPointIvt.setWorkorder_id(""); + coolPointIvt.setIvt_qty(BigDecimal.ZERO); + coolPointIvt.setCool_ivt_status("01"); + coolPointIvt.setInstorage_time(""); + coolPointIvt.setUpdate_optid(SecurityUtils.getCurrentUserId()); + coolPointIvt.setUpdate_optname(SecurityUtils.getCurrentNickName()); + coolPointIvt.setUpdate_time(DateUtil.now()); + stIvtCoolpointivtService.updateById(coolPointIvt); + } + // 更新分切区母卷库存 + StIvtCutpointivt cutPointIvt = stIvtCutpointivtService.getOne(new QueryWrapper().eq("full_point_code", point_code2)); + if (cutPointIvt != null) { + cutPointIvt.setFull_point_status("02"); + cutPointIvt.setContainer_name(coolPointIvt.getContainer_name()); + cutPointIvt.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + cutPointIvt.setUpdate_optname(SecurityUtils.getCurrentNickName()); + cutPointIvt.setUpdate_time(DateUtil.now()); + stIvtCutpointivtService.updateById(cutPointIvt); + } + // 更新该母卷对应分切计划的状态 + PdmBiSlittingproductionplan pdmBiSlittingproductionplan = new PdmBiSlittingproductionplan(); + pdmBiSlittingproductionplan.setIs_parent_ok("1"); + pdmBiSlittingproductionplanService.update(pdmBiSlittingproductionplan, new QueryWrapper().eq("parent_container_name", coolPointIvt.getContainer_name())); + // JSONObject mom_jo = new JSONObject(); + // mom_jo.put("contain_name", container_name); + // mom_jo.put("warehouse", "1"); + // //判断该接口是否需要回传 + // JSONObject back_jo = WQLObject.getWQLObject("MD_PB_InterfaceBack").query("interface_name = 'cutPlanMomRollDeliveryComplete'").uniqueResult(0); + // if (ObjectUtil.isNotEmpty(back_jo) && "1".equals(back_jo.getString("is_back"))) { + // new LmsToMesServiceImpl().cutPlanMomRollDeliveryComplete(mom_jo); + // } + } + if ("010303".equals(schBaseTask.getTask_type())) { + // 更新分切区空轴库存 + StIvtCutpointivt cutPointIvt2 = stIvtCutpointivtService.getOne(new QueryWrapper().eq("empty_point_code", point_code1)); + if (cutPointIvt2 != null) { + cutPointIvt2.setEmpty_point_status("01"); + cutPointIvt2.setEmpty_vehicle_code(""); + cutPointIvt2.setUpdate_optid(Long.valueOf(SecurityUtils.getCurrentUserId())); + cutPointIvt2.setUpdate_optname(SecurityUtils.getCurrentNickName()); + cutPointIvt2.setUpdate_time(DateUtil.now()); + stIvtCutpointivtService.updateById(cutPointIvt2); + } + // 更新冷却区空轴库存 + StIvtCoolpointivt coolPointIvt2 = stIvtCoolpointivtService.getOne(new QueryWrapper().eq("empty_point_code", point_code2)); + if (coolPointIvt2 != null) { + coolPointIvt2.setEmpty_point_status("02"); + coolPointIvt2.setEmpty_vehicle_code(schBaseTask.getVehicle_code()); + coolPointIvt2.setCool_ivt_status("01"); + coolPointIvt2.setInstorage_time(""); + coolPointIvt2.setUpdate_optid(SecurityUtils.getCurrentUserId()); + coolPointIvt2.setUpdate_optname(SecurityUtils.getCurrentNickName()); + coolPointIvt2.setUpdate_time(DateUtil.now()); + stIvtCoolpointivtService.updateById(coolPointIvt2); + } + } + } + // 取消 + if (status.getCode().equals(IOSEnum.IS_NOTANDYES.code("否"))) { + // if (Integer.parseInt(schBaseTask.getTask_status()) > Integer.parseInt(TaskStatus.ISSUE.getCode())) { + // throw new BadRequestException("CoolCutTask任务已执行不能取消"); + // } + // 更新任务表删除字段 + schBaseTask.setIs_delete(true); + //删除冷却区出入记录 + stIvtCoolRegionIoService.delete(schBaseTask.getTask_id()); + } + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + + @Override + public void forceFinish(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException("CoolCutTask任务强制完成接口任务号为空!"); + } + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + @Override + public void cancel(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException("CoolCutTask任务取消接口任务号为空!"); + } + schBaseTask.setTask_status(IOSEnum.ACS_RESULT.code("取消")); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create() throws BadRequestException { + + } + + //判断该点位是否存在未完成的任务 + public boolean isSingleTask(String point_code) { + return taskService.getOne(new LambdaQueryWrapper() + .and(wrapper -> wrapper + .eq(SchBaseTask::getPoint_code1, point_code) + .or() + .eq(SchBaseTask::getPoint_code2, point_code) + .or() + .eq(SchBaseTask::getPoint_code3, point_code) + .or() + .eq(SchBaseTask::getPoint_code4, point_code) + ) + .lt(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getIs_delete, "0") + ) != null; + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/InCoolIvtTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/InCoolIvtTask.java new file mode 100644 index 0000000..c90f524 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/InCoolIvtTask.java @@ -0,0 +1,296 @@ +package org.nl.wms.sch.task_manage.task.second_floor_area; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.exception.BadRequestException; +import org.nl.config.SpringContextHolder; +import org.nl.system.service.dict.ISysDictService; +import org.nl.system.service.dict.dao.Dict; +import org.nl.system.service.dict.dao.mapper.SysDictMapper; +import org.nl.system.service.param.impl.SysParamServiceImpl; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; +import org.nl.wms.pdm.bi.service.IpdmBiRawfoilworkorderService; +import org.nl.wms.pdm.bi.service.IpdmBiSlittingproductionplanService; +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; +import org.nl.wms.pdm.ivt.service.*; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.AcsTaskDto; +import org.nl.wms.sch.task_manage.enums.PackageInfoIvtEnum; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.util.TaskUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.HashMap; +import java.util.Map; + + +/** + * @author gbx + * @since 2024-04-11 + */ +@Slf4j +@Component(value = "InCoolIvtTask") +public class InCoolIvtTask extends AbstractTask { + + private final String THIS_CLASS = InCoolIvtTask.class.getName(); + + @Resource + private ISchBaseTaskService taskService; + + @Resource + private ISchBasePointService schBasePointService; + + + @Resource + private ISysDictService sysDictService; + + + @Resource + private IstIvtCoolpointivtService stIvtCoolpointivtService; + + + @Resource + private IstIvtCoolregionioService stIvtCoolRegionIoService; + + + @Resource + private IpdmBiRawfoilworkorderService pdmBiRawfoilworkorderService; + + + /** + * 特殊操作 + * + * @param task LMS任务 + * @param acsTaskDto ACS任务 + */ + @Override + public void deliveryBeforeProcessing(SchBaseTask task, AcsTaskDto acsTaskDto) { + acsTaskDto.setDtl_type(task.getDtl_type()); + acsTaskDto.setTruss_type(PackageInfoIvtEnum.TRUSS_TYPE.code("点对点任务")); + acsTaskDto.setAgv_system_type(PackageInfoIvtEnum.AGV_SYSTEM_TYPE.code("1楼叉车系统")); + acsTaskDto.setParams(JSON.parseObject(task.getRequest_param(), new TypeReference>() { + })); + } + + @Override + public void createCompletion(SchBaseTask task) { + Assert.notNull(task, "请求参数不能为空"); + String taskType = task.getTask_type(); + if (StrUtil.isBlank(taskType)) { + throw new BadRequestException("业务类型不能为空"); + } + String vehicleCode = task.getVehicle_code(); + if (StrUtil.isBlank(vehicleCode)) { + throw new BadRequestException("载具号不能为空"); + } + String pointCode1 = task.getPoint_code1(); + if (StrUtil.isBlank(pointCode1)) { + throw new BadRequestException("起点不能为空"); + } + String pointCode2 = task.getPoint_code2(); + if (StrUtil.isBlank(pointCode2)) { + throw new BadRequestException("下一点不能为空"); + } + String pointCode3 = task.getPoint_code3(); + String pointCode4 = task.getPoint_code4(); + if (isSingleTask(pointCode1)) { + throw new BadRequestException("点位:" + pointCode1 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode2)) { + throw new BadRequestException("点位:" + pointCode2 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode3)) { + throw new BadRequestException("点位:" + pointCode3 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode4)) { + throw new BadRequestException("点位:" + pointCode4 + "存在未完成的任务!"); + } + //是否立即下发 + boolean isSend = !StrUtil.isNotBlank(task.getIs_send()) || BooleanUtil.toBoolean(task.getIs_send()); + task.setTask_type("010204"); + task.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setHandle_class(THIS_CLASS); + task.setIs_send(isSend ? "1" : "0"); + task.setAcs_task_type(StrUtil.isEmpty(task.getAcs_task_type()) + ? PackageInfoIvtEnum.ACS_TASK_TYPE.code("agv任务") : (task.getAcs_task_type())); + //todo 3的任务类型加进枚举中 + task.setAcs_task_type("3"); + task.setTask_status(StrUtil.isEmpty(task.getTask_status()) + ? TaskStatus.START_AND_POINT.getCode() : task.getTask_status()); + task.setWorkshop_code(StrUtil.isEmpty(task.getWorkshop_code()) ? "A1" : task.getWorkshop_code()); + //根据类型获取对应的任务优先级 + Dict dict = sysDictService.getOne(new LambdaQueryWrapper().eq(Dict::getCode, "task_priority").eq(Dict::getLabel, task.getTask_type())); + if (dict == null) { + task.setPriority("1"); + } else { + task.setPriority(dict.getValue()); + } + TaskUtils.setCreateByDefault(task); + taskService.save(task); + //如果目标点位没有空位先创建不下发 + if (isSend) { + this.renotifyAcs(task); + } + } + + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateStatus(JSONObject taskObj, TaskStatus status) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_code, taskObj.getString("task_code")), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务更新接口任务号为空!"); + } + // 执行中 + if (TaskStatus.EXECUTING.getCode().equals(status.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.EXECUTING.getCode()); + } + // 完成 + if (StrUtil.equals(status.getCode(), TaskStatus.FINISHED.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + String pointCode1 = schBaseTask.getPoint_code1(); + String pointCode2 = schBaseTask.getPoint_code2(); + // 校验起点是否存在 + SchBasePoint startPointDto = schBasePointService.getOne(new QueryWrapper() + .eq("point_code", pointCode1)); + + if (ObjectUtil.isEmpty(startPointDto)) { + throw new BadRequestException("起点未找到可用点位:" + pointCode1); + } + // 校验终点是否存在 + StIvtCoolpointivt jsonIvt = stIvtCoolpointivtService.getOne(new QueryWrapper() + .eq("full_point_code", pointCode2) + ); + if (ObjectUtil.isEmpty(jsonIvt)) { + throw new BadRequestException("终点未找到可用点位:" + pointCode2); + } + // 更新暂存位状态为空位 + SchBasePoint jsonPoint = schBasePointService.getOne(new QueryWrapper().eq("point_code", pointCode1)); + jsonPoint.setPoint_status("1"); + //todo 是否需要清理物料编号 + //jsonPoint.setMaterial_code(""); + schBasePointService.updateById(jsonPoint); + // 更新冷却库存状态 + PdmBiRawfoilworkorder rawJo = pdmBiRawfoilworkorderService.getOne(new QueryWrapper() + .eq("container_name", schBaseTask.getMaterial_code()) + ); + if (rawJo != null) { + jsonIvt.setFull_point_status("02"); + jsonIvt.setCool_ivt_status("04"); + jsonIvt.setInstorage_time(DateUtil.now()); + jsonIvt.setContainer_name(rawJo.getContainer_name()); + jsonIvt.setWorkorder_id(rawJo.getWorkorder_id()); + //todo pdm_bi_rawfoilworkorder 无qty字段 + //jsonIvt.setIvt_qty(rawJo.getQty()); + stIvtCoolpointivtService.updateById(jsonIvt); + } + // 将入冷却信息发送给mes + JSONObject param = new JSONObject(); + String userName = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("MES_USERNAME").getValue(); + String passWord = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("MES_PASSWORD").getValue(); + param.put("iContainerName", schBaseTask.getMaterial_code()); + param.put("iArrivalTime", DateUtil.now()); + param.put("iWarehouse", 2); + param.put("UserName", userName); + param.put("PassWord", passWord); + //todo MES回传 判断该接口是否需要回传 + //MdPbInterfaceBack backJo = mdPbInterfaceBackService.getOne(new QueryWrapper().eq("interface_name", "momRollSemiFGInboundComplete")); + // if (backJo != null && "1".equals(backJo.getIsBack())) { + // String productArea = backJo.getProductArea(); + // if (StrUtil.isNotEmpty(productArea) && productArea.contains(schBaseTask.getString("product_area"))) { + // new LmsToMesServiceImpl().momRollSemiFGInboundComplete(param); + // } + // } + // 将该母卷的入冷却标识改为0 + PdmBiRawfoilworkorder pdmBiRawfoilworkorder = new PdmBiRawfoilworkorder(); + pdmBiRawfoilworkorder.setIs_instor("0"); + pdmBiRawfoilworkorderService.update(pdmBiRawfoilworkorder, new UpdateWrapper().eq("container_name", schBaseTask.getMaterial_code())); + log.info("母卷:" + schBaseTask.getMaterial_code() + "对应的入冷却任务完成,请求入半成品库标识改为0"); + } + // 取消 + if (status.getCode().equals(IOSEnum.IS_NOTANDYES.code("否"))) { + if (Integer.parseInt(schBaseTask.getTask_status()) > Integer.parseInt(TaskStatus.ISSUE.getCode())) { + throw new BadRequestException("CallEmpReelTask任务已执行不能取消"); + } + // 更新任务表删除字段 + schBaseTask.setIs_delete(true); + //删除冷却区出入记录 + stIvtCoolRegionIoService.delete(schBaseTask.getTask_id()); + } + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + + @Override + public void forceFinish(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务强制完成接口任务号为空!"); + } + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + @Override + public void cancel(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务取消接口任务号为空!"); + } + schBaseTask.setTask_status(IOSEnum.ACS_RESULT.code("取消")); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + public boolean isSingleTask(String point_code) { + return taskService.getOne(new LambdaQueryWrapper() + .and(wrapper -> wrapper + .eq(SchBaseTask::getPoint_code1, point_code) + .or() + .eq(SchBaseTask::getPoint_code2, point_code) + .or() + .eq(SchBaseTask::getPoint_code3, point_code) + .or() + .eq(SchBaseTask::getPoint_code4, point_code) + ) + .lt(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getIs_delete, "0") + ) != null; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create() throws BadRequestException { + + } + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/InHotTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/InHotTask.java new file mode 100644 index 0000000..6d8c45f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/InHotTask.java @@ -0,0 +1,386 @@ +package org.nl.wms.sch.task_manage.task.second_floor_area; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.SpringContextHolder; +import org.nl.system.service.dict.ISysDictService; +import org.nl.system.service.dict.dao.Dict; +import org.nl.system.service.dict.dao.mapper.SysDictMapper; +import org.nl.system.service.param.impl.SysParamServiceImpl; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; +import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; +import org.nl.wms.pdm.bi.service.IpdmBiRawfoilworkorderService; +import org.nl.wms.pdm.bi.service.IpdmBiSlittingproductionplanService; +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; +import org.nl.wms.pdm.ivt.dao.StIvtCoolregionio; +import org.nl.wms.pdm.ivt.dao.StIvtHotpointivt; +import org.nl.wms.pdm.ivt.dao.StIvtHotregioniomst; +import org.nl.wms.pdm.ivt.service.*; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.AcsTaskDto; +import org.nl.wms.sch.task_manage.enums.PackageInfoIvtEnum; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.util.TaskUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.HashMap; +import java.util.Map; + + +/** + * @author gbx + * @since 2024-04-11 + */ +@Slf4j +@Component(value = "InHotTask") +public class InHotTask extends AbstractTask { + + private final String THIS_CLASS = InHotTask.class.getName(); + + @Resource + private ISchBaseTaskService taskService; + + + @Resource + private ISchBasePointService schBasePointService; + + + @Resource + private ISysDictService sysDictService; + + + @Resource + private IstIvtHotpointivtService stIvtHotpointivtService; + + @Resource + private IstIvtHotregioniomstService stIvtHotregioniomstService; + + + @Resource + private IstIvtCoolpointivtService stIvtCoolpointivtService; + + + @Resource + private IstIvtCoolregionioService stIvtCoolRegionIoService; + + + @Resource + private IpdmBiRawfoilworkorderService pdmBiRawfoilworkorderService; + + + /** + * 特殊操作 + * + * @param task LMS任务 + * @param acsTaskDto ACS任务 + */ + @Override + public void deliveryBeforeProcessing(SchBaseTask task, AcsTaskDto acsTaskDto) { + acsTaskDto.setDtl_type(task.getDtl_type()); + acsTaskDto.setTruss_type(PackageInfoIvtEnum.TRUSS_TYPE.code("点对点任务")); + acsTaskDto.setAgv_system_type(PackageInfoIvtEnum.AGV_SYSTEM_TYPE.code("1楼叉车系统")); + acsTaskDto.setParams(JSON.parseObject(task.getRequest_param(), new TypeReference>() { + })); + } + + @Override + public void createCompletion(SchBaseTask task) { + Assert.notNull(task, "请求参数不能为空"); + String taskType = task.getTask_type(); + if (StrUtil.isBlank(taskType)) { + throw new BadRequestException("业务类型不能为空"); + } + String vehicleCode = task.getVehicle_code(); + if (StrUtil.isBlank(vehicleCode)) { + throw new BadRequestException("载具号不能为空"); + } + String pointCode1 = task.getPoint_code1(); + if (StrUtil.isBlank(pointCode1)) { + throw new BadRequestException("起点不能为空"); + } + String pointCode2 = task.getPoint_code2(); + if (StrUtil.isBlank(pointCode2)) { + throw new BadRequestException("下一点不能为空"); + } + task.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setHandle_class(THIS_CLASS); + task.setTask_status(StrUtil.isEmpty(task.getTask_status()) + ? TaskStatus.START_AND_POINT.getCode() : task.getTask_status()); + task.setWorkshop_code(StrUtil.isEmpty(task.getWorkshop_code()) ? "A1" : task.getWorkshop_code()); + + //根据类型获取对应的任务优先级 + Dict dict = sysDictService.getOne(new LambdaQueryWrapper().eq(Dict::getCode, "task_priority").eq(Dict::getLabel, task.getTask_type())); + if (dict == null) { + task.setPriority("1"); + } else { + task.setPriority(dict.getValue()); + } + //是否立即下发 + boolean isSend = !StrUtil.isNotBlank(task.getIs_send()) || BooleanUtil.toBoolean(task.getIs_send()); + task.setIs_send(isSend ? "1" : "0"); + TaskUtils.setCreateByDefault(task); + if (StrUtil.equals(task.getTask_type(), "1")) { + if (isSingleTask(pointCode1)) { + throw new BadRequestException("点位:" + pointCode1 + "存在未完成的任务!"); + } + if (isSingleTask(task.getPoint_code3())) { + throw new BadRequestException("点位:" + task.getPoint_code3() + "存在未完成的任务!"); + } + task.setTask_type("010201"); + if (StrUtil.isNotEmpty(task.getPoint_code3())) { + //todo json.put("acs_task_type", "8"); 6和8是什么任务 + task.setAcs_task_type(PackageInfoIvtEnum.ACS_TASK_TYPE.code("agv任务")); + } else { + task.setAcs_task_type(PackageInfoIvtEnum.ACS_TASK_TYPE.code("桁架任务")); + } + // 更新对应点位库存为已裹膜 + StIvtCoolpointivt coolIvtToUpdate = stIvtCoolpointivtService.getOne(new LambdaQueryWrapper() + .eq(StIvtCoolpointivt::getFull_point_code, task.getPoint_code1()), false); + if (ObjectUtil.isEmpty(coolIvtToUpdate)) { + throw new BadRequestException("未查询到对应的冷却区点位!"); + } + coolIvtToUpdate.setCool_ivt_status("02"); + stIvtCoolpointivtService.updateById(coolIvtToUpdate); + } + if (StrUtil.equals(task.getTask_type(), "2")) { + if (isSingleTask(pointCode1)) { + throw new BadRequestException("点位:" + pointCode1 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode2)) { + throw new BadRequestException("点位:" + pointCode2 + "存在未完成的任务!"); + } + task.setTask_type("010203"); + task.setAcs_task_type(PackageInfoIvtEnum.ACS_TASK_TYPE.code("桁架任务")); + + } + taskService.save(task); + //如果目标点位没有空位先创建不下发 + if (isSend) { + this.renotifyAcs(task); + } + } + + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateStatus(JSONObject taskObj, TaskStatus status) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_code, taskObj.getString("task_code")), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务更新接口任务号为空!"); + } + String task_id = schBaseTask.getTask_id(); + // 执行中 + if (TaskStatus.EXECUTING.getCode().equals(status.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.EXECUTING.getCode()); + } + // 完成 + if (StrUtil.equals(status.getCode(), TaskStatus.FINISHED.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + + + String currentUserId = SecurityUtils.getCurrentUserId(); + String currentUsername = SecurityUtils.getCurrentUsername(); + + +// 更新主表 + StIvtHotregioniomst jsonHotMst = stIvtHotregioniomstService.getOne(new QueryWrapper() + .eq("task_id", task_id)); + + String hotPointCode = ""; +// 判断此任务是否有三个点位 + if (ObjectUtil.isEmpty(schBaseTask.getPoint_code3())) { + // 暂存区入烘箱任务 + // 更新烘箱区库存状态 + StIvtHotpointivt jsonHotIvt = stIvtHotpointivtService.getOne(new QueryWrapper() + .eq("point_code", schBaseTask.getPoint_code2())); + if (jsonHotIvt != null) { + jsonHotIvt.setPoint_status("02"); + jsonHotIvt.setContainer_name(jsonHotMst.getContainer_name()); + jsonHotIvt.setWorkorder_id(jsonHotMst.getWorkorder_id()); + jsonHotIvt.setIvt_qty(jsonHotMst.getQty()); + jsonHotIvt.setInstorage_time(DateUtil.now()); + jsonHotIvt.setUpdate_optid(currentUserId); + jsonHotIvt.setUpdate_optname(currentUsername); + jsonHotIvt.setUpdate_time(DateUtil.now()); + stIvtHotpointivtService.updateById(jsonHotIvt); + } + + + // 更新暂存区点位状态为空位 + SchBasePoint jsonPoint = schBasePointService.getOne(new QueryWrapper().eq("point_code", schBaseTask.getPoint_code1())); + if (jsonPoint != null) { + jsonPoint.setPoint_status("1"); + //todo setMaterialCode是否需要MaterialCode + //jsonPoint.setMaterialCode(""); + schBasePointService.updateById(jsonPoint); + } + + hotPointCode = jsonHotIvt != null ? jsonHotIvt.getExt_code() : ""; + } else { + //冷却区入烘箱任务 + //更新冷却出入主表状态 + StIvtCoolregionio jsonCool = stIvtCoolRegionIoService.getOne(new QueryWrapper() + .eq("task_id", task_id) + ); + if (jsonCool != null) { + jsonCool.setBill_status("50"); + stIvtCoolRegionIoService.updateById(jsonCool); + } + + // 更新冷却区库存状态 + StIvtCoolpointivt jsonCoolIvt = stIvtCoolpointivtService.getOne(new QueryWrapper() + .eq("full_point_code", schBaseTask.getPoint_code1()) + ); + if (jsonCoolIvt != null) { + jsonCoolIvt.setFull_point_status("01"); + jsonCoolIvt.setCool_ivt_status("01"); + jsonCoolIvt.setContainer_name(""); + jsonCoolIvt.setWorkorder_id(""); + jsonCoolIvt.setIvt_qty(BigDecimal.ZERO); + jsonCoolIvt.setInstorage_time(""); + jsonCoolIvt.setUpdate_optid(currentUserId); + jsonCoolIvt.setUpdate_optname(currentUsername); + jsonCoolIvt.setUpdate_time(DateUtil.now()); + stIvtCoolpointivtService.updateById(jsonCoolIvt); + } + + // 更新烘箱区库存状态 + StIvtHotpointivt jsonHotIvt = stIvtHotpointivtService.getOne(new QueryWrapper() + .eq("point_code", schBaseTask.getPoint_code3()) + ); + if (jsonHotIvt != null) { + jsonHotIvt.setPoint_status("02"); + jsonHotIvt.setContainer_name(jsonCoolIvt != null ? jsonCoolIvt.getContainer_name() : ""); + jsonHotIvt.setWorkorder_id(jsonCoolIvt != null ? jsonCoolIvt.getWorkorder_id() : ""); + jsonHotIvt.setIvt_qty(jsonCoolIvt != null ? jsonCoolIvt.getIvt_qty() : BigDecimal.ZERO); + jsonHotIvt.setInstorage_time(DateUtil.now()); + jsonHotIvt.setUpdate_optid(currentUserId); + jsonHotIvt.setUpdate_optname(currentUsername); + jsonHotIvt.setUpdate_time(DateUtil.now()); + + stIvtHotpointivtService.updateById(jsonHotIvt); + + log.info("入烘箱wql执行update语句!"); + log.info("入烘箱mybatis执行update语句!"); + } + + hotPointCode = jsonHotIvt != null ? jsonHotIvt.getExt_code() : ""; + } + +// 将入烘箱信息发送给mes + JSONObject param = new JSONObject(); + String userName = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("MES_USERNAME").getValue(); + String passWord = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("MES_PASSWORD").getValue(); + param.put("iContainerName", jsonHotMst.getContainer_name()); + param.put("iResourceName", hotPointCode); + param.put("iMoveInDate", DateUtil.now()); + param.put("iPlanBakingTemperature", jsonHotMst.getTemperature()); + param.put("iPlanBakingTimer", jsonHotMst.getOven_time()); + param.put("UserName", userName); + param.put("PassWord", passWord); + +// todo 判断该接口是否需要回传 +// MdPbInterfaceBack backJo = mdPbInterfaceBackService.getOne(new QueryWrapper().eq("interface_name", "momRollBakeInBound")); +// if (backJo != null && "1".equals(backJo.getIsBack())) { +// String productArea = backJo.getProductArea(); +// if (StrUtil.isNotEmpty(productArea) && productArea.contains(schBaseTask.getString("product_area"))) { +// new LmsToMesServiceImpl().momRollBakeInBound(param); +// } +// } + +// 将该母卷的入烘箱标识改为0 + PdmBiRawfoilworkorder pdmBiRawfoilworkorder = new PdmBiRawfoilworkorder(); + pdmBiRawfoilworkorder.setIs_baking("0"); + pdmBiRawfoilworkorderService.update(pdmBiRawfoilworkorder, new UpdateWrapper().eq("container_name", jsonHotMst.getContainer_name())); + log.info("母卷:" + jsonHotMst.getContainer_name() + "对应的入烘箱任务完成,请求烘烤标识改为0"); + + + } + // 取消 + if (status.getCode().equals(IOSEnum.IS_NOTANDYES.code("否"))) { + if (Integer.parseInt(schBaseTask.getTask_status()) > Integer.parseInt(TaskStatus.ISSUE.getCode())) { + throw new BadRequestException("CallEmpReelTask任务已执行不能取消"); + } + // 更新任务表删除字段 + schBaseTask.setIs_delete(true); + stIvtCoolRegionIoService.delete(task_id); + stIvtHotregioniomstService.delete(task_id); + } + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + + @Override + public void forceFinish(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务强制完成接口任务号为空!"); + } + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + @Override + public void cancel(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务取消接口任务号为空!"); + } + schBaseTask.setTask_status(IOSEnum.ACS_RESULT.code("取消")); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + public boolean isSingleTask(String point_code) { + return taskService.getOne(new LambdaQueryWrapper() + .and(wrapper -> wrapper + .eq(SchBaseTask::getPoint_code1, point_code) + .or() + .eq(SchBaseTask::getPoint_code2, point_code) + .or() + .eq(SchBaseTask::getPoint_code3, point_code) + .or() + .eq(SchBaseTask::getPoint_code4, point_code) + ) + .lt(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getIs_delete, "0") + ) != null; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create() throws BadRequestException { + + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/OutHotTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/OutHotTask.java new file mode 100644 index 0000000..fcf3aa1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/second_floor_area/OutHotTask.java @@ -0,0 +1,277 @@ +package org.nl.wms.sch.task_manage.task.second_floor_area; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.SpringContextHolder; +import org.nl.system.service.dict.ISysDictService; +import org.nl.system.service.dict.dao.Dict; +import org.nl.system.service.dict.dao.mapper.SysDictMapper; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; +import org.nl.wms.pdm.bi.service.IpdmBiRawfoilworkorderService; +import org.nl.wms.pdm.bi.service.IpdmBiSlittingproductionplanService; +import org.nl.wms.pdm.ivt.dao.StIvtCoolpointivt; +import org.nl.wms.pdm.ivt.dao.StIvtHotpointivt; +import org.nl.wms.pdm.ivt.dao.StIvtHotregioniomst; +import org.nl.wms.pdm.ivt.service.*; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.AcsTaskDto; +import org.nl.wms.sch.task_manage.enums.PackageInfoIvtEnum; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.util.TaskUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.Map; + + +/** + * @author gbx + * @since 2024-04-11 + */ +@Slf4j +@Component(value = "OutHotTask") +public class OutHotTask extends AbstractTask { + + private final String THIS_CLASS = OutHotTask.class.getName(); + + @Resource + private ISchBaseTaskService taskService; + + + @Resource + private ISchBasePointService schBasePointService; + + + @Resource + private ISysDictService sysDictService; + + + @Resource + private IstIvtHotpointivtService stIvtHotpointivtService; + + + @Resource + private IstIvtHotregioniomstService stIvtHotregioniomstService; + + + /** + * 特殊操作 + * + * @param task LMS任务 + * @param acsTaskDto ACS任务 + */ + @Override + public void deliveryBeforeProcessing(SchBaseTask task, AcsTaskDto acsTaskDto) { + acsTaskDto.setDtl_type(task.getDtl_type()); + acsTaskDto.setTruss_type(PackageInfoIvtEnum.TRUSS_TYPE.code("点对点任务")); + acsTaskDto.setAgv_system_type(PackageInfoIvtEnum.AGV_SYSTEM_TYPE.code("1楼叉车系统")); + acsTaskDto.setParams(JSON.parseObject(task.getRequest_param(), new TypeReference>() { + })); + } + + @Override + public void createCompletion(SchBaseTask task) { + Assert.notNull(task, "请求参数不能为空"); + String taskType = task.getTask_type(); + if (StrUtil.isBlank(taskType)) { + throw new BadRequestException("业务类型不能为空"); + } + String vehicleCode = task.getVehicle_code(); + if (StrUtil.isBlank(vehicleCode)) { + throw new BadRequestException("载具号不能为空"); + } + String pointCode1 = task.getPoint_code1(); + if (StrUtil.isBlank(pointCode1)) { + throw new BadRequestException("起点不能为空"); + } + String pointCode2 = task.getPoint_code2(); + if (StrUtil.isBlank(pointCode2)) { + throw new BadRequestException("下一点不能为空"); + } + String pointCode3 = task.getPoint_code3(); + String pointCode4 = task.getPoint_code4(); + if (isSingleTask(pointCode1)) { + throw new BadRequestException("点位:" + pointCode1 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode2)) { + throw new BadRequestException("点位:" + pointCode2 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode3)) { + throw new BadRequestException("点位:" + pointCode3 + "存在未完成的任务!"); + } + if (isSingleTask(pointCode4)) { + throw new BadRequestException("点位:" + pointCode4 + "存在未完成的任务!"); + } + //是否立即下发 + boolean isSend = !StrUtil.isNotBlank(task.getIs_send()) || BooleanUtil.toBoolean(task.getIs_send()); + task.setTask_type("010202"); + task.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr()); + task.setHandle_class(THIS_CLASS); + task.setIs_send(isSend ? "1" : "0"); + task.setAcs_task_type(StrUtil.isEmpty(task.getAcs_task_type()) + ? PackageInfoIvtEnum.ACS_TASK_TYPE.code("agv任务") : (task.getAcs_task_type())); + //todo 改为任务枚举 + task.setAcs_task_type("6"); + task.setTask_status(StrUtil.isEmpty(task.getTask_status()) + ? TaskStatus.START_AND_POINT.getCode() : task.getTask_status()); + task.setWorkshop_code(StrUtil.isEmpty(task.getWorkshop_code())? "A1" : task.getWorkshop_code()); + //根据类型获取对应的任务优先级 + Dict dict = sysDictService.getOne(new LambdaQueryWrapper().eq(Dict::getCode, "task_priority").eq(Dict::getLabel, task.getTask_type())); + if (dict == null) { + task.setPriority("1"); + } else { + task.setPriority(dict.getValue()); + } + TaskUtils.setCreateByDefault(task); + taskService.save(task); + //如果目标点位没有空位先创建不下发 + if (isSend) { + this.renotifyAcs(task); + } + } + + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateStatus(JSONObject taskObj, TaskStatus status) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_code, taskObj.getString("task_code")), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务更新接口任务号为空!"); + } + String task_id = schBaseTask.getTask_id(); + // 执行中 + if (TaskStatus.EXECUTING.getCode().equals(status.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.EXECUTING.getCode()); + } + // 完成 + if (StrUtil.equals(status.getCode(), TaskStatus.FINISHED.getCode())) { + // 更新任务状态为执行中 + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + // 查询烘箱区点位库存信息 + StIvtHotpointivt jsonHotIvt = stIvtHotpointivtService.getOne(new LambdaQueryWrapper() + .eq(StIvtHotpointivt::getPoint_code, schBaseTask.getPoint_code1()), false); + // 查询烘箱区出入主表信息 + StIvtHotregioniomst jsonHotMst = stIvtHotregioniomstService.getOne(new QueryWrapper() + .eq("task_id", task_id)); + // 更新暂存区点位状态 + SchBasePoint jsonPoint2 = schBasePointService.getOne(new LambdaQueryWrapper() + .eq(SchBasePoint::getPoint_code, schBaseTask.getPoint_code2()), false); + jsonPoint2.setPoint_status("2"); + //todo setMaterialCode是否需要MaterialCode + //jsonPoint2.setMaterial_code(jsonHotIvt.getContainer_name()); + schBasePointService.updateById(jsonPoint2); + // 更新烘箱区库存状态 + jsonHotIvt.setPoint_status("01"); + jsonHotIvt.setContainer_name(""); + jsonHotIvt.setWorkorder_id(""); + jsonHotIvt.setIvt_qty(BigDecimal.ZERO); + jsonHotIvt.setInstorage_time(""); + jsonHotIvt.setUpdate_optid(SecurityUtils.getCurrentUserId()); + jsonHotIvt.setUpdate_optname(SecurityUtils.getCurrentUsername()); + jsonHotIvt.setUpdate_time(DateUtil.now()); + log.info("出烘箱wql执行update语句!"); + stIvtHotpointivtService.updateById(jsonHotIvt); + // 查询更新后的烘箱区点位库存信息 + StIvtHotpointivt updateIvt = stIvtHotpointivtService.getOne(new LambdaQueryWrapper() + .eq(StIvtHotpointivt::getPoint_code, schBaseTask.getPoint_code1()), false); + log.info("更新完后烘箱库存为:-----------------" + updateIvt.toString()); + // 将出烘箱信息发送给mes + JSONObject param = new JSONObject(); + param.put("iContainerName", jsonHotMst.getContainer_name()); + param.put("iResourceName", jsonHotIvt.getExt_code()); + param.put("iMoveOutDate", DateUtil.now()); + param.put("iabxActualBakingTemperature", jsonHotMst.getTemperature()); + param.put("iabxActualBakingTimer", jsonHotMst.getOven_time()); + //todo MES回传 判断该接口是否需要回传 + //MdPbInterfaceBack backJo = mdPbInterfaceBackService.getOne(new QueryWrapper().eq("interface_name", "momRollBakeOutBound")); + // if (backJo != null && "1".equals(backJo.getIsBack())) { + // String productArea = backJo.getProductArea(); + // if (StrUtil.isNotEmpty(productArea) && productArea.contains(schBaseTask.getString("product_area"))) { + // new LmsToMesServiceImpl().momRollBakeOutBound(param); + // } + // } + } + // 取消 + if (status.getCode().equals(IOSEnum.IS_NOTANDYES.code("否"))) { + if (Integer.parseInt(schBaseTask.getTask_status()) > Integer.parseInt(TaskStatus.ISSUE.getCode())) { + throw new BadRequestException("CallEmpReelTask任务已执行不能取消"); + } + // 更新任务表删除字段 + schBaseTask.setIs_delete(true); + stIvtHotregioniomstService.delete(task_id); + } + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + + @Override + public void forceFinish(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务强制完成接口任务号为空!"); + } + schBaseTask.setTask_status(TaskStatus.FINISHED.getCode()); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + @Override + public void cancel(String taskId) { + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper() + .eq(SchBaseTask::getTask_id, taskId), false); + if (schBaseTask == null) { + throw new BadRequestException("CallEmpReelTask任务取消接口任务号为空!"); + } + schBaseTask.setTask_status(IOSEnum.ACS_RESULT.code("取消")); + TaskUtils.setUpdateByDefault(schBaseTask); + taskService.updateById(schBaseTask); + } + + public boolean isSingleTask(String point_code) { + return taskService.getOne(new LambdaQueryWrapper() + .and(wrapper -> wrapper + .eq(SchBaseTask::getPoint_code1, point_code) + .or() + .eq(SchBaseTask::getPoint_code2, point_code) + .or() + .eq(SchBaseTask::getPoint_code3, point_code) + .or() + .eq(SchBaseTask::getPoint_code4, point_code) + ) + .lt(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getIs_delete, "0") + ) != null; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create() throws BadRequestException { + + } + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtBsrealstorattrController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtBsrealstorattrController.java new file mode 100644 index 0000000..f5dd2b9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtBsrealstorattrController.java @@ -0,0 +1,76 @@ +package org.nl.wms.storage_manage.database.controller; + + +import com.alibaba.fastjson.JSONObject; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; +import org.nl.wms.storage_manage.database.dto.StorQuery; +import org.nl.wms.storage_manage.database.service.IStIvtBsrealstorattrService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; + +/** + *

+ * 实物库属性表 前端控制器 + *

+ * + * @author author + * @since 2024-01-16 + */ +@RestController +@RequestMapping("/api/stIvtBsrealstorattr") +public class StIvtBsrealstorattrController { + + /** + * 仓库服务 + */ + @Autowired + private IStIvtBsrealstorattrService iStIvtBsrealstorattrService; + + @GetMapping + @Log("查询仓库") + public ResponseEntity query(StorQuery query, PageQuery page){ + return new ResponseEntity<>(iStIvtBsrealstorattrService.pageQuery(query,page), HttpStatus.OK); + } + + @GetMapping("/getStor") + @Log("查询仓库下拉框") + public ResponseEntity queryStor(@RequestParam Map whereJson) { + return new ResponseEntity<>(iStIvtBsrealstorattrService.getStor(whereJson), HttpStatus.OK); + } + + @PostMapping + @Log("新增仓库") + public ResponseEntity create(@Validated @RequestBody StIvtBsrealstorattr whereJson) { + iStIvtBsrealstorattrService.create(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PutMapping + @Log("修改仓库") + public ResponseEntity update(@Validated @RequestBody StIvtBsrealstorattr dao) { + iStIvtBsrealstorattrService.update(dao); + return new ResponseEntity<>(HttpStatus.OK); + } + + @DeleteMapping + @Log("删除仓库") + public ResponseEntity delete(@RequestBody Long[] ids) { + iStIvtBsrealstorattrService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PutMapping("/changeActive") + @Log("修改仓库管理状态") + public ResponseEntity changeActive(@Validated @RequestBody StIvtBsrealstorattr dao) { + iStIvtBsrealstorattrService.changeActive(dao); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtSectattrController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtSectattrController.java new file mode 100644 index 0000000..ee4fefb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtSectattrController.java @@ -0,0 +1,68 @@ +package org.nl.wms.storage_manage.database.controller; + + +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; +import org.nl.wms.storage_manage.database.dao.StIvtSectattr; +import org.nl.wms.storage_manage.database.dto.SectQuery; +import org.nl.wms.storage_manage.database.service.IStIvtSectattrService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +/** + *

+ * 库区属性表 前端控制器 + *

+ * + * @author author + * @since 2024-01-16 + */ +@RestController +@RequestMapping("/api/stIvtSectattr") +public class StIvtSectattrController { + + /** + * 库区服务 + */ + @Autowired + private IStIvtSectattrService iStIvtSectattrService; + + @GetMapping + @Log("查询库区") + public ResponseEntity query(SectQuery query, PageQuery page){ + return new ResponseEntity<>(iStIvtSectattrService.pageQuery(query,page), HttpStatus.OK); + } + + @PostMapping + @Log("新增库区") + public ResponseEntity create(@Validated @RequestBody StIvtSectattr dao) { + iStIvtSectattrService.create(dao); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PutMapping + @Log("修改库区") + public ResponseEntity update(@Validated @RequestBody StIvtSectattr dao) { + iStIvtSectattrService.update(dao); + return new ResponseEntity<>(HttpStatus.OK); + } + + @DeleteMapping + @Log("删除库区") + public ResponseEntity delete(@RequestBody Long[] ids) { + iStIvtSectattrService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PutMapping("/changeActive") + @Log("修改库区管理状态") + public ResponseEntity changeActive(@Validated @RequestBody StIvtSectattr dao) { + iStIvtSectattrService.changeActive(dao); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtStructattrController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtStructattrController.java new file mode 100644 index 0000000..339ad29 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtStructattrController.java @@ -0,0 +1,19 @@ +package org.nl.wms.storage_manage.database.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 仓位属性表 前端控制器 + *

+ * + * @author author + * @since 2024-01-16 + */ +@RestController +@RequestMapping("/api/stIvtStructattr") +public class StIvtStructattrController { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtUserstorController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtUserstorController.java new file mode 100644 index 0000000..0819ac6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/controller/StIvtUserstorController.java @@ -0,0 +1,40 @@ +package org.nl.wms.storage_manage.database.controller; + + +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.storage_manage.database.dto.UserStorQuery; +import org.nl.wms.storage_manage.database.service.IStIvtUserstorService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 仓库与人员关联表 前端控制器 + *

+ * + * @author author + * @since 2024-01-16 + */ +@RestController +@RequestMapping("/api/stIvtUserstor") +public class StIvtUserstorController { + + /** + * 仓库与人员关联服务 + */ + @Autowired + private IStIvtUserstorService iStIvtUserstorService; + + @GetMapping + @Log("查询用户信息") + public ResponseEntity query(@RequestParam UserStorQuery query, PageQuery page) { + return new ResponseEntity<>(iStIvtUserstorService.pageQuery(query, page), HttpStatus.OK); + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtBsrealstorattr.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtBsrealstorattr.java new file mode 100644 index 0000000..f2d2dd2 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtBsrealstorattr.java @@ -0,0 +1,219 @@ +package org.nl.wms.storage_manage.database.dao; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.apache.ibatis.annotations.Result; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + *

+ * 实物库属性表 + *

+ * + * @author author + * @since 2024-01-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("st_ivt_bsrealstorattr") +public class StIvtBsrealstorattr implements Serializable { + + private static final Long serialVersionUID = 1L; + + /** + * 仓库标识 + */ + @TableId + private String stor_id; + + /** + * 仓库编码 + */ + private String stor_code; + + /** + * 仓库名称 + */ + private String stor_name; + + /** + * 仓库简称 + */ + private String simple_name; + + /** + * 仓库容量 + */ + private BigDecimal stor_capacity; + + /** + * 总面积 + */ + private BigDecimal total_area; + + /** + * 仓库性质 + */ + private String stor_type_scode; + + /** + * 是否虚拟库 + */ + private String is_virtualstore; + + /** + * 是否半成品库 + */ + private String is_semi_finished; + + /** + * 是否原料库 + */ + private String is_materialstore; + + /** + * 是否成品库 + */ + private String is_productstore; + + /** + * 是否备件库 + */ + private String is_attachment; + + /** + * 是否允许红冲 + */ + private String is_reversed; + + /** + * 是否移出业务自动确认 + */ + private String is_mvout_auto_cfm; + + /** + * 是否移入业务自动确认 + */ + private String is_mvin_auto_cfm; + + /** + * 地区 + */ + private String area; + + /** + * 仓库地址 + */ + private String storea_ddress; + + /** + * 负责人 + */ + private String principal; + + /** + * 办公电话 + */ + private String office_phone; + + /** + * 负责人手机 + */ + private String mobile_no; + + /** + * 备注 + */ + private String remark; + + /** + * 显示顺序 + */ + private BigDecimal order_index; + + /** + * 状态 + */ + private String whstate_scode; + + /** + * 是否启用 + */ + private String is_used; + + /** + * 物料基本分类 + */ + private String base_class_id; + + /** + * 创建人 + */ + private String create_id; + + /** + * 创建人姓名 + */ + private String create_name; + + /** + * 创建时间 + */ + private String create_time; + + /** + * 修改人 + */ + private String update_optid; + + /** + * 修改人姓名 + */ + private String update_optname; + + /** + * 修改时间 + */ + private String update_time; + + /** + * 拥有者ID + */ + private String sysownerid; + + /** + * 部门ID + */ + private String sysdeptid; + + /** + * 公司ID + */ + private String syscompanyid; + + /** + * 是否删除 + */ + private String is_delete; + + /** + * 外部标识 + */ + private String ext_id; + + /** + * 部门名称 + */ + private String depart_name; + + /** + * 公司名称 + */ + private String company_name; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtSectattr.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtSectattr.java new file mode 100644 index 0000000..bd9d037 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtSectattr.java @@ -0,0 +1,185 @@ +package org.nl.wms.storage_manage.database.dao; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 库区属性表 + *

+ * + * @author author + * @since 2024-01-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("st_ivt_sectattr") +public class StIvtSectattr implements Serializable { + + private static final Long serialVersionUID = 1L; + + /** + * 库区标识 + */ + @TableId + private String sect_id; + + /** + * 库区编码 + */ + private String sect_code; + + /** + * 库区名称 + */ + private String sect_name; + + /** + * 库区简称 + */ + private String simple_name; + + /** + * 库区类型 + */ + private String sect_type_attr; + + /** + * 仓库标识 + */ + private String stor_id; + + /** + * 仓库类型 + */ + private String stor_type; + + /** + * 容量 + */ + private BigDecimal capacity; + + /** + * 宽度 + */ + private BigDecimal width; + + /** + * 高度 + */ + private BigDecimal height; + + /** + * 深度 + */ + private BigDecimal zdepth; + + /** + * 起始X坐标 + */ + private BigDecimal xqty; + + /** + * 起始Y坐标 + */ + private BigDecimal yqty; + + /** + * 起始Z坐标 + */ + private BigDecimal zqty; + + /** + * 负责人 + */ + private String sect_manager_name; + + /** + * 负责人电话 + */ + private String mobile_no; + + /** + * 备注 + */ + private String remark; + + /** + * 创建人 + */ + private String create_id; + + /** + * 创建人姓名 + */ + private String create_name; + + /** + * 创建时间 + */ + private String create_time; + + /** + * 修改人 + */ + private String update_optid; + + /** + * 修改人姓名 + */ + private String update_optname; + + /** + * 修改时间 + */ + private String update_time; + + /** + * 是否删除 + */ + private String is_delete; + + /** + * 背景色 + */ + private String back_ground_color; + + /** + * 前景色 + */ + private String front_ground_color; + + /** + * 背景图片 + */ + private String back_ground_pic; + + /** + * 字体显示方向 + */ + private String font_direction_scode; + + /** + * 所在楼层 + */ + private BigDecimal floor_no; + + /** + * 是否启用 + */ + private String is_used; + + /** + * 外部标识 + */ + private String ext_id; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtStructattr.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtStructattr.java new file mode 100644 index 0000000..7db9f1e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtStructattr.java @@ -0,0 +1,310 @@ +package org.nl.wms.storage_manage.database.dao; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 仓位属性表 + *

+ * + * @author author + * @since 2024-01-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("st_ivt_structattr") +public class StIvtStructattr implements Serializable { + + private static final Long serialVersionUID = 1L; + + /** + * 仓位标识 + */ + @TableId + private String struct_id; + + /** + * 仓位编码 + */ + private String struct_code; + + /** + * 仓位名称 + */ + private String struct_name; + + /** + * 仓位简称 + */ + private String simple_name; + + /** + * 区域标识 + */ + private String sect_id; + + /** + * 区域编码 + */ + private String sect_code; + + /** + * 区域名称 + */ + private String sect_name; + + /** + * 仓库标识 + */ + private String stor_id; + + /** + * 仓库编码 + */ + private String stor_code; + + /** + * 仓库名称 + */ + private String stor_name; + + /** + * 仓库类型 + */ + private String stor_type; + + /** + * 容量 + */ + private BigDecimal capacity; + + /** + * 宽度 + */ + private BigDecimal width; + + /** + * 高度 + */ + private BigDecimal height; + + /** + * 深度 + */ + private BigDecimal zdepth; + + /** + * 承受重量 + */ + private BigDecimal weight; + + /** + * 起始X坐标 + */ + private BigDecimal xqty; + + /** + * 起始Y坐标 + */ + private BigDecimal yqty; + + /** + * 起始Z坐标 + */ + private BigDecimal zqty; + + /** + * 是否临时仓位 + */ + private String is_tempstruct; + + /** + * 排 + */ + private BigDecimal row_num; + + /** + * 列 + */ + private BigDecimal col_num; + + /** + * 层 + */ + private BigDecimal layer_num; + + /** + * 块 + */ + private BigDecimal block_num; + + /** + * 入库顺序 + */ + private BigDecimal in_order_seq; + + /** + * 出库顺序 + */ + private BigDecimal out_order_seq; + + /** + * 入空载具顺序 + */ + private BigDecimal in_empty_seq; + + /** + * 出空载具顺序 + */ + private BigDecimal out_empty_seq; + + /** + * 放置类型 + */ + private String placement_type; + + /** + * 创建人 + */ + private String create_id; + + /** + * 创建人姓名 + */ + private String create_name; + + /** + * 创建时间 + */ + private String create_time; + + /** + * 修改人 + */ + private String update_optid; + + /** + * 修改人姓名 + */ + private String update_optname; + + /** + * 修改时间 + */ + private String update_time; + + /** + * 是否删除 + */ + private String is_delete; + + /** + * 背景色 + */ + private String back_ground_color; + + /** + * 前景色 + */ + private String front_ground_color; + + /** + * 背景图片 + */ + private String back_ground_pic; + + /** + * 字体显示方向 + */ + private String font_direction_scode; + + /** + * 是否启用 + */ + private String is_used; + + /** + * 是否判断高度 + */ + private String is_zdepth; + + /** + * 存储载具标识 + */ + private String storagevehicle_id; + + /** + * 存储载具号 + */ + private String storagevehicle_code; + + /** + * 是否空载具 + */ + private String is_emptyvehicle; + + /** + * 载具数量 + */ + private BigDecimal storagevehicle_qty; + + /** + * 锁定类型 + */ + private String lock_type; + + /** + * 锁定任务类型 + */ + private String taskdtl_type; + + /** + * 锁定任务明细标识 + */ + private String taskdtl_id; + + /** + * 锁定任务编码 + */ + private String task_code; + + /** + * 锁定单据类型 + */ + private String inv_type; + + /** + * 锁定单据标识 + */ + private String inv_id; + + /** + * 锁定单据编码 + */ + private String inv_code; + + /** + * 物料高度类型 + */ + private String material_height_type; + + /** + * 外部标识 + */ + private String ext_id; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtUserstor.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtUserstor.java new file mode 100644 index 0000000..ac10fbf --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dao/StIvtUserstor.java @@ -0,0 +1,39 @@ +package org.nl.wms.storage_manage.database.dao; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + *

+ * 仓库与人员关联表 + *

+ * + * @author author + * @since 2024-01-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("st_ivt_userstor") +public class StIvtUserstor implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 仓库标识 + */ + @TableId + private String stor_id; + + /** + * 人员标识 + */ + private String user_id; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/SectQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/SectQuery.java new file mode 100644 index 0000000..5a24fa5 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/SectQuery.java @@ -0,0 +1,36 @@ +package org.nl.wms.storage_manage.database.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.common.domain.query.QParam; +import org.nl.common.enums.QueryTEnum; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; + +/** + * 仓库查询条件 + * @author LXY + * @Date 2023/11/10 14:49 + */ +@Data +public class SectQuery extends BaseQuery { + + /** + * 仓库编码 + */ + private String stor_code; + + /** + * 仓库id + */ + private String stor_id; + + /** + * 库区编码 + */ + private String sect_code; + + @Override + public void paramMapping() { + super.doP.put("stor_code", QParam.builder().k(new String[]{"stor_code"}).type(QueryTEnum.LK).build()); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/StorQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/StorQuery.java new file mode 100644 index 0000000..9b7fe4e --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/StorQuery.java @@ -0,0 +1,26 @@ +package org.nl.wms.storage_manage.database.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.common.domain.query.QParam; +import org.nl.common.enums.QueryTEnum; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; + +/** + * 仓库查询条件 + * @author LXY + * @Date 2023/11/10 14:49 + */ +@Data +public class StorQuery extends BaseQuery { + + /** + * 仓库编码 + */ + private String stor_code; + + @Override + public void paramMapping() { + super.doP.put("stor_code", QParam.builder().k(new String[]{"stor_code"}).type(QueryTEnum.LK).build()); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/UserStorQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/UserStorQuery.java new file mode 100644 index 0000000..3c71ed9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/dto/UserStorQuery.java @@ -0,0 +1,26 @@ +package org.nl.wms.storage_manage.database.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.common.domain.query.QParam; +import org.nl.common.enums.QueryTEnum; +import org.nl.wms.storage_manage.database.dao.StIvtUserstor; + +/** + * 仓库查询条件 + * @author LXY + * @Date 2023/11/10 14:49 + */ +@Data +public class UserStorQuery extends BaseQuery { + + /** + * 模糊查询 + */ + private String blurry; + + @Override + public void paramMapping() { + super.doP.put("blurry", QParam.builder().k(new String[]{"blurry"}).type(QueryTEnum.LK).build()); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtBsrealstorattrMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtBsrealstorattrMapper.java new file mode 100644 index 0000000..3a8fb5d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtBsrealstorattrMapper.java @@ -0,0 +1,37 @@ +package org.nl.wms.storage_manage.database.mapper; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; +import org.nl.wms.storage_manage.database.dto.StorQuery; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 实物库属性表 Mapper 接口 + *

+ * + * @author author + * @since 2024-01-16 + */ +public interface StIvtBsrealstorattrMapper extends BaseMapper { + + /** + * 分页查询 + * @param query:查询条件 + * @param pageQuery 分页 + * @return List + */ + List getPageQuery(@Param("query") StorQuery query, @Param("pageQuery") PageQuery pageQuery); + + /** + * 获取仓库下拉框 + * @param whereJson:查询条件 + * @return List + */ + List getStor(Map whereJson); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtSectattrMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtSectattrMapper.java new file mode 100644 index 0000000..26d32b7 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtSectattrMapper.java @@ -0,0 +1,29 @@ +package org.nl.wms.storage_manage.database.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.database.dao.StIvtSectattr; +import org.nl.wms.storage_manage.database.dto.SectQuery; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 库区属性表 Mapper 接口 + *

+ * + * @author author + * @since 2024-01-16 + */ +public interface StIvtSectattrMapper extends BaseMapper { + + /** + * 分页查询 + * @param query:查询条件 + * @param pageQuery 分页 + * @return List + */ + List getPageQuery( @Param("query") SectQuery query, @Param("pageQuery") PageQuery pageQuery); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtStructattrMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtStructattrMapper.java new file mode 100644 index 0000000..468f69d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtStructattrMapper.java @@ -0,0 +1,25 @@ +package org.nl.wms.storage_manage.database.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.storage_manage.database.dao.StIvtStructattr; + +import java.util.List; + +/** + *

+ * 仓位属性表 Mapper 接口 + *

+ * + * @author author + * @since 2024-01-16 + */ +public interface StIvtStructattrMapper extends BaseMapper { + + /** + * 根据木箱批量查询 + * @param list: 木箱集合 + * @return List + */ + List queryBatch(List list); + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtUserstorMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtUserstorMapper.java new file mode 100644 index 0000000..972be73 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/StIvtUserstorMapper.java @@ -0,0 +1,24 @@ +package org.nl.wms.storage_manage.database.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.database.dao.StIvtUserstor; +import org.nl.wms.storage_manage.database.dto.UserStorQuery; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 仓库与人员关联表 Mapper 接口 + *

+ * + * @author author + * @since 2024-01-16 + */ +public interface StIvtUserstorMapper extends BaseMapper { + + + List getPageQuery(@Param("query") UserStorQuery query, @Param("pageQuery") PageQuery pageQuery); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtBsrealstorattrMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtBsrealstorattrMapper.xml new file mode 100644 index 0000000..dad61c4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtBsrealstorattrMapper.xml @@ -0,0 +1,60 @@ + + + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtSectattrMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtSectattrMapper.xml new file mode 100644 index 0000000..0574507 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtSectattrMapper.xml @@ -0,0 +1,28 @@ + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtStructattrMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtStructattrMapper.xml new file mode 100644 index 0000000..b532ff9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtStructattrMapper.xml @@ -0,0 +1,24 @@ + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtUserstorMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtUserstorMapper.xml new file mode 100644 index 0000000..3642f29 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/mapper/xml/StIvtUserstorMapper.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtBsrealstorattrService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtBsrealstorattrService.java new file mode 100644 index 0000000..3ece97a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtBsrealstorattrService.java @@ -0,0 +1,68 @@ +package org.nl.wms.storage_manage.database.service; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; +import org.nl.wms.storage_manage.database.dto.StorQuery; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 实物库属性表 服务类 + *

+ * + * @author author + * @since 2024-01-16 + */ +public interface IStIvtBsrealstorattrService extends IService { + + /** + * 根据仓库id搜索 + * @param storId / + * @return StIvtBsrealstorattr 实体类对象 + */ + StIvtBsrealstorattr getById(Long storId); + + /** + * 分页查询 + * @param query 查询条件 + * @param page 分页查询 + * @return Object + */ + Object pageQuery(StorQuery query, PageQuery page); + + /** + * 获取仓库下拉框 + * @param whereJson : 查询条件 + * @return JSONObject + */ + List getStor(Map whereJson); + + /** + * 新增仓库 + * @param dao: 仓库实体类 + * + */ + void create(StIvtBsrealstorattr dao); + + /** + * 修改仓库 + * @param dao:仓库实体类 + */ + void update(StIvtBsrealstorattr dao); + + /** + * 删除仓库 + * @param ids:标识 + */ + void deleteAll(Long[] ids); + + /** + * 修改状态 + * @param dao: 仓库实体类 + */ + void changeActive(StIvtBsrealstorattr dao); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtSectattrService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtSectattrService.java new file mode 100644 index 0000000..dc7f818 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtSectattrService.java @@ -0,0 +1,49 @@ +package org.nl.wms.storage_manage.database.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.database.dao.StIvtSectattr; +import org.nl.wms.storage_manage.database.dto.SectQuery; + +/** + *

+ * 库区属性表 服务类 + *

+ * + * @author author + * @since 2024-01-16 + */ +public interface IStIvtSectattrService extends IService { + + /** + * 查询库区 + * @param query 查询条件 + * @param page 分页查询 + * @return Object + */ + Object pageQuery(SectQuery query, PageQuery page); + + /** + * 新增库区 + * @param dao:库区实体 + */ + void create(StIvtSectattr dao); + + /** + * 修改库区 + * @param dao: 库区实体 + */ + void update(StIvtSectattr dao); + + /** + * 删除库区 + * @param ids + */ + void deleteAll(Long[] ids); + + /** + * 修改状态 + * @param dao + */ + void changeActive(StIvtSectattr dao); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtStructattrService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtStructattrService.java new file mode 100644 index 0000000..9c66716 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtStructattrService.java @@ -0,0 +1,16 @@ +package org.nl.wms.storage_manage.database.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.storage_manage.database.dao.StIvtStructattr; + +/** + *

+ * 仓位属性表 服务类 + *

+ * + * @author author + * @since 2024-01-16 + */ +public interface IStIvtStructattrService extends IService { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtUserstorService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtUserstorService.java new file mode 100644 index 0000000..4b6b3eb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/IStIvtUserstorService.java @@ -0,0 +1,25 @@ +package org.nl.wms.storage_manage.database.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.database.dao.StIvtUserstor; +import org.nl.wms.storage_manage.database.dto.UserStorQuery; + +/** + *

+ * 仓库与人员关联表 服务类 + *

+ * + * @author author + * @since 2024-01-16 + */ +public interface IStIvtUserstorService extends IService { + + /** + * 查询用户信息 + * @param query: 查询条件 + * @param page:分页工具 + * @return Object + */ + Object pageQuery(UserStorQuery query, PageQuery page); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtBsrealstorattrServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtBsrealstorattrServiceImpl.java new file mode 100644 index 0000000..04f4bcf --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtBsrealstorattrServiceImpl.java @@ -0,0 +1,140 @@ +package org.nl.wms.storage_manage.database.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.IdUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; +import org.nl.wms.storage_manage.database.dto.StorQuery; +import org.nl.wms.storage_manage.database.mapper.StIvtBsrealstorattrMapper; +import org.nl.wms.storage_manage.database.service.IStIvtBsrealstorattrService; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 实物库属性表 服务实现类 + *

+ * + * @author author + * @since 2024-01-16 + */ +@Service +public class StIvtBsrealstorattrServiceImpl extends ServiceImpl implements IStIvtBsrealstorattrService { + + + @Override + public StIvtBsrealstorattr getById(Long storId) { + if (ObjectUtil.isEmpty(this.baseMapper.selectById(storId))) { + throw new BadRequestException("仓库不存在,请检查!"); + } + + return this.baseMapper.selectById(storId); + } + + @Override + public Object pageQuery(StorQuery query, PageQuery pageQuery) { + Page page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); + page.setOrderBy("create_time DESC"); + List mst_detail = this.baseMapper.getPageQuery(query, pageQuery); + + TableDataInfo build = TableDataInfo.build(mst_detail); + build.setTotalElements(page.getTotal()); + return build; + } + + @Override + public List getStor(Map whereJson) { + return this.baseMapper.getStor(whereJson); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create(StIvtBsrealstorattr dao) { + StIvtBsrealstorattr isDao = this.getOne( + new QueryWrapper().lambda() + .eq(StIvtBsrealstorattr::getStor_code, dao.getStor_code()) + .eq(StIvtBsrealstorattr::getIs_delete, IOSEnum.IS_NOTANDYES.code("否")) + ); + + if (ObjectUtil.isNotEmpty(isDao)) { + throw new BadRequestException("已存在相同编码的仓库【"+dao.getStor_code()+"】"); + } + + dao.setStor_id(IdUtil.getStringId()); + dao.setCreate_id(SecurityUtils.getCurrentUserId()); + dao.setCreate_name(SecurityUtils.getCurrentNickName()); + dao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + dao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + dao.setUpdate_time(DateUtil.now()); + dao.setCreate_time(DateUtil.now()); + + dao.setSyscompanyid(IOSEnum.IS_NOTANDYES.code("否")); + dao.setSysdeptid(IOSEnum.IS_NOTANDYES.code("否")); + dao.setSysownerid(IOSEnum.IS_NOTANDYES.code("否")); + + this.save(dao); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(StIvtBsrealstorattr dao) { + StIvtBsrealstorattr isDao = this.getById(dao.getStor_id()); + + if (isDao == null) { + throw new BadRequestException("被删除或无权限,操作失败!"); + } + + dao.setUpdate_time(DateUtil.now()); + dao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + dao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + + this.updateById(dao); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteAll(Long[] ids) { + for (Long storId : ids) { + this.update( + new UpdateWrapper().lambda() + .set(StIvtBsrealstorattr::getIs_delete, IOSEnum.IS_NOTANDYES.code("是")) + .set(StIvtBsrealstorattr::getUpdate_optid, SecurityUtils.getCurrentUserId()) + .set(StIvtBsrealstorattr::getUpdate_optname, SecurityUtils.getCurrentNickName()) + .set(StIvtBsrealstorattr::getUpdate_time, DateUtil.now()) + .eq(StIvtBsrealstorattr::getStor_id, storId) + ); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void changeActive(StIvtBsrealstorattr dao) { + + String isUsed = IOSEnum.IS_NOTANDYES.code("是"); + if (StrUtil.equals(IOSEnum.IS_NOTANDYES.code("是"), dao.getIs_used())) { + isUsed = IOSEnum.IS_NOTANDYES.code("否"); + } + + dao.setIs_used(isUsed); + dao.setUpdate_time(DateUtil.now()); + dao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + dao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + this.updateById(dao); + + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtSectattrServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtSectattrServiceImpl.java new file mode 100644 index 0000000..701238c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtSectattrServiceImpl.java @@ -0,0 +1,137 @@ +package org.nl.wms.storage_manage.database.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.IdUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; +import org.nl.wms.storage_manage.database.dao.StIvtSectattr; +import org.nl.wms.storage_manage.database.dto.SectQuery; +import org.nl.wms.storage_manage.database.mapper.StIvtSectattrMapper; +import org.nl.wms.storage_manage.database.service.IStIvtBsrealstorattrService; +import org.nl.wms.storage_manage.database.service.IStIvtSectattrService; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 库区属性表 服务实现类 + *

+ * + * @author author + * @since 2024-01-16 + */ +@Service +public class StIvtSectattrServiceImpl extends ServiceImpl implements IStIvtSectattrService { + + /** + * 仓库服务 + */ + @Autowired + private IStIvtBsrealstorattrService iStIvtBsrealstorattrService; + + @Override + public Object pageQuery(SectQuery query, PageQuery pageQuery) { + Page page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); + page.setOrderBy("create_time DESC"); + List mst_detail = this.baseMapper.getPageQuery(query, pageQuery); + + TableDataInfo build = TableDataInfo.build(mst_detail); + build.setTotalElements(page.getTotal()); + return build; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create(StIvtSectattr dao) { + + StIvtSectattr isDao = this.getOne( + new QueryWrapper().lambda() + .eq(StIvtSectattr::getSect_code, dao.getSect_code()) + .eq(StIvtSectattr::getIs_delete, IOSEnum.IS_NOTANDYES.code("否")) + ); + + if (ObjectUtil.isNotEmpty(isDao)) { + throw new BadRequestException("已存在相同编码的仓库【"+dao.getSect_code()+"】"); + } + + dao.setSect_id(IdUtil.getStringId()); + dao.setCreate_id(SecurityUtils.getCurrentUserId()); + dao.setCreate_name(SecurityUtils.getCurrentNickName()); + dao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + dao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + dao.setUpdate_time(DateUtil.now()); + dao.setCreate_time(DateUtil.now()); + + StIvtBsrealstorattr attrDao = iStIvtBsrealstorattrService.getById(dao.getStor_id()); + dao.setStor_type(attrDao.getStor_type_scode()); + this.save(dao); + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(StIvtSectattr dao) { + + StIvtSectattr isDao = this.getById(dao.getSect_id()); + + if (isDao == null) { + throw new BadRequestException("被删除或无权限,操作失败!"); + } + + dao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + dao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + dao.setUpdate_time(DateUtil.now()); + + StIvtBsrealstorattr attrDao = iStIvtBsrealstorattrService.getById(dao.getStor_id()); + dao.setStor_type(attrDao.getStor_type_scode()); + + this.updateById(dao); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteAll(Long[] ids) { + for (Long sectId : ids) { + this.update( + new UpdateWrapper().lambda() + .set(StIvtSectattr::getIs_delete, IOSEnum.IS_NOTANDYES.code("是")) + .set(StIvtSectattr::getUpdate_optid, SecurityUtils.getCurrentUserId()) + .set(StIvtSectattr::getUpdate_optname, SecurityUtils.getCurrentNickName()) + .set(StIvtSectattr::getUpdate_time, DateUtil.now()) + .eq(StIvtSectattr::getSect_id, sectId) + ); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void changeActive(StIvtSectattr dao) { + + String isUsed = IOSEnum.IS_NOTANDYES.code("是"); + if (StrUtil.equals(IOSEnum.IS_NOTANDYES.code("是"), dao.getIs_used())) { + isUsed = IOSEnum.IS_NOTANDYES.code("否"); + } + + dao.setIs_used(isUsed); + dao.setUpdate_time(DateUtil.now()); + dao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + dao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + this.updateById(dao); + + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtStructattrServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtStructattrServiceImpl.java new file mode 100644 index 0000000..726fce8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtStructattrServiceImpl.java @@ -0,0 +1,20 @@ +package org.nl.wms.storage_manage.database.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.wms.storage_manage.database.dao.StIvtStructattr; +import org.nl.wms.storage_manage.database.mapper.StIvtStructattrMapper; +import org.nl.wms.storage_manage.database.service.IStIvtStructattrService; +import org.springframework.stereotype.Service; + +/** + *

+ * 仓位属性表 服务实现类 + *

+ * + * @author author + * @since 2024-01-16 + */ +@Service +public class StIvtStructattrServiceImpl extends ServiceImpl implements IStIvtStructattrService { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtUserstorServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtUserstorServiceImpl.java new file mode 100644 index 0000000..c105011 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/database/service/impl/StIvtUserstorServiceImpl.java @@ -0,0 +1,38 @@ +package org.nl.wms.storage_manage.database.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.database.dao.StIvtUserstor; +import org.nl.wms.storage_manage.database.dto.UserStorQuery; +import org.nl.wms.storage_manage.database.mapper.StIvtUserstorMapper; +import org.nl.wms.storage_manage.database.service.IStIvtUserstorService; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 仓库与人员关联表 服务实现类 + *

+ * + * @author author + * @since 2024-01-16 + */ +@Service +public class StIvtUserstorServiceImpl extends ServiceImpl implements IStIvtUserstorService { + + @Override + public Object pageQuery(UserStorQuery query, PageQuery pageQuery) { + Page page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); + page.setOrderBy("create_time DESC"); + List mst_detail = this.baseMapper.getPageQuery(query, pageQuery); + + TableDataInfo build = TableDataInfo.build(mst_detail); + build.setTotalElements(page.getTotal()); + return build; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/controller/iostorInv/StIvtIostorinvController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/controller/iostorInv/StIvtIostorinvController.java new file mode 100644 index 0000000..bb50747 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/controller/iostorInv/StIvtIostorinvController.java @@ -0,0 +1,136 @@ +package org.nl.wms.storage_manage.ios.controller.iostorInv; + + +import com.alibaba.fastjson.JSONObject; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvService; +import org.nl.wms.storage_manage.ios.service.iostorInv.dto.IostorInvQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +/** + *

+ * 入库单主表 前端控制器 + *

+ * + * @author generator + * @since 2023-11-10 + */ +@RestController +@RequestMapping("/api/stIvtIostorinv/inBill") +public class StIvtIostorinvController { + + @Autowired + private IStIvtIostorinvService iStIvtIostorinvService; + + @GetMapping + @Log("查询入库单") + public ResponseEntity query(IostorInvQuery query, PageQuery page){ + return new ResponseEntity<>(iStIvtIostorinvService.pageQuery(query,page), HttpStatus.OK); + } + + @PostMapping + @Log("新增入库单") + public ResponseEntity create(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.create(whereJson); + return new ResponseEntity<>( HttpStatus.OK); + } + + @PutMapping + @Log("修改入库单") + public ResponseEntity update(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.update(whereJson); + return new ResponseEntity<>( HttpStatus.OK); + } + + @DeleteMapping + @Log("删除入库单") + public ResponseEntity delete(@RequestBody Long[] ids){ + iStIvtIostorinvService.delete(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/queryBoxMater") + @Log("查询入库单") + public ResponseEntity queryBoxMater(@RequestBody JSONObject whereJson){ + return new ResponseEntity<>(iStIvtIostorinvService.queryBoxMater(whereJson), HttpStatus.OK); + } + + @PostMapping("/getInDtl") + @Log("查询新增入库单明细") + public ResponseEntity getInDtl(@RequestBody JSONObject whereJson){ + return new ResponseEntity<>(iStIvtIostorinvService.getInDtl(whereJson), HttpStatus.OK); + } + + @PostMapping("/getIosDtl") + @Log("查询明细") + public ResponseEntity getIosDtl(@RequestBody JSONObject whereJson){ + return new ResponseEntity<>(iStIvtIostorinvService.getIosDtl(whereJson), HttpStatus.OK); + } + + @PostMapping("/getIosDis") + @Log("查询分配明细") + public ResponseEntity getIosDis(@RequestBody JSONObject whereJson){ + return new ResponseEntity<>(iStIvtIostorinvService.getIosDis(whereJson), HttpStatus.OK); + } + + @PostMapping("/autoDivPoint") + @Log("自动分配点位") + public ResponseEntity autoDivPoint(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.autoDivPoint(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/unDivPoint") + @Log("取消分配") + public ResponseEntity unDivPoint(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.unDivPoint(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/setPoint") + @Log("设置起点") + public ResponseEntity setPoint(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.setPoint(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/getIosDisTask") + @Log("获取明细任务") + public ResponseEntity getIosDisTask(@RequestBody JSONObject whereJson){ + return new ResponseEntity<>(iStIvtIostorinvService.getIosDisTask(whereJson),HttpStatus.OK); + } + + @PostMapping("/delTask") + @Log("删除任务") + public ResponseEntity delTask(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.delTask(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/issueTask") + @Log("下发任务") + public ResponseEntity issueTask(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.issueTask(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/confirmTask") + @Log("完成任务") + public ResponseEntity confirmTask(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.confirmTask(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/confirm") + @Log("强制确认单据") + public ResponseEntity confirm(@RequestBody JSONObject whereJson){ + iStIvtIostorinvService.confirm(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/controller/iostorInv/StIvtIostorinvOutController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/controller/iostorInv/StIvtIostorinvOutController.java new file mode 100644 index 0000000..cb3f1cf --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/controller/iostorInv/StIvtIostorinvOutController.java @@ -0,0 +1,130 @@ +package org.nl.wms.storage_manage.ios.controller.iostorInv; + + +import com.alibaba.fastjson.JSONObject; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvOutService; +import org.nl.wms.storage_manage.ios.service.iostorInv.dto.IostorInvQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +/** + *

+ * 出库单主表 前端控制器 + *

+ * + * @author generator + * @since 2023-11-10 + */ +@RestController +@RequestMapping("/api/stIvtIostorinv/outBill") +public class StIvtIostorinvOutController { + + @Autowired + private IStIvtIostorinvOutService stIvtIostorinvOutService; + + @GetMapping + @Log("查询出库单") + public ResponseEntity query(IostorInvQuery query, PageQuery page) { + return new ResponseEntity<>(stIvtIostorinvOutService.pageQuery(query, page), HttpStatus.OK); + } + + @PostMapping + @Log("新增出库单") + public ResponseEntity create(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.create(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PutMapping + @Log("新增出库单") + public ResponseEntity update(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.update(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @DeleteMapping + @Log("删除入库单") + public ResponseEntity delete(@RequestBody Long[] ids){ + stIvtIostorinvOutService.delete(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/queryBoxMater") + @Log("查询木箱对应子卷") + public ResponseEntity queryBoxMater(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(stIvtIostorinvOutService.queryBoxMater(whereJson), HttpStatus.OK); + } + + @PostMapping("/getIosDtl") + @Log("获取明细") + public ResponseEntity getIosDtl(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(stIvtIostorinvOutService.getIosDtl(whereJson), HttpStatus.OK); + } + + @PostMapping("/getIosDis") + @Log("获取分配明细") + public ResponseEntity getIosDis(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(stIvtIostorinvOutService.getIosDis(whereJson), HttpStatus.OK); + } + + @PostMapping("/moneySubmit") + @Log("发货信息保存") + public ResponseEntity moneySubmit(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.moneySubmit(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/allDiv") + @Log("分配") + public ResponseEntity allDiv(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.allDiv(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/allCancel") + @Log("取消分配") + public ResponseEntity allCancel(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.allCancel(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/allSetPoint") + @Log("全部设置站点") + public ResponseEntity allSetPoint(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.allSetPoint(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/getIosDisTask") + @Log("获取明细任务") + public ResponseEntity getIosDisTask(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(stIvtIostorinvOutService.getIosDisTask(whereJson),HttpStatus.OK); + } + + @PostMapping("/issueTask") + @Log("下发任务") + public ResponseEntity issueTask(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.issueTask(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/confirmTask") + @Log("标识完成任务") + public ResponseEntity confirmTask(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.confirmTask(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/confirm") + @Log("单据强制确认") + public ResponseEntity confirm(@RequestBody JSONObject whereJson) { + stIvtIostorinvOutService.confirm(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/enums/IOSEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/enums/IOSEnum.java new file mode 100644 index 0000000..ceb573c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/enums/IOSEnum.java @@ -0,0 +1,73 @@ +package org.nl.wms.storage_manage.ios.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.config.MapOf; + +import java.util.Map; + +/** + * 出入库枚举 + * + * @author lxy + * @Date 2023/11/14 20:11 + */ +@AllArgsConstructor +@Getter +public enum IOSEnum { + //是否 + IS_NOTANDYES(MapOf.of("否", "0", "是", "1")), + + //出入库类型 + IO_TYPE(MapOf.of("入库", "0", "出库", "1")), + + //acs返回任务状态 + ACS_RESULT(MapOf.of("执行中", "1", "完成", "2","取消","0")), + + //出入单据主表/明细状态 + BILL_STATUS(MapOf.of("生成", "10", "提交", "20", "分配中", "30", "分配完", "40", "完成", "99")), + + //出入单据分配状态 + WORK_STATUS(MapOf.of("未生成", "00", "生成", "01", "执行中", "02", "完成", "99")), + + //出入单创建方式 + CREATE_MODE(MapOf.of("PC产生", "01", "终端产生", "02", "外部接口产生", "03")), + + //入库单据类型 + IN_TYPE(MapOf.of("生产入库", "0001", "退货入库", "0002", "报废入库", "0003", "调拨入库", "0004", + "拆箱入库", "0005", "返检入库", "0006", "改切入库", "0007", "手工入库", "0009" + )), + + //出库单据类型 + OUT_TYPE(MapOf.of("发货出库", "1001", "改切出库", "1003", "调拨出库", "1004", "拆箱出库", "1005", + "返检出库", "1006", "超期报废", "1007", "退货报废", "1008", "质量问题报废", "1010", "其他报废", "1002", + "手工出库", "1009" + )), + + //仓位锁定类型 + LOCK_TYPE(MapOf.of("未锁定", "1", "入库锁", "2", "出库锁", "3", "空托盘出库锁", "4", + "空托盘入库锁", "5", "移出锁", "6", "移入锁", "7", "其它", "99" + )), + ; + + private Map code; + + public String code(String desc) { + String code = this.getCode().get(desc); + if (StringUtils.isNotEmpty(code)) { + return code; + } + throw new BadRequestException(this.name() + "对应类型" + desc + "未定义"); + } + + public String check(String code) { + for (Map.Entry entry : this.getCode().entrySet()) { + if (entry.getValue().equals("code")) { + return entry.getValue(); + } + } + throw new BadRequestException(this.name() + "对应类型" + code + "未定义"); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvOutService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvOutService.java new file mode 100644 index 0000000..a2eff57 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvOutService.java @@ -0,0 +1,175 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; +import org.nl.wms.storage_manage.ios.service.iostorInv.dto.IostorInvQuery; + +/** + *

+ * 出库单主表 服务类 + *

+ * + * @author generator + * @since 2023-11-10 + */ +public interface IStIvtIostorinvOutService extends IService { + + /** + * 分页查询 + * @param query 查询条件 + * @param page 分页查询 + * @return Object + */ + Object pageQuery(IostorInvQuery query, PageQuery page); + + /** + * 查询木箱对应子卷 + * @param whereJson { + * 'data': [子卷信息] + * } + * @return JSONArray + */ + JSONArray queryBoxMater(JSONObject whereJson); + + /** + * 新增出库单 + * @param whereJson + * { + * stor_id: + * stor_code: + * stor_name: + * total_qty: + * detail_count: + * bill_type: + * remark: + * biz_date: + * out_stor_id: + * create_mode: + * tableData: [明细] + * } + */ + void create(JSONObject whereJson); + + /** + * 修改出库单 + * @param whereJson + * { + * stor_id: + * stor_code: + * stor_name: + * total_qty: + * detail_count: + * remark: + * biz_date: + * tableData: [明细] + * } + */ + void update(JSONObject whereJson); + + /** + * 删除入库单 + * @param ids / + */ + void delete(Long[] ids); + + /** + * 获取明细 + * @param whereJson + * { + * iostorinv_id + * } + * @return JSONArray + */ + JSONArray getIosDtl(JSONObject whereJson); + + /** + * 获取分配明细 + * @param whereJson + * { + * iostorinv_id + * } + * @return JSONArray + */ + JSONArray getIosDis(JSONObject whereJson); + + /** + * 发货信息保存 + * @param whereJson + * { + * 主表字段 + * } + */ + void moneySubmit(JSONObject whereJson); + + /** + * 分配 + * @param whereJson + * { + * iostorinv_id: + * iostorinvdtl_id: 为空全部分配,否则分配一条 + * } + */ + void allDiv(JSONObject whereJson); + + /** + * 取消分配 + * @param whereJson + * { + * iostorinv_id: + * iostorinvdtl_id: 为空全部分配,否则分配一条 + * } + */ + void allCancel(JSONObject whereJson); + + /** + * 全部设置站点 + * @param whereJson + * { + * point_code: 起点 + * iostorinv_id: + * checked: 是否异常出库口 + * } + */ + void allSetPoint(JSONObject whereJson); + + /** + * 获取明细任务 + * @param whereJson + * { + * iostorinvdtl_id: + * checked:是否显示未完成任务 + * } + * @return JSONArray + */ + JSONArray getIosDisTask(JSONObject whereJson); + + /** + * 下发任务 + * @param whereJson + * { + * 分配明细 + * } + */ + void issueTask(JSONObject whereJson); + + /** + * 标识完成任务 + * @param whereJson + * { + * 分配明细 + * } + */ + void confirmTask(JSONObject whereJson); + + /** + * 单据强制确认 + * @param whereJson + * { + * iostorinv_id + * } + */ + void confirm(JSONObject whereJson); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvService.java new file mode 100644 index 0000000..75bcc27 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvService.java @@ -0,0 +1,161 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; +import org.nl.wms.storage_manage.ios.service.iostorInv.dto.IostorInvQuery; + +/** + *

+ * 入库单主表 服务类 + *

+ * + * @author generator + * @since 2023-11-10 + */ +public interface IStIvtIostorinvService extends IService { + + /** + * 分页查询 + * @param query 查询条件 + * @param page 分页查询 + * @return Object + */ + Object pageQuery(IostorInvQuery query, PageQuery page); + + /** + * 根据箱号查询子卷 + * @param whereJson 、 + * @return 、 + */ + JSONArray queryBoxMater(JSONObject whereJson); + + /** + * 新增入库单 + * @param whereJson + * { + * bill_status, bill_type, biz_date, create_mode, detail_count, remark, stor_id, total_qty + * tableData: [明细] + * } + */ + void create(JSONObject whereJson); + + /** + * 修改入库单 + * @param whereJson + * { + * mst: {} + * tableData: [明细] + * } + */ + void update(JSONObject whereJson); + + /** + * 删除入库单 + * @param ids / + */ + void delete(Long[] ids); + + /** + * 查询新增入库单明细 + * @param whereJson + * { + * iostorinv_id + * } + * @return JSONArray + */ + JSONArray getInDtl(JSONObject whereJson); + + /** + * 查询查询明 + * @param whereJson + * { + * iostorinv_id + * } + * @return JSONArray + */ + JSONArray getIosDtl(JSONObject whereJson); + + /** + * 查询分配明细 + * @param whereJson + * { + * iostorinvdtl_id + * } + * @return JSONArray + */ + JSONArray getIosDis(JSONObject whereJson); + + /** + * 自动分配点位 + * @param whereJson { + * dtl_row: {明细} + * sect_id: + * stor_id: + * storage_qty: + * point_code + * checked + * tableMater:[分配明细] + * } + */ + void autoDivPoint(JSONObject whereJson); + + /** + * 取消分配 + * @param whereJson 明细 + */ + void unDivPoint(JSONObject whereJson); + + /** + * 设置起点 + * @param whereJson{ + * 明细 + * point_code + * } + */ + void setPoint(JSONObject whereJson); + + /** + * 获取明细任务 + * @param whereJson { + * 明细, + * checked:是否显示未完成任务 + * } + * @return JSONArray + */ + JSONArray getIosDisTask(JSONObject whereJson); + + /** + * 删除任务 + * @param whereJson { + * 分配明细 + * } + */ + void delTask(JSONObject whereJson); + + /** + * 下发任务 + * @param whereJson { + * 分配明细 + * } + */ + void issueTask(JSONObject whereJson); + + /** + * 完成任务 + * @param whereJson { + * 分配明细 + * } + */ + void confirmTask(JSONObject whereJson); + + /** + * 强制确认单据 + * @param whereJson { + * iostorinv_id + * } + */ + void confirm(JSONObject whereJson); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvdisService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvdisService.java new file mode 100644 index 0000000..58371b3 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvdisService.java @@ -0,0 +1,42 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdis; + +import java.util.List; + +/** + *

+ * 出入库单分配表 服务类 + *

+ * + * @author generator + * @since 2023-11-16 + */ +public interface IStIvtIostorinvdisService extends IService { + + /** + * 插入分配明细 + * @param collect {出入库明细} + */ + void insetDis(List collect); + + /** + * 获取分配明细 + * @param whereJson {iostorinvdtl_id iostorinv_id} + * @return JSONArray + */ + JSONArray getIosDis(JSONObject whereJson); + + /** + * 获取明细任务 + * @param whereJson { + * iostorinvdtl_id: + * checked: 是否显示全部任务 + * } + * @return JSONArray + */ + JSONArray getIosDisTask(JSONObject whereJson); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvdtlService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvdtlService.java new file mode 100644 index 0000000..28f52d8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/IStIvtIostorinvdtlService.java @@ -0,0 +1,36 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdtl; + +import java.util.ArrayList; +import java.util.List; + +/** + *

+ * 出入库单明细表 服务类 + *

+ * + * @author generator + * @since 2023-11-16 + */ +public interface IStIvtIostorinvdtlService extends IService { + + /** + * 插入明细 + * @param iostorinv_id 、 + * @param tableDataList 、 + * @return 、 + */ + ArrayList insertDtl(String iostorinv_id, List tableDataList); + + /** + * 获取单据明细 + * @param param {iostorinv_id} 、 + * @return JSONArray 、 + */ + JSONArray getIosDtl(JSONObject param); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinv.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinv.java new file mode 100644 index 0000000..95fe43a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinv.java @@ -0,0 +1,346 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.dao; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + *

+ * 出入库单主表 + *

+ * + * @author generator + * @since 2023-11-10 + */ +@Data +@Builder +@EqualsAndHashCode(callSuper = false) +@TableName("st_ivt_iostorinv") + +public class StIvtIostorinv implements Serializable { + + private static final Long serialVersionUID = 1L; + + /** + * 出入单标识 + */ + @TableId + private String iostorinv_id; + + /** + * 单据编号 + */ + private String bill_code; + + /** + * 出入类型 + */ + private String io_type; + + /** + * 业务类型 + */ + private String buss_type; + + /** + * 单据类型 + */ + private String bill_type; + + /** + * 业务日期 + */ + private String biz_date; + + /** + * 仓库标识 + */ + private String stor_id; + + /** + * 仓库编码 + */ + private String stor_code; + + /** + * 仓库名称 + */ + private String stor_name; + + /** + * 来源方标识 + */ + private String source_id; + + /** + * 来源方名称 + */ + private String source_name; + + /** + * 来源方类型 + */ + private String source_type; + + /** + * 总数量 + */ + private BigDecimal total_qty; + + /** + * 总重量 + */ + private BigDecimal total_weight; + + /** + * 明细数 + */ + private BigDecimal detail_count; + + /** + * 单据状态 + */ + private String bill_status; + + /** + * 备注 + */ + private String remark; + + /** + * 生成方式 + */ + private String create_mode; + + /** + * 制单人 + */ + private String input_optid; + + /** + * 制单人姓名 + */ + private String input_optname; + + /** + * 制单时间 + */ + private String input_time; + + /** + * 修改人 + */ + private String update_optid; + + /** + * 修改人姓名 + */ + private String update_optname; + + /** + * 修改时间 + */ + private String update_time; + + /** + * 分配人 + */ + private String dis_optid; + + /** + * 分配人姓名 + */ + private String dis_optname; + + /** + * 分配时间 + */ + private String dis_time; + + /** + * 确认人 + */ + private String confirm_optid; + + /** + * 确认人姓名 + */ + private String confirm_optname; + + /** + * 确认时间 + */ + private String confirm_time; + + /** + * 部门ID + */ + private String sysdeptid; + + /** + * 公司ID + */ + private String syscompanyid; + + /** + * 是否删除 + */ + private String is_delete; + + /** + * 是否已上传 + */ + private String is_upload; + + /** + * 回传人 + */ + private String upload_optid; + + /** + * 回传时间 + */ + private String upload_time; + + /** + * 是否冲销 + */ + private String is_writeoff; + + /** + * 冲销人 + */ + private String writeoff_optid; + + /** + * 冲销时间 + */ + private String writeoff_time; + + /** + * 收货单位 + */ + private String consignee; + + /** + * 收货人 + */ + private String receiver; + + /** + * 收货地址 + */ + private String receiptaddress; + + /** + * 收货人联系电话 + */ + private String receiptphone; + + /** + * 物流公司 + */ + private String logisticscompany; + + /** + * 司机 + */ + private String drivername; + + /** + * 车牌号 + */ + private String carno; + + /** + * 司机联系电话 + */ + private String driverphone; + + /** + * 合同号 + */ + private String contractno; + + /** + * 送货单位 + */ + private String deliveryunit; + + /** + * 送货方地址 + */ + private String deliveryaddress; + + /** + * 送货方联系人 + */ + private String deliveryname; + + /** + * 送货联系电话 + */ + private String deliveryphone; + + /** + * 物流公司编码 + */ + private String trans_code; + + /** + * 预估运费 + */ + private BigDecimal estimated_freight; + + /** + * 客户编码 + */ + private String cust_code; + + /** + * 移入仓库标识 + */ + private String out_stor_id; + + /** + * 回传MES + */ + private String upload_mes; + + /** + * 回传SAP + */ + private String upload_sap; + + /** + * 运转费 + */ + private BigDecimal run_freight; + + /** + * 卸车费 + */ + private BigDecimal unload_freight; + + /** + * 其他费用 + */ + private BigDecimal other_freight; + + /** + * 运单号 + */ + private String order_number; + + /** + * 车型 + */ + private String car_type; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinvdis.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinvdis.java new file mode 100644 index 0000000..cc1e212 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinvdis.java @@ -0,0 +1,149 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.dao; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + *

+ * 出入库单分配表 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("st_ivt_iostorinvdis") +@Builder +public class StIvtIostorinvdis implements Serializable { + + private static final Long serialVersionUID = 1L; + + /** + * 出入单分配标识 + */ + @TableId + private String iostorinvdis_id; + + /** + * 出入单标识 + */ + private String iostorinv_id; + + /** + * 出入单明细标识 + */ + private String iostorinvdtl_id; + + /** + * 明细序号 + */ + private BigDecimal seq_no; + + /** + * 库区标识 + */ + private String sect_id; + + /** + * 库区编码 + */ + private String sect_code; + + /** + * 库区名称 + */ + private String sect_name; + + /** + * 仓位标识 + */ + private String struct_id; + + /** + * 仓位编码 + */ + private String struct_code; + + /** + * 仓位名称 + */ + private String struct_name; + + /** + * 物料标识 + */ + private String material_id; + + /** + * 批次 + */ + private String pcsn; + + /** + * 品质类型 + */ + private String quality_scode; + + /** + * 执行状态 + */ + private String work_status; + + /** + * 任务标识 + */ + private String task_id; + + /** + * 存储载具标识 + */ + private String storagevehicle_id; + + /** + * 存储载具编码 + */ + private String storagevehicle_code; + + /** + * 是否已下发 + */ + private String is_issued; + + /** + * 数量计量单位标识 + */ + private String qty_unit_id; + + /** + * 数量计量单位名称 + */ + private String qty_unit_name; + + /** + * 计划数量 + */ + private BigDecimal plan_qty; + + /** + * 实际数量 + */ + private BigDecimal real_qty; + + /** + * 出入点位标识 + */ + private String point_id; + + /** + * 箱号 + */ + private String box_no; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinvdtl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinvdtl.java new file mode 100644 index 0000000..2bbca0d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/StIvtIostorinvdtl.java @@ -0,0 +1,160 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.dao; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + *

+ * 出入库单明细表 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Data +@Builder +@EqualsAndHashCode(callSuper = false) +@TableName("st_ivt_iostorinvdtl") +public class StIvtIostorinvdtl implements Serializable { + + private static final Long serialVersionUID = 1L; + + /** + * 出入单明细标识 + */ + @TableId + private String iostorinvdtl_id; + + /** + * 出入单标识 + */ + private String iostorinv_id; + + /** + * 明细序号 + */ + private BigDecimal seq_no; + + /** + * 物料标识 + */ + private String material_id; + + /** + * 批次 + */ + private String pcsn; + + /** + * 品质类型 + */ + private String quality_scode; + + /** + * 单据明细状态 + */ + private String bill_status; + + /** + * 数量计量单位标识 + */ + private String qty_unit_id; + + /** + * 数量计量单位名称 + */ + private String qty_unit_name; + + /** + * 计划数量 + */ + private BigDecimal plan_qty; + + /** + * 实际数量 + */ + private BigDecimal real_qty; + + /** + * 来源单据明细标识 + */ + private String source_billdtl_id; + + /** + * 来源单据类型 + */ + private String source_bill_type; + + /** + * 来源单编号 + */ + private String source_bill_code; + + /** + * 来源单表名 + */ + private String source_bill_table; + + /** + * 基础单据明细标识 + */ + private String base_billdtl_id; + + /** + * 基础单据类型 + */ + private String base_bill_type; + + /** + * 基础单编号 + */ + private String base_bill_code; + + /** + * 基础单表名 + */ + private String base_bill_table; + + /** + * 备注 + */ + private String remark; + + /** + * 已分配数量 + */ + private BigDecimal assign_qty; + + /** + * 未分配数量 + */ + private BigDecimal unassign_qty; + + /** + * 箱号 + */ + private String box_no; + + /** + * 来源交货单 + */ + private String vbeln; + + /** + * 来源交货单行 + */ + private String posnr; + + /** + * 发货幅宽 + */ + private String width; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvMapper.java new file mode 100644 index 0000000..354e331 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvMapper.java @@ -0,0 +1,29 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; +import org.nl.wms.storage_manage.ios.service.iostorInv.dto.IostorInvQuery; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 出入库单主表 Mapper 接口 + *

+ * + * @author generator + * @since 2023-11-10 + */ +public interface StIvtIostorinvMapper extends BaseMapper { + + /** + * 查询入库单 + * @param query + * @param pageQuery + * @return + */ + List getPageQuery(@Param("query") IostorInvQuery query, @Param("pageQuery") PageQuery pageQuery); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvOutMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvOutMapper.java new file mode 100644 index 0000000..2bdddbd --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvOutMapper.java @@ -0,0 +1,29 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; +import org.nl.wms.storage_manage.ios.service.iostorInv.dto.IostorInvQuery; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 出入库单主表 Mapper 接口 + *

+ * + * @author generator + * @since 2023-11-10 + */ +public interface StIvtIostorinvOutMapper extends BaseMapper { + + /** + * 查询出库单 + * @param query + * @param pageQuery + * @return + */ + List getPageQuery(@Param("query") IostorInvQuery query, @Param("pageQuery") PageQuery pageQuery); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvdisMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvdisMapper.java new file mode 100644 index 0000000..a8d66f0 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvdisMapper.java @@ -0,0 +1,36 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.dao.mapper; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdis; + +import java.util.List; + +/** + *

+ * 出入库单分配表 Mapper 接口 + *

+ * + * @author generator + * @since 2023-11-16 + */ +public interface StIvtIostorinvdisMapper extends BaseMapper { + + /** + * 获取分配明细 + * @param whereJson {iostorinvdtl_id, iostorinv_id} + * @return List + */ + List getIosDis(JSONObject whereJson); + + /** + * 获取明细任务 + * @param whereJson { + * iostorinvdtl_id: + * iostorinv_id: + * checked: 是否显示全部任务 + * } + * @return List + */ + List getIosDisTask(JSONObject whereJson); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvdtlMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvdtlMapper.java new file mode 100644 index 0000000..9035bdc --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/StIvtIostorinvdtlMapper.java @@ -0,0 +1,26 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.dao.mapper; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdtl; + +import java.util.List; + +/** + *

+ * 出入库单明细表 Mapper 接口 + *

+ * + * @author generator + * @since 2023-11-16 + */ +public interface StIvtIostorinvdtlMapper extends BaseMapper { + + /** + * 获取明细 + * @param param {iostorinv_id} + * @return List + */ + List getIosDtl(JSONObject param); + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvMapper.xml new file mode 100644 index 0000000..2a27396 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvMapper.xml @@ -0,0 +1,119 @@ + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvOutMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvOutMapper.xml new file mode 100644 index 0000000..743dd57 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvOutMapper.xml @@ -0,0 +1,37 @@ + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvdisMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvdisMapper.xml new file mode 100644 index 0000000..80c5ddd --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvdisMapper.xml @@ -0,0 +1,64 @@ + + + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvdtlMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvdtlMapper.xml new file mode 100644 index 0000000..9638304 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dao/mapper/xml/StIvtIostorinvdtlMapper.xml @@ -0,0 +1,51 @@ + + + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dto/IostorInvQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dto/IostorInvQuery.java new file mode 100644 index 0000000..57ce035 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/dto/IostorInvQuery.java @@ -0,0 +1,66 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.common.domain.query.QParam; +import org.nl.common.enums.QueryTEnum; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; + +/** + * 条件 + * @author LXY + * @Date 2023/11/10 14:49 + */ +@Data +public class IostorInvQuery extends BaseQuery { + + /** + * 仓库 + */ + private String stor_id; + + /** + * 单据状态 + */ + private String bill_status; + + /** + * 单据类型 + */ + private String bill_type; + + /** + * 模糊查询:单据编码 + */ + private String bill_code; + + /** + * 出入库类型 + */ + private String io_type; + + /** + * 是否删除 + */ + private String is_delete = "0"; + + /** + * 生成方式 + */ + private String create_mode; + + /** + * 子卷号 + */ + private String pcsn; + + /** + * sap批次 + */ + private String sap_pcsn; + + @Override + public void paramMapping() { + super.doP.put("bill_code", QParam.builder().k(new String[]{"bill_code"}).type(QueryTEnum.LK).build()); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvOutServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvOutServiceImpl.java new file mode 100644 index 0000000..dbc9bdb --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvOutServiceImpl.java @@ -0,0 +1,648 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.CodeUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.IdUtil; +import org.nl.wms.pdm.subpackage.service.dao.mapper.PdmBiSubpackagerelationMapper; +import org.nl.wms.pdm.subpackage.service.dto.SubPackageQuery; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvOutService; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdisService; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdtlService; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdis; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdtl; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.mapper.StIvtIostorinvOutMapper; +import org.nl.wms.storage_manage.ios.service.iostorInv.dto.IostorInvQuery; +import org.nl.wms.storage_manage.ios.util.IosOutRuleService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + *

+ * 出入库单主表 服务实现类 + *

+ * + * @author generator + * @since 2023-11-10 + */ +@Service +public class StIvtIostorinvOutServiceImpl extends ServiceImpl implements IStIvtIostorinvOutService { + + /** + * 子卷包装mapper + */ + @Autowired + private PdmBiSubpackagerelationMapper pdmBiSubpackagerelationMapper; + + /** + * 出入库明细服务 + */ + @Autowired + private IStIvtIostorinvdtlService iStIvtIostorinvdtlService; + + /** + * 出入库分配明细服务 + */ + @Autowired + private IStIvtIostorinvdisService iStIvtIostorinvdisService; + + /** + * 出库分配规则 + */ + @Autowired + private IosOutRuleService iosOutRuleService; + + /** + * 点位服务 + */ + @Autowired + private ISchBasePointService iSchBasePointService; + + /** + * 任务服务 + */ + @Autowired + private ISchBaseTaskService iSchBaseTaskService; + + @Override + public Object pageQuery(IostorInvQuery query, PageQuery pageQuery) { + Page page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); + page.setOrderBy("input_time DESC"); + List mst_detail = this.baseMapper.getPageQuery(query, pageQuery); + + TableDataInfo build = TableDataInfo.build(mst_detail); + build.setTotalElements(page.getTotal()); + return build; + } + + @Override + public JSONArray queryBoxMater(JSONObject whereJson) { + List collect = whereJson.getJSONArray("data").stream() + .map(row -> JSON.parseObject(JSONObject.toJSONString(row))) + .map(row -> row.getString("box_no")) + .distinct() + .collect(Collectors.toList()); + + SubPackageQuery subPackageQuery = new SubPackageQuery(); + subPackageQuery.setList(collect); + List resultList = pdmBiSubpackagerelationMapper.getTestOut(subPackageQuery, null); + + return JSONArray.parseArray(JSONObject.toJSONString(resultList)); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create(JSONObject whereJson) { + + // 组织主表数据 + StIvtIostorinv mstDao = StIvtIostorinv.builder() + .iostorinv_id(IdUtil.getStringId()) + .bill_code(CodeUtil.getNewCode("IO_CODE")) + .bill_status(IOSEnum.BILL_STATUS.code("生成")) + .create_mode(IOSEnum.CREATE_MODE.code("PC产生")) + .io_type(IOSEnum.IO_TYPE.code("出库")) + .input_optid(SecurityUtils.getCurrentUserId()) + .input_optname(SecurityUtils.getCurrentNickName()) + .input_time(DateUtil.now()) + .build(); + + updateMst(mstDao, whereJson); + + this.save(mstDao); + + // 组织插入明细、分配的数据 + JSONArray tableData = whereJson.getJSONArray("tableData"); + + ArrayList dtlList = new ArrayList<>(); + for (int i = 0; i < tableData.size(); i++) { + JSONObject json = tableData.getJSONObject(i); + + JSONObject dtl = new JSONObject(); + dtl.put("material_code",json.getString("material_code")); + dtl.put("pcsn",json.getString("pcsn")); + dtl.put("plan_qty",json.getString("plan_qty")); + dtl.put("box_no",json.getString("box_no")); + dtlList.add(dtl); + } + + // 插入明细 + iStIvtIostorinvdtlService.insertDtl(mstDao.getIostorinv_id(), dtlList); + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(JSONObject whereJson) { + StIvtIostorinv mstDao = this.getById(whereJson.getString("iostorinv_id")); + + // 组织主表数据 + updateMst(mstDao, whereJson); + + mstDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + mstDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + mstDao.setUpdate_time(DateUtil.now()); + this.updateById(mstDao); + + // 组织插入明细、分配的数据 + JSONArray tableData = whereJson.getJSONArray("tableData"); + + ArrayList dtlList = new ArrayList<>(); + for (int i = 0; i < tableData.size(); i++) { + JSONObject json = tableData.getJSONObject(i); + + JSONObject dtl = new JSONObject(); + dtl.put("material_code",json.getString("material_code")); + dtl.put("pcsn",json.getString("pcsn")); + dtl.put("plan_qty",json.getString("plan_qty")); + dtl.put("box_no",json.getString("box_no")); + dtlList.add(dtl); + } + + // 插入明细 + iStIvtIostorinvdtlService.insertDtl(mstDao.getIostorinv_id(), dtlList); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(Long[] ids) { + for (Long id : ids) { + this.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinv::getIs_delete, IOSEnum.IS_NOTANDYES.code("是")) + .eq(StIvtIostorinv::getIostorinv_id, id) + ); + } + } + + @Override + public JSONArray getIosDtl(JSONObject whereJson) { + return iStIvtIostorinvdtlService.getIosDtl(whereJson); + } + + @Override + public JSONArray getIosDis(JSONObject whereJson) { + return iStIvtIostorinvdisService.getIosDis(whereJson); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void moneySubmit(JSONObject whereJson) { + // JSONObject转实体类 + StIvtIostorinv mstDao = BeanUtil.copyProperties(whereJson,StIvtIostorinv.class); + + mstDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + mstDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + mstDao.setUpdate_time(DateUtil.now()); + this.updateById(mstDao); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void allDiv(JSONObject whereJson) { + // 查出未分配的明细 + List dtlDaoList = new ArrayList<>(); + + // 判断是全部分配还是分配一条 + if (ObjectUtil.isEmpty(whereJson.getString("iostorinvdtl_id"))) { + dtlDaoList = iStIvtIostorinvdtlService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdtl::getIostorinv_id, whereJson.getString("iostorinv_id")) + .in(StIvtIostorinvdtl::getBill_status, IOSEnum.BILL_STATUS.code("生成"), IOSEnum.BILL_STATUS.code("分配中")) + ); + } else { + dtlDaoList = iStIvtIostorinvdtlService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdtl::getIostorinv_id, whereJson.getString("iostorinv_id")) + .eq(StIvtIostorinvdtl::getIostorinvdtl_id, whereJson.getString("iostorinvdtl_id")) + .in(StIvtIostorinvdtl::getBill_status, IOSEnum.BILL_STATUS.code("生成"), IOSEnum.BILL_STATUS.code("分配中")) + ); + } + + if (ObjectUtil.isEmpty(dtlDaoList)) throw new BadRequestException("没有需要分配的明细!"); + + // 库存集合 + List ivtList = iosOutRuleService.getCancelIvt(whereJson); + + // 需插入分配明细集合 + List disList = new ArrayList<>(); + + for (int i = 0; i < dtlDaoList.size(); i++) { + StIvtIostorinvdtl dtlDao = dtlDaoList.get(i); + + // 判断是否有批次 + if (ObjectUtil.isNotEmpty(dtlDao.getPcsn())) { + // 根据批次找到对应库存 + List ivtDaoList = ivtList.stream() + .filter(row -> row.getString("pcsn").equals(dtlDao.getPcsn())) + .collect(Collectors.toList()); + + if (ObjectUtil.isEmpty(ivtDaoList)) + throw new BadRequestException("批次:"+dtlDao.getPcsn()+"无可用库存!"); + + JSONObject jsonDisParam = ivtDaoList.get(0); + jsonDisParam.put("iostorinvdtl_id",dtlDao.getIostorinvdtl_id()); + jsonDisParam.put("iostorinv_id",dtlDao.getIostorinv_id()); + disList.add(updateDis(jsonDisParam)); + + // 更新明细 + dtlDao.setBill_status(IOSEnum.BILL_STATUS.code("分配完")); + dtlDao.setAssign_qty(dtlDao.getUnassign_qty()); + dtlDao.setUnassign_qty(BigDecimal.valueOf(0)); + } else { + /* + * 无批次:根据物料和销售订单找库存 + */ + // 未分配重量 + double unassign_qty = dtlDao.getUnassign_qty().doubleValue(); + // 已分配重量 + double assign_qty = 0.00; + + // 符合条件的集合 + List ivtDaoList = ivtList.stream() + .filter(row -> row.getString("material_id").equals(dtlDao.getMaterial_id()) + && row.getString("sale_order_name").equals(dtlDao.getSource_bill_code()) + ) + .collect(Collectors.toList()); + + if (ObjectUtil.isEmpty(ivtDaoList)) + throw new BadRequestException("销售订单:"+dtlDao.getSource_bill_code()+"无可用库存!"); + + while (unassign_qty > 0) { + + if (ivtDaoList.size() == 0) + throw new BadRequestException("销售订单:"+dtlDao.getSource_bill_code()+"库存不足!"); + + // 找出相同箱号的子卷 + JSONObject jsonDis = ivtDaoList.get(0); + List boxList = ivtDaoList.stream() + .filter(row -> row.getString("box_no").equals(jsonDis.getString("box_no"))) + .collect(Collectors.toList()); + + boxList.forEach(row -> { + ivtDaoList.remove(row); + + row.put("iostorinvdtl_id",dtlDao.getIostorinvdtl_id()); + row.put("iostorinv_id",dtlDao.getIostorinv_id()); + disList.add(updateDis(row)); + }); + + // 减去未分配重量 + double qty = boxList.stream() + .map(row -> row.getDoubleValue("plan_qty")) + .reduce(Double::sum) + .orElse(0.00); + + unassign_qty = NumberUtil.sub(unassign_qty, qty); + + // 增加已分配重量 + assign_qty = NumberUtil.add(assign_qty,qty); + } + + // 更新明细 + dtlDao.setBill_status(IOSEnum.BILL_STATUS.code("分配完")); + dtlDao.setAssign_qty(BigDecimal.valueOf(assign_qty)); + dtlDao.setUnassign_qty(BigDecimal.valueOf(0)); + } + } + + // 插入分配明细 + iStIvtIostorinvdisService.insetDis(disList); + + // 锁住点位 + String pointCode_in = disList.stream() + .map(row -> row.getString("point_code")) + .distinct() + .collect(Collectors.joining("','")); + + List pointDaoList = iSchBasePointService.list( + new QueryWrapper().lambda() + .in(SchBasePoint::getPoint_code, "('" + pointCode_in + "')") + ); + + iSchBasePointService.lockPoint(pointDaoList,IOSEnum.LOCK_TYPE.code("出库锁")); + + // 更新明细状态 + iStIvtIostorinvdtlService.updateBatchById(dtlDaoList); + + // 更新主表状态 + this.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinv::getUpdate_optid,SecurityUtils.getCurrentUserId()) + .set(StIvtIostorinv::getUpdate_optname,SecurityUtils.getCurrentNickName()) + .set(StIvtIostorinv::getUpdate_time,DateUtil.now()) + .set(StIvtIostorinv::getDis_optid, SecurityUtils.getCurrentUserId()) + .set(StIvtIostorinv::getDis_optname,SecurityUtils.getCurrentNickName()) + .set(StIvtIostorinv::getDis_time,DateUtil.now()) + .eq(StIvtIostorinv::getIostorinv_id, whereJson.getString("iostorinv_id")) + ); + + updateMstStatus(whereJson.getString("iostorinv_id")); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void allCancel(JSONObject whereJson) { + // 查出已分配的明细 + List dtlDaoList = new ArrayList<>(); + + // 判断是全部取消还是取消一条 + if (ObjectUtil.isEmpty(whereJson.getString("iostorinvdtl_id"))) { + dtlDaoList = iStIvtIostorinvdtlService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdtl::getIostorinv_id, whereJson.getString("iostorinv_id")) + .in(StIvtIostorinvdtl::getBill_status, IOSEnum.BILL_STATUS.code("分配完"), IOSEnum.BILL_STATUS.code("分配中")) + ); + } else { + dtlDaoList = iStIvtIostorinvdtlService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdtl::getIostorinv_id, whereJson.getString("iostorinv_id")) + .eq(StIvtIostorinvdtl::getIostorinvdtl_id, whereJson.getString("iostorinvdtl_id")) + .in(StIvtIostorinvdtl::getBill_status, IOSEnum.BILL_STATUS.code("分配完"), IOSEnum.BILL_STATUS.code("分配中")) + ); + } + + // 查询出所有分配明细 + String id_in = dtlDaoList.stream() + .map(row -> row.getIostorinv_id().toString()) + .collect(Collectors.joining("','")); + + List disDaoList = iStIvtIostorinvdisService.list( + new QueryWrapper().lambda() + .in(StIvtIostorinvdis::getIostorinvdtl_id, "('" + id_in + "')") + ); + + // 判断是否有任务存在 + boolean is_task = disDaoList.stream() + .anyMatch(row -> ObjectUtil.isNotEmpty(row.getTask_id())); + + if (is_task) throw new BadRequestException("已生成任务不可取消分配!"); + + // 解锁点位 + String pointCode_in = disDaoList.stream() + .map(StIvtIostorinvdis::getStruct_code) + .distinct() + .collect(Collectors.joining("','")); + + List pointDaoList = iSchBasePointService.list( + new QueryWrapper().lambda() + .in(SchBasePoint::getPoint_code, "('" + pointCode_in + "')") + ); + iSchBasePointService.lockPoint(pointDaoList,IOSEnum.LOCK_TYPE.code("未锁定")); + + // 删除分配明细 + iStIvtIostorinvdisService.remove( + new QueryWrapper().lambda() + .in(StIvtIostorinvdis::getIostorinvdtl_id, "('" + id_in + "')") + ); + + // 更新明细状态、数量 + dtlDaoList.forEach(row -> { + row.setUnassign_qty(row.getPlan_qty()); + row.setAssign_qty(BigDecimal.valueOf(0)); + row.setBill_status(IOSEnum.BILL_STATUS.code("生成")); + }); + + iStIvtIostorinvdtlService.updateBatchById(dtlDaoList); + + // 更新主表状态 + updateMstStatus(whereJson.getString("iostorinv_id")); + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void allSetPoint(JSONObject whereJson) { + // 判断主表状态是否为分配完 + StIvtIostorinv mstDao = this.getById(whereJson.getString("iostorinv_id")); + + if (!mstDao.getBill_status().equals(IOSEnum.BILL_STATUS.code("分配完"))) + throw new BadRequestException("状态不为分配完!"); + + // 查询所有分配明细:分配状态为未生成 + List disDaoList = iStIvtIostorinvdisService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdis::getWork_status, IOSEnum.WORK_STATUS.code("未生成")) + .eq(StIvtIostorinvdis::getIostorinv_id, whereJson.getString("iostorinv_id")) + ); + + // 生成任务 + + // 下发任务 + + // 更新分配明细 + disDaoList.forEach(row -> { + row.setWork_status(IOSEnum.WORK_STATUS.code("生成")); + }); + iStIvtIostorinvdisService.updateBatchById(disDaoList); + } + + @Override + public JSONArray getIosDisTask(JSONObject whereJson) { + return iStIvtIostorinvdisService.getIosDisTask(whereJson); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void issueTask(JSONObject whereJson) { + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void confirmTask(JSONObject whereJson) { + // 更新任务为完成 + iSchBaseTaskService.update( + new UpdateWrapper().lambda() + .set(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getTask_id, whereJson.getString("task_id")) + ); + + // 更新分配明细状态 + iStIvtIostorinvdisService.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinvdis::getWork_status, IOSEnum.WORK_STATUS.code("完成")) + .eq(StIvtIostorinvdis::getTask_id, whereJson.getString("task_id")) + ); + + // 更新明细状态 + updateDtlStatus(whereJson.getString("iostorinvdtl_id")); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void confirm(JSONObject whereJson) { + StIvtIostorinv mstDao = this.getById(whereJson.getString("iostorinv_id")); + + // 调用方法 + updateIvt(mstDao.getIostorinv_id()); + } + + /** + * 组织主表数据 + * @param mstDao / + * @param whereJson / + */ + private void updateMst(StIvtIostorinv mstDao, JSONObject whereJson) { + mstDao.setBuss_type(whereJson.getString("bill_type")); + mstDao.setBill_type(whereJson.getString("bill_type")); + mstDao.setBiz_date(whereJson.getString("biz_date").substring(0,10)); + mstDao.setStor_id(whereJson.getString("stor_id")); + mstDao.setStor_code(whereJson.getString("stor_code")); + mstDao.setStor_name(whereJson.getString("stor_name")); + mstDao.setSource_id(whereJson.getString("source_id")); + mstDao.setSource_name(whereJson.getString("source_name")); + mstDao.setSource_type(whereJson.getString("source_type")); + mstDao.setTotal_qty(whereJson.getBigDecimal("total_qty")); + mstDao.setDetail_count(whereJson.getBigDecimal("detail_count")); + mstDao.setRemark(whereJson.getString("remark")); + mstDao.setSyscompanyid("1"); + mstDao.setSysdeptid("1"); + mstDao.setIs_delete("0"); + mstDao.setIs_upload("0"); + mstDao.setIs_writeoff("0"); + mstDao.setUpload_mes("0"); + mstDao.setUpload_sap("0"); + } + + /** + * 组织分配明细 + * @param jsonDisParam / + * @return JSONObject + */ + private JSONObject updateDis(JSONObject jsonDisParam) { + JSONObject result = new JSONObject(); + result.put("iostorinv_id", jsonDisParam.getString("iostorinv_id")); + result.put("iostorinvdtl_id", jsonDisParam.getString("iostorinvdtl_id")); + result.put("sect_id", jsonDisParam.getString("sect_id")); + result.put("sect_code", jsonDisParam.getString("sect_code")); + result.put("sect_name", jsonDisParam.getString("sect_name")); + result.put("struct_id", jsonDisParam.getString("struct_id")); + result.put("struct_code", jsonDisParam.getString("struct_code")); + result.put("struct_name", jsonDisParam.getString("struct_name")); + result.put("material_id", jsonDisParam.getString("material_id")); + result.put("pcsn", jsonDisParam.getString("pcsn")); + result.put("quality_scode", jsonDisParam.getString("quality_scode")); + result.put("storagevehicle_id", jsonDisParam.getString("storagevehicle_id")); + result.put("storagevehicle_code", jsonDisParam.getString("storagevehicle_code")); + result.put("qty_unit_id", jsonDisParam.getString("qty_unit_id")); + result.put("qty_unit_name", jsonDisParam.getString("qty_unit_name")); + result.put("plan_qty", jsonDisParam.getString("plan_qty")); + result.put("real_qty", jsonDisParam.getString("real_qty")); + result.put("box_no", jsonDisParam.getString("box_no")); + return result; + } + + /** + * 更新主表状态 + * @param iostorinv_id 、 + */ + private void updateMstStatus(String iostorinv_id) { + StIvtIostorinv mstDao = this.getById(iostorinv_id); + + // 查询所有明细是否都为完成、分配中、分配完 + List dtlDaoList = iStIvtIostorinvdtlService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdtl::getIostorinv_id, iostorinv_id) + ); + + boolean is_confirm = dtlDaoList.stream() + .allMatch(row -> row.getBill_status().equals(IOSEnum.BILL_STATUS.code("完成"))); + + boolean is_div = dtlDaoList.stream() + .allMatch(row -> row.getBill_status().equals(IOSEnum.BILL_STATUS.code("分配完")) + || row.getBill_status().equals(IOSEnum.BILL_STATUS.code("分配完")) + ); + + boolean is_create = dtlDaoList.stream() + .allMatch(row -> row.getBill_status().equals(IOSEnum.BILL_STATUS.code("生成"))); + + if (is_confirm) { + // 都为完成 + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("完成")); + } else { + if (is_div) { + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("分配完")); + } else { + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("分配中")); + } + } + + if (is_create) { + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("生成")); + } + + this.updateById(mstDao); + + if (is_confirm) updateIvt(mstDao.getIostorinv_id()); + } + + /** + * 更新明细状态 + * @param iostorinvdtl_id 、 + */ + private void updateDtlStatus(String iostorinvdtl_id) { + + StIvtIostorinvdtl dtlDao = iStIvtIostorinvdtlService.getById(iostorinvdtl_id); + + // 查询所有分配明细是否都为完成 + List disDao = iStIvtIostorinvdisService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdis::getIostorinvdtl_id, iostorinvdtl_id) + ); + + // 判断是否都为完成 + boolean is_confirm = disDao.stream() + .allMatch(row -> row.getWork_status().equals(IOSEnum.WORK_STATUS.code("完成"))); + + if (is_confirm) { + // 更新明细为完成 + dtlDao.setBill_status(IOSEnum.BILL_STATUS.code("完成")); + iStIvtIostorinvdtlService.updateById(dtlDao); + + updateMstStatus(dtlDao.getIostorinv_id()); + } + } + + /** + * 更新库存 + * @param iostorinv_id 、 + */ + private void updateIvt(String iostorinv_id) { + // 更新主表状态为完成 + StIvtIostorinv mstDao = this.getById(iostorinv_id); + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("完成")); + mstDao.setConfirm_optid(SecurityUtils.getCurrentUserId()); + mstDao.setConfirm_optname(SecurityUtils.getCurrentNickName()); + mstDao.setConfirm_time(DateUtil.now()); + this.updateById(mstDao); + + // 更新库存 + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java new file mode 100644 index 0000000..c84b521 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java @@ -0,0 +1,651 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.CodeUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.IdUtil; +import org.nl.wms.pdm.enums.SUBEnum; +import org.nl.wms.pdm.subpackage.service.IPdmBiSubpackagerelationService; +import org.nl.wms.pdm.subpackage.service.dao.PdmBiSubpackagerelation; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.storage_manage.database.dao.StIvtBsrealstorattr; +import org.nl.wms.storage_manage.database.dao.StIvtStructattr; +import org.nl.wms.storage_manage.database.mapper.StIvtStructattrMapper; +import org.nl.wms.storage_manage.database.service.IStIvtBsrealstorattrService; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvService; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdisService; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdtlService; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdis; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdtl; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.mapper.StIvtIostorinvMapper; +import org.nl.wms.storage_manage.ios.service.iostorInv.dto.IostorInvQuery; +import org.nl.wms.storage_manage.ios.util.IosInRuleService; +import org.nl.wms.storage_manage.ios.util.dto.RuleDto; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + *

+ * 出入库单主表 服务实现类 + *

+ * + * @author generator + * @since 2023-11-10 + */ +@Service +public class StIvtIostorinvServiceImpl extends ServiceImpl implements IStIvtIostorinvService { + + /** + * 子卷包装关系服务 + */ + @Autowired + private IPdmBiSubpackagerelationService iPdmBiSubpackagerelationService; + + /** + * 出入库明细服务 + */ + @Autowired + private IStIvtIostorinvdtlService iStIvtIostorinvdtlService; + + /** + * 出入库分配明细服务 + */ + @Autowired + private IStIvtIostorinvdisService iStIvtIostorinvdisService; + + /** + * 入库分配规则服务 + */ + @Autowired + private IosInRuleService iosInRuleService; + + /** + * 点位服务 + */ + @Autowired + private ISchBasePointService iSchBasePointService; + + /** + * 任务服务 + */ + @Autowired + private ISchBaseTaskService iSchBaseTaskService; + + /** + * 仓库服务 + */ + @Autowired + private IStIvtBsrealstorattrService iStIvtBsrealstorattrService; + + /** + * 仓位mapper服务 + */ + @Autowired + private StIvtStructattrMapper stIvtStructattrMapper; + + @Override + public Object pageQuery(IostorInvQuery query, PageQuery pageQuery) { + Page page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); + page.setOrderBy("input_time DESC"); + List mst_detail = this.baseMapper.getPageQuery(query, pageQuery); + + TableDataInfo build = TableDataInfo.build(mst_detail); + build.setTotalElements(page.getTotal()); + return build; + } + + @Override + public JSONArray queryBoxMater(JSONObject whereJson) { + JSONArray data = whereJson.getJSONArray("data"); + + List resultList = iPdmBiSubpackagerelationService.list( + new QueryWrapper().lambda() + .in(PdmBiSubpackagerelation::getPackage_box_sn, + data.stream() + .map(row -> JSON.parseObject(JSONObject.toJSONString(row))) + .map(row -> row.getString("package_box_sn")) + .collect(Collectors.toSet()) + ) + .orderByAsc(PdmBiSubpackagerelation::getPackage_box_sn) + ); + + return JSONArray.parseArray(JSONObject.toJSONString(resultList)); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create(JSONObject whereJson) { + + // 组织主表数据 + StIvtIostorinv mstDao = StIvtIostorinv.builder() + .iostorinv_id(IdUtil.getStringId()) + .bill_code(CodeUtil.getNewCode("IN_IVN_CODE")) + .bill_status(IOSEnum.BILL_STATUS.code("生成")) + .create_mode(IOSEnum.CREATE_MODE.code("PC产生")) + .io_type(IOSEnum.IO_TYPE.code("入库")) + .input_optid(SecurityUtils.getCurrentUserId()) + .input_optname(SecurityUtils.getCurrentNickName()) + .input_time(DateUtil.now()) + .build(); + + updateMst(mstDao, whereJson); + + this.save(mstDao); + + // 组织插入明细、分配的数据 + JSONArray tableData = whereJson.getJSONArray("tableData"); + + ArrayList dtlList = new ArrayList<>(); + for (int i = 0; i < tableData.size(); i++) { + JSONObject json = tableData.getJSONObject(i); + + JSONObject dtl = new JSONObject(); + dtl.put("material_code",json.getString("product_name")); + dtl.put("pcsn",json.getString("container_name")); + dtl.put("plan_qty",json.getString("net_weight")); + dtl.put("box_no",json.getString("package_box_sn")); + dtlList.add(dtl); + } + + // 插入明细 + iStIvtIostorinvdtlService.insertDtl(mstDao.getIostorinv_id(), dtlList); + + // 校验木箱是否已经入库 + List disList = iStIvtIostorinvdisService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdis::getIostorinv_id, mstDao.getIostorinv_id()) + ); + + List boxList = disList.stream() + .map(StIvtIostorinvdis::getBox_no) + .collect(Collectors.toList()); + + List attrList = stIvtStructattrMapper.queryBatch(boxList); + + if (ObjectUtil.isNotEmpty(attrList)) { + String result = attrList.stream().map(StIvtStructattr::getStoragevehicle_code).collect(Collectors.joining("','")); + throw new BadRequestException( result + "已经入库,请核查数据!"); + } + + // 更新子卷包装关系 + iPdmBiSubpackagerelationService.update( + new UpdateWrapper().lambda() + .set(PdmBiSubpackagerelation::getStatus, SUBEnum.STATUS.code("包装")) + .in(PdmBiSubpackagerelation::getPackage_box_sn, boxList) + ); + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(JSONObject whereJson) { + StIvtIostorinv mstDao = this.getById(whereJson.getString("iostorinv_id")); + + // 组织主表数据 + updateMst(mstDao, whereJson); + + mstDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + mstDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + mstDao.setUpdate_time(DateUtil.now()); + this.updateById(mstDao); + + // 组织插入明细、分配的数据 + JSONArray tableData = whereJson.getJSONArray("tableData"); + + ArrayList dtlList = new ArrayList<>(); + for (int i = 0; i < tableData.size(); i++) { + JSONObject json = tableData.getJSONObject(i); + + JSONObject dtl = new JSONObject(); + dtl.put("material_code",json.getString("product_name")); + dtl.put("pcsn",json.getString("container_name")); + dtl.put("plan_qty",json.getString("net_weight")); + dtl.put("box_no",json.getString("package_box_sn")); + dtlList.add(dtl); + } + + // 插入明细 + iStIvtIostorinvdtlService.insertDtl(mstDao.getIostorinv_id(), dtlList); + + // 校验木箱是否已经入库 + List disList = iStIvtIostorinvdisService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdis::getIostorinv_id, mstDao.getIostorinv_id()) + ); + + List boxList = disList.stream() + .map(StIvtIostorinvdis::getBox_no) + .collect(Collectors.toList()); + + List attrList = stIvtStructattrMapper.queryBatch(boxList); + + if (ObjectUtil.isNotEmpty(attrList)) { + String result = attrList.stream().map(StIvtStructattr::getStoragevehicle_code).collect(Collectors.joining("','")); + throw new BadRequestException( result + "已经入库,请核查数据!"); + } + + // 更新子卷包装关系 + iPdmBiSubpackagerelationService.update( + new UpdateWrapper().lambda() + .set(PdmBiSubpackagerelation::getStatus, SUBEnum.STATUS.code("包装")) + .in(PdmBiSubpackagerelation::getPackage_box_sn, boxList) + ); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(Long[] ids) { + for (Long id : ids) { + this.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinv::getIs_delete, IOSEnum.IS_NOTANDYES.code("是")) + .eq(StIvtIostorinv::getIostorinv_id, id) + ); + + // 更新子卷包装关系 + List disList = iStIvtIostorinvdisService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdis::getIostorinv_id, id) + ); + + List boxList = disList.stream() + .map(StIvtIostorinvdis::getBox_no) + .collect(Collectors.toList()); + + iPdmBiSubpackagerelationService.update( + new UpdateWrapper().lambda() + .set(PdmBiSubpackagerelation::getStatus, SUBEnum.STATUS.code("包装")) + .in(PdmBiSubpackagerelation::getPackage_box_sn, boxList) + ); + } + } + + @Override + public JSONArray getInDtl(JSONObject whereJson) { + + // 查询明细 + List dtlDaoList = iStIvtIostorinvdtlService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdtl::getIostorinv_id, whereJson.getString("iostorinv_id")) + ).stream() + .map(row -> JSON.parseObject(JSONObject.toJSONString(row))) + .collect(Collectors.toList()); + + dtlDaoList.forEach(row -> { + row.put("package_box_sn",row.getString("box_no")); + }); + + // 调用查询子卷包装关系服务 + JSONObject param = new JSONObject(); + param.put("data",JSON.parseArray(JSONArray.toJSONString(dtlDaoList))); + + return queryBoxMater(param); + } + + @Override + public JSONArray getIosDtl(JSONObject whereJson) { + return iStIvtIostorinvdtlService.getIosDtl(whereJson); + } + + @Override + public JSONArray getIosDis(JSONObject whereJson) { + return iStIvtIostorinvdisService.getIosDis(whereJson); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void autoDivPoint(JSONObject whereJson) { + // 明细 + JSONObject dtl_row = whereJson.getJSONObject("dtl_row"); + + // 校验是否需要分配 + if (!dtl_row.getString("bill_status").equals(IOSEnum.BILL_STATUS.code("生成"))) + throw new BadRequestException("此明细不需要分配!"); + + // 找到一个可用点位 + + SchBasePoint pointDao = new SchBasePoint(); + if (ObjectUtil.isEmpty(whereJson.getString("struct_code"))) { + + JSONObject param = new JSONObject(); + param.put("sect_id",whereJson.getString("sect_id")); + param.put("stor_id",whereJson.getString("stor_id")); + param.put("type", RuleDto.PRODUCTION_IN_1); + + pointDao = iosInRuleService.getOnePoint(param); + } else { + pointDao = iSchBasePointService.getById(whereJson.getString("point_code")); + } + + if (ObjectUtil.isEmpty(pointDao)) throw new BadRequestException("未找到可用点位!"); + + // 更新所有分配明细 + iStIvtIostorinvdisService.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinvdis::getSect_id, "1") + .set(StIvtIostorinvdis::getSect_code, pointDao.getRegion_code()) + .set(StIvtIostorinvdis::getSect_name, pointDao.getRegion_name()) + .set(StIvtIostorinvdis::getStruct_id, "1") + .set(StIvtIostorinvdis::getStruct_code, pointDao.getPoint_code()) + .set(StIvtIostorinvdis::getStruct_name, pointDao.getPoint_name()) + .eq(StIvtIostorinvdis::getIostorinvdtl_id, dtl_row.getString("iostorinvdtl_id")) + ); + + + // 更新同一木箱明细状态 + iStIvtIostorinvdtlService.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinvdtl::getBill_status, IOSEnum.BILL_STATUS.code("分配完")) + .eq(StIvtIostorinvdtl::getIostorinv_id, dtl_row.getString("iostorinv_id")) + .eq(StIvtIostorinvdtl::getBox_no, dtl_row.getString("box_no")) + ); + + // 更新主表状态 + this.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinv::getUpdate_optid,SecurityUtils.getCurrentUserId()) + .set(StIvtIostorinv::getUpdate_optname,SecurityUtils.getCurrentNickName()) + .set(StIvtIostorinv::getUpdate_time,DateUtil.now()) + .set(StIvtIostorinv::getDis_optid, SecurityUtils.getCurrentUserId()) + .set(StIvtIostorinv::getDis_optname,SecurityUtils.getCurrentNickName()) + .set(StIvtIostorinv::getDis_time,DateUtil.now()) + .eq(StIvtIostorinv::getIostorinv_id, whereJson.getString("iostorinv_id")) + ); + updateMstStatus(whereJson.getString("iostorinv_id")); + + // 锁定点位/解锁点位 + ArrayList paramList = new ArrayList<>(); + paramList.add(pointDao); + iSchBasePointService.lockPoint(paramList,IOSEnum.LOCK_TYPE.code("入库锁")); + + // 更新库存 + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void unDivPoint(JSONObject whereJson) { + + // 校验是否需要分配 + if (!whereJson.getString("bill_status").equals(IOSEnum.BILL_STATUS.code("分配完"))) + throw new BadRequestException("此明细不需要取消分配!"); + + // 点位编码 + String point_code = iStIvtIostorinvdisService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdis::getIostorinvdtl_id, whereJson.getString("iostorinvdtl_id")) + ).get(0).getStruct_code(); + + + // 更新分配明细 + iStIvtIostorinvdisService.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinvdis::getSect_id, "") + .set(StIvtIostorinvdis::getSect_code, "") + .set(StIvtIostorinvdis::getSect_name, "") + .set(StIvtIostorinvdis::getStruct_id, "") + .set(StIvtIostorinvdis::getStruct_code, "") + .set(StIvtIostorinvdis::getStruct_name, "") + .eq(StIvtIostorinvdis::getIostorinvdtl_id, whereJson.getString("iostorinvdtl_id")) + ); + + // 更新同一木箱明细状态 + iStIvtIostorinvdtlService.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinvdtl::getBill_status, IOSEnum.BILL_STATUS.code("生成")) + .eq(StIvtIostorinvdtl::getIostorinv_id, whereJson.getString("iostorinv_id")) + .eq(StIvtIostorinvdtl::getBox_no, whereJson.getString("box_no")) + ); + + // 更新主表状态 + this.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinv::getDis_optid, "") + .set(StIvtIostorinv::getDis_optname,"") + .set(StIvtIostorinv::getDis_time,"") + .eq(StIvtIostorinv::getIostorinv_id, whereJson.getString("iostorinv_id")) + ); + updateMstStatus(whereJson.getString("iostorinv_id")); + + // 锁定点位/解锁点位 + ArrayList paramList = new ArrayList<>(); + paramList.add(iSchBasePointService.getById(point_code)); + iSchBasePointService.lockPoint(paramList,IOSEnum.LOCK_TYPE.code("未锁定")); + + // 更新库存 + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void setPoint(JSONObject whereJson) { + + // 校验入库点 + SchBasePoint pointDao = iSchBasePointService.getOne( + new QueryWrapper().lambda() + .eq(SchBasePoint::getPoint_code, whereJson.getString("point_code")) + ); + if (ObjectUtil.isEmpty(pointDao)) throw new BadRequestException("入库点不存在!"); + + // 生成任务 + + // 更新分配明细 + iStIvtIostorinvdisService.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinvdis::getPoint_id, pointDao.getPoint_code()) + .set(StIvtIostorinvdis::getWork_status, IOSEnum.WORK_STATUS.code("生成")) + .set(StIvtIostorinvdis::getTask_id, "") + .eq(StIvtIostorinvdis::getIostorinvdtl_id, whereJson.getString("iostorinvdtl_id")) + ); + + } + + @Override + public JSONArray getIosDisTask(JSONObject whereJson) { + return iStIvtIostorinvdisService.getIosDisTask(whereJson); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delTask(JSONObject whereJson) { + // 校验任务是否为生成 + SchBaseTask taskDao = iSchBaseTaskService.getById(whereJson.getString("task_id")); + if (!taskDao.getTask_status().equals("20")) throw new BadRequestException("请检查任务状态!"); + + // 删除任务 + taskDao.setIs_delete(true); + iSchBaseTaskService.updateById(taskDao); + + // 更新分配明细 + iStIvtIostorinvdisService.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinvdis::getWork_status, IOSEnum.WORK_STATUS.code("未生成")) + .set(StIvtIostorinvdis::getTask_id, "") + .set(StIvtIostorinvdis::getPoint_id, "") + .eq(StIvtIostorinvdis::getIostorinvdtl_id, whereJson.getString("iostorinvdtl_id")) + ); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void issueTask(JSONObject whereJson) { + // 校验任务是否为生成 + SchBaseTask taskDao = iSchBaseTaskService.getById(whereJson.getString("task_id")); + if (!taskDao.getTask_status().equals("20")) throw new BadRequestException("请检查任务状态!"); + + // 调用下发方法 + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void confirmTask(JSONObject whereJson) { + // 更新任务为完成 + iSchBaseTaskService.update( + new UpdateWrapper().lambda() + .set(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getTask_id, whereJson.getString("task_id")) + ); + + // 更新分配明细状态 + iStIvtIostorinvdisService.update( + new UpdateWrapper().lambda() + .set(StIvtIostorinvdis::getWork_status, IOSEnum.WORK_STATUS.code("完成")) + .eq(StIvtIostorinvdis::getTask_id, whereJson.getString("task_id")) + ); + + // 更新明细状态 + updateDtlStatus(whereJson.getString("iostorinvdtl_id")); + + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void confirm(JSONObject whereJson) { + StIvtIostorinv mstDao = this.getById(whereJson.getString("iostorinv_id")); + + // 调用方法 + updateIvt(mstDao.getIostorinv_id()); + } + + /** + * 更新主表状态 + * @param iostorinv_id 、 + */ + private void updateMstStatus(String iostorinv_id) { + StIvtIostorinv mstDao = this.getById(iostorinv_id); + + // 查询所有明细是否都为完成、分配中、分配完 + List dtlDaoList = iStIvtIostorinvdtlService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdtl::getIostorinv_id, iostorinv_id) + ); + + + boolean is_confirm = dtlDaoList.stream() + .allMatch(row -> row.getBill_status().equals(IOSEnum.BILL_STATUS.code("完成"))); + + boolean is_div = dtlDaoList.stream() + .allMatch(row -> row.getBill_status().equals(IOSEnum.BILL_STATUS.code("分配完")) + || row.getBill_status().equals(IOSEnum.BILL_STATUS.code("分配完")) + ); + + boolean is_create = dtlDaoList.stream() + .allMatch(row -> row.getBill_status().equals(IOSEnum.BILL_STATUS.code("生成"))); + + if (is_confirm) { + // 都为完成 + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("完成")); + } else { + if (is_div) { + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("分配完")); + } else { + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("分配中")); + } + } + + if (is_create) { + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("生成")); + } + + this.updateById(mstDao); + + if (is_confirm) updateIvt(mstDao.getIostorinv_id()); + } + + /** + * 更新明细状态 + * @param iostorinvdtl_id 、 + */ + private void updateDtlStatus(String iostorinvdtl_id) { + + StIvtIostorinvdtl dtlDao = iStIvtIostorinvdtlService.getById(iostorinvdtl_id); + + // 查询所有分配明细是否都为完成 + List disDao = iStIvtIostorinvdisService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdis::getIostorinvdtl_id, iostorinvdtl_id) + ); + + // 判断是否都为完成 + boolean is_confirm = disDao.stream() + .allMatch(row -> row.getWork_status().equals(IOSEnum.WORK_STATUS.code("完成"))); + + if (is_confirm) { + // 更新明细为完成 + dtlDao.setBill_status(IOSEnum.BILL_STATUS.code("完成")); + iStIvtIostorinvdtlService.updateById(dtlDao); + + updateMstStatus(dtlDao.getIostorinv_id()); + } + } + + /** + * 更新库存 + * @param iostorinv_id 、 + */ + private void updateIvt(String iostorinv_id) { + // 更新主表状态为完成 + StIvtIostorinv mstDao = this.getById(iostorinv_id); + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("完成")); + mstDao.setConfirm_optid(SecurityUtils.getCurrentUserId()); + mstDao.setConfirm_optname(SecurityUtils.getCurrentNickName()); + mstDao.setConfirm_time(DateUtil.now()); + this.updateById(mstDao); + + // 更新库存 + } + + /** + * 组织主表数据 + * @param mstDao / + * @param whereJson / + */ + private void updateMst(StIvtIostorinv mstDao, JSONObject whereJson) { + mstDao.setBuss_type(whereJson.getString("bill_type")); + mstDao.setBill_type(whereJson.getString("bill_type")); + mstDao.setBiz_date(whereJson.getString("biz_date").substring(0,10)); + 仓库: { + StIvtBsrealstorattr storDao = iStIvtBsrealstorattrService.getById(whereJson.getLongValue("stor_id")); + mstDao.setStor_id(storDao.getStor_id()); + mstDao.setStor_code(storDao.getStor_code()); + mstDao.setStor_name(storDao.getStor_name()); + } + mstDao.setSource_id(whereJson.getString("source_id")); + mstDao.setSource_name(whereJson.getString("source_name")); + mstDao.setSource_type(whereJson.getString("source_type")); + mstDao.setTotal_qty(whereJson.getBigDecimal("total_qty")); + mstDao.setDetail_count(whereJson.getBigDecimal("detail_count")); + mstDao.setRemark(whereJson.getString("remark")); + mstDao.setSyscompanyid("1"); + mstDao.setSysdeptid("1"); + mstDao.setIs_delete("0"); + mstDao.setIs_upload("0"); + mstDao.setIs_writeoff("0"); + mstDao.setUpload_mes("0"); + mstDao.setUpload_sap("0"); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvdisServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvdisServiceImpl.java new file mode 100644 index 0000000..3b70d74 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvdisServiceImpl.java @@ -0,0 +1,81 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.impl; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.config.IdUtil; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdisService; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdis; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.mapper.StIvtIostorinvdisMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + +/** + *

+ * 出入库单分配表 服务实现类 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Service +public class StIvtIostorinvdisServiceImpl extends ServiceImpl implements IStIvtIostorinvdisService { + + @Override + @Transactional(rollbackFor = Exception.class) + public void insetDis(List collect) { + + ArrayList disDaoList = new ArrayList<>(); + + for (int i = 0; i < collect.size(); i++) { + JSONObject json = collect.get(i); + + StIvtIostorinvdis disDao = StIvtIostorinvdis.builder() + .iostorinvdis_id(IdUtil.getStringId()) + .iostorinv_id(json.getString("iostorinv_id")) + .iostorinvdtl_id(json.getString("iostorinvdtl_id")) + .seq_no(BigDecimal.valueOf(i)) + .sect_id(json.getString("sect_id")) + .sect_code(json.getString("sect_code")) + .sect_name(json.getString("sect_name")) + .struct_id(json.getString("struct_id")) + .struct_code(json.getString("struct_code")) + .struct_name(json.getString("struct_name")) + .material_id(json.getString("material_id")) + .pcsn(json.getString("pcsn")) + .quality_scode(json.getString("quality_scode")) + .work_status(IOSEnum.WORK_STATUS.code("未生成")) + .task_id(json.getString("task_id")) + .storagevehicle_id(json.getString("storagevehicle_id")) + .storagevehicle_code(json.getString("storagevehicle_code")) + .is_issued("0") + .qty_unit_id(json.getString("qty_unit_id")) + .qty_unit_name(json.getString("qty_unit_name")) + .plan_qty(json.getBigDecimal("plan_qty")) + .real_qty(json.getBigDecimal("real_qty")) + .box_no(json.getString("box_no")) + .build(); + + disDaoList.add(disDao); + } + + this.saveBatch(disDaoList); + } + + @Override + public JSONArray getIosDis(JSONObject whereJson) { + return JSON.parseArray(JSONArray.toJSONString(this.baseMapper.getIosDis(whereJson))); + + } + + @Override + public JSONArray getIosDisTask(JSONObject whereJson) { + return JSON.parseArray(JSONArray.toJSONString(this.baseMapper.getIosDisTask(whereJson))); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvdtlServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvdtlServiceImpl.java new file mode 100644 index 0000000..6f5b5fe --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvdtlServiceImpl.java @@ -0,0 +1,137 @@ +package org.nl.wms.storage_manage.ios.service.iostorInv.impl; + +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.common.exception.BadRequestException; +import org.nl.config.IdUtil; +import org.nl.wms.basedata.material.dao.MdMeMaterialbase; +import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService; +import org.nl.wms.storage_manage.ios.enums.IOSEnum; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvService; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdisService; +import org.nl.wms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdtlService; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdtl; +import org.nl.wms.storage_manage.ios.service.iostorInv.dao.mapper.StIvtIostorinvdtlMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + *

+ * 出入库单明细表 服务实现类 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Service +public class StIvtIostorinvdtlServiceImpl extends ServiceImpl implements IStIvtIostorinvdtlService { + + /** + * 物料服务 + */ + @Autowired + private ImdMeMaterialbaseService materialBaseService; + + /** + * 出入库主表服务 + */ + @Autowired + private IStIvtIostorinvService iStIvtIostorinvService; + + /** + * 出入库分配服务 + */ + @Autowired + private IStIvtIostorinvdisService iStIvtIostorinvdisService; + + @Override + @Transactional(rollbackFor = Exception.class) + public ArrayList insertDtl(String iostorinv_id, List tableDataList) { + + // 查询所有对应物料集合 + List materialList = materialBaseService.list( + new QueryWrapper().lambda() + .in(MdMeMaterialbase::getMaterial_code, + tableDataList.stream() + .map(row -> row.getString("material_code")) + .collect(Collectors.toSet()) + ) + ); + + ArrayList dtlDaoList = new ArrayList<>(); + + // 先删除 + this.remove( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdtl::getIostorinv_id, iostorinv_id) + ); + + // 插入明细 + for (int i = 0; i < tableDataList.size(); i++) { + JSONObject json = tableDataList.get(i); + + MdMeMaterialbase materDao = materialList.stream() + .filter(row -> row.getMaterial_code().equals(json.getString("material_code"))) + .findFirst().orElse(null); + if (ObjectUtil.isEmpty(materDao)) throw new BadRequestException("物料不存在:【"+json.getString("material_code") +"】"); + + StIvtIostorinvdtl dtlDao = StIvtIostorinvdtl.builder() + .iostorinvdtl_id(IdUtil.getStringId()) + .iostorinv_id(iostorinv_id) + .seq_no(BigDecimal.valueOf(i)) + .material_id(materDao.getMaterial_id()) + .pcsn(json.getString("pcsn")) + .quality_scode("00") + .bill_status(IOSEnum.BILL_STATUS.code("生成")) + .qty_unit_id("1") + .qty_unit_name("KG") + .plan_qty(json.getBigDecimal("plan_qty")) + .source_billdtl_id(json.getString("source_billdtl_id")) + .source_bill_type(json.getString("source_bill_type")) + .source_bill_code(json.getString("source_bill_code")) + .source_bill_table(json.getString("source_bill_table")) + .base_billdtl_id(json.getString("base_billdtl_id")) + .base_bill_type(json.getString("base_bill_type")) + .base_bill_code(json.getString("base_bill_code")) + .base_bill_table(json.getString("base_bill_table")) + .remark(json.getString("remark")) + .assign_qty(BigDecimal.valueOf(0)) + .unassign_qty(json.getBigDecimal("plan_qty")) + .box_no(json.getString("box_no")) + .vbeln(json.getString("vbeln")) + .posnr(json.getString("posnr")) + .width(json.getString("width")).build(); + dtlDaoList.add(dtlDao); + + } + + this.saveBatch(dtlDaoList); + + // 插入分配明细 + StIvtIostorinv mstDao = iStIvtIostorinvService.getById(iostorinv_id); + if (mstDao.getIo_type().equals(IOSEnum.IO_TYPE.code("入库"))) { + iStIvtIostorinvdisService.insetDis(dtlDaoList.stream() + .map(row -> JSON.parseObject(JSONObject.toJSONString(row))) + .collect(Collectors.toList()) + ); + } + + return dtlDaoList; + } + + @Override + public JSONArray getIosDtl(JSONObject param) { + return JSON.parseArray(JSONArray.toJSONString(this.baseMapper.getIosDtl(param))); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/IosInRuleService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/IosInRuleService.java new file mode 100644 index 0000000..b0f03d2 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/IosInRuleService.java @@ -0,0 +1,29 @@ +package org.nl.wms.storage_manage.ios.util; + +import com.alibaba.fastjson.JSONObject; +import org.nl.wms.sch.point.service.dao.SchBasePoint; + +/** + *

+ * 入库分配规则 服务类 + *

+ * + * @author generator + * @since 2023-11-10 + */ +public interface IosInRuleService{ + + /** + * 获取一个可用点位 + * @param param + * { + * sect_id: 区域, + * stor_id: 仓库, + * ...等等 + * type: 规则类型 + * } + * @return SchBasePoint:点位 + */ + SchBasePoint getOnePoint(JSONObject param); + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/IosOutRuleService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/IosOutRuleService.java new file mode 100644 index 0000000..c459529 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/IosOutRuleService.java @@ -0,0 +1,28 @@ +package org.nl.wms.storage_manage.ios.util; + +import com.alibaba.fastjson.JSONObject; + +import java.util.List; + +/** + *

+ * 出库分配规则 服务类 + *

+ * + * @author generator + * @since 2023-11-10 + */ +public interface IosOutRuleService { + + /** + * 根据仓库、库区找到可用库存 + * @param param + * { + * sect_id: 区域, + * stor_id: 仓库, + * } + * @return List :库存集合 + */ + List getCancelIvt(JSONObject param); + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/dto/RuleDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/dto/RuleDto.java new file mode 100644 index 0000000..be5335d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/dto/RuleDto.java @@ -0,0 +1,20 @@ +package org.nl.wms.storage_manage.ios.util.dto; + +/** + *

+ * 分配规则 + *

+ * + * @author generator + * @since 2023-11-16 + */ +public class RuleDto { + + /** + * 入库分配: + * 按照仓库、区域、找到一个点位 + */ + public static final String PRODUCTION_IN_1 = "in_1"; + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/impl/IosInRuleServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/impl/IosInRuleServiceImpl.java new file mode 100644 index 0000000..50af958 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/impl/IosInRuleServiceImpl.java @@ -0,0 +1,27 @@ +package org.nl.wms.storage_manage.ios.util.impl; + +import com.alibaba.fastjson.JSONObject; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.storage_manage.ios.util.IosInRuleService; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +/** + *

+ * 入库分配规则 服务实现类 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Service +public class IosInRuleServiceImpl implements IosInRuleService { + + @Override + @Transactional(rollbackFor = Exception.class) + public SchBasePoint getOnePoint(JSONObject param) { + String type = param.getString("type"); + + return new SchBasePoint(); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/impl/IosOutRuleServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/impl/IosOutRuleServiceImpl.java new file mode 100644 index 0000000..449076f --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/storage_manage/ios/util/impl/IosOutRuleServiceImpl.java @@ -0,0 +1,28 @@ +package org.nl.wms.storage_manage.ios.util.impl; + +import com.alibaba.fastjson.JSONObject; +import org.nl.wms.storage_manage.ios.util.IosOutRuleService; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.List; + +/** + *

+ * 出库分配规则 服务实现类 + *

+ * + * @author generator + * @since 2023-11-16 + */ +@Service +public class IosOutRuleServiceImpl implements IosOutRuleService { + + @Override + @Transactional(rollbackFor = Exception.class) + public List getCancelIvt(JSONObject param) { + List list = new ArrayList<>(); + return list; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/DatabaseBackup.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/DatabaseBackup.java new file mode 100644 index 0000000..6f6204b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/DatabaseBackup.java @@ -0,0 +1,58 @@ +package org.nl.wms.util; + +import java.io.IOException; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.util.Arrays; +import java.util.List; + +/** + * @Author: lyd + * @Description: 备份数据库 + * @Date: 2023/9/25 + */ +public class DatabaseBackup { + public static void main(String[] args) { + String jdbcUrl = "jdbc:mysql://localhost:3306/rtmg_lms"; + String username = "root"; + String password = "12356"; + + try { + Connection connection = DriverManager.getConnection(jdbcUrl, username, password); + // 在这里执行备份操作 + // 备份文件保存的路径 + String backupPath = "D:\\backup.sql"; + // 构建备份命令 + List command = Arrays.asList( + "mysqldump", + "--host=localhost", + "--port=3306", + "--user=" + username, + "--password=" + password, + "--result-file=" + backupPath, + "--databases", "rtmg_lms", + "--force" + ); + // 执行备份命令 + ProcessBuilder processBuilder = new ProcessBuilder(command); + Process process = processBuilder.start(); + int exitCode = process.waitFor(); + + if (exitCode == 0) { + System.out.println("备份成功!"); + } else { + System.out.println("备份失败!"); + } + connection.close(); + } catch (SQLException e) { + e.printStackTrace(); + } catch (IOException e) { + throw new RuntimeException(e); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + + } +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/MesUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/MesUtils.java new file mode 100644 index 0000000..90204f0 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/MesUtils.java @@ -0,0 +1,70 @@ +package org.nl.wms.util; + +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpRequest; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; +import org.nl.config.SpringContextHolder; +import org.nl.system.service.notice.impl.SysNoticeServiceImpl; +import org.nl.system.service.param.dao.Param; +import org.nl.system.service.param.impl.SysParamServiceImpl; +import org.nl.wms.ext.mes.service.dto.ResultForMes; +import org.nl.wms.sch.task_manage.GeneralDefinition; +import org.nl.wms.sch.task_manage.enums.NoticeTypeEnum; + +/** + * @Author: lyd + * @Description: 与MES对接的接口请求 + * @Date: 2023/9/6 + */ +@Slf4j +public class MesUtils { + /** + * 一次发单条数据 + * @param api + * @param object + * @return + * @param + */ + public static ResultForMes notifyMes(String api, T object) { + SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class); + SysNoticeServiceImpl sysNoticeService = SpringContextHolder.getBean(SysNoticeServiceImpl.class); + //判断是否连接MES系统 + Param isConnectAcs = sysParamService.findByCode(GeneralDefinition.IS_CONNECT_MES); + if (ObjectUtil.isEmpty(isConnectAcs)) { + return ResultForMes.requestRefuse("参数表中:" + GeneralDefinition.IS_CONNECT_MES + "不存在"); + } + String isConnect = isConnectAcs.getValue(); + //MES地址:127.0.0.1:8010 + Param acsUrlObj = sysParamService.findByCode(GeneralDefinition.MES_URL); + if (ObjectUtil.isEmpty(acsUrlObj)) { + return ResultForMes.requestRefuse("参数表中:" + GeneralDefinition.MES_URL + "不存在"); + } + String acsUrl = acsUrlObj.getValue(); + JSONObject result; + if (StrUtil.equals(GeneralDefinition.NO, isConnect)) { + return ResultForMes.requestRefuse("未连接MES!"); + } + String url = acsUrl + api; + log.info("下发mes的参数为:{}", object.toString()); + ResultForMes resultForMes = ResultForMes.requestSuccess(); + try { + String resultMsg = HttpRequest.post(url) + .body(JSON.toJSONString(object)) + .execute().body(); + result = JSONObject.parseObject(resultMsg); + resultForMes = JSONObject.toJavaObject(result, ResultForMes.class); + } catch (Exception e) { + String msg = e.getMessage(); + //网络不通 + log.error("连接失败:{}", msg); + // 发送通知 + sysNoticeService.createNotice("接口请求失败: " + resultForMes.getMessage(), api, NoticeTypeEnum.EXCEPTION.getCode()); + return ResultForMes.requestRefuse("网络不通,操作失败!"); + } + return resultForMes; + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/PointUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/PointUtils.java new file mode 100644 index 0000000..88b65e9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/PointUtils.java @@ -0,0 +1,111 @@ +package org.nl.wms.util; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONObject; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.SpringContextHolder; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.sch.point.service.impl.SchBasePointServiceImpl; +import org.nl.wms.sch.task_manage.GeneralDefinition; +import org.nl.wms.sch.task_manage.enums.PointStatusEnum; +import org.nl.wms.sch.task_manage.enums.TaskFinishedTypeEnum; + +/** + * @Author: lyd + * @Description: 点位工具类 + * @Date: 2023/5/17 + */ +public class PointUtils { + + /** + * 获取状态名或者类型名 + * + * @param explain + * @param label + * @return + */ + public static String getStatusOrTypeName(String explain, String label) { + JSONObject statusArr = new JSONObject(); + String[] split = explain.split(","); + for (int j = 0; j < split.length; j++) { + String[] status = split[j].split("-"); + statusArr.put(status[0], status[1]); + } + // 设置 + return statusArr.getString(label); + } + + /** + * 清空点位 + * + * @param point + */ + public static void clearPoint(SchBasePoint point) { + if (ObjectUtil.isEmpty(point)) { + return; // 空直接退出 + } + SchBasePointServiceImpl pointService = SpringContextHolder.getBean(SchBasePointServiceImpl.class); + point.setPoint_status(PointStatusEnum.EMPTY_POINT.getCode()); + point.setVehicle_type(""); + point.setVehicle_code(""); + point.setIng_task_code(""); + point.setVehicle_qty(0); + point.setUpdate_time(DateUtil.now()); + pointService.updateById(point); + } + + /** + * 清空点位 + * 双层输送线特殊功能:上五下五 + * + * @param point + */ + public static void clearPointAndRetainNum(SchBasePoint point) { + if (ObjectUtil.isEmpty(point)) { + return; // 空直接退出 + } + SchBasePointServiceImpl pointService = SpringContextHolder.getBean(SchBasePointServiceImpl.class); + // 获取父点位 + String parentPointCode = point.getParent_point_code(); + SchBasePoint basePoint = pointService.getById(parentPointCode); + point.setVehicle_type(""); + point.setVehicle_code(""); + point.setIng_task_code(""); + point.setVehicle_qty(point.getVehicle_qty() == 5 ? point.getVehicle_qty() : point.getVehicle_qty() + 1); + // 等到新的点执行第一托的时候,才判断另一个点满足5个托盘的时候就清空 + if (basePoint.getVehicle_qty() == 5) { + basePoint.setVehicle_qty(0); + basePoint.setUpdate_time(DateUtil.now()); + pointService.updateById(basePoint); + } + point.setUpdate_time(DateUtil.now()); + pointService.updateById(point); + } + + /** + * 点位修改更新信息 + **/ + public static void setUpdateByAcs(SchBasePoint pointObj) { + pointObj.setUpdate_id(GeneralDefinition.ACS_ID); + pointObj.setUpdate_name(GeneralDefinition.ACS_NAME); + pointObj.setUpdate_time(DateUtil.now()); + } + + /** + * 点位修改更新信息 + **/ + public static void setUpdateByPC(SchBasePoint pointObj) { + pointObj.setUpdate_id(SecurityUtils.getCurrentUserId()); + pointObj.setUpdate_name(SecurityUtils.getCurrentNickName()); + pointObj.setUpdate_time(DateUtil.now()); + } + + public static void setUpdateByType(SchBasePoint pointObj, TaskFinishedTypeEnum taskFinishedType) { + if (taskFinishedType.equals(TaskFinishedTypeEnum.AUTO_ACS)) { + setUpdateByAcs(pointObj); + } else { + setUpdateByPC(pointObj); + } + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/TaskUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/TaskUtils.java new file mode 100644 index 0000000..d2be610 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/util/TaskUtils.java @@ -0,0 +1,210 @@ +package org.nl.wms.util; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.SpringContextHolder; +import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.GeneralDefinition; +import org.nl.wms.sch.task_manage.enums.TaskFinishedTypeEnum; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; + +import java.util.List; + +/** + * @Author: lyd + * @Description: 任务修改抽取的公用方法 + * @Date: 2023/6/13 + */ +@Slf4j +public class TaskUtils { + + public static void setCreateByAcs(SchBaseTask taskObj) { + taskObj.setCreate_id(GeneralDefinition.ACS_ID); + taskObj.setCreate_name(GeneralDefinition.ACS_NAME); + taskObj.setCreate_time(DateUtil.now()); + } + public static void setCreateByPda(SchBaseTask taskObj) { + taskObj.setCreate_id(SecurityUtils.getCurrentUserId()); + taskObj.setCreate_name(SecurityUtils.getCurrentNickName()); + taskObj.setCreate_time(DateUtil.now()); + } + public static void setCreateByDefault(SchBaseTask taskObj) { + taskObj.setCreate_id(SecurityUtils.getCurrentUserId()); + taskObj.setCreate_name(SecurityUtils.getCurrentNickName()); + taskObj.setCreate_time(DateUtil.now()); + } + + public static void setCreateByAcsOrPda(SchBaseTask taskObj, JSONObject param) { + // 如果是人工创建,会带个用户过来 + if (ObjectUtil.isNotEmpty(param.getString("user_id"))) { + setCreateByPda(taskObj); + } else { + setCreateByAcs(taskObj); + } + } + + public static void setUpdateByAcs(SchBaseTask taskObj) { + taskObj.setUpdate_id(GeneralDefinition.ACS_ID); + taskObj.setUpdate_name(GeneralDefinition.ACS_NAME); + taskObj.setUpdate_time(DateUtil.now()); + } + + public static void setUpdateByPC(SchBaseTask taskObj) { + taskObj.setUpdate_id(SecurityUtils.getCurrentUserId()); + taskObj.setUpdate_name(SecurityUtils.getCurrentNickName()); + taskObj.setUpdate_time(DateUtil.now()); + } + public static void setUpdateByDefault(SchBaseTask taskObj) { + taskObj.setUpdate_id(SecurityUtils.getCurrentUserId()); + taskObj.setUpdate_name(SecurityUtils.getCurrentNickName()); + taskObj.setUpdate_time(DateUtil.now()); + } + + public static void setGroupUpdateByAcs(SchBaseVehiclematerialgroup groupEntity) { + groupEntity.setUpdate_id(GeneralDefinition.ACS_ID); + groupEntity.setUpdate_name(GeneralDefinition.ACS_NAME); + groupEntity.setUpdate_time(DateUtil.now()); + } + + public static void setGroupUpdateByPC(SchBaseVehiclematerialgroup groupEntity) { + groupEntity.setUpdate_id(SecurityUtils.getCurrentUserId()); + groupEntity.setUpdate_name(SecurityUtils.getCurrentNickName()); + groupEntity.setUpdate_time(DateUtil.now()); + } + + /** + * 根据类型去判断谁修改的 + * @param groupEntity + * @param taskFinishedType + */ + public static void setGroupUpdateByType(SchBaseVehiclematerialgroup groupEntity, TaskFinishedTypeEnum taskFinishedType) { + if (taskFinishedType.equals(TaskFinishedTypeEnum.AUTO_ACS)) { + setGroupUpdateByAcs(groupEntity); + } else { + setGroupUpdateByPC(groupEntity); + } + } + + public static void setUpdateAuto(SchBaseTask taskObj) { + String currentUserId = ObjectUtil.isNotEmpty(SecurityUtils.getCurrentUserId()) + ? SecurityUtils.getCurrentUserId() + : "2"; + String nickName = ObjectUtil.isNotEmpty(SecurityUtils.getCurrentNickName()) + ? SecurityUtils.getCurrentNickName() + : "ACS系统"; + taskObj.setUpdate_id(currentUserId); + taskObj.setUpdate_name(nickName); + taskObj.setUpdate_time(DateUtil.now()); + } + + /** + * 根据类型去判断谁修改的 + * @param taskObj + * @param taskFinishedType + */ + public static void setUpdateByType(SchBaseTask taskObj, TaskFinishedTypeEnum taskFinishedType) { + if (taskFinishedType.equals(TaskFinishedTypeEnum.AUTO_ACS)) { + setUpdateByAcs(taskObj); + } else { + setUpdateByPC(taskObj); + } + } + + /** + * 校验是否有起点终点的任务 + */ + public static Boolean hasTaskAll(String pointCode) { + ISchBaseTaskService taskService = SpringContextHolder.getBean(ISchBaseTaskService.class); + final String code = pointCode; + List list = taskService.list(new LambdaQueryWrapper() + .lt(SchBaseTask::getTask_status, TaskStatus.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, false) + .and(la -> la.eq(SchBaseTask::getPoint_code1, code) + .or() + .eq(SchBaseTask::getPoint_code2, code) + .or() + .eq(SchBaseTask::getPoint_code3, code) + .or() + .eq(SchBaseTask::getPoint_code4, code))); + return list.size() > 0; + } + + /**不需要转换 + * 转成ACS需要的载具类型 + * ACS载具类型:1 2 3 ... + * LMS载具类型:3 4 5 ... + * @param acsVehicleType + * @return + */ + public static String toAcsVehicleTypeShift(String acsVehicleType) { + if (ObjectUtil.isEmpty(acsVehicleType)) { + return null; + } + String lmsVehicleType = null; + try { + lmsVehicleType = Integer.parseInt(acsVehicleType) - 2 + ""; + } catch (Exception e) { + log.error("acs载具转换异常: {}", e.getMessage()); + } + return lmsVehicleType; + } + + /**不需要转换 + * 转成LMS需要的载具类型 + * ACS载具类型:1 2 3 ... + * LMS载具类型:3 4 5 ... + * @param lmsVehicleType + * @return + */ + public static String toLmsVehicleTypeShift(String lmsVehicleType) { + if (ObjectUtil.isEmpty(lmsVehicleType)) { + return null; + } + String acsVehicleType = null; + try { + acsVehicleType = Integer.parseInt(lmsVehicleType) + 2 + ""; + } catch (Exception e) { + log.error("acs载具转换异常: {}", e.getMessage()); + } + return acsVehicleType; + } + + /** + * 如果传来的载具编码是0,就返回null, 否则替换成四位数,用零补齐 + * @param acsVehicleCode + * @return + */ + public static String defaultVehicleCode(String acsVehicleCode) { + if (ObjectUtil.isEmpty(acsVehicleCode) || acsVehicleCode.equals(GeneralDefinition.NO)) { + return null; + } + return String.format("%04d", Integer.parseInt(acsVehicleCode)); + } + + /** + * 将输入的字符串相乘得出值 + * eg: 2*7*6 + * return: 84 + * @param needFullNumberStr + * @return + */ + public static int convertMultiply(String needFullNumberStr) { + // 使用 "*" 来分割字符串 + String[] parts = needFullNumberStr.split("\\*"); + // 初始化结果为1 + int result = 1; + for (String part : parts) { + // 将字符串部分解析为整数 + int number = Integer.parseInt(part); + // 将解析的整数与结果相乘 + result *= number; + } + return result; + } +} diff --git a/nladmin-ui/src/views/wms/basedata/master/classification/index.vue b/nladmin-ui/src/views/wms/basedata/master/classification/index.vue new file mode 100644 index 0000000..c13d2c6 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/master/classification/index.vue @@ -0,0 +1,411 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/basedata/master/classification/mdBaseClassstandard.js b/nladmin-ui/src/views/wms/basedata/master/classification/mdBaseClassstandard.js new file mode 100644 index 0000000..0c216de --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/master/classification/mdBaseClassstandard.js @@ -0,0 +1,82 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/Classstandard', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/Classstandard/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/Classstandard', + method: 'put', + data + }) +} + +export function getClass(params) { + return request({ + url: 'api/Classstandard/loadClass', + method: 'get', + params + }) +} + +export function getClassSuperior(ids) { + const data = ids.length || ids.length === 0 ? ids : Array.of(ids) + return request({ + url: 'api/Classstandard/superior', + method: 'post', + data + }) +} + +export function getClassType(params) { + return request({ + url: 'api/Classstandard/getClass', + method: 'get', + params + }) +} +export function queryClassById(params) { + return request({ + url: 'api/Classstandard/queryClassById', + method: 'get', + params + }) +} +// 传入分类标识和级别 +export function getType(params) { + return request({ + url: 'api/Classstandard/getType', + method: 'get', + params + }) +} + +export function getClassTable(params) { + return request({ + url: 'api/Classstandard/getClassTable', + method: 'get', + params + }) +} + +export function getClassName() { + return request({ + url: 'api/Classstandard/getClassName', + method: 'get' + }) +} + +export default { add, edit, del, getClass, getClassSuperior, getClassType, getClassTable, getType, queryClassById, getClassName } diff --git a/nladmin-ui/src/views/wms/basedata/master/customer/customerbase.js b/nladmin-ui/src/views/wms/basedata/master/customer/customerbase.js new file mode 100644 index 0000000..6523c03 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/master/customer/customerbase.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/customerbase', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/customerbase/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/customerbase', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/basedata/master/customer/index.vue b/nladmin-ui/src/views/wms/basedata/master/customer/index.vue new file mode 100644 index 0000000..3e68a57 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/master/customer/index.vue @@ -0,0 +1,401 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/basedata/master/unit/index.vue b/nladmin-ui/src/views/wms/basedata/master/unit/index.vue new file mode 100644 index 0000000..bea44a9 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/master/unit/index.vue @@ -0,0 +1,197 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/basedata/master/unit/measureunit.js b/nladmin-ui/src/views/wms/basedata/master/unit/measureunit.js new file mode 100644 index 0000000..a8df279 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/master/unit/measureunit.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/measureunit', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/measureunit/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/measureunit', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/basedata/master/vehicle/index.vue b/nladmin-ui/src/views/wms/basedata/master/vehicle/index.vue new file mode 100644 index 0000000..0444f69 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/master/vehicle/index.vue @@ -0,0 +1,372 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/basedata/master/vehicle/storagevehicleinfo.js b/nladmin-ui/src/views/wms/basedata/master/vehicle/storagevehicleinfo.js new file mode 100644 index 0000000..1e873a7 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/master/vehicle/storagevehicleinfo.js @@ -0,0 +1,35 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/storagevehicleinfo', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/storagevehicleinfo/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/storagevehicleinfo', + method: 'put', + data + }) +} + +export function changeActive(data) { + return request({ + url: 'api/storagevehicleinfo/changeActive', + method: 'put', + data + }) +} + +export default { add, edit, del, changeActive } diff --git a/nladmin-ui/src/views/wms/basedata/material/index.vue b/nladmin-ui/src/views/wms/basedata/material/index.vue new file mode 100644 index 0000000..2979ac9 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/material/index.vue @@ -0,0 +1,311 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/basedata/material/mdBaseMaterial.js b/nladmin-ui/src/views/wms/basedata/material/mdBaseMaterial.js new file mode 100644 index 0000000..aab7d60 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/material/mdBaseMaterial.js @@ -0,0 +1,35 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/mdBaseMaterial', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/mdBaseMaterial/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/mdBaseMaterial', + method: 'put', + data + }) +} + +export function synchronize(data) { + return request({ + url: 'api/mdBaseMaterial/synchronize', + method: 'post', + data + }) +} + +export default { add, edit, del, synchronize } diff --git a/nladmin-ui/src/views/wms/basedata/st/sect/index.vue b/nladmin-ui/src/views/wms/basedata/st/sect/index.vue new file mode 100644 index 0000000..d15d57f --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/st/sect/index.vue @@ -0,0 +1,324 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/basedata/st/sect/sectattr.js b/nladmin-ui/src/views/wms/basedata/st/sect/sectattr.js new file mode 100644 index 0000000..0c3a306 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/st/sect/sectattr.js @@ -0,0 +1,43 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/stIvtSectattr', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/stIvtSectattr/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/stIvtSectattr', + method: 'put', + data + }) +} + +export function getSect(params) { + return request({ + url: 'api/stIvtSectattr/getSect', + method: 'get', + params + }) +} + +export function changeActive(data) { + return request({ + url: 'api/stIvtSectattr/changeActive', + method: 'put', + data + }) +} + +export default { add, edit, del, getSect, changeActive } diff --git a/nladmin-ui/src/views/wms/basedata/st/stor/index.vue b/nladmin-ui/src/views/wms/basedata/st/stor/index.vue new file mode 100644 index 0000000..7094c4d --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/st/stor/index.vue @@ -0,0 +1,391 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/basedata/st/stor/storattr.js b/nladmin-ui/src/views/wms/basedata/st/stor/storattr.js new file mode 100644 index 0000000..a3eef93 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/st/stor/storattr.js @@ -0,0 +1,43 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/stIvtBsrealstorattr', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/stIvtBsrealstorattr/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/stIvtBsrealstorattr', + method: 'put', + data + }) +} + +export function getStor(params) { + return request({ + url: 'api/stIvtBsrealstorattr/getStor', + method: 'get', + params + }) +} + +export function changeActive(data) { + return request({ + url: 'api/stIvtBsrealstorattr/changeActive', + method: 'put', + data + }) +} + +export default { add, edit, del, getStor, changeActive } diff --git a/nladmin-ui/src/views/wms/basedata/workshop/index.vue b/nladmin-ui/src/views/wms/basedata/workshop/index.vue new file mode 100644 index 0000000..f69edac --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/workshop/index.vue @@ -0,0 +1,111 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/basedata/workshop/mdBaseWorkshop.js b/nladmin-ui/src/views/wms/basedata/workshop/mdBaseWorkshop.js new file mode 100644 index 0000000..9f55c89 --- /dev/null +++ b/nladmin-ui/src/views/wms/basedata/workshop/mdBaseWorkshop.js @@ -0,0 +1,34 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/mdBaseWorkshop', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/mdBaseWorkshop/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/mdBaseWorkshop', + method: 'put', + data + }) +} + +export function getWorkShopList() { + return request({ + url: 'api/mdBaseWorkshop/getWorkShopList', + method: 'get' + }) +} + +export default { add, edit, del, getWorkShopList } diff --git a/nladmin-ui/src/views/wms/das/device/check/dasDeviceCheckRecord.js b/nladmin-ui/src/views/wms/das/device/check/dasDeviceCheckRecord.js new file mode 100644 index 0000000..5d99e4e --- /dev/null +++ b/nladmin-ui/src/views/wms/das/device/check/dasDeviceCheckRecord.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/dasDeviceCheckRecord', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/dasDeviceCheckRecord/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/dasDeviceCheckRecord', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/das/device/check/index.vue b/nladmin-ui/src/views/wms/das/device/check/index.vue new file mode 100644 index 0000000..442717e --- /dev/null +++ b/nladmin-ui/src/views/wms/das/device/check/index.vue @@ -0,0 +1,118 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/das/device/operation/dasDeviceOperationRecord.js b/nladmin-ui/src/views/wms/das/device/operation/dasDeviceOperationRecord.js new file mode 100644 index 0000000..612aecb --- /dev/null +++ b/nladmin-ui/src/views/wms/das/device/operation/dasDeviceOperationRecord.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/dasDeviceOperationRecord', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/dasDeviceOperationRecord/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/dasDeviceOperationRecord', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/das/device/operation/index.vue b/nladmin-ui/src/views/wms/das/device/operation/index.vue new file mode 100644 index 0000000..66337d8 --- /dev/null +++ b/nladmin-ui/src/views/wms/das/device/operation/index.vue @@ -0,0 +1,113 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/das/inKiln/index.vue b/nladmin-ui/src/views/wms/das/inKiln/index.vue new file mode 100644 index 0000000..083ee86 --- /dev/null +++ b/nladmin-ui/src/views/wms/das/inKiln/index.vue @@ -0,0 +1,64 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/das/inspection/dasQualityInspection.js b/nladmin-ui/src/views/wms/das/inspection/dasQualityInspection.js new file mode 100644 index 0000000..5fa272b --- /dev/null +++ b/nladmin-ui/src/views/wms/das/inspection/dasQualityInspection.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/dasQualityInspection', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/dasQualityInspection/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/dasQualityInspection', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/das/inspection/index.vue b/nladmin-ui/src/views/wms/das/inspection/index.vue new file mode 100644 index 0000000..5ba1d0d --- /dev/null +++ b/nladmin-ui/src/views/wms/das/inspection/index.vue @@ -0,0 +1,99 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/das/intoKiln/index.vue b/nladmin-ui/src/views/wms/das/intoKiln/index.vue new file mode 100644 index 0000000..a7cc2de --- /dev/null +++ b/nladmin-ui/src/views/wms/das/intoKiln/index.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/das/materialtimeout/index.vue b/nladmin-ui/src/views/wms/das/materialtimeout/index.vue new file mode 100644 index 0000000..dc46cc2 --- /dev/null +++ b/nladmin-ui/src/views/wms/das/materialtimeout/index.vue @@ -0,0 +1,64 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/das/outKiln/index.vue b/nladmin-ui/src/views/wms/das/outKiln/index.vue new file mode 100644 index 0000000..2f9da86 --- /dev/null +++ b/nladmin-ui/src/views/wms/das/outKiln/index.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/ext/record/index.vue b/nladmin-ui/src/views/wms/ext/record/index.vue new file mode 100644 index 0000000..4d5795b --- /dev/null +++ b/nladmin-ui/src/views/wms/ext/record/index.vue @@ -0,0 +1,231 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/ext/record/sysInteractRecord.js b/nladmin-ui/src/views/wms/ext/record/sysInteractRecord.js new file mode 100644 index 0000000..9f6d776 --- /dev/null +++ b/nladmin-ui/src/views/wms/ext/record/sysInteractRecord.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/sysInteractRecord', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/sysInteractRecord/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/sysInteractRecord', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/bi/index.vue b/nladmin-ui/src/views/wms/pdm/bi/index.vue new file mode 100644 index 0000000..42a8bba --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/bi/index.vue @@ -0,0 +1,744 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/bi/subpackagerelation.js b/nladmin-ui/src/views/wms/pdm/bi/subpackagerelation.js new file mode 100644 index 0000000..987d3c5 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/bi/subpackagerelation.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/subpackagerelation', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/subpackagerelation/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/subpackagerelation', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/consumption/index.vue b/nladmin-ui/src/views/wms/pdm/consumption/index.vue new file mode 100644 index 0000000..70d5fa2 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/consumption/index.vue @@ -0,0 +1,108 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/consumption/pdmBdMudConsumption.js b/nladmin-ui/src/views/wms/pdm/consumption/pdmBdMudConsumption.js new file mode 100644 index 0000000..a9605a7 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/consumption/pdmBdMudConsumption.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/pdmBdMudConsumption', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/pdmBdMudConsumption/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/pdmBdMudConsumption', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/Dialog.vue b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/Dialog.vue new file mode 100644 index 0000000..edbf1ca --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/Dialog.vue @@ -0,0 +1,83 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/coolpointivt.js b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/coolpointivt.js new file mode 100644 index 0000000..3bfda73 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/coolpointivt.js @@ -0,0 +1,35 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/stIvtCoolpointivt', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/stIvtCoolpointivt/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/stIvtCoolpointivt', + method: 'put', + data + }) +} + +export function uploadMes(data) { + return request({ + url: 'api/stIvtCoolpointivt/uploadMes', + method: 'post', + data + }) +} + +export default { add, edit, del, uploadMes } diff --git a/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/coolregionio.vue b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/coolregionio.vue new file mode 100644 index 0000000..a49a62a --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/coolregionio.vue @@ -0,0 +1,294 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/index.vue b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/index.vue new file mode 100644 index 0000000..558fb7b --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/index.vue @@ -0,0 +1,26 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/inventory.vue b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/inventory.vue new file mode 100644 index 0000000..b60cb4b --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/coolpointivt/inventory.vue @@ -0,0 +1,474 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/cutpointivt/cutpointivt.js b/nladmin-ui/src/views/wms/pdm/ivt/cutpointivt/cutpointivt.js new file mode 100644 index 0000000..81940f7 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/cutpointivt/cutpointivt.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/cutpointivt', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/cutpointivt/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/cutpointivt', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/ivt/cutpointivt/index.vue b/nladmin-ui/src/views/wms/pdm/ivt/cutpointivt/index.vue new file mode 100644 index 0000000..3585337 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/cutpointivt/index.vue @@ -0,0 +1,261 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/deliverypointivt/deliverypointivt.js b/nladmin-ui/src/views/wms/pdm/ivt/deliverypointivt/deliverypointivt.js new file mode 100644 index 0000000..9552f00 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/deliverypointivt/deliverypointivt.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/deliverypointivt', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/deliverypointivt/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/deliverypointivt', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/ivt/deliverypointivt/index.vue b/nladmin-ui/src/views/wms/pdm/ivt/deliverypointivt/index.vue new file mode 100644 index 0000000..af82a83 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/deliverypointivt/index.vue @@ -0,0 +1,289 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/Dialog.vue b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/Dialog.vue new file mode 100644 index 0000000..cd1cfed --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/Dialog.vue @@ -0,0 +1,90 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/hotpointivt.js b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/hotpointivt.js new file mode 100644 index 0000000..4767e16 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/hotpointivt.js @@ -0,0 +1,35 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/hotpointivt', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/hotpointivt/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/hotpointivt', + method: 'put', + data + }) +} + +export function uploadMes(data) { + return request({ + url: 'api/hotpointivt/uploadMes', + method: 'post', + data + }) +} + +export default { add, edit, del, uploadMes } diff --git a/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/index.vue b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/index.vue new file mode 100644 index 0000000..6a8e5de --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/index.vue @@ -0,0 +1,26 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/pointIvt.vue b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/pointIvt.vue new file mode 100644 index 0000000..f95ada0 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/pointIvt.vue @@ -0,0 +1,398 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/taskDtl.vue b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/taskDtl.vue new file mode 100644 index 0000000..a461118 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/hotpointivt/taskDtl.vue @@ -0,0 +1,200 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/index.vue b/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/index.vue new file mode 100644 index 0000000..d8b2c52 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/index.vue @@ -0,0 +1,240 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/sbpointivt.js b/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/sbpointivt.js new file mode 100644 index 0000000..545c966 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/sbpointivt.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/sbpointivt', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/sbpointivt/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/sbpointivt', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/ivt/stpointivt/index.vue b/nladmin-ui/src/views/wms/pdm/ivt/stpointivt/index.vue new file mode 100644 index 0000000..4aa034d --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/stpointivt/index.vue @@ -0,0 +1,223 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/ivt/stpointivt/stpointivt.js b/nladmin-ui/src/views/wms/pdm/ivt/stpointivt/stpointivt.js new file mode 100644 index 0000000..ee97189 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/ivt/stpointivt/stpointivt.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/stpointivt', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/stpointivt/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/stpointivt', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/Dialog.vue b/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/Dialog.vue new file mode 100644 index 0000000..dce9671 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/Dialog.vue @@ -0,0 +1,81 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/index.vue b/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/index.vue new file mode 100644 index 0000000..583ed01 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/index.vue @@ -0,0 +1,467 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/rawfoilworkorder.js b/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/rawfoilworkorder.js new file mode 100644 index 0000000..6a67c4b --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/order/rawfoilworkorder/rawfoilworkorder.js @@ -0,0 +1,43 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/rawfoilworkorder', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/rawfoilworkorder/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/rawfoilworkorder', + method: 'put', + data + }) +} + +export function compelEnd(data) { + return request({ + url: 'api/rawfoilworkorder/compelEnd', + method: 'post', + data + }) +} + +export function confirm(data) { + return request({ + url: 'api/rawfoilworkorder/confirm', + method: 'post', + data + }) +} + +export default { add, edit, del, compelEnd, confirm } diff --git a/nladmin-ui/src/views/wms/pdm/order/slittingplan/index.vue b/nladmin-ui/src/views/wms/pdm/order/slittingplan/index.vue new file mode 100644 index 0000000..e781bda --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/order/slittingplan/index.vue @@ -0,0 +1,688 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/order/slittingplan/slittingproductionplan.js b/nladmin-ui/src/views/wms/pdm/order/slittingplan/slittingproductionplan.js new file mode 100644 index 0000000..0e4a6f8 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/order/slittingplan/slittingproductionplan.js @@ -0,0 +1,67 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/slittingproductionplan', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/slittingproductionplan/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/slittingproductionplan', + method: 'put', + data + }) +} + +export function upMaterFinish(data) { + return request({ + url: 'api/slittingproductionplan/upMaterFinish', + method: 'post', + data + }) +} + +export function caseFinish(data) { + return request({ + url: 'api/slittingproductionplan/caseFinish', + method: 'post', + data + }) +} + +export function sendFinish(data) { + return request({ + url: 'api/slittingproductionplan/sendFinish', + method: 'post', + data + }) +} + +export function inFinish(data) { + return request({ + url: 'api/slittingproductionplan/inFinish', + method: 'post', + data + }) +} + +export function compelFinish(data) { + return request({ + url: 'api/slittingproductionplan/compelFinish', + method: 'post', + data + }) +} + +export default { add, edit, del, upMaterFinish, caseFinish, sendFinish, inFinish, compelFinish } diff --git a/nladmin-ui/src/views/wms/pdm/record/index.vue b/nladmin-ui/src/views/wms/pdm/record/index.vue new file mode 100644 index 0000000..e51b447 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/record/index.vue @@ -0,0 +1,101 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/record/pdmBdRequestMaterialRecord.js b/nladmin-ui/src/views/wms/pdm/record/pdmBdRequestMaterialRecord.js new file mode 100644 index 0000000..3443ea2 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/record/pdmBdRequestMaterialRecord.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/pdmBdRequestMaterialRecord', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/pdmBdRequestMaterialRecord/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/pdmBdRequestMaterialRecord', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/residue/index.vue b/nladmin-ui/src/views/wms/pdm/residue/index.vue new file mode 100644 index 0000000..97e2253 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/residue/index.vue @@ -0,0 +1,102 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/residue/pdmBdMaterialResidue.js b/nladmin-ui/src/views/wms/pdm/residue/pdmBdMaterialResidue.js new file mode 100644 index 0000000..f9fba98 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/residue/pdmBdMaterialResidue.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/pdmBdMaterialResidue', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/pdmBdMaterialResidue/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/pdmBdMaterialResidue', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/track/index.vue b/nladmin-ui/src/views/wms/pdm/track/index.vue new file mode 100644 index 0000000..7633752 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/track/index.vue @@ -0,0 +1,118 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/track/pdmBdProductionProcessTracking.js b/nladmin-ui/src/views/wms/pdm/track/pdmBdProductionProcessTracking.js new file mode 100644 index 0000000..9224888 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/track/pdmBdProductionProcessTracking.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/pdmBdProductionProcessTracking', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/pdmBdProductionProcessTracking/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/pdmBdProductionProcessTracking', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/vehiclebiding/index.vue b/nladmin-ui/src/views/wms/pdm/vehiclebiding/index.vue new file mode 100644 index 0000000..b350dc2 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/vehiclebiding/index.vue @@ -0,0 +1,126 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/vehiclebiding/pdmBdVehicleBinding.js b/nladmin-ui/src/views/wms/pdm/vehiclebiding/pdmBdVehicleBinding.js new file mode 100644 index 0000000..2bff8e8 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/vehiclebiding/pdmBdVehicleBinding.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/pdmBdVehicleBinding', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/pdmBdVehicleBinding/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/pdmBdVehicleBinding', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/pdm/workerorder/ProductionOrder.vue b/nladmin-ui/src/views/wms/pdm/workerorder/ProductionOrder.vue new file mode 100644 index 0000000..5d34c92 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/workerorder/ProductionOrder.vue @@ -0,0 +1,148 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/workerorder/index.vue b/nladmin-ui/src/views/wms/pdm/workerorder/index.vue new file mode 100644 index 0000000..75197de --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/workerorder/index.vue @@ -0,0 +1,681 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/pdm/workerorder/pdmBdWorkorder.js b/nladmin-ui/src/views/wms/pdm/workerorder/pdmBdWorkorder.js new file mode 100644 index 0000000..a4eb005 --- /dev/null +++ b/nladmin-ui/src/views/wms/pdm/workerorder/pdmBdWorkorder.js @@ -0,0 +1,58 @@ +import request from '@/utils/request' +import { synchronize } from '@/views/wms/basedata/material/mdBaseMaterial' + +export function add(data) { + return request({ + url: 'api/pdmBdWorkorder', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/pdmBdWorkorder/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/pdmBdWorkorder', + method: 'put', + data + }) +} + +export function submits(param) { + return request({ + url: 'api/pdmBdWorkorder/submits', + method: 'post', + data: param + }) +} + +export function orderSynchronize(data) { + return request({ + url: 'api/pdmBdWorkorder/synchronize', + method: 'post', + data + }) +} + +export function queryMaterials(data) { + return request({ + url: 'api/pdmBdWorkorder/materials', + method: 'get', + data + }) +} +export function getCuster() { + return request({ + url: 'api/pdmBdWorkorder/getCuster', + method: 'post' + }) +} + +export default { add, edit, del, submits, orderSynchronize, queryMaterials, getCuster } diff --git a/nladmin-ui/src/views/wms/sch/group/MaterialDialog.vue b/nladmin-ui/src/views/wms/sch/group/MaterialDialog.vue new file mode 100644 index 0000000..df6dd7f --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/group/MaterialDialog.vue @@ -0,0 +1,201 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/group/WorkOrderDialog.vue b/nladmin-ui/src/views/wms/sch/group/WorkOrderDialog.vue new file mode 100644 index 0000000..4871707 --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/group/WorkOrderDialog.vue @@ -0,0 +1,154 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/group/index.vue b/nladmin-ui/src/views/wms/sch/group/index.vue new file mode 100644 index 0000000..4699b74 --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/group/index.vue @@ -0,0 +1,464 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/group/schBaseVehiclematerialgroup.js b/nladmin-ui/src/views/wms/sch/group/schBaseVehiclematerialgroup.js new file mode 100644 index 0000000..5921484 --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/group/schBaseVehiclematerialgroup.js @@ -0,0 +1,35 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/schBaseVehiclematerialgroup', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/schBaseVehiclematerialgroup/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/schBaseVehiclematerialgroup', + method: 'put', + data + }) +} + +export function getGroup(data) { + return request({ + url: 'api/schBaseVehiclematerialgroup/getGroup', + method: 'post', + data + }) +} + +export default { add, edit, del, getGroup } diff --git a/nladmin-ui/src/views/wms/sch/interactivelog/index.vue b/nladmin-ui/src/views/wms/sch/interactivelog/index.vue new file mode 100644 index 0000000..ce56fbc --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/interactivelog/index.vue @@ -0,0 +1,183 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/interactivelog/schBaseAcsandlmsinteractivelog.js b/nladmin-ui/src/views/wms/sch/interactivelog/schBaseAcsandlmsinteractivelog.js new file mode 100644 index 0000000..98b04fd --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/interactivelog/schBaseAcsandlmsinteractivelog.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/schBaseAcsandlmsinteractivelog', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/schBaseAcsandlmsinteractivelog/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/schBaseAcsandlmsinteractivelog', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/sch/point/PointDialog.vue b/nladmin-ui/src/views/wms/sch/point/PointDialog.vue new file mode 100644 index 0000000..7bd8e0e --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/point/PointDialog.vue @@ -0,0 +1,172 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/point/ViewDialog.vue b/nladmin-ui/src/views/wms/sch/point/ViewDialog.vue new file mode 100644 index 0000000..c1636ef --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/point/ViewDialog.vue @@ -0,0 +1,219 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/point/index.vue b/nladmin-ui/src/views/wms/sch/point/index.vue new file mode 100644 index 0000000..8fe8c0f --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/point/index.vue @@ -0,0 +1,685 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/point/schBasePoint.js b/nladmin-ui/src/views/wms/sch/point/schBasePoint.js new file mode 100644 index 0000000..aecdb0f --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/point/schBasePoint.js @@ -0,0 +1,51 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/schBasePoint', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/schBasePoint/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/schBasePoint', + method: 'put', + data + }) +} + +export function changeUsed(data) { + return request({ + url: 'api/schBasePoint/changeUsed', + method: 'post', + data: data + }) +} + +export function getPointList(data) { + return request({ + url: 'api/schBasePoint/getPointList', + method: 'post', + data + }) +} + +export function changeLock(data) { + return request({ + url: 'api/schBasePoint/changeLock', + method: 'post', + data: data + }) +} + +export default { add, edit, del, changeUsed, getPointList, changeLock } diff --git a/nladmin-ui/src/views/wms/sch/region/index.vue b/nladmin-ui/src/views/wms/sch/region/index.vue new file mode 100644 index 0000000..61b4641 --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/region/index.vue @@ -0,0 +1,271 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/region/schBaseRegion.js b/nladmin-ui/src/views/wms/sch/region/schBaseRegion.js new file mode 100644 index 0000000..2550d2a --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/region/schBaseRegion.js @@ -0,0 +1,50 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/schBaseRegion', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/schBaseRegion/', + method: 'delete', + data: ids + }) +} +export function edit(data) { + return request({ + url: 'api/schBaseRegion', + method: 'put', + data + }) +} + +export function getRegionList(data) { + return request({ + url: 'api/schBaseRegion/getRegionList', + method: 'post', + data + }) +} + +export function getPointStatusSelectById(id) { + return request({ + url: 'api/schBaseRegion/getPointStatusSelectById', + method: 'post', + data: id + }) +} + +export function getPointTypeSelectById(id) { + return request({ + url: 'api/schBaseRegion/getPointTypeSelectById', + method: 'post', + data: id + }) +} + +export default { add, edit, del, getRegionList, getPointStatusSelectById, getPointTypeSelectById } diff --git a/nladmin-ui/src/views/wms/sch/task/config/index.vue b/nladmin-ui/src/views/wms/sch/task/config/index.vue new file mode 100644 index 0000000..568b4d7 --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/task/config/index.vue @@ -0,0 +1,519 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/task/config/schBaseTaskconfig.js b/nladmin-ui/src/views/wms/sch/task/config/schBaseTaskconfig.js new file mode 100644 index 0000000..eb94df5 --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/task/config/schBaseTaskconfig.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/schBaseTaskconfig', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/schBaseTaskconfig/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/schBaseTaskconfig', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/nladmin-ui/src/views/wms/sch/task/index.vue b/nladmin-ui/src/views/wms/sch/task/index.vue new file mode 100644 index 0000000..6faac5b --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/task/index.vue @@ -0,0 +1,531 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/sch/task/schBaseTask.js b/nladmin-ui/src/views/wms/sch/task/schBaseTask.js new file mode 100644 index 0000000..4497dff --- /dev/null +++ b/nladmin-ui/src/views/wms/sch/task/schBaseTask.js @@ -0,0 +1,42 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/schBaseTask', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/schBaseTask/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/schBaseTask', + method: 'put', + data + }) +} + +export function getTaskStatusList() { + return request({ + url: 'api/schBaseTask/taskStatusList', + method: 'get' + }) +} + +export function operation(data) { + return request({ + url: 'api/schBaseTask/operation', + method: 'put', + data + }) +} + +export default { add, edit, del, getTaskStatusList, operation } diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/inbill/AddDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/AddDialog.vue new file mode 100644 index 0000000..9802611 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/AddDialog.vue @@ -0,0 +1,343 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/inbill/AddDtl.vue b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/AddDtl.vue new file mode 100644 index 0000000..4cfcc3a --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/AddDtl.vue @@ -0,0 +1,169 @@ + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/inbill/DivDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/DivDialog.vue new file mode 100644 index 0000000..19c833f --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/DivDialog.vue @@ -0,0 +1,376 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/inbill/TaskDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/TaskDialog.vue new file mode 100644 index 0000000..486ce30 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/TaskDialog.vue @@ -0,0 +1,265 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/inbill/ViewDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/ViewDialog.vue new file mode 100644 index 0000000..44c1041 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/ViewDialog.vue @@ -0,0 +1,281 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/inbill/inbill.js b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/inbill.js new file mode 100644 index 0000000..f3f28ee --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/inbill.js @@ -0,0 +1,124 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: '/api/stIvtIostorinv/inBill', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: '/api/stIvtIostorinv/inBill', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: '/api/stIvtIostorinv/inBill', + method: 'put', + data + }) +} + +export function queryBoxMater(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/queryBoxMater', + method: 'post', + data + }) +} + +export function getInDtl(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/getInDtl', + method: 'post', + data + }) +} + +export function getIosDtl(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/getIosDtl', + method: 'post', + data + }) +} + +export function getIosDis(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/getIosDis', + method: 'post', + data + }) +} + +export function autoDivPoint(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/autoDivPoint', + method: 'post', + data + }) +} + +export function unDivPoint(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/unDivPoint', + method: 'post', + data + }) +} + +export function setPoint(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/setPoint', + method: 'post', + data + }) +} + +export function getIosDisTask(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/getIosDisTask', + method: 'post', + data + }) +} + +export function delTask(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/delTask', + method: 'post', + data + }) +} + +export function issueTask(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/issueTask', + method: 'post', + data + }) +} + +export function confirmTask(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/confirmTask', + method: 'post', + data + }) +} + +export function confirm(data) { + return request({ + url: '/api/stIvtIostorinv/inBill/confirm', + method: 'post', + data + }) +} + +export default { add, edit, del, queryBoxMater, getInDtl, getIosDtl, getIosDis, + autoDivPoint, unDivPoint, setPoint, getIosDisTask, delTask, issueTask, confirmTask, confirm } diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/inbill/index.vue b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/index.vue new file mode 100644 index 0000000..35c4a4a --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/inbill/index.vue @@ -0,0 +1,361 @@ + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/AddDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/AddDialog.vue new file mode 100644 index 0000000..33d1aa2 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/AddDialog.vue @@ -0,0 +1,355 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/AddDtl.vue b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/AddDtl.vue new file mode 100644 index 0000000..5e9acb4 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/AddDtl.vue @@ -0,0 +1,226 @@ + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/DivDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/DivDialog.vue new file mode 100644 index 0000000..26a63e4 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/DivDialog.vue @@ -0,0 +1,547 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/MoneyDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/MoneyDialog.vue new file mode 100644 index 0000000..9f78e55 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/MoneyDialog.vue @@ -0,0 +1,275 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/StructIvt.vue b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/StructIvt.vue new file mode 100644 index 0000000..d715f3a --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/StructIvt.vue @@ -0,0 +1,239 @@ + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/TaskDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/TaskDialog.vue new file mode 100644 index 0000000..eea1e22 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/TaskDialog.vue @@ -0,0 +1,302 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/ViewDialog.vue b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/ViewDialog.vue new file mode 100644 index 0000000..0c30101 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/ViewDialog.vue @@ -0,0 +1,288 @@ + + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/index.vue b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/index.vue new file mode 100644 index 0000000..e9d478f --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/index.vue @@ -0,0 +1,458 @@ + + + + diff --git a/nladmin-ui/src/views/wms/storage_manage/ios/outbill/outbill.js b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/outbill.js new file mode 100644 index 0000000..7feb254 --- /dev/null +++ b/nladmin-ui/src/views/wms/storage_manage/ios/outbill/outbill.js @@ -0,0 +1,116 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/stIvtIostorinv/outBill', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/stIvtIostorinv/outBill/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/stIvtIostorinv/outBill', + method: 'put', + data + }) +} + +export function queryBoxMater(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/queryBoxMater', + method: 'post', + data + }) +} + +export function getIosDtl(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/getIosDtl', + method: 'post', + data + }) +} + +export function getIosDis(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/getIosDis', + method: 'post', + data + }) +} + +export function moneySubmit(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/moneySubmit', + method: 'post', + data + }) +} + +export function allDiv(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/allDiv', + method: 'post', + data + }) +} + +export function allCancel(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/allCancel', + method: 'post', + data + }) +} + +export function allSetPoint(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/allSetPoint', + method: 'post', + data + }) +} + +export function getIosDisTask(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/getIosDisTask', + method: 'post', + data + }) +} + +export function issueTask(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/issueTask', + method: 'post', + data + }) +} + +export function confirmTask(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/confirmTask', + method: 'post', + data + }) +} + +export function confirm(data) { + return request({ + url: 'api/stIvtIostorinv/outBill/confirm', + method: 'post', + data + }) +} + +export default { add, edit, del, queryBoxMater, getIosDtl, getIosDis, moneySubmit, allDiv, allCancel, + allSetPoint, getIosDisTask, issueTask, confirmTask, confirm }