diff --git a/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java b/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java index 9d9e14f7..565df0bc 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java @@ -143,7 +143,7 @@ public class BmsSupplierController { @PostMapping("/relateSuppliers") @PreAuthorize("hasRole('bms:supplier:update')") public R relateSuppliers(@RequestBody @Valid SysRelateSuppliersParam param){ - List supplierIds = param.getSupplierIds(); + List supplierIds = param.getSupplierIds(); String userId = param.getUserId(); List list = bmsSupplierService.listByIds(supplierIds); for (BmsSupplier supplier : list) { @@ -173,6 +173,7 @@ public class BmsSupplierController { supplierParam.setOtherUserIds(otherUserIds.toArray(new String[otherUserIds.size()])); bmsSupplierService.updateById(supplierParam); } + initSupplierOtherInfo(supplierIds); return R.ok(); } @@ -191,6 +192,7 @@ public class BmsSupplierController { bmsSupplier.setId(param.getSupplierId().toString()); bmsSupplier.setOtherUserIds(param.getUserIds()==null?new String[]{}:uids.toArray(new String[uids.size()])); bmsSupplierService.updateById(bmsSupplier); + initSupplierOtherInfo(Arrays.asList(supplier.getId())); return R.ok(); } @@ -202,7 +204,7 @@ public class BmsSupplierController { @PostMapping("/relateRemove") @PreAuthorize("hasRole('bms:supplier:update')") public R relateRemove(@RequestBody SysRelateSuppliersParam param){ - List supplierIds = param.getSupplierIds(); + List supplierIds = param.getSupplierIds(); String userId = param.getUserId(); List list = bmsSupplierService.listByIds(supplierIds); for (BmsSupplier supplier : list) { @@ -224,6 +226,7 @@ public class BmsSupplierController { bmsSupplierService.updateById(supplierParam); } } + initSupplierOtherInfo(supplierIds); return R.ok(); } @@ -244,7 +247,7 @@ public class BmsSupplierController { if(CollectionUtil.isNotEmpty(supplier.getOtherUserIds())){ List otherUserIds = new ArrayList<>(); for (String otherUserId : supplier.getOtherUserIds()) { - if(!Arrays.asList(userIds).contains(otherUserId)){ + if(!userIds.contains(otherUserId)){ otherUserIds.add(otherUserId); } } @@ -253,9 +256,12 @@ public class BmsSupplierController { supplier1.setOtherUserIds(otherUserIds.toArray(new String[otherUserIds.size()])); bmsSupplierService.updateById(supplier1); } + initSupplierOtherInfo(Arrays.asList(supplier.getId())); return R.ok(); } + + /** * 设置主要负责人 * @param supplierId @@ -286,6 +292,7 @@ public class BmsSupplierController { supplierParam.setOtherUserIds(otherArr); } bmsSupplierService.updateById(supplierParam); + initSupplierOtherInfo(Arrays.asList(supplier.getId())); return R.ok(); } @@ -313,6 +320,7 @@ public class BmsSupplierController { bmsSupplier.setId(supplier.getId()); bmsSupplier.setOtherUserIds(otherArr); bmsSupplierService.updateById(bmsSupplier); + initSupplierOtherInfo(Arrays.asList(supplierId.toString())); return R.ok(); } @@ -444,7 +452,7 @@ public class BmsSupplierController { regionList = bmsRegionService.listByIds(regionIds); } for (BmsSupplier supplier : list) { - String regionId = supplier.getRegionThird(); + String regionId = supplier.getRegionLast(); if(regionId!=null&&CollectionUtil.isNotEmpty(regionList)){ for (BmsRegion region : regionList) { if(region.getId().equals(regionId)){ @@ -460,13 +468,14 @@ public class BmsSupplierController { .map(BmsSupplier::getRegion2Last).collect(Collectors.toList()); List region2List = null; if(CollectionUtil.isNotEmpty(region2Ids)){ - region2List = bmsRegion2Service.listByIds(regionIds); + region2List = bmsRegion2Service.listByIds(region2Ids); } for (BmsSupplier supplier : list) { - String region2Id = supplier.getRegion2Third(); + String region2Id = supplier.getRegion2Last(); if(region2Id!=null&&CollectionUtil.isNotEmpty(region2List)){ for (BmsRegion2 region : region2List) { - if(region.getId().equals(region2Id)){ + String regionId = region.getId(); + if(regionId.equals(region2Id)){ supplier.setRegion2Label(region.getName()); break; } @@ -487,5 +496,35 @@ public class BmsSupplierController { } } + /** + * 初始化其它信息 + * @param supplierIds + */ + private void initSupplierOtherInfo(List supplierIds){ + List suppliers = bmsSupplierService.listByIds(supplierIds); + List updParams = new ArrayList<>(); + for (BmsSupplier supplier : suppliers) { + if(CollectionUtil.isNotEmpty(supplier.getOtherUserIds())){ + List otherUserIds = Arrays.asList(supplier.getOtherUserIds()); + BmsSupplier param = new BmsSupplier(); + param.setId(supplier.getId()); + if(otherUserIds.size()>0){ + List userList = sysUserService.listByIds(otherUserIds); + String codes = userList.stream().map(SysUser::getCode).collect(Collectors.joining(",")); + String names = userList.stream().map(SysUser::getName).collect(Collectors.joining(",")); + param.setOtherUserCodes(codes); + param.setOtherUserNames(names); + }else { + param.setOtherUserCodes(""); + param.setOtherUserNames(""); + } + updParams.add(param); + } + } + if(CollectionUtil.isNotEmpty(updParams)){ + bmsSupplierService.updateBatchById(updParams); + } + } + } diff --git a/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java b/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java index 2350bfaf..e4529135 100644 --- a/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java +++ b/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java @@ -87,6 +87,10 @@ public class BmsSupplier implements Serializable { @TableField(typeHandler = SplitStringTypeHandler.class,jdbcType= JdbcType.VARCHAR) private String[] otherUserIds; + private String otherUserNames; + + private String otherUserCodes; + /** 停用 */ private Integer stopFlag; @@ -155,5 +159,17 @@ public class BmsSupplier implements Serializable { @TableField(exist = false) List userVos; + /** + * 搜索:负责人 + */ + @TableField(exist = false) + private String searchUserName; + + /** + * 搜索:负责人编码 + */ + @TableField(exist = false) + private String searchUserCode; + } diff --git a/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegion2ServiceImpl.java b/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegion2ServiceImpl.java index 6f5ecacd..6badb43c 100644 --- a/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegion2ServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegion2ServiceImpl.java @@ -63,7 +63,7 @@ public class BmsRegion2ServiceImpl extends ServiceImplbmsRegion2.getId().equals(user.getUserId())) + .filter(user->bmsRegion2.getId().equals(user.getRegionId())) .collect(Collectors.toList())); } } diff --git a/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionServiceImpl.java b/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionServiceImpl.java index 4ce6b211..978e561b 100644 --- a/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionServiceImpl.java @@ -64,9 +64,10 @@ public class BmsRegionServiceImpl extends ServiceImpl } } for (BmsRegion bmsRegion : list) { - bmsRegion.setRegionUsers(regionUsers.stream() - .filter(user->bmsRegion.getId().equals(user.getUserId())) - .collect(Collectors.toList())); + List regionUserList = regionUsers.stream() + .filter(user->bmsRegion.getId().equals(user.getRegionId())) + .collect(Collectors.toList()); + bmsRegion.setRegionUsers(regionUserList); } } List treeVoList = list.stream().map(region->{ diff --git a/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionUserServiceImpl.java b/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionUserServiceImpl.java index f64cfb15..e937f844 100644 --- a/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionUserServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionUserServiceImpl.java @@ -37,8 +37,8 @@ public class BmsRegionUserServiceImpl extends ServiceImpl supplierIds; + List supplierIds; } diff --git a/src/main/resources/mapper/bms/BmsSupplierMapper.xml b/src/main/resources/mapper/bms/BmsSupplierMapper.xml index 5bb003dd..4e4eac67 100644 --- a/src/main/resources/mapper/bms/BmsSupplierMapper.xml +++ b/src/main/resources/mapper/bms/BmsSupplierMapper.xml @@ -22,6 +22,8 @@ + + @@ -45,6 +47,8 @@ bms_supplier.`user_code`, bms_supplier.`user_name`, bms_supplier.`other_user_ids`, + bms_supplier.`other_user_names`, + bms_supplier.`other_user_codes`, bms_supplier.`stop_flag`, bms_supplier.`belong`, bms_supplier.`create_time`, @@ -80,6 +84,12 @@ and (`bms_supplier`.`user_id` = #{query.currUserId} or FIND_IN_SET(#{query.currUserId},`bms_supplier`.`other_user_ids`) ) + + and (`bms_supplier`.`user_name` LIKE CONCAT('%',#{query.searchUserName},'%') or `bms_supplier`.`other_user_names` LIKE CONCAT('%',#{query.searchUserName},'%') ) + + + and (`bms_supplier`.`user_code` LIKE CONCAT('%',#{query.searchUserCode},'%') or `bms_supplier`.`other_user_codes` LIKE CONCAT('%',#{query.searchUserCode},'%') ) + and bms_supplier.regionLast in