From 095eb642b440c3c3b9ed2e553a666970ac1032ab Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期三, 03 九月 2025 16:15:26 +0800 Subject: [PATCH] 用户消费金额与总订单数,按标签过滤会员,订单列表会员名称与导出 --- framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java | 66 ++++++++++++++++++++++++++++++-- 1 files changed, 61 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 474951a..ed570fb 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,7 @@ import cn.hutool.core.convert.Convert; import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.crypto.SecureUtil; import cn.lili.base.Result; import cn.lili.cache.Cache; import cn.lili.cache.CachePrefix; @@ -24,6 +25,7 @@ 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.MemberNickNameForm; import cn.lili.modules.lmk.domain.form.MemberTagForm; import cn.lili.modules.lmk.service.MemberTagService; import cn.lili.modules.lmk.service.VideoAccountService; @@ -66,6 +68,7 @@ import java.util.Map; import java.util.Objects; import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; /** * 浼氬憳鎺ュ彛涓氬姟灞傚疄鐜� @@ -209,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); } @@ -254,7 +258,7 @@ @Override @Transactional - public Member autoRegister(ConnectAuthUser authUser) { + public Member autoRegister(ConnectAuthUser authUser,Boolean encryptTwice) { if (CharSequenceUtil.isEmpty(authUser.getNickname())) { authUser.setNickname(CommonUtil.getSpecialStr("鐢ㄦ埛")); @@ -266,7 +270,11 @@ // 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); @@ -523,10 +531,24 @@ } @Override + public Result updateMemberNickName(MemberNickNameForm form) { + Member member = baseMapper.selectById(form.getMemberId()); + boolean update = false; + if ("寰俊鐢ㄦ埛".equals(member.getNickName()) || StringUtils.isBlank(member.getNickName())) { + member.setNickName(form.getNickName()); + update = true; + } + if (update){ + baseMapper.updateById(member); + } + return Result.ok().data(member.getNickName()); + } + + @Override public Result resetPassword(String id) { - String password = "123456"; + String password = "111111"; Member member = this.getById(id); - member.setPassword(new BCryptPasswordEncoder().encode(password)); + member.setPassword(new BCryptPasswordEncoder().encode(SecureUtil.md5(password))); this.updateById(member); return Result.ok("閲嶇疆鎴愬姛"); } @@ -555,8 +577,36 @@ queryWrapper.eq(CharSequenceUtil.isNotBlank(memberSearchVO.getDisabled()), "disabled", memberSearchVO.getDisabled().equals(SwitchEnum.OPEN.name()) ? 1 : 0); queryWrapper.orderByDesc("create_time"); + return this.baseMapper.pageByMemberVO(PageUtil.initPage(page), queryWrapper); } + @Override + public IPage<MemberVO> getMemberPageAndTag(MemberSearchVO memberSearchVO, PageVO page) { + QueryWrapper<Member> queryWrapper = Wrappers.query(); + //鐢ㄦ埛鍚嶆煡璇� + queryWrapper.like(CharSequenceUtil.isNotBlank(memberSearchVO.getUsername()), "username", memberSearchVO.getUsername()); + //鐢ㄦ埛鍚嶆煡璇� + queryWrapper.like(CharSequenceUtil.isNotBlank(memberSearchVO.getNickName()), "nick_name", memberSearchVO.getNickName()); + //鎸夌収鐢佃瘽鍙风爜鏌ヨ + queryWrapper.like(CharSequenceUtil.isNotBlank(memberSearchVO.getMobile()), "mobile", memberSearchVO.getMobile()); + //鎸夌収浼氬憳鐘舵�佹煡璇� + queryWrapper.eq(CharSequenceUtil.isNotBlank(memberSearchVO.getDisabled()), "disabled", + memberSearchVO.getDisabled().equals(SwitchEnum.OPEN.name()) ? 1 : 0); + queryWrapper.orderByDesc("create_time"); + if (CollectionUtils.isNotEmpty(memberSearchVO.getTagIds())) { + // 浣跨敤inSql鏂规硶杩涜瀹夊叏鐨勫瓙鏌ヨ + String tagIdsStr = memberSearchVO.getTagIds().stream() + .map(String::valueOf) + .collect(Collectors.joining(",")); + queryWrapper.inSql("id", + "SELECT DISTINCT member_id FROM lmk_member_tag WHERE tag_id IN (" + + tagIdsStr + ")"); + + return this.baseMapper.pageByMemberVO(PageUtil.initPage(page), queryWrapper); + } + return this.baseMapper.pageByMemberVO(PageUtil.initPage(page),queryWrapper); + } + @Override @PointLogPoint @@ -806,7 +856,9 @@ public MemberVO getMember(String id) { MemberVO member = baseMapper.getVoById(id); if (Objects.nonNull(member)) { - member.setFace(cosUtil.getPreviewUrl(member.getFace())); + if(StringUtils.isNotBlank(member.getFace()) && !member.getFace().contains("https")){ + member.setFace(cosUtil.getPreviewUrl(member.getFace())); + } } return member; } @@ -906,4 +958,8 @@ } } + public static void main(String[] args) { + System.err.println(SecureUtil.md5("111111")); + } + } -- Gitblit v1.8.0