From 08b2a4048452bef8d99ac5a700dd5aa6a4121699 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期五, 30 六月 2023 18:04:14 +0800
Subject: [PATCH] 商户端会员和平台活动

---
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java |   78 ++++++++++++++++++++++++++++-----------
 1 files changed, 56 insertions(+), 22 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 5324204..2f9d437 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
@@ -17,6 +17,7 @@
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.member.domain.dto.*;
 import com.ruoyi.member.domain.pojo.member.IntegralRecord;
+import com.ruoyi.member.domain.pojo.member.MemberArchive;
 import com.ruoyi.member.domain.pojo.member.MemberTotal;
 import com.ruoyi.member.domain.vo.*;
 import com.ruoyi.member.mapper.member.MemberMapper;
@@ -581,6 +582,20 @@
             // Save the member and initialize member total
             this.saveOrUpdate(member);
             initMemberTotal(memberId);
+            List<MemberArchiveVo> achiveList = merMemberAddDto.getAchiveList();
+            if(achiveList!=null&&!achiveList.isEmpty()){
+                SysUser finalSysUser = sysUser;
+                List<MemberArchive> memberArchiveList = achiveList.stream().map(memberArchiveVo -> {
+                    MemberArchive memberArchive = new MemberArchive();
+                    memberArchive.setDelFlag(0);
+                    memberArchive.setUserId(finalSysUser.getUserId());
+                    memberArchive.setFieldId(memberArchiveVo.getFieldId());
+                    memberArchive.setFieldValue(memberArchiveVo.getFieldValue());
+                    return memberArchive;
+                    }
+                ).collect(Collectors.toList());
+                memberArchiveService.saveBatch(memberArchiveList);
+            }
         }
     }
 
@@ -591,30 +606,49 @@
      */
     @Override
     public void editMerMember(MerMemberEditDto merMemberEditDto) {
-
-        Member member = this.getByUserId(merMemberEditDto.getEditUserId());
-        if (!member.getMobile().equals(merMemberEditDto.getPhonenumber())) {
-            Member memberOld = getByMobile(merMemberEditDto.getPhonenumber());
-            if (memberOld != null) {
-                throw new ServiceException(AppErrorConstant.MOBILE_DOUBLE);
-            }
+    // 获取用户信息
+    Member member = this.getByUserId(merMemberEditDto.getEditUserId());
+     // 检查手机号是否已经存在
+    if (!member.getMobile().equals(merMemberEditDto.getPhonenumber())) {
+        Member memberOld = getByMobile(merMemberEditDto.getPhonenumber());
+        if (memberOld != null) {
+            throw new ServiceException(AppErrorConstant.MOBILE_DOUBLE);
         }
-        member.setRealName(merMemberEditDto.getNickName());
-        member.setMobile(merMemberEditDto.getPhonenumber());
-        member.setGender(merMemberEditDto.getGender());
-        member.setReferrer(merMemberEditDto.getReferrer());
-        member.setCustomerSource(merMemberEditDto.getCustomerSource());
-        member.setLevel(merMemberEditDto.getLevel());
-        member.setBirthday(merMemberEditDto.getBirthday());
-        member.setUpdateUserId(merMemberEditDto.getUserId());
-        member.setUpdateTime(new Date());
-        log.info("member-----------------" + member.toString());
-        this.saveOrUpdate(member);
-        SysUser sysUser = new SysUser();
-        sysUser.setUserId(merMemberEditDto.getEditUserId());
-        sysUser.setPhonenumber(merMemberEditDto.getPhonenumber());
-        sysUserService.updateUserMobile(sysUser);
     }
+     // 更新用户信息
+    member.setRealName(merMemberEditDto.getNickName());
+    member.setMobile(merMemberEditDto.getPhonenumber());
+    member.setGender(merMemberEditDto.getGender());
+    member.setReferrer(merMemberEditDto.getReferrer());
+    member.setCustomerSource(merMemberEditDto.getCustomerSource());
+    member.setLevel(merMemberEditDto.getLevel());
+    member.setBirthday(merMemberEditDto.getBirthday());
+    member.setUpdateUserId(merMemberEditDto.getUserId());
+    member.setUpdateTime(new Date());
+    this.saveOrUpdate(member);
+     // 更新用户手机号
+    SysUser sysUser = new SysUser();
+    sysUser.setUserId(merMemberEditDto.getEditUserId());
+    sysUser.setPhonenumber(merMemberEditDto.getPhonenumber());
+    sysUserService.updateUserMobile(sysUser);
+     // 删除用户的档案信息
+    memberArchiveService.deleteByUserId(sysUser.getUserId());
+     // 添加用户的档案信息
+    List<MemberArchiveVo> achiveList = merMemberEditDto.getAchiveList();
+    if (achiveList != null && !achiveList.isEmpty()) {
+        // 构造用户档案列表
+        List<MemberArchive> memberArchiveList = achiveList.stream().map(memberArchiveVo -> {
+            MemberArchive memberArchive = new MemberArchive();
+            memberArchive.setDelFlag(0);
+            memberArchive.setUserId(sysUser.getUserId());
+            memberArchive.setFieldId(memberArchiveVo.getFieldId());
+            memberArchive.setFieldValue(memberArchiveVo.getFieldValue());
+            return memberArchive;
+        }).collect(Collectors.toList());
+         // 批量保存用户档案信息
+        memberArchiveService.saveBatch(memberArchiveList);
+    }
+}
 
     /**
      * @param mobile

--
Gitblit v1.7.1