From 5476f0366c2042d8b3858369fc0c149d57b2fb9f Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期四, 24 七月 2025 17:47:27 +0800
Subject: [PATCH] 会员密码问题

---
 framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java |   84 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 79 insertions(+), 5 deletions(-)

diff --git a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java
index 469bfba..bb1d11d 100644
--- a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java
@@ -3,6 +3,9 @@
 
 import cn.hutool.core.convert.Convert;
 import cn.hutool.core.text.CharSequenceUtil;
+import cn.hutool.crypto.SecureUtil;
+import cn.hutool.crypto.digest.MD5;
+import cn.lili.base.Result;
 import cn.lili.cache.Cache;
 import cn.lili.cache.CachePrefix;
 import cn.lili.common.aop.annotation.DemoSite;
@@ -22,6 +25,10 @@
 import cn.lili.modules.connect.entity.Connect;
 import cn.lili.modules.connect.entity.dto.ConnectAuthUser;
 import cn.lili.modules.connect.service.ConnectService;
+import cn.lili.modules.lmk.domain.entity.VideoAccount;
+import cn.lili.modules.lmk.domain.form.MemberTagForm;
+import cn.lili.modules.lmk.service.MemberTagService;
+import cn.lili.modules.lmk.service.VideoAccountService;
 import cn.lili.modules.member.aop.annotation.PointLogPoint;
 import cn.lili.modules.member.entity.dos.Member;
 import cn.lili.modules.member.entity.dto.*;
@@ -41,12 +48,15 @@
 import cn.lili.mybatis.util.PageUtil;
 import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
 import cn.lili.rocketmq.tags.MemberTagsEnum;
+import cn.lili.utils.COSUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.catalina.security.SecurityUtil;
 import org.apache.rocketmq.spring.core.RocketMQTemplate;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.ApplicationEventPublisher;
@@ -105,6 +115,15 @@
      */
     @Autowired
     private Cache cache;
+
+    @Autowired
+    private VideoAccountService videoAccountService;
+
+    @Autowired
+    private MemberTagService memberTagService;
+
+    @Autowired
+    private COSUtil cosUtil;
 
     @Override
     public Member findByUsername(String userName) {
@@ -193,6 +212,7 @@
             throw new ServiceException(ResultCode.USER_NOT_EXIST);
         }
         //鍒ゆ柇瀵嗙爜鏄惁杈撳叆姝g‘
+
         if (!new BCryptPasswordEncoder().matches(password, member.getPassword())) {
             throw new ServiceException(ResultCode.USER_PASSWORD_ERROR);
         }
@@ -238,19 +258,24 @@
 
     @Override
     @Transactional
-    public Member autoRegister(ConnectAuthUser authUser) {
+    public Member autoRegister(ConnectAuthUser authUser,Boolean encryptTwice) {
 
         if (CharSequenceUtil.isEmpty(authUser.getNickname())) {
             authUser.setNickname(CommonUtil.getSpecialStr("鐢ㄦ埛"));
         }
         if (CharSequenceUtil.isEmpty(authUser.getAvatar())) {
-            authUser.setAvatar("https://i.loli.net/2020/11/19/LyN6JF7zZRskdIe.png");
+            authUser.setAvatar("");
         }
         try {
 //            String username = UuidUtils.getUUID();
             Member member = new Member(authUser.getUsername(), UuidUtils.getUUID(), authUser.getAvatar(), authUser.getNickname(),
                     authUser.getGender() != null ? Convert.toInt(authUser.getGender().getCode()) : 0, authUser.getPhone());
-            member.setPassword(DEFAULT_PASSWORD);
+            if(encryptTwice){
+                member.setPassword( new BCryptPasswordEncoder().encode(SecureUtil.md5(DEFAULT_PASSWORD)));
+            }else {
+                member.setPassword( new BCryptPasswordEncoder().encode(DEFAULT_PASSWORD));
+            }
+            member.setUuId(authUser.getUuid());
             // 鍙戦�佷細鍛樻敞鍐屼俊鎭�
             registerHandler(member);
 
@@ -306,10 +331,16 @@
      * @param member
      */
     @Transactional
+    @Override
     public void registerHandler(Member member) {
         member.setId(SnowFlake.getIdStr());
         //淇濆瓨浼氬憳
         this.save(member);
+        // 鍚屾椂鏂板涓�涓棰戣处鍙�
+        VideoAccount videoAccount = new VideoAccount();
+        videoAccount.setUserId(member.getId());
+        videoAccountService.save(videoAccount);
+
         UserContext.settingInviter(member.getId(), cache);
         // 鍙戦�佷細鍛樻敞鍐屼俊鎭�
         applicationEventPublisher.publishEvent(new TransactionCommitSendMQEvent("new member register", rocketmqCustomProperties.getMemberTopic(),
@@ -474,6 +505,7 @@
     }
 
     @Override
+    @Transactional
     public Member updateMember(ManagerMemberEditDTO managerMemberEditDTO) {
         //杩囨护浼氬憳鏄电О鏁忔劅璇�
         if (CharSequenceUtil.isNotBlank(managerMemberEditDTO.getNickName())) {
@@ -487,6 +519,33 @@
         Member member = this.getById(managerMemberEditDTO.getId());
         //浼犻�掍慨鏀逛細鍛樹俊鎭�
         BeanUtil.copyProperties(managerMemberEditDTO, member);
+        this.updateById(member);
+        if (managerMemberEditDTO.getTags() != null && !CollectionUtils.isEmpty(managerMemberEditDTO.getTags())) {
+            MemberTagForm memberTagForm = new MemberTagForm();
+            memberTagForm.setMemberId(member.getId());
+            memberTagForm.setTagIds(managerMemberEditDTO.getTags());
+            memberTagForm.setCreateType("MANAGER");
+            memberTagService.addMemberTag(memberTagForm);
+        }
+        return member;
+    }
+
+    @Override
+    public Result resetPassword(String id) {
+        String password = "111111";
+        Member member = this.getById(id);
+        member.setPassword(new BCryptPasswordEncoder().encode(password));
+        this.updateById(member);
+        return Result.ok("閲嶇疆鎴愬姛");
+    }
+
+
+    @Override
+    public Member updateMemberPartProperties(String id, String password, String mobile) {
+        //鏌ヨ浼氬憳淇℃伅
+        Member member = this.getById(id);
+        member.setMobile(mobile);
+        member.setUsername(mobile);
         this.updateById(member);
         return member;
     }
@@ -753,7 +812,11 @@
 
     @Override
     public MemberVO getMember(String id) {
-        return new MemberVO(this.getById(id));
+        MemberVO member = baseMapper.getVoById(id);
+        if (Objects.nonNull(member)) {
+            member.setFace(cosUtil.getPreviewUrl(member.getFace()));
+        }
+        return member;
     }
 
     @Override
@@ -831,6 +894,13 @@
         return result;
     }
 
+    @Override
+    public Member findByUUID(String uuid) {
+        QueryWrapper<Member> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("uu_id", uuid);
+        return this.baseMapper.selectOne(queryWrapper);
+    }
+
     /**
      * 妫�娴嬩細鍛�
      *
@@ -844,4 +914,8 @@
         }
     }
 
-}
\ No newline at end of file
+    public static void main(String[] args) {
+        System.err.println(SecureUtil.md5("111111"));
+    }
+
+}

--
Gitblit v1.8.0