会员修改临时企业,联系人

This commit is contained in:
梁琦涛
2021-09-22 14:26:54 +08:00
parent 10f611624c
commit b9803dd8da
4 changed files with 172 additions and 24 deletions
@@ -125,7 +125,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
log.info("支出合同-添加异常",e); log.info("支出合同-添加异常",e);
throw new JeroBootException("合同编号已存在!"); throw new JeroBootException("合同编号已存在!");
} }
setPaySpendingContract(paySpendingContract); setPaySpendingContractAdd(paySpendingContract);
paySpendingContractService.save(paySpendingContract); paySpendingContractService.save(paySpendingContract);
StringBuilder msgPaySpendingContractInstallment = new StringBuilder(); StringBuilder msgPaySpendingContractInstallment = new StringBuilder();
if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){ if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){
@@ -218,7 +218,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
if(!StringUtils.isBlank(msgPaySpendingContractInstallment)){ if(!StringUtils.isBlank(msgPaySpendingContractInstallment)){
throw new JeroBootException(msgPaySpendingContractInstallment.toString()); throw new JeroBootException(msgPaySpendingContractInstallment.toString());
} }
setPaySpendingContract(paySpendingContract); setPaySpendingContractEdit(paySpendingContract,paySpendingContractStatus);
paySpendingContractService.updateById(paySpendingContract); paySpendingContractService.updateById(paySpendingContract);
} }
@@ -518,7 +518,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
paySpendingContract.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS1); paySpendingContract.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS1);
} }
paySpendingContract.setNoTaxAmount(paySpendingContract.getContractAmount().divide(new BigDecimal("1").add(paySpendingContract.getRate().divide(new BigDecimal("100"))))); paySpendingContract.setNoTaxAmount(paySpendingContract.getContractAmount().divide(new BigDecimal("1").add(paySpendingContract.getRate().divide(new BigDecimal("100")))));
setPaySpendingContract(paySpendingContract); setPaySpendingContractAdd(paySpendingContract);
paySpendingContractService.save(paySpendingContract); paySpendingContractService.save(paySpendingContract);
List<PaySpendingContractInstallment> listPaySpendingContractInstallment = p.getListInstallment(); List<PaySpendingContractInstallment> listPaySpendingContractInstallment = p.getListInstallment();
if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){ if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){
@@ -720,17 +720,67 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
* @Return * @Return
* @Exception * @Exception
*/ */
private void setPaySpendingContract(PaySpendingContract paySpendingContract){ private void setPaySpendingContractAdd(PaySpendingContract paySpendingContract){
// 企业 // 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(paySpendingContract.getSignedCompanyId()); PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(paySpendingContract.getSignedCompanyId());
if(Objects.isNull(chargeCompanyName)){ if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!"); throw new JeroBootException("企业名称为空!");
} }
paySpendingContract.setSignedCompanyTemporaryId(chargeCompanyName.getId());
paySpendingContract.setSignedCompanyTemporaryName(chargeCompanyName.getCompanyName());
// 联系人 // 联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(paySpendingContract.getSignedContactsId()); PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(paySpendingContract.getSignedContactsId());
if(Objects.isNull(contactsName)){ if(Objects.isNull(contactsName)){
throw new JeroBootException("联系人名称为空!"); throw new JeroBootException("联系人名称为空!");
} }
paySpendingContract.setSignedContactsTemporaryId(contactsName.getId());
paySpendingContract.setSignedContactsTemporaryName(contactsName.getName());
// 负责人名称
SysUser principalName = sysUserService.getById(paySpendingContract.getPrincipalId());
if(Objects.isNull(principalName)){
throw new JeroBootException("负责人名称为空!");
}
paySpendingContract.setPrincipalId(principalName.getId());
paySpendingContract.setPrincipalName(principalName.getRealname());
}
/**
* @Description 插入企业信息,联系人信息到临时表,更新项目记录
* @Author lqt
* @Date 2021/8/31
* @Param payCommonProject
* @Return
* @Exception
*/
private void setPaySpendingContractEdit(PaySpendingContract paySpendingContract,PaySpendingContract paySpendingContractStatus){
if(!Objects.equals(paySpendingContractStatus.getSignedCompanyTemporaryId(),paySpendingContract.getSignedCompanyId())){
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(paySpendingContract.getSignedCompanyId());
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
paySpendingContract.setSignedCompanyTemporaryId(chargeCompanyName.getId());
paySpendingContract.setSignedCompanyTemporaryName(chargeCompanyName.getCompanyName());
payCompanyManagementTemporaryService.removeById(paySpendingContract.getSignedCompanyTemporaryId());
}else{
paySpendingContract.setSignedCompanyId(paySpendingContractStatus.getSignedCompanyId());
}
if(!Objects.equals(paySpendingContractStatus.getSignedContactsTemporaryId(),paySpendingContract.getSignedContactsId())){
// 联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(paySpendingContract.getSignedContactsId());
if(Objects.isNull(contactsName)){
throw new JeroBootException("联系人名称为空!");
}
paySpendingContract.setSignedContactsTemporaryId(contactsName.getId());
paySpendingContract.setSignedContactsTemporaryName(contactsName.getName());
payContactsManagementTemporaryService.removeById(paySpendingContract.getSignedContactsTemporaryId());
}else{
paySpendingContract.setSignedContactsId(paySpendingContractStatus.getSignedContactsId());
}
// 负责人名称 // 负责人名称
SysUser principalName = sysUserService.getById(paySpendingContract.getPrincipalId()); SysUser principalName = sysUserService.getById(paySpendingContract.getPrincipalId());
if(Objects.isNull(principalName)){ if(Objects.isNull(principalName)){
@@ -738,9 +788,5 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
} }
paySpendingContract.setPrincipalId(principalName.getId()); paySpendingContract.setPrincipalId(principalName.getId());
paySpendingContract.setPrincipalName(principalName.getRealname()); paySpendingContract.setPrincipalName(principalName.getRealname());
paySpendingContract.setSignedContactsTemporaryId(contactsName.getId());
paySpendingContract.setSignedContactsTemporaryName(contactsName.getName());
paySpendingContract.setSignedCompanyTemporaryId(chargeCompanyName.getId());
paySpendingContract.setSignedCompanyTemporaryName(chargeCompanyName.getCompanyName());
} }
} }
@@ -85,7 +85,8 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl<PayMember
if (count>0){ if (count>0){
throw new JeroBootException("会员单位已经存在"); throw new JeroBootException("会员单位已经存在");
} }
validMemberProjectSubitem(payMemberProjectSubitem); // validMemberProjectSubitem(payMemberProjectSubitem);
validMemberProjectSubitemAdd(payMemberProjectSubitem);
//实收金额 //实收金额
payMemberProjectSubitem.setPaidAmount(new BigDecimal("0.00")); payMemberProjectSubitem.setPaidAmount(new BigDecimal("0.00"));
//到账 //到账
@@ -167,20 +168,20 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl<PayMember
payMemberProjectSubitem.setMail(payMemberProjectSubitem1.getMail()); payMemberProjectSubitem.setMail(payMemberProjectSubitem1.getMail());
//如果原始企业id和现在企业id不同,就删除临时表数据 //如果原始企业id和现在企业id不同,就删除临时表数据
String companyId = payMemberProjectSubitem.getCompanyTemporaryId(); // String companyId = payMemberProjectSubitem.getCompanyTemporaryId();
if (!payMemberProjectSubitem1.getCompanyTemporaryId().equals(companyId)) { // if (!payMemberProjectSubitem1.getCompanyTemporaryId().equals(companyId)) {
companyManagementTemporaryService.removeById(companyId); // companyManagementTemporaryService.removeById(companyId);
} // }
//如果原始企业联系人id和现在企业联系人id不同,就删除临时表数据 // //如果原始企业联系人id和现在企业联系人id不同,就删除临时表数据
String companyContactId = payMemberProjectSubitem.getCompanyContactTemporaryId(); // String companyContactId = payMemberProjectSubitem.getCompanyContactTemporaryId();
if (!payMemberProjectSubitem1.getCompanyContactTemporaryId().equals(companyContactId)) { // if (!payMemberProjectSubitem1.getCompanyContactTemporaryId().equals(companyContactId)) {
contactsManagementTemporaryService.removeById(companyContactId); // contactsManagementTemporaryService.removeById(companyContactId);
} // }
//如果原始邮寄联系人id和现在邮寄联系人id不同,就删除临时表数据 // //如果原始邮寄联系人id和现在邮寄联系人id不同,就删除临时表数据
String postContactId = payMemberProjectSubitem.getPostContactTemporaryId(); // String postContactId = payMemberProjectSubitem.getPostContactTemporaryId();
if (!payMemberProjectSubitem1.getPostContactTemporaryId().equals(postContactId)) { // if (!payMemberProjectSubitem1.getPostContactTemporaryId().equals(postContactId)) {
contactsManagementTemporaryService.removeById(postContactId); // contactsManagementTemporaryService.removeById(postContactId);
} // }
// 变更应收金额,重新校验状态 // 变更应收金额,重新校验状态
ProjectStatusVO projectStatusVO = projectDetailService.getStatus(payMemberProjectSubitem.getId(),payMemberProjectSubitem.getAmountReceivable(),payMemberProjectSubitem.getNeedInvoice()); ProjectStatusVO projectStatusVO = projectDetailService.getStatus(payMemberProjectSubitem.getId(),payMemberProjectSubitem.getAmountReceivable(),payMemberProjectSubitem.getNeedInvoice());
if(!Objects.isNull(projectStatusVO)){ if(!Objects.isNull(projectStatusVO)){
@@ -194,10 +195,103 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl<PayMember
payMemberProjectSubitem.setMail(projectStatusVO.getMail()); payMemberProjectSubitem.setMail(projectStatusVO.getMail());
} }
} }
validMemberProjectSubitem(payMemberProjectSubitem); validMemberProjectSubitemEdit(payMemberProjectSubitem,payMemberProjectSubitem1);
saveOrUpdate(payMemberProjectSubitem); saveOrUpdate(payMemberProjectSubitem);
} }
/**
* 校验会员项目成员
* @param payMemberProjectSubitem 会员项目成员
*/
public void validMemberProjectSubitemAdd(PayMemberProjectSubitem payMemberProjectSubitem) {
// 企业
PayCompanyManagementTemporary chargeCompanyName = companyManagementTemporaryService.insertCompanyManagementTemporary(payMemberProjectSubitem.getCompanyId());
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
payMemberProjectSubitem.setCompanyTemporaryId(chargeCompanyName.getId());
payMemberProjectSubitem.setCompanyName(chargeCompanyName.getCompanyName());
// 联系人
PayContactsManagementTemporary contactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getCompanyContactId());
if(Objects.isNull(contactsName)){
throw new JeroBootException("联系人名称为空!");
}
payMemberProjectSubitem.setCompanyContactTemporaryId(contactsName.getId());
payMemberProjectSubitem.setCompanyContactName(contactsName.getName());
// 联系人
PayContactsManagementTemporary postContactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getPostContactId());
if(Objects.isNull(postContactsName)){
throw new JeroBootException("邮寄联系人为空!");
}
payMemberProjectSubitem.setPostContactTemporaryId(postContactsName.getId());
payMemberProjectSubitem.setPostContactName(postContactsName.getName());
//校验来款方式
Integer paymentMethod = payMemberProjectSubitem.getPaymentMethod();
//合同
if (paymentMethod.equals(2)){
ValidUtil.validate(payMemberProjectSubitem, Contract.class);
}
//收费通知
if (paymentMethod.equals(3)){
ValidUtil.validate(payMemberProjectSubitem, ChargeNotice.class);
}
}
/**
* 校验会员项目成员
* @param payMemberProjectSubitem 会员项目成员
*/
public void validMemberProjectSubitemEdit(PayMemberProjectSubitem payMemberProjectSubitem,PayMemberProjectSubitem payMemberProjectSubitemOld) {
// 企业id != 企业模板id 变更
if(!Objects.equals(payMemberProjectSubitem.getCompanyId(),payMemberProjectSubitemOld.getCompanyId())){
// 企业
PayCompanyManagementTemporary chargeCompanyName = companyManagementTemporaryService.insertCompanyManagementTemporary(payMemberProjectSubitem.getCompanyId());
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
payMemberProjectSubitem.setCompanyTemporaryId(chargeCompanyName.getId());
payMemberProjectSubitem.setCompanyName(chargeCompanyName.getCompanyName());
companyManagementTemporaryService.removeById(payMemberProjectSubitemOld.getCompanyTemporaryId());
}
// 联系人id != 联系人模板id 变更
if(!Objects.equals(payMemberProjectSubitem.getCompanyContactId(),payMemberProjectSubitemOld.getCompanyContactId())){
// 联系人
PayContactsManagementTemporary contactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getCompanyContactId());
if(Objects.isNull(contactsName)){
throw new JeroBootException("联系人名称为空!");
}
payMemberProjectSubitem.setCompanyContactTemporaryId(contactsName.getId());
payMemberProjectSubitem.setCompanyContactName(contactsName.getName());
contactsManagementTemporaryService.removeById(payMemberProjectSubitemOld.getCompanyContactTemporaryId());
}
// 邮寄联系人id != 邮寄联系人模板id 变更
if(!Objects.equals(payMemberProjectSubitem.getPostContactId(),payMemberProjectSubitemOld.getPostContactId())){
// 联系人
PayContactsManagementTemporary contactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getPostContactId());
if(Objects.isNull(contactsName)){
throw new JeroBootException("邮寄联系人为空!");
}
payMemberProjectSubitem.setPostContactTemporaryId(contactsName.getId());
payMemberProjectSubitem.setPostContactName(contactsName.getName());
contactsManagementTemporaryService.removeById(payMemberProjectSubitemOld.getPostContactTemporaryId());
}
//校验来款方式
Integer paymentMethod = payMemberProjectSubitem.getPaymentMethod();
//合同
if (paymentMethod.equals(2)){
ValidUtil.validate(payMemberProjectSubitem, Contract.class);
}
//收费通知
if (paymentMethod.equals(3)){
ValidUtil.validate(payMemberProjectSubitem, ChargeNotice.class);
}
}
/** /**
* 校验会员项目成员 * 校验会员项目成员
* @param payMemberProjectSubitem 会员项目成员 * @param payMemberProjectSubitem 会员项目成员
@@ -48,6 +48,10 @@ public class PayCompanyManagementTemporaryServiceImpl extends ServiceImpl<PayCom
str = JSONObject.toJSONString(payCompanyManagement); str = JSONObject.toJSONString(payCompanyManagement);
} }
PayCompanyManagementTemporary payCompanyManagementTemporary = JSON.parseObject(str,PayCompanyManagementTemporary.class); PayCompanyManagementTemporary payCompanyManagementTemporary = JSON.parseObject(str,PayCompanyManagementTemporary.class);
payCompanyManagementTemporary.setCreateBy(null);
payCompanyManagementTemporary.setCreateTime(null);
payCompanyManagementTemporary.setUpdateBy(null);
payCompanyManagementTemporary.setUpdateTime(null);
payCompanyManagementTemporary.setId(null); payCompanyManagementTemporary.setId(null);
payCompanyManagementTemporaryService.save(payCompanyManagementTemporary); payCompanyManagementTemporaryService.save(payCompanyManagementTemporary);
return payCompanyManagementTemporary; return payCompanyManagementTemporary;
@@ -48,6 +48,10 @@ public class PayContactsManagementTemporaryServiceImpl extends ServiceImpl<PayCo
} }
PayContactsManagementTemporary payContactsManagementTemporary = JSON.parseObject(str,PayContactsManagementTemporary.class); PayContactsManagementTemporary payContactsManagementTemporary = JSON.parseObject(str,PayContactsManagementTemporary.class);
payContactsManagementTemporary.setId(null); payContactsManagementTemporary.setId(null);
payContactsManagementTemporary.setCreateBy(null);
payContactsManagementTemporary.setCreateTime(null);
payContactsManagementTemporary.setUpdateBy(null);
payContactsManagementTemporary.setUpdateTime(null);
payContactsManagementTemporaryService.save(payContactsManagementTemporary); payContactsManagementTemporaryService.save(payContactsManagementTemporary);
return payContactsManagementTemporary; return payContactsManagementTemporary;
} }