diff --git a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/controller/admin/extContract/ExtContractController.java b/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/controller/admin/extContract/ExtContractController.java index 41187d802..83de1c395 100644 --- a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/controller/admin/extContract/ExtContractController.java +++ b/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/controller/admin/extContract/ExtContractController.java @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.cms.controller.admin.extContract; import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractPageReqVO; import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractRespVO; import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractSaveReqVO; -import cn.iocoder.yudao.module.cms.service.extcontract.ExtContractService; +import cn.iocoder.yudao.module.cms.service.extContract.ExtContractService; import org.springframework.web.bind.annotation.*; import jakarta.annotation.Resource; import org.springframework.validation.annotation.Validated; diff --git a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/dal/mysql/extcontract/ExtContractMapper.java b/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/dal/mysql/extContract/ExtContractMapper.java similarity index 98% rename from yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/dal/mysql/extcontract/ExtContractMapper.java rename to yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/dal/mysql/extContract/ExtContractMapper.java index 5811556ef..d31fb793d 100644 --- a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/dal/mysql/extcontract/ExtContractMapper.java +++ b/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/dal/mysql/extContract/ExtContractMapper.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.cms.dal.mysql.extcontract; +package cn.iocoder.yudao.module.cms.dal.mysql.extContract; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; diff --git a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/contract/ContractServiceImpl.java b/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/contract/ContractServiceImpl.java index 3997bdad8..098f0b031 100644 --- a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/contract/ContractServiceImpl.java +++ b/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/contract/ContractServiceImpl.java @@ -1,7 +1,7 @@ package cn.iocoder.yudao.module.cms.service.contract; import cn.iocoder.yudao.module.cms.dal.mysql.contract.ContractMapper; -import cn.iocoder.yudao.module.cms.dal.mysql.extcontract.ExtContractMapper; +import cn.iocoder.yudao.module.cms.dal.mysql.extContract.ExtContractMapper; import cn.iocoder.yudao.module.pms.api.ProjectApi; import cn.iocoder.yudao.module.pms.api.project.dto.ProjectDetailRespDTO; import cn.iocoder.yudao.module.pms.api.project.dto.ProjectRespDTO; diff --git a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/extcontract/ExtContractService.java b/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/extcontract/ExtContractService.java deleted file mode 100644 index f457c5f6d..000000000 --- a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/extcontract/ExtContractService.java +++ /dev/null @@ -1,63 +0,0 @@ -package cn.iocoder.yudao.module.cms.service.extcontract; - - -import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractPageReqVO; -import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractRespVO; -import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractSaveReqVO; -import jakarta.validation.*; -import cn.iocoder.yudao.framework.common.pojo.PageResult; - -import java.math.BigDecimal; - -/** - * 外部合同 Service 接口 - * - * @author 管理员 - */ -public interface ExtContractService { - - /** - * 创建外部合同 - * - * @param createReqVO 创建信息 - * @return 编号 - */ - Long createExtContract(@Valid ExtContractSaveReqVO createReqVO); - - /** - * 更新外部合同 - * - * @param updateReqVO 更新信息 - */ - void updateExtContract(@Valid ExtContractSaveReqVO updateReqVO); - - /** - * 删除外部合同 - * - * @param id 编号 - */ - void deleteExtContract(Long id); - - /** - * 获得外部合同 - * - * @param id 编号 - * @return 外部合同 - */ - ExtContractRespVO getExtContract(Long id); - - /** - * 获得外部合同分页 - * - * @param pageReqVO 分页查询 - * @return 外部合同分页 - */ - PageResult getExtContractPage(ExtContractPageReqVO pageReqVO); - - /** - * 合同总金额 - * @param id - * @return - */ - BigDecimal getContractAmount(Long id); -} \ No newline at end of file diff --git a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/extcontract/ExtContractServiceImpl.java b/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/extcontract/ExtContractServiceImpl.java deleted file mode 100644 index 5035231a1..000000000 --- a/yudao-module-cms/yudao-module-cms-biz/src/main/java/cn/iocoder/yudao/module/cms/service/extcontract/ExtContractServiceImpl.java +++ /dev/null @@ -1,148 +0,0 @@ -package cn.iocoder.yudao.module.cms.service.extcontract; - -import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractPageReqVO; -import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractRespVO; -import cn.iocoder.yudao.module.cms.controller.admin.extContract.vo.ExtContractSaveReqVO; -import cn.iocoder.yudao.module.cms.dal.dataobject.customerCompany.CustomerCompanyDO; -import cn.iocoder.yudao.module.cms.dal.dataobject.extContract.ExtContractDO; -import cn.iocoder.yudao.module.cms.dal.mysql.customerCompany.CustomerCompanyMapper; -import cn.iocoder.yudao.module.cms.dal.mysql.extcontract.ExtContractMapper; -import cn.iocoder.yudao.module.pms.api.ProjectApi; -import cn.iocoder.yudao.module.pms.api.project.dto.ProjectDetailRespDTO; -import cn.iocoder.yudao.module.pms.api.project.dto.ProjectRespDTO; -import org.springframework.stereotype.Service; -import jakarta.annotation.Resource; -import org.springframework.validation.annotation.Validated; -import cn.iocoder.yudao.framework.common.pojo.PageResult; -import cn.iocoder.yudao.framework.common.util.object.BeanUtils; -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; -import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; -import static cn.iocoder.yudao.module.cms.enums.ErrorCodeConstants.EXT_CONTRACT_NOT_EXISTS; - -/** - * 外部合同 Service 实现类 - * - * @author 管理员 - */ -@Service -@Validated -public class ExtContractServiceImpl implements ExtContractService { - - @Resource - private ExtContractMapper extContractMapper; - - @Resource - private ProjectApi projectApi; - - @Resource - private CustomerCompanyMapper customerCompanyMapper; - - - @Override - public Long createExtContract(ExtContractSaveReqVO createReqVO) { - Long projectId = createReqVO.getProjectId(); - ExtContractDO extContract = BeanUtils.toBean(createReqVO, ExtContractDO.class); - if (projectId != null) { - updateExtContract(createReqVO); - } else { - // 插入 - extContractMapper.insert(extContract); - } - - return extContract.getId(); - } - - @Override - public void updateExtContract(ExtContractSaveReqVO updateReqVO) { - //校验 - Long id = updateReqVO.getId(); - validateExtContractExists(id); - // 更新 - ExtContractDO updateObj = BeanUtils.toBean(updateReqVO, ExtContractDO.class); - extContractMapper.updateById(updateObj); - } - - @Override - public void deleteExtContract(Long id) { - // 校验存在 - validateExtContractExists(id); - // 删除 - extContractMapper.deleteById(id); - } - - private void validateExtContractExists(Long id) { - if (extContractMapper.selectById(id) == null) { - throw exception(EXT_CONTRACT_NOT_EXISTS); - } - } - - // 需要联表查询 - // 1.项目编号 pms_project 直接 √ - // 2.主控部门(跟踪部门) pms_project找到的是id 需要联表 √ - // 3.项目经理 pms_project找到的是id 需要联表 √ - // 4.客户公司名称 pms_project 联表 √ - // 5.合同总金额 √ - // 6.合同商议提示(和分包提示不一样) - @Override - public ExtContractRespVO getExtContract(Long id) { - ExtContractDO extContractDO = extContractMapper.selectById(id); - Long projectId = extContractDO.getProjectId(); - Long customerCompanyId = extContractDO.getCustomerCompanyId(); - ExtContractRespVO extContractRespVO = BeanUtils.toBean(extContractDO, ExtContractRespVO.class); - - - ProjectRespDTO project = projectApi.getProject(projectId); - extContractRespVO.setCode(project.getCode()); - - - ProjectDetailRespDTO projectDetail = projectApi.getProjectDetailById(projectId); - extContractRespVO.setTrackingDep(projectDetail.getTrackingDepName()); - extContractRespVO.setProjectManager(projectDetail.getProjectManagerName()); - - //用客户公司id查询 - CustomerCompanyDO customerCompanyDO = customerCompanyMapper.selectById(customerCompanyId); - String name = customerCompanyDO.getName(); - extContractRespVO.setCustomerCompanyName(name); - - - //合同总金额 - BigDecimal contractAmount = getContractAmount(id); - extContractRespVO.setAmount(contractAmount); - - - return extContractRespVO; - } - - @Override - public PageResult getExtContractPage(ExtContractPageReqVO pageReqVO) { - - PageResult extContractDOPageResult = extContractMapper.selectPage(pageReqVO); - List excontractDOList = extContractDOPageResult.getList(); - List extContractRespVOList = new ArrayList<>(); - - - for (ExtContractDO extContractDO : excontractDOList) { - Long id = extContractDO.getId(); - ExtContractRespVO extContractRespVO = getExtContract(id); - extContractRespVOList.add(extContractRespVO); - } - PageResult pageResult = new PageResult<>(); - pageResult.setList(extContractRespVOList); - return pageResult; - } - - @Override - public BigDecimal getContractAmount(Long id) { - //前期+设计+地勘+其他+检测 - ExtContractDO extContract = extContractMapper.selectById(id); - BigDecimal preAmount = new BigDecimal(String.valueOf(extContract.getPreAmount())); - BigDecimal designFee = new BigDecimal(String.valueOf(extContract.getDesignFee())); - BigDecimal surveyFees = new BigDecimal(String.valueOf(extContract.getSurveyFees())); - BigDecimal testingFee = new BigDecimal(String.valueOf(extContract.getTestingFee())); - BigDecimal other = new BigDecimal(extContract.getOtherFee()); - return preAmount.add(designFee).add(surveyFees).add(testingFee).add(other); - } - -} \ No newline at end of file