소스 검색

feat: 导入添加审批时间关联字段

wuwenyi 6 일 전
부모
커밋
f08c528992
2개의 변경된 파일13개의 추가작업 그리고 1개의 파일을 삭제
  1. 10 1
      src/views/flow/designer/DesignerPropertyPanel.vue
  2. 3 0
      src/views/flow/designer/useFlowDesigner.ts

+ 10 - 1
src/views/flow/designer/DesignerPropertyPanel.vue

@@ -1,7 +1,7 @@
 <template>
   <div v-if="selectedNode" class="property-panel">
     <div class="panel-title">节点属性</div>
-    <el-form label-width="80px" size="small">
+    <el-form label-width="100px" size="small">
       <el-form-item label="节点ID">
         <el-input v-model="selectedNode.id" disabled />
       </el-form-item>
@@ -54,6 +54,15 @@
             <el-option label="无" value="" />
           </el-select>
         </el-form-item>
+        <el-form-item>
+          <template #label>
+            审批时间字段
+            <el-tooltip placement="top" content="导入时按此字段的值作为该节点的审批时间,Excel 列名需与此一致">
+              <el-icon style="margin-left: 4px; cursor: help;"><QuestionFilled /></el-icon>
+            </el-tooltip>
+          </template>
+          <el-input v-model="nodeProps.approveTimeField" placeholder="如:审批时间" />
+        </el-form-item>
       </template>
       <template v-if="selectedNode.type === 'condition-node'">
         <div class="panel-title">分支配置</div>

+ 3 - 0
src/views/flow/designer/useFlowDesigner.ts

@@ -125,6 +125,7 @@ export function useFlowDesigner(lfContainer: Ref<HTMLDivElement | undefined>) {
         approveMode: 'or',
         timeoutHours: undefined,
         timeoutAction: 'remind',
+        approveTimeField: '',
       }
     if (type === 'cc-node') return { ccUsers: '' }
     return {}
@@ -142,6 +143,7 @@ export function useFlowDesigner(lfContainer: Ref<HTMLDivElement | undefined>) {
         props.approveMode = nodeProps.approveMode ?? 'or'
         props.timeoutHours = nodeProps.timeoutHours
         props.timeoutAction = nodeProps.timeoutAction ?? 'remind'
+        props.approveTimeField = nodeProps.approveTimeField ?? ''
       } else if (type === 'cc-node') {
         props.ccUsers = nodeProps.ccUsers ?? ''
       }
@@ -171,6 +173,7 @@ export function useFlowDesigner(lfContainer: Ref<HTMLDivElement | undefined>) {
       nodeProps.approveMode = approveMode
       nodeProps.timeoutHours = cloned.timeoutHours ?? undefined
       nodeProps.timeoutAction = cloned.timeoutAction ?? 'remind'
+      nodeProps.approveTimeField = cloned.approveTimeField ?? ''
     } else if (data.type === 'cc-node') {
       nodeProps.ccUsers = cloned.ccUsers ?? ''
     }