Quellcode durchsuchen

修改用户信息时,将其它的nickname字段也同时更新

Yangzw vor 8 Monaten
Ursprung
Commit
883c412d7e

+ 6 - 0
feifan-module-member/feifan-module-member-biz/src/main/java/cn/newfeifan/mall/module/member/dal/mysql/user/MemberUserMapper.java

@@ -10,6 +10,7 @@ import cn.newfeifan.mall.module.member.controller.admin.user.vo.MemberUserPageRe
 import cn.newfeifan.mall.module.member.dal.dataobject.user.MemberUserDO;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.stream.Collectors;
@@ -96,4 +97,9 @@ public interface MemberUserMapper extends BaseMapperX<MemberUserDO> {
         return update(null, lambdaUpdateWrapper);
     }
 
+    void synchronizationUserNicknameForDUser(@Param(value = "nickname")String nickname, @Param(value = "userId")Long userId);
+
+    void synchronizationUserNicknameForIntegral(@Param("nickname") String nickname, @Param("userId") Long userId);
+    void synchronizationUserNicknameForSharePathDesc(@Param("nickname") String nickname, @Param("userId") Long userId);
+    void synchronizationUserNicknameForSharePathAnc(@Param("nickname") String nickname, @Param("userId") Long userId);
 }

+ 7 - 1
feifan-module-member/feifan-module-member-biz/src/main/java/cn/newfeifan/mall/module/member/service/user/MemberUserServiceImpl.java

@@ -168,7 +168,13 @@ public class MemberUserServiceImpl implements MemberUserService {
     @Override
     public void updateUser(Long userId, AppMemberUserUpdateReqVO reqVO) {
         MemberUserDO updateObj = BeanUtils.toBean(reqVO, MemberUserDO.class).setId(userId);
-        memberUserMapper.updateById(updateObj);
+        if (memberUserMapper.updateById(updateObj) > 0 && StrUtil.isNotEmpty(reqVO.getNickname())) {
+            //同步修改其它地方保留的用户名
+            memberUserMapper.synchronizationUserNicknameForDUser(reqVO.getNickname(), userId);
+            memberUserMapper.synchronizationUserNicknameForIntegral(reqVO.getNickname(), userId);
+            memberUserMapper.synchronizationUserNicknameForSharePathDesc(reqVO.getNickname(), userId);
+            memberUserMapper.synchronizationUserNicknameForSharePathAnc(reqVO.getNickname(), userId);
+        }
     }
 
     @Override

+ 18 - 0
feifan-module-member/feifan-module-member-biz/src/main/resources/mapper/user/MemberUserMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.newfeifan.mall.module.member.dal.mysql.user.MemberUserMapper">
+
+    <update id="synchronizationUserNicknameForDUser">
+        update distri_duser set nick_name = #{nickname} where user_id = #{userId};
+    </update>
+    <update id="synchronizationUserNicknameForIntegral">
+        update distri_integral set nick_name = #{nickname} where user_id = #{userId};
+    </update>
+    <update id="synchronizationUserNicknameForSharePathDesc">
+        update distri_share_path set desc_nick_name = #{nickname} where descendant = #{userId};
+    </update>
+    <update id="synchronizationUserNicknameForSharePathAnc">
+        update distri_share_path set anc_name = #{nickname} where ancestor = #{userId};
+    </update>
+
+</mapper>