From b231e345300e34c9c918cbd7e2db44d334eb4937 Mon Sep 17 00:00:00 2001 From: cuijian <cuijian@xalxzn.com> Date: 星期六, 28 六月 2025 21:55:44 +0800 Subject: [PATCH] 供应商管理、线边库管理、产线人员绑定 --- src/main/java/org/jeecg/modules/base/entity/ShiftGroup.java | 3 src/main/java/org/jeecg/modules/system/vo/SysUserFactoryVO.java | 31 +++++++ src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java | 12 +++ src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml | 8 ++ src/main/java/org/jeecg/modules/base/controller/LineSideWarehouseController.java | 16 ++++ src/main/java/org/jeecg/modules/base/controller/SupplierController.java | 17 ++++ src/main/java/org/jeecg/modules/base/entity/LineSideWarehouse.java | 8 + src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java | 9 ++ src/main/java/org/jeecg/modules/system/controller/SysUserController.java | 96 ++++++++++++++++++++++++ src/main/java/org/jeecg/modules/system/service/ISysUserService.java | 9 ++ src/main/java/org/jeecg/modules/base/entity/UserFactory.java | 2 src/main/java/org/jeecg/modules/base/model/FactoryTreeModel.java | 3 12 files changed, 212 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/jeecg/modules/base/controller/LineSideWarehouseController.java b/src/main/java/org/jeecg/modules/base/controller/LineSideWarehouseController.java index 91d186c..5b055e6 100644 --- a/src/main/java/org/jeecg/modules/base/controller/LineSideWarehouseController.java +++ b/src/main/java/org/jeecg/modules/base/controller/LineSideWarehouseController.java @@ -10,9 +10,11 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; 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.LineSideWarehouse; +import org.jeecg.modules.base.entity.Supplier; import org.jeecg.modules.base.service.ILineSideWarehouseService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -174,4 +176,18 @@ return super.importExcel(request, response, LineSideWarehouse.class); } + @AutoLog(value = "绾胯竟搴�-鍚敤&绂佺敤") + @ApiOperation(value = "绾胯竟搴�-鍚敤&绂佺敤", notes = "绾胯竟搴�-鍚敤&绂佺敤") + @PutMapping(value = "/active") + public Result<?> active(@RequestParam(name = "id", required = true) String id) { + LineSideWarehouse lineSideWarehouse = lineSideWarehouseService.getById(id); + if (CommonConstant.STATUS_1.equals(lineSideWarehouse.getWarehouseStatus())) { + lineSideWarehouse.setWarehouseStatus(CommonConstant.STATUS_0); + } else { + lineSideWarehouse.setWarehouseStatus(CommonConstant.STATUS_1); + } + lineSideWarehouseService.updateById(lineSideWarehouse); + return Result.ok("鎿嶄綔鎴愬姛锛�"); + } + } diff --git a/src/main/java/org/jeecg/modules/base/controller/SupplierController.java b/src/main/java/org/jeecg/modules/base/controller/SupplierController.java index 32a2574..4e4a9ac 100644 --- a/src/main/java/org/jeecg/modules/base/controller/SupplierController.java +++ b/src/main/java/org/jeecg/modules/base/controller/SupplierController.java @@ -10,6 +10,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; 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.Supplier; @@ -83,6 +84,7 @@ //@RequiresPermissions("org.jeecg.modules:base_supplier:add") @PostMapping(value = "/add") public Result<String> add(@RequestBody Supplier supplier) { + supplier.setSupplierStatus(CommonConstant.STATUS_1); supplierService.save(supplier); return Result.OK("娣诲姞鎴愬姛锛�"); } @@ -174,4 +176,19 @@ return super.importExcel(request, response, Supplier.class); } + + @AutoLog(value = "渚涘簲鍟�-鍚敤&绂佺敤") + @ApiOperation(value = "渚涘簲鍟�-鍚敤&绂佺敤", notes = "渚涘簲鍟�-鍚敤&绂佺敤") + @PutMapping(value = "/active") + public Result<?> active(@RequestParam(name = "id", required = true) String id) { + Supplier supplier = supplierService.getById(id); + if (CommonConstant.STATUS_1.equals(supplier.getSupplierStatus())) { + supplier.setSupplierStatus(CommonConstant.STATUS_0); + } else { + supplier.setSupplierStatus(CommonConstant.STATUS_1); + } + supplierService.updateById(supplier); + return Result.ok("鎿嶄綔鎴愬姛锛�"); + } + } diff --git a/src/main/java/org/jeecg/modules/base/entity/LineSideWarehouse.java b/src/main/java/org/jeecg/modules/base/entity/LineSideWarehouse.java index da8196d..66d46d2 100644 --- a/src/main/java/org/jeecg/modules/base/entity/LineSideWarehouse.java +++ b/src/main/java/org/jeecg/modules/base/entity/LineSideWarehouse.java @@ -10,6 +10,7 @@ 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; @@ -56,7 +57,7 @@ @Excel(name = "鍒犻櫎鏍囪", width = 15) @ApiModelProperty(value = "鍒犻櫎鏍囪") @TableLogic - private Integer delFlag; + private Integer delFlag = CommonConstant.DEL_FLAG_0; /**浠撳簱缂栫爜*/ @Excel(name = "浠撳簱缂栫爜", width = 15) @ApiModelProperty(value = "浠撳簱缂栫爜") @@ -65,8 +66,13 @@ @Excel(name = "浠撳簱鍚嶇О", width = 15) @ApiModelProperty(value = "浠撳簱鍚嶇О") private String warehouseName; + /**浠撳簱鐘舵��*/ + @Excel(name = "浠撳簱鐘舵��", width = 15) + @ApiModelProperty(value = "浠撳簱鐘舵��") + private String warehouseStatus; /**宸ュ巶/浜х嚎ID*/ @Excel(name = "宸ュ巶/浜х嚎ID", width = 15) @ApiModelProperty(value = "宸ュ巶/浜х嚎ID") + @Dict(dictTable = "base_factory", dicCode = "id", dicText = "factory_name") private String factoryId; } diff --git a/src/main/java/org/jeecg/modules/base/entity/ShiftGroup.java b/src/main/java/org/jeecg/modules/base/entity/ShiftGroup.java index 53c0e80..c2efe6d 100644 --- a/src/main/java/org/jeecg/modules/base/entity/ShiftGroup.java +++ b/src/main/java/org/jeecg/modules/base/entity/ShiftGroup.java @@ -69,6 +69,7 @@ /**鐝粍闀�*/ @Excel(name = "鐝粍闀�", width = 15) @ApiModelProperty(value = "鐝粍闀�") + @Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname") private String groupManager; /**鐘舵��*/ @Excel(name = "鐘舵��", width = 15) @@ -77,10 +78,12 @@ /**鐝ID*/ @Excel(name = "鐝ID", width = 15) @ApiModelProperty(value = "鐝ID") + @Dict(dictTable = "base_shift", dicCode = "id", dicText = "shift_name") private String shiftId; /**宸ュ巶/杞﹂棿/浜х嚎ID*/ @Excel(name = "宸ュ巶/杞﹂棿/浜х嚎ID", width = 15) @ApiModelProperty(value = "宸ュ巶/杞﹂棿/浜х嚎ID") + @Dict(dictTable = "base_factory", dicCode = "id", dicText = "factory_name") private String factoryId; /**澶囨敞*/ @Excel(name = "澶囨敞", width = 15) diff --git a/src/main/java/org/jeecg/modules/base/entity/UserFactory.java b/src/main/java/org/jeecg/modules/base/entity/UserFactory.java index c1802f5..43bd4d3 100644 --- a/src/main/java/org/jeecg/modules/base/entity/UserFactory.java +++ b/src/main/java/org/jeecg/modules/base/entity/UserFactory.java @@ -53,7 +53,7 @@ @ApiModelProperty(value = "宸ュ巶/杞﹂棿/浜х嚎ID") private String factoryId; - public UserFactory(String id, String factoryId) { + public UserFactory(String factoryId, String id) { this.userId = id; this.factoryId = factoryId; } diff --git a/src/main/java/org/jeecg/modules/base/model/FactoryTreeModel.java b/src/main/java/org/jeecg/modules/base/model/FactoryTreeModel.java index 8138de7..2adb268 100644 --- a/src/main/java/org/jeecg/modules/base/model/FactoryTreeModel.java +++ b/src/main/java/org/jeecg/modules/base/model/FactoryTreeModel.java @@ -58,6 +58,8 @@ private String factoryCode; + private String factoryCategory; + private String remark; private Integer delFlag; @@ -100,5 +102,6 @@ this.updateBy = factory.getUpdateBy(); this.updateTime = factory.getUpdateTime(); this.mdcFlag = factory.getMdcFlag(); + this.factoryCategory = factory.getFactoryCategory(); } } diff --git a/src/main/java/org/jeecg/modules/system/controller/SysUserController.java b/src/main/java/org/jeecg/modules/system/controller/SysUserController.java index b1de9f0..a438754 100644 --- a/src/main/java/org/jeecg/modules/system/controller/SysUserController.java +++ b/src/main/java/org/jeecg/modules/system/controller/SysUserController.java @@ -25,6 +25,7 @@ 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.UserFactory; import org.jeecg.modules.base.entity.UserGroup; import org.jeecg.modules.base.service.BaseCommonService; import org.jeecg.modules.base.service.IUserFactoryService; @@ -35,6 +36,7 @@ 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.SysUserFactoryVO; import org.jeecg.modules.system.vo.SysUserGroupVO; import org.jeecg.modules.system.vo.SysUserRoleVO; import org.jeecgframework.poi.excel.ExcelImportUtil; @@ -1690,4 +1692,98 @@ return result; } + @RequestMapping(value = "/userFactoryList", method = RequestMethod.GET) + public Result<IPage<SysUser>> userFactoryList(@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 factoryId = req.getParameter("factoryId"); + String username = req.getParameter("username"); + IPage<SysUser> pageList = sysUserService.getUserByFactoryId(page, factoryId, username); + result.setSuccess(true); + result.setResult(pageList); + return result; + } + + /** + * 缁欐寚瀹氫骇绾挎坊鍔犱汉鍛� + * + * @param + * @return + */ + //@RequiresRoles({"admin"}) + @RequestMapping(value = "/addBaseUserFactory", method = RequestMethod.POST) + public Result<String> addBaseUserFactory(@RequestBody SysUserFactoryVO sysUserFactoryVO) { + Result<String> result = new Result<String>(); + try { + String factoryId = sysUserFactoryVO.getFactoryId(); + for (String userId : sysUserFactoryVO.getUserIdList()) { + UserFactory userFactory = new UserFactory(factoryId,userId); + QueryWrapper<UserFactory> queryWrapper = new QueryWrapper<UserFactory>(); + queryWrapper.eq("factory_id", factoryId).eq("user_id", userId); + UserFactory one = userFactoryService.getOne(queryWrapper); + if (one == null) { + userFactoryService.save(userFactory); + } + + } + 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 = "/deleteUserFactory", method = RequestMethod.DELETE) + public Result<UserFactory> deleteUserFactory(@RequestParam(name = "factoryId") String factoryId, + @RequestParam(name = "userId", required = true) String userId + ) { + Result<UserFactory> result = new Result<UserFactory>(); + try { + QueryWrapper<UserFactory> queryWrapper = new QueryWrapper<UserFactory>(); + queryWrapper.eq("factory_id", factoryId).eq("user_id", userId); + userFactoryService.remove(queryWrapper); + result.success("鍒犻櫎鎴愬姛!"); + } catch (Exception e) { + log.error(e.getMessage(), e); + result.error500("鍒犻櫎澶辫触锛�"); + } + return result; + } + + /** + * 鎵归噺鍒犻櫎鎸囧畾浜х嚎鐨勪汉鍛樺叧绯� + * + * @param + * @return + */ + //@RequiresRoles({"admin"}) + @RequestMapping(value = "/deleteUserFactoryBatch", method = RequestMethod.DELETE) + public Result<UserFactory> deleteUserFactoryBatch( + @RequestParam(name = "factoryId") String factoryId, + @RequestParam(name = "userIds", required = true) String userIds) { + Result<UserFactory> result = new Result<UserFactory>(); + try { + QueryWrapper<UserFactory> queryWrapper = new QueryWrapper<UserFactory>(); + queryWrapper.eq("factory_id", factoryId).in("user_id", Arrays.asList(userIds.split(","))); + userFactoryService.remove(queryWrapper); + result.success("鍒犻櫎鎴愬姛!"); + } catch (Exception e) { + log.error(e.getMessage(), e); + result.error500("鍒犻櫎澶辫触锛�"); + } + return result; + } + } diff --git a/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java b/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java index da8346a..26f852e 100644 --- a/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java +++ b/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java @@ -197,4 +197,13 @@ * @return */ IPage<SysUser> getUserByGroupId(Page page, @Param("groupId") String groupId, @Param("username") String username); + + /** + * 鏍规嵁浜х嚎Id鏌ヨ鐢ㄦ埛淇℃伅 + * @param page + * @param factoryId 浜х嚎id + * @param username 鐢ㄦ埛鐧诲綍璐︽埛 + * @return + */ + IPage<SysUser> getUserByFactoryId(Page page, @Param("factoryId") String factoryId, @Param("username") String username); } diff --git a/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml b/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml index e646445..3cd3bec 100644 --- a/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml +++ b/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml @@ -236,4 +236,12 @@ and username = #{username} </if> </select> + + <!-- 鏍规嵁浜х嚎Id鏌ヨ --> + <select id="getUserByFactoryId" resultType="org.jeecg.modules.system.entity.SysUser"> + select * from sys_user where del_flag = 0 and id in (select user_id from base_user_factory where factory_id=#{factoryId}) + <if test="username!=null and username!=''"> + and username = #{username} + </if> + </select> </mapper> diff --git a/src/main/java/org/jeecg/modules/system/service/ISysUserService.java b/src/main/java/org/jeecg/modules/system/service/ISysUserService.java index a2cf793..3ab96db 100644 --- a/src/main/java/org/jeecg/modules/system/service/ISysUserService.java +++ b/src/main/java/org/jeecg/modules/system/service/ISysUserService.java @@ -354,4 +354,13 @@ * @return */ IPage<SysUser> getUserByGroupId(Page<SysUser> page, String groupId, String username); + + /** + * 鏍规嵁浜х嚎Id鏌ヨ + * @param page + * @param factoryId 浜х嚎id + * @param username 鐢ㄦ埛璐︽埛鍚嶇О + * @return + */ + IPage<SysUser> getUserByFactoryId(Page<SysUser> page, String factoryId, String username); } diff --git a/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java b/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java index 89a4838..caebf76 100644 --- a/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java +++ b/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java @@ -818,4 +818,16 @@ public IPage<SysUser> getUserByGroupId(Page<SysUser> page, String groupId, String username) { return userMapper.getUserByGroupId(page,groupId,username); } + + /** + * 鏍规嵁浜х嚎Id鏌ヨ + * @param page + * @param factoryId 鐝粍id + * @param username 鐢ㄦ埛璐︽埛鍚嶇О + * @return + */ + @Override + public IPage<SysUser> getUserByFactoryId(Page<SysUser> page, String factoryId, String username) { + return userMapper.getUserByFactoryId(page,factoryId,username); + } } diff --git a/src/main/java/org/jeecg/modules/system/vo/SysUserFactoryVO.java b/src/main/java/org/jeecg/modules/system/vo/SysUserFactoryVO.java new file mode 100644 index 0000000..d38bca3 --- /dev/null +++ b/src/main/java/org/jeecg/modules/system/vo/SysUserFactoryVO.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 SysUserFactoryVO implements Serializable{ + private static final long serialVersionUID = 1L; + + /**浜х嚎id*/ + private String factoryId; + /**瀵瑰簲鐨勭敤鎴穒d闆嗗悎*/ + private List<String> userIdList; + + public SysUserFactoryVO() { + super(); + } + + public SysUserFactoryVO(String factoryId, List<String> userIdList) { + super(); + this.factoryId = factoryId; + this.userIdList = userIdList; + } + +} -- Gitblit v1.9.3