From 61b5f9863f14ab4fc9da504ca2b553a778eb2e2c Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期三, 24 一月 2024 15:10:32 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/HongRuiTang --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 65 +++++++++++++++++++++++++++++--- 1 files changed, 59 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java index 1574553..62a2f96 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.utils.StringUtils; @@ -624,8 +625,14 @@ String phoneNumber = merMemberAddDto.getPhonenumber(); Member oldMember = this.getByMobile(phoneNumber); // Check if the member already exists - if (oldMember != null) { + if (oldMember != null && oldMember.getBindingFlag() == 1) { throw new ServiceException(AppErrorConstant.MOBILE_USER_DOUBLE); + } + if (oldMember != null && oldMember.getBindingFlag() == 0) { + oldMember.setRelationShopId(merMemberAddDto.getShopId()); + oldMember.setBindingFlag(1); + this.updateById(oldMember); + return oldMember.getUserId(); } // Get the sysUser by mobile number SysUser sysUser = sysUserService.getSysUserByMobile(phoneNumber).getData(); @@ -896,6 +903,7 @@ */ @Override public List<MgtMemberPageVo> pageMgtMember(Page page, MgtMemberPageDto merMemberPageDto) { + List<Activeness> activenessList = remoteConfigService.listActiveness().getData(); Date nowDay = new Date(); if (merMemberPageDto.getActivenessId() != null) { @@ -925,8 +933,37 @@ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); merMemberPageDto.setStartBirthday(startBirthday.format(formatter)); } + // 获取当前登陆人的可视权限 + SysUser sysUser = SecurityUtils.getSysUser(); + // 店铺ids + List<Long> scope = new ArrayList<>(); + if (sysUser!=null){ + String dataScope = sysUser.getDataScope(); + if (!sysUser.getUserName().equals("admin")){ + if (org.springframework.util.StringUtils.hasLength(dataScope)){ + switch (dataScope){ + case "3": + // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺 + // 根据用户id 查询同部门下所有员工id + List<Long> userIds = sysUserService.getUserIdsByDept(sysUser.getUserId()).getData(); + // 获取店铺ids + List<Long> data = shopService.getShopIdsByUserIds(userIds).getData(); + scope.addAll(data); + break; + case "5": + // 仅个人数据 查询当前登陆人关联店铺下的用户 + List<Long> longs = new ArrayList<>(); + longs.add(sysUser.getUserId()); + // 获取店铺ids + List<Long> data1 = shopService.getShopIdsByUserIds(longs).getData(); + scope.addAll(data1); + break; + } + } + } + } //查询获取结果列表 - List<MgtMemberPageVo> memberPageVoList = memberMapper.pageMgtMember(page, merMemberPageDto); + List<MgtMemberPageVo> memberPageVoList = memberMapper.pageMgtMember(page, merMemberPageDto,scope); //处理活跃度返回 if (memberPageVoList != null && !memberPageVoList.isEmpty()) { if (activenessList != null && !activenessList.isEmpty()) { @@ -942,6 +979,15 @@ //活跃度赋值 Date lastPayTime; for (MgtMemberPageVo mgtMemberPageVo : memberPageVoList) { + if(null != mgtMemberPageVo.getRelationShopId() && 1 == mgtMemberPageVo.getBindingFlag()){ + R<Shop> shop_r = remoteShopService.getShop(mgtMemberPageVo.getRelationShopId()); + if(shop_r.getCode() == 200){ + Shop data = shop_r.getData(); + if(null != data){ + mgtMemberPageVo.setRelationShopName(data.getShopName()); + } + } + } lastPayTime = mgtMemberPageVo.getLastPayTime(); StringJoiner sj = new StringJoiner(","); if (lastPayTime != null) { @@ -1137,7 +1183,13 @@ mgtMemberGetVo.setLastPayTime(memberTotal.getLastPayTime()); mgtMemberGetVo.setGoodsType(member.getGoodsType()); if(member.getBindingFlag()==1){ - mgtMemberGetVo.setRelationShopName(member.getRelationShopName()); + R<Shop> shop = remoteShopService.getShop(member.getRelationShopId()); + if(shop.getCode() == 200){ + Shop data = shop.getData(); + if(null != data){ + mgtMemberGetVo.setRelationShopName(data.getShopName()); + } + } } mgtMemberGetVo.setIntegral(memberTotal.getTotalIntegral()); mgtMemberGetVo.setMemberFrom(member.getCustomerSource()); @@ -2169,12 +2221,13 @@ */ @Override public void sendBirthdayBless(){ - List<String> mobileList = memberMapper.listTodayBirthday(); + List<Member> mobileList = memberMapper.listTodayBirthday(); if(mobileList!=null&&!mobileList.isEmpty()){ log.info("生日祝福发送短信---"+mobileList.toString()); - for(String mobile : mobileList){ + for(Member member : mobileList){ try { - MsgUtils.sendMsg(mobile,null,null); + String msg = "{\"name\":\"" + (StringUtils.isEmpty(member.getRealName()) ? member.getNickName() : member.getRealName()) + "\"}"; + MsgUtils.sendMsg(member.getMobile(),null, msg); } catch (Exception e) { throw new RuntimeException(e); } -- Gitblit v1.7.1