From 7ec9f6515694786d3cb85c0ad7992e98ff971944 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期二, 26 十一月 2024 22:40:36 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/views/projectProcess/components/RunProcess.vue            |    1 
 src/views/flowable/definition/index.vue                       |   41 +++++++++++++
 src/api/projectProcess/processConfigInfo.js                   |   20 ++++++
 src/views/flowable/definition/component/EditProcessConfig.vue |  103 ++++++++++++++++++++++++++++++++++
 4 files changed, 164 insertions(+), 1 deletions(-)

diff --git a/src/api/projectProcess/processConfigInfo.js b/src/api/projectProcess/processConfigInfo.js
new file mode 100644
index 0000000..709f894
--- /dev/null
+++ b/src/api/projectProcess/processConfigInfo.js
@@ -0,0 +1,20 @@
+import request from '@/utils/request'
+
+// 鑾峰彇娴佺▼绫诲瀷閰嶇疆淇℃伅琛�
+export const getProcessConfigInfoByDeploy = (params) => {
+  return request({
+    url: "/process-config-info",
+    method: "GET",
+    params: params
+  })
+}
+
+// 淇濆瓨娴佺▼绫诲瀷閰嶇疆淇℃伅琛�
+export const saveProcessConfigInfo = (data) => {
+  return request({
+    url: "/process-config-info/",
+    method: "POST",
+    data: data
+  })
+}
+
diff --git a/src/views/flowable/definition/component/EditProcessConfig.vue b/src/views/flowable/definition/component/EditProcessConfig.vue
new file mode 100644
index 0000000..700767b
--- /dev/null
+++ b/src/views/flowable/definition/component/EditProcessConfig.vue
@@ -0,0 +1,103 @@
+<template>
+  <div>
+    <el-dialog
+      :title="`娴佺▼鍩虹閰嶇疆锛歚 + deployName"
+      :visible.sync="processConfigShow"
+      width="500px"
+      :close-on-click-modal="false"
+      :before-close="handleClose">
+
+      <el-form :model="form" :rules="rules" ref="form" label-width="100px" class="demo-ruleForm">
+        <el-form-item label="椤圭洰绫诲瀷" prop="projectType">
+          <el-select v-model="form.projectType" clearable placeholder="璇烽�夋嫨椤圭洰绫诲瀷">
+            <el-option v-for="item in dict.type.sys_project_type" :key="item.value" :label="item.label"
+                       :value="item.value"/>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="璧勯噾绫诲瀷" prop="fundType">
+          <el-select v-model="form.fundType" clearable placeholder="璇烽�夋嫨璧勯噾绫诲瀷">
+            <el-option v-for="item in dict.type.sys_funding_type" :key="item.value" :label="item.label"
+                       :value="item.value"/>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="鎶曡祫绫诲埆" prop="investType">
+          <el-select v-model="form.investType" clearable placeholder="璇烽�夋嫨鎶曡祫绫诲埆">
+            <el-option v-for="item in dict.type.sys_investment_type" :key="item.value" :label="item.label"
+                       :value="item.value"/>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="閲嶇偣鍒嗙被" prop="importanceType">
+          <el-select v-model="form.importanceType" clearable placeholder="璇烽�夋嫨閲嶇偣鍒嗙被">
+            <el-option v-for="item in dict.type.sys_key_categories" :key="item.value" :label="item.label"
+                       :value="item.value"/>
+          </el-select>
+        </el-form-item>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="save">淇濆瓨</el-button>
+        <el-button @click="handleClose">鍙栨秷</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {saveProcessConfigInfo, getProcessConfigInfoByDeploy} from "@/api/projectProcess/processConfigInfo"
+
+export default {
+  dicts: ['sys_project_type', 'sys_key_categories', 'sys_funding_type', 'sys_investment_type'],
+  name: "EditProcessConfig",
+  props: {
+    processConfigShow: {
+      require: true,
+      type: Boolean
+    },
+    deployName: {
+      require: true,
+      type: String
+    },
+    form: {
+      require: true,
+      type: Object
+    }
+  },
+  data() {
+    return {
+      rules: {
+        projectType: [
+          { required: true, message: '璇烽�夋嫨椤圭洰绫诲瀷', trigger: 'change' }
+        ],
+        fundType: [
+          { required: true, message: '璇烽�夎祫閲戠被鍨�', trigger: 'change' }
+        ],
+        investType: [
+          { required: true, message: '璇烽�夋嫨鎶曡祫绫诲埆', trigger: 'change' }
+        ],
+        importanceType: [
+          { required: true, message: '璇烽�夋嫨閲嶇偣鍒嗙被', trigger: 'change' }
+        ],
+      }
+    }
+  },
+  methods: {
+    save() {
+      this.$refs['form'].validate((valid) => {
+        if (valid) {
+          saveProcessConfigInfo(this.form).then(res => {
+            this.$message.success(res.msg)
+            this.handleClose()
+          })
+        }
+      });
+
+    },
+    handleClose() {
+      this.$emit("close")
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/flowable/definition/index.vue b/src/views/flowable/definition/index.vue
index 3c8e449..d8963ad 100644
--- a/src/views/flowable/definition/index.vue
+++ b/src/views/flowable/definition/index.vue
@@ -92,6 +92,7 @@
       <el-table-column label="鎿嶄綔" width="250" fixed="right"class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button @click="handleLoadXml(scope.row)" icon="el-icon-edit-outline" type="text" size="small">璁捐</el-button>
+          <el-button @click="handleConfig(scope.row)" icon="el-icon-edit-outline" type="text" size="small">娴佺▼閰嶇疆</el-button>
           <el-button @click="handleAddForm(scope.row)" icon="el-icon-edit-el-icon-s-promotion" type="text" size="small" v-if="scope.row.formId == null">閰嶇疆涓昏〃鍗�</el-button>
           <el-button @click="handleUpdateSuspensionState(scope.row)" icon="el-icon-video-pause" type="text" size="small" v-if="scope.row.suspensionState === 1">鎸傝捣</el-button>
           <el-button @click="handleUpdateSuspensionState(scope.row)" icon="el-icon-video-play" type="text" size="small" v-if="scope.row.suspensionState === 2">婵�娲�</el-button>
@@ -224,6 +225,11 @@
     <!--      append-to-body>-->
     <!--      <Model :deployId="deployId"/>-->
     <!--    </el-dialog>-->
+
+    <edit-process-config :process-config-show="processConfigShow"
+                         :deploy-name="configDeployName"
+                         :form="configForm"
+                         @close="closeConfig"/>
   </div>
 </template>
 
@@ -242,16 +248,29 @@
 import { getForm, addDeployForm ,listForm } from "@/api/flowable/form";
 import BpmnViewer from '@/components/Process/viewer';
 import Model from './model';
+import EditProcessConfig from '@/views/flowable/definition/component/EditProcessConfig';
+import {getProcessConfigInfoByDeploy} from "@/api/projectProcess/processConfigInfo";
 
 export default {
   name: "Definition",
   dicts: ['sys_process_category'],
   components: {
     BpmnViewer,
-    Model
+    Model,
+    EditProcessConfig
   },
   data() {
     return {
+      configForm: {
+        deployId: '',
+        deployVersion: null,
+        projectType: '', // 椤圭洰绫诲瀷
+        fundType: '',  // 璧勯噾绫诲瀷
+        investType: '',  // 鎶曡祫绫诲埆
+        importanceType: '',  // 閲嶇偣鍒嗙被
+      },
+      processConfigShow: false,  // 淇敼娴佺▼淇℃伅show
+      configDeployName: '',   // 淇敼閰嶇疆鐨勯儴缃插悕绉�
       // 閬僵灞�
       loading: true,
       dialogVisible: false,
@@ -341,6 +360,26 @@
     }
   },
   methods: {
+    closeConfig() {
+      this.processConfigShow = false
+    },
+    handleConfig(row) {
+      const infoArr = row.id.split(":");
+
+      const params = {
+        deployId: infoArr[2],
+        deployVersion: infoArr[1]
+      }
+      getProcessConfigInfoByDeploy(params).then(res => {
+        if (res.data) {
+          this.configForm = res.data
+        }
+      })
+      this.configForm.deployId = infoArr[2]
+      this.configForm.deployVersion = infoArr[1]
+      this.configDeployName = row.name
+      this.processConfigShow = true
+    },
     /** 鏌ヨ娴佺▼瀹氫箟鍒楄〃 */
     getList() {
       this.loading = true;
diff --git a/src/views/projectProcess/components/RunProcess.vue b/src/views/projectProcess/components/RunProcess.vue
index 6bfaa28..27e9699 100644
--- a/src/views/projectProcess/components/RunProcess.vue
+++ b/src/views/projectProcess/components/RunProcess.vue
@@ -4,6 +4,7 @@
       title="娴佺▼鍚姩"
       :visible.sync="show"
       width="750px"
+      :close-on-click-modal="false"
       :before-close="handleClose">
       <div>
         <div style="display: flex; flex-direction: row; justify-content: center; align-items: center;font-size: 24px">

--
Gitblit v1.8.0