Browse Source

调整

mssql
Yen 3 years ago
parent
commit
dc235eccfb
  1. 53
      src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java
  2. 16
      src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java
  3. 2
      src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegion2ServiceImpl.java
  4. 7
      src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionServiceImpl.java
  5. 4
      src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionUserServiceImpl.java
  6. 2
      src/main/java/com/qs/serve/modules/sys/entity/bo/SysRelateSuppliersParam.java
  7. 10
      src/main/resources/mapper/bms/BmsSupplierMapper.xml

53
src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java

@ -143,7 +143,7 @@ public class BmsSupplierController {
@PostMapping("/relateSuppliers") @PostMapping("/relateSuppliers")
@PreAuthorize("hasRole('bms:supplier:update')") @PreAuthorize("hasRole('bms:supplier:update')")
public R<?> relateSuppliers(@RequestBody @Valid SysRelateSuppliersParam param){ public R<?> relateSuppliers(@RequestBody @Valid SysRelateSuppliersParam param){
List<Long> supplierIds = param.getSupplierIds(); List<String> supplierIds = param.getSupplierIds();
String userId = param.getUserId(); String userId = param.getUserId();
List<BmsSupplier> list = bmsSupplierService.listByIds(supplierIds); List<BmsSupplier> list = bmsSupplierService.listByIds(supplierIds);
for (BmsSupplier supplier : list) { for (BmsSupplier supplier : list) {
@ -173,6 +173,7 @@ public class BmsSupplierController {
supplierParam.setOtherUserIds(otherUserIds.toArray(new String[otherUserIds.size()])); supplierParam.setOtherUserIds(otherUserIds.toArray(new String[otherUserIds.size()]));
bmsSupplierService.updateById(supplierParam); bmsSupplierService.updateById(supplierParam);
} }
initSupplierOtherInfo(supplierIds);
return R.ok(); return R.ok();
} }
@ -191,6 +192,7 @@ public class BmsSupplierController {
bmsSupplier.setId(param.getSupplierId().toString()); bmsSupplier.setId(param.getSupplierId().toString());
bmsSupplier.setOtherUserIds(param.getUserIds()==null?new String[]{}:uids.toArray(new String[uids.size()])); bmsSupplier.setOtherUserIds(param.getUserIds()==null?new String[]{}:uids.toArray(new String[uids.size()]));
bmsSupplierService.updateById(bmsSupplier); bmsSupplierService.updateById(bmsSupplier);
initSupplierOtherInfo(Arrays.asList(supplier.getId()));
return R.ok(); return R.ok();
} }
@ -202,7 +204,7 @@ public class BmsSupplierController {
@PostMapping("/relateRemove") @PostMapping("/relateRemove")
@PreAuthorize("hasRole('bms:supplier:update')") @PreAuthorize("hasRole('bms:supplier:update')")
public R<?> relateRemove(@RequestBody SysRelateSuppliersParam param){ public R<?> relateRemove(@RequestBody SysRelateSuppliersParam param){
List<Long> supplierIds = param.getSupplierIds(); List<String> supplierIds = param.getSupplierIds();
String userId = param.getUserId(); String userId = param.getUserId();
List<BmsSupplier> list = bmsSupplierService.listByIds(supplierIds); List<BmsSupplier> list = bmsSupplierService.listByIds(supplierIds);
for (BmsSupplier supplier : list) { for (BmsSupplier supplier : list) {
@ -224,6 +226,7 @@ public class BmsSupplierController {
bmsSupplierService.updateById(supplierParam); bmsSupplierService.updateById(supplierParam);
} }
} }
initSupplierOtherInfo(supplierIds);
return R.ok(); return R.ok();
} }
@ -244,7 +247,7 @@ public class BmsSupplierController {
if(CollectionUtil.isNotEmpty(supplier.getOtherUserIds())){ if(CollectionUtil.isNotEmpty(supplier.getOtherUserIds())){
List<String> otherUserIds = new ArrayList<>(); List<String> otherUserIds = new ArrayList<>();
for (String otherUserId : supplier.getOtherUserIds()) { for (String otherUserId : supplier.getOtherUserIds()) {
if(!Arrays.asList(userIds).contains(otherUserId)){ if(!userIds.contains(otherUserId)){
otherUserIds.add(otherUserId); otherUserIds.add(otherUserId);
} }
} }
@ -253,9 +256,12 @@ public class BmsSupplierController {
supplier1.setOtherUserIds(otherUserIds.toArray(new String[otherUserIds.size()])); supplier1.setOtherUserIds(otherUserIds.toArray(new String[otherUserIds.size()]));
bmsSupplierService.updateById(supplier1); bmsSupplierService.updateById(supplier1);
} }
initSupplierOtherInfo(Arrays.asList(supplier.getId()));
return R.ok(); return R.ok();
} }
/** /**
* 设置主要负责人 * 设置主要负责人
* @param supplierId * @param supplierId
@ -286,6 +292,7 @@ public class BmsSupplierController {
supplierParam.setOtherUserIds(otherArr); supplierParam.setOtherUserIds(otherArr);
} }
bmsSupplierService.updateById(supplierParam); bmsSupplierService.updateById(supplierParam);
initSupplierOtherInfo(Arrays.asList(supplier.getId()));
return R.ok(); return R.ok();
} }
@ -313,6 +320,7 @@ public class BmsSupplierController {
bmsSupplier.setId(supplier.getId()); bmsSupplier.setId(supplier.getId());
bmsSupplier.setOtherUserIds(otherArr); bmsSupplier.setOtherUserIds(otherArr);
bmsSupplierService.updateById(bmsSupplier); bmsSupplierService.updateById(bmsSupplier);
initSupplierOtherInfo(Arrays.asList(supplierId.toString()));
return R.ok(); return R.ok();
} }
@ -444,7 +452,7 @@ public class BmsSupplierController {
regionList = bmsRegionService.listByIds(regionIds); regionList = bmsRegionService.listByIds(regionIds);
} }
for (BmsSupplier supplier : list) { for (BmsSupplier supplier : list) {
String regionId = supplier.getRegionThird(); String regionId = supplier.getRegionLast();
if(regionId!=null&&CollectionUtil.isNotEmpty(regionList)){ if(regionId!=null&&CollectionUtil.isNotEmpty(regionList)){
for (BmsRegion region : regionList) { for (BmsRegion region : regionList) {
if(region.getId().equals(regionId)){ if(region.getId().equals(regionId)){
@ -460,13 +468,14 @@ public class BmsSupplierController {
.map(BmsSupplier::getRegion2Last).collect(Collectors.toList()); .map(BmsSupplier::getRegion2Last).collect(Collectors.toList());
List<BmsRegion2> region2List = null; List<BmsRegion2> region2List = null;
if(CollectionUtil.isNotEmpty(region2Ids)){ if(CollectionUtil.isNotEmpty(region2Ids)){
region2List = bmsRegion2Service.listByIds(regionIds); region2List = bmsRegion2Service.listByIds(region2Ids);
} }
for (BmsSupplier supplier : list) { for (BmsSupplier supplier : list) {
String region2Id = supplier.getRegion2Third(); String region2Id = supplier.getRegion2Last();
if(region2Id!=null&&CollectionUtil.isNotEmpty(region2List)){ if(region2Id!=null&&CollectionUtil.isNotEmpty(region2List)){
for (BmsRegion2 region : region2List) { for (BmsRegion2 region : region2List) {
if(region.getId().equals(region2Id)){ String regionId = region.getId();
if(regionId.equals(region2Id)){
supplier.setRegion2Label(region.getName()); supplier.setRegion2Label(region.getName());
break; break;
} }
@ -487,5 +496,35 @@ public class BmsSupplierController {
} }
} }
/**
* 初始化其它信息
* @param supplierIds
*/
private void initSupplierOtherInfo(List<String> supplierIds){
List<BmsSupplier> suppliers = bmsSupplierService.listByIds(supplierIds);
List<BmsSupplier> updParams = new ArrayList<>();
for (BmsSupplier supplier : suppliers) {
if(CollectionUtil.isNotEmpty(supplier.getOtherUserIds())){
List<String> otherUserIds = Arrays.asList(supplier.getOtherUserIds());
BmsSupplier param = new BmsSupplier();
param.setId(supplier.getId());
if(otherUserIds.size()>0){
List<SysUser> 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);
}
}
} }

16
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) @TableField(typeHandler = SplitStringTypeHandler.class,jdbcType= JdbcType.VARCHAR)
private String[] otherUserIds; private String[] otherUserIds;
private String otherUserNames;
private String otherUserCodes;
/** 停用 */ /** 停用 */
private Integer stopFlag; private Integer stopFlag;
@ -155,5 +159,17 @@ public class BmsSupplier implements Serializable {
@TableField(exist = false) @TableField(exist = false)
List<?> userVos; List<?> userVos;
/**
* 搜索负责人
*/
@TableField(exist = false)
private String searchUserName;
/**
* 搜索负责人编码
*/
@TableField(exist = false)
private String searchUserCode;
} }

2
src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegion2ServiceImpl.java

@ -63,7 +63,7 @@ public class BmsRegion2ServiceImpl extends ServiceImpl<BmsRegion2Mapper,BmsRegio
} }
for (BmsRegion2 bmsRegion2 : list) { for (BmsRegion2 bmsRegion2 : list) {
bmsRegion2.setRegionUsers(regionUsers.stream() bmsRegion2.setRegionUsers(regionUsers.stream()
.filter(user->bmsRegion2.getId().equals(user.getUserId())) .filter(user->bmsRegion2.getId().equals(user.getRegionId()))
.collect(Collectors.toList())); .collect(Collectors.toList()));
} }
} }

7
src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionServiceImpl.java

@ -64,9 +64,10 @@ public class BmsRegionServiceImpl extends ServiceImpl<BmsRegionMapper,BmsRegion>
} }
} }
for (BmsRegion bmsRegion : list) { for (BmsRegion bmsRegion : list) {
bmsRegion.setRegionUsers(regionUsers.stream() List<BmsRegionUser> regionUserList = regionUsers.stream()
.filter(user->bmsRegion.getId().equals(user.getUserId())) .filter(user->bmsRegion.getId().equals(user.getRegionId()))
.collect(Collectors.toList())); .collect(Collectors.toList());
bmsRegion.setRegionUsers(regionUserList);
} }
} }
List<BmsRegionTreeVo> treeVoList = list.stream().map(region->{ List<BmsRegionTreeVo> treeVoList = list.stream().map(region->{

4
src/main/java/com/qs/serve/modules/bms/service/impl/BmsRegionUserServiceImpl.java

@ -37,8 +37,8 @@ public class BmsRegionUserServiceImpl extends ServiceImpl<BmsRegionUserMapper,Bm
lqw.ne(BmsRegionUser::getUserId,regionUser.getUserId()); lqw.ne(BmsRegionUser::getUserId,regionUser.getUserId());
BmsRegionUser param = new BmsRegionUser(); BmsRegionUser param = new BmsRegionUser();
param.setMasterFlag(0); param.setMasterFlag(0);
this.update(regionUser,lqw); this.update(param,lqw);
regionUser.setMasterFlag(0); regionUser.setMasterFlag(1);
this.updateById(regionUser); this.updateById(regionUser);
} }

2
src/main/java/com/qs/serve/modules/sys/entity/bo/SysRelateSuppliersParam.java

@ -21,6 +21,6 @@ public class SysRelateSuppliersParam {
* 供应商id列表 * 供应商id列表
*/ */
@NotNull @NotNull
List<Long> supplierIds; List<String> supplierIds;
} }

10
src/main/resources/mapper/bms/BmsSupplierMapper.xml

@ -22,6 +22,8 @@
<result property="stopFlag" column="stop_flag"/> <result property="stopFlag" column="stop_flag"/>
<result property="belong" column="belong"/> <result property="belong" column="belong"/>
<result property="otherUserIds" column="other_user_ids" typeHandler="com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler"/> <result property="otherUserIds" column="other_user_ids" typeHandler="com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler"/>
<result property="otherUserNames" column="other_user_names"/>
<result property="otherUserCodes" column="other_user_codes"/>
<result property="createTime" column="create_time"/> <result property="createTime" column="create_time"/>
<result property="createBy" column="create_by"/> <result property="createBy" column="create_by"/>
<result property="updateTime" column="update_time"/> <result property="updateTime" column="update_time"/>
@ -45,6 +47,8 @@
bms_supplier.`user_code`, bms_supplier.`user_code`,
bms_supplier.`user_name`, bms_supplier.`user_name`,
bms_supplier.`other_user_ids`, bms_supplier.`other_user_ids`,
bms_supplier.`other_user_names`,
bms_supplier.`other_user_codes`,
bms_supplier.`stop_flag`, bms_supplier.`stop_flag`,
bms_supplier.`belong`, bms_supplier.`belong`,
bms_supplier.`create_time`, bms_supplier.`create_time`,
@ -80,6 +84,12 @@
<if test="query.currUserId!=null and query.currUserId != ''"> <if test="query.currUserId!=null and query.currUserId != ''">
and (`bms_supplier`.`user_id` = #{query.currUserId} or FIND_IN_SET(#{query.currUserId},`bms_supplier`.`other_user_ids`) ) and (`bms_supplier`.`user_id` = #{query.currUserId} or FIND_IN_SET(#{query.currUserId},`bms_supplier`.`other_user_ids`) )
</if> </if>
<if test="query.searchUserName!=null and query.searchUserName != ''">
and (`bms_supplier`.`user_name` LIKE CONCAT('%',#{query.searchUserName},'%') or `bms_supplier`.`other_user_names` LIKE CONCAT('%',#{query.searchUserName},'%') )
</if>
<if test="query.searchUserCode!=null and query.searchUserCode != ''">
and (`bms_supplier`.`user_code` LIKE CONCAT('%',#{query.searchUserCode},'%') or `bms_supplier`.`other_user_codes` LIKE CONCAT('%',#{query.searchUserCode},'%') )
</if>
<if test="query.regionIds!=null and query.regionIds.size > 0"> <if test="query.regionIds!=null and query.regionIds.size > 0">
and bms_supplier.regionLast in and bms_supplier.regionLast in
<foreach collection="query.regionIds" item ="selectId" index="i" open="(" close=")" separator=","> <foreach collection="query.regionIds" item ="selectId" index="i" open="(" close=")" separator=",">

Loading…
Cancel
Save