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

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);
throw new JeroBootException("合同编号已存在!");
}
setPaySpendingContract(paySpendingContract);
setPaySpendingContractAdd(paySpendingContract);
paySpendingContractService.save(paySpendingContract);
StringBuilder msgPaySpendingContractInstallment = new StringBuilder();
if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){
@@ -218,7 +218,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
if(!StringUtils.isBlank(msgPaySpendingContractInstallment)){
throw new JeroBootException(msgPaySpendingContractInstallment.toString());
}
setPaySpendingContract(paySpendingContract);
setPaySpendingContractEdit(paySpendingContract,paySpendingContractStatus);
paySpendingContractService.updateById(paySpendingContract);
}
@@ -518,7 +518,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
paySpendingContract.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS1);
}
paySpendingContract.setNoTaxAmount(paySpendingContract.getContractAmount().divide(new BigDecimal("1").add(paySpendingContract.getRate().divide(new BigDecimal("100")))));
setPaySpendingContract(paySpendingContract);
setPaySpendingContractAdd(paySpendingContract);
paySpendingContractService.save(paySpendingContract);
List<PaySpendingContractInstallment> listPaySpendingContractInstallment = p.getListInstallment();
if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){
@@ -720,17 +720,67 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
* @Return
* @Exception
*/
private void setPaySpendingContract(PaySpendingContract paySpendingContract){
private void setPaySpendingContractAdd(PaySpendingContract paySpendingContract){
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(paySpendingContract.getSignedCompanyId());
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
paySpendingContract.setSignedCompanyTemporaryId(chargeCompanyName.getId());
paySpendingContract.setSignedCompanyTemporaryName(chargeCompanyName.getCompanyName());
// 联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(paySpendingContract.getSignedContactsId());
if(Objects.isNull(contactsName)){
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());
if(Objects.isNull(principalName)){
@@ -738,9 +788,5 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
}
paySpendingContract.setPrincipalId(principalName.getId());
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){
throw new JeroBootException("会员单位已经存在");
}
validMemberProjectSubitem(payMemberProjectSubitem);
// validMemberProjectSubitem(payMemberProjectSubitem);
validMemberProjectSubitemAdd(payMemberProjectSubitem);
//实收金额
payMemberProjectSubitem.setPaidAmount(new BigDecimal("0.00"));
//到账
@@ -167,20 +168,20 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl<PayMember
payMemberProjectSubitem.setMail(payMemberProjectSubitem1.getMail());
//如果原始企业id和现在企业id不同,就删除临时表数据
String companyId = payMemberProjectSubitem.getCompanyTemporaryId();
if (!payMemberProjectSubitem1.getCompanyTemporaryId().equals(companyId)) {
companyManagementTemporaryService.removeById(companyId);
}
//如果原始企业联系人id和现在企业联系人id不同,就删除临时表数据
String companyContactId = payMemberProjectSubitem.getCompanyContactTemporaryId();
if (!payMemberProjectSubitem1.getCompanyContactTemporaryId().equals(companyContactId)) {
contactsManagementTemporaryService.removeById(companyContactId);
}
//如果原始邮寄联系人id和现在邮寄联系人id不同,就删除临时表数据
String postContactId = payMemberProjectSubitem.getPostContactTemporaryId();
if (!payMemberProjectSubitem1.getPostContactTemporaryId().equals(postContactId)) {
contactsManagementTemporaryService.removeById(postContactId);
}
// String companyId = payMemberProjectSubitem.getCompanyTemporaryId();
// if (!payMemberProjectSubitem1.getCompanyTemporaryId().equals(companyId)) {
// companyManagementTemporaryService.removeById(companyId);
// }
// //如果原始企业联系人id和现在企业联系人id不同,就删除临时表数据
// String companyContactId = payMemberProjectSubitem.getCompanyContactTemporaryId();
// if (!payMemberProjectSubitem1.getCompanyContactTemporaryId().equals(companyContactId)) {
// contactsManagementTemporaryService.removeById(companyContactId);
// }
// //如果原始邮寄联系人id和现在邮寄联系人id不同,就删除临时表数据
// String postContactId = payMemberProjectSubitem.getPostContactTemporaryId();
// if (!payMemberProjectSubitem1.getPostContactTemporaryId().equals(postContactId)) {
// contactsManagementTemporaryService.removeById(postContactId);
// }
// 变更应收金额,重新校验状态
ProjectStatusVO projectStatusVO = projectDetailService.getStatus(payMemberProjectSubitem.getId(),payMemberProjectSubitem.getAmountReceivable(),payMemberProjectSubitem.getNeedInvoice());
if(!Objects.isNull(projectStatusVO)){
@@ -194,10 +195,103 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl<PayMember
payMemberProjectSubitem.setMail(projectStatusVO.getMail());
}
}
validMemberProjectSubitem(payMemberProjectSubitem);
validMemberProjectSubitemEdit(payMemberProjectSubitem,payMemberProjectSubitem1);
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 会员项目成员
@@ -48,6 +48,10 @@ public class PayCompanyManagementTemporaryServiceImpl extends ServiceImpl<PayCom
str = JSONObject.toJSONString(payCompanyManagement);
}
PayCompanyManagementTemporary payCompanyManagementTemporary = JSON.parseObject(str,PayCompanyManagementTemporary.class);
payCompanyManagementTemporary.setCreateBy(null);
payCompanyManagementTemporary.setCreateTime(null);
payCompanyManagementTemporary.setUpdateBy(null);
payCompanyManagementTemporary.setUpdateTime(null);
payCompanyManagementTemporary.setId(null);
payCompanyManagementTemporaryService.save(payCompanyManagementTemporary);
return payCompanyManagementTemporary;
@@ -48,6 +48,10 @@ public class PayContactsManagementTemporaryServiceImpl extends ServiceImpl<PayCo
}
PayContactsManagementTemporary payContactsManagementTemporary = JSON.parseObject(str,PayContactsManagementTemporary.class);
payContactsManagementTemporary.setId(null);
payContactsManagementTemporary.setCreateBy(null);
payContactsManagementTemporary.setCreateTime(null);
payContactsManagementTemporary.setUpdateBy(null);
payContactsManagementTemporary.setUpdateTime(null);
payContactsManagementTemporaryService.save(payContactsManagementTemporary);
return payContactsManagementTemporary;
}