Explorar el Código

开项管理 - 台账新增“添加开项”功能
开项管理 - 添加“涉及审计”筛选条件
开项管理 - 台账添加“涉及审计”列
开项管理 - 新增、修改功能“涉及审计”、“涉及章节”、“涉及CODE”联动代码修改

wangggziwen hace 8 meses
padre
commit
31fb00fa79
Se han modificado 1 ficheros con 72 adiciones y 14 borrados
  1. 72 14
      ruoyi-ui/src/views/rc/openitem/index.vue

+ 72 - 14
ruoyi-ui/src/views/rc/openitem/index.vue

@@ -136,16 +136,16 @@
     </el-form>
 
     <el-row :gutter="10" class="mb8">
-      <!--<el-col :span="1.5">-->
-        <!--<el-button-->
-          <!--type="primary"-->
-          <!--plain-->
-          <!--icon="el-icon-plus"-->
-          <!--size="mini"-->
-          <!--@click="handleAdd"-->
-          <!--v-hasPermi="['rc:openitem:add']"-->
-        <!--&gt;新增</el-button>-->
-      <!--</el-col>-->
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['rc:openitem:add']"
+        >添加开项</el-button>
+      </el-col>
       <!--<el-col :span="1.5">-->
         <!--<el-button-->
           <!--type="success"-->
@@ -285,6 +285,36 @@
     <!-- 添加或修改开项对话框 -->
     <el-dialog :close-on-click-modal="false" :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="120px">
+        <el-form-item label="涉及审计" prop="auditId" v-if="!form.id">
+          <el-select clearable v-model="form.auditId" placeholder="请选择涉及审计" filterable @change="handleAuditChange">
+            <el-option
+              v-for="dict in auditOptions"
+              :key="dict.dictValue"
+              :label="dict.dictLabel"
+              :value="dict.dictValue"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="涉及章节" prop="chapterId" v-if="!form.id">
+          <el-select clearable v-model="form.chapterId" placeholder="请选择涉及章节" filterable @change="handleChapterChange">
+            <el-option
+              v-for="dict in chapterOptions"
+              :key="dict.dictValue"
+              :label="dict.dictLabel"
+              :value="dict.dictValue"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="涉及CODE" prop="questionnaireId" v-if="!form.id">
+          <el-select clearable v-model="form.questionnaireId" placeholder="请选择涉及CODE" filterable>
+            <el-option
+              v-for="dict in questionnaireOptions"
+              :key="dict.dictValue"
+              :label="dict.dictLabel"
+              :value="dict.dictValue"
+            ></el-option>
+          </el-select>
+        </el-form-item>
         <el-form-item label="问题类型" prop="type">
           <el-select v-model="form.type" placeholder="请选择问题类型">
             <el-option
@@ -295,9 +325,6 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <!--<el-form-item label="涉及整改code" prop="questionnaireId">-->
-          <!--<el-input v-model="form.questionnaireId" placeholder="请输入涉及整改code" />-->
-        <!--</el-form-item>-->
         <el-form-item label="存在问题描述" prop="description">
           <el-input v-model="form.description" type="textarea" placeholder="请输入内容" />
         </el-form-item>
@@ -402,6 +429,7 @@ import { listOpenitem, getOpenitem, delOpenitem, addOpenitem, updateOpenitem } f
 import { listDept } from "@/api/system/dept";
 import { listAllUser } from "@/api/system/user";
 import { listAllAudit, getRecentAudit } from "@/api/rc/audit";
+import { listMeeting, getMeeting, delMeeting, addMeeting, updateMeeting, listChapter, listCode } from "@/api/rc/meeting";
 
 export default {
   name: "Openitem",
@@ -448,6 +476,12 @@ export default {
       form: {},
       // 表单校验
       rules: {
+        personInCharge: [{required: true, message: "负责人不可为空", trigger: "blur"}],
+        reviewer: [{required: true, message: "审核人不可为空", trigger: "blur"}],
+        chapterId: [{required: true, message: "涉及章节不可为空", trigger: "blur"}],
+        questionnaireId: [{required: true, message: "涉及CODE不可为空", trigger: "blur"}],
+        deptId: [{required: true, message: "装置不可为空", trigger: "blur"}],
+        auditId: [{required: true, message: "涉及审计不可为空", trigger: "blur"}],
       },
       // 装置列表
       deptOptions: [],
@@ -455,6 +489,8 @@ export default {
       userOptions: [],
       // 审计列表
       auditOptions: [],
+      chapterOptions: [],
+      questionnaireOptions: [],
       recentAudit: null,
     };
   },
@@ -466,6 +502,27 @@ export default {
     this.getUserList();
   },
   methods: {
+    handleAuditChange() {
+      this.chapterOptions = [];
+      this.form.chapterId = null;
+      this.form.questionnaireId = null;
+      listChapter(this.form.auditId).then(response => {
+        let data = response.data;
+        for (let i = 0; i < data.length; i++) {
+          this.chapterOptions.push({"dictLabel": data[i].code + " - " + data[i].name, "dictValue": data[i].id});
+        }
+      });
+    },
+    handleChapterChange() {
+      this.questionnaireOptions = [];
+      this.form.questionnaireId = null;
+      listCode(this.form.chapterId).then(response => {
+        let data = response.data;
+        for (let i = 0; i < data.length; i++) {
+          this.questionnaireOptions.push({"dictLabel": data[i].directory + " - " + data[i].code, "dictValue": data[i].id});
+        }
+      });
+    },
     /** 查询当前年份审计装置列表 */
     getRecentAudit() {
       getRecentAudit().then(response => {
@@ -551,7 +608,8 @@ export default {
         result: null,
         deadline: null,
         remarks: null,
-        deptId: null
+        deptId: null,
+        auditId: this.recentAudit.id,
       };
       this.resetForm("form");
     },