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 7fdf7a5e..e312a090 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 @@ -84,14 +84,14 @@ public class BmsSupplierController { param.setCode(param.getSupplierCode()); } -// String userId = param.getUserId(); -// if(param.getLoadByCurrent()!=null&¶m.getLoadByCurrent().equals(1)){ -// List userIds = sysPostUserService.listByChildIds(userId); -// userIds.add(userId); -// param.setSelectUserIds(userIds); -// }else { -// param.setCurrUserId(userId); -// } + String userId = param.getUserId(); + if(param.getLoadByCurrent()!=null&¶m.getLoadByCurrent().equals(1)){ + List userIds = sysPostUserService.listByChildIds(userId); + userIds.add(userId); + param.setSelectUserIds(userIds); + }else { + param.setCurrUserId(userId); + } if(StringUtils.hasText(param.getRegion2Label())){ LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); @@ -168,13 +168,13 @@ public class BmsSupplierController { List list = bmsSupplierService.selectSupplierList(param); initSupplierList(list); initParentList(list); -// for (BmsSupplier supplier : list) { -// supplier.setMasterFlag(0); -// if(supplier.getUserId()!=null&&supplier.getUserId().equals(userId)){ -// supplier.setMasterFlag(1); -// break; -// } -// } + for (BmsSupplier supplier : list) { + supplier.setMasterFlag(0); + if(supplier.getUserId()!=null&&supplier.getUserId().equals(userId)){ + supplier.setMasterFlag(1); + break; + } + } return R.ok(list); } @@ -266,11 +266,9 @@ public class BmsSupplierController { }else{ param.setSearchRegionSecond(Arrays.asList("#")); } - } + } if(param.getLoadByCurrent()!=null&¶m.getLoadByCurrent().equals(1)){ - List list = bmsSupplierService.selectSupplierList(param); - param.setSearchInIds(list.stream().map(a->a.getId()).collect(Collectors.toList())); PageUtil.setPageSize(param.getPageSize()+""); PageUtil.setPageNum(param.getPageNum()+""); return supplierMyController.getUnderlingAndMinePage(param); diff --git a/src/main/java/com/qs/serve/modules/bms/controller/my/BmsChannelMyController.java b/src/main/java/com/qs/serve/modules/bms/controller/my/BmsChannelMyController.java index 18eb9b18..9fdee8a4 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/my/BmsChannelMyController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/my/BmsChannelMyController.java @@ -55,6 +55,12 @@ public class BmsChannelMyController { public R> getPage(BmsChannel param){ PageUtil.startPage(); List list = bmsChannelService.selectChannelList(param, Arrays.asList(AuthContextUtils.getSysUserId()),null); + list.forEach(a->{ + BmsSupplierChannel searchSupplierChannel = new BmsSupplierChannel(); + searchSupplierChannel.setChannelId(a.getId()); + List bmsSupplierChannelList = bmsSupplierChannelService.selectSupplierChannelList(searchSupplierChannel); + a.setSupplierNames(bmsSupplierChannelList.stream().map(b->b.getSupplierName()).collect(Collectors.toList())); + }); return R.byPageHelperList(list); } @@ -73,6 +79,12 @@ public class BmsChannelMyController { } PageUtil.startPage(); List list = bmsChannelService.selectChannelList(param, userIds,null); + list.forEach(a->{ + BmsSupplierChannel searchSupplierChannel = new BmsSupplierChannel(); + searchSupplierChannel.setChannelId(a.getId()); + List bmsSupplierChannelList = bmsSupplierChannelService.selectSupplierChannelList(searchSupplierChannel); + a.setSupplierNames(bmsSupplierChannelList.stream().map(b->b.getSupplierName()).collect(Collectors.toList())); + }); return R.byPageHelperList(list); } diff --git a/src/main/java/com/qs/serve/modules/bms/controller/my/BmsChannelPointMyController.java b/src/main/java/com/qs/serve/modules/bms/controller/my/BmsChannelPointMyController.java index 63a93dfe..dee76be1 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/my/BmsChannelPointMyController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/my/BmsChannelPointMyController.java @@ -75,6 +75,43 @@ public class BmsChannelPointMyController { return R.byEmptyList(); } List list = bmsChannelPointService.selectChannelPointMyList(param, Arrays.asList(AuthContextUtils.getSysUserId())); + + List bizRegionIds = new ArrayList<>(); + bizRegionIds.addAll(list.stream().filter(a->a.getBizRegionId()!=null).map(a->a.getBizRegionId()).collect(Collectors.toList())); + bizRegionIds = bizRegionIds.stream().distinct().collect(Collectors.toList()); + List region2List = new ArrayList<>(); + if(bizRegionIds.size()>0){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.in(BmsRegion2::getId,bizRegionIds); + region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + } + Map idToBizRegion = region2List.stream().collect(Collectors.toMap(BmsRegion2::getId, a->a)); + + for (BmsChannelPoint channelPoint : list) { + if(StringUtils.hasText(channelPoint.getBizRegionPath())){ + String[] bizRegions = channelPoint.getBizRegionPath().split("_"); + if(bizRegions.length>0){ + channelPoint.setBizRegionName(bizRegions[bizRegions.length-1]); + } + + BmsRegion2 region2 = idToBizRegion.get(channelPoint.getBizRegionId()); + if(region2!=null){ + channelPoint.setBizRegionCode(region2.getCode()); + } + } + if(StringUtils.hasText(channelPoint.getSaleRegionPath())){ + String[] regions = channelPoint.getSaleRegionPath().split("_"); + if(regions.length>0){ + channelPoint.setSaleRegionName(regions[regions.length-1]); + } + } + + BmsSupplierChannel searchSupplierChannel = new BmsSupplierChannel(); + searchSupplierChannel.setChannelId(channelPoint.getChannelId()); + List bmsSupplierChannelList = bmsSupplierChannelService.selectSupplierChannelList(searchSupplierChannel); + channelPoint.setSupplierNames(bmsSupplierChannelList.stream().map(b->b.getSupplierName()).collect(Collectors.toList())); + + } return R.byPageList(count,list); } @@ -122,6 +159,13 @@ public class BmsChannelPointMyController { channelPoint.setSaleRegionName(regions[regions.length-1]); } } + + + BmsSupplierChannel searchSupplierChannel = new BmsSupplierChannel(); + searchSupplierChannel.setChannelId(channelPoint.getChannelId()); + List bmsSupplierChannelList = bmsSupplierChannelService.selectSupplierChannelList(searchSupplierChannel); + channelPoint.setSupplierNames(bmsSupplierChannelList.stream().map(b->b.getSupplierName()).collect(Collectors.toList())); + } return R.byPageList(count,pageList); } diff --git a/src/main/java/com/qs/serve/modules/bms/controller/my/BmsSupplierMyController.java b/src/main/java/com/qs/serve/modules/bms/controller/my/BmsSupplierMyController.java index 38e2ea66..a7baf8b1 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/my/BmsSupplierMyController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/my/BmsSupplierMyController.java @@ -27,6 +27,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; @@ -55,6 +56,77 @@ public class BmsSupplierMyController { */ @GetMapping("/page") public R> getPage(BmsSupplier param){ + if(StringUtils.hasText(param.getRegion2Label())){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.like(BmsRegion2::getPathNames,param.getRegion2Label()); + List region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + if(region2List.size()>0) { + param.setRegion2Ids(region2List.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setRegion2Ids(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegion2FirstName())){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2FirstName()); + List region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + if(region2List.size()>0) { + param.setSearchRegion2First(region2List.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegion2First(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegion2SecondName())){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2SecondName()); + List region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + if(region2List.size()>0) { + param.setSearchRegion2Second(region2List.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegion2Second(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegion2ThirdName())){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2ThirdName()); + List region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + if(region2List.size()>0) { + param.setSearchRegion2Third(region2List.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegion2Third(Arrays.asList("#")); + } + } + + if(StringUtils.hasText(param.getRegionLabel())){ + LambdaQueryWrapper regionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + regionLambdaQueryWrapper.like(BmsRegion::getPathNames,param.getRegionLabel()); + List regionList = bmsRegionService.list(regionLambdaQueryWrapper); + if(regionList.size()>0) { + param.setRegionIds(regionList.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setRegion2Ids(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegionFirstName())){ + LambdaQueryWrapper regionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + regionLambdaQueryWrapper.like(BmsRegion::getName,param.getSearchRegionFirstName()); + List regionList = bmsRegionService.list(regionLambdaQueryWrapper); + if(regionList.size()>0) { + param.setSearchRegionFirst(regionList.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegionFirst(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegionSecondName())){ + LambdaQueryWrapper regionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + regionLambdaQueryWrapper.like(BmsRegion::getName,param.getSearchRegionSecondName()); + List regionList = bmsRegionService.list(regionLambdaQueryWrapper); + if(regionList.size()>0) { + param.setSearchRegionSecond(regionList.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegionSecond(Arrays.asList("#")); + } + } PageVo pageVo = hisUserSupplierService.selectPageSupplier(param); initSupplierList(pageVo.getList()); return R.ok(pageVo); @@ -67,6 +139,77 @@ public class BmsSupplierMyController { */ @GetMapping("/underlingPage") public R> getUnderlingPage(BmsSupplier param){ + if(StringUtils.hasText(param.getRegion2Label())){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.like(BmsRegion2::getPathNames,param.getRegion2Label()); + List region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + if(region2List.size()>0) { + param.setRegion2Ids(region2List.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setRegion2Ids(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegion2FirstName())){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2FirstName()); + List region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + if(region2List.size()>0) { + param.setSearchRegion2First(region2List.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegion2First(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegion2SecondName())){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2SecondName()); + List region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + if(region2List.size()>0) { + param.setSearchRegion2Second(region2List.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegion2Second(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegion2ThirdName())){ + LambdaQueryWrapper region2LambdaQueryWrapper = new LambdaQueryWrapper<>(); + region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2ThirdName()); + List region2List = bmsRegion2Service.list(region2LambdaQueryWrapper); + if(region2List.size()>0) { + param.setSearchRegion2Third(region2List.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegion2Third(Arrays.asList("#")); + } + } + + if(StringUtils.hasText(param.getRegionLabel())){ + LambdaQueryWrapper regionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + regionLambdaQueryWrapper.like(BmsRegion::getPathNames,param.getRegionLabel()); + List regionList = bmsRegionService.list(regionLambdaQueryWrapper); + if(regionList.size()>0) { + param.setRegionIds(regionList.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setRegion2Ids(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegionFirstName())){ + LambdaQueryWrapper regionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + regionLambdaQueryWrapper.like(BmsRegion::getName,param.getSearchRegionFirstName()); + List regionList = bmsRegionService.list(regionLambdaQueryWrapper); + if(regionList.size()>0) { + param.setSearchRegionFirst(regionList.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegionFirst(Arrays.asList("#")); + } + } + if(StringUtils.hasText(param.getSearchRegionSecondName())){ + LambdaQueryWrapper regionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + regionLambdaQueryWrapper.like(BmsRegion::getName,param.getSearchRegionSecondName()); + List regionList = bmsRegionService.list(regionLambdaQueryWrapper); + if(regionList.size()>0) { + param.setSearchRegionSecond(regionList.stream().map(a -> a.getId()).collect(Collectors.toList())); + }else{ + param.setSearchRegionSecond(Arrays.asList("#")); + } + } List childIds = postUserService.listByChildIds(AuthContextUtils.getSysUserId()); param.setSelectUserIds(childIds); param.setSelectUserIdsFlag(true); diff --git a/src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java b/src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java index df236855..8dfb3454 100644 --- a/src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java @@ -72,9 +72,6 @@ public class HisUserSupplierServiceImpl extends ServiceImpl selectListSupplier(BmsSupplier param) { List hisUserSuppliers = selectHisSupplier(param,false); - List supplierIds = hisUserSuppliers.stream().map(HisUserSupplier::getSupplierId).collect(Collectors.toList()); - List supplierList = bmsSupplierService.listByIds(supplierIds); - return supplierList; + List supplierIds = hisUserSuppliers.stream().map(a->a.getSupplierId().toString()).collect(Collectors.toList()); + if(supplierIds.size()>0) { + param.setSearchInIds(supplierIds); + List supplierList = bmsSupplierService.selectSupplierList(param); + return supplierList; + }else{ + return new ArrayList<>(); + } } @Override public PageVo selectPageSupplier(BmsSupplier param) { List hisUserSuppliers = selectHisSupplier(param,true); - List supplierIds = hisUserSuppliers.stream().map(HisUserSupplier::getSupplierId).collect(Collectors.toList()); + List supplierIds = hisUserSuppliers.stream().map(a->a.getSupplierId().toString()).collect(Collectors.toList()); if(supplierIds.size()>0) { - List supplierList = bmsSupplierService.listByIds(supplierIds); - return R.buildPageHelperList(hisUserSuppliers,supplierList); + param.setSearchInIds(supplierIds); + PageHelper.startPage(param.getPageNum(),param.getPageSize()); + List supplierList = bmsSupplierService.selectSupplierList(param); + return R.buildPageHelperList(supplierList); }else{ return R.buildPageHelperList(new ArrayList<>()); } diff --git a/src/main/resources/mapper/bms/BmsSupplierMapper.xml b/src/main/resources/mapper/bms/BmsSupplierMapper.xml index 5f7093b0..f253b34c 100644 --- a/src/main/resources/mapper/bms/BmsSupplierMapper.xml +++ b/src/main/resources/mapper/bms/BmsSupplierMapper.xml @@ -105,6 +105,12 @@ and (`bms_supplier`.`user_code` LIKE CONCAT('%',#{query.searchUserCode},'%') or `bms_supplier`.`other_user_codes` LIKE CONCAT('%',#{query.searchUserCode},'%') ) + + and bms_supplier.id in + + #{selectId} + + and bms_supplier.region_last in