mirror of
https://gitee.com/hhyykk/ipms-sjy.git
synced 2025-03-13 06:39:08 +08:00
[fix] 修复合同管理模块,增加校验
This commit is contained in:
parent
171c0cc018
commit
47adca8394
@ -31,5 +31,9 @@ public interface ErrorCodeConstants {
|
|||||||
// ========== 外包合同关联 2_023_000_000 ==========
|
// ========== 外包合同关联 2_023_000_000 ==========
|
||||||
ErrorCode CONTRACT_OUTS_NOT_EXISTS = new ErrorCode(2_023_000_000, "外包合同关联不存在");
|
ErrorCode CONTRACT_OUTS_NOT_EXISTS = new ErrorCode(2_023_000_000, "外包合同关联不存在");
|
||||||
|
|
||||||
|
ErrorCode PROJECT_NOT_EXISTS = new ErrorCode(1_021_000_000, "项目信息不存在");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
package cn.iocoder.yudao.module.cms.controller.admin.contract.vo;
|
package cn.iocoder.yudao.module.cms.controller.admin.contract.vo;
|
||||||
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import jakarta.validation.constraints.*;
|
import jakarta.validation.constraints.*;
|
||||||
@ -12,9 +13,37 @@ public class ContractSaveReqVO {
|
|||||||
@Schema(description = "合同编号", requiredMode = Schema.RequiredMode.REQUIRED)
|
@Schema(description = "合同编号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
@Schema(description = "项目编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "123456")
|
@Schema(description = "项目id", requiredMode = Schema.RequiredMode.REQUIRED, example = "123456")
|
||||||
private Long projectId;
|
private Long projectId;
|
||||||
|
|
||||||
|
@Schema(description = "项目编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "SJ24001")
|
||||||
|
@ExcelProperty("项目编号")
|
||||||
|
private String code;
|
||||||
|
|
||||||
|
@Schema(description = "主控部门", requiredMode = Schema.RequiredMode.REQUIRED, example = "生产一部")
|
||||||
|
@ExcelProperty("主控部门")
|
||||||
|
private String trackingDep;
|
||||||
|
|
||||||
|
@Schema(description = "项目经理", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
|
@ExcelProperty("项目经理")
|
||||||
|
private String projectManager;
|
||||||
|
|
||||||
|
@Schema(description = "分包合同提示时间")
|
||||||
|
@ExcelProperty("分包合同提示时间")
|
||||||
|
private LocalDateTime ReminderTime;
|
||||||
|
|
||||||
|
@Schema(description = "暂定结算数")
|
||||||
|
@ExcelProperty("暂定结算数")
|
||||||
|
private BigDecimal provisionalSettlement;
|
||||||
|
|
||||||
|
@Schema(description = "出图公司", requiredMode = Schema.RequiredMode.REQUIRED,example = "***设计院")
|
||||||
|
@ExcelProperty("出图公司")
|
||||||
|
private String drawingCompany;
|
||||||
|
|
||||||
|
@Schema(description = "预计合同金额", requiredMode = Schema.RequiredMode.REQUIRED,example = "200.0000")
|
||||||
|
@ExcelProperty("预计合同金额")
|
||||||
|
private BigDecimal expectedContractAmount;
|
||||||
|
|
||||||
@Schema(description = "合同名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
|
@Schema(description = "合同名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
|
||||||
@NotEmpty(message = "合同名称不能为空")
|
@NotEmpty(message = "合同名称不能为空")
|
||||||
private String name;
|
private String name;
|
||||||
|
@ -45,15 +45,28 @@ public class ContractServiceImpl implements ContractService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Long createContract(ContractSaveReqVO createReqVO) {
|
public Long createContract(ContractSaveReqVO createReqVO) {
|
||||||
// 插入
|
|
||||||
ContractDO contract = BeanUtils.toBean(createReqVO, ContractDO.class);
|
ContractDO contract = BeanUtils.toBean(createReqVO, ContractDO.class);
|
||||||
|
Long projectId = createReqVO.getProjectId();
|
||||||
|
if (projectId != null) {
|
||||||
|
//进行更新
|
||||||
|
updateContract(createReqVO);
|
||||||
|
}else{
|
||||||
|
//插入
|
||||||
contractMapper.insert(contract);
|
contractMapper.insert(contract);
|
||||||
|
}
|
||||||
|
|
||||||
// 返回
|
// 返回
|
||||||
return contract.getId();
|
return contract.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateContract(ContractSaveReqVO updateReqVO) {
|
public void updateContract(ContractSaveReqVO updateReqVO) {
|
||||||
|
Long id = updateReqVO.getId();
|
||||||
|
validateContractExists(id);
|
||||||
|
Long projectId = updateReqVO.getProjectId();
|
||||||
|
if (projectId == null){
|
||||||
|
throw exception(CONTRACT_NOT_EXISTS);
|
||||||
|
}
|
||||||
// 更新
|
// 更新
|
||||||
ContractDO updateObj = BeanUtils.toBean(updateReqVO, ContractDO.class);
|
ContractDO updateObj = BeanUtils.toBean(updateReqVO, ContractDO.class);
|
||||||
contractMapper.updateById(updateObj);
|
contractMapper.updateById(updateObj);
|
||||||
@ -67,17 +80,16 @@ public class ContractServiceImpl implements ContractService {
|
|||||||
contractMapper.deleteById(id);
|
contractMapper.deleteById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void validateContractExists(Long projectId) {
|
|
||||||
if (contractMapper.selectById(projectId) == null) {
|
|
||||||
throw exception(CONTRACT_NOT_EXISTS);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ContractRespVO getContract(Long id) {
|
public ContractRespVO getContract(Long id) {
|
||||||
|
|
||||||
ContractDO contractDO = contractMapper.selectById(id);
|
ContractDO contractDO = contractMapper.selectById(id);
|
||||||
Long projectId = contractDO.getProjectId();
|
Long projectId = contractDO.getProjectId();
|
||||||
|
//校验
|
||||||
|
if (projectId == null){
|
||||||
|
throw exception(PROJECT_NOT_EXISTS);
|
||||||
|
}
|
||||||
ContractRespVO contractRespVO = BeanUtils.toBean(contractDO, ContractRespVO.class);
|
ContractRespVO contractRespVO = BeanUtils.toBean(contractDO, ContractRespVO.class);
|
||||||
|
|
||||||
// 需要联表查询
|
// 需要联表查询
|
||||||
@ -144,4 +156,11 @@ public class ContractServiceImpl implements ContractService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void validateContractExists(Long projectId) {
|
||||||
|
if (contractMapper.selectById(projectId) == null) {
|
||||||
|
throw exception(CONTRACT_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user