wangliang 10 months ago
parent
commit
7999a439a0

+ 5 - 8
sop-api/src/main/java/com/qmth/sop/server/ServerApplication.java

@@ -1,7 +1,6 @@
 package com.qmth.sop.server;
 
 import com.qmth.boot.core.security.service.CustomizeAuthorizationService;
-import com.qmth.sop.business.threadPool.MyThreadPool;
 import com.qmth.sop.common.base.CustomizedSqlInjector;
 import com.qmth.sop.server.auth.SopServerAuthenticationService;
 import org.activiti.spring.boot.SecurityAutoConfiguration;
@@ -11,8 +10,6 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.autoconfigure.domain.EntityScan;
 import org.springframework.cache.annotation.EnableCaching;
 import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Primary;
-import org.springframework.core.task.TaskExecutor;
 import org.springframework.scheduling.annotation.EnableAsync;
 import org.springframework.transaction.annotation.EnableTransactionManagement;
 
@@ -42,11 +39,11 @@ public class ServerApplication {
         };
     }
 
-    @Primary
-    @Bean
-    public TaskExecutor primaryTaskExecutor() {
-        return new MyThreadPool();
-    }
+//    @Primary
+//    @Bean
+//    public TaskExecutor primaryTaskExecutor() {
+//        return new MyThreadPool();
+//    }
 
     @Bean
     public CustomizedSqlInjector customizedSqlInjector() {

+ 151 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudMarkSopFlow.bpmn

@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:tns="http://www.activiti.org/test" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test" id="m1626068475250" name="">
+  <process id="CLOUD_MARK_SOP_FLOW" isExecutable="true" isClosed="false" processType="None">
+    <userTask id="f_usertask_cloudmark_inside_approve_3" name="内审" activiti:assignee="${assignee3}" activiti:formKey="cloudmark_sop_inside_approve.form">
+      <multiInstanceLoopCharacteristics isSequential="false" activiti:collection="${assigneeList3}" activiti:elementVariable="assignee3">
+        <completionCondition>${nrOfCompletedInstances/nrOfInstances==1 || reject3==1}</completionCondition>
+      </multiInstanceLoopCharacteristics>
+    </userTask>
+    <endEvent id="f_usertask_cloudmark_end_0" name="结束"></endEvent>
+    <userTask id="f_usertask_cloudmark_information_2" name="项目关键信息" activiti:candidateUsers="${assigneeList2}" activiti:formKey="cloudmark_sop_information.form"></userTask>
+    <startEvent id="startevent1" name="Start" activiti:formKey="cloudmark_sop_start.form"></startEvent>
+    <userTask id="f_usertask_cloudmark_first_1" name="项目初审" activiti:candidateUsers="${assigneeList1}" activiti:formKey="cloudmark_sop_first.form"></userTask>
+    <sequenceFlow id="flow6" sourceRef="startevent1" targetRef="f_usertask_cloudmark_first_1"></sequenceFlow>
+    <sequenceFlow id="flow14" sourceRef="f_usertask_cloudmark_first_1" targetRef="f_usertask_cloudmark_information_2"></sequenceFlow>
+    <userTask id="f_usertask_cloudmark_device_out_4" name="设备出库登记" activiti:candidateUsers="${assigneeList4}" activiti:formKey="cloudmark_sop_device_out.form"></userTask>
+    <userTask id="f_usertask_cloudmark_scan_ready_6" name="扫描准备" activiti:candidateUsers="${assigneeList6}" activiti:formKey="cloudmark_sop_scan_ready.form"></userTask>
+    <userTask id="f_usertask_cloudmark_check_final_7" name="校验收尾" activiti:candidateUsers="${assigneeList7}" activiti:formKey="cloudmark_sop_check_final.form"></userTask>
+    <userTask id="f_usertask_cloudmark_mark_prep_8" name="评卷准备" activiti:candidateUsers="${assigneeList8}" activiti:formKey="cloudmark_sop_mark_prep.form"></userTask>
+    <userTask id="f_usertask_cloudmark_mark_final_10" name="评卷收尾" activiti:candidateUsers="${assigneeList10}" activiti:formKey="cloudmark_sop_mark_final.form"></userTask>
+    <userTask id="f_usertask_cloudmark_device_in_11" name="设备入库登记" activiti:candidateUsers="${assigneeList11}" activiti:formKey="cloudmark_sop_device_in.form"></userTask>
+    <sequenceFlow id="flow28" sourceRef="f_usertask_cloudmark_device_in_11" targetRef="f_usertask_cloudmark_end_0"></sequenceFlow>
+    <sequenceFlow id="flow29" sourceRef="f_usertask_cloudmark_mark_final_10" targetRef="f_usertask_cloudmark_device_in_11"></sequenceFlow>
+    <userTask id="f_usertask_cloudmark_env_test_5" name="现场环境测试" activiti:candidateUsers="${assigneeList5}" activiti:formKey="cloudmark_sop_env_test.form"></userTask>
+    <sequenceFlow id="flow32" sourceRef="f_usertask_cloudmark_scan_ready_6" targetRef="f_usertask_cloudmark_check_final_7"></sequenceFlow>
+    <sequenceFlow id="flow33" sourceRef="f_usertask_cloudmark_check_final_7" targetRef="f_usertask_cloudmark_mark_prep_8"></sequenceFlow>
+    <userTask id="f_usertask_cloudmark_mark_check_9" name="成绩复核" activiti:candidateUsers="${assigneeList9}" activiti:formKey="cloudmark_sop_mark_check.form"></userTask>
+    <sequenceFlow id="flow34" sourceRef="f_usertask_cloudmark_mark_prep_8" targetRef="f_usertask_cloudmark_mark_check_9"></sequenceFlow>
+    <sequenceFlow id="flow35" sourceRef="f_usertask_cloudmark_mark_check_9" targetRef="f_usertask_cloudmark_mark_final_10"></sequenceFlow>
+    <exclusiveGateway id="exclusivegateway1" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow39" name="驳回" sourceRef="exclusivegateway1" targetRef="f_usertask_cloudmark_information_2">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_cloudmark_information_2'}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow44" sourceRef="f_usertask_cloudmark_information_2" targetRef="f_usertask_cloudmark_inside_approve_3"></sequenceFlow>
+    <sequenceFlow id="flow45" sourceRef="f_usertask_cloudmark_inside_approve_3" targetRef="exclusivegateway1"></sequenceFlow>
+    <sequenceFlow id="flow46" name="通过" sourceRef="exclusivegateway1" targetRef="f_usertask_cloudmark_device_out_4">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_cloudmark_device_out_4'}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow47" sourceRef="f_usertask_cloudmark_device_out_4" targetRef="f_usertask_cloudmark_env_test_5"></sequenceFlow>
+    <sequenceFlow id="flow48" sourceRef="f_usertask_cloudmark_env_test_5" targetRef="f_usertask_cloudmark_scan_ready_6"></sequenceFlow>
+  </process>
+  <bpmndi:BPMNDiagram id="BPMNDiagram_CLOUD_MARK_SOP_FLOW">
+    <bpmndi:BPMNPlane bpmnElement="CLOUD_MARK_SOP_FLOW" id="BPMNPlane_CLOUD_MARK_SOP_FLOW">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_inside_approve_3" id="BPMNShape_f_usertask_cloudmark_inside_approve_3">
+        <omgdc:Bounds height="55.0" width="85.0" x="456.0" y="20.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_end_0" id="BPMNShape_f_usertask_cloudmark_end_0">
+        <omgdc:Bounds height="35.0" width="35.0" x="481.0" y="270.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_information_2" id="BPMNShape_f_usertask_cloudmark_information_2">
+        <omgdc:Bounds height="55.0" width="85.0" x="290.0" y="20.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
+        <omgdc:Bounds height="35.0" width="35.0" x="30.0" y="30.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_first_1" id="BPMNShape_f_usertask_cloudmark_first_1">
+        <omgdc:Bounds height="55.0" width="85.0" x="140.0" y="20.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_device_out_4" id="BPMNShape_f_usertask_cloudmark_device_out_4">
+        <omgdc:Bounds height="55.0" width="85.0" x="620.0" y="141.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_scan_ready_6" id="BPMNShape_f_usertask_cloudmark_scan_ready_6">
+        <omgdc:Bounds height="55.0" width="85.0" x="299.0" y="141.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_check_final_7" id="BPMNShape_f_usertask_cloudmark_check_final_7">
+        <omgdc:Bounds height="55.0" width="85.0" x="142.0" y="141.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_mark_prep_8" id="BPMNShape_f_usertask_cloudmark_mark_prep_8">
+        <omgdc:Bounds height="55.0" width="85.0" x="10.0" y="141.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_mark_final_10" id="BPMNShape_f_usertask_cloudmark_mark_final_10">
+        <omgdc:Bounds height="55.0" width="85.0" x="150.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_device_in_11" id="BPMNShape_f_usertask_cloudmark_device_in_11">
+        <omgdc:Bounds height="55.0" width="85.0" x="299.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_env_test_5" id="BPMNShape_f_usertask_cloudmark_env_test_5">
+        <omgdc:Bounds height="55.0" width="85.0" x="456.0" y="143.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_cloudmark_mark_check_9" id="BPMNShape_f_usertask_cloudmark_mark_check_9">
+        <omgdc:Bounds height="55.0" width="85.0" x="10.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway1" id="BPMNShape_exclusivegateway1">
+        <omgdc:Bounds height="40.0" width="40.0" x="642.0" y="27.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
+        <omgdi:waypoint x="65.0" y="47.0"></omgdi:waypoint>
+        <omgdi:waypoint x="140.0" y="47.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow14" id="BPMNEdge_flow14">
+        <omgdi:waypoint x="225.0" y="47.0"></omgdi:waypoint>
+        <omgdi:waypoint x="290.0" y="47.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow28" id="BPMNEdge_flow28">
+        <omgdi:waypoint x="384.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="481.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow29" id="BPMNEdge_flow29">
+        <omgdi:waypoint x="235.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="299.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow32" id="BPMNEdge_flow32">
+        <omgdi:waypoint x="299.0" y="168.0"></omgdi:waypoint>
+        <omgdi:waypoint x="227.0" y="168.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow33" id="BPMNEdge_flow33">
+        <omgdi:waypoint x="142.0" y="168.0"></omgdi:waypoint>
+        <omgdi:waypoint x="95.0" y="168.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow34" id="BPMNEdge_flow34">
+        <omgdi:waypoint x="52.0" y="196.0"></omgdi:waypoint>
+        <omgdi:waypoint x="52.0" y="260.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow35" id="BPMNEdge_flow35">
+        <omgdi:waypoint x="95.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="150.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow39" id="BPMNEdge_flow39">
+        <omgdi:waypoint x="662.0" y="67.0"></omgdi:waypoint>
+        <omgdi:waypoint x="506.0" y="118.0"></omgdi:waypoint>
+        <omgdi:waypoint x="332.0" y="118.0"></omgdi:waypoint>
+        <omgdi:waypoint x="332.0" y="75.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="16.0" width="22.0" x="662.0" y="67.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow44" id="BPMNEdge_flow44">
+        <omgdi:waypoint x="375.0" y="47.0"></omgdi:waypoint>
+        <omgdi:waypoint x="456.0" y="47.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow45" id="BPMNEdge_flow45">
+        <omgdi:waypoint x="541.0" y="47.0"></omgdi:waypoint>
+        <omgdi:waypoint x="642.0" y="47.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow46" id="BPMNEdge_flow46">
+        <omgdi:waypoint x="662.0" y="67.0"></omgdi:waypoint>
+        <omgdi:waypoint x="662.0" y="141.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="16.0" width="100.0" x="662.0" y="67.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow47" id="BPMNEdge_flow47">
+        <omgdi:waypoint x="620.0" y="168.0"></omgdi:waypoint>
+        <omgdi:waypoint x="541.0" y="170.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow48" id="BPMNEdge_flow48">
+        <omgdi:waypoint x="456.0" y="170.0"></omgdi:waypoint>
+        <omgdi:waypoint x="384.0" y="168.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</definitions>

File diff suppressed because it is too large
+ 0 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_check_final.form


+ 1 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_device_in.form

@@ -0,0 +1 @@
+[{"id":"185","code":"ONLY_TITLE","type":"FORM","formId":"device_in_out_label","formName":"device_in_out_label","title":"设备入库","inputType":"STRING","required":false,"readable":true,"writable":false,"visable":true,"name":"普通标题,独占一行","span":6},{"id":"186","code":"DATE","type":"FORM","formId":"device_in_time","formName":"device_in_time","title":"设备入库时间","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"format":"yyyy-MM-dd","name":"日期","span":6},{"id":"187","code":"DEVICE_IN_TABLE","type":"FORM","formId":"device_in_table","formName":"device_in_table","title":"设备入库表格","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"设备入库表格","span":12}]

+ 1 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_device_out.form

@@ -0,0 +1 @@
+[{"id":"144","code":"ONLY_TITLE","type":"FORM","formId":"device_in_out_label","formName":"device_in_out_label","title":"设备出库","inputType":"STRING","required":false,"readable":true,"writable":false,"visable":true,"name":"普通标题,独占一行","span":12},{"id":"145","code":"DATE","type":"FORM","formId":"device_out_time","formName":"device_out_time","title":"设备出库时间","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"format":"yyyy-MM-dd","name":"日期","span":6},{"id":"146","code":"DEVICE_OUT_TABLE","type":"FORM","formId":"device_out_table","formName":"device_out_table","title":"设备出库表格","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"设备出库表格","span":12}]

+ 1 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_env_test.form

@@ -0,0 +1 @@
+[{"id":"141","code":"FORM_GROUP_TITLE","type":"FORM","formId":"upload_list_title","formName":"upload_list_title","title":"上传清单和报告","inputType":"STRING","required":false,"readable":true,"writable":false,"visable":true,"name":"带虚线分割线的标题","span":12},{"id":"188","code":"FILE","type":"FORM","formId":"upload_device_version_photos","formName":"upload_device_version_photos","title":"上传扫描仪固件版本号拍照","inputType":"ARRAY","required":true,"readable":false,"writable":true,"visable":true,"length":5,"name":"文件","span":12}]

File diff suppressed because it is too large
+ 0 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_first.form


File diff suppressed because it is too large
+ 0 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_information.form


File diff suppressed because it is too large
+ 0 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_inside_approve.form


+ 1 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_mark_check.form

@@ -0,0 +1 @@
+[{"id":"171","code":"FORM_GROUP_TITLE","type":"FORM","formId":"score_check_title","formName":"score_check_title","title":"分数复核","inputType":"STRING","required":false,"readable":true,"writable":false,"visable":true,"name":"带虚线分割线的标题","span":12},{"id":"172","code":"CHECKBOX","type":"FORM","formId":"score_check_cb","formName":"score_check_cb","title":"分数复核","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"复选框","span":12,"options":"[{\"value\":\"1\",\"label\":\"是否建议学校复核小题0分,大题0分,全卷0分的情况\"}]"},{"id":"173","code":"RADIO","type":"FORM","formId":"school_score_check_radio","formName":"school_score_check_radio","title":"学校是否选择复核","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"单选框","span":12,"options":"[{\"value\":\"YES\",\"label\":\"复核(推荐)\"},{\"value\":\"NO\",\"label\":\"不复核\",\"remark\":[{\"content\":\"若选择该项,则需要学校签字确认,签字随关键节点检查表上传\",\"color\":\"red\"}]}]"},{"id":"175","code":"FORM_GROUP_TITLE","type":"FORM","formId":"paper_form_upload_title","formName":"paper_form_upload_title","title":"纸质表单上传","inputType":"STRING","required":false,"readable":true,"writable":false,"visable":true,"name":"带虚线分割线的标题","span":12},{"id":"176","code":"FILE","type":"FORM","formId":"paper_form_photos","formName":"paper_form_photos","title":"上传关键节点检查表(纸质)拍照","inputType":"ARRAY","required":true,"readable":false,"writable":true,"visable":true,"length":5,"name":"文件","span":12}]

File diff suppressed because it is too large
+ 0 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_mark_final.form


+ 1 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_mark_prep.form

@@ -0,0 +1 @@
+[{"id":"167","code":"FORM_GROUP_TITLE","type":"FORM","formId":"mark_param_check_title","formName":"mark_param_check_title","title":"评卷参数核对","inputType":"STRING","required":false,"readable":true,"writable":false,"visable":true,"name":"带虚线分割线的标题","span":12},{"id":"168","code":"CHECKBOX","type":"FORM","formId":"mark_param_check_cb","formName":"mark_param_check_cb","title":"评卷参数核对","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"复选框","span":12,"options":"[{\"value\":\"1\",\"label\":\"1、核查每个科目的满分是否正确(100分、150分、300分)\"},{\"value\":\"2\",\"label\":\"2、检查所有科目结构和分组是否全部导入。(评卷管理>评卷进度查看分组状态)\"}]"},{"id":"169","code":"FORM_GROUP_TITLE","type":"FORM","formId":"paper_form_upload_title","formName":"paper_form_upload_title","title":"纸质表单上传","inputType":"STRING","required":false,"readable":true,"writable":false,"visable":true,"name":"带虚线分割线的标题","span":12},{"id":"170","code":"FILE","type":"FORM","formId":"paper_form_photos","formName":"paper_form_photos","title":"上传关键节点检查表(纸质)拍照","inputType":"ARRAY","required":true,"readable":false,"writable":true,"visable":true,"length":5,"name":"文件","span":12}]

File diff suppressed because it is too large
+ 0 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_scan_ready.form


+ 1 - 0
sop-api/src/main/resources/cloudMarkSopFlow/cloudmark_sop_start.form

@@ -0,0 +1 @@
+{"approveRejectMap":{"f_usertask_cloudmark_inside_approve_3":[{"afterFlowTaskKey":"f_usertask_cloudmark_information_2","setup":2}]}}

+ 75 - 75
sop-business/src/main/java/com/qmth/sop/business/threadPool/MyThreadPool.java

@@ -1,75 +1,75 @@
-package com.qmth.sop.business.threadPool;//package com.qmth.themis.business.threadPool;
-
-import com.qmth.sop.business.cache.CommonCacheService;
-import com.qmth.sop.business.entity.SysConfig;
-import com.qmth.sop.common.contant.SystemConstant;
-import com.qmth.sop.common.enums.ExceptionResultEnum;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Primary;
-import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
-
-import javax.annotation.Resource;
-import java.util.Objects;
-import java.util.Optional;
-import java.util.concurrent.Executor;
-import java.util.concurrent.ThreadPoolExecutor;
-
-/**
- * @Description: 线程池应用配置
- * @Param:
- * @return:
- * @Author: wangliang
- * @Date: 2019/3/21
- */
-@Configuration
-public class MyThreadPool extends ThreadPoolTaskExecutor {
-    private final static Logger log = LoggerFactory.getLogger(MyThreadPool.class);
-    private MyThreadPool threadPoolTaskExecutor = null;
-    static final int cpuNum = Runtime.getRuntime().availableProcessors();
-
-    @Resource
-    CommonCacheService commonCacheService;
-
-    /**
-     * 线程池
-     *
-     * @return
-     */
-    @Bean
-    @Primary
-    public Executor taskThreadPool() {
-        SysConfig sysConfigCustomThreadPoolCoreSize = commonCacheService.addSysConfigCache(SystemConstant.CUSTOM_THREAD_POOL_CORE_SIZE);
-        Optional.ofNullable(sysConfigCustomThreadPoolCoreSize).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("未配置是否自定义线程池大小"));
-        boolean customThreadPoolCoreSize = Boolean.valueOf(sysConfigCustomThreadPoolCoreSize.getConfigValue());
-
-        SysConfig sysConfigThreadPoolCoreSize = commonCacheService.addSysConfigCache(SystemConstant.THREAD_POOL_CORE_SIZE);
-        Optional.ofNullable(sysConfigThreadPoolCoreSize).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("未配置自定义线程池大小"));
-        Integer threadPoolCoreSize = Integer.valueOf(sysConfigThreadPoolCoreSize.getConfigValue());
-
-        if (Objects.isNull(threadPoolTaskExecutor)) {
-            log.info("cpuNum:{}", cpuNum);
-            threadPoolTaskExecutor = new MyThreadPool();
-            if (!customThreadPoolCoreSize && cpuNum > 0) {
-                threadPoolTaskExecutor.setCorePoolSize(cpuNum);//核心线程数
-                threadPoolTaskExecutor.setMaxPoolSize(cpuNum * 2);//最大线程数
-            } else {
-                threadPoolTaskExecutor.setCorePoolSize(threadPoolCoreSize);//核心线程数
-                threadPoolTaskExecutor.setMaxPoolSize(threadPoolCoreSize * 2);//最大线程数
-            }
-            threadPoolTaskExecutor.setKeepAliveSeconds(SystemConstant.THREAD_POOL_KEEP_ALIVE_SECONDS);//线程空闲时间
-            threadPoolTaskExecutor.setQueueCapacity(SystemConstant.THREAD_POOL_QUEUE_CAPACITY);//队列容量
-            threadPoolTaskExecutor.setThreadNamePrefix(SystemConstant.THREAD_POOL_NAME);
-            threadPoolTaskExecutor.setAllowCoreThreadTimeOut(true);//设置是否允许核心线程超时。若允许,核心线程超时后,会被销毁。默认为不允许(fasle)
-            threadPoolTaskExecutor.setWaitForTasksToCompleteOnShutdown(true);//设置shutdown时是否等到所有任务完成再真正关闭
-            threadPoolTaskExecutor.setAwaitTerminationSeconds(60);//当setWaitForTasksToCompleteOnShutdown(true)时,setAwaitTerminationSeconds 设置在 shutdown 之后最多等待多长时间后再真正关闭线程池
-            // rejection-policy:当pool已经达到max size的时候,如何处理新任务
-            // CALLER_RUNS:不在新线程中执行任务,而是由调用者所在的线程来执行
-            threadPoolTaskExecutor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
-            threadPoolTaskExecutor.initialize();
-        }
-        return threadPoolTaskExecutor;
-    }
-}
+//package com.qmth.sop.business.threadPool;//package com.qmth.themis.business.threadPool;
+//
+//import com.qmth.sop.business.cache.CommonCacheService;
+//import com.qmth.sop.business.entity.SysConfig;
+//import com.qmth.sop.common.contant.SystemConstant;
+//import com.qmth.sop.common.enums.ExceptionResultEnum;
+//import org.slf4j.Logger;
+//import org.slf4j.LoggerFactory;
+//import org.springframework.context.annotation.Bean;
+//import org.springframework.context.annotation.Configuration;
+//import org.springframework.context.annotation.Primary;
+//import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
+//
+//import javax.annotation.Resource;
+//import java.util.Objects;
+//import java.util.Optional;
+//import java.util.concurrent.Executor;
+//import java.util.concurrent.ThreadPoolExecutor;
+//
+///**
+// * @Description: 线程池应用配置
+// * @Param:
+// * @return:
+// * @Author: wangliang
+// * @Date: 2019/3/21
+// */
+//@Configuration
+//public class MyThreadPool extends ThreadPoolTaskExecutor {
+//    private final static Logger log = LoggerFactory.getLogger(MyThreadPool.class);
+//    private MyThreadPool threadPoolTaskExecutor = null;
+//    static final int cpuNum = Runtime.getRuntime().availableProcessors();
+//
+//    @Resource
+//    CommonCacheService commonCacheService;
+//
+//    /**
+//     * 线程池
+//     *
+//     * @return
+//     */
+//    @Bean
+//    @Primary
+//    public Executor taskThreadPool() {
+//        SysConfig sysConfigCustomThreadPoolCoreSize = commonCacheService.addSysConfigCache(SystemConstant.CUSTOM_THREAD_POOL_CORE_SIZE);
+//        Optional.ofNullable(sysConfigCustomThreadPoolCoreSize).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("未配置是否自定义线程池大小"));
+//        boolean customThreadPoolCoreSize = Boolean.valueOf(sysConfigCustomThreadPoolCoreSize.getConfigValue());
+//
+//        SysConfig sysConfigThreadPoolCoreSize = commonCacheService.addSysConfigCache(SystemConstant.THREAD_POOL_CORE_SIZE);
+//        Optional.ofNullable(sysConfigThreadPoolCoreSize).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("未配置自定义线程池大小"));
+//        Integer threadPoolCoreSize = Integer.valueOf(sysConfigThreadPoolCoreSize.getConfigValue());
+//
+//        if (Objects.isNull(threadPoolTaskExecutor)) {
+//            log.info("cpuNum:{}", cpuNum);
+//            threadPoolTaskExecutor = new MyThreadPool();
+//            if (!customThreadPoolCoreSize && cpuNum > 0) {
+//                threadPoolTaskExecutor.setCorePoolSize(cpuNum);//核心线程数
+//                threadPoolTaskExecutor.setMaxPoolSize(cpuNum * 2);//最大线程数
+//            } else {
+//                threadPoolTaskExecutor.setCorePoolSize(threadPoolCoreSize);//核心线程数
+//                threadPoolTaskExecutor.setMaxPoolSize(threadPoolCoreSize * 2);//最大线程数
+//            }
+//            threadPoolTaskExecutor.setKeepAliveSeconds(SystemConstant.THREAD_POOL_KEEP_ALIVE_SECONDS);//线程空闲时间
+//            threadPoolTaskExecutor.setQueueCapacity(SystemConstant.THREAD_POOL_QUEUE_CAPACITY);//队列容量
+//            threadPoolTaskExecutor.setThreadNamePrefix(SystemConstant.THREAD_POOL_NAME);
+//            threadPoolTaskExecutor.setAllowCoreThreadTimeOut(true);//设置是否允许核心线程超时。若允许,核心线程超时后,会被销毁。默认为不允许(fasle)
+//            threadPoolTaskExecutor.setWaitForTasksToCompleteOnShutdown(true);//设置shutdown时是否等到所有任务完成再真正关闭
+//            threadPoolTaskExecutor.setAwaitTerminationSeconds(60);//当setWaitForTasksToCompleteOnShutdown(true)时,setAwaitTerminationSeconds 设置在 shutdown 之后最多等待多长时间后再真正关闭线程池
+//            // rejection-policy:当pool已经达到max size的时候,如何处理新任务
+//            // CALLER_RUNS:不在新线程中执行任务,而是由调用者所在的线程来执行
+//            threadPoolTaskExecutor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
+//            threadPoolTaskExecutor.initialize();
+//        }
+//        return threadPoolTaskExecutor;
+//    }
+//}

Some files were not shown because too many files changed in this diff