From dc1b9ef0f6437e73bbb7d25ec3ff4f8704557998 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期一, 19 六月 2023 18:27:49 +0800 Subject: [PATCH] 统计 --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 96 ++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 81 insertions(+), 15 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 59cfbb1..302bf90 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 @@ -25,17 +25,13 @@ import com.ruoyi.member.util.HttpUtils; import com.ruoyi.system.api.constant.AppErrorConstant; import com.ruoyi.system.api.constant.SecurityConstant; -import com.ruoyi.system.api.domain.dto.AppEditUserDto; -import com.ruoyi.system.api.domain.dto.AppMemberBindingDto; -import com.ruoyi.system.api.domain.dto.AppMemberGoodsTypeDto; -import com.ruoyi.system.api.domain.dto.AppMiniRegisterDto; +import com.ruoyi.system.api.domain.dto.*; import com.ruoyi.system.api.domain.poji.config.Activeness; import com.ruoyi.system.api.domain.poji.config.SysTag; import com.ruoyi.system.api.domain.poji.member.Member; import com.ruoyi.system.api.domain.poji.shop.Shop; import com.ruoyi.system.api.domain.poji.sys.SysUser; -import com.ruoyi.system.api.domain.vo.AppMiniRegisterVo; -import com.ruoyi.system.api.domain.vo.AppOrderTotalVo; +import com.ruoyi.system.api.domain.vo.*; import com.ruoyi.system.api.model.AppMiniLoginDto; import com.ruoyi.system.api.model.AppMiniLoginVo; import com.ruoyi.system.api.service.RemoteConfigService; @@ -106,6 +102,7 @@ @Resource private MemberArchiveService memberArchiveService; + /** * @description: TODO @@ -661,14 +658,16 @@ public List<MgtMemberPageVo> pageMgtMember(Page page,MgtMemberPageDto merMemberPageDto){ List<Activeness> activenessList = remoteConfigService.listActiveness().getData(); Date nowDay = new Date(); - //处理活跃度筛选 - activenessList.stream() - .filter(activeness -> activeness.getActivenessId().equals(merMemberPageDto.getActivenessId())) - .findFirst() - .ifPresent(activeness -> { - merMemberPageDto.setActStartDate(DateUtils.addDays(nowDay, activeness.getEndDay())); - merMemberPageDto.setActEndDate(DateUtils.addDays(nowDay, activeness.getStartDay())); - }); + if(merMemberPageDto.getActivenessId()!=null){ + //处理活跃度筛选 + activenessList.stream() + .filter(activeness -> activeness.getActivenessId().equals(merMemberPageDto.getActivenessId())) + .findFirst() + .ifPresent(activeness -> { + merMemberPageDto.setActStartDate(DateUtils.parseDateToStr("yyyy-MM-dd",DateUtils.addDays(nowDay, activeness.getEndDay()))); + merMemberPageDto.setActEndDate(DateUtils.parseDateToStr("yyyy-MM-dd",DateUtils.addDays(nowDay, activeness.getStartDay()))); + }); + } //处理标签为正则表达 if(StringUtils.isNotBlank(merMemberPageDto.getMemberTags())){ merMemberPageDto.setMemberTags(merMemberPageDto.getMemberTags().replace(",","|")); @@ -742,7 +741,7 @@ String memberUserIds = mgtMemberRelDelDto.getMemberUserIds(); String[] memberUserIdArr = memberUserIds.split(","); for(String str : memberUserIdArr) { - Member member = this.getById(Long.valueOf(str)); + Member member = this.getByUserId(Long.valueOf(str)); member.setBindingFlag(0); member.setUpdateTime(new Date()); member.setUpdateUserId(mgtMemberRelDelDto.getUserId()); @@ -899,4 +898,71 @@ //1.手动领取2.全部用户3.会员用户4非会员用户5自定义 return memberMapper.listIdBySendType(sendType); } + + /** + * @description 通过ids获取用户简易返回 + * @author jqs + * @date 2023/6/16 11:06 + * @param userIds + * @return List<MgtSimpleMemberVo> + */ + @Override + public List<MgtSimpleMemberVo> listSimpleVoByIds(String userIds){ + return memberMapper.listSimpleVoByIds(userIds); + } + + /** + * @description + * @author jqs + * @date 2023/6/16 12:41 + * @param mgtUserIdByKeywordDto + * @return MgtUserIdByKeywordVo + */ + @Override + public MgtUserIdByKeywordVo getUserIdByKeyword(MgtUserIdByKeywordDto mgtUserIdByKeywordDto){ + MgtUserIdByKeywordVo mgtUserIdByKeywordVo = new MgtUserIdByKeywordVo(); + List<Long> userIdList = memberMapper.getUserIdByKeyword(mgtUserIdByKeywordDto); + if(userIdList!=null&&!userIdList.isEmpty()){ + String userIdStr = userIdList.stream() + .map(Object::toString) + .collect(Collectors.joining(",")); + mgtUserIdByKeywordVo.setUserIds(userIdStr); + } + return mgtUserIdByKeywordVo; + } + + /** + * @description boardMemberTotal + * @param + * @return MgtBulletinBoardVo + * @author jqs34 + * @date 2023/6/18 16:45 + */ + @Override + public MgtBulletinBoardVo boardMemberTotal(){ + MgtBulletinBoardVo mgtBulletinBoardVo = new MgtBulletinBoardVo(); + mgtBulletinBoardVo.setMemberTotal(memberMapper.memberTotal()); + mgtBulletinBoardVo.setMemberToday(memberMapper.memberToday()); + return mgtBulletinBoardVo; + } + + /** + * @description 会员人数统计 + * @author jqs + * @date 2023/6/19 15:26 + * @param + * @return MgtTotalMemberTotalVo + */ + @Override + public MgtTotalMemberTotalVo getTotalMemberTotal(MgtBaseShopDto mgtBaseShopDto){ + MgtTotalMemberTotalVo mgtTotalMemberTotalVo = memberMapper.getTotalMemberTotal(mgtBaseShopDto); + MgtAgeTotalVo mgtAgeTotalVo = memberMapper.getTotalMemberTotalAge(mgtBaseShopDto); + String[] ageKey = {"<20","21-30","31-40","41-50",">50"}; + Integer[] ageValue = {mgtAgeTotalVo.getTenAge(),mgtAgeTotalVo.getTwentyAge(),mgtAgeTotalVo.getThirtyAge(),mgtAgeTotalVo.getFortyAge(),mgtAgeTotalVo.getFiftyAge()}; + mgtTotalMemberTotalVo.setAgeKey(ageKey); + mgtTotalMemberTotalVo.setAgeValue(ageValue); + List<MgtNurseTotalVo> nurseTotalVos = memberMapper.getTotalMemberTotalNurse(mgtBaseShopDto); + + return mgtTotalMemberTotalVo; + } } -- Gitblit v1.7.1