From fb8b419852d63782681a7ce4681f72c6fd47a96b Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期一, 23 九月 2024 15:32:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master-v2' into master-v2
---
src/main/java/com/mzl/flower/service/partner/PartnerService.java | 84 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 82 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 15f9a26..69a2141 100644
--- a/src/main/java/com/mzl/flower/service/partner/PartnerService.java
+++ b/src/main/java/com/mzl/flower/service/partner/PartnerService.java
@@ -10,9 +10,12 @@
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;
@@ -20,6 +23,7 @@
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;
@@ -37,14 +41,20 @@
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;
+
+ public PartnerService(PartnerMapper partnerMapper, UserMapper userMapper, WxMaService maService, UploadService uploadService) {
this.partnerMapper = partnerMapper;
+ this.userMapper = userMapper;
this.maService = maService;
this.uploadService = uploadService;
}
@@ -54,6 +64,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");
@@ -66,6 +92,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()));
@@ -130,8 +173,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 {
@@ -171,10 +238,23 @@
}
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);
+ }
+
}
--
Gitblit v1.9.3