diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java index 6b217b7f..55e5d776 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java @@ -282,20 +282,27 @@ public class PayContactsManagementController extends JeroController updatePayContactsManagement = new LambdaUpdateWrapper<>(); // 企业管理员变更需要同步会员项目 - if(Objects.equals(payContactsManagementOld.getRoleCode(),PayContactsManagementCommon.ROLE_CODE2) - && StringUtils.isBlank(payContactsManagement.getFlagStatus())){ - // 调用会员项目接口 - MemberInfo memberInfo = new MemberInfo(); - memberInfo.setCompanyName(payCompanyManagement.getCompanyName()); - memberInfo.setId(payCompanyManagement.getMemberId()); - memberInfo.setLiaisonMan(payContactsManagement.getName()); - memberInfo.setEmail(payContactsManagement.getEmail()); - memberInfo.setMobile(payContactsManagement.getPhone()); - memberInfo.setAddress(payContactsManagement.getContactAddress()); - memberInfo.setPostcode(payContactsManagement.getPostalCode()); - AuthenticationUtils.post("/memberInfo/memberInfo/incomingEdit","",memberInfo); - + if(Objects.equals(payContactsManagementOld.getRoleCode(),PayContactsManagementCommon.ROLE_CODE2)){ + // 变更了企业,变更为企业联系人 + if(!Objects.equals(payContactsManagementOld.getCompanyId(),payContactsManagement.getCompanyId())){ + updatePayContactsManagement.set(PayContactsManagement::getRoleCode,PayContactsManagementCommon.ROLE_CODE1); + updatePayContactsManagement.set(PayContactsManagement::getMemberNature,null); + updatePayContactsManagement.set(PayContactsManagement::getUsername,null); + updatePayContactsManagement.set(PayContactsManagement::getDelFlag,null); + }else{ + // 调用会员项目接口 + MemberInfo memberInfo = new MemberInfo(); + memberInfo.setCompanyName(payCompanyManagement.getCompanyName()); + memberInfo.setId(payCompanyManagement.getMemberId()); + memberInfo.setLiaisonMan(payContactsManagement.getName()); + memberInfo.setEmail(payContactsManagement.getEmail()); + memberInfo.setMobile(payContactsManagement.getPhone()); + memberInfo.setAddress(payContactsManagement.getContactAddress()); + memberInfo.setPostcode(payContactsManagement.getPostalCode()); + AuthenticationUtils.post("/memberInfo/memberInfo/incomingEdit","",memberInfo); + } } try { if (!StringUtils.isBlank(payContactsManagement.getPhone())){ @@ -308,7 +315,6 @@ public class PayContactsManagementController extends JeroController updatePayContactsManagement = new LambdaUpdateWrapper<>(); updatePayContactsManagement.eq(PayContactsManagement::getId,payContactsManagement.getId()); updatePayContactsManagement.set(PayContactsManagement::getCompanyName,payContactsManagement.getCompanyName()); updatePayContactsManagement.set(PayContactsManagement::getCompanyId,payContactsManagement.getCompanyId()); @@ -320,14 +326,6 @@ public class PayContactsManagementController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayCompanyManagement::getCompanyName,payCompanyManagement.getCompanyName()); + PayCompanyManagement payCompanyManagementNew = payCompanyManagementService.getOne(queryWrapper); + // 企业名称存在,并且编辑id与查询不同,则校验不通过 + if(!Objects.isNull(payCompanyManagementNew) && !Objects.equals(payCompanyManagementNew.getId(),payCompanyManagement.getId())) { + throw new JeroBootException("企业名称已存在!"); + } + }catch (Exception e){ throw new JeroBootException("企业名称已存在!"); } if(!StringUtils.isBlank(payCompanyManagement.getCompanyPhone())){ @@ -328,24 +384,6 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); @@ -356,14 +394,12 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayContactsManagement::getPhone,phone); + PayContactsManagement payContactsManagementNew = getOne(queryWrapper); + // 手机号存在,并且编辑id与查询不同,则校验不通过 + if(!Objects.isNull(payContactsManagementNew) && !Objects.equals(payContactsManagementNew.getId(),payContactsManagement.getId())) { + throw new JeroBootException("手机号已存在!"); + } + }catch (Exception e){ + log.info("联系人管理-编辑异常",e); + throw new JeroBootException("手机号已存在!"); + } + try { + // 新增联系人前校验同企业下联系人是否存在 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayContactsManagement::getName,payContactsManagement.getName()); + queryWrapper.eq(PayContactsManagement::getCompanyId,payContactsManagement.getCompanyId()); + PayContactsManagement payContactsManagementNew = getOne(queryWrapper); + // 姓名存在,并且编辑id与查询不同,则校验不通过 + if(!Objects.isNull(payContactsManagementNew) && !Objects.equals(payContactsManagementNew.getId(),payContactsManagement.getId())) { + throw new JeroBootException("联系人姓名已存在!"); + } + }catch (Exception e){ + log.info("联系人管理-编辑异常",e); + throw new JeroBootException("联系人姓名已存在!"); + } + + // 企业管理员变更,并且变更了企业,需要同步会员项目 + if(Objects.equals(payContactsManagementOld.getRoleCode(),PayContactsManagementCommon.ROLE_CODE2)){ + // 调用会员项目接口 + MemberInfo memberInfo = new MemberInfo(); + memberInfo.setCompanyName(payCompanyManagement.getCompanyName()); + memberInfo.setId(payCompanyManagement.getMemberId()); + memberInfo.setLiaisonMan(payContactsManagement.getName()); + memberInfo.setEmail(payContactsManagement.getEmail()); + memberInfo.setMobile(payContactsManagement.getPhone()); + memberInfo.setAddress(payContactsManagement.getContactAddress()); + memberInfo.setPostcode(payContactsManagement.getPostalCode()); + AuthenticationUtils.post("/memberInfo/memberInfo/incomingEdit","",memberInfo); + } + + try { + if (!StringUtils.isBlank(payContactsManagement.getPhone())){ + payContactsManagement.setPhone(PasswordUtil.encrypt(payContactsManagement.getPhone())); + } + if (!StringUtils.isBlank(payContactsManagement.getEmail())){ + payContactsManagement.setEmail(PasswordUtil.encrypt(payContactsManagement.getEmail())); + } + }catch (Exception e){ + log.error("手机号、邮箱加密异常!",e); + } + + LambdaUpdateWrapper updatePayContactsManagement = new LambdaUpdateWrapper<>(); + updatePayContactsManagement.eq(PayContactsManagement::getId,payContactsManagement.getId()); + updatePayContactsManagement.set(PayContactsManagement::getCompanyName,payContactsManagement.getCompanyName()); + updatePayContactsManagement.set(PayContactsManagement::getCompanyId,payContactsManagement.getCompanyId()); + updatePayContactsManagement.set(PayContactsManagement::getName,payContactsManagement.getName()); + updatePayContactsManagement.set(PayContactsManagement::getGender,StringUtils.isBlank(payContactsManagement.getGender()) ? null : payContactsManagement.getGender()); + updatePayContactsManagement.set(PayContactsManagement::getPost,payContactsManagement.getPost()); + updatePayContactsManagement.set(PayContactsManagement::getPhone,payContactsManagement.getPhone()); + updatePayContactsManagement.set(PayContactsManagement::getEmail,payContactsManagement.getEmail()); + updatePayContactsManagement.set(PayContactsManagement::getContactAddress,payContactsManagement.getContactAddress()); + updatePayContactsManagement.set(PayContactsManagement::getPostalCode,payContactsManagement.getPostalCode()); + updatePayContactsManagement.set(PayContactsManagement::getRemarks,payContactsManagement.getRemarks()); + update(updatePayContactsManagement); + } + /** + * @Description 会员系统同步会员管理员 + * @Date 2021/12/20 15:14 + * @param payContactsManagement + * @return void + */ + @Override + public void contactsEditMember(PayContactsManagement payContactsManagement) { StringBuilder msg = ValidUtil.validateAll(payContactsManagement); if(!StringUtils.isBlank(msg)){ throw new JeroBootException(msg.toString()); @@ -163,21 +262,6 @@ public class PayContactsManagementServiceImpl extends ServiceImpl listSigning, List list) { // 已存在企业名称,变更数据来源 if(!CollectionUtils.isEmpty(listSigning)){