zxl
2025-02-27 1fb4b09dcc8679beb8a3389197670c165ff9056b
business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
@@ -7,6 +7,7 @@
import cn.hutool.core.util.ZipUtil;
import com.alibaba.excel.EasyExcel;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -117,7 +118,7 @@
            entity.setUsedStatus(ProjectConstant.PASS);
        }
        if(!checkProjectNameAndIdIsUnique(entity,null)){
            return Result.error("项目名或项目码已存在");
            throw new RuntimeException("项目重复,项目名称、项目码已存在");
        }
        baseMapper.insert(entity);
        addPlan(entity.getId()); //添加计划表
@@ -142,14 +143,12 @@
     * @return
     */
    public boolean  checkProjectNameAndIdIsUnique(ProjectInfo entity,Long updateId){
        QueryWrapper<ProjectInfo> queryWrapper = new QueryWrapper<ProjectInfo>();
        LambdaQueryWrapper<ProjectInfo> queryWrapper = new LambdaQueryWrapper<>();
        if (updateId == null) {
            queryWrapper.eq("project_name", entity.getProjectName());
            queryWrapper.eq(ProjectInfo::getProjectName, entity.getProjectName());
            queryWrapper.eq(ProjectInfo::getDeleted,0);
            if (StringUtils.isNotEmpty(entity.getProjectCode())) {
                queryWrapper.or();
                queryWrapper.eq("project_code", entity.getProjectCode());
                queryWrapper.eq(ProjectInfo::getProjectCode, entity.getProjectCode());
            }
            List<ProjectInfo> project = projectInfoMapper.selectList(queryWrapper);
@@ -194,8 +193,12 @@
        if (ProjectConstant.COMMIT.equals(entity.getUsedStatus()) && ProjectStatusEnum.PENDDING.getType().equals(entity.getProjectStatus())) {
            entity.setUsedStatus(ProjectConstant.PASS);
        }
        // 管理员修改的直接通过
        if (SecurityUtils.isAdmin(SecurityUtils.getUserId())) {
            entity.setUsedStatus(ProjectConstant.PASS);
        }
        if(!checkProjectNameAndIdIsUnique(entity,form.getId())){
            return Result.error("项目名或项目码已存在");
            throw new RuntimeException("项目重复,项目名称、项目码已存在");
        }
        //更新项目信息
        baseMapper.updateById(entity);
@@ -808,19 +811,19 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Result editProject(ProjectForm form) {
        Long projectId = form.getProjectInfoForm().getId();
        if (ObjectUtil.isNotNull(form.getProjectInfoForm())) {
            if (ObjectUtil.isNull(form.getProjectInfoForm().getId())) {
                //新增
                return ((ProjectInfoServiceImpl) AopContext.currentProxy()).add(form.getProjectInfoForm());
                projectId = (Long) ((ProjectInfoServiceImpl) AopContext.currentProxy()).add(form.getProjectInfoForm()).get("data");
            } else {
                //更新
                return ((ProjectInfoServiceImpl) AopContext.currentProxy()).update(form.getProjectInfoForm());
                ((ProjectInfoServiceImpl) AopContext.currentProxy()).update(form.getProjectInfoForm());
            }
        }
        if (ObjectUtil.isNotNull(form.getProjectInvestmentInfoForm())) {
            if (ObjectUtil.isNull(form.getProjectInvestmentInfoForm().getId())) {
                form.getProjectInvestmentInfoForm().setProjectId(projectId);
                projectInvestmentInfoServiceImpl.add(form.getProjectInvestmentInfoForm());
            } else {
                projectInvestmentInfoServiceImpl.update(form.getProjectInvestmentInfoForm());
@@ -828,6 +831,7 @@
        }
        if (ObjectUtil.isNotNull(form.getProjectInvestmentFundingForm())) {
            if (ObjectUtil.isNull(form.getProjectInvestmentFundingForm().getId())) {
                form.getProjectInvestmentFundingForm().setProjectId(projectId);
                projectInvestmentFundingServiceImpl.add(form.getProjectInvestmentFundingForm());
            } else {
                projectInvestmentFundingServiceImpl.update(form.getProjectInvestmentFundingForm());
@@ -835,6 +839,7 @@
        }
        if (ObjectUtil.isNotNull(form.getProjectInvestmentPolicyComplianceForm())) {
            if (ObjectUtil.isNull(form.getProjectInvestmentPolicyComplianceForm().getId())) {
                form.getProjectInvestmentPolicyComplianceForm().setProjectId(projectId);
                projectInvestmentPolicyComplianceServiceImpl.add(form.getProjectInvestmentPolicyComplianceForm());
            } else {
                projectInvestmentPolicyComplianceServiceImpl.update(form.getProjectInvestmentPolicyComplianceForm());
@@ -842,6 +847,7 @@
        }
        if (ObjectUtil.isNotNull(form.getProjectUnitRegistrationInfoForm())) {
            if (ObjectUtil.isNull(form.getProjectUnitRegistrationInfoForm().getId())) {
                form.getProjectUnitRegistrationInfoForm().setProjectId(projectId);
                projectUnitRegistrationInfoServiceImpl.add(form.getProjectUnitRegistrationInfoForm());
            } else {
                projectUnitRegistrationInfoServiceImpl.update(form.getProjectUnitRegistrationInfoForm());