收入合同添加校验

This commit is contained in:
梁琦涛
2021-09-08 15:20:27 +08:00
parent 1007a43357
commit 05f9858c40
15 changed files with 316 additions and 21 deletions
@@ -20,6 +20,7 @@ import com.jero.contract.entity.PayIncomeContract;
import com.jero.contract.entity.PayIncomeContractAssociated;
import com.jero.contract.entity.PayIncomeContractAudit;
import com.jero.contract.entity.PayIncomeContractInstallment;
import com.jero.contract.service.IPayIncomeContractAssociatedService;
import com.jero.contract.service.IPayIncomeContractAuditService;
import com.jero.contract.service.IPayIncomeContractInstallmentService;
import com.jero.contract.service.IPayIncomeContractService;
@@ -64,6 +65,9 @@ public class PayIncomeContractController extends JeroController<PayIncomeContrac
private Environment env;
@Autowired
private ISysBaseAPI sysBaseAPI;
@Autowired
private IPayIncomeContractAssociatedService payIncomeContractAssociatedService;
// todo 缺少定时任务验证分期信息发送短信
/**
@@ -116,6 +120,83 @@ public class PayIncomeContractController extends JeroController<PayIncomeContrac
PayIncomeContract payIncomeContract = payIncomeContractService.addPayIncomeContractInput(input);
return Result.OK("添加成功!",payIncomeContract);
}
/**
* 验证合同编号是否存在
*
* @param contractNum 合同编号
* @return
*/
@ApiOperation(value="收入合同-验证合同编号是否存在", notes="收入合同-验证合同编号是否存在")
@GetMapping(value = "/getContractNum")
public Result<?> getContractNum(@RequestParam(name="contractNum") String contractNum) {
if(StringUtils.isBlank(contractNum)){
return Result.error("合同编号不能为空!");
}
try {
LambdaQueryWrapper<PayIncomeContract> query = new LambdaQueryWrapper<>();
query.eq(PayIncomeContract::getContractNum,contractNum);
PayIncomeContract payIncomeContract = payIncomeContractService.getOne(query);
if(!Objects.isNull(payIncomeContract)){
return Result.OK("合同编号存在!");
}
}catch (Exception e){
log.error("普通项目管理-验证合同编号是否存在异常",e);
return Result.OK("合同编号存在!");
}
return Result.error("合同编号不存在!");
}
/**
* 验证合同名称是否存在
*
* @param contractName 合同名称
* @return
*/
@ApiOperation(value="收入合同-验证合同名称是否存在", notes="收入合同-验证合同名称是否存在")
@GetMapping(value = "/getContractName")
public Result<?> getContractName(@RequestParam(name="contractName") String contractName) {
if(StringUtils.isBlank(contractName)){
return Result.error("合同名称不能为空!");
}
try {
LambdaQueryWrapper<PayIncomeContract> query = new LambdaQueryWrapper<>();
query.eq(PayIncomeContract::getContractName,contractName);
PayIncomeContract payIncomeContract = payIncomeContractService.getOne(query);
if(!Objects.isNull(payIncomeContract)){
return Result.OK("合同名称存在!");
}
}catch (Exception e){
log.error("普通项目管理-验证合同编号是否存在异常",e);
return Result.OK("合同名称存在!");
}
return Result.error("合同名称不存在!");
}
/**
* 通过id查询该项目是否关联了合同
*
* @param id 普通项目管理id
* @return
*/
@ApiOperation(value="收入合同-通过id查询该项目是否关联了合同", notes="收入合同-通过id查询该项目是否关联了合同")
@GetMapping(value = "/getContractById")
public Result<?> getContractById(@RequestParam(name="id") String id) {
if(StringUtils.isBlank(id)){
return Result.error("id不能为空!");
}
try {
LambdaQueryWrapper<PayIncomeContractAssociated> query = new LambdaQueryWrapper<>();
query.eq(PayIncomeContractAssociated::getProjectId,id);
PayIncomeContractAssociated payIncomeContractAssociated = payIncomeContractAssociatedService.getOne(query);
if(Objects.isNull(payIncomeContractAssociated)){
return Result.OK("可以操作!");
}
}catch (Exception e){
log.error("普通项目管理-通过id查询该项目是否关联了合同异常",e);
return Result.error("已关联合同不可操作!");
}
return Result.error("已关联合同不可操作!");
}
/**
* 编辑
@@ -143,8 +224,8 @@ public class PayIncomeContractController extends JeroController<PayIncomeContrac
List<ProjectOutput> list = payIncomeContractService.getAssociated(contractId);
if(!CollectionUtils.isEmpty(list)){
list.forEach(p->{
if(!StringUtils.isBlank(p.getChargeUse())){
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",p.getChargeUse()));
if(!Objects.isNull(p.getChargeUse())){
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",String.valueOf(p.getChargeUse())));
}
});
}
@@ -318,8 +399,8 @@ public class PayIncomeContractController extends JeroController<PayIncomeContrac
}
if(!CollectionUtils.isEmpty(listProject)){
listProject.forEach(p->{
if(!StringUtils.isBlank(p.getChargeUse())){
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",p.getChargeUse()));
if(!Objects.isNull(p.getChargeUse())){
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",String.valueOf(p.getChargeUse())));
}
});
payIncomeContractDetailOutput.setListProject(listProject);
@@ -107,7 +107,7 @@
pwgs.id AS projectId,
'2' AS projectType,
pwg.working_group_project AS chargeProject,
'' AS chargeUse,
pwgs.charge_use AS chargeUse,
pwgs.charge_company_temporary_name AS chargeCompanyName,
pwgs.receivable_amount AS receivableAmount,
pwgs.paid_amount AS paidAmount,
@@ -122,4 +122,13 @@ public interface IPayIncomeContractService extends IService<PayIncomeContract> {
* @Exception
*/
void deletePayIncomeContractInputByIds(List<String> ids);
/**
* @Description 校验合同编号是否存在
* @Author lqt
* @Date 2021/9/8
* @Param contractNum 合同编号
* @Return
* @Exception
*/
void checkContractNum(String contractNum);
}
@@ -269,6 +269,9 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
updatePayCommonProject.eq(PayCommonProject::getId,p.getProjectId());
if(!StringUtils.isBlank(payCommonProject.getContractNum())){
updatePayCommonProject.set(PayCommonProject::getContractNum,payIncomeContract.getContractNum());
}
updatePayCommonProject.set(PayCommonProject::getPack,PayIncomeContractCommon.PACK1);
updatePayCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername());
updatePayCommonProject.set(PayCommonProject::getUpdateTime,new Date());
@@ -309,6 +312,9 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
LambdaUpdateWrapper<PayWorkingGroupSubItem> updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>();
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateBy,sysUser.getUsername());
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateTime,new Date());
if(!StringUtils.isBlank(listPayWorkingGroupSubItem.get(0).getContractNum())){
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getContractNum,payIncomeContract.getContractNum());
}
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getPack,PayIncomeContractCommon.PACK1);
updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,listPayWorkingGroupSubItem.get(0).getId());
payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem);
@@ -600,4 +606,18 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
updatePayIncomeContractAudit.in(PayIncomeContractAudit::getContractId,ids);
payIncomeContractAuditService.remove(updatePayIncomeContractAudit);
}
@Override
public void checkContractNum(String contractNum) {
if(StringUtils.isBlank(contractNum)){
throw new JeroBootException("合同编号不能为空!");
}else{
LambdaQueryWrapper<PayIncomeContract> query = new LambdaQueryWrapper<>();
query.eq(PayIncomeContract::getContractNum,contractNum);
List<PayIncomeContract> payIncomeContract = payIncomeContractService.list(query);
if(CollectionUtils.isEmpty(payIncomeContract)){
throw new JeroBootException("合同编号不存在!");
}
}
}
}
@@ -39,7 +39,7 @@ public class ProjectOutput implements Serializable {
* 来款用途
*/
@ApiModelProperty(value = "来款用途")
private String chargeUse;
private Integer chargeUse;
/**
* 来款用途
*/