Selaa lähdekoodia

调整 参与预案演练库界面, 机构、用户 显示 机构简称

zhulu 2 vuotta sitten
vanhempi
commit
131b53e5fb

+ 44 - 18
src/views/core/drill/drillDictionary/index.vue

@@ -56,6 +56,8 @@
 
         <el-table v-loading="loading" :data="drillDictionaryList" @selection-change="handleSelectionChange">
           <el-table-column label="编号" align="center" prop="id"/>
+          <el-table-column label="机构名称" align="center" prop="orgName" />           
+          
           <el-table-column label="演练类型" align="center" prop="drillType">
             <template slot-scope="scope">
               <dict-tag :options="dict.type.core_drill_type" :value="scope.row.drillType"/>
@@ -77,18 +79,20 @@
                 size="mini"
                 type="text"
                 icon="el-icon-edit"
+                v-if="canEdit(scope.row)"
                 @click="handleUpdate(scope.row)"
                 v-hasPermi="['core:drillDictionary:edit']"
               >修改
               </el-button>
-              <el-button
+              <BtnTip
                 size="mini"
                 type="text"
                 icon="el-icon-delete"
+                v-if="canDelete(scope.row)"
                 @click="handleDelete(scope.row)"
                 v-hasPermi="['core:drillDictionary:remove']"
               >删除
-              </el-button>
+              </BtnTip>
             </template>
           </el-table-column>
         </el-table>
@@ -103,10 +107,10 @@
       </el-col>
     </el-row>
     <!-- 添加或修改预案演练库对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+    <DialogCom :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-form-item label="演练类型" prop="drillType">
-          <el-select v-model="form.drillType" placeholder="请选择演练类型">
+        <el-form-item label="演练类型" prop="drillType" style="width:100%;">
+          <el-select v-model="form.drillType" placeholder="请选择演练类型" style="width:100%;">
             <el-option
               v-for="dict in dict.type.core_drill_type"
               :key="dict.value"
@@ -116,17 +120,18 @@
           </el-select>
         </el-form-item>
         <el-form-item label="解决方案" prop="drillProjects">
-          <el-input v-model="form.drillProjects" type="textarea" placeholder="请输入内容"/>
+          <el-input v-model="form.drillProjects" maxlength="50"  placeholder="请输入解决方案"/>
         </el-form-item>
         <el-form-item label="预设案由" prop="defaultCause">
-          <el-input v-model="form.defaultCause" type="textarea" placeholder="请输入内容"/>
+          <el-input v-model="form.defaultCause" maxlength="2000" :rows="6" 
+  show-word-limit type="textarea" placeholder="请输入预设案由"/>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>
         <el-button @click="cancel">取 消</el-button>
       </div>
-    </el-dialog>
+    </DialogCom>
   </div>
 
 </template>
@@ -140,13 +145,13 @@ import {
   updateDrillDictionary
 } from "@/api/core/drill/drillDictionary";
 import OrgTree from "@/components/orgTree";
-import kOrgTree from "@/components/k-orgTree";
+import BtnTip from "@/components/btnTip";
 import KFileUpload from "@/components/K-FileUpload";
 import tableList from "@/mixins/tableList";
 import {queryKnowledgeList} from "@/api/core/edu/knowledge";
 export default {
   name: "DrillDictionary",
-  components: {OrgTree},
+  components: {OrgTree,BtnTip},
   dicts: ['core_drill_type'],
   mixins: [tableList],
   data() {
@@ -177,15 +182,20 @@ export default {
         drillTypeName: null,
         drillProjects: null,
         defaultCause: null,
+        checkSub:true
       },
       // 表单参数
       form: {},
       // 表单校验
-      rules: {}
+      rules: {
+        drillType: [{ required: true, message: "请选择演练类型" }],
+        drillProjects: [{ required: true, message: "请输入解决方案名称" }],
+        defaultCause: [{ required: true, message: "请输入预设案由" }],
+      }
     };
   },
   created() {
-    this.getList();
+    // this.getList();
   },
   methods: {
     /** 查询预案演练库列表 */
@@ -210,6 +220,7 @@ export default {
         drillType: null,
         drillProjects: null,
         defaultCause: null,
+        checkSub:true,
       };
       this.resetForm("form");
     },
@@ -253,7 +264,11 @@ export default {
     handleAdd() {
       this.reset();
       this.open = true;
-      this.title = "添加预案演练库";
+      this.title = "添加参考预案演练库";
+    },
+    canEdit(row)
+    {
+      return row.orgId == this.$store.getters.orgId;
     },
     /** 修改按钮操作 */
     handleUpdate(row) {
@@ -262,7 +277,7 @@ export default {
       getDrillDictionary(id).then(response => {
         this.form = response.data;
         this.open = true;
-        this.title = "修改预案演练库";
+        this.title = "修改参考预案演练库";
       });
     },
     /** 提交按钮 */
@@ -285,16 +300,27 @@ export default {
         }
       });
     },
+    canDelete(row)
+    {
+      return row.orgId == this.$store.getters.orgId;
+    },
+    
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除预案演练库编号为"' + ids + '"的数据项?').then(function () {
-        return delDrillDictionary(ids);
-      }).then(() => {
+      delDrillDictionary(ids).then(response => {
         this.getList();
         this.$modal.msgSuccess("删除成功");
-      }).catch(() => {
+    }).catch(() => {
+        this.$modal.msgSuccess("删除失败");
       });
+      // this.$modal.confirm('是否确认删除预案演练库编号为"' + ids + '"的数据项?').then(function () {
+      //   return delDrillDictionary(ids);
+      // }).then(() => {
+      //   this.getList();
+      //   this.$modal.msgSuccess("删除成功");
+      // }).catch(() => {
+      // });
     },
     /** 导出按钮操作 */
     handleExport() {

+ 15 - 15
src/views/core/drill/plan/index.vue

@@ -9,10 +9,10 @@
       <!--搜索栏-->
       <el-col :span="20" :xs="24">
         <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
-                 label-width="68px">
+                 label-width="100px">
 
-          <el-form-item label="机构类型" prop="execOrgType">
-            <el-select v-model="queryParams.execOrgType" placeholder="请选择执行机构类型" clearable>
+          <el-form-item label="演练机构类型" prop="execOrgType">
+            <el-select v-model="queryParams.execOrgType" placeholder="请选择演练机构类型" clearable>
               <el-option v-for="dict in dict.type.sys_org_type" :key="dict.value" :label="dict.label"
                          :value="dict.value"/>
             </el-select>
@@ -55,21 +55,21 @@
           <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
         </el-row>
 
-        <el-table max-height="550px" :data="planList" @selection-change="handleSelectionChange" row-key="id"
+        <el-table max-height="550px" border :data="planList" @selection-change="handleSelectionChange" row-key="id"
                   :tree-props="{ children: 'children' }">
-          <el-table-column label="序号" align="center" prop="no"/>
-          <el-table-column label="计划名称" align="center" prop="planName"/>
-          <el-table-column label="计划创建机构" align="center" prop="createOrgName"/>
-          <el-table-column label="计划所属机构" align="center" prop="belongOrgName"/>
-          <el-table-column label="演练机构类型" align="center" prop="execOrgType">
+          <el-table-column label="序号" align="center" width="60" prop="no"/>
+          <el-table-column label="计划名称" align="center" width="200" prop="planName"/>
+          <el-table-column label="计划创建机构" align="center" width="180" prop="createOrgName"/>
+          <el-table-column label="计划所属机构" align="center" width="180" prop="belongOrgName"/>
+          <el-table-column label="演练机构类型" align="center" width="120" prop="execOrgType">
             <template slot-scope="scope">
               <dict-tag :options="dict.type.sys_org_type" :value="scope.row.execOrgType"/>
             </template>
           </el-table-column>
-          <el-table-column prop="planRoleNameList" label="演练角色">
+          <el-table-column prop="planRoleNameList" label="演练角色" width="200" >
             <template slot-scope="scope">
               <template v-if="scope.row.planRoleNameList">
-                <el-tag size="mini" type="success"
+                <el-tag size="mini" type="success" style="margin-right: 5px;"
                         v-for="(item, index) in (scope.row.planRoleNameList || '').split(',')"
                         :key="index">
                   {{ item }}
@@ -85,15 +85,15 @@
               <dict-tag :options="dict.type.drill_plan_cycle" :value="scope.row.planCycle"/>
             </template>
           </el-table-column>
-          <el-table-column label="演练次数" align="center" prop="execTimes"/>
-          <el-table-column label="备注" align="center" prop="remark"/>
-          <el-table-column label="修改人" align="center" prop="updateBy"/>
           <el-table-column label="计划状态" align="center" prop="planStatus">
             <template slot-scope="scope">
               <dict-tag :options="dict.type.plan_status" :value="scope.row.planStatus"/>
             </template>
           </el-table-column>
-          <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+          <el-table-column label="演练次数" align="center" prop="execTimes"/>
+          <el-table-column label="备注" align="center" prop="remark"/>
+          <el-table-column label="修改人" align="center" width="100" prop="updateBy"/>        
+          <el-table-column label="操作" align="center" width="180" fixed="right" class-name="small-padding fixed-width">
             <template slot-scope="scope">
               <el-button v-if="checkCanPublish(scope.row)" size="mini" type="text" icon="el-icon-edit"
                          @click="handlePublish(scope.row)" v-hasPermi="['core:plan:publish']">下发

+ 22 - 13
src/views/system/dept/index.vue

@@ -145,7 +145,7 @@
             </template>
           </el-table-column>
           <el-table-column
-            prop="name"
+            prop="shortName"
             label="机构名称"
             min-width="200"
           ></el-table-column>
@@ -281,7 +281,7 @@
               <treeselect
                 v-model="form.parentId"
                 :options="deptOptions2"
-                :normalizer="normalizer"
+                :normalizer="tenantIdnormalizer"
                 placeholder="选择上级机构"
               />
             </el-form-item>
@@ -297,6 +297,15 @@
               />
             </el-form-item>
           </el-col>
+          <el-col :span="24">
+            <el-form-item label="机构简称" prop="shortName">
+              <el-input
+                v-model="form.shortName"
+                placeholder="请输入机构简称"
+                :disabled="form.source == 1"
+              />
+            </el-form-item>
+          </el-col>
         </el-row>
         <el-row>
           <el-col :span="12">
@@ -538,7 +547,7 @@ export default {
       }
       return {
         id: node.id,
-        label: node.name,
+        label: node.shortName,
         children: node.children,
       };
     },
@@ -585,16 +594,16 @@ export default {
       });
     },
     /** 转换机构数据结构 */
-    normalizer(node) {
-      if (node.children && !node.children.length) {
-        delete node.children;
-      }
-      return {
-        id: node.id,
-        label: node.name,
-        children: node.children,
-      };
-    },
+    // normalizer(node) {
+    //   if (node.children && !node.children.length) {
+    //     delete node.children;
+    //   }
+    //   return {
+    //     id: node.id,
+    //     label: node.name,
+    //     children: node.children,
+    //   };
+    // },
     // 取消按钮
     cancel() {
       this.open = false;

+ 1 - 1
src/views/system/user/index.vue

@@ -714,7 +714,7 @@ export default {
       }
       return {
         id: node.id,
-        label: node.name,
+        label: node.shortName,
         children: node.children,
       };
     },