Browse Source

评估需求调整

huangguoce 11 hours atrás
parent
commit
c21584ef01
16 changed files with 329 additions and 1 deletions
  1. 5 0
      jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/flowable/factory/AssessApiFallbackFactory.java
  2. 7 0
      jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/flowable/feign/IAssessApi.java
  3. 19 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/invoice/controller/FinanceInvoiceController.java
  4. 3 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/invoice/mapper/xml/FinanceInvoiceMapper.xml
  5. 8 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/invoice/service/dto/FinanceInvoiceDTO.java
  6. 34 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/controller/ProjectListController.java
  7. 5 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/domain/ProgramArchive.java
  8. 9 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/domain/ProgramProjectListInfo.java
  9. 7 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/mapper/ProjectListMapper.java
  10. 4 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/mapper/xml/ProgramArchiveMapper.xml
  11. 116 1
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/mapper/xml/ProjectListMapper.xml
  12. 10 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/service/ProjectListService.java
  13. 12 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/service/dto/ExportFileDto.java
  14. 12 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/service/dto/ProgramArchiveDto.java
  15. 1 0
      jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/workContract/domain/WorkContractInfo.java
  16. 77 0
      jeeplus-modules/jeeplus-xxl-job-executor-sample/src/main/java/com/xxl/job/executor/service/jobhandler/SampleXxlJob.java

+ 5 - 0
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/flowable/factory/AssessApiFallbackFactory.java

@@ -32,6 +32,11 @@ public class AssessApiFallbackFactory implements FallbackFactory<IAssessApi> {
             }
 
             @Override
+            public String getInvoiceDateIsNullProjectList() {
+                return null;
+            }
+
+            @Override
             public String getProjectList() {
                 return null;
             }

+ 7 - 0
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/flowable/feign/IAssessApi.java

@@ -36,6 +36,13 @@ public interface IAssessApi {
     String getOverdueFilingProjectList();
 
     /**
+     * 查询归档完成,但开票日期未填写的项目信息
+     * @return
+     */
+    @GetMapping(value = "/program/projectList/getInvoiceDateIsNullProjectList")
+    String getInvoiceDateIsNullProjectList();
+
+    /**
      * 查询未关联项目的报告
      */
     @GetMapping(value = "/program/projectList/getProjectList")

+ 19 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/invoice/controller/FinanceInvoiceController.java

@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jeeplus.aop.demo.annotation.DemoMode;
+import com.jeeplus.assess.program.configuration.projectList.domain.ProgramProjectListInfo;
 import com.jeeplus.assess.projectRecords.Utils.EasyPoiUtil;
 import com.jeeplus.common.excel.ExcelOptions;
 import com.jeeplus.common.excel.ExportMode;
@@ -65,6 +66,24 @@ public class FinanceInvoiceController {
     }
 
     /**
+     * 根据项目名称查询发票
+     * @param financeInvoiceDTO
+     * @return
+     * @throws Exception
+     */
+    @ApiLog("根据项目名称查询发票")
+    @GetMapping("findInvoiceByProjectName")
+    public ResponseEntity<IPage<FinanceInvoiceDTO>> findInvoiceByProjectName(FinanceInvoiceDTO financeInvoiceDTO) throws Exception {
+        IPage<FinanceInvoiceDTO> result = new Page<FinanceInvoiceDTO>();
+        Page<FinanceInvoiceDTO> page = new Page<FinanceInvoiceDTO>();
+        page.setCurrent(1);
+        page.setSize(999);
+        result = financeInvoiceService.findList (page,financeInvoiceDTO);
+        return ResponseEntity.ok (result);
+    }
+
+
+    /**
      * 查询发票数据
      * @param id
      * @return

+ 3 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/invoice/mapper/xml/FinanceInvoiceMapper.xml

@@ -206,6 +206,8 @@
         <include refid="Base_Column_List"></include>,
         su.name as operator,
         so.name as operator_office,
+        fibs.report_no,
+        fibs.program_no,
         (select
         CASE
         WHEN RIGHT( GROUP_CONCAT(case when program_id is null then 2 else 1 end),1) =2 THEN GROUP_CONCAT(concat('其他:',wipr1.program_name))
@@ -220,6 +222,7 @@
         art_invalid.ID_ as task_id_invalid,
         su1.name as reconciliationPeopleName
         from finance_invoice fi
+        left join finance_invoice_base fibs on fibs.invoice_id = fi.id and fibs.del_flag = '0'
         left join finance_invoice_detail cfid on cfid.invoice_id = fi.id and cfid.del_flag = '0'
         left join sys_user su on fi.create_by_id = su.id and su.del_flag = '0'
 --         left join sys_user_manage_office sumo on sumo.office_id = su.office_id

+ 8 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/invoice/service/dto/FinanceInvoiceDTO.java

@@ -115,6 +115,14 @@ public class FinanceInvoiceDTO extends BaseDTO {
     @Excel(name = "是否确认收款",width = 14, replace = {"是_1", "否_0"})
     private String receivablesStatus;
 
+
+    @Excel(name = "项目编号",width = 20)
+    private String programNo;
+
+    @Excel(name = "报告号",width = 20)
+    private String reportNo;
+
+
     /**
      * 领票时间
      */

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

@@ -5,6 +5,8 @@ import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jeeplus.aop.demo.annotation.DemoMode;
+import com.jeeplus.assess.invoice.service.FinanceInvoiceService;
+import com.jeeplus.assess.invoice.service.dto.FinanceInvoiceDTO;
 import com.jeeplus.assess.program.configuration.projectList.domain.ProgramProjectListInfo;
 import com.jeeplus.assess.program.configuration.projectList.domain.ProgramReportNo;
 import com.jeeplus.assess.program.configuration.projectList.service.ProjectListService;
@@ -34,6 +36,7 @@ import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 @Api(tags ="项目列表管理")
@@ -44,6 +47,8 @@ public class ProjectListController {
     @Resource
     private ProjectListService projectListService;
 
+    @Resource
+    private FinanceInvoiceService financeInvoiceService;
     /**
      * 查询当前登录人所属项目组的项目
      * @return
@@ -65,6 +70,17 @@ public class ProjectListController {
     }
 
     /**
+     * 查询归档完成,但开票日期未填写的项目信息
+     * @return
+     */
+    @GetMapping("getInvoiceDateIsNullProjectList")
+    public String getInvoiceDateIsNullProjectList(){
+        List<ProgramProjectListInfo> list = projectListService.getInvoiceDateIsNullProjectList();
+        return  JSON.toJSONString(list);
+    }
+
+
+    /**
      * 修改报告归档 归档状态信息
      * @param id
      * @param archiveStatus
@@ -304,7 +320,25 @@ public class ProjectListController {
             page.setCurrent (0);
             result = projectListService.list (page,info,"1").getRecords();
         }
+
         List<ExportFileDto> exportFileDtos = projectListService.exportList(result);
+
+        Page<FinanceInvoiceDTO> invoicePage = new Page<>();
+        invoicePage.setCurrent(1);
+        invoicePage.setSize(999);
+        for (ExportFileDto exportFileDto : exportFileDtos) {
+            FinanceInvoiceDTO financeInvoiceDTO = new FinanceInvoiceDTO();
+            financeInvoiceDTO.setProgramName(exportFileDto.getName());
+            IPage<FinanceInvoiceDTO> invoiceList = financeInvoiceService.findList(invoicePage, financeInvoiceDTO);
+            List<FinanceInvoiceDTO> records = invoiceList.getRecords();
+            String invoiceNums = records.stream()
+                    .map(FinanceInvoiceDTO::getNumber)
+                    .filter(Objects::nonNull) // 💡 避免 null
+                    .collect(Collectors.joining(","));
+
+            exportFileDto.setInvoiceNums(invoiceNums);
+        }
+
         EasyPoiUtil.exportExcel ( exportFileDtos, sheetName,  sheetName, ExportFileDto.class, fileName, response );
 
     }

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

@@ -125,6 +125,11 @@ public class ProgramArchive extends BaseEntity {
     private String isOpsReimbursement;
 
     /**
+     * 是否备案
+     */
+    private String isBa;
+
+    /**
      * 已报销金额
      */
     private String reimbursementAmount;

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

@@ -151,6 +151,7 @@ public class ProgramProjectListInfo extends BaseEntity {
     @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
     private Date reportingDate;
 
+
     private String isHave;
 
     private String isInfluence;
@@ -461,6 +462,14 @@ public class ProgramProjectListInfo extends BaseEntity {
     @TableField(exist = false)
     private String year;
 
+    /**
+     * 开票日期
+     */
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    @TableField(exist = false)
+    private Date invoiceDate;
+
     /*8
     作废信息
      */

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

@@ -79,6 +79,13 @@ public interface ProjectListMapper extends BaseMapper<ProgramProjectListInfo> {
     List<ProgramProjectListInfo> getOverdueFilingProjectList(@Param("threeDayAgo") String threeDayAgo);
 
     /**
+     * 查询归档完成,但开票日期未填写的项目信息
+     * @return
+     */
+    @InterceptorIgnore(tenantLine = "true")
+    List<ProgramProjectListInfo> getInvoiceDateIsNullProjectList();
+
+    /**
      * 根据创建人id查询所有项目id
      * @param id
      * @return

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

@@ -32,6 +32,7 @@
             <result property="isPapersArchive" column="is_papers_archive" jdbcType="VARCHAR"/>
             <result property="opsAmount" column="ops_amount" jdbcType="VARCHAR"/>
             <result property="isOpsReimbursement" column="is_ops_reimbursement" jdbcType="VARCHAR"/>
+            <result property="isBa" column="is_ba" jdbcType="VARCHAR"/>
             <result property="reimbursementAmount" column="reimbursement_amount" jdbcType="VARCHAR"/>
             <result property="unreimbursedAmount" column="unreimbursed_amount" jdbcType="VARCHAR"/>
             <result property="reimbursementNum" column="reimbursement_num" jdbcType="VARCHAR"/>
@@ -77,6 +78,7 @@
         pa.is_papers_archive,
         pa.ops_amount,
         pa.is_ops_reimbursement,
+        pa.is_ba,
         pa.reimbursement_amount,
         pa.unreimbursed_amount,
         pa.reimbursement_num,
@@ -161,11 +163,13 @@
         select
         <include refid="Base_Column_List"></include>,
         prn.report_no as report_no,
+        ppli.project_mould as projectMould,
         su1.name as currentDisposePersonName,
         su3.name as signatureEvaluatorSecondName,
         su2.name as signatureEvaluatorFirstName
         from program_archive pa
         left join program_report_no prn on prn.program_id = pa.program_id and prn.del_flag = '0'
+        left join program_project_list_info ppli on ppli.id = pa.program_id and ppli.del_flag = '0'
         left join sys_user su1 on pa.current_dispose_person= su1.id
         left join sys_user su2 on pa.signature_evaluator_first= su2.id
         left join sys_user su3 on pa.signature_evaluator_second= su3.id

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

@@ -151,10 +151,11 @@
            pa.is_papers_archive,
            pa.is_invoice,
            pa.year,
+           pa.invoice_date as invoiceDate,
            d.id AS issued_id,
            d.proc_ins_id AS procInsId4,
            ifnull(d.status,"0") 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,
@@ -622,6 +623,7 @@
                 DATE_FORMAT(b.evaluation_report_date, '%Y-%m-%d') as "evaluation_report_date",
                 b.protocol_num,
                 c.no as contract_num,
+                c.name as contract_name,
                 e.report_no,
                 f.`name` AS project_manager_name,
                 g.`name` AS signature_evaluator_first,
@@ -1029,4 +1031,117 @@
             and project_id = #{id}
         </where>
     </select>
+
+
+
+    <select id="getInvoiceDateIsNullProjectList"
+            resultType="com.jeeplus.assess.program.configuration.projectList.domain.ProgramProjectListInfo">
+        SELECT
+        distinct
+        a.id,
+        pa.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.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,
+        d.id AS issued_id,
+        d.proc_ins_id AS procInsId4,
+        d.status AS issued_status,
+        d.agree_time AS agree_time,
+        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_
+        <where>
+            a.del_flag = 0
+            and ( pa.status = 5 or pa.status = 7)
+            and  pa.invoice_date IS NULL
+        </where>
+        ORDER BY a.update_time DESC
+    </select>
 </mapper>

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

@@ -134,6 +134,16 @@ public class ProjectListService {
     }
 
     /**
+     * 查询归档完成,但开票日期未填写的项目信息
+     * @return
+     */
+    public List<ProgramProjectListInfo> getInvoiceDateIsNullProjectList(){
+        //查询归档完成,但开票日期未填写的项目信息
+        List<ProgramProjectListInfo> list = projectListMapper.getInvoiceDateIsNullProjectList();
+        return list;
+    }
+
+    /**
      * 修改报告归档 归档状态信息
      * @param id
      * @param archiveStatus 归档状态

+ 12 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/service/dto/ExportFileDto.java

@@ -79,6 +79,12 @@ public class ExportFileDto {
     private String contractNum;
 
     /**
+     * 合同名称
+     */
+    @Excel(name = "合同名称", width = 20, orderNum = "11")
+    private String contractName;
+
+    /**
      * 文号(报告号表)
      */
     @Excel(name = "文号", width = 20, orderNum = "12")
@@ -151,6 +157,12 @@ public class ExportFileDto {
     private String isInvoice;
 
     /**
+     * 发票号
+     */
+    @Excel(name = "发票号", width = 20, orderNum = "8")
+    private String invoiceNums;
+
+    /**
      * 开票日期(归档表)
      */
     @Excel(name = "开票日期", width = 20, orderNum = "24")

+ 12 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/program/configuration/projectList/service/dto/ProgramArchiveDto.java

@@ -140,6 +140,13 @@ public class ProgramArchiveDto extends BaseDTO {
      */
     private String isOpsReimbursement;
 
+
+    /**
+     * 是否备案
+     */
+    private String isBa;
+
+
     /**
      * 已报销金额
      */
@@ -244,5 +251,10 @@ public class ProgramArchiveDto extends BaseDTO {
      */
     private String signatureEvaluatorSecondName;
 
+    /**
+     * 项目类型
+     */
+    private String projectMould;
+
     private static final long serialVersionUID = 1L;
 }

+ 1 - 0
jeeplus-modules/jeeplus-assess/src/main/java/com/jeeplus/assess/workContract/domain/WorkContractInfo.java

@@ -27,6 +27,7 @@ public class WorkContractInfo extends BaseEntity {
     /**
      * 合同编号
      */
+    @Query(tableColumn = "a.no")
     private String no;
 
     /**

+ 77 - 0
jeeplus-modules/jeeplus-xxl-job-executor-sample/src/main/java/com/xxl/job/executor/service/jobhandler/SampleXxlJob.java

@@ -485,6 +485,83 @@ public class SampleXxlJob {
         }
     }
 
+    /**
+     * 查询开票日期未填写的项目信息,提醒用户补充
+     */
+    @XxlJob("projectInvoiceDateIsNull")
+    public void projectInvoiceDateIsNull() {
+        //查询开票日期为空的项目
+        String json = SpringUtil.getBean ( AssessFeignApi.class ).getInvoiceDateIsNullProjectList();
+        List<ProgramProjectListInfo> projectList = JSON.parseObject(json, new TypeReference<List<ProgramProjectListInfo>>() {});
+        //遍历项目信息,判断开票日期进行提醒
+        for (ProgramProjectListInfo info : projectList) {
+            //对数据进行发送通知
+            String taskName = "评估-补充开票日期";
+            String titleStr = "项目【"+ info.getName()+"】开票日期未填写。";
+            Set<String> noticeUserSet = new HashSet<String>();
+            if(StringUtils.isNotBlank(info.getCreateBy())){
+
+                String byIdForXXL = SpringUtil.getBean(IUserApi.class).getByIdForXXL(info.getCreateBy());
+                UserDTO createUser = JSON.parseObject(byIdForXXL, new TypeReference<UserDTO>() {});
+                if(null != createUser && StringUtils.isNotBlank(createUser.getId())){
+                    noticeUserSet.add(createUser.getId());
+                }
+            }
+            List<String> noticeUserList = new ArrayList<String>(noticeUserSet);
+            if(noticeUserList.size()>0){
+                MyNoticeList myNotice = new MyNoticeList();
+                myNotice.setCreateById("1");
+                myNotice.setCreateTime(new Date());
+                myNotice.setUpdateById("1");
+                myNotice.setUpdateTime(new Date());
+                myNotice.setDelFlag(0);
+                //根据procInsId获取taskId
+                String currentTask = SpringUtil.getBean(IFlowableApi.class).getTaskIdByprocInstId(info.getProcInsIdArchive());
+                Map mapInfo = SpringUtil.getBean(IFlowableApi.class).getByNameForFen("评估-项目归档");
+                String procDefId = mapInfo.get("id")+"";
+                myNotice.setTaskId(currentTask);
+                myNotice.setDefId(procDefId);
+                myNotice.setTitle(titleStr);
+                myNotice.setTaskName(taskName);
+                myNotice.setLink("结束");
+                myNotice.setType("0");
+                myNotice.setCreateUser("管理员");
+                myNotice.setCreateTime(new Date());
+
+                for (String noticeUserId : noticeUserList) {
+                    myNotice.setNoticeId(noticeUserId);
+                    String byIdForXXL = SpringUtil.getBean(IUserApi.class).getByIdForXXL(info.getCreateBy());
+                    UserDTO createUser = JSON.parseObject(byIdForXXL, new TypeReference<UserDTO>() {});
+                    myNotice.setNoticeName(createUser.getName());
+                    //根据taskName和通知人 查询重复数量
+                    String myNoticeInfo = JSON.toJSONString(myNotice);
+                    Map<String,String> map = new HashMap();
+                    map.put("myNoticeInfo", myNoticeInfo);
+                    String jsonInfo = SpringUtil.getBean(IFlowableApi.class).getRepetitionCountBymyNoticeTitle(map);
+                    MyNoticeList repetitionCountBymyNotice = JSON.parseObject(jsonInfo, new TypeReference<MyNoticeList>() {});
+
+                    if(null == repetitionCountBymyNotice){
+                        // 生成id
+                        String id = UUID.randomUUID().toString().replace("-", "");
+                        myNotice.setId(id);
+                        myNotice.setRepetitionCount(0);
+
+                        myNoticeInfo = JSON.toJSONString(myNotice);
+                        map.put("myNoticeInfo", myNoticeInfo);
+                        SpringUtil.getBean ( IFlowableApi.class ).insertMyNotice(map);
+                    }else{
+                        myNotice.setId(repetitionCountBymyNotice.getId());
+                        myNotice.setRepetitionCount(repetitionCountBymyNotice.getRepetitionCount()+1);
+
+                        myNoticeInfo = JSON.toJSONString(myNotice);
+                        map.put("myNoticeInfo", myNoticeInfo);
+                        SpringUtil.getBean ( IFlowableApi.class ).updateMyNotice(map);
+                    }
+                }
+            }
+        }
+    }
+
 
     /**
      * 项目-数电发票报销-修改老数据