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