Browse Source

评估模块流程调整

lizhenhao 2 years ago
parent
commit
967fb13036

+ 8 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/finance/invoice/mapper/xml/FinanceInvoiceMapper.xml

@@ -42,6 +42,8 @@
             <result property="receivablesDate" column="receivables_date" jdbcType="TIMESTAMP"/>
             <result property="receivablesDate" column="receivables_date" jdbcType="TIMESTAMP"/>
             <result property="operator" column="operator" jdbcType="VARCHAR"/>
             <result property="operator" column="operator" jdbcType="VARCHAR"/>
             <result property="operatorOffice" column="operator_office" jdbcType="VARCHAR"/>
             <result property="operatorOffice" column="operator_office" jdbcType="VARCHAR"/>
+            <result property="taskId" column="task_id" jdbcType="VARCHAR"/>
+            <result property="taskIdInvalid" column="task_id_invalid" jdbcType="VARCHAR"/>
             <association property="financeInvoiceInvalidDTO" column="id" select="getFii" javaType="com.jeeplus.test.finance.invoice.service.dto.FinanceInvoiceInvalidDTO"></association>
             <association property="financeInvoiceInvalidDTO" column="id" select="getFii" javaType="com.jeeplus.test.finance.invoice.service.dto.FinanceInvoiceInvalidDTO"></association>
             <collection property="financeInvoiceReceivablesDTOList" column="id" select="getFirList" ofType="com.jeeplus.test.finance.invoice.service.dto.FinanceInvoiceReceivablesDTO"></collection>
             <collection property="financeInvoiceReceivablesDTOList" column="id" select="getFirList" ofType="com.jeeplus.test.finance.invoice.service.dto.FinanceInvoiceReceivablesDTO"></collection>
             <collection property="financeInvoiceBaseDTOList" column="id" select="getBaseList" ofType="com.jeeplus.test.finance.invoice.service.dto.FinanceInvoiceBaseDTO"></collection>
             <collection property="financeInvoiceBaseDTOList" column="id" select="getBaseList" ofType="com.jeeplus.test.finance.invoice.service.dto.FinanceInvoiceBaseDTO"></collection>
@@ -202,12 +204,17 @@
         LEFT JOIN program_project_list_info rpr1 ON wipr1.program_id = rpr1.id
         LEFT JOIN program_project_list_info rpr1 ON wipr1.program_id = rpr1.id
         WHERE wipr1.invoice_id = fi.id) as programName,
         WHERE wipr1.invoice_id = fi.id) as programName,
         cfid.number as "number",
         cfid.number as "number",
-        cfid.account as "accountDetail"
+        cfid.account as "accountDetail",
+        art.ID_ as task_id,
+        art_invalid.ID_ as task_id_invalid
         from finance_invoice fi
         from finance_invoice fi
         left join finance_invoice_detail cfid on cfid.invoice_id = fi.id
         left join finance_invoice_detail cfid on cfid.invoice_id = fi.id
         left join sys_user su on fi.create_by = su.id and su.del_flag = '0'
         left join sys_user su on fi.create_by = su.id and su.del_flag = '0'
         left join sys_user_manage_office sumo on sumo.office_id = su.office_id
         left join sys_user_manage_office sumo on sumo.office_id = su.office_id
         left join sys_office so on su.office_id = so.id and so.del_flag = '0'
         left join sys_office so on su.office_id = so.id and so.del_flag = '0'
+        left join act_ru_task art on fi.proc_ins_id = art.PROC_INST_ID_
+        left join finance_invoice_invalid invalid on invalid.invoice_id = fi.id and invalid.del_flag = '0'
+        left join act_ru_task art_invalid on invalid.proc_ins_id = art_invalid.PROC_INST_ID_
         ${ew.customSqlSegment}
         ${ew.customSqlSegment}
     </select>
     </select>
 
 

+ 19 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/finance/invoice/service/FinanceInvoiceService.java

@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Lists;
 import com.jeeplus.core.query.QueryWrapperGenerator;
 import com.jeeplus.core.query.QueryWrapperGenerator;
+import com.jeeplus.flowable.service.FlowTaskService;
 import com.jeeplus.sys.domain.User;
 import com.jeeplus.sys.domain.User;
 import com.jeeplus.sys.service.UserService;
 import com.jeeplus.sys.service.UserService;
 import com.jeeplus.sys.service.dto.UserDTO;
 import com.jeeplus.sys.service.dto.UserDTO;
@@ -61,6 +62,8 @@ public class FinanceInvoiceService extends ServiceImpl<FinanceInvoiceMapper, Fin
     private WorkContractInfoMapper workContractInfoMapper;
     private WorkContractInfoMapper workContractInfoMapper;
     @Resource
     @Resource
     private UserService userService;
     private UserService userService;
+    @Resource
+    private FlowTaskService flowTaskService;
 
 
     public List<String> getSearchList(ArrayList<String> searchIdList, List<String> ids) {
     public List<String> getSearchList(ArrayList<String> searchIdList, List<String> ids) {
         List<String> newSearchIdList = searchIdList.stream().filter(item -> {
         List<String> newSearchIdList = searchIdList.stream().filter(item -> {
@@ -270,7 +273,22 @@ public class FinanceInvoiceService extends ServiceImpl<FinanceInvoiceMapper, Fin
                 return new Page<FinanceInvoiceDTO>();
                 return new Page<FinanceInvoiceDTO>();
             }
             }
         }
         }
-        return financeInvoiceMapper.findList(page,queryWrapper);
+        IPage<FinanceInvoiceDTO> pageList = financeInvoiceMapper.findList(page, queryWrapper);
+        pageList.getRecords().stream().forEach(item ->{
+            // 发票申请
+            if (StringUtils.isNotBlank(item.getTaskId()) && StringUtils.isNotBlank(item.getStatus())) {
+                if ("2".equals(item.getStatus())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIds(flowTaskService.getTaskAuditUsers(item.getTaskId()));  // 获取数据审核人
+                }
+            }
+            // 发票作废
+            if (StringUtils.isNotBlank(item.getTaskIdInvalid()) && StringUtils.isNotBlank(item.getStatus())) {
+                if ("6".equals(item.getStatus())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIdsInvalid(flowTaskService.getTaskAuditUsers(item.getTaskIdInvalid()));  // 获取数据审核人
+                }
+            }
+        });
+        return pageList;
     }
     }
 
 
 //    public List<FinanceInvoiceDTO> exportList(Page<FinanceInvoiceDTO> page, FinanceInvoiceDTO financeInvoiceDTO) throws Exception{
 //    public List<FinanceInvoiceDTO> exportList(Page<FinanceInvoiceDTO> page, FinanceInvoiceDTO financeInvoiceDTO) throws Exception{

+ 17 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/finance/invoice/service/dto/FinanceInvoiceDTO.java

@@ -1,6 +1,7 @@
 package com.jeeplus.test.finance.invoice.service.dto;
 package com.jeeplus.test.finance.invoice.service.dto;
 
 
 import cn.afterturn.easypoi.excel.annotation.Excel;
 import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.jeeplus.core.domain.BaseEntity;
 import com.jeeplus.core.domain.BaseEntity;
@@ -285,5 +286,21 @@ public class FinanceInvoiceDTO extends BaseDTO {
      */
      */
     private String isReceivables;
     private String isReceivables;
 
 
+    /**
+     * 数据审核人  发票申请
+     */
+    private List<String> auditUserIds;
+
+    /**
+     * 发票作废  taskId
+     */
+    private String taskIdInvalid;
+
+    /**
+     * 数据审核人  发票作废
+     */
+    private List<String> auditUserIdsInvalid;
+
+
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
 }
 }

+ 73 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/program/configuration/projectList/domain/ProgramProjectListInfo.java

@@ -11,6 +11,7 @@ import org.springframework.format.annotation.DateTimeFormat;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.Date;
+import java.util.List;
 
 
 @Data
 @Data
 @TableName(value = "program_project_list_info")
 @TableName(value = "program_project_list_info")
@@ -345,4 +346,76 @@ public class ProgramProjectListInfo {
      */
      */
     private String tabType;
     private String tabType;
 
 
+    /**
+     * 项目登记  taskId
+     */
+    @TableField(exist = false)
+    private String taskId;
+
+    /**
+     * 数据审核人  项目登记
+     */
+    @TableField(exist = false)
+    private List<String> auditUserIds;
+
+    /**
+     * 一级校审  taskId
+     */
+    @TableField(exist = false)
+    private String taskIdAudit1;
+
+    /**
+     * 二级校审  taskId
+     */
+    @TableField(exist = false)
+    private String taskIdAudit2;
+
+    /**
+     * 三级校审  taskId
+     */
+    @TableField(exist = false)
+    private String taskIdAudit3;
+
+    /**
+     * 数据审核人  一级校审
+     */
+    @TableField(exist = false)
+    private List<String> auditUserIds1;
+
+    /**
+     * 数据审核人  二级校审
+     */
+    @TableField(exist = false)
+    private List<String> auditUserIds2;
+
+    /**
+     * 数据审核人  三级校审
+     */
+    @TableField(exist = false)
+    private List<String> auditUserIds3;
+
+    /**
+     * 签发  taskId
+     */
+    @TableField(exist = false)
+    private String taskIdIssued;
+
+    /**
+     * 归档  taskId
+     */
+    @TableField(exist = false)
+    private String taskIdArchive;
+
+    /**
+     * 数据审核人  签发
+     */
+    @TableField(exist = false)
+    private List<String> auditUserIdsIssued;
+
+    /**
+     * 数据审核人  归档
+     */
+    @TableField(exist = false)
+    private List<String> auditUserIdsArchive;
+
 }
 }

+ 13 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/program/configuration/projectList/mapper/xml/ProjectListMapper.xml

@@ -134,7 +134,13 @@
            d.id AS issued_id,
            d.id AS issued_id,
            d.proc_ins_id AS procInsId4,
            d.proc_ins_id AS procInsId4,
            d.status AS issued_status,
            d.status AS issued_status,
-           wci.no AS contract_no
+           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
         FROM
             program_project_list_info a
             program_project_list_info a
             LEFT JOIN sys_user b ON a.create_by = b.id
             LEFT JOIN sys_user b ON a.create_by = b.id
@@ -147,6 +153,12 @@
             LEFT JOIN program_archive pa ON pa.program_id = a.id and pa.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 program_members pm on a.id = pm.project_id
             LEFT JOIN proofread_issued d ON a.id = d.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}
             ${ew.customSqlSegment}
             ORDER BY a.update_date DESC
             ORDER BY a.update_date DESC
     </select>
     </select>

+ 36 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/program/configuration/projectList/service/ProjectListService.java

@@ -634,6 +634,42 @@ public class ProjectListService {
         pageList.getRecords().stream().forEach(item ->{
         pageList.getRecords().stream().forEach(item ->{
             String isInvoice = projectListMapper.selectInvoiceFlag(item.getId());
             String isInvoice = projectListMapper.selectInvoiceFlag(item.getId());
             item.setIsInvoice(isInvoice);
             item.setIsInvoice(isInvoice);
+            // 项目登记
+            if (StringUtils.isNotBlank(item.getTaskId()) && StringUtils.isNotBlank(item.getStatus())) {
+                if ("2".equals(item.getStatus())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIds(flowTaskService.getTaskAuditUsers(item.getTaskId()));  // 获取数据审核人
+                }
+            }
+            // 一级校审
+            if (StringUtils.isNotBlank(item.getTaskIdAudit1()) && StringUtils.isNotBlank(item.getStatus1())) {
+                if ("2".equals(item.getStatus1())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIds1(flowTaskService.getTaskAuditUsers(item.getTaskIdAudit1()));  // 获取数据审核人
+                }
+            }
+            // 二级校审
+            if (StringUtils.isNotBlank(item.getTaskIdAudit2()) && StringUtils.isNotBlank(item.getStatus2())) {
+                if ("2".equals(item.getStatus2())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIds2(flowTaskService.getTaskAuditUsers(item.getTaskIdAudit2()));  // 获取数据审核人
+                }
+            }
+            // 三级校审
+            if (StringUtils.isNotBlank(item.getTaskIdAudit3()) && StringUtils.isNotBlank(item.getStatus3())) {
+                if ("2".equals(item.getStatus3())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIds3(flowTaskService.getTaskAuditUsers(item.getTaskIdAudit3()));  // 获取数据审核人
+                }
+            }
+            // 签发
+            if (StringUtils.isNotBlank(item.getTaskIdIssued()) && StringUtils.isNotBlank(item.getIssuedStatus())) {
+                if ("2".equals(item.getIssuedStatus())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIdsIssued(flowTaskService.getTaskAuditUsers(item.getTaskIdIssued()));  // 获取数据审核人
+                }
+            }
+            // 归档
+            if (StringUtils.isNotBlank(item.getTaskIdArchive()) && StringUtils.isNotBlank(item.getArchiveStatus())) {
+                if ("2".equals(item.getArchiveStatus())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIdsArchive(flowTaskService.getTaskAuditUsers(item.getTaskIdArchive()));  // 获取数据审核人
+                }
+            }
         });
         });
         return pageList;
         return pageList;
     }
     }

+ 14 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/reimbursement/reimbursementInfo/service/ReimbursementInfoService.java

@@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Lists;
 import com.jeeplus.core.query.QueryWrapperGenerator;
 import com.jeeplus.core.query.QueryWrapperGenerator;
+import com.jeeplus.flowable.service.FlowTaskService;
 import com.jeeplus.sys.domain.Office;
 import com.jeeplus.sys.domain.Office;
 import com.jeeplus.sys.mapper.OfficeMapper;
 import com.jeeplus.sys.mapper.OfficeMapper;
 import com.jeeplus.sys.service.dto.UserDTO;
 import com.jeeplus.sys.service.dto.UserDTO;
@@ -69,6 +70,9 @@ public class ReimbursementInfoService {
     @Autowired
     @Autowired
     private ReimbursementDetailInfoProcuredMapper reimbursementDetailInfoProcuredMapper;
     private ReimbursementDetailInfoProcuredMapper reimbursementDetailInfoProcuredMapper;
 
 
+    @Resource
+    private FlowTaskService flowTaskService;
+
     /**
     /**
      * 列表查询
      * 列表查询
      */
      */
@@ -153,7 +157,16 @@ public class ReimbursementInfoService {
         if (StringUtils.isNotBlank(dto.getSourceType())) {
         if (StringUtils.isNotBlank(dto.getSourceType())) {
             queryWrapper.eq("a.source_type", dto.getSourceType());
             queryWrapper.eq("a.source_type", dto.getSourceType());
         }
         }
-        return infoMapper.findList(page, queryWrapper);
+        IPage<RetureListDto> pageList = infoMapper.findList(page, queryWrapper);
+        pageList.getRecords().stream().forEach(item -> {
+            // 报销申请
+            if (StringUtils.isNotBlank(item.getTaskId()) && StringUtils.isNotBlank(item.getType())) {
+                if ("2".equals(item.getType())) { // “审核中”的数据要获取数据审核人
+                    item.setAuditUserIds(flowTaskService.getTaskAuditUsers(item.getTaskId()));  // 获取数据审核人
+                }
+            }
+        });
+        return pageList;
     }
     }
 
 
     public ReimbursementInfo save(SaveInfoDto dto) throws Exception{
     public ReimbursementInfo save(SaveInfoDto dto) throws Exception{

+ 6 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/reimbursement/reimbursementInfo/service/dto/RetureListDto.java

@@ -7,6 +7,7 @@ import org.apache.poi.hpsf.Decimal;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.Date;
+import java.util.List;
 
 
 @Data
 @Data
 public class RetureListDto {
 public class RetureListDto {
@@ -115,4 +116,9 @@ public class RetureListDto {
     private String purchaseNo;
     private String purchaseNo;
 
 
     private String purchaseId;
     private String purchaseId;
+
+    /**
+     * 数据审核人  报销
+     */
+    private List<String> auditUserIds;
 }
 }

+ 13 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/workContract/domain/WorkContractInfo.java

@@ -7,6 +7,7 @@ import com.jeeplus.core.query.Query;
 import lombok.Data;
 import lombok.Data;
 
 
 import java.util.Date;
 import java.util.Date;
+import java.util.List;
 
 
 @Data
 @Data
 @TableName("work_contract_info")
 @TableName("work_contract_info")
@@ -205,4 +206,16 @@ public class WorkContractInfo {
 
 
     @TableField(exist = false)
     @TableField(exist = false)
     private String statusList;
     private String statusList;
+
+    /**
+     * 数据审核人  合同登记
+     */
+    @TableField(exist = false)
+    private List<String> auditUserIds;
+    /**
+     * 数据审核人  合同归档
+     */
+    @TableField(exist = false)
+    private List<String> auditUserIdsFiled;
+
 }
 }

+ 18 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/workContract/service/WorkContractService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Lists;
+import com.jeeplus.flowable.service.FlowTaskService;
 import com.jeeplus.sys.utils.TicketQueryUtils;
 import com.jeeplus.sys.utils.TicketQueryUtils;
 import com.jeeplus.test.oss.service.OssService;
 import com.jeeplus.test.oss.service.OssService;
 import com.jeeplus.test.program.configuration.projectList.domain.ProgramProjectListInfo;
 import com.jeeplus.test.program.configuration.projectList.domain.ProgramProjectListInfo;
@@ -43,6 +44,9 @@ public class WorkContractService {
     @Resource
     @Resource
     private SerialnumTplService serialnumTplService;
     private SerialnumTplService serialnumTplService;
 
 
+    @Resource
+    private FlowTaskService flowTaskService;
+
     public String saveInfo(WorkContractInfoDto workContractInfoDto) throws Exception {
     public String saveInfo(WorkContractInfoDto workContractInfoDto) throws Exception {
         if (StringUtils.isNotEmpty(workContractInfoDto.getId())) {
         if (StringUtils.isNotEmpty(workContractInfoDto.getId())) {
             WorkContractInfo info = workContractInfoMapper.selectById(workContractInfoDto.getId());
             WorkContractInfo info = workContractInfoMapper.selectById(workContractInfoDto.getId());
@@ -85,6 +89,20 @@ public class WorkContractService {
             }
             }
         }
         }
         IPage<WorkContractInfo> pageList = workContractInfoMapper.findPageList(page, queryWrapper);
         IPage<WorkContractInfo> pageList = workContractInfoMapper.findPageList(page, queryWrapper);
+        pageList.getRecords().stream().forEach(i -> {
+            // 合同登记
+            if (StringUtils.isNotBlank(i.getTaskId()) && StringUtils.isNotBlank(i.getStatus())) {
+                if ("2".equals(i.getStatus())) { // “审核中”的数据要获取数据审核人
+                    i.setAuditUserIds(flowTaskService.getTaskAuditUsers(i.getTaskId()));  // 获取数据审核人
+                }
+            }
+            // 合同归档
+            if (StringUtils.isNotBlank(i.getTaskFiledId()) && StringUtils.isNotBlank(i.getFiledType())) {
+                if ("2".equals(i.getFiledType())) { // “审核中”的数据要获取数据审核人
+                    i.setAuditUserIdsFiled(flowTaskService.getTaskAuditUsers(i.getTaskFiledId()));  // 获取数据审核人
+                }
+            }
+        });
         return pageList;
         return pageList;
     }
     }