From 2ed6444f45d227e2acc6de65c3e8b582440fb83a Mon Sep 17 00:00:00 2001 From: luofl <1442745593@qq.com> Date: 星期四, 06 三月 2025 09:20:40 +0800 Subject: [PATCH] 迭代版本:2.28 --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java | 135 ++++++++++++++++++++++++++++---------------- 1 files changed, 85 insertions(+), 50 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java index 438422a..ac1f16a 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java @@ -678,8 +678,17 @@ @PostMapping("/getShopIdByName") public R<Set<Integer>> getShopIdByName(@RequestParam("shopName") String shopName){ List<Shop> list = shopService.list(new LambdaQueryWrapper<Shop>() - .like(Shop::getName, shopName)); + .like(Shop::getName, shopName) + .eq(Shop::getDelFlag, 0)); return R.ok(list.stream().map(Shop::getId).collect(Collectors.toSet())); + } + + @PostMapping("/getManagerByManagerName") + public R<Set<Long>> getManagerByManagerName(@RequestParam("managerName") String managerName){ + List<Shop> list = shopService.list(new LambdaQueryWrapper<Shop>() + .like(Shop::getShopManager, managerName) + .eq(Shop::getDelFlag, 0)); + return R.ok(list.stream().map(Shop::getAppUserId).collect(Collectors.toSet())); } /** @@ -808,6 +817,21 @@ return R.ok(); } + @PostMapping("/saveWithdrawalAppletAccount") + @ApiOperation(value = "保存提现账户", tags = {"小程序-个人中心-门店管理-门店钱包"}) + public R saveWithdrawalAppletAccount(@RequestBody SaveWithdrawalAccount saveWithdrawalAccount){ + + Shop shop = shopService.getById(saveWithdrawalAccount.getShopId()); + if(null != shop){ + shop.setReceiverAccountNoEnc(saveWithdrawalAccount.getReceiverAccountNoEnc()); + shop.setReceiverNameEnc(saveWithdrawalAccount.getReceiverNameEnc()); + shop.setReceiverAccountType(saveWithdrawalAccount.getReceiverAccountType()); + shop.setReceiverBankChannelNo(saveWithdrawalAccount.getReceiverBankChannelNo()); + shopService.updateById(shop); + } + return R.ok(); + } + /** * 获取所有门店 @@ -831,6 +855,21 @@ } return R.fail("请先配置收款账户"); } + + + @ResponseBody + @GetMapping("/verifyAppletConfiguration") + @ApiOperation(value = "判断是否有提现账户", tags = {"门店后台-财务管理-提现明细","小程序-个人中心-门店管理-门店钱包"}) + public R verifyAppletConfiguration(Integer shopId){ + Shop shop = shopService.getById(shopId); + if(StringUtils.hasLength(shop.getReceiverAccountNoEnc())){ + return R.ok(true); + } + return R.ok(false); + } + + + @@ -865,67 +904,63 @@ /** * 获取指定用户的服务商 - * @param userId * @return */ @GetMapping("/getServiceProvider") - public R<Shop> getServiceProvider(Long userId){ - List<AppUser> allSuperiors = getAllSuperiors(userId); - //当前绑定门店的店铺信息(服务商) - Shop serviceProvider = null; - for (AppUser allSuperior : allSuperiors) { - List<Shop> shopList = shopService.lambdaQuery().eq(Shop::getAppUserId, allSuperior.getId()).eq(Shop::getDelFlag,0).list(); - if (!CollectionUtils.isEmpty(shopList)){ - serviceProvider = shopList.get(0); - break; + public R<Shop> getServiceProvider(@RequestParam("appUserId") Long appUserId){ + //向上找获取第一个开店的门店 + List<Shop> list = shopService.list(new LambdaQueryWrapper<Shop>().eq(Shop::getDelFlag, 0).eq(Shop::getStatus, 1)); + AppUser appUser = appUserClient.getAppUserById(appUserId); + //上级集合,防止循环关联 + Set<Long> pid = new HashSet<>(); + Shop shop = getSuperiorStore(appUser, list, 1, 1, pid); + return R.ok(shop); + } + + + + public Shop getSuperiorStore(AppUser appUser, List<Shop> list, Integer hierarchy, Integer num, Set<Long> pid){ + if(null == appUser.getInviteUserId()){ + return null; + } + if(pid.contains(appUser.getInviteUserId())){ + return null; + } + AppUser appUser1 = appUserClient.getAppUserById(appUser.getInviteUserId()); + if(null != appUser1){ + Optional<Shop> first = list.stream().filter(shop -> shop.getAppUserId().equals(appUser1.getId())).findFirst(); + if(first.isPresent()){ + if(hierarchy.equals(num)){ + return first.get(); + } + num++; } } - return R.ok(serviceProvider); + return getSuperiorStore(appUser1, list, hierarchy, num, pid); } + + + + + + + + + /** * 获取指定用户的高级服务商 * @return */ @GetMapping("/getSuperiorServiceProvider") - public R<Shop> getSuperiorServiceProvider(Long userId){ - List<AppUser> allSuperiors = getAllSuperiors(userId); - Long techerId = null; - for (AppUser allSuperior : allSuperiors) { - List<Shop> shopList = shopService.lambdaQuery().eq(Shop::getAppUserId, allSuperior.getId()).eq(Shop::getDelFlag,0).list(); - if (!CollectionUtils.isEmpty(shopList)){ - techerId = allSuperior.getId(); - break; - } - } - if (techerId == null){ - return R.fail("暂无高级服务商"); - } - List<AppUser> allSuperiors1 = getAllSuperiors(techerId); - for (AppUser allSuperior : allSuperiors1) { - List<Shop> shopList = shopService.lambdaQuery().eq(Shop::getAppUserId, allSuperior.getId()).eq(Shop::getDelFlag,0).list(); - if (!CollectionUtils.isEmpty(shopList)){ - return R.ok(shopList.get(0)); - } - } - return R.fail("暂无高级服务商"); - } - - - public List<AppUser> getAllSuperiors(Long userId) { - List<AppUser> allSuperiors = new ArrayList<>(); - - // 获取当前用户的直接上级 - AppUser currentUser = appUserClient.getAppUserById(userId); - if (currentUser != null && currentUser.getInviteUserId() != null) { - AppUser superior = appUserClient.getAppUserById(currentUser.getInviteUserId()); - if (superior != null) { - allSuperiors.add(superior); // 添加直接上级 - allSuperiors.addAll(getAllSuperiors(superior.getId())); // 递归添加上级的上级 - } - } - - return allSuperiors; + public R<Shop> getSuperiorServiceProvider(@RequestParam("appUserId") Long appUserId){ + //向上找获取第一个开店的门店 + List<Shop> list = shopService.list(new LambdaQueryWrapper<Shop>().eq(Shop::getDelFlag, 0).eq(Shop::getStatus, 1)); + AppUser appUser = appUserClient.getAppUserById(appUserId); + //上级集合,防止循环关联 + Set<Long> pid = new HashSet<>(); + Shop shop = getSuperiorStore(appUser, list, 2, 1, pid); + return R.ok(shop); } } -- Gitblit v1.7.1