From 186f6eb07df6934d2e28330ba39dcfce30c0063a Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期六, 09 十二月 2023 10:55:52 +0800 Subject: [PATCH] 修复库管员角色问题 --- consum-base/src/main/java/com/consum/base/core/type/MixType.java | 2 consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java | 40 ++++++++++++-------- consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java | 3 + consum-base/src/main/java/com/consum/base/service/impl/BaseGoodsTemplateServiceImpl.java | 1 consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java | 42 ++++++++++++-------- consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java | 4 +- 6 files changed, 54 insertions(+), 38 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java b/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java index 2d72106..88c1f20 100644 --- a/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java +++ b/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java @@ -1,5 +1,14 @@ package com.consum.base.controller; +import java.util.List; +import java.util.Set; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + import com.consum.base.BaseController; import com.consum.base.core.utils.CommonUtil; import com.consum.base.pojo.request.WarehouseManagerParam; @@ -7,22 +16,17 @@ import com.consum.model.po.BaseWarehouseManager; import com.consum.model.po.FinSysTenantUser; import com.walker.web.ResponseValue; + import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; /** * @Description 搴撶鍛� * @Author 鍗㈠簡闃� * @Date 2023/10/26 - * <p> + * <p> */ @Api(value = "搴撶鍛�", tags = "搴撶鍛�") @RestController @@ -38,7 +42,8 @@ * @Date 2023/10/26 */ @ApiOperation(value = "鏂板", notes = "鏂板") - @ApiImplicitParam(name = "warehouseManagerParam", value = "搴撶鍛樹俊鎭�", required = true, dataType = "WarehouseManagerParam", paramType = "body") + @ApiImplicitParam(name = "warehouseManagerParam", value = "搴撶鍛樹俊鎭�", required = true, + dataType = "WarehouseManagerParam", paramType = "body") @PostMapping("/save") public ResponseValue add() throws Exception { WarehouseManagerParam param = CommonUtil.getObjFromReqBody(WarehouseManagerParam.class); @@ -50,7 +55,11 @@ if (sysInfo == null) { return ResponseValue.error("璇峰厛鐧诲綍"); } - baseWarehouseManagerService.add(param); + Set<Long> userIds = baseWarehouseManagerService.add(param); + for (Long userId : userIds) { + this.getFinSysTenantUserCache().remove(String.valueOf(userId)); + this.getUserCacheProvider().removeUser(userId); + } return ResponseValue.success(); } @@ -58,20 +67,19 @@ @ApiImplicitParam(name = "warehouseId", value = "浠撳簱id", required = true, dataType = "Long") @GetMapping("/list") public ResponseValue select(Long warehouseId) { - List<BaseWarehouseManager> baseWarehouseManagerList = baseWarehouseManagerService.selectWarehouseManager(warehouseId); + List<BaseWarehouseManager> baseWarehouseManagerList = + baseWarehouseManagerService.selectWarehouseManager(warehouseId); return ResponseValue.success(baseWarehouseManagerList); } @ApiOperation(value = "鏍规嵁浠撳簱,鏈烘瀯id鏌ヨ搴撶鍛�", notes = "鏍规嵁浠撳簱,鏈烘瀯id鏌ヨ搴撶鍛�") - @ApiImplicitParams({ - @ApiImplicitParam(name = "warehouseId", value = "浠撳簱id", required = true, dataType = "Long"), - @ApiImplicitParam(name = "agencyId", value = "鏈烘瀯id", required = true, dataType = "Long") - }) + @ApiImplicitParams({@ApiImplicitParam(name = "warehouseId", value = "浠撳簱id", required = true, dataType = "Long"), + @ApiImplicitParam(name = "agencyId", value = "鏈烘瀯id", required = true, dataType = "Long")}) @GetMapping("/query") public ResponseValue selectManagerList(Long warehouseId, Long agencyId) { - List<BaseWarehouseManager> baseWarehouseManagerList = baseWarehouseManagerService.selectManagerList(warehouseId, agencyId); + List<BaseWarehouseManager> baseWarehouseManagerList = + baseWarehouseManagerService.selectManagerList(warehouseId, agencyId); return ResponseValue.success(baseWarehouseManagerList); } } - diff --git a/consum-base/src/main/java/com/consum/base/core/type/MixType.java b/consum-base/src/main/java/com/consum/base/core/type/MixType.java index ed2968c..7174114 100644 --- a/consum-base/src/main/java/com/consum/base/core/type/MixType.java +++ b/consum-base/src/main/java/com/consum/base/core/type/MixType.java @@ -14,7 +14,7 @@ private final static Map<String, String> map = new HashMap<>(); static { - // 鍗曟嵁绫诲瀷 1 閲囪喘2 璋冩嫧 3鍑哄簱4閮ㄩ棬鍒嗗彂 + // 鍗曟嵁绫诲瀷 1閲囪喘2璋冩嫧3鍑哄簱4閮ㄩ棬鍒嗗彂5鎶ュ簾 // 1=璋冨锛�2=璋冨噺 //1閲囪喘鍏ュ簱 map.put("1" + "1", "1"); diff --git a/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java b/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java index 809d450..2e49b94 100644 --- a/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java +++ b/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java @@ -4,10 +4,11 @@ import com.consum.model.po.BaseWarehouseManager; import com.walker.jdbc.service.BaseService; import java.util.List; +import java.util.Set; public interface BaseWarehouseManagerService extends BaseService { - void add(WarehouseManagerParam list) throws Exception; + Set<Long> add(WarehouseManagerParam list) throws Exception; List<BaseWarehouseManager> selectWarehouseManager(Long warehouseId); diff --git a/consum-base/src/main/java/com/consum/base/service/impl/BaseGoodsTemplateServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/BaseGoodsTemplateServiceImpl.java index ef29012..9a063c0 100644 --- a/consum-base/src/main/java/com/consum/base/service/impl/BaseGoodsTemplateServiceImpl.java +++ b/consum-base/src/main/java/com/consum/base/service/impl/BaseGoodsTemplateServiceImpl.java @@ -72,7 +72,6 @@ BeanUtils.copyProperties(param, baseGoodsTemplate); long goodsTemplatesId = IdUtil.generateId(); baseGoodsTemplate.setId(goodsTemplatesId); - //NumberGenerator.getLongSequenceNumber() //鏍规嵁鍒嗙被id鏌ヨ鍒嗙被 BaseCategory baseCategory = this.baseCategoryService.get(new BaseCategory(param.getCategoryId())); if (baseCategory != null) { diff --git a/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java index a3951e3..2268ac2 100644 --- a/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java +++ b/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java @@ -1,5 +1,15 @@ package com.consum.base.service.impl; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import org.apache.commons.compress.utils.Sets; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + import com.consum.base.core.utils.IdUtil; import com.consum.base.pojo.WarehouseManagerInfo; import com.consum.base.pojo.request.WarehouseManagerParam; @@ -10,13 +20,6 @@ import com.iplatform.model.po.S_role; import com.walker.infrastructure.utils.CollectionUtils; import com.walker.jdbc.service.BaseServiceImpl; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; /** * @Description 鐗╁搧鍒嗙被 @@ -29,23 +32,24 @@ @Autowired private FinSysTenantUserServiceImpl finSysTenantUserService; - /** + * @return * @Description 鏂板 * @Author 鍗㈠簡闃� * @Date 2023/10/26 */ @Override @Transactional(rollbackFor = Exception.class) - public void add(WarehouseManagerParam list) throws Exception { + public Set<Long> add(WarehouseManagerParam list) throws Exception { + Set<Long> sysUserIds = Sets.newHashSet(); Long warehouseId = list.getWarehouseId(); - // 瑙掕壊id Long roleId = null; List<S_role> roleAll = finSysTenantUserService.getRoleAll(); if (!CollectionUtils.isEmpty(roleAll)) { - S_role sRole = roleAll.stream().filter(item -> item.getRole_name().equals("浠撳簱绠$悊鍛�")).findFirst().orElse(null); + S_role sRole = + roleAll.stream().filter(item -> item.getRole_name().equals("浠撳簱绠$悊鍛�")).findFirst().orElse(null); if (sRole != null) { roleId = sRole.getRole_id(); } @@ -66,14 +70,16 @@ params.put("managerId", finSysTenantUser.getSysUserId()); params.put("roleId", roleId); this.execute(deleteRoleSql, params); + + sysUserIds.add(finSysTenantUser.getSysUserId()); } - //鍒犻櫎搴撶璁板綍 + // 鍒犻櫎搴撶璁板綍 String sql = "delete from base_warehouse_manager where base_warehouse_id =:warehouseId"; Map<String, Object> params = new HashMap<>(); params.put("warehouseId", warehouseId); this.execute(sql, params); - //閲嶆柊淇濆瓨 + // 閲嶆柊淇濆瓨 List<WarehouseManagerInfo> warehouseManagerInfoList = list.getWarehouseManagerInfoList(); if (!CollectionUtils.isEmpty(warehouseManagerInfoList)) { for (WarehouseManagerInfo warehouseManagerInfo : warehouseManagerInfoList) { @@ -92,7 +98,8 @@ } Long sysUserId = finSysTenantUser.getSysUserId(); // 鍏堝垽鏂槸鍚︽嫢鏈夎瑙掕壊 - String isHasRole = "select count(1) from s_role_user where org_id=0 and role_id=" + roleId + " and user_id=" + sysUserId; + String isHasRole = "select * from s_role_user where org_id=0 and role_id=" + roleId + + " and user_id=" + sysUserId; List<Map<String, Object>> isHasRoleList = this.select(isHasRole, new HashMap<>()); if (!CollectionUtils.isEmpty(isHasRoleList)) { continue; @@ -103,9 +110,10 @@ userRoleParam.put("roleId", roleId); this.execute(saveUserRole, userRoleParam); + sysUserIds.add(finSysTenantUser.getSysUserId()); } } - + return sysUserIds; } @Override @@ -118,7 +126,8 @@ @Override public List<BaseWarehouseManager> selectManagerList(Long warehouseId, Long agencyId) { - StringBuilder sql = new StringBuilder("select * from base_warehouse_manager bwm left join base_warehouse bw on bwm.base_warehouse_id = bw.id " + StringBuilder sql = new StringBuilder( + "select * from base_warehouse_manager bwm left join base_warehouse bw on bwm.base_warehouse_id = bw.id " + "where 1=1 "); Map<String, Object> param = new HashMap<>(); if (warehouseId != null) { @@ -132,6 +141,5 @@ List<BaseWarehouseManager> select = this.select(sql.toString(), param, new BaseWarehouseManager()); return select; } - } diff --git a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java index 5dd5968..c333fa9 100644 --- a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java +++ b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java @@ -132,9 +132,9 @@ // 浠庡綋鍓嶇櫥褰曞簱绠′汉浠庡簱涓嚭搴擄紝鍏ュ埌鎵�閫夐儴闂ㄧ殑涓� // 鏌ヨ搴撶鍛樹俊鎭拰鐩稿叧浠撳簱 - Long id = sysInfo.getId(); + Long sysUserId = sysInfo.getSysUserId(); BaseWarehouseManager manager = new BaseWarehouseManager(); - manager.setManagerId(id); + manager.setManagerId(sysUserId); List<BaseWarehouseManager> managerList = baseWarehouseManagerService.select(manager); if (CollectionUtils.isEmpty(managerList)) { log.error("璇ョ敤鎴蜂笉鏄簱绠″憳"); -- Gitblit v1.9.1