| | |
| | | |
| | | @PostMapping("/getAppUserById") |
| | | public AppUser getAppUserById(@RequestParam("id") Long id) { |
| | | System.out.println("根据id获取用户:"+id); |
| | | return appUserService.getById(id); |
| | | } |
| | | |
| | |
| | | Long userId = tokenService.getLoginUserApplet().getUserid(); |
| | | //获取绑定门店 |
| | | AppUser user = appUserService.getById(userId); |
| | | if (user.getShopId() != null) { |
| | | R<Shop> storeById = storeClient.getStoreById(user.getShopId()); |
| | | if (storeById.getData() != null) { |
| | | user.setShopName(storeById.getData().getName()); |
| | | user.setShopCover(storeById.getData().getHomePicture()); |
| | | user.setShopAddress(storeById.getData().getAddress()); |
| | | |
| | | |
| | | //当前用户的推荐人信息(指导老师) |
| | | List<AppUser> allSuperiors = getAllSuperiors(userId); |
| | | //当前绑定门店的店铺信息 |
| | | for (AppUser allSuperior : allSuperiors) { |
| | | List<Shop> shopList = shopClient.getShopByUserId(allSuperior.getId()).getData(); |
| | | if (!CollectionUtils.isEmpty(shopList)){ |
| | | user.setShopName(shopList.get(0).getName()); |
| | | user.setShopCover(shopList.get(0).getHomePicture()); |
| | | user.setShopAddress(shopList.get(0).getAddress()); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | //指导老师 |
| | | allSuperiors.stream() |
| | | .filter(superiors -> superiors.getVipId() != null && superiors.getVipId() > 3) |
| | | .findFirst() |
| | | .ifPresent(superiors -> { |
| | | user.setTeacher(superiors.getName()); |
| | | }); |
| | | |
| | | |
| | | |
| | | //获取绑定上级 |
| | | if (user.getInviteUserId() != null) { |
| | |
| | | @GetMapping("/change") |
| | | @ApiOperation(value = "推广中心", tags = {"小程序-推广中心"}) |
| | | public R<AppUser> change(@ApiParam("换绑用户手机号") String phone) { |
| | | |
| | | Long userId1 = tokenService.getLoginUserApplet().getUserid(); |
| | | AppUser byId = appUserService.getById(userId1); |
| | | List<AppUser> appUserList = appUserService.list(new LambdaQueryWrapper<AppUser>() |
| | | .eq(AppUser::getInviteUserId, userId1) |
| | | .eq(AppUser::getPhone, phone)); |
| | | if (!CollectionUtils.isEmpty(appUserList)){ |
| | | return R.fail("绑定关系已存在!"); |
| | | } |
| | | |
| | | |
| | | |
| | | // List<AppUser> appUserList = appUserService.list(new LambdaQueryWrapper<AppUser>() |
| | | // .eq(AppUser::getInviteUserId, userId1) |
| | | // .eq(AppUser::getPhone, phone)); |
| | | // if (!CollectionUtils.isEmpty(appUserList)){ |
| | | // return R.fail("绑定关系已存在!"); |
| | | // } |
| | | //获取绑定门店 |
| | | AppUser user = appUserService.lambdaQuery() |
| | | .eq(AppUser::getPhone, phone) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .eq(AppUser::getStatus, 1) |
| | | .one(); |
| | | |
| | | |
| | | // 获取当前用户的所有下级 |
| | | List<AppUser> allSubordinates = getAllSubordinates(byId.getId()); |
| | | long count = allSubordinates.stream().filter(appUser -> appUser.getId().equals(user.getId())).count(); |
| | | if (count > 0) { |
| | | return R.fail("绑定关系已存在!"); |
| | | } |
| | | |
| | | if (user == null) { |
| | | return R.fail("当前手机号未注册"); |
| | | } |
| | | |
| | | Long userId = user.getId(); |
| | | if (userId.equals(byId.getId())) { |
| | | return R.fail("不能选择自己为绑定人。"); |
| | | } |
| | | |
| | | byId.setInviteUserId(user.getId()); |
| | | appUserService.updateById(byId); |
| | | return R.ok(); |
| | |
| | | appUserService.updateById(user); |
| | | } |
| | | |
| | | //当前用户的推荐人信息 |
| | | if (user.getInviteUserId() != null) { |
| | | AppUser inviteUser = appUserService.getById(user.getInviteUserId()); |
| | | user.setInviteUserName(inviteUser.getName()); |
| | | } |
| | | //当前绑定门店的店铺信息 |
| | | if (user.getShopId() != null) { |
| | | R<Shop> storeById = shopClient.getShopById(user.getShopId()); |
| | | if (storeById.getData() != null) { |
| | | Shop shop = storeById.getData(); |
| | | user.setShopName(shop.getName()); |
| | | //指导老师 |
| | | List<AppUser> allSuperiors = getAllSuperiors(userId); |
| | | allSuperiors.stream() |
| | | .filter(superiors -> superiors.getVipId() != null && superiors.getVipId() > 3) |
| | | .findFirst() |
| | | .ifPresent(superiors -> { |
| | | user.setTeacher(superiors.getName()); |
| | | }); |
| | | //当前绑定门店的店铺信息(服务商) |
| | | for (AppUser allSuperior : allSuperiors) { |
| | | List<Shop> shopList = shopClient.getShopByUserId(allSuperior.getId()).getData(); |
| | | if (!CollectionUtils.isEmpty(shopList)){ |
| | | user.setShopName(shopList.get(0).getName()); |
| | | break; |
| | | } |
| | | } |
| | | // if (user.getShopId() != null) { |
| | | // R<Shop> storeById = shopClient.getShopById(user.getShopId()); |
| | | // if (storeById.getData() != null) { |
| | | // Shop shop = storeById.getData(); |
| | | // user.setShopName(shop.getName()); |
| | | // } |
| | | // } |
| | | ArrayList<Long> userIds = new ArrayList<>(); |
| | | userIds.add(userId); |
| | | // 获取当前用户的所有下级 |
| | |
| | | } |
| | | return R.ok(user); |
| | | } |
| | | |
| | | |
| | | public List<AppUser> getAllSuperiors(Long userId) { |
| | | List<AppUser> allSuperiors = new ArrayList<>(); |
| | | |
| | | // 获取当前用户的直接上级 |
| | | AppUser currentUser = appUserService.getById(userId); |
| | | if (currentUser != null && currentUser.getInviteUserId() != null) { |
| | | AppUser superior = appUserService.getById(currentUser.getInviteUserId()); |
| | | if (superior != null) { |
| | | allSuperiors.add(superior); // 添加直接上级 |
| | | allSuperiors.addAll(getAllSuperiors(superior.getId())); // 递归添加上级的上级 |
| | | } |
| | | } |
| | | |
| | | return allSuperiors; |
| | | } |
| | | |
| | | |
| | | |
| | | // 递归获取指定用户的所有下级 |
| | | public List<AppUser> getAllSubordinates(Long userId) { |
| | |
| | | .set(AppUser::getUserType,1)); |
| | | return R.ok(); |
| | | } |
| | | |
| | | } |
| | | |