Browse Source

项目审核流程配置

yanshichao 1 year ago
parent
commit
e1c43aa91e
1 changed files with 36 additions and 6 deletions
  1. 36 6
      src/views/task/components/project.vue

+ 36 - 6
src/views/task/components/project.vue

@@ -70,12 +70,16 @@
             <el-radio label="1">停用</el-radio>
           </el-radio-group>
         </el-form-item>
-        <el-form-item label="可查看人员" prop="viewable">
+        <el-form-item label="可查看人员" prop="viewable" v-if="form.type==='2'&&form.parentId">
           <dept-user-tree ref="dut" :userList="userList" :multiple="true" @selected="selectCoExecutor"/>
         </el-form-item>
         <el-form-item label="描述" prop="description">
           <rich-text-editor ref="rtEditor" v-model="form.description"></rich-text-editor>
         </el-form-item>
+        <el-form-item label="审核流程" v-if="form.type==='2'&&form.parentId">
+          <audit-module ref="auditModule" :audit-users="auditUsers"
+                        :project-audit-configs="projectAuditConfigs"></audit-module>
+        </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" size="mini" @click="submitForm">确 定</el-button>
@@ -98,12 +102,18 @@
             <el-radio label="1">停用</el-radio>
           </el-radio-group>
         </el-form-item>
-        <el-form-item label="可查看人员" prop="viewable">
+        <el-form-item label="可查看人员" prop="viewable" v-if="form.type==='2'">
           <div>{{ form.viewUserNames }}</div>
         </el-form-item>
         <el-form-item label="描述" prop="description">
           <div v-html="form.description"></div>
         </el-form-item>
+        <el-form-item label="审核流程" v-if="form.type==='2'">
+          <template v-for="(config,index) in form.auditConfigs">
+            <el-tag>{{ config.configCode }}</el-tag>
+            <i class="el-icon-right" v-if="index!=form.auditConfigs.length-1"></i>
+          </template>
+        </el-form-item>
       </el-form>
     </el-dialog>
 
@@ -118,16 +128,18 @@ import {
   addProject,
   updateProject, getProjectTree
 } from "@/api/task/project";
-import {getDeptUserTree} from "@/api/system/user";
+import {getAuditUsers, getDeptUserTree} from "@/api/system/user";
 
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 import DeptUserTree from "@/components/DeptUserTree"
 import RichTextEditor from '@/components/RichTextEditor'
+import AuditModule from '@/views/task/components/auditModule';
+import {projectAuditConfigs} from "@/api/task/task";
 
 export default {
   name: "Project",
-  components: {Treeselect, DeptUserTree, RichTextEditor},
+  components: {Treeselect, DeptUserTree, RichTextEditor, AuditModule},
   data() {
     return {
       projectName: '',
@@ -161,7 +173,8 @@ export default {
       userList: [],
       expandedKeys: [],
       detailOpen: false,
-
+      auditUsers: [],
+      projectAuditConfigs: []
     };
   },
   watch: {
@@ -205,9 +218,11 @@ export default {
     },
     // 取消按钮
     cancel() {
-      this.open = false;
       this.$refs.dut.clearText()
+      this.projectAuditConfigs = []
+      this.auditUsers = []
       this.reset();
+      this.open = false;
     },
     // 表单重置
     reset() {
@@ -267,6 +282,9 @@ export default {
       getDeptUserTree('1').then(res => {
         this.userList = res.data
       })
+      getAuditUsers().then(res => {
+        this.auditUsers = res.data
+      })
     },
     selectCoExecutor(val) {
       this.form.viewable = val.join();
@@ -279,6 +297,12 @@ export default {
         arr.push(getProjectTree().then(response => {
           this.projectOptions = response.data
         }))
+        getAuditUsers().then(res => {
+          this.auditUsers = res.data
+        })
+        projectAuditConfigs({projectId: row.id}).then(res => {
+          this.projectAuditConfigs = res.data
+        })
       }
       arr.push(getDeptUserTree('1').then(res => {
         this.userList = res.data
@@ -296,6 +320,7 @@ export default {
     submitForm() {
       this.$refs["form"].validate(valid => {
         if (valid) {
+          this.form['auditConfigs'] = this.$refs.auditModule.getAuditConfigs()
           if (this.form.id != undefined) {
             if (this.form.id === this.form.parentId) {
               this.$message.error("上级结构不能自身节点")
@@ -391,4 +416,9 @@ export default {
     line-height: 28px;
   }
 }
+
+.el-icon-right {
+  font-weight: bold;
+  margin-right: 5px;
+}
 </style>