企业管理变更
This commit is contained in:
+41
-42
@@ -27,7 +27,6 @@ import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.project.common.PayProjectCommon;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import com.jero.project.entity.PayWorkingGroup;
|
||||
import com.jero.project.entity.PayWorkingGroupSubItem;
|
||||
@@ -143,25 +142,10 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
setPayIncomeContract(payIncomeContract);
|
||||
payIncomeContract.setStatus(PayIncomeContractCommon.STATUS1);
|
||||
payIncomeContractService.save(payIncomeContract);
|
||||
StringBuilder msgPayIncomeContractInstallment = new StringBuilder();
|
||||
if(!CollectionUtils.isEmpty(listPayIncomeContractInstallment)){
|
||||
List<PayIncomeContractInstallment> finalListPayIncomeContractInstallment = listPayIncomeContractInstallment;
|
||||
listPayIncomeContractInstallment.forEach(p->{
|
||||
p.setContractId(payIncomeContract.getId());
|
||||
StringBuilder sb = ValidUtil.validateAll(p);
|
||||
if(!StringUtils.isBlank(sb)){
|
||||
msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("阶段:").append(sb);
|
||||
}
|
||||
if(!Objects.isNull(p.getAccountsReceivableAmount()) && !Objects.isNull(p.getPaidAmount())
|
||||
&& p.getAccountsReceivableAmount().compareTo(p.getPaidAmount()) == -1){
|
||||
msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("期应收金额大于已收金额!");
|
||||
}
|
||||
});
|
||||
payIncomeContractInstallmentService.saveBatch(listPayIncomeContractInstallment);
|
||||
}
|
||||
if(!StringUtils.isBlank(msgPayIncomeContractInstallment)){
|
||||
throw new JeroBootException(msgPayIncomeContractInstallment.toString());
|
||||
}
|
||||
|
||||
// 校验金额
|
||||
checkPayIncomeContractInstallment(listPayIncomeContractInstallment,payIncomeContract);
|
||||
|
||||
// 选择了打包,创建打包企业
|
||||
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
|
||||
LambdaQueryWrapper<PayPackCompany> queryPayPackCompany = new LambdaQueryWrapper<>();
|
||||
@@ -187,6 +171,28 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
return payIncomeContractMapper.getAssociated(contractId);
|
||||
}
|
||||
|
||||
private void checkPayIncomeContractInstallment(List<PayIncomeContractInstallment> listPayIncomeContractInstallment,PayIncomeContract payIncomeContract){
|
||||
if(!CollectionUtils.isEmpty(listPayIncomeContractInstallment)){
|
||||
StringBuilder msgPayIncomeContractInstallment = new StringBuilder();
|
||||
List<PayIncomeContractInstallment> finalListPayIncomeContractInstallment = listPayIncomeContractInstallment;
|
||||
listPayIncomeContractInstallment.forEach(p->{
|
||||
p.setContractId(payIncomeContract.getId());
|
||||
StringBuilder sb = ValidUtil.validateAll(p);
|
||||
if(!StringUtils.isBlank(sb)){
|
||||
msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("阶段:").append(sb);
|
||||
}
|
||||
if(!Objects.isNull(p.getAccountsReceivableAmount()) && !Objects.isNull(p.getPaidAmount())
|
||||
&& p.getAccountsReceivableAmount().compareTo(p.getPaidAmount()) == -1){
|
||||
msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("期应收金额大于已收金额!");
|
||||
}
|
||||
});
|
||||
if(!StringUtils.isBlank(msgPayIncomeContractInstallment)){
|
||||
throw new JeroBootException(msgPayIncomeContractInstallment.toString());
|
||||
}
|
||||
payIncomeContractInstallmentService.saveBatch(listPayIncomeContractInstallment);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void editPayIncomeContractInput(PayIncomeContractInput input) {
|
||||
@@ -212,6 +218,15 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
if(Objects.isNull(payIncomeContractStatus)){
|
||||
throw new JeroBootException("收入合同不存在!");
|
||||
}
|
||||
// 项目已打包
|
||||
if(payIncomeContractStatus.getPack() == PayIncomeContractCommon.PACK1){
|
||||
if(payIncomeContract.getPack() != PayIncomeContractCommon.PACK1){
|
||||
throw new JeroBootException("打包状态不可更改!");
|
||||
}
|
||||
if(payIncomeContract.getPackYear() != payIncomeContractStatus.getPackYear()){
|
||||
throw new JeroBootException("打包年份不可更改!");
|
||||
}
|
||||
}
|
||||
if(!Objects.equals(payIncomeContractStatus.getStatus(),PayIncomeContractCommon.STATUS1)
|
||||
&& !Objects.equals(payIncomeContractStatus.getStatus(),PayIncomeContractCommon.STATUS4)){
|
||||
throw new JeroBootException("收入合同不可编辑!");
|
||||
@@ -242,7 +257,6 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
log.info("收入合同-添加异常",e);
|
||||
throw new JeroBootException("合同名称已存在!");
|
||||
}
|
||||
StringBuilder msgPayIncomeContractInstallment = new StringBuilder();
|
||||
// 删除历史
|
||||
LambdaQueryWrapper<PayIncomeContractInstallment> queryPayIncomeContractInstallment = new LambdaQueryWrapper<>();
|
||||
queryPayIncomeContractInstallment.eq(PayIncomeContractInstallment::getContractId,payIncomeContract.getId());
|
||||
@@ -251,25 +265,8 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
List<String> list = listPayIncomeContractInstallmentOld.stream().map(PayIncomeContractInstallment::getId).collect(Collectors.toList());
|
||||
payIncomeContractInstallmentService.removeByIds(list);
|
||||
}
|
||||
// 新增
|
||||
if(!CollectionUtils.isEmpty(listPayIncomeContractInstallment)){
|
||||
List<PayIncomeContractInstallment> finalListPayIncomeContractInstallment = listPayIncomeContractInstallment;
|
||||
listPayIncomeContractInstallment.forEach(p->{
|
||||
p.setContractId(payIncomeContract.getId());
|
||||
StringBuilder sb = ValidUtil.validateAll(p);
|
||||
if(!StringUtils.isBlank(sb)){
|
||||
msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("阶段:").append(sb);
|
||||
}
|
||||
if(!Objects.isNull(p.getAccountsReceivableAmount()) && !Objects.isNull(p.getPaidAmount())
|
||||
&& p.getAccountsReceivableAmount().compareTo(p.getPaidAmount()) == -1){
|
||||
msgPayIncomeContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p) + 1).append("期应收金额大于已收金额!");
|
||||
}
|
||||
});
|
||||
payIncomeContractInstallmentService.saveBatch(listPayIncomeContractInstallment);
|
||||
}
|
||||
if(!StringUtils.isBlank(msgPayIncomeContractInstallment)){
|
||||
throw new JeroBootException(msgPayIncomeContractInstallment.toString());
|
||||
}
|
||||
// 校验金额
|
||||
checkPayIncomeContractInstallment(listPayIncomeContractInstallment,payIncomeContract);
|
||||
setPayIncomeContract(payIncomeContract);
|
||||
payIncomeContractService.updateById(payIncomeContract);
|
||||
}
|
||||
@@ -383,8 +380,10 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
projectOutput.setReceivableAmount(listPayWorkingGroupSubItem.get(0).getReceivableAmount());
|
||||
break;
|
||||
case PayIncomeContractCommon.PROJECT_TYPE3:
|
||||
|
||||
|
||||
// 打包合同不可选择会议项目
|
||||
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
|
||||
throw new JeroBootException("打包合同不可关联会议项目!");
|
||||
}
|
||||
|
||||
// todo 会议项目
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user