From 34a5c00c80235213fca81689636c79fbad47a5fe Mon Sep 17 00:00:00 2001 From: gongzuming <gongzuming> Date: 星期五, 11 十月 2024 09:24:26 +0800 Subject: [PATCH] 支付优化 --- src/main/java/com/mzl/flower/service/partner/PartnerService.java | 102 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 100 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/mzl/flower/service/partner/PartnerService.java b/src/main/java/com/mzl/flower/service/partner/PartnerService.java index f0f110e..5461de7 100644 --- a/src/main/java/com/mzl/flower/service/partner/PartnerService.java +++ b/src/main/java/com/mzl/flower/service/partner/PartnerService.java @@ -10,14 +10,17 @@ import com.mzl.flower.dto.request.partner.*; import com.mzl.flower.dto.response.partner.PartnerDTO; import com.mzl.flower.entity.partner.Partner; -import com.mzl.flower.entity.supplier.Supplier; +import com.mzl.flower.entity.system.User; import com.mzl.flower.mapper.partner.PartnerMapper; +import com.mzl.flower.mapper.system.UserMapper; import com.mzl.flower.service.BaseService; import com.mzl.flower.service.UploadService; +import com.mzl.flower.service.system.UserService; import com.mzl.flower.utils.DateUtils; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -39,6 +42,8 @@ private final PartnerMapper partnerMapper; + private final UserMapper userMapper; + private final WxMaService maService; @@ -48,8 +53,13 @@ @Resource private BaseService baseService; - public PartnerService(PartnerMapper partnerMapper, WxMaService maService, UploadService uploadService) { + @Autowired + private UserService userService; + + + public PartnerService(PartnerMapper partnerMapper, UserMapper userMapper, WxMaService maService, UploadService uploadService) { this.partnerMapper = partnerMapper; + this.userMapper = userMapper; this.maService = maService; this.uploadService = uploadService; } @@ -59,6 +69,22 @@ if(dto.getId()==null){ //注册 if(checkExist(dto.getUserId())){ throw new ValidationException("合伙人信息已登记"); + } + if(StringUtils.isNotBlank(dto.getContactTel()) && StringUtils.isNotBlank(dto.getUserId())){ + //验证手机号 + User user = userMapper.selectById(dto.getUserId()); + if(user==null){ + throw new ValidationException("合伙人账号信息不存在"); + } + if(userMapper.selectCount(new LambdaQueryWrapper<User>().eq(User::getTel, dto.getContactTel()) + .eq(User::getType, Constants.USER_TYPE.partner.name()) + .ne(User::getId, dto.getUserId()) + .eq(User::getDeleted, 0) + )>0){ + throw new ValidationException("手机号已被注册使用"); + } + user.setTel(dto.getContactTel()); + userMapper.updateById(user); } partner = new Partner(); BeanUtils.copyProperties(dto, partner,"id"); @@ -71,6 +97,23 @@ partner = partnerMapper.selectById(dto.getId()); if(partner==null){ throw new ValidationException("合伙人信息未登记"); + } + if(StringUtils.isNotBlank(dto.getContactTel()) && !partner.getContactTel().equals(dto.getContactTel())){ + //验证手机号 + User user = userMapper.selectById(partner.getUserId()); + if(user==null){ + throw new ValidationException("合伙人账号信息不存在"); + } + if(userMapper.selectCount(new LambdaQueryWrapper<User>().eq(User::getTel, dto.getContactTel()) + .eq(User::getType, Constants.USER_TYPE.partner.name()) + .ne(User::getId, partner.getUserId()) + .eq(User::getDeleted, 0) + )>0){ + throw new ValidationException("手机号已被注册使用"); + } + user.setTel(dto.getContactTel()); + partner.setContactTel(dto.getContactTel()); + userMapper.updateById(user); } BeanUtils.copyProperties(dto, partner,"id"); partner.setIdCards(JSON.toJSONString(dto.getIdCards())); @@ -135,8 +178,32 @@ partner.setProvince(dto.getProvince()); partner.setCity(dto.getCity()); partner.setRegion(dto.getRegion()); + if(StringUtils.isNotBlank(dto.getName())){ + partner.setName(dto.getName()); + } + if(StringUtils.isNotBlank(dto.getContactTel()) && !partner.getContactTel().equals(dto.getContactTel())){ + //验证手机号 + User user = userMapper.selectById(partner.getUserId()); + if(user==null){ + throw new ValidationException("合伙人账号信息不存在"); + } + if(userMapper.selectCount(new LambdaQueryWrapper<User>().eq(User::getTel, dto.getContactTel()) + .eq(User::getType, Constants.USER_TYPE.partner.name()) + .ne(User::getId, partner.getUserId()) + .eq(User::getDeleted, 0) + )>0){ + throw new ValidationException("手机号已被注册使用"); + } + user.setTel(dto.getContactTel()); + partner.setContactTel(dto.getContactTel()); + userMapper.updateById(user); + } partner.update(SecurityUtils.getUserId()); partnerMapper.updateById(partner); + + + + } public String generateCodeDTO(GenerateCodeDTO dto) { try { @@ -184,4 +251,35 @@ partner.update(SecurityUtils.getUserId()); partnerMapper.updateById(partner); } + + public void baseUpdate(UpdatePartnerBaseDTO dto) { + Partner partner = partnerMapper.selectById(dto.getId()); + if(partner==null){ + throw new ValidationException("合伙人信息未登记"); + } + BeanUtils.copyProperties(dto, partner,"id"); + partner.update(SecurityUtils.getUserId()); + partnerMapper.updateById(partner); + } + + @Transactional + public void phoneUpdate(UpdatePhoneDTO dto) { + Partner partner = partnerMapper.selectById(dto.getId()); + if(partner==null){ + throw new ValidationException("合伙人信息未登记"); + } + User user = userService.getUserById(partner.getUserId()); + if(user == null){ + throw new ValidationException("用户不存在"); + } + partner.setContactTel(dto.getUsername()); + partner.update(SecurityUtils.getUserId()); + partnerMapper.updateById(partner); + + user.setTel(dto.getUsername()); + user.setLoginName(dto.getUsername()); + user.update(SecurityUtils.getUserId()); + userMapper.updateById(user); + + } } -- Gitblit v1.9.3