Pārlūkot izejas kodu

新增sop系统自动审批

wangliang 1 gadu atpakaļ
vecāks
revīzija
451eff94ed
22 mainītis faili ar 163 papildinājumiem un 185 dzēšanām
  1. 13 3
      sop-business/src/main/java/com/qmth/sop/business/activiti/listener/ProcessEventListener.java
  2. 2 0
      sop-business/src/main/java/com/qmth/sop/business/activiti/service/impl/ActivitiServiceImpl.java
  3. 12 0
      sop-business/src/main/java/com/qmth/sop/business/bean/params/FlowApproveParam.java
  4. 9 0
      sop-business/src/main/java/com/qmth/sop/business/mapper/TFCustomFlowEntityMapper.java
  5. 12 2
      sop-business/src/main/java/com/qmth/sop/business/service/TBSopInfoService.java
  6. 9 0
      sop-business/src/main/java/com/qmth/sop/business/service/TFCustomFlowEntityService.java
  7. 5 1
      sop-business/src/main/java/com/qmth/sop/business/service/impl/TBSopInfoServiceImpl.java
  8. 12 0
      sop-business/src/main/java/com/qmth/sop/business/service/impl/TFCustomFlowEntityServiceImpl.java
  9. 15 0
      sop-business/src/main/resources/mapper/TFCustomFlowEntityMapper.xml
  10. 5 0
      sop-common/src/main/java/com/qmth/sop/common/contant/SystemConstant.java
  11. 68 39
      sop-server/src/main/resources/officeSopFlow.bpmn
  12. BIN
      sop-server/src/main/resources/officeSopFlow.zip
  13. 0 0
      sop-server/src/main/resources/office_sop_first.form
  14. 0 0
      sop-server/src/main/resources/office_sop_information.form
  15. 0 1
      sop-server/src/main/resources/office_sop_inside_approve.form
  16. 1 1
      sop-server/src/main/resources/office_sop_start.form
  17. 0 134
      sop-server/src/main/resources/qualityProblemFlow/qualityProblemFlow.bpmn
  18. 0 1
      sop-server/src/main/resources/qualityProblemFlow/quality_problem_apply.form
  19. 0 0
      sop-server/src/main/resources/qualityProblemFlow/quality_problem_approve.form
  20. 0 1
      sop-server/src/main/resources/qualityProblemFlow/quality_problem_check.form
  21. 0 1
      sop-server/src/main/resources/qualityProblemFlow/quality_problem_start.form
  22. 0 1
      sop-server/src/main/resources/qualityProblemFlow/quality_problem_third_check.form

+ 13 - 3
sop-business/src/main/java/com/qmth/sop/business/activiti/listener/ProcessEventListener.java

@@ -109,6 +109,8 @@ public class ProcessEventListener implements ActivitiEventListener, Serializable
                         SysUser sysUser = (SysUser) taskService.getVariable(task.getId(), SystemConstant.FLOW_SYS_USER);
                         Optional.ofNullable(tfFlowLog).orElseThrow(() -> ExceptionResultEnum.USER_NO_EXISTS.exception());
 
+                        Map<String, Object> map = (Map) taskService.getVariable(task.getId(), SystemConstant.APPROVE_MAP_VAR);
+
                         //此处统一流程节点保存延期预警任务
                         if (tfFlowLog.getApproveOperation() != FlowApproveOperationEnum.DRAFT
                                 && tfFlowLog.getApproveOperation() != FlowApproveOperationEnum.END
@@ -116,17 +118,22 @@ public class ProcessEventListener implements ActivitiEventListener, Serializable
                             List<TSJobRemind> tsJobRemindArrayList = new ArrayList<>();
                             if (Objects.nonNull(task.getAssignee())) {
                                 tsJobRemindArrayList.add(new TSJobRemind(JobQuartzTypeEnum.FLOW, tfCustomFlowEntity.getCode(), Long.parseLong(task.getId()), tfCustomFlow.getType().getTitle() + ";" + task.getName(), JobTypeEnum.AFTER, Long.parseLong(task.getAssignee()), tfFlowLog.getApproveOperation(), sysUser.getId()));
-                                this.sendSopFlowDoneSms(tfCustomFlow.getType(), tfCustomFlowEntity, task.getName(), Long.parseLong(task.getAssignee()));
+                                if (CollectionUtils.isEmpty(map)) {//系统自动提交的不发待办短信
+                                    this.sendSopFlowDoneSms(tfCustomFlow.getType(), tfCustomFlowEntity, task.getName(), Long.parseLong(task.getAssignee()));
+                                    jobRemindService.saveJobRemind(tsJobRemindArrayList);
+                                }
                             } else {
                                 List<IdentityLink> identityLinkList = taskService.getIdentityLinksForTask(task.getId());
                                 if (!CollectionUtils.isEmpty(identityLinkList)) {
                                     for (IdentityLink i : identityLinkList) {
                                         tsJobRemindArrayList.add(new TSJobRemind(JobQuartzTypeEnum.FLOW, tfCustomFlowEntity.getCode(), Long.parseLong(i.getTaskId()), tfCustomFlow.getType().getTitle() + ";" + task.getName(), JobTypeEnum.AFTER, Long.parseLong(i.getUserId()), tfFlowLog.getApproveOperation(), sysUser.getId()));
-                                        this.sendSopFlowDoneSms(tfCustomFlow.getType(), tfCustomFlowEntity, task.getName(), Long.parseLong(i.getUserId()));
+                                        if (CollectionUtils.isEmpty(map)) {//系统自动提交的不发待办短信
+                                            this.sendSopFlowDoneSms(tfCustomFlow.getType(), tfCustomFlowEntity, task.getName(), Long.parseLong(i.getUserId()));
+                                            jobRemindService.saveJobRemind(tsJobRemindArrayList);
+                                        }
                                     }
                                 }
                             }
-                            jobRemindService.saveJobRemind(tsJobRemindArrayList);
                         }
                     }
                 }
@@ -334,6 +341,9 @@ public class ProcessEventListener implements ActivitiEventListener, Serializable
         TFCustomFlowEntityService tfCustomFlowEntityService = SpringContextHolder.getBean(TFCustomFlowEntityService.class);
         if (type == TFCustomTypeEnum.OFFICE_SOP_FLOW || type == TFCustomTypeEnum.CLOUD_MARK_SOP_FLOW) {//发送待审批短信
             FlowTaskSmsResult flowTaskSmsResult = tfCustomFlowEntityService.getFlowTaskRemindSmsInfo(tfCustomFlowEntity.getId(), userId);
+            if (Objects.isNull(flowTaskSmsResult)) {
+                flowTaskSmsResult = tfCustomFlowEntityService.getFlowTaskRemindSmsInfo(tfCustomFlowEntity.getCrmNo(), userId);
+            }
             Optional.ofNullable(flowTaskSmsResult).orElseThrow(() -> ExceptionResultEnum.USER_NO_EXISTS.exception());
             Map<String, Object> templateParam = new HashMap<>();
             templateParam.put("userName", flowTaskSmsResult.getRealName());

+ 2 - 0
sop-business/src/main/java/com/qmth/sop/business/activiti/service/impl/ActivitiServiceImpl.java

@@ -357,6 +357,7 @@ public class ActivitiServiceImpl implements ActivitiService {
                         taskService.setVariable(task.getId(), SystemConstant.FLOW_ENTITY, tfCustomFlowEntity);
                         taskService.setVariable(task.getId(), SystemConstant.FLOW_APPROVE_LOG, tfFlowLog);
                         taskService.setVariable(task.getId(), SystemConstant.FLOW_SYS_USER, sysUser);
+                        taskService.setVariable(task.getId(), SystemConstant.APPROVE_MAP_VAR, flowApproveParam.getVar());
                         taskService.complete(task.getId(), map);
                         if (flowApproveParam.getApprove() == FlowApprovePassEnum.START || flowApproveParam.getApprove() == FlowApprovePassEnum.PASS) {
                             List<Task> tasks = taskService.createTaskQuery().processInstanceId(processFlowId).list();
@@ -390,6 +391,7 @@ public class ActivitiServiceImpl implements ActivitiService {
             map.put(SystemConstant.FLOW_CUSTOM, tfCustomFlow);
             map.put(SystemConstant.FLOW_APPROVE, tfFlowApprove);
             map.put(SystemConstant.FLOW_ENTITY, tfCustomFlowEntity);
+            map.put(SystemConstant.APPROVE_MAP_VAR, flowApproveParam.getVar());
         } catch (Exception e) {
             log.error(SystemConstant.LOG_ERROR, e);
             if (e instanceof ApiException) {

+ 12 - 0
sop-business/src/main/java/com/qmth/sop/business/bean/params/FlowApproveParam.java

@@ -8,6 +8,7 @@ import io.swagger.annotations.ApiModelProperty;
 import javax.validation.constraints.NotNull;
 import java.io.Serializable;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Description: 流程审批param
@@ -44,6 +45,9 @@ public class FlowApproveParam implements Serializable {
     @ApiModelProperty(value = "流程审批意见")
     private String approveRemark;
 
+    @ApiModelProperty(value = "流程变量")
+    private Map<String, Object> var;
+
     public FlowApproveParam() {
 
     }
@@ -88,6 +92,14 @@ public class FlowApproveParam implements Serializable {
         this.formProperties = formProperties;
     }
 
+    public Map<String, Object> getVar() {
+        return var;
+    }
+
+    public void setVar(Map<String, Object> var) {
+        this.var = var;
+    }
+
     public String getCrmNo() {
         return crmNo;
     }

+ 9 - 0
sop-business/src/main/java/com/qmth/sop/business/mapper/TFCustomFlowEntityMapper.java

@@ -33,4 +33,13 @@ public interface TFCustomFlowEntityMapper extends BaseMapper<TFCustomFlowEntity>
      * @return
      */
     FlowTaskSmsResult getFlowTaskRemindSmsInfo(@Param("id") Long id, @Param("userId") Long userId);
+
+    /**
+     * 获取crm单号发送短信内容
+     *
+     * @param crmNo
+     * @param userId
+     * @return
+     */
+    FlowTaskSmsResult getFlowTaskRemindSmsInfoByCrmNo(@Param("crmNo") String crmNo, @Param("userId") Long userId);
 }

+ 12 - 2
sop-business/src/main/java/com/qmth/sop/business/service/TBSopInfoService.java

@@ -7,8 +7,7 @@ import com.qmth.sop.business.bean.params.SopApplyParam;
 import com.qmth.sop.business.bean.params.SopInfoListParam;
 import com.qmth.sop.business.bean.params.SopPublishParam;
 import com.qmth.sop.business.bean.result.FlowTaskResult;
-import com.qmth.sop.business.entity.TBSopInfo;
-import com.qmth.sop.business.entity.TFCustomFlow;
+import com.qmth.sop.business.entity.*;
 import com.qmth.sop.common.enums.FlowApprovePassEnum;
 
 import java.util.List;
@@ -106,4 +105,15 @@ public interface TBSopInfoService extends IService<TBSopInfo> {
      * @return
      */
     List<String> findFlowPassageByCrmNo(String crmNo);
+
+    /**
+     * sop自动审批
+     *
+     * @param tfCustomFlow
+     * @param tfCustomFlowEntity
+     * @param tfFlowApprove
+     * @param tbSopInfoDetail
+     * @param crmNo
+     */
+    public void sopSystemApprove(TFCustomFlow tfCustomFlow, TFCustomFlowEntity tfCustomFlowEntity, TFFlowApprove tfFlowApprove, TBSopInfoDetail tbSopInfoDetail, String crmNo) throws InterruptedException;
 }

+ 9 - 0
sop-business/src/main/java/com/qmth/sop/business/service/TFCustomFlowEntityService.java

@@ -32,4 +32,13 @@ public interface TFCustomFlowEntityService extends IService<TFCustomFlowEntity>
      * @return
      */
     FlowTaskSmsResult getFlowTaskRemindSmsInfo(Long id, Long userId);
+
+    /**
+     * 获取crm单号发送短信内容
+     *
+     * @param crmNo
+     * @param userId
+     * @return
+     */
+    FlowTaskSmsResult getFlowTaskRemindSmsInfo(String crmNo, Long userId);
 }

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 5 - 1
sop-business/src/main/java/com/qmth/sop/business/service/impl/TBSopInfoServiceImpl.java


+ 12 - 0
sop-business/src/main/java/com/qmth/sop/business/service/impl/TFCustomFlowEntityServiceImpl.java

@@ -42,4 +42,16 @@ public class TFCustomFlowEntityServiceImpl extends ServiceImpl<TFCustomFlowEntit
     public FlowTaskSmsResult getFlowTaskRemindSmsInfo(Long id, Long userId) {
         return this.baseMapper.getFlowTaskRemindSmsInfo(id, userId);
     }
+
+    /**
+     * 获取crm单号发送短信内容
+     *
+     * @param crmNo
+     * @param userId
+     * @return
+     */
+    @Override
+    public FlowTaskSmsResult getFlowTaskRemindSmsInfo(String crmNo, Long userId) {
+        return this.baseMapper.getFlowTaskRemindSmsInfoByCrmNo(crmNo, userId);
+    }
 }

+ 15 - 0
sop-business/src/main/resources/mapper/TFCustomFlowEntityMapper.xml

@@ -37,4 +37,19 @@
         where
             tfcfe.id = #{id}
     </select>
+
+    <select id="getFlowTaskRemindSmsInfoByCrmNo" resultType="com.qmth.sop.business.bean.result.FlowTaskSmsResult">
+        select
+            tbc.id as serviceId,
+            tbc.name as serviceName,
+            sc.name as customName,
+            su.real_name as realName,
+            su.mobile_number as mobileNumber
+        from
+            t_b_crm tbc
+            left join sys_custom sc on sc.id = tbc.custom_id
+            left join sys_user su on su.id = #{userId}
+        where
+            tbc.crm_no = #{crmNo} limit 1
+    </select>
 </mapper>

+ 5 - 0
sop-common/src/main/java/com/qmth/sop/common/contant/SystemConstant.java

@@ -100,6 +100,9 @@ public class SystemConstant {
     public static final String LIST_JOIN_SPLIT = ",";
     public static final String JOB_DATA = "jobData";
     public static final String AND = " and ";
+    public static final String APPROVE_MAP_VAR = "approve_map_var";
+    public static final String APPROVE_AUTO = "auto";
+    public static final String SYSTEM_AUTO_APPROVE = "系统自动审批";
 
     /**
      * 流程动态表单字段
@@ -113,6 +116,8 @@ public class SystemConstant {
     public static final String REGION_USER_ID = "region_user_id";
     public static final String ENGINEER_USER_ID = "engineer_user_id";
     public static final String ASSISTANT_ENGINEER_USER_ID = "assistant_engineer_user_id";
+    public static final String APPROVE_RADIO = "approve_radio";
+    public static final String APPROVE_REMARK = "approve_remark";
 
     //质量问题反馈
     public static final String PROBLEM_POINT = "problem_point";

+ 68 - 39
sop-server/src/main/resources/officeSopFlow.bpmn

@@ -1,44 +1,49 @@
 <?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="OFFICE_SOP_FLOW" isExecutable="true" isClosed="false" processType="None">
-    <userTask id="f_usertask_office_inside_approve_3" name="项目内审" activiti:assignee="${assignee3}" activiti:formKey="office_sop_inside_approve.form">
-      <multiInstanceLoopCharacteristics isSequential="false" activiti:collection="${assigneeList3}" activiti:elementVariable="assignee3">
-        <completionCondition>${nrOfCompletedInstances/nrOfInstances==1 || reject3==1}</completionCondition>
-      </multiInstanceLoopCharacteristics>
-    </userTask>
+    <userTask id="f_usertask_office_inside_approve_region_3" name="大区经理内审" activiti:candidateUsers="${assigneeList3}" activiti:formKey="office_sop_inside_approve_region.form"></userTask>
     <endEvent id="f_usertask_office_end_0" name="结束"></endEvent>
     <userTask id="f_usertask_office_information_2" name="项目关键信息" activiti:candidateUsers="${assigneeList2}" activiti:formKey="office_sop_information.form"></userTask>
     <startEvent id="startevent1" name="Start" activiti:formKey="office_sop_start.form"></startEvent>
     <userTask id="f_usertask_office_first_1" name="项目初审" activiti:candidateUsers="${assigneeList1}" activiti:formKey="office_sop_first.form"></userTask>
     <sequenceFlow id="flow6" sourceRef="startevent1" targetRef="f_usertask_office_first_1"></sequenceFlow>
     <sequenceFlow id="flow14" sourceRef="f_usertask_office_first_1" targetRef="f_usertask_office_information_2"></sequenceFlow>
-    <sequenceFlow id="flow20" sourceRef="f_usertask_office_information_2" targetRef="f_usertask_office_inside_approve_3"></sequenceFlow>
-    <userTask id="f_usertask_office_device_out_4" name="设备出库登记" activiti:candidateUsers="${assigneeList4}" activiti:formKey="office_sop_device_out.form"></userTask>
-    <userTask id="f_usertask_office_scan_ready_5" name="扫描准备" activiti:candidateUsers="${assigneeList5}" activiti:formKey="office_sop_scan_ready.form"></userTask>
-    <sequenceFlow id="flow22" sourceRef="f_usertask_office_device_out_4" targetRef="f_usertask_office_scan_ready_5"></sequenceFlow>
-    <userTask id="f_usertask_office_scan_6" name="正式扫描" activiti:candidateUsers="${assigneeList6}" activiti:formKey="office_sop_scan.form"></userTask>
-    <sequenceFlow id="flow23" sourceRef="f_usertask_office_scan_ready_5" targetRef="f_usertask_office_scan_6"></sequenceFlow>
-    <userTask id="f_usertask_office_check_final_7" name="校验收尾" activiti:candidateUsers="${assigneeList7}" activiti:formKey="office_sop_check_final.form"></userTask>
-    <sequenceFlow id="flow24" sourceRef="f_usertask_office_scan_6" targetRef="f_usertask_office_check_final_7"></sequenceFlow>
-    <userTask id="f_usertask_office_mark_prep_8" name="评卷准备" activiti:candidateUsers="${assigneeList8}" activiti:formKey="office_sop_mark_prep.form"></userTask>
-    <sequenceFlow id="flow25" sourceRef="f_usertask_office_check_final_7" targetRef="f_usertask_office_mark_prep_8"></sequenceFlow>
-    <userTask id="f_usertask_office_mark_final_9" name="评卷收尾" activiti:candidateUsers="${assigneeList9}" activiti:formKey="office_sop_mark_final.form"></userTask>
-    <sequenceFlow id="flow26" sourceRef="f_usertask_office_mark_prep_8" targetRef="f_usertask_office_mark_final_9"></sequenceFlow>
-    <userTask id="f_usertask_office_device_in_10" name="设备入库登记" activiti:candidateUsers="${assigneeList10}" activiti:formKey="office_sop_device_in.form"></userTask>
-    <sequenceFlow id="flow28" sourceRef="f_usertask_office_device_in_10" targetRef="f_usertask_office_end_0"></sequenceFlow>
-    <sequenceFlow id="flow29" sourceRef="f_usertask_office_mark_final_9" targetRef="f_usertask_office_device_in_10"></sequenceFlow>
+    <sequenceFlow id="flow20" sourceRef="f_usertask_office_information_2" targetRef="f_usertask_office_inside_approve_region_3"></sequenceFlow>
+    <userTask id="f_usertask_office_device_out_5" name="设备出库登记" activiti:candidateUsers="${assigneeList5}" activiti:formKey="office_sop_device_out.form"></userTask>
+    <userTask id="f_usertask_office_scan_ready_6" name="扫描准备" activiti:candidateUsers="${assigneeList6}" activiti:formKey="office_sop_scan_ready.form"></userTask>
+    <sequenceFlow id="flow22" sourceRef="f_usertask_office_device_out_5" targetRef="f_usertask_office_scan_ready_6"></sequenceFlow>
+    <userTask id="f_usertask_office_scan_7" name="正式扫描" activiti:candidateUsers="${assigneeList7}" activiti:formKey="office_sop_scan.form"></userTask>
+    <sequenceFlow id="flow23" sourceRef="f_usertask_office_scan_ready_6" targetRef="f_usertask_office_scan_7"></sequenceFlow>
+    <userTask id="f_usertask_office_check_final_8" name="校验收尾" activiti:candidateUsers="${assigneeList8}" activiti:formKey="office_sop_check_final.form"></userTask>
+    <sequenceFlow id="flow24" sourceRef="f_usertask_office_scan_7" targetRef="f_usertask_office_check_final_8"></sequenceFlow>
+    <userTask id="f_usertask_office_mark_prep_9" name="评卷准备" activiti:candidateUsers="${assigneeList9}" activiti:formKey="office_sop_mark_prep.form"></userTask>
+    <sequenceFlow id="flow25" sourceRef="f_usertask_office_check_final_8" targetRef="f_usertask_office_mark_prep_9"></sequenceFlow>
+    <userTask id="f_usertask_office_mark_final_10" name="评卷收尾" activiti:candidateUsers="${assigneeList10}" activiti:formKey="office_sop_mark_final.form"></userTask>
+    <sequenceFlow id="flow26" sourceRef="f_usertask_office_mark_prep_9" targetRef="f_usertask_office_mark_final_10"></sequenceFlow>
+    <userTask id="f_usertask_office_device_in_11" name="设备入库登记" activiti:candidateUsers="${assigneeList11}" activiti:formKey="office_sop_device_in.form"></userTask>
+    <sequenceFlow id="flow28" sourceRef="f_usertask_office_device_in_11" targetRef="f_usertask_office_end_0"></sequenceFlow>
+    <sequenceFlow id="flow29" sourceRef="f_usertask_office_mark_final_10" targetRef="f_usertask_office_device_in_11"></sequenceFlow>
     <exclusiveGateway id="exclusivegateway1" name="Exclusive Gateway"></exclusiveGateway>
-    <sequenceFlow id="flow30" sourceRef="f_usertask_office_inside_approve_3" targetRef="exclusivegateway1"></sequenceFlow>
-    <sequenceFlow id="flow31" name="通过" sourceRef="exclusivegateway1" targetRef="f_usertask_office_device_out_4">
-      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_office_device_out_4'}]]></conditionExpression>
-    </sequenceFlow>
+    <sequenceFlow id="flow30" sourceRef="f_usertask_office_inside_approve_region_3" targetRef="exclusivegateway1"></sequenceFlow>
     <sequenceFlow id="flow32" name="驳回" sourceRef="exclusivegateway1" targetRef="f_usertask_office_information_2">
       <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_office_information_2'}]]></conditionExpression>
     </sequenceFlow>
+    <userTask id="f_usertask_office_inside_approve_engineer_4" name="工程师内审" activiti:candidateUsers="${assigneeList4}" activiti:formKey="office_sop_inside_approve_engineer.form"></userTask>
+    <sequenceFlow id="flow33" name="通过" sourceRef="exclusivegateway1" targetRef="f_usertask_office_inside_approve_engineer_4">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_office_inside_approve_engineer_4'}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway2" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow34" sourceRef="f_usertask_office_inside_approve_engineer_4" targetRef="exclusivegateway2"></sequenceFlow>
+    <sequenceFlow id="flow35" name="通过" sourceRef="exclusivegateway2" targetRef="f_usertask_office_device_out_5">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_office_device_out_5'}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow36" name="驳回" sourceRef="exclusivegateway2" targetRef="f_usertask_office_information_2">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_office_information_2'}]]></conditionExpression>
+    </sequenceFlow>
   </process>
   <bpmndi:BPMNDiagram id="BPMNDiagram_OFFICE_SOP_FLOW">
     <bpmndi:BPMNPlane bpmnElement="OFFICE_SOP_FLOW" id="BPMNPlane_OFFICE_SOP_FLOW">
-      <bpmndi:BPMNShape bpmnElement="f_usertask_office_inside_approve_3" id="BPMNShape_f_usertask_office_inside_approve_3">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_inside_approve_region_3" id="BPMNShape_f_usertask_office_inside_approve_region_3">
         <omgdc:Bounds height="55.0" width="85.0" x="470.0" y="20.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape bpmnElement="f_usertask_office_end_0" id="BPMNShape_f_usertask_office_end_0">
@@ -53,30 +58,36 @@
       <bpmndi:BPMNShape bpmnElement="f_usertask_office_first_1" id="BPMNShape_f_usertask_office_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_office_device_out_4" id="BPMNShape_f_usertask_office_device_out_4">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_device_out_5" id="BPMNShape_f_usertask_office_device_out_5">
         <omgdc:Bounds height="55.0" width="85.0" x="638.0" y="140.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_office_scan_ready_5" id="BPMNShape_f_usertask_office_scan_ready_5">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_scan_ready_6" id="BPMNShape_f_usertask_office_scan_ready_6">
         <omgdc:Bounds height="55.0" width="85.0" x="460.0" y="140.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_office_scan_6" id="BPMNShape_f_usertask_office_scan_6">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_scan_7" id="BPMNShape_f_usertask_office_scan_7">
         <omgdc:Bounds height="55.0" width="85.0" x="300.0" y="140.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_office_check_final_7" id="BPMNShape_f_usertask_office_check_final_7">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_check_final_8" id="BPMNShape_f_usertask_office_check_final_8">
         <omgdc:Bounds height="55.0" width="85.0" x="150.0" y="140.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_office_mark_prep_8" id="BPMNShape_f_usertask_office_mark_prep_8">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_mark_prep_9" id="BPMNShape_f_usertask_office_mark_prep_9">
         <omgdc:Bounds height="55.0" width="85.0" x="24.0" y="140.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_office_mark_final_9" id="BPMNShape_f_usertask_office_mark_final_9">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_mark_final_10" id="BPMNShape_f_usertask_office_mark_final_10">
         <omgdc:Bounds height="55.0" width="85.0" x="24.0" y="260.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_office_device_in_10" id="BPMNShape_f_usertask_office_device_in_10">
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_device_in_11" id="BPMNShape_f_usertask_office_device_in_11">
         <omgdc:Bounds height="55.0" width="85.0" x="160.0" y="260.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape bpmnElement="exclusivegateway1" id="BPMNShape_exclusivegateway1">
         <omgdc:Bounds height="40.0" width="40.0" x="660.0" y="27.0"></omgdc:Bounds>
       </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="f_usertask_office_inside_approve_engineer_4" id="BPMNShape_f_usertask_office_inside_approve_engineer_4">
+        <omgdc:Bounds height="55.0" width="85.0" x="770.0" y="20.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="BPMNShape_exclusivegateway2">
+        <omgdc:Bounds height="40.0" width="40.0" x="792.0" y="147.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>
@@ -121,13 +132,6 @@
         <omgdi:waypoint x="555.0" y="47.0"></omgdi:waypoint>
         <omgdi:waypoint x="660.0" y="47.0"></omgdi:waypoint>
       </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow31" id="BPMNEdge_flow31">
-        <omgdi:waypoint x="680.0" y="67.0"></omgdi:waypoint>
-        <omgdi:waypoint x="680.0" y="140.0"></omgdi:waypoint>
-        <bpmndi:BPMNLabel>
-          <omgdc:Bounds height="16.0" width="22.0" x="680.0" y="67.0"></omgdc:Bounds>
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge bpmnElement="flow32" id="BPMNEdge_flow32">
         <omgdi:waypoint x="680.0" y="67.0"></omgdi:waypoint>
         <omgdi:waypoint x="517.0" y="120.0"></omgdi:waypoint>
@@ -137,6 +141,31 @@
           <omgdc:Bounds height="16.0" width="22.0" x="680.0" y="67.0"></omgdc:Bounds>
         </bpmndi:BPMNLabel>
       </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow33" id="BPMNEdge_flow33">
+        <omgdi:waypoint x="700.0" y="47.0"></omgdi:waypoint>
+        <omgdi:waypoint x="770.0" y="47.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="16.0" width="100.0" x="700.0" y="47.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow34" id="BPMNEdge_flow34">
+        <omgdi:waypoint x="812.0" y="75.0"></omgdi:waypoint>
+        <omgdi:waypoint x="812.0" y="147.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow35" id="BPMNEdge_flow35">
+        <omgdi:waypoint x="792.0" y="167.0"></omgdi:waypoint>
+        <omgdi:waypoint x="723.0" y="167.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="16.0" width="100.0" x="792.0" y="167.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow36" id="BPMNEdge_flow36">
+        <omgdi:waypoint x="812.0" y="147.0"></omgdi:waypoint>
+        <omgdi:waypoint x="332.0" y="75.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="16.0" width="100.0" x="812.0" y="147.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
     </bpmndi:BPMNPlane>
   </bpmndi:BPMNDiagram>
 </definitions>

BIN
sop-server/src/main/resources/officeSopFlow.zip


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
sop-server/src/main/resources/office_sop_first.form


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
sop-server/src/main/resources/office_sop_information.form


+ 0 - 1
sop-server/src/main/resources/office_sop_inside_approve.form

@@ -1 +0,0 @@
-[{"id":"51","code":"FORM_GROUP_TITLE","type":"FORM","formId":"inside_title","formName":"inside_title","title":"项目内审(请于24小时内完成内审","inputType":"STRING","required":false,"readable":true,"writable":false,"visable":true,"name":"带虚线分割线的标题","span":12},{"id":"52","code":"RADIO","type":"FORM","formId":"approve_radio","formName":"approve_radio","title":"我对以上项目关键信息已审核,确认内容无误:","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"单选框","span":12,"options":"[{\"value\":\"1\",\"label\":\"同意\"},{\"value\":\"0\",\"label\":\"不同意\"}]"},{"id":"53","code":"SIGN","type":"FORM","formId":"sign","formName":"sign","title":"添加签名","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"签名","span":6},{"id":"54","code":"TEXTAREA","type":"FORM","formId":"approve_ramark","formName":"approve_ramark","title":"审批意见","inputType":"STRING","required":false,"readable":false,"writable":true,"visable":true,"name":"文本域","span":12}]

+ 1 - 1
sop-server/src/main/resources/office_sop_start.form

@@ -1 +1 @@
-{"approveRejectMap":{"f_usertask_office_inside_approve_3":[{"afterFlowTaskKey":"f_usertask_office_information_2","setup":2}]}}
+{"approveRejectMap":{"f_usertask_office_inside_approve_region_3":[{"afterFlowTaskKey":"f_usertask_office_information_2","setup":2}],"f_usertask_office_inside_approve_engineer_4":[{"afterFlowTaskKey":"f_usertask_office_information_2","setup":2}]}}

+ 0 - 134
sop-server/src/main/resources/qualityProblemFlow/qualityProblemFlow.bpmn

@@ -1,134 +0,0 @@
-<?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="QUALITY_PROBLEM_FLOW" isExecutable="true" isClosed="false" processType="None">
-    <userTask id="f_usertask_quality_problem_approve_2" name="质量问题初审" activiti:candidateUsers="${assigneeList2}" activiti:formKey="quality_problem_approve.form"></userTask>
-    <startEvent id="startevent1" name="Start" activiti:formKey="quality_problem_start.form"></startEvent>
-    <userTask id="f_usertask_quality_problem_apply_1" name="质量问题上报" activiti:candidateUsers="${assigneeList1}" activiti:formKey="quality_problem_apply.form"></userTask>
-    <sequenceFlow id="flow6" sourceRef="startevent1" targetRef="f_usertask_quality_problem_apply_1"></sequenceFlow>
-    <exclusiveGateway id="exclusivegateway2" name="Exclusive Gateway"></exclusiveGateway>
-    <sequenceFlow id="flow15" name="驳回" sourceRef="exclusivegateway2" targetRef="f_usertask_quality_problem_apply_1">
-      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_quality_problem_apply_1'}]]></conditionExpression>
-    </sequenceFlow>
-    <userTask id="f_usertask_quality_problem_check_3" name="甲方复核" activiti:candidateUsers="${assigneeList3}" activiti:formKey="quality_problem_check.form"></userTask>
-    <sequenceFlow id="flow17" name="通过" sourceRef="exclusivegateway2" targetRef="f_usertask_quality_problem_check_3">
-      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_quality_problem_check_3'}]]></conditionExpression>
-    </sequenceFlow>
-    <exclusiveGateway id="exclusivegateway3" name="Exclusive Gateway"></exclusiveGateway>
-    <sequenceFlow id="flow18" sourceRef="f_usertask_quality_problem_check_3" targetRef="exclusivegateway3"></sequenceFlow>
-    <sequenceFlow id="flow19" name="驳回" sourceRef="exclusivegateway3" targetRef="f_usertask_quality_problem_approve_2">
-      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_quality_problem_approve_2'}]]></conditionExpression>
-    </sequenceFlow>
-    <userTask id="f_usertask_quality_problem_third_check_4" name="乙方复核" activiti:candidateUsers="${assigneeList4}" activiti:formKey="quality_problem_third_check.form"></userTask>
-    <sequenceFlow id="flow20" name="通过" sourceRef="exclusivegateway3" targetRef="f_usertask_quality_problem_third_check_4">
-      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_quality_problem_third_check_4'}]]></conditionExpression>
-    </sequenceFlow>
-    <exclusiveGateway id="exclusivegateway4" name="Exclusive Gateway"></exclusiveGateway>
-    <sequenceFlow id="flow21" sourceRef="f_usertask_quality_problem_third_check_4" targetRef="exclusivegateway4"></sequenceFlow>
-    <sequenceFlow id="flow22" name="驳回" sourceRef="exclusivegateway4" targetRef="f_usertask_quality_problem_approve_2">
-      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_quality_problem_approve_2'}]]></conditionExpression>
-    </sequenceFlow>
-    <endEvent id="f_usertask_quality_problem_end_0" name="结束"></endEvent>
-    <sequenceFlow id="flow23" name="通过" sourceRef="exclusivegateway4" targetRef="f_usertask_quality_problem_end_0">
-      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${approve == 'f_usertask_quality_problem_end_0'}]]></conditionExpression>
-    </sequenceFlow>
-    <sequenceFlow id="flow24" sourceRef="f_usertask_quality_problem_apply_1" targetRef="f_usertask_quality_problem_approve_2"></sequenceFlow>
-    <sequenceFlow id="flow25" sourceRef="f_usertask_quality_problem_approve_2" targetRef="exclusivegateway2"></sequenceFlow>
-  </process>
-  <bpmndi:BPMNDiagram id="BPMNDiagram_QUALITY_PROBLEM_FLOW">
-    <bpmndi:BPMNPlane bpmnElement="QUALITY_PROBLEM_FLOW" id="BPMNPlane_QUALITY_PROBLEM_FLOW">
-      <bpmndi:BPMNShape bpmnElement="f_usertask_quality_problem_approve_2" id="BPMNShape_f_usertask_quality_problem_approve_2">
-        <omgdc:Bounds height="55.0" width="85.0" x="450.0" y="130.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
-        <omgdc:Bounds height="35.0" width="35.0" x="240.0" y="40.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_quality_problem_apply_1" id="BPMNShape_f_usertask_quality_problem_apply_1">
-        <omgdc:Bounds height="55.0" width="85.0" x="215.0" y="130.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="BPMNShape_exclusivegateway2">
-        <omgdc:Bounds height="40.0" width="40.0" x="472.0" y="240.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_quality_problem_check_3" id="BPMNShape_f_usertask_quality_problem_check_3">
-        <omgdc:Bounds height="55.0" width="105.0" x="440.0" y="330.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="exclusivegateway3" id="BPMNShape_exclusivegateway3">
-        <omgdc:Bounds height="40.0" width="40.0" x="680.0" y="337.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_quality_problem_third_check_4" id="BPMNShape_f_usertask_quality_problem_third_check_4">
-        <omgdc:Bounds height="55.0" width="105.0" x="648.0" y="480.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="exclusivegateway4" id="BPMNShape_exclusivegateway4">
-        <omgdc:Bounds height="40.0" width="40.0" x="472.0" y="487.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape bpmnElement="f_usertask_quality_problem_end_0" id="BPMNShape_f_usertask_quality_problem_end_0">
-        <omgdc:Bounds height="35.0" width="35.0" x="475.0" y="590.0"></omgdc:Bounds>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
-        <omgdi:waypoint x="257.0" y="75.0"></omgdi:waypoint>
-        <omgdi:waypoint x="257.0" y="130.0"></omgdi:waypoint>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow15" id="BPMNEdge_flow15">
-        <omgdi:waypoint x="472.0" y="260.0"></omgdi:waypoint>
-        <omgdi:waypoint x="257.0" y="260.0"></omgdi:waypoint>
-        <omgdi:waypoint x="257.0" y="185.0"></omgdi:waypoint>
-        <bpmndi:BPMNLabel>
-          <omgdc:Bounds height="16.0" width="22.0" x="472.0" y="260.0"></omgdc:Bounds>
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow17" id="BPMNEdge_flow17">
-        <omgdi:waypoint x="492.0" y="280.0"></omgdi:waypoint>
-        <omgdi:waypoint x="492.0" y="330.0"></omgdi:waypoint>
-        <bpmndi:BPMNLabel>
-          <omgdc:Bounds height="16.0" width="22.0" x="492.0" y="280.0"></omgdc:Bounds>
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow18" id="BPMNEdge_flow18">
-        <omgdi:waypoint x="545.0" y="357.0"></omgdi:waypoint>
-        <omgdi:waypoint x="680.0" y="357.0"></omgdi:waypoint>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow19" id="BPMNEdge_flow19">
-        <omgdi:waypoint x="700.0" y="337.0"></omgdi:waypoint>
-        <omgdi:waypoint x="699.0" y="157.0"></omgdi:waypoint>
-        <omgdi:waypoint x="535.0" y="157.0"></omgdi:waypoint>
-        <bpmndi:BPMNLabel>
-          <omgdc:Bounds height="16.0" width="22.0" x="700.0" y="337.0"></omgdc:Bounds>
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow20" id="BPMNEdge_flow20">
-        <omgdi:waypoint x="700.0" y="377.0"></omgdi:waypoint>
-        <omgdi:waypoint x="700.0" y="480.0"></omgdi:waypoint>
-        <bpmndi:BPMNLabel>
-          <omgdc:Bounds height="16.0" width="22.0" x="700.0" y="377.0"></omgdc:Bounds>
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow21" id="BPMNEdge_flow21">
-        <omgdi:waypoint x="648.0" y="507.0"></omgdi:waypoint>
-        <omgdi:waypoint x="512.0" y="507.0"></omgdi:waypoint>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow22" id="BPMNEdge_flow22">
-        <omgdi:waypoint x="472.0" y="507.0"></omgdi:waypoint>
-        <omgdi:waypoint x="202.0" y="506.0"></omgdi:waypoint>
-        <omgdi:waypoint x="202.0" y="239.0"></omgdi:waypoint>
-        <omgdi:waypoint x="492.0" y="185.0"></omgdi:waypoint>
-        <bpmndi:BPMNLabel>
-          <omgdc:Bounds height="16.0" width="22.0" x="472.0" y="507.0"></omgdc:Bounds>
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow23" id="BPMNEdge_flow23">
-        <omgdi:waypoint x="492.0" y="527.0"></omgdi:waypoint>
-        <omgdi:waypoint x="492.0" y="590.0"></omgdi:waypoint>
-        <bpmndi:BPMNLabel>
-          <omgdc:Bounds height="16.0" width="22.0" x="492.0" y="527.0"></omgdc:Bounds>
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow24" id="BPMNEdge_flow24">
-        <omgdi:waypoint x="300.0" y="157.0"></omgdi:waypoint>
-        <omgdi:waypoint x="450.0" y="157.0"></omgdi:waypoint>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge bpmnElement="flow25" id="BPMNEdge_flow25">
-        <omgdi:waypoint x="492.0" y="185.0"></omgdi:waypoint>
-        <omgdi:waypoint x="492.0" y="240.0"></omgdi:waypoint>
-      </bpmndi:BPMNEdge>
-    </bpmndi:BPMNPlane>
-  </bpmndi:BPMNDiagram>
-</definitions>

+ 0 - 1
sop-server/src/main/resources/qualityProblemFlow/quality_problem_apply.form

@@ -1 +0,0 @@
-[{"id":"1","code":"TEXT","type":"FORM","formId":"problem_point","formName":"problem_point","title":"问题简要","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"length":30,"name":"文本","span":12},{"id":"2","code":"TEXTAREA","type":"FORM","formId":"problem_remark","formName":"problem_remark","title":"问题情况说明","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"length":300,"name":"文本域","span":12},{"id":"3","code":"FILE","type":"FORM","formId":"attachments_info","formName":"attachments_info","title":"附件说明","inputType":"FILE","required":false,"readable":false,"writable":true,"visable":true,"length":3,"name":"文件","span":12}]

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
sop-server/src/main/resources/qualityProblemFlow/quality_problem_approve.form


+ 0 - 1
sop-server/src/main/resources/qualityProblemFlow/quality_problem_check.form

@@ -1 +0,0 @@
-[{"id":"12","code":"RADIO","type":"FORM","formId":"approve_radio","formName":"approve_radio","title":"审批意见","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"单选框","span":12,"options":"[{\"value\":\"1\",\"label\":\"同意\"},{\"value\":\"0\",\"label\":\"不同意\"}]"},{"id":"13","code":"SIGN","type":"FORM","formId":"sign","formName":"sign","title":"添加签名","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"签名","span":6},{"id":"14","code":"TEXTAREA","type":"FORM","formId":"approve_remark","formName":"approve_remark","title":"备注","inputType":"STRING","required":false,"readable":false,"writable":true,"visable":true,"name":"文本域","span":12}]

+ 0 - 1
sop-server/src/main/resources/qualityProblemFlow/quality_problem_start.form

@@ -1 +0,0 @@
-{"approveRejectMap":{"f_usertask_quality_problem_approve_2":[{"afterFlowTaskKey":"f_usertask_quality_problem_apply_1","setup":1}],"f_usertask_quality_problem_check_3":[{"afterFlowTaskKey":"f_usertask_quality_problem_approve_2","setup":2}],"f_usertask_quality_problem_third_check_4":[{"afterFlowTaskKey":"f_usertask_quality_problem_approve_2","setup":2}]}}

+ 0 - 1
sop-server/src/main/resources/qualityProblemFlow/quality_problem_third_check.form

@@ -1 +0,0 @@
-[{"id":"15","code":"RADIO","type":"FORM","formId":"approve_radio","formName":"approve_radio","title":"审批意见","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"单选框","span":12,"options":"[{\"value\":\"1\",\"label\":\"同意\"},{\"value\":\"0\",\"label\":\"不同意\"}]"},{"id":"16","code":"SIGN","type":"FORM","formId":"sign","formName":"sign","title":"添加签名","inputType":"STRING","required":true,"readable":false,"writable":true,"visable":true,"name":"签名","span":6},{"id":"17","code":"TEXTAREA","type":"FORM","formId":"approve_remark","formName":"approve_remark","title":"备注","inputType":"STRING","required":false,"readable":false,"writable":true,"visable":true,"name":"文本域","span":12}]

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels