ソースを参照

财务-bug修改

wangqiang 2 年 前
コミット
d73f542308
14 ファイル変更144 行追加52 行削除
  1. 9 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/controller/ContractInfoController.java
  2. 2 2
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/domain/ContractFile.java
  3. 2 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/domain/ContractInfo.java
  4. 5 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/mapper/ContractFileMapper.java
  5. 10 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/mapper/ContractInfoMapper.java
  6. 3 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/mapper/xml/ContractFileMapper.xml
  7. 7 1
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/mapper/xml/ContractInfoMapper.xml
  8. 18 13
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/service/ContractFileService.java
  9. 14 2
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/service/ContractInfoService.java
  10. 5 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/domain/CwProjectInfoData.java
  11. 7 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/mapper/CwProjectInfoMapper.java
  12. 3 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/mapper/xml/CwProjectInfoMapper.xml
  13. 0 2
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/service/CwProjectReportService.java
  14. 59 32
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/reportCancellApply/service/ReportCancellApplyService.java

+ 9 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/controller/ContractInfoController.java

@@ -88,4 +88,13 @@ public class ContractInfoController {
     public void updateStatusById(@RequestBody ContractInfo info) {
         service.updateStatusById(info);
     }
+
+    /**
+     * 根据id修改合同实际金额
+     */
+    @ApiOperation(value = "根据id修改合同实际金额")
+    @PostMapping(value = "updateInfo")
+    public void updateInfo(@RequestBody ContractInfo info) {
+        service.updateInfo(info);
+    }
 }

+ 2 - 2
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/domain/ContractFile.java

@@ -66,13 +66,13 @@ public class ContractFile extends BaseEntity {
     private String customerNo;
 
     /**
-     * 附件信息
+     * 合同正文附件信息
      */
     @TableField(exist = false)
     private List<WorkAttachmentDto> contractProperList;
 
     /**
-     * 附件信息
+     * 归档附件信息
      */
     @TableField(exist = false)
     private List<WorkAttachmentDto> contractInfoList;

+ 2 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/domain/ContractInfo.java

@@ -91,4 +91,6 @@ public class ContractInfo extends BaseEntity {
     @TableField(exist = false)
     private List<CwWorkClientBaseDTO> cwWorkClientContactDTOList;
 
+    @TableField(exist = false)
+    private String departmentName;
 }

+ 5 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/mapper/ContractFileMapper.java

@@ -28,4 +28,9 @@ public interface ContractFileMapper extends BaseMapper<ContractFile> {
     List<WorkAttachment> findList(@Param("id") String id);
 
     Integer findIsExit(@Param("id") String id, @Param("name")String name);
+
+    /**
+     * 根据attachmentId删除上传文件信息
+     */
+    void deleteFileInfo(String attachmentId);
 }

+ 10 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/mapper/ContractInfoMapper.java

@@ -39,4 +39,14 @@ public interface ContractInfoMapper extends BaseMapper<ContractInfo> {
     List<WorkAttachment> findList(@Param("id") String id);
 
     Integer findIsExit(@Param("id") String id, @Param("name")String name);
+
+    /**
+     * 修改合同实际金额
+     * @param id
+     * @param actualContractAmount
+     * @param contractApprovalType
+     */
+    void updateInfo(@Param("id") String id,
+                    @Param("actualContractAmount") Double actualContractAmount,
+                    @Param("contractApprovalType") String contractApprovalType);
 }

+ 3 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/mapper/xml/ContractFileMapper.xml

@@ -9,6 +9,9 @@
 <!--        </if>-->
         WHERE del_flag = 0 AND contract_info_id = #{id}
     </update>
+    <delete id="deleteFileInfo">
+        delete from work_attachment where attachment_id = #{attachmentId}
+    </delete>
     <select id="selectFileByContractInfoId"
             resultType="com.jeeplus.test.cw.contractRegistration.domain.ContractFile">
         SELECT * FROM `cw_work_contract_file` WHERE del_flag = 0 AND contract_info_id = #{id}

+ 7 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/mapper/xml/ContractInfoMapper.xml

@@ -8,6 +8,10 @@
     <update id="updatefiledTypeById">
         UPDATE cw_work_contract_info SET `filed_type` = #{status} WHERE del_flag = 0 AND id = #{id}
     </update>
+    <update id="updateInfo">
+        UPDATE cw_work_contract_info SET actual_contract_amount = #{actualContractAmount}
+        ,contract_approval_type = #{contractApprovalType} where del_flag = 0 AND id = #{id}
+    </update>
 
     <select id="findPageList" resultType="com.jeeplus.test.cw.contractRegistration.domain.ContractInfo">
         SELECT
@@ -37,12 +41,14 @@
             a.status,
             b.filed_type as filedType,
             e.ID_ as taskFiledId,
-            b.proc_ins_id as taskFiledProcInsId
+            b.proc_ins_id as taskFiledProcInsId,
+            d.name as departmentName
 		FROM
 			cw_work_contract_info a
             LEFT JOIN cw_work_contract_file b on a.id = b.contract_info_id
             LEFT JOIN sys_user c ON a.create_by = c.id
             LEFT JOIN act_ru_task e ON b.proc_ins_id = e.PROC_INST_ID_
+            LEFT JOIN sys_office d on a.department = d.id
 		${ew.customSqlSegment}
 		ORDER BY a.update_date DESC
     </select>

+ 18 - 13
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/service/ContractFileService.java

@@ -48,16 +48,18 @@ public class ContractFileService {
     }
 
     public String saveInfo(ContractFile contractFile) throws Exception {
-        if (StringUtils.isNotEmpty(contractFile.getId())) {
-            ContractFile info = mapper.selectFileByContractInfoId(contractFile.getId());
-            if (info != null) {
-                contractFile.setFileCreateName(contractFile.getCreateBy());
-                contractFile.setCreateBy(contractFile.getCreateId());
-                infoMapper.updatefiledTypeById(contractFile.getContractInfoId(),contractFile.getFiledType());
-                return update(contractFile, info.getId());
-            }
+//        if (StringUtils.isNotEmpty(contractFile.getId())) {
+//
+//        }
+        ContractFile info = mapper.selectFileByContractInfoId(contractFile.getId());
+        if (null != info) {
+            contractFile.setFileCreateName(contractFile.getCreateBy());
+            contractFile.setCreateBy(contractFile.getCreateId());
+            infoMapper.updatefiledTypeById(contractFile.getContractInfoId(),contractFile.getFiledType());
+            return update(contractFile, info.getId());
+        }else {
+            return add(contractFile);
         }
-        return add(contractFile);
     }
 
     /**
@@ -98,7 +100,10 @@ public class ContractFileService {
         mapper.updateById(file);
         List<WorkAttachmentDto> list = contractFile.getContractInfoList();
         if (CollectionUtils.isNotEmpty(list)) {
-            updateFiles(list, userDTO, contractFile.getId());
+            updateFiles(list, userDTO, file.getId());
+        }else {
+            //删除文件信息
+            mapper.deleteFileInfo(file.getId());
         }
         return file.getId();
     }
@@ -109,7 +114,7 @@ public class ContractFileService {
             dto = mapper.findByInfoId(id);
         }
         if (dto != null){
-            // 查询附件信息
+            // 查询归档附件信息
             List<WorkAttachmentDto> dtos = mapper.findDtos(dto.getFileId());
             List<WorkAttachmentDto> contractInfoList = mapper.findDtos(dto.getContractInfoId());
 
@@ -117,13 +122,13 @@ public class ContractFileService {
                 for (WorkAttachmentDto i : dtos) {
                     i.setCreateBy(UserUtils.get(i.getBy()));
                 }
-                dto.setContractProperList(dtos);
+                dto.setContractInfoList(dtos);
             }
             if (CollectionUtils.isNotEmpty(contractInfoList)){
                 for (WorkAttachmentDto i : contractInfoList){
                     i.setCreateBy(UserUtils.get(i.getBy()));
                 }
-                dto.setContractInfoList(contractInfoList);
+                dto.setContractProperList(contractInfoList);
             }
 
         }

+ 14 - 2
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/contractRegistration/service/ContractInfoService.java

@@ -55,6 +55,12 @@ public class ContractInfoService {
     public void updateStatusById(ContractInfo info) {
         mapper.updateStatusById(info.getId(), info.getStatus());
     }
+    /**
+     * 根据id修改合同实际金额
+     */
+    public void updateInfo(ContractInfo info) {
+        mapper.updateInfo(info.getId(), info.getActualContractAmount(),info.getContractApprovalType());
+    }
 
     public IPage<ContractInfo> list(Page<ContractInfo> page, ContractInfo info, QueryWrapper<ContractInfo> wrapper) {
 //        LambdaQueryWrapper<ContractInfo> wrapper = new LambdaQueryWrapper<>();
@@ -204,8 +210,14 @@ public class ContractInfoService {
 //        info.setNo(serialNum);
         contractInfo.setUpdateBy(userDTO.getId());
         contractInfo.setUpdateDate(new Date());
-        int num = Integer.parseInt(contractInfo.getChangeNum()) + 1;
-        contractInfo.setChangeNum(num + "");
+        if (!contractInfo.getStatus().equals("5")){
+            int num = Integer.parseInt(contractInfo.getChangeNum()) + 1;
+            contractInfo.setChangeNum(num + "");
+        }else {
+            contractInfo.setChangeNum(contractInfo.getChangeNum());
+        }
+
+
         mapper.updateById(contractInfo);
         ContractParticipant participant = new ContractParticipant();
         //对参与签约方进行操作

+ 5 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/domain/CwProjectInfoData.java

@@ -20,6 +20,11 @@ import java.util.List;
 @TableName("cw_project_report_new_line")
 public class CwProjectInfoData extends BaseEntity {
 
+    /**
+     * 报告作废标记
+     */
+    private String deleteSign;
+
     //报告文号(字典值)
     public static final String BIZ_CODE = "14";
 

+ 7 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/mapper/CwProjectInfoMapper.java

@@ -3,6 +3,7 @@ package com.jeeplus.test.cw.projectReport.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.jeeplus.test.cw.projectReport.domain.CwProjectInfoData;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -14,6 +15,12 @@ import java.util.List;
 @Mapper
 public interface CwProjectInfoMapper extends BaseMapper<CwProjectInfoData> {
 
+    /**
+     * 根据id修改作废标记
+     * @param id
+     */
+    void updateSignById(@Param("id") String id, @Param("sign")String sign);
+
     List<CwProjectInfoData> selectIdByReportId(String id);
 
     List<CwProjectInfoData> selectByReportId(String id);

+ 3 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/mapper/xml/CwProjectInfoMapper.xml

@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.jeeplus.test.cw.projectReport.mapper.CwProjectInfoMapper">
+    <update id="updateSignById">
+        update cw_project_report_new_line set delete_sign = #{sign} where id = #{id}
+    </update>
     <delete id="deleteByReportId">
         update cw_project_report_new_line set del_flag = '1' where report_id = #{id}
     </delete>

+ 0 - 2
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/service/CwProjectReportService.java

@@ -182,8 +182,6 @@ public class CwProjectReportService extends ServiceImpl<CwProjectReportMapper, C
                     }
                     infoMapper.deleteById(data.getId());
                 });
-
-                System.out.println("ids01" + ids);
                 finalInfoList.forEach(in->{
                     in.setUpdateBy(UserUtils.getCurrentUserDTO().getId());
                     in.setUpdateDate(new Date());

+ 59 - 32
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/reportCancellApply/service/ReportCancellApplyService.java

@@ -20,6 +20,7 @@ import com.jeeplus.test.cw.projectReport.domain.*;
 import com.jeeplus.test.cw.projectReport.mapper.CwProjectInfoMapper;
 import com.jeeplus.test.cw.projectReport.mapper.CwProjectReportCancelMapper;
 import com.jeeplus.test.cw.projectReport.mapper.CwProjectReportMapper;
+import com.jeeplus.test.cw.projectReport.mapper.ProjectReportWorkAttachmentMapper;
 import com.jeeplus.test.cw.projectReport.service.dto.CwProjectReportDTO;
 import com.jeeplus.test.cw.projectReport.service.dto.ProjectReportWorkAttachmentDTO;
 import com.jeeplus.test.cw.projectReport.service.mapstruct.CwProjectReportFileWrapper;
@@ -57,6 +58,9 @@ public class ReportCancellApplyService extends ServiceImpl<ReportCancellApplyMap
     private CwProjectInfoMapper infoMapper;
 
     @Resource
+    private ProjectReportWorkAttachmentMapper attachmentMapper;
+
+    @Resource
     private CwProjectReportMapper reportMapper;
 
     /**
@@ -136,23 +140,36 @@ public class ReportCancellApplyService extends ServiceImpl<ReportCancellApplyMap
         BeanUtils.copyProperties(reportData, report);
         report.setUpdateBy(userDTO.getId());
         report.setUpdateDate(new Date());
-        //向存放报废报告号表中添加数据
-        CwProjectReportCancel cancel = new CwProjectReportCancel();
-        cancel.setId(UUID.randomUUID().toString().replace("-", ""));
-        cancel.setReportNo(reportData.getReportNo());
-        cancelMapper.insert(cancel);
+
         applyMapper.updateById(report);
         //修改报告管理的del_flag
-        CwProjectInfoData newLine = infoMapper.getById(report.getReportNewLineId());
-        //根据newLine的reportid找到报告表
-        CwProjectReport projectReport = reportMapper.selectById(newLine.getReportId());
-        if (report.getStatus().equals("2")){
-            projectReport.setDelFlag(1);
-            reportMapper.updateDelFlag(projectReport.getDelFlag(),projectReport.getId());
-        }else if (report.getStatus().equals("1") || report.getStatus().equals("4") || report.getStatus().equals("3")){
-            projectReport.setDelFlag(0);
-            reportMapper.updateDelFlag(projectReport.getDelFlag(),projectReport.getId());
+        if (report.getStatus().equals("5")){
+            //当审核通过的时候,删除新建行的newLine信息
+            infoMapper.deleteById(report.getReportNewLineId());
+            //删除新建行下的文件信息
+            //删除work_attachment_id信息
+            attachmentMapper.deleteByAttachMnentId(report.getReportNewLineId());
+            //向存放报废报告号表中添加数据
+            CwProjectReportCancel cancel = new CwProjectReportCancel();
+            cancel.setId(UUID.randomUUID().toString().replace("-", ""));
+            cancel.setReportNo(reportData.getReportNo());
+            cancelMapper.insert(cancel);
         }
+        //驳回撤回操作
+//        if (report.getStatus().equals("3") || report.getStatus().equals("4")){
+//            //根据新建行id修改newLine的作废删除标记
+//            infoMapper.updateSignById(report.getReportNewLineId(),"1");
+//        }
+//        CwProjectInfoData newLine = infoMapper.getById(report.getReportNewLineId());
+//        //根据newLine的reportid找到报告表
+//        CwProjectReport projectReport = reportMapper.selectById(newLine.getReportId());
+//        if (report.getStatus().equals("2")){
+//            projectReport.setDelFlag(1);
+//            reportMapper.updateDelFlag(projectReport.getDelFlag(),projectReport.getId());
+//        }else if (report.getStatus().equals("1") || report.getStatus().equals("4") || report.getStatus().equals("3")){
+//            projectReport.setDelFlag(0);
+//            reportMapper.updateDelFlag(projectReport.getDelFlag(),projectReport.getId());
+//        }
 
         return report.getId();
     }
@@ -174,25 +191,28 @@ public class ReportCancellApplyService extends ServiceImpl<ReportCancellApplyMap
                 report.setId(id);
             }
         }
-        //向存放报废报告号表中添加数据
-        CwProjectReportCancel cancel = new CwProjectReportCancel();
-        cancel.setId(UUID.randomUUID().toString().replace("-", ""));
-        cancel.setReportNo(reportData.getReportNo());
-        cancelMapper.insert(cancel);
-        this.applyMapper.insert(report);
-        applyMapper.updateById(report);
+        //根据新建行id修改newLine的作废删除标记
+        infoMapper.updateSignById(report.getReportNewLineId(),"1");
 
-        //修改报告管理的del_flag
-        CwProjectInfoData newLine = infoMapper.getById(report.getReportNewLineId());
-        //根据newLine的reportid找到报告表
-        CwProjectReport projectReport = reportMapper.selectById(newLine.getReportId());
-        if (report.getStatus().equals("2")){
-            projectReport.setDelFlag(1);
-            reportMapper.updateDelFlag(projectReport.getDelFlag(),projectReport.getId());
-        }else if (report.getStatus().equals("1") || report.getStatus().equals("4") || report.getStatus().equals("3")){
-            projectReport.setDelFlag(0);
-            reportMapper.updateDelFlag(projectReport.getDelFlag(),projectReport.getId());
-        }
+        this.applyMapper.insert(report);
+//        //向存放报废报告号表中添加数据
+//        CwProjectReportCancel cancel = new CwProjectReportCancel();
+//        cancel.setId(UUID.randomUUID().toString().replace("-", ""));
+//        cancel.setReportNo(reportData.getReportNo());
+//        cancelMapper.insert(cancel);
+//        applyMapper.updateById(report);
+//
+//        //修改报告管理的del_flag
+//        CwProjectInfoData newLine = infoMapper.getById(report.getReportNewLineId());
+//        //根据newLine的reportid找到报告表
+//        CwProjectReport projectReport = reportMapper.selectById(newLine.getReportId());
+//        if (report.getStatus().equals("2")){
+//            projectReport.setDelFlag(1);
+//            reportMapper.updateDelFlag(projectReport.getDelFlag(),projectReport.getId());
+//        }else if (report.getStatus().equals("1") || report.getStatus().equals("4") || report.getStatus().equals("3")){
+//            projectReport.setDelFlag(0);
+//            reportMapper.updateDelFlag(projectReport.getDelFlag(),projectReport.getId());
+//        }
 
         return report.getId();
     }
@@ -209,6 +229,7 @@ public class ReportCancellApplyService extends ServiceImpl<ReportCancellApplyMap
 
         queryWrapper.eq("a.del_flag","0");
         queryWrapper.eq("a.status","5");
+        queryWrapper.eq("b.delete_sign","0");
         queryWrapper.orderByDesc("a.create_date");
         if (StringUtils.isNotEmpty(reportInfoDto.getProjectName())) {
             queryWrapper.like("c.project_name", reportInfoDto.getProjectName());
@@ -223,6 +244,12 @@ public class ReportCancellApplyService extends ServiceImpl<ReportCancellApplyMap
         //删除前先将报告文号给复原
         ArrayList<String> strings = Lists.newArrayList(idArray);
         for (int i=0;i<strings.size();i++){
+            //修改新建行的del_flag为0,delete_sign为0
+            ReportCancellApply cancellApply = applyMapper.selectById(strings.get(i));
+            CwProjectInfoData infoData = infoMapper.getById(cancellApply.getReportNewLineId());
+            infoData.setDelFlag(0);
+            infoData.setDeleteSign("0");
+            infoMapper.updateById(infoData);
             ReportInfoDto reportInfoDto = applyMapper.queryById(strings.get(i));
             cancelMapper.deleteByReportNo(reportInfoDto.getReportNo());
         }