已重命名4个文件
已添加32个文件
已修改25个文件
已复制3个文件
已删除192个文件
22115 ■■■■ 文件已修改
db/双林新火炬MES数据库设计.pdma.json 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pom.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/common/system/api/ISysBaseAPI.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/common/system/query/MatchTypeEnum.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/common/system/query/QueryRuleEnum.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/ClientCategoryController.java 176 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/ClientContactController.java 156 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/ClientController.java 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/ConstructorController.java 164 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/DepartmentCategoryController.java 197 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/EncodeRuleController.java 133 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/EncodeRuleDepartController.java 131 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/EncodeRuleDetailController.java 160 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/EncodeRuleTableFieldRelateController.java 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/EnterpriseAdministratorController.java 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/EnterpriseController.java 722 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/FactoryController.java 238 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/FactoryElementCategoryController.java 198 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/FactoryModelController.java 711 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/LineSideWarehouseController.java 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/MaterialCategoryController.java 402 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/MaterialController.java 165 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/ProductionLineWarehouseController.java 702 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/ShiftController.java 197 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/ShiftGroupController.java 185 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/SupplierCategoryController.java 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/SupplierContactController.java 155 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/SupplierController.java 302 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/UnitCategoryController.java 156 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/UnitController.java 167 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/UnitConversionController.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/UserFactoryController.java 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/UserGroupController.java 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/WarehouseAreaController.java 188 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/WarehouseController.java 772 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/WarehouseLocationController.java 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/WorkCenterController.java 565 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/WorkCenterEquipmentController.java 211 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/controller/WorkCenterUserController.java 273 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Client.java 147 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/ClientCategory.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/ClientContact.java 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Constructor.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/DepartmentCategory.java 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/EncodeRule.java 124 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/EncodeRuleDepart.java 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/EncodeRuleDetail.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/EncodeRuleTableFieldRelate.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Enterprise.java 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/EnterpriseAdministrator.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Factory.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/FactoryElementCategory.java 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/FactoryModel.java 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/FactoryModelDetail.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/LineSideWarehouse.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Material.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/MaterialCategory.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/ProductionLineWarehouse.java 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/ProductionLineWarehouseClient.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Shift.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/ShiftGroup.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Supplier.java 229 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/SupplierCategory.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/SupplierContact.java 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Unit.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/UnitCategory.java 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/UnitConversion.java 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/UserFactory.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/UserGroup.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/Warehouse.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/WarehouseArea.java 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/WarehouseClient.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/WarehouseLocation.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/WorkCenter.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/WorkCenterDetail.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/WorkCenterEquipment.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/entity/WorkCenterUser.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/ClientCategoryMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/ClientContactMapper.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/ClientMapper.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/ConstructorMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/DepartmentCategoryMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/EncodeRuleDepartMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/EncodeRuleDetailMapper.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/EncodeRuleMapper.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/EncodeRuleTableFieldRelateMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/EnterpriseAdministratorMapper.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/EnterpriseMapper.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/FactoryElementCategoryMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/FactoryMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/FactoryModelMapper.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/LineSideWarehouseMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/MaterialCategoryMapper.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/MaterialMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/ProductionLineWarehouseClientMapper.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/ProductionLineWarehouseMapper.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/ShiftGroupMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/ShiftMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/SupplierCategoryMapper.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/SupplierContactMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/SupplierMapper.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/UnitCategoryMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/UnitConversionMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/UnitMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/UserFactoryMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/UserGroupMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/WarehouseAreaMapper.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/WarehouseClientMapper.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/WarehouseLocationMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/WarehouseMapper.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/WorkCenterEquipmentMapper.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/WorkCenterMapper.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/WorkCenterUserMapper.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/ClientCategoryMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/ClientContactMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/ConstructorMapper.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/DepartmentCategoryMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleDepartMapper.xml 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleDetailMapper.xml 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleTableFieldRelateMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/EnterpriseAdministratorMapper.xml 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/EnterpriseMapper.xml 126 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/FactoryElementCategoryMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/FactoryMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/FactoryModelMapper.xml 240 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/LineSideWarehouseMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/MaterialCategoryMapper.xml 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/ProductionLineWarehouseClientMapper.xml 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/ProductionLineWarehouseMapper.xml 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/ShiftGroupMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/ShiftMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/SupplierContactMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/SupplierMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/UnitCategoryMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/UnitConversionMapper.xml 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/UnitMapper.xml 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/UserFactoryMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/UserGroupMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseAreaMapper.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseClientMapper.xml 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseLocationMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseMapper.xml 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterEquipmentMapper.xml 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterMapper.xml 121 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterUserMapper.xml 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/model/FactoryIdModel.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/model/FactoryTreeModel.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IClientCategoryService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IClientContactService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IClientService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IConstructorService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IDepartmentCategoryService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IEncodeRuleDepartService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IEncodeRuleDetailService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IEncodeRuleService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IEncodeRuleTableFieldRelateService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IEnterpriseAdministratorService.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IEnterpriseService.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IFactoryElementCategoryService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IFactoryModelService.java 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IFactoryService.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/ILineSideWarehouseService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IMaterialCategoryService.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IMaterialService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IProductionLineWarehouseClientService.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IProductionLineWarehouseService.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IShiftGroupService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IShiftService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/ISupplierCategoryService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/ISupplierContactService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/ISupplierService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IUnitCategoryService.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IUnitConversionService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IUnitService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IUserFactoryService.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IUserGroupService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IWarehouseAreaService.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IWarehouseClientService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IWarehouseLocationService.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IWarehouseService.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IWorkCenterEquipmentService.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IWorkCenterService.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/IWorkCenterUserService.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/ClientCategoryServiceImpl.java 219 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/ClientContactServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/ClientServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/ConstructorServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/DepartmentCategoryServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceDepartImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceDetailImpl.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleTableFieldRelateServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/EnterpriseAdministratorServiceImpl.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/EnterpriseServiceImpl.java 119 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/FactoryElementCategoryServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/FactoryModelServiceImpl.java 147 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/FactoryServiceImpl.java 201 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/LineSideWarehouseServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/MaterialCategoryImpl.java 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/MaterialServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/ProductionLineWarehouseClientServiceImpl.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/ProductionLineWarehouseServiceImpl.java 100 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/ShiftGroupServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/ShiftServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/SupplierCategoryServiceImpl.java 246 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/SupplierContactServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/SupplierServiceImpl.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/UnitCategoryServiceImpl.java 163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/UnitConversionServiceImpl.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/UnitServiceImpl.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/UserFactoryServiceImpl.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/UserGroupServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/WarehouseAreaServiceImpl.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/WarehouseClientServiceImpl.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/WarehouseLocationServiceImpl.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/WarehouseServiceImpl.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/WorkCenterEquipmentServiceImpl.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/WorkCenterServiceImpl.java 149 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/base/service/impl/WorkCenterUserServiceImpl.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/controller/AdministratorController.java 350 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/controller/MdcProductionController.java 357 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/controller/SysUserController.java 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/entity/Administrator.java 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/entity/MdcProduction.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/entity/MdcUserProduction.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/AdministratorMapper.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/MdcProductionMapper.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/MdcUserProductionMapper.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/SysDepartMapper.java 116 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/xml/AdministratorMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/xml/MdcProductionMapper.xml 141 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/xml/MdcUserProductionMapper.xml 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/xml/SysDepartMapper.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/model/MdcProductionTreeModel.java 125 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/rule/OrgCodeProRule.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/IAdministratorService.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/IMdcProductionService.java 178 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/IMdcUserProductionService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/ISysUserService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/impl/AdministratorServiceImpl.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/impl/MdcProductionServiceImpl.java 630 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/impl/MdcUserProductionServiceImpl.java 152 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/util/FindsProductionsChildrenUtil.java 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/vo/MdcProOptionsVo.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/org/jeecg/modules/system/vo/SysUserGroupVO.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application-dev.yml 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application-dm8.yml 239 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application-prod.yml 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application-test.yml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jeecg/jeecg_database.properties 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/processes/assign_nc_to_device.bpmn 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
db/Ë«ÁÖлð¾æMESÊý¾Ý¿âÉè¼Æ.pdma.json
@@ -4,7 +4,7 @@
  "avatar": "",
  "version": "4.9.2",
  "createdTime": "2025-3-10 16:38:19",
  "updatedTime": "2025-6-24 16:55:39",
  "updatedTime": "2025-6-25 17:44:46",
  "dbConns": [],
  "profile": {
    "default": {
@@ -12194,7 +12194,7 @@
        }
      },
      "defKey": "pms_process_bill_materials",
      "defName": "工艺BOM",
      "defName": "订单BOM",
      "comment": "",
      "properties": {
        "partitioned by": "(date string)",
@@ -51656,7 +51656,7 @@
        }
      },
      "defKey": "cms_edge_grinding",
      "defName": "刀具修磨/刃磨",
      "defName": "刀具修磨",
      "comment": "",
      "properties": {
        "partitioned by": "(date string)",
pom.xml
@@ -23,7 +23,6 @@
        <spring-cloud-alibaba.version>2021.0.1.0</spring-cloud-alibaba.version>
        <alibaba.nacos.version>2.0.4</alibaba.nacos.version>
        <xxl-job-core.version>2.2.0</xxl-job-core.version>
        <fastjson.version>1.2.83</fastjson.version>
        <pegdown.version>1.6.0</pegdown.version>
        <knife4j-spring-boot-starter.version>3.0.3</knife4j-spring-boot-starter.version>
src/main/java/org/jeecg/common/system/api/ISysBaseAPI.java
@@ -411,7 +411,6 @@
    void delSysUploadRelaByBusIdAndBusType(String busId, String busType);
    String getUnitNameById(String unitId);
    String queryDictTextByKey(String dictCode, String key);
@@ -423,7 +422,6 @@
    void removeDataVersionById(String id);
    String getEnterpriseNameById(String enterpriseId);
    List<DataVersion> getLastDataVersion(String businessType, String enterpriseId, String isLastusable);
src/main/java/org/jeecg/common/system/query/MatchTypeEnum.java
@@ -1,5 +1,6 @@
package org.jeecg.common.system.query;
import lombok.Getter;
import org.jeecg.common.util.oConvertUtils;
/**
@@ -7,6 +8,7 @@
 *
 * @Author Sunjianlei
 */
@Getter
public enum MatchTypeEnum {
    /**查询链接规则 AND*/
@@ -20,23 +22,12 @@
        this.value = value;
    }
    public String getValue() {
        return value;
    }
    public static MatchTypeEnum getByValue(Object value) {
        if (oConvertUtils.isEmpty(value)) {
            return null;
        }
        return getByValue(value.toString());
    }
    public static MatchTypeEnum getByValue(String value) {
        if (oConvertUtils.isEmpty(value)) {
            return null;
        }
        for (MatchTypeEnum val : values()) {
            if (val.getValue().toLowerCase().equals(value.toLowerCase())) {
            if (val.getValue().equalsIgnoreCase(value)) {
                return val;
            }
        }
src/main/java/org/jeecg/common/system/query/QueryRuleEnum.java
@@ -1,5 +1,6 @@
package org.jeecg.common.system.query;
import lombok.Getter;
import org.jeecg.common.util.oConvertUtils;
/**
@@ -7,6 +8,7 @@
 * @Author Scott
 * @Date 2019å¹´02月14日
 */
@Getter
public enum QueryRuleEnum {
    /**查询规则 å¤§äºŽ*/
@@ -47,30 +49,6 @@
        this.condition = condition;
        this.msg = msg;
    }
    public String getValue() {
        return value;
    }
    public void setValue(String value) {
        this.value = value;
    }
    public String getMsg() {
        return msg;
    }
    public void setMsg(String msg) {
        this.msg = msg;
    }
    public String getCondition() {
        return condition;
    }
    public void setCondition(String condition) {
        this.condition = condition;
    }
    public static QueryRuleEnum getByValue(String value){
        if(oConvertUtils.isEmpty(value)) {
src/main/java/org/jeecg/modules/base/controller/ClientCategoryController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/ClientContactController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/ClientController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/ConstructorController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/DepartmentCategoryController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/EncodeRuleController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/EncodeRuleDepartController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/EncodeRuleDetailController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/EncodeRuleTableFieldRelateController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/EnterpriseAdministratorController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/EnterpriseController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/FactoryController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,238 @@
package org.jeecg.modules.base.controller;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.Factory;
import org.jeecg.modules.base.model.FactoryIdModel;
import org.jeecg.modules.base.service.IFactoryService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.modules.base.model.FactoryTreeModel;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
 /**
 * @Description: å·¥åŽ‚/车间/产线
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Api(tags="工厂/车间/产线")
@RestController
@RequestMapping("/base/factory")
@Slf4j
public class FactoryController extends JeecgController<Factory, IFactoryService> {
    @Autowired
    private IFactoryService factoryService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param factory
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    //@AutoLog(value = "工厂/车间/产线-分页列表查询")
    @ApiOperation(value="工厂/车间/产线-分页列表查询", notes="工厂/车间/产线-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<Factory>> queryPageList(Factory factory,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<Factory> queryWrapper = QueryGenerator.initQueryWrapper(factory, req.getParameterMap());
        Page<Factory> page = new Page<Factory>(pageNo, pageSize);
        IPage<Factory> pageList = factoryService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param factory
     * @return
     */
    @AutoLog(value = "工厂/车间/产线-添加")
    @ApiOperation(value="工厂/车间/产线-添加", notes="工厂/车间/产线-添加")
    //@RequiresPermissions("org.jeecg.modules:base_factory:add")
    @PostMapping(value = "/add")
    public Result<Factory> add(@RequestBody Factory factory) {
        Result<Factory> result = new Result<>();
        try {
            factoryService.saveFactoryData(factory);
            result.success("添加成功!");
        } catch (Exception e) {
            log.error(e.getMessage(), e);
            result.error500("操作失败");
        }
        return result;
    }
    /**
     *  ç¼–辑
     *
     * @param factory
     * @return
     */
    @AutoLog(value = "工厂/车间/产线-编辑")
    @ApiOperation(value="工厂/车间/产线-编辑", notes="工厂/车间/产线-编辑")
    //@RequiresPermissions("org.jeecg.modules:base_factory:edit")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody Factory factory) {
        factoryService.updateById(factory);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "工厂/车间/产线-通过id删除")
    @ApiOperation(value="工厂/车间/产线-通过id删除", notes="工厂/车间/产线-通过id删除")
    //@RequiresPermissions("org.jeecg.modules:base_factory:delete")
    @DeleteMapping(value = "/delete")
    public Result<Factory> delete(@RequestParam(name="id",required=true) String id) {
        Result<Factory> result = new Result<>();
        Factory factory = factoryService.getById(id);
        if (factory == null) {
            result.error500("未找到对应实体");
        } else {
            boolean ok = factoryService.delete(id);
            if (ok) {
                result.success("删除成功!");
            }
        }
        return result;
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "工厂/车间/产线-批量删除")
    @ApiOperation(value="工厂/车间/产线-批量删除", notes="工厂/车间/产线-批量删除")
    //@RequiresPermissions("org.jeecg.modules:base_factory:deleteBatch")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.factoryService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    //@AutoLog(value = "工厂/车间/产线-通过id查询")
    @ApiOperation(value="工厂/车间/产线-通过id查询", notes="工厂/车间/产线-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<Factory> queryById(@RequestParam(name="id",required=true) String id) {
        Factory factory = factoryService.getById(id);
        if(factory==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(factory);
    }
    /**
    * å¯¼å‡ºexcel
    *
    * @param request
    * @param factory
    */
    //@RequiresPermissions("org.jeecg.modules:base_factory:exportXls")
    @RequestMapping(value = "/exportXls")
    public ModelAndView exportXls(HttpServletRequest request, Factory factory) {
        return super.exportXls(request, factory, Factory.class, "工厂/车间/产线");
    }
    /**
      * é€šè¿‡excel导入数据
    *
    * @param request
    * @param response
    * @return
    */
    //@RequiresPermissions("base_factory:importExcel")
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, Factory.class);
    }
     //@AutoLog(value = "产线表-树形列表")
     @ApiOperation(value = "产线表-树形列表", notes = "产线表-树形列表")
     @GetMapping(value = "/queryTreeList")
     public Result<List<FactoryTreeModel>> queryTreeList(@RequestParam(name = "ids", required = false) String ids) {
         Result<List<FactoryTreeModel>> result = new Result<>();
         try {
             if (oConvertUtils.isNotEmpty(ids)) {
                 List<FactoryTreeModel> factoryList = factoryService.queryTreeList(ids);
                 result.setResult(factoryList);
             } else {
                 List<FactoryTreeModel> list = factoryService.queryTreeList();
                 result.setResult(list);
             }
             result.setSuccess(true);
         } catch (Exception e) {
             log.error(e.getMessage(), e);
         }
         return result;
     }
     //@AutoLog(value = "产线表-id集合")
     @ApiOperation(value = "产线表-id集合", notes = "产线表-id集合")
     @GetMapping(value = "/queryTreeIdList")
     public Result<List<String>> queryTreeIdList() {
         Result<List<String>> result = new Result<>();
         try {
             List<Factory> factoryList = factoryService.list(new LambdaQueryWrapper<Factory>().eq(Factory::getDelFlag, CommonConstant.DEL_FLAG_0).orderByAsc(Factory::getSorter));
             List<String> ids = factoryList.stream().map(Factory::getId).collect(Collectors.toList());
             result.setSuccess(true);
             result.setResult(ids);
         } catch (Exception e) {
             log.error(e.getMessage(), e);
         }
         return result;
     }
     //@AutoLog(value = "产线表-查询树形结构所有产线名称")
     @ApiOperation(value = "产线表-查询树形结构所有产线名称", notes = "产线表-查询树形结构所有产线名称")
     @GetMapping(value = "/queryIdTree")
     public Result<List<FactoryIdModel>> queryIdTree() {
         Result<List<FactoryIdModel>> result = new Result<>();
         try {
             List<FactoryIdModel> list = factoryService.queryFactoryIdTreeList();
             result.setResult(list);
             result.setSuccess(true);
         } catch (Exception e) {
             log.error(e.getMessage(), e);
         }
         return result;
     }
}
src/main/java/org/jeecg/modules/base/controller/FactoryElementCategoryController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/FactoryModelController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/LineSideWarehouseController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,177 @@
package org.jeecg.modules.base.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.LineSideWarehouse;
import org.jeecg.modules.base.service.ILineSideWarehouseService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
 /**
 * @Description: çº¿è¾¹ä»“库信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Api(tags="线边仓库信息")
@RestController
@RequestMapping("/base/lineSideWarehouse")
@Slf4j
public class LineSideWarehouseController extends JeecgController<LineSideWarehouse, ILineSideWarehouseService> {
    @Autowired
    private ILineSideWarehouseService lineSideWarehouseService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param lineSideWarehouse
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    //@AutoLog(value = "线边仓库信息-分页列表查询")
    @ApiOperation(value="线边仓库信息-分页列表查询", notes="线边仓库信息-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<LineSideWarehouse>> queryPageList(LineSideWarehouse lineSideWarehouse,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<LineSideWarehouse> queryWrapper = QueryGenerator.initQueryWrapper(lineSideWarehouse, req.getParameterMap());
        Page<LineSideWarehouse> page = new Page<LineSideWarehouse>(pageNo, pageSize);
        IPage<LineSideWarehouse> pageList = lineSideWarehouseService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param lineSideWarehouse
     * @return
     */
    @AutoLog(value = "线边仓库信息-添加")
    @ApiOperation(value="线边仓库信息-添加", notes="线边仓库信息-添加")
    //@RequiresPermissions("org.jeecg.modules:base_line_side_warehouse:add")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody LineSideWarehouse lineSideWarehouse) {
        lineSideWarehouseService.save(lineSideWarehouse);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
     * @param lineSideWarehouse
     * @return
     */
    @AutoLog(value = "线边仓库信息-编辑")
    @ApiOperation(value="线边仓库信息-编辑", notes="线边仓库信息-编辑")
    //@RequiresPermissions("org.jeecg.modules:base_line_side_warehouse:edit")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody LineSideWarehouse lineSideWarehouse) {
        lineSideWarehouseService.updateById(lineSideWarehouse);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "线边仓库信息-通过id删除")
    @ApiOperation(value="线边仓库信息-通过id删除", notes="线边仓库信息-通过id删除")
    //@RequiresPermissions("org.jeecg.modules:base_line_side_warehouse:delete")
    @DeleteMapping(value = "/delete")
    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
        lineSideWarehouseService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "线边仓库信息-批量删除")
    @ApiOperation(value="线边仓库信息-批量删除", notes="线边仓库信息-批量删除")
    //@RequiresPermissions("org.jeecg.modules:base_line_side_warehouse:deleteBatch")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.lineSideWarehouseService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    //@AutoLog(value = "线边仓库信息-通过id查询")
    @ApiOperation(value="线边仓库信息-通过id查询", notes="线边仓库信息-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<LineSideWarehouse> queryById(@RequestParam(name="id",required=true) String id) {
        LineSideWarehouse lineSideWarehouse = lineSideWarehouseService.getById(id);
        if(lineSideWarehouse==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(lineSideWarehouse);
    }
    /**
    * å¯¼å‡ºexcel
    *
    * @param request
    * @param lineSideWarehouse
    */
    //@RequiresPermissions("org.jeecg.modules:base_line_side_warehouse:exportXls")
    @RequestMapping(value = "/exportXls")
    public ModelAndView exportXls(HttpServletRequest request, LineSideWarehouse lineSideWarehouse) {
        return super.exportXls(request, lineSideWarehouse, LineSideWarehouse.class, "线边仓库信息");
    }
    /**
      * é€šè¿‡excel导入数据
    *
    * @param request
    * @param response
    * @return
    */
    //@RequiresPermissions("base_line_side_warehouse:importExcel")
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, LineSideWarehouse.class);
    }
}
src/main/java/org/jeecg/modules/base/controller/MaterialCategoryController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/MaterialController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/ProductionLineWarehouseController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/ShiftController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,197 @@
package org.jeecg.modules.base.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.alibaba.fastjson.JSONObject;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.Shift;
import org.jeecg.modules.base.service.IShiftService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
 /**
 * @Description: ç­æ¬¡
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Api(tags="班次")
@RestController
@RequestMapping("/base/shift")
@Slf4j
public class ShiftController extends JeecgController<Shift, IShiftService> {
    @Autowired
    private IShiftService shiftService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param shift
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    //@AutoLog(value = "班次-分页列表查询")
    @ApiOperation(value="班次-分页列表查询", notes="班次-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<Shift>> queryPageList(Shift shift,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<Shift> queryWrapper = QueryGenerator.initQueryWrapper(shift, req.getParameterMap());
        Page<Shift> page = new Page<Shift>(pageNo, pageSize);
        IPage<Shift> pageList = shiftService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param shift
     * @return
     */
    @AutoLog(value = "班次-添加")
    @ApiOperation(value="班次-添加", notes="班次-添加")
    //@RequiresPermissions("org.jeecg.modules:base_shift:add")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody Shift shift) {
        shiftService.save(shift);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
     * @param shift
     * @return
     */
    @AutoLog(value = "班次-编辑")
    @ApiOperation(value="班次-编辑", notes="班次-编辑")
    //@RequiresPermissions("org.jeecg.modules:base_shift:edit")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody Shift shift) {
        shiftService.updateById(shift);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "班次-通过id删除")
    @ApiOperation(value="班次-通过id删除", notes="班次-通过id删除")
    //@RequiresPermissions("org.jeecg.modules:base_shift:delete")
    @DeleteMapping(value = "/delete")
    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
        shiftService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "班次-批量删除")
    @ApiOperation(value="班次-批量删除", notes="班次-批量删除")
    //@RequiresPermissions("org.jeecg.modules:base_shift:deleteBatch")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.shiftService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    //@AutoLog(value = "班次-通过id查询")
    @ApiOperation(value="班次-通过id查询", notes="班次-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<Shift> queryById(@RequestParam(name="id",required=true) String id) {
        Shift shift = shiftService.getById(id);
        if(shift==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(shift);
    }
    /**
    * å¯¼å‡ºexcel
    *
    * @param request
    * @param shift
    */
    //@RequiresPermissions("org.jeecg.modules:base_shift:exportXls")
    @RequestMapping(value = "/exportXls")
    public ModelAndView exportXls(HttpServletRequest request, Shift shift) {
        return super.exportXls(request, shift, Shift.class, "班次");
    }
    /**
      * é€šè¿‡excel导入数据
    *
    * @param request
    * @param response
    * @return
    */
    //@RequiresPermissions("base_shift:importExcel")
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, Shift.class);
    }
     /**
      * ç­æ¬¡è¡¨-根据id修改状态
      *
      * @param jsonObject
      * @return
      */
     @AutoLog(value = "根据id修改状态")
     @ApiOperation(value = "根据id修改状态", notes = "根据id修改状态")
     @PutMapping("/updateStatusById")
     public Result<?> updateSubStatusById(@RequestBody JSONObject jsonObject) {
         String id = jsonObject.getString("id");
         String status = jsonObject.getString("status");
         Shift shift = shiftService.getById(id);
         shift.setShiftStatus(status);
         Boolean flag = shiftService.updateById(shift);
         return flag ? Result.OK("修改成功") : Result.error("修改失败");
     }
}
src/main/java/org/jeecg/modules/base/controller/ShiftGroupController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,185 @@
package org.jeecg.modules.base.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.ShiftGroup;
import org.jeecg.modules.base.entity.UserGroup;
import org.jeecg.modules.base.service.IShiftGroupService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.modules.base.service.IUserGroupService;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
 /**
 * @Description: ç­ç»„人员信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Api(tags="班组人员信息")
@RestController
@RequestMapping("/base/shiftGroup")
@Slf4j
public class ShiftGroupController extends JeecgController<ShiftGroup, IShiftGroupService> {
    @Autowired
    private IShiftGroupService shiftGroupService;
     @Autowired
     private IUserGroupService userGroupService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param shiftGroup
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    //@AutoLog(value = "班组人员信息-分页列表查询")
    @ApiOperation(value="班组人员信息-分页列表查询", notes="班组人员信息-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<ShiftGroup>> queryPageList(ShiftGroup shiftGroup,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<ShiftGroup> queryWrapper = QueryGenerator.initQueryWrapper(shiftGroup, req.getParameterMap());
        Page<ShiftGroup> page = new Page<ShiftGroup>(pageNo, pageSize);
        IPage<ShiftGroup> pageList = shiftGroupService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param shiftGroup
     * @return
     */
    @AutoLog(value = "班组人员信息-添加")
    @ApiOperation(value="班组人员信息-添加", notes="班组人员信息-添加")
    //@RequiresPermissions("org.jeecg.modules:base_shift_group:add")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody ShiftGroup shiftGroup) {
        shiftGroupService.save(shiftGroup);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
     * @param shiftGroup
     * @return
     */
    @AutoLog(value = "班组人员信息-编辑")
    @ApiOperation(value="班组人员信息-编辑", notes="班组人员信息-编辑")
    //@RequiresPermissions("org.jeecg.modules:base_shift_group:edit")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody ShiftGroup shiftGroup) {
        shiftGroupService.updateById(shiftGroup);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "班组人员信息-通过id删除")
    @ApiOperation(value="班组人员信息-通过id删除", notes="班组人员信息-通过id删除")
    //@RequiresPermissions("org.jeecg.modules:base_shift_group:delete")
    @DeleteMapping(value = "/delete")
    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
        //查询关联关系,并删除
        List<UserGroup> userGroupList = userGroupService.lambdaQuery().eq(UserGroup::getGroupId,id).list();
        userGroupService.removeBatchByIds(userGroupList);
        shiftGroupService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "班组人员信息-批量删除")
    @ApiOperation(value="班组人员信息-批量删除", notes="班组人员信息-批量删除")
    //@RequiresPermissions("org.jeecg.modules:base_shift_group:deleteBatch")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.shiftGroupService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    //@AutoLog(value = "班组人员信息-通过id查询")
    @ApiOperation(value="班组人员信息-通过id查询", notes="班组人员信息-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<ShiftGroup> queryById(@RequestParam(name="id",required=true) String id) {
        ShiftGroup shiftGroup = shiftGroupService.getById(id);
        if(shiftGroup==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(shiftGroup);
    }
    /**
    * å¯¼å‡ºexcel
    *
    * @param request
    * @param shiftGroup
    */
    //@RequiresPermissions("org.jeecg.modules:base_shift_group:exportXls")
    @RequestMapping(value = "/exportXls")
    public ModelAndView exportXls(HttpServletRequest request, ShiftGroup shiftGroup) {
        return super.exportXls(request, shiftGroup, ShiftGroup.class, "班组人员信息");
    }
    /**
      * é€šè¿‡excel导入数据
    *
    * @param request
    * @param response
    * @return
    */
    //@RequiresPermissions("base_shift_group:importExcel")
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, ShiftGroup.class);
    }
}
src/main/java/org/jeecg/modules/base/controller/SupplierCategoryController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/SupplierContactController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/SupplierController.java
@@ -1,174 +1,174 @@
package org.jeecg.modules.base.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.Supplier;
import org.jeecg.modules.base.service.ISupplierService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.base.entity.Supplier;
import org.jeecg.modules.base.entity.SupplierCategory;
import org.jeecg.modules.base.service.ISupplierCategoryService;
import org.jeecg.modules.base.service.ISupplierService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.List;
/**
* @Description: ä¾›åº”商
* @Author: jeecg-boot
* @Date:   2023-03-10
* @Version: V1.0
*/
@Api(tags="供应商")
 /**
 * @Description: ä¾›åº”商管理
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Api(tags="供应商管理")
@RestController
@RequestMapping("/eam/supplier")
@RequestMapping("/base/supplier")
@Slf4j
public class SupplierController extends JeecgController<Supplier, ISupplierService> {
    @Autowired
    private ISupplierService inspectionProjectService;
    @Autowired
    private ISupplierCategoryService inspectionProjectCategoryService;
    @Autowired
    private ISupplierService supplierService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param supplier
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    //@AutoLog(value = "供应商管理-分页列表查询")
    @ApiOperation(value="供应商管理-分页列表查询", notes="供应商管理-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<Supplier>> queryPageList(Supplier supplier,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<Supplier> queryWrapper = QueryGenerator.initQueryWrapper(supplier, req.getParameterMap());
        Page<Supplier> page = new Page<Supplier>(pageNo, pageSize);
        IPage<Supplier> pageList = supplierService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param supplier
     * @return
     */
    @AutoLog(value = "供应商管理-添加")
    @ApiOperation(value="供应商管理-添加", notes="供应商管理-添加")
    //@RequiresPermissions("org.jeecg.modules:base_supplier:add")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody Supplier supplier) {
        supplierService.save(supplier);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
     * @param supplier
     * @return
     */
    @AutoLog(value = "供应商管理-编辑")
    @ApiOperation(value="供应商管理-编辑", notes="供应商管理-编辑")
    //@RequiresPermissions("org.jeecg.modules:base_supplier:edit")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody Supplier supplier) {
        supplierService.updateById(supplier);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "供应商管理-通过id删除")
    @ApiOperation(value="供应商管理-通过id删除", notes="供应商管理-通过id删除")
    //@RequiresPermissions("org.jeecg.modules:base_supplier:delete")
    @DeleteMapping(value = "/delete")
    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
        supplierService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "供应商管理-批量删除")
    @ApiOperation(value="供应商管理-批量删除", notes="供应商管理-批量删除")
    //@RequiresPermissions("org.jeecg.modules:base_supplier:deleteBatch")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.supplierService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    //@AutoLog(value = "供应商管理-通过id查询")
    @ApiOperation(value="供应商管理-通过id查询", notes="供应商管理-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<Supplier> queryById(@RequestParam(name="id",required=true) String id) {
        Supplier supplier = supplierService.getById(id);
        if(supplier==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(supplier);
    }
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param inspectionProject
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    @ApiOperation(value="供应商-分页列表查询", notes="供应商-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<Supplier>> queryPageList(Supplier inspectionProject,
                                                          @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                                          @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                                          HttpServletRequest req) {
        QueryWrapper<Supplier> queryWrapper = QueryGenerator.initQueryWrapper(inspectionProject, req.getParameterMap());
        Page<Supplier> page = new Page<Supplier>(pageNo, pageSize);
        IPage<Supplier> pageList = inspectionProjectService.page(page, queryWrapper);
        List<Supplier> records = pageList.getRecords();
        for (Supplier record : records) {
            String inspectionProjectTypeId = record.getSupplierCategoryId();
            SupplierCategory inspectionProjectCategory = inspectionProjectCategoryService.getById(inspectionProjectTypeId);
            if(inspectionProjectCategory != null ){
                record.setSupplierCategoryNumName(inspectionProjectCategory.getNum()+"/"+ inspectionProjectCategory.getName());
            }else{
                record.setSupplierCategoryNumName("/");
            }
        }
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param inspectionProject
     * @return
     */
    @AutoLog(value = "供应商-添加")
    @ApiOperation(value="供应商-添加", notes="供应商-添加")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody Supplier inspectionProject) {
        inspectionProjectService.save(inspectionProject);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
     * @param inspectionProject
     * @return
     */
    @AutoLog(value = "供应商-编辑")
    @ApiOperation(value="供应商-编辑", notes="供应商-编辑")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody Supplier inspectionProject) {
        inspectionProjectService.updateById(inspectionProject);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "供应商-通过id删除")
    @ApiOperation(value="供应商-通过id删除", notes="供应商-通过id删除")
    @DeleteMapping(value = "/delete")
    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
        Supplier inspectionProject = inspectionProjectService.getById(id);
        inspectionProject.setDelFlag(1);
        inspectionProjectService.updateById(inspectionProject);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "供应商-批量删除")
    @ApiOperation(value="供应商-批量删除", notes="供应商-批量删除")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        List<String> idList = Arrays.asList(ids.split(","));
        for (String id : idList) {
            Supplier inspectionProject = inspectionProjectService.getById(id);
            inspectionProject.setDelFlag(1);
            inspectionProjectService.updateById(inspectionProject);
        }
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    @ApiOperation(value="供应商-通过id查询", notes="供应商-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<Supplier> queryById(@RequestParam(name="id",required=true) String id) {
        Supplier inspectionProject = inspectionProjectService.getById(id);
        if(inspectionProject==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(inspectionProject);
    }
    /**
     * å¯¼å‡ºexcel
     *
     * @param request
     * @param inspectionProject
     */
    * å¯¼å‡ºexcel
    *
    * @param request
    * @param supplier
    */
    //@RequiresPermissions("org.jeecg.modules:base_supplier:exportXls")
    @RequestMapping(value = "/exportXls")
    public ModelAndView exportXls(HttpServletRequest request, Supplier inspectionProject) {
        return super.exportXls(request, inspectionProject, Supplier.class, "mom_base_supplier");
    public ModelAndView exportXls(HttpServletRequest request, Supplier supplier) {
        return super.exportXls(request, supplier, Supplier.class, "供应商管理");
    }
    /**
     * é€šè¿‡excel导入数据
     *
     * @param request
     * @param response
     * @return
     */
      * é€šè¿‡excel导入数据
    *
    * @param request
    * @param response
    * @return
    */
    //@RequiresPermissions("base_supplier:importExcel")
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, Supplier.class);
src/main/java/org/jeecg/modules/base/controller/UnitCategoryController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/UnitController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/UnitConversionController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/UserFactoryController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,177 @@
package org.jeecg.modules.base.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.UserFactory;
import org.jeecg.modules.base.service.IUserFactoryService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
 /**
 * @Description: ç”¨æˆ·å·¥åŽ‚/车间/产线关系
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Api(tags="用户工厂/车间/产线关系")
@RestController
@RequestMapping("/base/userFactory")
@Slf4j
public class UserFactoryController extends JeecgController<UserFactory, IUserFactoryService> {
    @Autowired
    private IUserFactoryService userFactoryService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param userFactory
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    //@AutoLog(value = "用户工厂/车间/产线关系-分页列表查询")
    @ApiOperation(value="用户工厂/车间/产线关系-分页列表查询", notes="用户工厂/车间/产线关系-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<UserFactory>> queryPageList(UserFactory userFactory,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<UserFactory> queryWrapper = QueryGenerator.initQueryWrapper(userFactory, req.getParameterMap());
        Page<UserFactory> page = new Page<UserFactory>(pageNo, pageSize);
        IPage<UserFactory> pageList = userFactoryService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param userFactory
     * @return
     */
    @AutoLog(value = "用户工厂/车间/产线关系-添加")
    @ApiOperation(value="用户工厂/车间/产线关系-添加", notes="用户工厂/车间/产线关系-添加")
    //@RequiresPermissions("org.jeecg.modules:base_user_factory:add")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody UserFactory userFactory) {
        userFactoryService.save(userFactory);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
     * @param userFactory
     * @return
     */
    @AutoLog(value = "用户工厂/车间/产线关系-编辑")
    @ApiOperation(value="用户工厂/车间/产线关系-编辑", notes="用户工厂/车间/产线关系-编辑")
    //@RequiresPermissions("org.jeecg.modules:base_user_factory:edit")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody UserFactory userFactory) {
        userFactoryService.updateById(userFactory);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "用户工厂/车间/产线关系-通过id删除")
    @ApiOperation(value="用户工厂/车间/产线关系-通过id删除", notes="用户工厂/车间/产线关系-通过id删除")
    //@RequiresPermissions("org.jeecg.modules:base_user_factory:delete")
    @DeleteMapping(value = "/delete")
    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
        userFactoryService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "用户工厂/车间/产线关系-批量删除")
    @ApiOperation(value="用户工厂/车间/产线关系-批量删除", notes="用户工厂/车间/产线关系-批量删除")
    //@RequiresPermissions("org.jeecg.modules:base_user_factory:deleteBatch")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.userFactoryService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    //@AutoLog(value = "用户工厂/车间/产线关系-通过id查询")
    @ApiOperation(value="用户工厂/车间/产线关系-通过id查询", notes="用户工厂/车间/产线关系-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<UserFactory> queryById(@RequestParam(name="id",required=true) String id) {
        UserFactory userFactory = userFactoryService.getById(id);
        if(userFactory==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(userFactory);
    }
    /**
    * å¯¼å‡ºexcel
    *
    * @param request
    * @param userFactory
    */
    //@RequiresPermissions("org.jeecg.modules:base_user_factory:exportXls")
    @RequestMapping(value = "/exportXls")
    public ModelAndView exportXls(HttpServletRequest request, UserFactory userFactory) {
        return super.exportXls(request, userFactory, UserFactory.class, "用户工厂/车间/产线关系");
    }
    /**
      * é€šè¿‡excel导入数据
    *
    * @param request
    * @param response
    * @return
    */
    //@RequiresPermissions("base_user_factory:importExcel")
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, UserFactory.class);
    }
}
src/main/java/org/jeecg/modules/base/controller/UserGroupController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,177 @@
package org.jeecg.modules.base.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.UserGroup;
import org.jeecg.modules.base.service.IUserGroupService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
 /**
 * @Description: ç­ç»„
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Api(tags="班组")
@RestController
@RequestMapping("/base/userGroup")
@Slf4j
public class UserGroupController extends JeecgController<UserGroup, IUserGroupService> {
    @Autowired
    private IUserGroupService userGroupService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param userGroup
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    //@AutoLog(value = "班组-分页列表查询")
    @ApiOperation(value="班组-分页列表查询", notes="班组-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<UserGroup>> queryPageList(UserGroup userGroup,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<UserGroup> queryWrapper = QueryGenerator.initQueryWrapper(userGroup, req.getParameterMap());
        Page<UserGroup> page = new Page<UserGroup>(pageNo, pageSize);
        IPage<UserGroup> pageList = userGroupService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param userGroup
     * @return
     */
    @AutoLog(value = "班组-添加")
    @ApiOperation(value="班组-添加", notes="班组-添加")
    //@RequiresPermissions("org.jeecg.modules:base_user_group:add")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody UserGroup userGroup) {
        userGroupService.save(userGroup);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
     * @param userGroup
     * @return
     */
    @AutoLog(value = "班组-编辑")
    @ApiOperation(value="班组-编辑", notes="班组-编辑")
    //@RequiresPermissions("org.jeecg.modules:base_user_group:edit")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody UserGroup userGroup) {
        userGroupService.updateById(userGroup);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "班组-通过id删除")
    @ApiOperation(value="班组-通过id删除", notes="班组-通过id删除")
    //@RequiresPermissions("org.jeecg.modules:base_user_group:delete")
    @DeleteMapping(value = "/delete")
    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
        userGroupService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "班组-批量删除")
    @ApiOperation(value="班组-批量删除", notes="班组-批量删除")
    //@RequiresPermissions("org.jeecg.modules:base_user_group:deleteBatch")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.userGroupService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    //@AutoLog(value = "班组-通过id查询")
    @ApiOperation(value="班组-通过id查询", notes="班组-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<UserGroup> queryById(@RequestParam(name="id",required=true) String id) {
        UserGroup userGroup = userGroupService.getById(id);
        if(userGroup==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(userGroup);
    }
    /**
    * å¯¼å‡ºexcel
    *
    * @param request
    * @param userGroup
    */
    //@RequiresPermissions("org.jeecg.modules:base_user_group:exportXls")
    @RequestMapping(value = "/exportXls")
    public ModelAndView exportXls(HttpServletRequest request, UserGroup userGroup) {
        return super.exportXls(request, userGroup, UserGroup.class, "班组");
    }
    /**
      * é€šè¿‡excel导入数据
    *
    * @param request
    * @param response
    * @return
    */
    //@RequiresPermissions("base_user_group:importExcel")
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, UserGroup.class);
    }
}
src/main/java/org/jeecg/modules/base/controller/WarehouseAreaController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/WarehouseController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/WarehouseLocationController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/WorkCenterController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/WorkCenterEquipmentController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/controller/WorkCenterUserController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/Client.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/ClientCategory.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/ClientContact.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/Constructor.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/DepartmentCategory.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/EncodeRule.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/EncodeRuleDepart.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/EncodeRuleDetail.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/EncodeRuleTableFieldRelate.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/Enterprise.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/EnterpriseAdministrator.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/Factory.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,97 @@
package org.jeecg.modules.base.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.common.constant.CommonConstant;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * @Description: å·¥åŽ‚/车间/产线
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Data
@TableName("base_factory")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="base_factory对象", description="工厂/车间/产线")
public class Factory implements Serializable {
    private static final long serialVersionUID = 1L;
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**删除标记*/
    @Excel(name = "删除标记", width = 15)
    @ApiModelProperty(value = "删除标记")
    @TableLogic
    private Integer delFlag = CommonConstant.DEL_FLAG_0;
    /**名称*/
    @Excel(name = "名称", width = 15)
    @ApiModelProperty(value = "名称")
    private String factoryName;
    /**编码*/
    @Excel(name = "编码", width = 15)
    @ApiModelProperty(value = "编码")
    private String factoryCode;
    /**父节点*/
    @Excel(name = "父节点", width = 15)
    @ApiModelProperty(value = "父节点")
    private String parentId;
    /**状态*/
    @Excel(name = "状态", width = 15)
    @ApiModelProperty(value = "状态")
    private String factoryStatus;
    /**分类,工厂/车间/产线*/
    @Excel(name = "分类,工厂/车间/产线", width = 15)
    @ApiModelProperty(value = "分类,工厂/车间/产线")
    private String factoryCategory;
    /**排序*/
    @Excel(name = "排序", width = 15)
    @ApiModelProperty(value = "排序")
    private Integer sorter;
    /**地址*/
    @Excel(name = "地址", width = 15)
    @ApiModelProperty(value = "地址")
    private String address;
    /**MDC展示标识*/
    @Excel(name = "MDC展示标识", width = 15)
    @ApiModelProperty(value = "MDC展示标识")
    private String mdcFlag;
    /**备注*/
    @Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private String remark;
}
src/main/java/org/jeecg/modules/base/entity/FactoryElementCategory.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/FactoryModel.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/FactoryModelDetail.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/LineSideWarehouse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,72 @@
package org.jeecg.modules.base.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * @Description: çº¿è¾¹ä»“库信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Data
@TableName("base_line_side_warehouse")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="base_line_side_warehouse对象", description="线边仓库信息")
public class LineSideWarehouse implements Serializable {
    private static final long serialVersionUID = 1L;
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**删除标记*/
    @Excel(name = "删除标记", width = 15)
    @ApiModelProperty(value = "删除标记")
    @TableLogic
    private Integer delFlag;
    /**仓库编码*/
    @Excel(name = "仓库编码", width = 15)
    @ApiModelProperty(value = "仓库编码")
    private String warehouseCode;
    /**仓库名称*/
    @Excel(name = "仓库名称", width = 15)
    @ApiModelProperty(value = "仓库名称")
    private String warehouseName;
    /**工厂/产线ID*/
    @Excel(name = "工厂/产线ID", width = 15)
    @ApiModelProperty(value = "工厂/产线ID")
    private String factoryId;
}
src/main/java/org/jeecg/modules/base/entity/Material.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/MaterialCategory.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/ProductionLineWarehouse.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/ProductionLineWarehouseClient.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/Shift.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,93 @@
package org.jeecg.modules.base.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.common.constant.CommonConstant;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * @Description: ç­æ¬¡
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Data
@TableName("base_shift")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="base_shift对象", description="班次")
public class Shift implements Serializable {
    private static final long serialVersionUID = 1L;
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**删除标记*/
    @Excel(name = "删除标记", width = 15)
    @ApiModelProperty(value = "删除标记")
    @TableLogic
    private Integer delFlag = CommonConstant.DEL_FLAG_0;
    /**班次名称*/
    @Excel(name = "班次名称", width = 15)
    @ApiModelProperty(value = "班次名称")
    private String shiftName;
    /**班次编码*/
    @Excel(name = "班次编码", width = 15)
    @ApiModelProperty(value = "班次编码")
    private String shiftCode;
    /**开始时间*/
    @Excel(name = "开始时间", width = 15)
    @ApiModelProperty(value = "开始时间")
    private String startTime;
    /**结束时间*/
    @Excel(name = "结束时间", width = 15)
    @ApiModelProperty(value = "结束时间")
    private String endTime;
    /**工作时长(小时)*/
    @Excel(name = "工作时长(小时)", width = 15)
    @ApiModelProperty(value = "工作时长(小时)")
    private BigDecimal workHours;
    /**班次状态*/
    @Excel(name = "班次状态", width = 15)
    @ApiModelProperty(value = "班次状态")
    private String shiftStatus;
    /**是否跨天 1 æ˜¯ 0 å¦ é»˜è®¤ 0*/
    @Excel(name = "是否跨天 1 æ˜¯ 0 å¦ é»˜è®¤ 0", width = 15)
    @ApiModelProperty(value = "是否跨天 1 æ˜¯ 0 å¦ é»˜è®¤ 0")
    private String crossDayFlag;
    /**备注*/
    @Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private String remark;
}
src/main/java/org/jeecg/modules/base/entity/ShiftGroup.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,89 @@
package org.jeecg.modules.base.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.common.constant.CommonConstant;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * @Description: ç­ç»„人员信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Data
@TableName("base_shift_group")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="base_shift_group对象", description="班组人员信息")
public class ShiftGroup implements Serializable {
    private static final long serialVersionUID = 1L;
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**删除标记*/
    @Excel(name = "删除标记", width = 15)
    @ApiModelProperty(value = "删除标记")
    @TableLogic
    private Integer delFlag = CommonConstant.DEL_FLAG_0;
    /**班组名称*/
    @Excel(name = "班组名称", width = 15)
    @ApiModelProperty(value = "班组名称")
    private String groupName;
    /**班组编码*/
    @Excel(name = "班组编码", width = 15)
    @ApiModelProperty(value = "班组编码")
    private String groupCode;
    /**班组长*/
    @Excel(name = "班组长", width = 15)
    @ApiModelProperty(value = "班组长")
    private String groupManager;
    /**状态*/
    @Excel(name = "状态", width = 15)
    @ApiModelProperty(value = "状态")
    private String groupStatus;
    /**班次ID*/
    @Excel(name = "班次ID", width = 15)
    @ApiModelProperty(value = "班次ID")
    private String shiftId;
    /**工厂/车间/产线ID*/
    @Excel(name = "工厂/车间/产线ID", width = 15)
    @ApiModelProperty(value = "工厂/车间/产线ID")
    private String factoryId;
    /**备注*/
    @Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private String remark;
}
src/main/java/org/jeecg/modules/base/entity/Supplier.java
@@ -1,150 +1,121 @@
package org.jeecg.modules.base.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.common.constant.CommonConstant;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.system.base.entity.JeecgEntity;
import org.jeecgframework.poi.excel.annotation.Excel;
import java.io.Serializable;
/**
 * @Description: mom_eam_inspection_project
 * @Description: ä¾›åº”商管理
 * @Author: jeecg-boot
 * @Date: 2023-03-10
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Data
@TableName("mom_base_supplier")
@TableName("base_supplier")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "mom_base_supplier对象", description = "mom_base_supplier")
public class Supplier extends JeecgEntity implements Serializable {
@ApiModel(value="base_supplier对象", description="供应商管理")
public class Supplier implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ç¼–码
     */
    @Excel(name = "编码", width = 15)
    @ApiModelProperty(value = "编码")
    private String num;
    /**
     * åç§°
     */
    @Excel(name = "名称", width = 15)
    @ApiModelProperty(value = "名称")
    private String name;
    /**
     * ç®€ç§°
     */
    @Excel(name = "简称", width = 15)
    @ApiModelProperty(value = "简称")
    private String abbreviation;
    /**
     * ä¾›åº”商类型
     */
    @Excel(name = "供应商类型", width = 15,dicCode = "supplier_type")
    @ApiModelProperty(value = "供应商类型")
    @Dict(dicCode = "supplier_type")
    private String supplierType;
    /**
     * æ‰€å±žè¡Œä¸š
     */
    @Excel(name = "所属行业", width = 15)
    @ApiModelProperty(value = "所属行业")
    private String affiliationIndustry;
    /**
     * åœ°å€
     */
    @Excel(name = "地址",width = 30)
    @ApiModelProperty(value = "地址")
    private  String address;
    /**
     * ç§Ÿæˆ·id
     */
    @Excel(name = "租户id", width = 15)
    @ApiModelProperty(value = "租户id")
    private String tenantId;
    /**
     * åˆ é™¤çŠ¶æ€(0-正常,1-已删除)
     */
    @Excel(name = "删除状态(0-正常,1-已删除)", width = 15)
    @ApiModelProperty(value = "删除状态(0-正常,1-已删除)")
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**删除标记*/
    @Excel(name = "删除标记", width = 15)
    @ApiModelProperty(value = "删除标记")
    @TableLogic
    private Integer delFlag = CommonConstant.DEL_FLAG_0;
    /**
     * å¤‡æ³¨
     */
    @Excel(name = "备注", width = 15)
    /**供应商编码*/
    @Excel(name = "供应商编码", width = 15)
    @ApiModelProperty(value = "供应商编码")
    private String supplierCode;
    /**供应商名称*/
    @Excel(name = "供应商名称", width = 15)
    @ApiModelProperty(value = "供应商名称")
    private String supplierName;
    /**供应商名称*/
    @Excel(name = "供应商名称", width = 15)
    @ApiModelProperty(value = "供应商名称")
    private String supplierStatus;
    /**国家*/
    @Excel(name = "国家", width = 15)
    @ApiModelProperty(value = "国家")
    private String country;
    /**省份*/
    @Excel(name = "省份", width = 15)
    @ApiModelProperty(value = "省份")
    private String province;
    /**城市*/
    @Excel(name = "城市", width = 15)
    @ApiModelProperty(value = "城市")
    private String city;
    /**详细地址*/
    @Excel(name = "详细地址", width = 15)
    @ApiModelProperty(value = "详细地址")
    private String address;
    /**邮编*/
    @Excel(name = "邮编", width = 15)
    @ApiModelProperty(value = "邮编")
    private String postcode;
    /**联系人*/
    @Excel(name = "联系人", width = 15)
    @ApiModelProperty(value = "联系人")
    private String contact;
    /**传真*/
    @Excel(name = "传真", width = 15)
    @ApiModelProperty(value = "传真")
    private String fax;
    /**邮箱*/
    @Excel(name = "邮箱", width = 15)
    @ApiModelProperty(value = "邮箱")
    private String email;
    /**电话*/
    @Excel(name = "电话", width = 15)
    @ApiModelProperty(value = "电话")
    private String phone;
    /**公司电话*/
    @Excel(name = "公司电话", width = 15)
    @ApiModelProperty(value = "公司电话")
    private String companyTelephone;
    /**官方网站*/
    @Excel(name = "官方网站", width = 15)
    @ApiModelProperty(value = "官方网站")
    private String officialWebsite;
    /**备注*/
    @Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private String remark;
    /**
     * å¤‡ç”¨å­—段1
     */
    @Excel(name = "备用字段1", width = 15)
    @ApiModelProperty(value = "备用字段1")
    private String supplierUda1;
    /**
     * å¤‡ç”¨å­—段2
     */
    @Excel(name = "备用字段2", width = 15)
    @ApiModelProperty(value = "备用字段2")
    private String supplierUda2;
    /**
     * å¤‡ç”¨å­—段3
     */
    @Excel(name = "备用字段3", width = 15)
    @ApiModelProperty(value = "备用字段3")
    private String supplierUda3;
    /**
     * å¤‡ç”¨å­—段4
     */
    @Excel(name = "备用字段4", width = 15)
    @ApiModelProperty(value = "备用字段4")
    private String supplierUda4;
    /**
     * å¤‡ç”¨å­—段5
     */
    @Excel(name = "备用字段5", width = 15)
    @ApiModelProperty(value = "备用字段5")
    private String supplierUda5;
    /**
     * çŠ¶æ€ 0 ç¦ç”¨ 1 å¯ç”¨
     */
    @Excel(name = "状态 0 ç¦ç”¨ 1 å¯ç”¨", width = 15)
    @ApiModelProperty(value = "状态 0 ç¦ç”¨ 1 å¯ç”¨")
    private String status = CommonConstant.STATUS_1;
    /**
     * ä¾›åº”商类型Id
     */
    @Excel(name = "supplier_category_id", width = 15)
    @ApiModelProperty(value = "supplier_category_id")
    private String supplierCategoryId;
    @ApiModelProperty(value = "供应商项目分类编码/名称")
    @TableField(exist = false)
    private String supplierCategoryNumName;
}
src/main/java/org/jeecg/modules/base/entity/SupplierCategory.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/SupplierContact.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/Unit.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/UnitCategory.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/UnitConversion.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/UserFactory.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,60 @@
package org.jeecg.modules.base.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * @Description: ç”¨æˆ·å·¥åŽ‚/车间/产线关系
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Data
@TableName("base_user_factory")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="base_user_factory对象", description="用户工厂/车间/产线关系")
public class UserFactory implements Serializable {
    private static final long serialVersionUID = 1L;
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**用户*/
    @Excel(name = "用户", width = 15)
    @ApiModelProperty(value = "用户")
    private String userId;
    /**工厂/车间/产线ID*/
    @Excel(name = "工厂/车间/产线ID", width = 15)
    @ApiModelProperty(value = "工厂/车间/产线ID")
    private String factoryId;
    public UserFactory(String id, String factoryId) {
        this.userId = id;
        this.factoryId = factoryId;
    }
}
src/main/java/org/jeecg/modules/base/entity/UserGroup.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,63 @@
package org.jeecg.modules.base.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import java.util.List;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * @Description: ç­ç»„
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Data
@TableName("base_user_group")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="base_user_group对象", description="班组")
public class UserGroup implements Serializable {
    private static final long serialVersionUID = 1L;
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**班组ID*/
    @Excel(name = "班组ID", width = 15)
    @ApiModelProperty(value = "班组ID")
    private String groupId;
    /**用户ID*/
    @Excel(name = "用户ID", width = 15)
    @ApiModelProperty(value = "用户ID")
    private String userId;
    public UserGroup(String groupId, String userId) {
        super();
        this.groupId = groupId;
        this.userId = userId;
    }
}
src/main/java/org/jeecg/modules/base/entity/Warehouse.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/WarehouseArea.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/WarehouseClient.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/WarehouseLocation.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/WorkCenter.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/WorkCenterDetail.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/WorkCenterEquipment.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/entity/WorkCenterUser.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/ClientCategoryMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/ClientContactMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/ClientMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/ConstructorMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/DepartmentCategoryMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/EncodeRuleDepartMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/EncodeRuleDetailMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/EncodeRuleMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/EncodeRuleTableFieldRelateMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/EnterpriseAdministratorMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/EnterpriseMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/FactoryElementCategoryMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/FactoryMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package org.jeecg.modules.base.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.Factory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * @Description: å·¥åŽ‚/车间/产线
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface FactoryMapper extends BaseMapper<Factory> {
}
src/main/java/org/jeecg/modules/base/mapper/FactoryModelMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/LineSideWarehouseMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package org.jeecg.modules.base.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.LineSideWarehouse;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * @Description: çº¿è¾¹ä»“库信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface LineSideWarehouseMapper extends BaseMapper<LineSideWarehouse> {
}
src/main/java/org/jeecg/modules/base/mapper/MaterialCategoryMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/MaterialMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/ProductionLineWarehouseClientMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/ProductionLineWarehouseMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/ShiftGroupMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package org.jeecg.modules.base.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.ShiftGroup;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * @Description: ç­ç»„人员信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface ShiftGroupMapper extends BaseMapper<ShiftGroup> {
}
src/main/java/org/jeecg/modules/base/mapper/ShiftMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package org.jeecg.modules.base.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.Shift;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * @Description: ç­æ¬¡
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface ShiftMapper extends BaseMapper<Shift> {
}
src/main/java/org/jeecg/modules/base/mapper/SupplierCategoryMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/SupplierContactMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/SupplierMapper.java
@@ -1,16 +1,17 @@
package org.jeecg.modules.base.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.Constructor;
import org.jeecg.modules.base.entity.Supplier;
import org.jeecg.modules.base.entity.Unit;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.Supplier;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * @Description: ä¾›åº”商管理
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface SupplierMapper extends BaseMapper<Supplier> {
    /**
     * é€šè¿‡ä¾›åº”商名称查询供应商信息
     * @param name
     * @return
     */
    public Supplier getByName(@Param("name") String name);
}
src/main/java/org/jeecg/modules/base/mapper/UnitCategoryMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/UnitConversionMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/UnitMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/UserFactoryMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package org.jeecg.modules.base.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.UserFactory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * @Description: ç”¨æˆ·å·¥åŽ‚/车间/产线关系
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface UserFactoryMapper extends BaseMapper<UserFactory> {
}
src/main/java/org/jeecg/modules/base/mapper/UserGroupMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package org.jeecg.modules.base.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.UserGroup;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * @Description: ç­ç»„
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface UserGroupMapper extends BaseMapper<UserGroup> {
}
src/main/java/org/jeecg/modules/base/mapper/WarehouseAreaMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/WarehouseClientMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/WarehouseLocationMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/WarehouseMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/WorkCenterEquipmentMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/WorkCenterMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/WorkCenterUserMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/ClientCategoryMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/ClientContactMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/ConstructorMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/DepartmentCategoryMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleDepartMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleDetailMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleTableFieldRelateMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/EnterpriseAdministratorMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/EnterpriseMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/FactoryElementCategoryMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/FactoryMapper.xml
ÎļþÃû´Ó src/main/java/org/jeecg/modules/base/mapper/xml/MaterialMapper.xml ÐÞ¸Ä
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.base.mapper.MaterialMapper">
<mapper namespace="org.jeecg.modules.base.mapper.FactoryMapper">
</mapper>
</mapper>
src/main/java/org/jeecg/modules/base/mapper/xml/FactoryModelMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/LineSideWarehouseMapper.xml
copy from src/main/java/org/jeecg/modules/base/mapper/xml/MaterialMapper.xml copy to src/main/java/org/jeecg/modules/base/mapper/xml/LineSideWarehouseMapper.xml
Îļþ´Ó src/main/java/org/jeecg/modules/base/mapper/xml/MaterialMapper.xml ¸´ÖÆ
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.base.mapper.MaterialMapper">
<mapper namespace="org.jeecg.modules.base.mapper.LineSideWarehouseMapper">
</mapper>
</mapper>
src/main/java/org/jeecg/modules/base/mapper/xml/MaterialCategoryMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/ProductionLineWarehouseClientMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/ProductionLineWarehouseMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/ShiftGroupMapper.xml
ÎļþÃû´Ó src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleMapper.xml ÐÞ¸Ä
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.base.mapper.EncodeRuleMapper">
<mapper namespace="org.jeecg.modules.base.mapper.ShiftGroupMapper">
</mapper>
src/main/java/org/jeecg/modules/base/mapper/xml/ShiftMapper.xml
ÎļþÃû´Ó src/main/java/org/jeecg/modules/base/mapper/xml/ClientMapper.xml ÐÞ¸Ä
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.base.mapper.ClientMapper">
<mapper namespace="org.jeecg.modules.base.mapper.ShiftMapper">
</mapper>
src/main/java/org/jeecg/modules/base/mapper/xml/SupplierContactMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/SupplierMapper.xml
@@ -2,9 +2,4 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.base.mapper.SupplierMapper">
    <!-- æ ¹æ®ä¾›åº”商名称查询 -->
    <select id="getByName" resultType="org.jeecg.modules.base.entity.Supplier">
        select * from  mom_base_supplier  where name = #{name} and del_flag = 0
    </select>
</mapper>
src/main/java/org/jeecg/modules/base/mapper/xml/UnitCategoryMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/UnitConversionMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/UnitMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/UserFactoryMapper.xml
copy from src/main/java/org/jeecg/modules/base/mapper/xml/MaterialMapper.xml copy to src/main/java/org/jeecg/modules/base/mapper/xml/UserFactoryMapper.xml
Îļþ´Ó src/main/java/org/jeecg/modules/base/mapper/xml/MaterialMapper.xml ¸´ÖÆ
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.base.mapper.MaterialMapper">
<mapper namespace="org.jeecg.modules.base.mapper.UserFactoryMapper">
</mapper>
</mapper>
src/main/java/org/jeecg/modules/base/mapper/xml/UserGroupMapper.xml
copy from src/main/java/org/jeecg/modules/base/mapper/xml/MaterialMapper.xml copy to src/main/java/org/jeecg/modules/base/mapper/xml/UserGroupMapper.xml
Îļþ´Ó src/main/java/org/jeecg/modules/base/mapper/xml/MaterialMapper.xml ¸´ÖÆ
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.base.mapper.MaterialMapper">
<mapper namespace="org.jeecg.modules.base.mapper.UserGroupMapper">
</mapper>
</mapper>
src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseAreaMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseClientMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseLocationMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterEquipmentMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterUserMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/model/FactoryIdModel.java
ÎļþÃû´Ó src/main/java/org/jeecg/modules/system/model/ProductionIdModel.java ÐÞ¸Ä
@@ -1,9 +1,9 @@
package org.jeecg.modules.system.model;
package org.jeecg.modules.base.model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.base.entity.Factory;
import java.io.Serializable;
import java.util.ArrayList;
@@ -18,7 +18,7 @@
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class ProductionIdModel implements Serializable {
public class FactoryIdModel implements Serializable {
    private static final long serialVersionUID = 6403075134223338239L;
@@ -42,18 +42,18 @@
     */
    private Boolean selectable = true;
    List<ProductionIdModel> children = new ArrayList<>();
    List<FactoryIdModel> children = new ArrayList<>();
    /**
     * å°†MdcProductionTreeModel的部分数据放在该对象当中
     * å°†FactoryTreeModel的部分数据放在该对象当中
     *
     * @param treeModel
     * @return
     */
    public ProductionIdModel convert(MdcProductionTreeModel treeModel) {
    public FactoryIdModel convert(FactoryTreeModel treeModel) {
        this.key = treeModel.getId();
        this.value = treeModel.getId();
        this.title = treeModel.getProductionName();
        this.title = treeModel.getFactoryName();
        return this;
    }
@@ -62,10 +62,10 @@
     *
     * @return
     */
    public ProductionIdModel convertByUserProduction(MdcProduction mdcProduction) {
        this.key = mdcProduction.getId();
        this.value = mdcProduction.getId();
        this.title = mdcProduction.getProductionName();
    public FactoryIdModel convertByUserFactory(Factory factory) {
        this.key = factory.getId();
        this.value = factory.getId();
        this.title = factory.getFactoryName();
        return this;
    }
}
src/main/java/org/jeecg/modules/base/model/FactoryTreeModel.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,104 @@
package org.jeecg.modules.base.model;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.modules.base.entity.Factory;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * @author: LiuS
 * @create: 2023-03-23 14:16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "产线表树结构数据实体", description = "产线表")
public class FactoryTreeModel implements Serializable {
    private static final long serialVersionUID = -1309711609760828658L;
    /**
     * å¯¹åº”Factory中的id字段,前端数据树中的key
     */
    private String key;
    /**
     * å¯¹åº”Factory中的id字段,前端数据树中的value
     */
    private String value;
    /**
     * å¯¹åº”factory_name字段,前端数据树中的title
     */
    private String title;
    private boolean isLeaf;
    /**
     * ç±»åž‹
     */
    private Integer type;
    //以下所有字段均与Factory相同
    private String id;
    private String parentId;
    private String factoryName;
    private String address;
    private Integer sorter;
    private String factoryCode;
    private String remark;
    private Integer delFlag;
    private String createBy;
    private Date createTime;
    private String updateBy;
    private Date updateTime;
    private String mdcFlag;
    private List<FactoryTreeModel> children = new ArrayList<>();
    public FactoryTreeModel() {
    }
    /**
     * å°†Factory对象转换成FactoryTreeModel对象
     *
     * @param factory
     */
    public FactoryTreeModel(Factory factory) {
        this.key = factory.getId();
        this.value = factory.getId();
        this.title = factory.getFactoryName();
        this.id = factory.getId();
        this.parentId = factory.getParentId();
        this.factoryName = factory.getFactoryName();
        this.address = factory.getAddress();
        this.sorter = factory.getSorter();
        this.factoryCode = factory.getFactoryCode();
        this.remark = factory.getRemark();
        this.delFlag = factory.getDelFlag();
        this.createBy = factory.getCreateBy();
        this.createTime = factory.getCreateTime();
        this.updateBy = factory.getUpdateBy();
        this.updateTime = factory.getUpdateTime();
        this.mdcFlag = factory.getMdcFlag();
    }
}
src/main/java/org/jeecg/modules/base/service/IClientCategoryService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IClientContactService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IClientService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IConstructorService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IDepartmentCategoryService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IEncodeRuleDepartService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IEncodeRuleDetailService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IEncodeRuleService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IEncodeRuleTableFieldRelateService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IEnterpriseAdministratorService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IEnterpriseService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IFactoryElementCategoryService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IFactoryModelService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IFactoryService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
package org.jeecg.modules.base.service;
import org.jeecg.modules.base.entity.Factory;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.base.model.FactoryIdModel;
import org.jeecg.modules.base.model.FactoryTreeModel;
import java.util.List;
/**
 * @Description: å·¥åŽ‚/车间/产线
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface IFactoryService extends IService<Factory> {
    /**
     * ä¿å­˜äº§çº¿æ•°æ®
     */
    void saveFactoryData(Factory factory);
    /**
     * æŸ¥è¯¢æ‰€æœ‰äº§çº¿ä¿¡æ¯ï¼Œå¹¶åˆ†èŠ‚ç‚¹è¿›è¡Œæ˜¾ç¤º
     */
    List<FactoryTreeModel> queryTreeList();
    /**
     * æŸ¥è¯¢æ‰€æœ‰äº§çº¿ä¿¡æ¯ï¼Œå¹¶åˆ†èŠ‚ç‚¹è¿›è¡Œæ˜¾ç¤º
     */
    List<FactoryTreeModel> queryTreeList(String ids);
    /**
     * æ ¹æ®äº§çº¿id删除并删除其可能存在的子级产线
     */
    boolean delete(String id);
    /**
     * æŸ¥è¯¢æ‰€æœ‰factoryId信息,并分节点进行显示
     */
    List<FactoryIdModel> queryFactoryIdTreeList();
}
src/main/java/org/jeecg/modules/base/service/ILineSideWarehouseService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package org.jeecg.modules.base.service;
import org.jeecg.modules.base.entity.LineSideWarehouse;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * @Description: çº¿è¾¹ä»“库信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface ILineSideWarehouseService extends IService<LineSideWarehouse> {
}
src/main/java/org/jeecg/modules/base/service/IMaterialCategoryService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IMaterialService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IProductionLineWarehouseClientService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IProductionLineWarehouseService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IShiftGroupService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package org.jeecg.modules.base.service;
import org.jeecg.modules.base.entity.ShiftGroup;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * @Description: ç­ç»„人员信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface IShiftGroupService extends IService<ShiftGroup> {
}
src/main/java/org/jeecg/modules/base/service/IShiftService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package org.jeecg.modules.base.service;
import org.jeecg.modules.base.entity.Shift;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * @Description: ç­æ¬¡
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface IShiftService extends IService<Shift> {
}
src/main/java/org/jeecg/modules/base/service/ISupplierCategoryService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/ISupplierContactService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/ISupplierService.java
@@ -1,17 +1,14 @@
package org.jeecg.modules.base.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.base.entity.Supplier;
import org.jeecg.modules.base.entity.SupplierCategory;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * @Description: mom_base_supplier
 * @Description: ä¾›åº”商管理
 * @Author: jeecg-boot
 * @Date:   2023-03-10
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface ISupplierService extends IService<Supplier> {
    public Supplier getByName(String  name);
}
src/main/java/org/jeecg/modules/base/service/IUnitCategoryService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IUnitConversionService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IUnitService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IUserFactoryService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
package org.jeecg.modules.base.service;
import org.jeecg.modules.base.entity.UserFactory;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.base.model.FactoryIdModel;
import java.util.List;
/**
 * @Description: ç”¨æˆ·å·¥åŽ‚/车间/产线关系
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface IUserFactoryService extends IService<UserFactory> {
    /**
     * æ ¹æ®æŒ‡å®šç”¨æˆ·id查询产线信息
     */
    List<FactoryIdModel> queryFactoryIdsOfUser(String userId);
}
src/main/java/org/jeecg/modules/base/service/IUserGroupService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package org.jeecg.modules.base.service;
import org.jeecg.modules.base.entity.UserGroup;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * @Description: ç­ç»„
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
public interface IUserGroupService extends IService<UserGroup> {
}
src/main/java/org/jeecg/modules/base/service/IWarehouseAreaService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IWarehouseClientService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IWarehouseLocationService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IWarehouseService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IWorkCenterEquipmentService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IWorkCenterService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/IWorkCenterUserService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/ClientCategoryServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/ClientContactServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/ClientServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/ConstructorServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/DepartmentCategoryServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceDepartImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceDetailImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleTableFieldRelateServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/EnterpriseAdministratorServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/EnterpriseServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/FactoryElementCategoryServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/FactoryModelServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/FactoryServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,201 @@
package org.jeecg.modules.base.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.constant.FillRuleConstant;
import org.jeecg.common.util.FillRuleUtil;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.Factory;
import org.jeecg.modules.base.entity.UserFactory;
import org.jeecg.modules.base.mapper.FactoryMapper;
import org.jeecg.modules.base.mapper.UserFactoryMapper;
import org.jeecg.modules.base.model.FactoryIdModel;
import org.jeecg.modules.base.model.FactoryTreeModel;
import org.jeecg.modules.base.service.IFactoryService;
import org.jeecg.modules.system.mapper.SysUserMapper;
import org.jeecg.modules.system.util.FindsProductionsChildrenUtil;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
 * @Description: å·¥åŽ‚/车间/产线
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Service
public class FactoryServiceImpl extends ServiceImpl<FactoryMapper, Factory> implements IFactoryService {
    @Resource
    private SysUserMapper sysUserMapper;
    @Resource
    private UserFactoryMapper userFactoryMapper;
    /**
     * saveFactoryData å¯¹åº” add ä¿å­˜ç”¨æˆ·åœ¨é¡µé¢æ·»åŠ çš„æ–°çš„äº§çº¿å¯¹è±¡æ•°æ®
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void saveFactoryData(Factory factory) {
        if (factory != null) {
            if (factory.getParentId() == null) {
                factory.setParentId("");
            }
            factory.setId(IdWorker.getIdStr(factory));
            // å…ˆåˆ¤æ–­è¯¥å¯¹è±¡æœ‰æ— çˆ¶çº§ID,有则意味着不是最高级,否则意味着是最高级
            // èŽ·å–çˆ¶çº§ID
            String parentId = factory.getParentId();
            JSONObject formData = new JSONObject();
            formData.put("parentId",parentId);
            String factoryCategory = "";
            if(StringUtils.isBlank(parentId)){
                factoryCategory = "1";
            }else {
                // æŸ¥è¯¢å‡ºçˆ¶çº§äº§çº¿
                Factory parentFactory = super.getById(parentId);
                // æ ¹æ®çˆ¶çº§äº§çº¿ç±»åž‹ç®—出当前产线的类型
                factoryCategory = String.valueOf(Integer.valueOf(parentFactory.getFactoryCategory()) + 1);
            }
            factory.setFactoryCategory(factoryCategory);
            factory.setDelFlag(CommonConstant.DEL_FLAG_0);
            this.save(factory);
            //处理存在父子关系 mdc标记统一的问题
            //1.mdc标记 ä¸º 1 å¼€å¯ çˆ¶çº§èŠ‚ç‚¹è¦ç»Ÿä¸€å¼€å¯
            //2.mdc标记 ä¸º 0 å…³é—­ å­çº§èŠ‚ç‚¹è¦ç»Ÿä¸€å…³é—­  æ–°å¢žæ“ä½œ ä¸å­˜åœ¨æ­¤æƒ…况
            if(StringUtils.isNotBlank(parentId) && CommonConstant.DEFAULT_1.equals(factory.getMdcFlag())){
                openParentMdcFlag(parentId);
            }
        }
    }
    /**
     * queryTreeList å¯¹åº” queryTreeList æŸ¥è¯¢æ‰€æœ‰çš„产线数据,以树结构形式响应给前端
     */
    @Override
    //@Cacheable(value = "mdc:cache:production:alldata")
    public List<FactoryTreeModel> queryTreeList() {
        LambdaQueryWrapper<Factory> query = new LambdaQueryWrapper<Factory>();
        query.eq(Factory::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
        query.orderByAsc(Factory::getSorter);
        List<Factory> list = this.list(query);
        //调用wrapTreeDataToTreeList方法生成树状数据
        return FindsProductionsChildrenUtil.wrapTreeDataToTreeList(list);
    }
    /**
     * queryTreeList æ ¹æ®äº§çº¿id查询,前端回显调用
     */
    @Override
    public List<FactoryTreeModel> queryTreeList(String ids) {
        List<FactoryTreeModel> listResult = new ArrayList<>();
        LambdaQueryWrapper<Factory> query = new LambdaQueryWrapper<Factory>();
        query.eq(Factory::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
        if (oConvertUtils.isNotEmpty(ids)) {
            query.in(true, Factory::getId, ids.split(","));
        }
        query.orderByAsc(Factory::getSorter);
        List<Factory> list = this.list(query);
        for (Factory factory : list) {
            if (factory.getRemark().isEmpty()){
                factory.setRemark("");
            }
            listResult.add(new FactoryTreeModel(factory));
        }
        return listResult;
    }
    /**
     * æ ¹æ®äº§çº¿id删除并删除其可能存在的子级产线
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean delete(String id) {
        List<String> idList = new ArrayList<>();
        idList.add(id);
        this.checkChildrenExists(id, idList);
        boolean result = this.removeByIds(idList);
        //根据产线id删除用户与产线关系
        userFactoryMapper.delete(new LambdaQueryWrapper<UserFactory>().in(UserFactory::getFactoryId, idList));
        //根据产线id删除产线与设备关系
        //productionEquipmentMapper.delete(new LambdaQueryWrapper<MdcProductionEquipment>().in(MdcProductionEquipment::getProductionId, idList));
        return result;
    }
    /**
     * delete æ–¹æ³•调用 é€’归查找子集id
     */
    private void checkChildrenExists(String id, List<String> idList) {
        LambdaQueryWrapper<Factory> query = new LambdaQueryWrapper<>();
        query.eq(Factory::getParentId, id);
        List<Factory> factoryList = this.list(query);
        if (factoryList != null && !factoryList.isEmpty()) {
            for (Factory factory : factoryList) {
                idList.add(factory.getId());
                this.checkChildrenExists(factory.getId(), idList);
            }
        }
    }
    @Override
    //@Cacheable(value = "mdc:cache:production:allids")
    public List<FactoryIdModel> queryFactoryIdTreeList() {
        LambdaQueryWrapper<Factory> query = new LambdaQueryWrapper<>();
        query.eq(Factory::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
        query.orderByAsc(Factory::getSorter);
        List<Factory> list = this.list(query);
        //调用wrapTreeDataToTreeList方法生成树状数据
        return FindsProductionsChildrenUtil.wrapTreeDataToProductionIdTreeList(list);
    }
    /**
     * æ‰“å¼€ çˆ¶èŠ‚ç‚¹ åŠ ä»¥ä¸Šçš„mdc标记
     * @param parentId
     */
    private void openParentMdcFlag(String parentId) {
        List<String> listParentTree = findParentIdsForFactory(parentId, new ArrayList<>());
        if (!CollectionUtil.isEmpty(listParentTree)) {
            UpdateWrapper<Factory> updateWrapper = new UpdateWrapper<>();
            updateWrapper.in("id", listParentTree);
            updateWrapper.set("mdc_flag", "1");
            super.update(updateWrapper);
        }
    }
    public List<String> findParentIdsForFactory(String parentId, List<String> idList) {
        if (StringUtils.isEmpty(parentId)) {
            return null;
        }
        if (idList == null || idList.isEmpty()) {
            idList = new ArrayList<>();
        }
        boolean p = true;
        if (p) {
            Factory en = super.getById(parentId);
            if (en != null) {
                idList.add(0, en.getId());
            }
            if (StringUtils.isNotBlank(en.getParentId())) {
                parentId = en.getParentId();
                findParentIdsForFactory(parentId, idList);
            } else {
                p = false;
                return idList;
            }
        }
        return idList;
    }
}
src/main/java/org/jeecg/modules/base/service/impl/LineSideWarehouseServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package org.jeecg.modules.base.service.impl;
import org.jeecg.modules.base.entity.LineSideWarehouse;
import org.jeecg.modules.base.mapper.LineSideWarehouseMapper;
import org.jeecg.modules.base.service.ILineSideWarehouseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
 * @Description: çº¿è¾¹ä»“库信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Service
public class LineSideWarehouseServiceImpl extends ServiceImpl<LineSideWarehouseMapper, LineSideWarehouse> implements ILineSideWarehouseService {
}
src/main/java/org/jeecg/modules/base/service/impl/MaterialCategoryImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/MaterialServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/ProductionLineWarehouseClientServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/ProductionLineWarehouseServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/ShiftGroupServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package org.jeecg.modules.base.service.impl;
import org.jeecg.modules.base.entity.ShiftGroup;
import org.jeecg.modules.base.mapper.ShiftGroupMapper;
import org.jeecg.modules.base.service.IShiftGroupService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
 * @Description: ç­ç»„人员信息
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Service
public class ShiftGroupServiceImpl extends ServiceImpl<ShiftGroupMapper, ShiftGroup> implements IShiftGroupService {
}
src/main/java/org/jeecg/modules/base/service/impl/ShiftServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package org.jeecg.modules.base.service.impl;
import org.jeecg.modules.base.entity.Shift;
import org.jeecg.modules.base.mapper.ShiftMapper;
import org.jeecg.modules.base.service.IShiftService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
 * @Description: ç­æ¬¡
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Service
public class ShiftServiceImpl extends ServiceImpl<ShiftMapper, Shift> implements IShiftService {
}
src/main/java/org/jeecg/modules/base/service/impl/SupplierCategoryServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/SupplierContactServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/SupplierServiceImpl.java
@@ -1,27 +1,19 @@
package org.jeecg.modules.base.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.base.entity.Supplier;
import org.jeecg.modules.base.mapper.SupplierMapper;
import org.jeecg.modules.base.mapper.UnitMapper;
import org.jeecg.modules.base.service.ISupplierService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
 * @Description: mom_base_supplier
 * @Description: ä¾›åº”商管理
 * @Author: jeecg-boot
 * @Date:   2023-03-10
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Service
public class SupplierServiceImpl extends ServiceImpl<SupplierMapper, Supplier> implements ISupplierService {
    @Resource
    private SupplierMapper supplierMapper;
    @Override
    public Supplier getByName(String name) {
        return supplierMapper.getByName(name);
    }
}
src/main/java/org/jeecg/modules/base/service/impl/UnitCategoryServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/UnitConversionServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/UnitServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/UserFactoryServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,59 @@
package org.jeecg.modules.base.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.jeecg.modules.base.entity.Factory;
import org.jeecg.modules.base.entity.UserFactory;
import org.jeecg.modules.base.mapper.UserFactoryMapper;
import org.jeecg.modules.base.model.FactoryIdModel;
import org.jeecg.modules.base.service.IFactoryService;
import org.jeecg.modules.base.service.IUserFactoryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.ArrayList;
import java.util.List;
/**
 * @Description: ç”¨æˆ·å·¥åŽ‚/车间/产线关系
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Service
public class UserFactoryServiceImpl extends ServiceImpl<UserFactoryMapper, UserFactory> implements IUserFactoryService {
    @Autowired
    private IFactoryService factoryService;
    /**
     * æ ¹æ®ç”¨æˆ·id查询产线信息
     */
    @Override
    public List<FactoryIdModel> queryFactoryIdsOfUser(String userId) {
        LambdaQueryWrapper<UserFactory> queryUserFactory = new LambdaQueryWrapper<>();
        LambdaQueryWrapper<Factory> queryFactory = new LambdaQueryWrapper<>();
        try {
            queryUserFactory.eq(UserFactory::getUserId, userId);
            List<String> factoryIdList = new ArrayList<>();
            List<FactoryIdModel> factoryIdModelList = new ArrayList<>();
            List<UserFactory> userFactoryList = this.list(queryUserFactory);
            if (userFactoryList != null && !userFactoryList.isEmpty()) {
                for (UserFactory userFactory : userFactoryList) {
                    factoryIdList.add(userFactory.getFactoryId());
                }
                queryFactory.in(Factory::getId, factoryIdList);
                List<Factory> factoryList = factoryService.list(queryFactory);
                if (factoryList != null && !factoryList.isEmpty()) {
                    for (Factory factory : factoryList) {
                        factoryIdModelList.add(new FactoryIdModel().convertByUserFactory(factory));
                    }
                }
                return factoryIdModelList;
            }
        } catch (Exception e) {
            e.fillInStackTrace();
        }
        return null;
    }
}
src/main/java/org/jeecg/modules/base/service/impl/UserGroupServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package org.jeecg.modules.base.service.impl;
import org.jeecg.modules.base.entity.UserGroup;
import org.jeecg.modules.base.mapper.UserGroupMapper;
import org.jeecg.modules.base.service.IUserGroupService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
 * @Description: ç­ç»„
 * @Author: jeecg-boot
 * @Date:   2025-06-24
 * @Version: V1.0
 */
@Service
public class UserGroupServiceImpl extends ServiceImpl<UserGroupMapper, UserGroup> implements IUserGroupService {
}
src/main/java/org/jeecg/modules/base/service/impl/WarehouseAreaServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/WarehouseClientServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/WarehouseLocationServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/WarehouseServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/WorkCenterEquipmentServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/WorkCenterServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/base/service/impl/WorkCenterUserServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/controller/AdministratorController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/controller/MdcProductionController.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/controller/SysUserController.java
@@ -25,13 +25,17 @@
import org.jeecg.common.system.util.JwtUtil;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.*;
import org.jeecg.modules.base.entity.UserGroup;
import org.jeecg.modules.base.service.BaseCommonService;
import org.jeecg.modules.base.service.IUserFactoryService;
import org.jeecg.modules.base.service.IUserGroupService;
import org.jeecg.modules.system.entity.*;
import org.jeecg.modules.system.model.DepartIdModel;
import org.jeecg.modules.system.model.ProductionIdModel;
import org.jeecg.modules.base.model.FactoryIdModel;
import org.jeecg.modules.system.model.SysUserSysDepartModel;
import org.jeecg.modules.system.service.*;
import org.jeecg.modules.system.vo.SysDepartUsersVO;
import org.jeecg.modules.system.vo.SysUserGroupVO;
import org.jeecg.modules.system.vo.SysUserRoleVO;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
@@ -97,7 +101,10 @@
    private BaseCommonService baseCommonService;
    @Resource
    private IMdcUserProductionService userProductionService;
    private IUserFactoryService userFactoryService;
    @Resource
    private IUserGroupService userGroupService;
    /**
     * èŽ·å–ç”¨æˆ·åˆ—è¡¨æ•°æ®
@@ -464,10 +471,10 @@
    @AutoLog(value = "用户表-查询指定用户和产线关联的数据")
    @ApiOperation(value = "用户表-查询指定用户和产线关联的数据", notes = "用户表-查询指定用户和产线关联的数据")
    @GetMapping(value = "/userProductionList")
    public Result<List<ProductionIdModel>> getUserProductionsList(@RequestParam(name = "userId", required = true) String userId) {
        Result<List<ProductionIdModel>> result = new Result<>();
    public Result<List<FactoryIdModel>> getUserProductionsList(@RequestParam(name = "userId", required = true) String userId) {
        Result<List<FactoryIdModel>> result = new Result<>();
        try {
            List<ProductionIdModel> proIdModelList = this.userProductionService.queryProductionIdsOfUser(userId);
            List<FactoryIdModel> proIdModelList = this.userFactoryService.queryFactoryIdsOfUser(userId);
            if (proIdModelList != null && !proIdModelList.isEmpty()) {
                result.setSuccess(true);
                result.setMessage("查找成功");
@@ -1588,4 +1595,99 @@
        return ls;
    }
    @RequestMapping(value = "/userGroupList", method = RequestMethod.GET)
    public Result<IPage<SysUser>> userGroupList(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                                               @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) {
        Result<IPage<SysUser>> result = new Result<IPage<SysUser>>();
        Page<SysUser> page = new Page<SysUser>(pageNo, pageSize);
        String groupId = req.getParameter("groupId");
        String username = req.getParameter("username");
        IPage<SysUser> pageList = sysUserService.getUserByGroupId(page, groupId, username);
        result.setSuccess(true);
        result.setResult(pageList);
        return result;
    }
    /**
     * ç»™æŒ‡å®šç­ç»„添加人员
     *
     * @param
     * @return
     */
    //@RequiresRoles({"admin"})
    @RequestMapping(value = "/addBaseUserGroup", method = RequestMethod.POST)
    public Result<String> addBaseUserGroup(@RequestBody SysUserGroupVO sysUserGroupVO) {
        Result<String> result = new Result<String>();
        try {
            String groupId = sysUserGroupVO.getGroupId();
            for (String userId : sysUserGroupVO.getUserIdList()) {
                UserGroup userGroup = new UserGroup(groupId,userId);
                QueryWrapper<UserGroup> queryWrapper = new QueryWrapper<UserGroup>();
                queryWrapper.eq("group_id", groupId).eq("user_id", userId);
                UserGroup one = userGroupService.getOne(queryWrapper);
                if (one == null) {
                    userGroupService.save(userGroup);
                }
            }
            result.setMessage("添加成功!");
            result.setSuccess(true);
            return result;
        } catch (Exception e) {
            log.error(e.getMessage(), e);
            result.setSuccess(false);
            result.setMessage("出错了: " + e.getMessage());
            return result;
        }
    }
    /**
     * åˆ é™¤æŒ‡å®šç­ç»„的人员关系
     *
     * @param
     * @return
     */
    //@RequiresRoles({"admin"})
    @RequestMapping(value = "/deleteUserGroup", method = RequestMethod.DELETE)
    public Result<UserGroup> deleteUserGroup(@RequestParam(name = "groupId") String groupId,
                                              @RequestParam(name = "userId", required = true) String userId
    ) {
        Result<UserGroup> result = new Result<UserGroup>();
        try {
            QueryWrapper<UserGroup> queryWrapper = new QueryWrapper<UserGroup>();
            queryWrapper.eq("group_id", groupId).eq("user_id", userId);
            userGroupService.remove(queryWrapper);
            result.success("删除成功!");
        } catch (Exception e) {
            log.error(e.getMessage(), e);
            result.error500("删除失败!");
        }
        return result;
    }
    /**
     * æ‰¹é‡åˆ é™¤æŒ‡å®šç­ç»„的人员关系
     *
     * @param
     * @return
     */
    //@RequiresRoles({"admin"})
    @RequestMapping(value = "/deleteUserGroupBatch", method = RequestMethod.DELETE)
    public Result<UserGroup> deleteUserGroupBatch(
            @RequestParam(name = "groupId") String groupId,
            @RequestParam(name = "userIds", required = true) String userIds) {
        Result<UserGroup> result = new Result<UserGroup>();
        try {
            QueryWrapper<UserGroup> queryWrapper = new QueryWrapper<UserGroup>();
            queryWrapper.eq("group_id", groupId).in("user_id", Arrays.asList(userIds.split(",")));
            userGroupService.remove(queryWrapper);
            result.success("删除成功!");
        } catch (Exception e) {
            log.error(e.getMessage(), e);
            result.error500("删除失败!");
        }
        return result;
    }
}
src/main/java/org/jeecg/modules/system/entity/Administrator.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/entity/MdcProduction.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/entity/MdcUserProduction.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/mapper/AdministratorMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/mapper/MdcProductionMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/mapper/MdcUserProductionMapper.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/mapper/SysDepartMapper.java
@@ -4,8 +4,6 @@
import org.apache.ibatis.annotations.Select;
import org.jeecg.common.system.vo.SelectTreeModel;
import org.jeecg.modules.system.entity.SysDepart;
import org.jeecg.modules.system.model.SysDepartTreeModel;
import org.jeecg.modules.system.model.TreeModel;
import org.springframework.data.repository.query.Param;
import java.util.List;
@@ -14,85 +12,97 @@
 * <p>
 * éƒ¨é—¨ Mapper æŽ¥å£
 * <p>
 *
 *
 * @Author: Steve
 * @Since:   2019-01-22
 * @Since: 2019-01-22
 */
public interface SysDepartMapper extends BaseMapper<SysDepart> {
    /**
     * æ ¹æ®ç”¨æˆ·ID查询部门集合
    /**
     * æ ¹æ®ç”¨æˆ·ID查询部门集合
     *
     * @param userId ç”¨æˆ·id
     * @return List<SysDepart>
     */
    public List<SysDepart> queryUserDeparts(@Param("userId") String userId);
     */
    public List<SysDepart> queryUserDeparts(@Param("userId") String userId);
    /**
     * æ ¹æ®ç”¨æˆ·åæŸ¥è¯¢éƒ¨é—¨
     *
     * @param username
     * @return
     */
    public List<SysDepart> queryDepartsByUsername(@Param("username") String username);
    /**
     * æ ¹æ®ç”¨æˆ·åæŸ¥è¯¢éƒ¨é—¨
     *
     * @param username
     * @return
     */
    public List<SysDepart> queryDepartsByUsername(@Param("username") String username);
    /**
     * é€šè¿‡éƒ¨é—¨ç¼–码获取部门id
     *
     * @param orgCode éƒ¨é—¨ç¼–码
     * @return String
     */
    @Select("select id from sys_depart where org_code=#{orgCode}")
    public String queryDepartIdByOrgCode(@Param("orgCode") String orgCode);
    @Select("select id from sys_depart where org_code=#{orgCode}")
    public String queryDepartIdByOrgCode(@Param("orgCode") String orgCode);
    /**
     * é€šè¿‡éƒ¨é—¨id æŸ¥è¯¢éƒ¨é—¨id,父id
     *
     * @param departId éƒ¨é—¨id
     * @return
     */
    @Select("select id,parent_id from sys_depart where id=#{departId}")
    public SysDepart getParentDepartId(@Param("departId") String departId);
    @Select("select id,parent_id from sys_depart where id=#{departId}")
    public SysDepart getParentDepartId(@Param("departId") String departId);
    /**
     *  æ ¹æ®éƒ¨é—¨Id查询,当前和下级所有部门IDS
     * @param departId
     * @return
     */
    List<String> getSubDepIdsByDepId(@Param("departId") String departId);
    /**
     * æ ¹æ®éƒ¨é—¨Id查询,当前和下级所有部门IDS
     *
     * @param departId
     * @return
     */
    List<String> getSubDepIdsByDepId(@Param("departId") String departId);
    /**
     * æ ¹æ®éƒ¨é—¨ç¼–码获取部门下所有IDS
     * @param orgCodes
     * @return
     */
    List<String> getSubDepIdsByOrgCodes(@org.apache.ibatis.annotations.Param("orgCodes") String[] orgCodes);
    /**
     * æ ¹æ®éƒ¨é—¨ç¼–码获取部门下所有IDS
     *
     * @param orgCodes
     * @return
     */
    List<String> getSubDepIdsByOrgCodes(@org.apache.ibatis.annotations.Param("orgCodes") String[] orgCodes);
    /**
     * æ ¹æ®parent_id查询下级部门
     *
     * @param parentId çˆ¶id
     * @return List<SysDepart>
     */
    List<SysDepart> queryTreeListByPid(@Param("parentId") String parentId);
    /**
     * æ ¹æ®id下级部门数量
     * @param parentId
     * @return
     */
    @Select("SELECT count(*) FROM sys_depart where del_flag ='0' AND parent_id = #{parentId,jdbcType=VARCHAR}")
    Integer queryCountByPid(@Param("parentId")String parentId);
    /**
     * æ ¹æ®OrgCod查询所属公司信息
     * @param orgCode
     * @return
     */
    SysDepart queryCompByOrgCode(@Param("orgCode")String orgCode);
    /**
     * æ ¹æ®id下级部门
     * @param parentId
     * @return
     */
    @Select("SELECT * FROM sys_depart where del_flag ='0' AND parent_id = #{parentId,jdbcType=VARCHAR}")
    List<SysDepart> queryDeptByPid(@Param("parentId")String parentId);
    /**
     * æ ¹æ®id下级部门数量
     *
     * @param parentId
     * @return
     */
    @Select("SELECT count(*) FROM sys_depart where del_flag ='0' AND parent_id = #{parentId,jdbcType=VARCHAR}")
    Integer queryCountByPid(@Param("parentId") String parentId);
    /**
     * æ ¹æ®OrgCod查询所属公司信息
     *
     * @param orgCode
     * @return
     */
    SysDepart queryCompByOrgCode(@Param("orgCode") String orgCode);
    /**
     * æ ¹æ®id下级部门
     *
     * @param parentId
     * @return
     */
    @Select("SELECT * FROM sys_depart where del_flag ='0' AND parent_id = #{parentId,jdbcType=VARCHAR}")
    List<SysDepart> queryDeptByPid(@Param("parentId") String parentId);
    List<SysDepart> getDepartListByParentId(List<String> parentIds);
    List<SelectTreeModel> getDepartTreeByParentId(String parentId);
    List<SelectTreeModel> getDepartTreeByParentId(String parentId);
}
src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java
@@ -188,4 +188,13 @@
     * @param userNames ç”¨æˆ·ååˆ—表(需确保非空)
     */
    List<SysUser> selectUsersByNames(@Param("userNames") List<String> userNames);
    /**
     * æ ¹æ®ç­ç»„Id查询用户信息
     * @param page
     * @param groupId ç­ç»„id
     * @param username ç”¨æˆ·ç™»å½•账户
     * @return
     */
    IPage<SysUser> getUserByGroupId(Page page, @Param("groupId") String groupId, @Param("username") String username);
}
src/main/java/org/jeecg/modules/system/mapper/xml/AdministratorMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/mapper/xml/MdcProductionMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/mapper/xml/MdcUserProductionMapper.xml
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/mapper/xml/SysDepartMapper.xml
@@ -72,14 +72,4 @@
        </foreach>
        and del_flag='0'
    </select>
    <select id="getDepartTreeByParentId" parameterType="String" resultType="org.jeecg.common.system.vo.SelectTreeModel">
        select
            id as "key",
            depart_name as "title",
            parent_id as parentId
        from sys_depart
        where parent_id = #{parentId}
          and del_flag='0'
    </select>
</mapper>
src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml
@@ -228,4 +228,12 @@
            #{name}
        </foreach>
    </select>
    <!-- æ ¹æ®ç­ç»„Id查询 -->
    <select id="getUserByGroupId" resultType="org.jeecg.modules.system.entity.SysUser">
        select * from sys_user where del_flag = 0 and id in (select user_id from base_user_group where group_id=#{groupId})
        <if test="username!=null and username!=''">
            and username = #{username}
        </if>
    </select>
</mapper>
src/main/java/org/jeecg/modules/system/model/MdcProductionTreeModel.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/rule/OrgCodeProRule.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/service/IAdministratorService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/service/IMdcProductionService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/service/IMdcUserProductionService.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/service/ISysUserService.java
@@ -344,4 +344,14 @@
     * @return ç”¨æˆ·å->真实姓名的映射(不存在时值为null)
     */
    Map<String, String> getUserRealNamesByUserNames(List<String> userNames);
    /**
     * æ ¹æ®ç­ç»„Id查询
     * @param page
     * @param groupId ç­ç»„id
     * @param username ç”¨æˆ·è´¦æˆ·åç§°
     * @return
     */
    IPage<SysUser> getUserByGroupId(Page<SysUser> page, String groupId, String username);
}
src/main/java/org/jeecg/modules/system/service/impl/AdministratorServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/service/impl/MdcProductionServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/service/impl/MdcUserProductionServiceImpl.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java
@@ -29,9 +29,6 @@
import org.jeecg.common.system.vo.*;
import org.jeecg.common.util.*;
import org.jeecg.common.util.dynamic.db.FreemarkerParseFactory;
import org.jeecg.modules.base.entity.Unit;
import org.jeecg.modules.base.service.IEnterpriseService;
import org.jeecg.modules.base.service.IUnitService;
import org.jeecg.modules.message.entity.SysMessageTemplate;
import org.jeecg.modules.message.handle.impl.DdSendMsgHandle;
import org.jeecg.modules.message.handle.impl.EmailSendMsgHandle;
@@ -126,10 +123,6 @@
    @Autowired
    private IDataVersionService dataVersionService;
    @Autowired
    private IUnitService unitService;
    @Autowired
    private IEnterpriseService enterpriseService;
    @Autowired
@@ -1381,15 +1374,7 @@
        uploadRelaService.delSysUploadRelaByBusIdAndBusType(busId, busType);
    }
    @Override
    public String getUnitNameById(String unitId) {
        Unit unit = unitService.getById(unitId);
        String unitName = "";
        if(unit != null){
            unitName = unit.getName();
        }
        return unitName;
    }
    @Override
    public String queryDictTextByKey(String dictCode, String key) {
@@ -1418,17 +1403,6 @@
        dataVersionService.removeById(id);
    }
    /**
     * æ ¹æ®ä¼ä¸šID获取企业名称
     *
     * @param enterpriseId
     * @return
     */
    @Override
    public String getEnterpriseNameById(String enterpriseId) {
        String enterpriseName = enterpriseService.getById(enterpriseId).getName();
        return enterpriseName;
    }
    @Override
    public List<DataVersion> getLastDataVersion(String businessType, String enterpriseId, String isLastusable) {
src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
@@ -7,6 +7,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.apache.catalina.User;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CacheConstant;
@@ -20,6 +21,8 @@
import org.jeecg.common.util.PasswordUtil;
import org.jeecg.common.util.UUIDGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.base.entity.UserFactory;
import org.jeecg.modules.base.mapper.UserFactoryMapper;
import org.jeecg.modules.base.service.BaseCommonService;
import org.jeecg.modules.system.entity.*;
import org.jeecg.modules.system.mapper.*;
@@ -79,7 +82,7 @@
    @Autowired
    SysRoleIndexMapper sysRoleIndexMapper;
    @Resource
    MdcUserProductionMapper mdcUserProductionMapper;
    UserFactoryMapper userFactoryMapper;
    @Resource
    private ISysDictService sysDictService;
    @Resource
@@ -519,7 +522,7 @@
        // 2. åˆ é™¤ç”¨æˆ·éƒ¨é—¨å…³ç³»
        line += sysUserDepartMapper.delete(new LambdaQueryWrapper<SysUserDepart>().in(SysUserDepart::getUserId, userIds));
        // 3. åˆ é™¤ç”¨æˆ·äº§çº¿å…³ç³»
        line += mdcUserProductionMapper.delete(new LambdaQueryWrapper<MdcUserProduction>().in(MdcUserProduction::getUserId, userIds));
        line += userFactoryMapper.delete(new LambdaQueryWrapper<UserFactory>().in(UserFactory::getUserId, userIds));
        //3. åˆ é™¤ç”¨æˆ·è§’色关系
        line += sysUserRoleMapper.delete(new LambdaQueryWrapper<SysUserRole>().in(SysUserRole::getUserId, userIds));
        //4.同步删除第三方App的用户
@@ -588,9 +591,9 @@
        //step.4 ä¿å­˜æ‰€å±žäº§çº¿
        if (oConvertUtils.isNotEmpty(selectedProductions)) {
            arr = selectedProductions.split(",");
            for (String productionId : arr) {
                MdcUserProduction mdcUserProduction = new MdcUserProduction(user.getId(), productionId);
                mdcUserProductionMapper.insert(mdcUserProduction);
            for (String factoryId : arr) {
                UserFactory userFactory = new UserFactory(user.getId(), factoryId);
                userFactoryMapper.insert(userFactory);
            }
        }
        //step.5 ä¿å­˜è®¾å¤‡æƒé™
@@ -658,11 +661,11 @@
            array = productions.split(",");
        }
        //先删后加
        mdcUserProductionMapper.delete(new QueryWrapper<MdcUserProduction>().lambda().eq(MdcUserProduction::getUserId, user.getId()));
        userFactoryMapper.delete(new QueryWrapper<UserFactory>().lambda().eq(UserFactory::getUserId, user.getId()));
        if (oConvertUtils.isNotEmpty(productions)) {
            for (String productionId : array) {
                MdcUserProduction mdcUserProduction = new MdcUserProduction(user.getId(), productionId);
                mdcUserProductionMapper.insert(mdcUserProduction);
            for (String factoryId : array) {
                UserFactory userFactory = new UserFactory(user.getId(), factoryId);
                userFactoryMapper.insert(userFactory);
            }
        }
        //step.5 ä¿®æ”¹è®¾å¤‡æƒé™
@@ -806,4 +809,17 @@
                        (existing, replacement) -> existing // é‡å¤é”®å¤„理
                ));
    }
    /**
     * æ ¹æ®ç­ç»„Id查询
     * @param page
     * @param groupId ç­ç»„id
     * @param username ç”¨æˆ·è´¦æˆ·åç§°
     * @return
     */
    @Override
    public IPage<SysUser> getUserByGroupId(Page<SysUser> page, String groupId, String username) {
        return userMapper.getUserByGroupId(page,groupId,username);
    }
}
src/main/java/org/jeecg/modules/system/util/FindsProductionsChildrenUtil.java
@@ -2,9 +2,9 @@
import cn.hutool.core.util.StrUtil;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.model.MdcProductionTreeModel;
import org.jeecg.modules.system.model.ProductionIdModel;
import org.jeecg.modules.base.entity.Factory;
import org.jeecg.modules.base.model.FactoryTreeModel;
import org.jeecg.modules.base.model.FactoryIdModel;
import java.util.ArrayList;
import java.util.List;
@@ -21,17 +21,14 @@
     * queryTreeList的子方法 ====1=====
     * è¯¥æ–¹æ³•是s将MdcProduction类型的list集合转换成MdcProductionTreeModel类型的集合
     */
    public static List<MdcProductionTreeModel> wrapTreeDataToTreeList(List<MdcProduction> recordList) {
        List<ProductionIdModel> idList = new ArrayList<>();
        List<MdcProductionTreeModel> records = new ArrayList<>();
    public static List<FactoryTreeModel> wrapTreeDataToTreeList(List<Factory> recordList) {
        List<FactoryIdModel> idList = new ArrayList<>();
        List<FactoryTreeModel> records = new ArrayList<>();
        for (int i = 0; i < recordList.size(); i++) {
            MdcProduction mdcProduction = recordList.get(i);
            if (StrUtil.isEmpty(mdcProduction.getDescription())){
                mdcProduction.setDescription("");
            }
            records.add(new MdcProductionTreeModel(mdcProduction));
            Factory factory = recordList.get(i);
            records.add(new FactoryTreeModel(factory));
        }
        List<MdcProductionTreeModel> tree = findChildren(records, idList);
        List<FactoryTreeModel> tree = findChildren(records, idList);
        setEmptyChildrenAsNull(tree);
        return tree;
    }
@@ -40,14 +37,14 @@
     * queryTreeList的子方法 ====1=====
     * è¯¥æ–¹æ³•是找到并封装顶级父类的节点到TreeList集合
     */
    public static List<MdcProductionTreeModel> findChildren(List<MdcProductionTreeModel> recordList, List<ProductionIdModel> productionIdList) {
        List<MdcProductionTreeModel> treeList = new ArrayList<>();
    public static List<FactoryTreeModel> findChildren(List<FactoryTreeModel> recordList, List<FactoryIdModel> productionIdList) {
        List<FactoryTreeModel> treeList = new ArrayList<>();
        for (int i = 0; i < recordList.size(); i++) {
            MdcProductionTreeModel branch = recordList.get(i);
            FactoryTreeModel branch = recordList.get(i);
            if (oConvertUtils.isEmpty(branch.getParentId())) {
                treeList.add(branch);
                ProductionIdModel productionIdModel = new ProductionIdModel().convert(branch);
                productionIdList.add(productionIdModel);
                FactoryIdModel factoryIdModel = new FactoryIdModel().convert(branch);
                productionIdList.add(factoryIdModel);
            }
        }
        getGrandChildren(treeList, recordList, productionIdList);
@@ -58,15 +55,15 @@
     * queryTreeList的子方法====3====
     *该方法是找到顶级父类下的所有子节点集合并封装到TreeList集合
     */
    private static void getGrandChildren(List<MdcProductionTreeModel> treeList, List<MdcProductionTreeModel> recordList, List<ProductionIdModel> idList) {
    private static void getGrandChildren(List<FactoryTreeModel> treeList, List<FactoryTreeModel> recordList, List<FactoryIdModel> idList) {
        for (int i = 0; i < treeList.size(); i++) {
            MdcProductionTreeModel model = treeList.get(i);
            ProductionIdModel idModel = idList.get(i);
            FactoryTreeModel model = treeList.get(i);
            FactoryIdModel idModel = idList.get(i);
            for (int i1 = 0; i1 < recordList.size(); i1++) {
                MdcProductionTreeModel m = recordList.get(i1);
                FactoryTreeModel m = recordList.get(i1);
                if (m.getParentId() != null && m.getParentId().equals(model.getId())) {
                    model.getChildren().add(m);
                    ProductionIdModel pim = new ProductionIdModel().convert(m);
                    FactoryIdModel pim = new FactoryIdModel().convert(m);
                    idModel.setSelectable(false);
                    idModel.getChildren().add(pim);
                }
@@ -79,9 +76,9 @@
     * queryTreeList的子方法 ====4====
     * è¯¥æ–¹æ³•是将子节点为空的List集合设置为Null值
     */
    private static void setEmptyChildrenAsNull(List<MdcProductionTreeModel> treeList) {
    private static void setEmptyChildrenAsNull(List<FactoryTreeModel> treeList) {
        for (int i = 0; i < treeList.size(); i++) {
            MdcProductionTreeModel model = treeList.get(i);
            FactoryTreeModel model = treeList.get(i);
            if (model.getChildren().size() == 0) {
                model.setChildren(null);
                model.setLeaf(true);
@@ -95,12 +92,12 @@
    /**
     * èŽ·å– DepartIdModel
     */
    public static List<ProductionIdModel> wrapTreeDataToProductionIdTreeList(List<MdcProduction> recordList) {
        List<ProductionIdModel> idList = new ArrayList<>();
        List<MdcProductionTreeModel> records = new ArrayList<>();
    public static List<FactoryIdModel> wrapTreeDataToProductionIdTreeList(List<Factory> recordList) {
        List<FactoryIdModel> idList = new ArrayList<>();
        List<FactoryTreeModel> records = new ArrayList<>();
        for (int i = 0; i < recordList.size(); i++) {
            MdcProduction mdcProduction = recordList.get(i);
            records.add(new MdcProductionTreeModel(mdcProduction));
            Factory factory = recordList.get(i);
            records.add(new FactoryTreeModel(factory));
        }
        findChildren(records, idList);
        return idList;
src/main/java/org/jeecg/modules/system/vo/MdcProOptionsVo.java
ÎļþÒÑɾ³ý
src/main/java/org/jeecg/modules/system/vo/SysUserGroupVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,31 @@
package org.jeecg.modules.system.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * @Description: ç­ç»„人员vo
 * @author: jeecg-boot
 */
@Data
public class SysUserGroupVO implements Serializable{
    private static final long serialVersionUID = 1L;
    /**班组id*/
    private String groupId;
    /**对应的用户id集合*/
    private List<String> userIdList;
    public SysUserGroupVO() {
        super();
    }
    public SysUserGroupVO(String groupId, List<String> userIdList) {
        super();
        this.groupId = groupId;
        this.userIdList = userIdList;
    }
}
src/main/resources/application-dev.yml
@@ -211,17 +211,6 @@
    is_verify_token: true
    #必须校验方法
    verify_methods: remove,delete,save,add,update
  #xxl-job配置
  xxljob:
    enabled: false
    adminAddresses: http://127.0.0.1:9080/xxl-job-admin
    appname: ${spring.application.name}
    accessToken: ''
    address: 127.0.0.1:30007
    ip: 127.0.0.1
    port: 30007
    logPath: logs/jeecg/job/jobhandler/
    logRetentionDays: 30
  #分布式锁配置
  redisson:
    address: 127.0.0.1:6379
@@ -298,23 +287,7 @@
  namespace: http://service.server.webservice.example.com
  statusMethod: equipmentStatus
  rateMethod: equipmentRate
#文件上传目录(注意Linux和Windows上的目录结构不同)
#file.uploadFolder=/root/uploadFiles/
#fileHomePath: ${UPLOAD_FOLDER:/jar/lxzn_storage}
#fileNCPath: ${NC_FOLDER:/jar/NC} # NC文件位置
fileHomePath: ${UPLOAD_FOLDER:d://lxzn_storage}
fileNCPath: ${NC_FOLDER:D://NC} # NC文件位置
ncSend:
  addOrDelete: false  #//是否删除seed ä¸­çš„之前文件
#staticAccessPath: /api/ffile/** # å½“前项目的静态资源访问配置在nginx中
#工控网/涉密网部署相关配置------------通过光盘摆渡
deploy:
    #工控网/涉密网部署 0为涉密网 1为工控网
    deployType: 0
    #涉密网传输nc文件夹
    secretFolder: D:\\opt
    #工控网监控nc文件夹
    workFolder: D:\\opt
# SAP RFC方式接口集成
sap:
  rfc:
    destination: SAP_RFC_DEST # è‡ªå®šä¹‰çš„目标地址 RFC ç›®æ ‡åç§°
src/main/resources/application-dm8.yml
ÎļþÒÑɾ³ý
src/main/resources/application-prod.yml
@@ -132,7 +132,7 @@
        connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
      datasource:
        master:
          url: jdbc:sqlserver://localhost:1433;databasename=LXZN_TEST_COMMON
          url: jdbc:sqlserver://localhost:1433;databasename=LXZN_TEST_XHJ
          username: sa
          password: 123
          driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
@@ -210,17 +210,6 @@
    is_verify_token: true
    #必须校验方法
    verify_methods: remove,delete,save,add,update
  #xxl-job配置
  xxljob:
    enabled: false
    adminAddresses: http://127.0.0.1:9080/xxl-job-admin
    appname: ${spring.application.name}
    accessToken: ''
    address: 127.0.0.1:30007
    ip: 127.0.0.1
    port: 30007
    logPath: logs/jeecg/job/jobhandler/
    logRetentionDays: 30
  #分布式锁配置
  redisson:
    address: 127.0.0.1:6379
@@ -291,4 +280,17 @@
      client-id: ??
      # appSecret
      client-secret: ??
      agent-id: ??
      agent-id: ??
# SAP RFC方式接口集成
sap:
  rfc:
    destination: SAP_RFC_DEST # è‡ªå®šä¹‰çš„目标地址 RFC ç›®æ ‡åç§°
    ashost: 10.101.0.188      # SAP ä¸»æœºåœ°å€
    sysnr: '00'               # ç³»ç»Ÿç¼–号
    client: 800               # å®¢æˆ·ç«¯ç¼–号
    user: SLSAP_JK            # ç”¨æˆ·å
    passwd: 112233            # å¯†ç 
    lang: ZH                  # è¯­è¨€
    poolSize: 5               # çº¿ç¨‹æ± æ•°é‡
    expirationTime: 10000     # è¿‡æœŸæ—¶é—´
    peekLimit: 10             # å³°å€¼
src/main/resources/application-test.yml
@@ -223,17 +223,6 @@
    is_verify_token: true
    #必须校验方法
    verify_methods: remove,delete,save,add,update
  #xxl-job配置
  xxljob:
    enabled: false
    adminAddresses: http://127.0.0.1:9080/xxl-job-admin
    appname: ${spring.application.name}
    accessToken: ''
    address: 127.0.0.1:30007
    ip: 127.0.0.1
    port: 30007
    logPath: logs/jeecg/job/jobhandler/
    logRetentionDays: 30
  #分布式锁配置
  redisson:
    address: 127.0.0.1:6379
src/main/resources/application.yml
@@ -2,5 +2,5 @@
  application:
    name: jeecg-system
  profiles:
    #    active: '@profile.name@'
    active: dev
    active: '@profile.name@'
#    active: dev
src/main/resources/jeecg/jeecg_database.properties
@@ -21,7 +21,7 @@
#SQLServer2005\u4ee5\u4e0a
diver_name=org.hibernate.dialect.SQLServerDialect
url=jdbc:sqlserver://192.168.1.118:1433;DatabaseName=LXZN_TEST_HANGYU
url=jdbc:sqlserver://192.168.1.118:1433;DatabaseName=LXZN_TEST_XHJ
username=sa
password=123
database_name=LXZN_TEST_HANGYU
database_name=LXZN_TEST_XHJ
src/main/resources/processes/assign_nc_to_device.bpmn
ÎļþÒÑɾ³ý