Browse Source

补充信息

sangwenwei 1 year ago
parent
commit
8778f82cd8

+ 9 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/controller/ProjectListController.java

@@ -261,6 +261,15 @@ public class ProjectListController {
         return ResponseEntity.ok (list);
     }
 
+    //获取当前登录人所有已归档的项目
+    @ApiOperation(value = "项目登记列表")
+    @GetMapping(value = "/allList")
+    public ResponseEntity<List<ProgramProjectListInfo>> allList(ProgramProjectListInfo info) throws Exception {
+        List<ProgramProjectListInfo> list = projectListService.allList(info, "1");
+        return ResponseEntity.ok (list);
+    }
+
+
     /**
      * 2022项目-项目登记列表
      * @param info

+ 68 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/domain/ProgramProjectListInfo.java

@@ -389,4 +389,72 @@ public class ProgramProjectListInfo extends BaseEntity {
     @TableField(exist = false)
     private String showInvoiceFlag;
 
+    /**
+     * 校验信息是否全部完成
+     */
+    @TableField(exist = false)
+    private Boolean isOver;
+
+    /**
+     * 评估报告日
+     */
+    @TableField(exist = false)
+    private Date evaluationReportDate;
+
+    /**
+     * 签字评估师1
+     */
+    @TableField(exist = false)
+    private String signatureEvaluatorFirst;
+
+    /**
+     * 签字评估师2
+     */
+    @TableField(exist = false)
+    private String signatureEvaluatorSecond;
+
+    /**
+     * 废旧物资评估(万元)
+     */
+    @TableField(exist = false)
+    private String waystEvaluation;
+
+    /**
+     * 固定资产评估(万元)
+     */
+    @TableField(exist = false)
+    private String fixedAssetsEvaluation;
+
+    /**
+     * 净资产评估
+     */
+    @TableField(exist = false)
+    private String netAssetsEvaluation;
+
+    /**
+     * 租金评估(万/年)
+     */
+    @TableField(exist = false)
+    private String rentEvaluation;
+
+    /**
+     * 报告收费(元)
+     */
+    @TableField(exist = false)
+    private String reportCharges;
+
+    /**
+     * 合同是否存档
+     */
+    @TableField(exist = false)
+    private String isContractArchive;
+
+    /**
+     * 底稿是否归档
+     */
+    @TableField(exist = false)
+    private String isPapersArchive;
+
+
+
 }

+ 2 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/mapper/ProjectListMapper.java

@@ -37,6 +37,8 @@ public interface ProjectListMapper extends BaseMapper<ProgramProjectListInfo> {
      * 项目登记列表,和上面findPageList接口是一样的,目的时跳过findPageList mapper接口的数据规则(比如仅部门可见、仅自己可见之类的)
      */
     IPage<ProgramProjectListInfo> findPageList2(Page<ProgramProjectListInfo> page, @Param(Constants.WRAPPER) QueryWrapper<ProgramProjectListInfo> wrapper);
+    //当前登陆人所有已归档的项目
+    List<ProgramProjectListInfo> findAllList(@Param(Constants.WRAPPER) QueryWrapper<ProgramProjectListInfo> wrapper);
 
     List<ProgramProjectListInfo> findInfoList(@Param(Constants.WRAPPER) QueryWrapper<ProgramProjectListInfo> wrapper);
 

+ 131 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/mapper/xml/ProjectListMapper.xml

@@ -116,6 +116,7 @@
            a.project_development,
            a.delegate_project_type,
            a.assessment_object,
+           a.assessment_range,
            a.work_begin_date,
            a.work_end_date,
            a.reporting_date,
@@ -138,6 +139,17 @@
            pa.status as archive_status,
            pa.id as archive_id,
            pa.proc_ins_id as procInsIdArchive,
+           pa.evaluation_report_date as evaluationReportDate,
+           pa.signature_evaluator_first,
+           pa.signature_evaluator_second,
+           pa.fixed_assets_evaluation,
+           pa.net_assets_evaluation,
+           pa.wayst_evaluation,
+           pa.rent_evaluation,
+           pa.report_charges,
+           pa.is_contract_archive,
+           pa.is_papers_archive,
+           pa.is_invoice,
            d.id AS issued_id,
            d.proc_ins_id AS procInsId4,
            ifnull(d.status,"0") as issued_status,
@@ -263,6 +275,125 @@
             ORDER BY a.create_time DESC
     </select>
 
+    <select id="findAllList" resultType="com.jeeplus.assess.program.configuration.projectList.domain.ProgramProjectListInfo">
+        SELECT
+        distinct
+           a.id,
+           b.name AS create_by_id,
+           a.create_by_id as create_by,
+           a.create_time,
+           a.update_by_id,
+           a.update_time,
+           a.del_flag,
+           a.contract_id,
+           a.contract_name,
+           a.client,
+           a.client_name,
+           a.amount,
+           a.contract_type,
+           a.name,
+           a.no,
+           a.project_type,
+           a.approval_no,
+           a.company,
+           a.project_mould,
+           a.property_holder,
+           a.property_holder_name,
+           a.location,
+           a.is_first,
+           a.year_num,
+           a.check_year,
+           a.project_manager,
+           c.name AS project_manager_name,
+           a.report_type,
+           a.industry,
+           a.enterprise_type,
+           a.risk_level,
+           a.project_source,
+           a.estimate,
+           a.plan_end_time,
+           a.use_num,
+           a.appointment,
+           a.work_hours,
+           a.remarks,
+           a.assessment_enterprise,
+           a.assessment_enterprise_name,
+           a.link_num,
+           a.relationship,
+           a.assessment_way,
+           a.assessment_objective,
+           a.assessment_date,
+           a.num,
+           a.project_development,
+           a.delegate_project_type,
+           a.assessment_object,
+           a.assessment_range,
+           a.work_begin_date,
+           a.work_end_date,
+           a.reporting_date,
+           a.is_have,
+           a.is_influence,
+           a.mode,
+           a.status,
+           a.proc_ins_id,
+           a.process_definition_id,
+           prn.report_no,
+           pa1.status as status1,
+           pa1.id as auditId1,
+           pa1.proc_ins_id as procInsId1,
+           pa2.status as status2,
+           pa2.id as auditId2,
+           pa2.proc_ins_id as procInsId2,
+           pa3.status as status3,
+           pa3.id as auditId3,
+           pa3.proc_ins_id as procInsId3,
+           pa.status as archive_status,
+           pa.id as archive_id,
+           pa.proc_ins_id as procInsIdArchive,
+           pa.evaluation_report_date as evaluationReportDate,
+           pa.signature_evaluator_first,
+           pa.signature_evaluator_second,
+           pa.fixed_assets_evaluation,
+           pa.net_assets_evaluation,
+           pa.wayst_evaluation,
+           pa.rent_evaluation,
+           pa.report_charges,
+           pa.is_contract_archive,
+           pa.is_papers_archive,
+           pa.is_invoice,
+           d.id AS issued_id,
+           d.proc_ins_id AS procInsId4,
+           ifnull(d.status,"0") as issued_status,
+           wci.no AS contract_no,
+           art.ID_ as task_id,
+           art1.ID_ as task_id_audit1,
+           art2.ID_ as task_id_audit2,
+           art3.ID_ as task_id_audit3,
+           artd.ID_ as task_id_issued,
+           art_archive.ID_ as task_id_archive
+        FROM
+            program_project_list_info a
+            LEFT JOIN sys_user b ON a.create_by_id = b.id
+            LEFT JOIN sys_user c ON a.project_manager = c.id
+            LEFT JOIN work_contract_info wci ON wci.id = a.contract_id and wci.del_flag = '0'
+            LEFT JOIN program_report_no prn ON prn.program_id = a.id and prn.del_flag = '0'
+            LEFT JOIN program_audit pa1 ON pa1.program_id = a.id and pa1.audit_level = '1' and pa1.del_flag = '0'
+            LEFT JOIN program_audit pa2 ON pa2.program_id = a.id and pa2.audit_level = '2' and pa2.del_flag = '0'
+            LEFT JOIN program_audit pa3 ON pa3.program_id = a.id and pa3.audit_level = '3' and pa3.del_flag = '0'
+            LEFT JOIN program_archive pa ON pa.program_id = a.id and pa.del_flag = '0'
+            left join program_members pm on a.id = pm.project_id
+            LEFT JOIN proofread_issued d ON a.id = d.project_id
+            LEFT JOIN act_ru_task art ON a.proc_ins_id = art.PROC_INST_ID_
+            LEFT JOIN act_ru_task art1 ON pa1.proc_ins_id = art1.PROC_INST_ID_
+            LEFT JOIN act_ru_task art2 ON pa2.proc_ins_id = art2.PROC_INST_ID_
+            LEFT JOIN act_ru_task art3 ON pa3.proc_ins_id = art3.PROC_INST_ID_
+            LEFT JOIN act_ru_task artd ON d.proc_ins_id = artd.PROC_INST_ID_
+            LEFT JOIN act_ru_task art_archive ON pa.proc_ins_id = art_archive.PROC_INST_ID_
+            ${ew.customSqlSegment}
+            ORDER BY a.create_time DESC
+    </select>
+
+
     <select id="findInfoList" resultType="com.jeeplus.assess.program.configuration.projectList.domain.ProgramProjectListInfo">
         SELECT
            a.id,

+ 257 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/service/ProjectListService.java

@@ -9,6 +9,7 @@ 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.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jeeplus.assess.program.configuration.projectList.domain.*;
 import com.jeeplus.assess.program.configuration.projectList.mapper.*;
@@ -751,6 +752,10 @@ public class ProjectListService {
         if (StringUtils.isNotBlank(info.getArchiveStatus())){
             wrapper.eq("pa.status", info.getArchiveStatus());
         }
+        if (StringUtils.isNotBlank(info.getReportNo())){
+            wrapper.like("prn.report_no",info.getReportNo());
+        }
+
         /*//获取当前登录人信息
         UserDTO userDTO = SpringUtil.getBean ( IUserApi.class ).getByToken(TokenProvider.getCurrentToken ( ));
         //获取当前登录人所属角色
@@ -812,6 +817,123 @@ public class ProjectListService {
                 }
             }
         });
+        for (ProgramProjectListInfo item : pageList.getRecords()) {
+            //判断项目是否归档
+            if (StringUtils.isNotBlank(item.getArchiveStatus()) &&(item.getArchiveStatus().equals("5")||item.getArchiveStatus().equals("7"))){
+                //校验必填信息是否全部完成
+                boolean isOver=true;
+                //校验年份
+                if (StringUtils.isBlank(item.getCheckYear())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //校验客户名称
+                if (StringUtils.isBlank(item.getClientName())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //项目名称
+                if (StringUtils.isBlank(item.getName())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //评估目的
+                if (StringUtils.isBlank(item.getAssessmentObjective())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //评估对象
+                if (StringUtils.isBlank(item.getAssessmentObject())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //评估范围
+                if (StringUtils.isBlank(item.getAssessmentRange())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //项目类型
+                if (StringUtils.isBlank(item.getDelegateProjectType())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //评估基准日
+                if (ObjectUtils.isEmpty(item.getAssessmentDate())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //评估报告日
+                if (ObjectUtils.isEmpty(item.getEvaluationReportDate())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //合同编号
+                if (StringUtils.isBlank(item.getContractNo())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //文号
+                if (StringUtils.isBlank(item.getReportNo())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //项目负责人
+                if (StringUtils.isBlank(item.getProjectManager())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //签字评估师1 签字评估师2
+                if (StringUtils.isBlank(item.getSignatureEvaluatorFirst()) || StringUtils.isBlank(item.getSignatureEvaluatorSecond())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //废旧物资评估(万元) 固定资产评估(万元) 净资产评估 租金评估(万/年)
+                if (StringUtils.isBlank(item.getWaystEvaluation()) && StringUtils.isBlank(item.getNetAssetsEvaluation()) && StringUtils.isBlank(item.getRentEvaluation()) && StringUtils.isBlank(item.getFixedAssetsEvaluation())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //报告收费
+                if (StringUtils.isBlank(item.getReportCharges())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //是否开票
+                if (StringUtils.isBlank(item.getIsInvoice())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //合同是否存档
+                if (StringUtils.isBlank(item.getIsContractArchive())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+                //底稿是否归档
+                if (StringUtils.isBlank(item.getIsPapersArchive())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    continue;
+                }
+            }
+
+
+        }
         return pageList;
     }
     /**
@@ -832,6 +954,141 @@ public class ProjectListService {
         return pageList;
     }
 
+    /**
+     * 获取当前登录人所有的项目信息
+     * @param
+     * @return
+     */
+    public List<ProgramProjectListInfo> allList(ProgramProjectListInfo info, String tabType) throws Exception{
+        UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getByToken(TokenProvider.getCurrentToken());
+        QueryWrapper<ProgramProjectListInfo> wrapper = QueryWrapperGenerator.buildQueryCondition(info, ProgramProjectListInfo.class);
+        wrapper.eq("a.del_flag", "0");
+        wrapper.eq("a.tab_type", tabType);
+        wrapper.in("pa.status",'5','7');
+        wrapper.eq("a.create_by_id",userDTO.getId());
+        List<ProgramProjectListInfo> pageList = projectListMapper.findAllList(wrapper);
+        for (ProgramProjectListInfo item : pageList) {
+            //判断项目是否归档
+            if (StringUtils.isNotBlank(item.getArchiveStatus()) &&(item.getArchiveStatus().equals("5")||item.getArchiveStatus().equals("7"))){
+                //校验必填信息是否全部完成
+                boolean isOver=true;
+                //校验年份
+                if (StringUtils.isBlank(item.getCheckYear())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //校验客户名称
+                if (StringUtils.isBlank(item.getClientName())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //项目名称
+                if (StringUtils.isBlank(item.getName())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //评估目的
+                if (StringUtils.isBlank(item.getAssessmentObjective())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //评估对象
+                if (StringUtils.isBlank(item.getAssessmentObject())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //评估范围
+                if (StringUtils.isBlank(item.getAssessmentRange())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //项目类型
+                if (StringUtils.isBlank(item.getDelegateProjectType())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //评估基准日
+                if (ObjectUtils.isEmpty(item.getAssessmentDate())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //评估报告日
+                if (ObjectUtils.isEmpty(item.getEvaluationReportDate())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //合同编号
+                if (StringUtils.isBlank(item.getContractNo())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //文号
+                if (StringUtils.isBlank(item.getReportNo())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //项目负责人
+                if (StringUtils.isBlank(item.getProjectManager())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //签字评估师1 签字评估师2
+                if (StringUtils.isBlank(item.getSignatureEvaluatorFirst()) || StringUtils.isBlank(item.getSignatureEvaluatorSecond())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //废旧物资评估(万元) 固定资产评估(万元) 净资产评估 租金评估(万/年)
+                if (StringUtils.isBlank(item.getWaystEvaluation()) && StringUtils.isBlank(item.getNetAssetsEvaluation()) && StringUtils.isBlank(item.getRentEvaluation()) && StringUtils.isBlank(item.getFixedAssetsEvaluation())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //报告收费
+                if (StringUtils.isBlank(item.getReportCharges())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //是否开票
+                if (StringUtils.isBlank(item.getIsInvoice())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //合同是否存档
+                if (StringUtils.isBlank(item.getIsContractArchive())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+                //底稿是否归档
+                if (StringUtils.isBlank(item.getIsPapersArchive())){
+                    isOver=false;
+                    item.setIsOver(isOver);
+                    break;
+                }
+            }
+
+
+        }
+        return pageList;
+    }
+
+
+
     public List<ExportFileDto> exportList(List<ProgramProjectListInfo> infoList){
         List<ExportFileDto> list = projectListMapper.findList(infoList);
         return list;