From 61299cec43f35a9a8fd6d6a9840fdc44f1c24e9b Mon Sep 17 00:00:00 2001 From: 陶杰 <1378534974@qq.com> Date: 星期二, 22 十月 2024 17:13:32 +0800 Subject: [PATCH] 1.供应商-钱包查询接口 2.供应商-提现接口 --- src/main/java/com/mzl/flower/service/partner/PartnerService.java | 123 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 122 insertions(+), 1 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 609684c..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,15 +10,21 @@ 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.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; +import javax.annotation.Resource; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; @@ -36,14 +42,24 @@ private final PartnerMapper partnerMapper; + private final UserMapper userMapper; + private final WxMaService maService; private final UploadService uploadService; - public PartnerService(PartnerMapper partnerMapper, WxMaService maService, UploadService uploadService) { + @Resource + private BaseService baseService; + + @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; } @@ -54,16 +70,50 @@ 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"); partner.setIdCards(JSON.toJSONString(dto.getIdCards())); partner.create(SecurityUtils.getUserId()); partner.setStatus(PARTNER_STATUS_AUDIT); + partner.setIsEnabled(true); partnerMapper.insert(partner); }else{//重新修改 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())); @@ -128,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 { @@ -161,4 +235,51 @@ partner.update(SecurityUtils.getUserId()); partnerMapper.updateById(partner); } + + public void isEnable(Long id) { + Partner partner = partnerMapper.selectById(id); + if (partner == null) { + throw new ValidationException("合伙人信息不存在"); + } + if (partner.getIsEnabled()) { + partner.setIsEnabled(false); + //强制下线 + baseService.removeToken(partner.getUserId()); + } else { + partner.setIsEnabled(true); + } + 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