ソースを参照

调整机构用户

luojun 2 年 前
コミット
022ddd3957
3 ファイル変更264 行追加57 行削除
  1. 179 2
      src/views/system/dept/extend.vue
  2. 35 29
      src/views/system/dept/index.vue
  3. 50 26
      src/views/system/user/index.vue

+ 179 - 2
src/views/system/dept/extend.vue

@@ -251,6 +251,55 @@
           </el-table-column>
         </el-table>
       </div>
+      <div v-if="source==5">
+        <h3 class="title">离行自助银行设置</h3>
+      <div class="info-box">
+
+        <span >离行式大堂设备</span>
+        <div style="display: inline-block; width: 200px">
+          <el-input-number style="margin-left: 10px" v-model="detachedLobbyEquipment" controls-position="right"
+            @change="handleChange" :min="1" :max="10"></el-input-number>
+        </div>
+        <span style="margin-left: 50px">离行式穿墙设备</span>
+        <div style="display: inline-block; width: 200px">
+          <el-input-number style="margin-left: 10px" v-model="detachedWallPenetratingEquipment" controls-position="right"
+            @change="handleChange" :min="1" :max="10"></el-input-number>
+        </div>
+      </div>
+      <div class="info-box">
+        <el-button style="margin-bottom: 20px" type="primary" plain icon="el-icon-plus" size="mini" @click="handledetachedAdd"
+          v-hasPermi="['system:detachedPhysicalDefenseConstruction:add']">新增</el-button>
+        <el-table border size="small" v-loading="detachedloading" :data="detachedPhysicalDefenseConstructionList"
+          @selection-change="handledetachedSelectionChange">
+          <el-table-column type="selection" width="55"  v-if="false" align="center" />
+          <el-table-column type="index" label="序号" align="center" prop="id" />
+          <el-table-column label="标准" align="center" prop="standard" />
+          <el-table-column label="达标日期" align="center" prop="dateOfCompliance" width="180">
+            <template slot-scope="scope">
+              <span>{{ formatTime(scope.row.dateOfCompliance,"YYYY-MM-DD") }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column label="证书佐证" align="center" prop="certificateEvidence">
+            <template slot-scope="scope">
+              <span v-if="scope.row.certificateEvidence > 0">是</span>
+              <span v-else>否</span>
+            </template></el-table-column>
+          <!-- <el-table-column label="证书" align="center" prop="certificate" />
+          <el-table-column label="佐证" align="center" prop="evidence" /> -->
+          <el-table-column v-if="false" label="机构id" align="center" prop="orgId" />
+          <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+            <template slot-scope="scope">
+              <el-button size="mini" type="text" icon="el-icon-edit" @click="handledetachedUpdate(scope.row)"
+                v-hasPermi="['system:construction:edit']">查看证书</el-button>
+              <el-button size="mini" type="text" icon="el-icon-edit" @click="handledetachedUpdate(scope.row)"
+                v-hasPermi="['system:detachedPhysicalDefenseConstruction:edit']">修改</el-button>
+              <el-button size="mini" type="text" icon="el-icon-delete" @click="handledetachedDelete(scope.row)"
+                v-hasPermi="['system:detachedPhysicalDefenseConstruction:remove']">删除</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
+      </div>
     </div>
 
     <div style="margin-top: 50px; margin-left: 42%">
@@ -319,7 +368,7 @@
           <el-input v-if="false" v-model="Bankform.certificate" placeholder="请输入证书" />
           <div class="image-container" style="margin-left: 20px">
             <p style="font-size: 12px; color: #999">上传证书</p>
-            <image-upload :limit="1" :fileSize="2"></image-upload>
+            <image-upload :limit="1" :fileSize="2" @input="uploadSuccess"></image-upload>
 
             <!--            <el-image class="zoom-image border-color-change" :src="uploadp" fit="contain" @click="triggerFileInput"></el-image>-->
             <!--            <input type="file"-->
@@ -458,6 +507,10 @@ export default {
       platformSupplierBrand: null,
       constructionTime: null,
       lastUpdateTime: null,
+      detachedLobbyEquipment:null,
+      detachedWallPenetratingEquipment:null,
+      cashAddingRoomRemoteControl:null,
+      source:null,
       //机构建设数据
 
       // 遮罩层
@@ -480,17 +533,22 @@ export default {
       constructionList: [],
       // 银行物防建设表格数据
       BankPhysicalDefenseConstructionList: [],
+      detachedPhysicalDefenseConstructionList: [],
       BusinessPhysicalDefenseConstructionList: [],
       // 弹出层标题
       orgtitle: "",
       Businesstitle: "",
       // 弹出层标题
       Banktitle: "",
+      detachedtitle: "",
+      detachedloading:false,
       // 是否显示弹出层
       Bankopen: false,
       Businessopen: false,
+      detachedopen: false,
       // 表单参数
       Bankform: {},
+      detachedform: {},
       Businessform: {},
       // 是否显示弹出层
       Businessopen: false,
@@ -541,9 +599,13 @@ export default {
     this.getOrgPhysicalDefenseConstructionInfo();
     this.getBankPhysicalDefenseConstructionInfo();
     this.getBusinessPhysicalDefenseConstructionInfo();
+    this.getdetachedPhysicalDefenseConstructionInfo();
   },
   mounted() { },
   methods: {
+    uploadSuccess(fileList){
+      console.log(fileList,1111111111111)
+    },
     handleInput() {
       // 使用正则表达式过滤输入,只保留数字和小数点
       this.premisesArea = this.premisesArea.replace(/[^0-9.]/g, '');
@@ -566,7 +628,7 @@ export default {
         });
         this.type = data.data.type;
         this.isLock = data.data.isLock;
-
+this.source=data.data.source;
         // console.log(this.dataInfo, "info");
       });
     },
@@ -592,6 +654,9 @@ export default {
           this.platformSupplierBrand = data.data.platformSupplierBrand;
           this.businessLibraryType=data.data.businessLibraryType;
           this.dutyMode=data.data.dutyMode;
+          this.detachedLobbyEquipment=data.data.detachedLobbyEquipment;
+          this.detachedWallPenetratingEquipment=data.data.detachedWallPenetratingEquipment;
+          this.cashAddingRoomRemoteControl=data.data.cashAddingRoomRemoteControl;
           // console.log(this.extendId);
         }
       });
@@ -617,6 +682,15 @@ export default {
         this.bankloading = false;
       });
     },
+    getdetachedPhysicalDefenseConstructionInfo() {
+      this.detachedloading = true;
+      let dat = { orgId: this.$route.params.id, type: 4 };
+      listOrgPhysicalDefenseConstruction(dat).then((data) => {
+        // console.log(data);
+        this.detachedPhysicalDefenseConstructionList = data.rows;
+        this.detachedloading = false;
+      });
+    },
     getBusinessPhysicalDefenseConstructionInfo() {
       this.businessloading = true;
       let dat = { orgId: this.$route.params.id, type: 2 };
@@ -817,6 +891,106 @@ export default {
         })
         .catch(() => { });
     },
+
+ // 取消按钮
+    detachedcancel() {
+      this.detachedopen = false;
+      this.detachedreset();
+    },
+    // 表单重置
+    detachedreset() {
+      this.detachedform = {
+        id: null,
+        standard: null,
+        dateOfCompliance: null,
+        certificateEvidence: null,
+        certificate: null,
+        evidence: null,
+        createTime: null,
+        updateTime: null,
+        createBy: null,
+        updateBy: null,
+        orgId: null,
+      };
+      this.resetForm("detachedform");
+    },
+    // 多选框选中数据
+    handledetachedSelectionChange(selection) {
+      this.detachedids = selection.map((item) => item.id);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
+    },
+    /** 新增按钮操作 */
+    handledetachedAdd() {
+      this.detachedreset();
+      this.detachedopen = true;
+      this.detachedtitle = "添加银行物防建设";
+    },
+    /** 修改按钮操作 */
+    handledetachedUpdate(row) {
+      this.detachedreset();
+      const id = row.id || this.detachedids;
+      getOrgPhysicalDefenseConstruction(id).then((response) => {
+        this.detachedform = response.data;
+        this.detachedopen = true;
+        this.detachedtitle = "修改银行物防建设";
+      });
+    },
+    /** 提交按钮 */
+    submitdetachedForm() {
+      this.$refs.detachedform.validate((valid) => {
+        if (valid) {
+          // 表单验证通过,提交数据或执行其他操作
+          this.detachedform.orgId = this.$route.params.id;
+          this.detachedform.type = 3;
+          if (this.detachedform.id != null) {
+            updateOrgPhysicalDefenseConstruction(this.detachedform).then(
+              (response) => {
+                this.$modal.msgSuccess("修改成功");
+                this.detachedopen = false;
+                this.getdetachedPhysicalDefenseConstructionInfo();
+              }
+            );
+          } else {
+            addOrgPhysicalDefenseConstruction(this.detachedform).then(
+              (response) => {
+                this.$modal.msgSuccess("新增成功");
+                this.detachedopen = false;
+                this.getdetachedPhysicalDefenseConstructionInfo();
+              }
+            );
+          }
+        } else {
+          // 表单验证未通过,显示错误信息
+        }
+      });
+
+      
+      // this.$refs["detachedform"].validate((valid) => {
+      //   if (valid) {
+
+      //   }
+      // });
+    },
+    /** 删除按钮操作 */
+    handledetachedDelete(row) {
+      const detachedids = row.id || this.detachedids;
+      this.$modal
+        .confirm('是否确认删除银行物防建设编号为"' + detachedids + '"的数据项?')
+        .then(function () {
+          return delOrgPhysicalDefenseConstruction(detachedids);
+        })
+        .then(() => {
+          this.getdetachedPhysicalDefenseConstructionInfo();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => { });
+    },
+
+
+
+
+
     // 表单重置
     orgreset() {
       this.orgform = {
@@ -930,6 +1104,9 @@ export default {
         lastUpdateTime: this.lastUpdateTime,
         orgId: this.$route.params.id,
         id: this.extendId,
+        detachedLobbyEquipment:this.detachedLobbyEquipment,
+        detachedWallPenetratingEquipment:this.detachedWallPenetratingEquipment,
+        cashAddingRoomRemoteControl:this.cashAddingRoomRemoteControl,
       };
       // console.log(dat);
       if (this.extendId) {

+ 35 - 29
src/views/system/dept/index.vue

@@ -81,6 +81,7 @@
         <el-row :gutter="10" class="mb8">
           <el-col :span="1.5">
             <el-button
+              v-if="false"
               type="primary"
               plain
               icon="el-icon-plus"
@@ -155,7 +156,7 @@
                 :to="'/system/dept-extend/extend/' + scope.row.id"
                 class="link-type"
               >
-                <el-button
+                <el-button v-if="scope.row.type==4||scope.row.type==10||scope.row.type==5"
                   size="mini"
                   type="text"
                   icon="el-icon-plus"
@@ -168,12 +169,12 @@
                 size="mini"
                 type="text"
                 icon="el-icon-edit"
-                @click="showDialogEdit(scope.row)"
+                @click="handleUpdate(scope.row)"
                 v-hasPermi="['system:dept:edit']"
                 >修改</el-button
               >
               <el-button
-                v-if="scope.row.parentId != 0"
+                v-if="!scope.row.source"
                 size="mini"
                 type="text"
                 icon="el-icon-delete"
@@ -207,7 +208,7 @@
         <el-row>
           <el-col :span="24">
             <el-form-item
-              v-if="this.pId != -1"
+              v-if="this.pId != -1 && !form.source"
               label="上级机构"
               prop="parentId"
             >
@@ -222,23 +223,32 @@
         </el-row>
         <el-row>
           <el-col :span="12">
-            <el-form-item label="机构名称" prop="name">
+            <el-form-item label="机构名称" prop="name" v-if="!form.source">
               <el-input v-model="form.name" placeholder="请输入机构名称" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="显示排序" prop="sort">
-              <el-input-number
-                v-model="form.sort"
-                controls-position="right"
-                :min="0"
-              />
+            <el-form-item label="机构类型" prop="type">
+              <el-select
+                prop="type"
+                label="机构类型"
+                v-model="form.type"
+                placeholder="请选择机构类型"
+                clearable
+              >
+                <el-option
+                  v-for="dict in dict.type.sys_org_type"
+                  :key="dict.value"
+                  :label="dict.label"
+                  :value="dict.value"
+                />
+              </el-select>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="12">
-            <el-form-item label="负责人" prop="manager">
+            <el-form-item label="负责人" prop="manager" v-if="!form.source">
               <el-input
                 v-model="form.manager"
                 placeholder="请输入负责人"
@@ -247,7 +257,7 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="联系电话" prop="phone">
+            <el-form-item label="联系电话" prop="phone" v-if="!form.source">
               <el-input
                 v-model="form.phone"
                 placeholder="请输入联系电话"
@@ -259,21 +269,12 @@
 
         <el-row>
           <el-col :span="12">
-            <el-form-item label="机构类型" prop="type">
-              <el-select
-                prop="type"
-                label="机构类型"
-                v-model="form.type"
-                placeholder="请选择机构类型"
-                clearable
-              >
-                <el-option
-                  v-for="dict in dict.type.sys_org_type"
-                  :key="dict.value"
-                  :label="dict.label"
-                  :value="dict.value"
-                />
-              </el-select>
+            <el-form-item label="显示排序" prop="sort" v-if="!form.source">
+              <el-input-number
+                v-model="form.sort"
+                controls-position="right"
+                :min="0"
+              />
             </el-form-item>
           </el-col>
         </el-row>
@@ -289,7 +290,7 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="机构状态" prop="isLock">
+            <el-form-item label="机构状态" prop="isLock" v-if="!form.source">
               <el-radio-group v-model="form.isLock">
                 <el-radio
                   v-for="dict in dict.type.sys_normal_disable"
@@ -386,6 +387,9 @@ export default {
         name: [
           { required: true, message: "机构名称不能为空", trigger: "blur" },
         ],
+        type: [
+          { required: true, message: "机构类型不能为空", trigger: "blur" },
+        ],
         orderNum: [
           { required: true, message: "显示排序不能为空", trigger: "blur" },
         ],
@@ -488,6 +492,8 @@ export default {
     cancel() {
       this.open = false;
       this.reset();
+      this.getList();
+      this.getDeptTree();
     },
     // 表单重置
     reset() {

+ 50 - 26
src/views/system/user/index.vue

@@ -73,12 +73,20 @@
         <el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange">
           <el-table-column type="selection" width="50" align="center" />
           <el-table-column label="用户名" align="center" key="username" prop="username" v-if="columns[0].visible" />
-          <el-table-column label="姓名" align="center" key="name" prop="name" v-if="columns[1].visible"
-            :show-overflow-tooltip="true" />
-          <el-table-column label="手机" align="center" key="phone" prop="phone" v-if="columns[2].visible"
+          <el-table-column label="用户昵称" align="center" key="name" prop="name" v-if="columns[1].visible"
             :show-overflow-tooltip="true" />
+
           <el-table-column label="所属机构" align="center" key="orgName" prop="orgName" v-if="columns[3].visible"
             :show-overflow-tooltip="true" />
+            <el-table-column label="角色" align="center"  prop="roles" v-if="columns[2].visible"
+            :show-overflow-tooltip="true" >
+            <template slot-scope="scope" >
+              <template v-for="item in scope.row.roles">
+          {{ item.roleName }}
+          <br/>
+        </template> 
+            </template>
+          </el-table-column>
           <el-table-column label="状态" align="center" key="isLock" prop="isLock" v-if="columns[4].visible" width="80">
             <template slot-scope="scope">
               <dict-tag :options="dict.type.sys_normal_disable" :value="scope.row.isLock" />
@@ -101,18 +109,25 @@
               <el-button
                 size="mini"
                 type="text"
-                icon="el-icon-edit"
+                icon="el-icon-plus"
                 @click="handleExtend(scope.row)"
                 v-hasPermi="['system:user:extend']"
-              >扩展</el-button>
+              >补充信息</el-button>
+              <!-- <el-button
+                  size="mini"
+                  type="text"
+                  icon="el-icon-plus"
+                  v-hasPermi="['system:user:extend']"
+                  >补充信息</el-button
+                > -->
               <el-button
                 size="mini"
                 type="text"
                 icon="el-icon-edit"
                 @click="handleUpdate(scope.row)"
                 v-hasPermi="['system:user:edit']"
-              >修改</el-button>
-              <el-button
+              >编辑</el-button>
+              <el-button v-if="!scope.row.source"
                 size="mini"
                 type="text"
                 icon="el-icon-delete"
@@ -124,7 +139,7 @@
                 <el-dropdown-menu slot="dropdown">
                   <el-dropdown-item command="handleResetPwd" icon="el-icon-key"
                     v-hasPermi="['system:user:resetPwd']">重置密码</el-dropdown-item>
-                  <el-dropdown-item command="handleAuthRole" icon="el-icon-circle-check"
+                  <el-dropdown-item command="handleAuthRole"  v-if="false" icon="el-icon-circle-check"
                     v-hasPermi="['system:user:edit']">分配角色</el-dropdown-item>
                 </el-dropdown-menu>
               </el-dropdown>
@@ -142,12 +157,20 @@
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-row>
           <el-col :span="10">
-            <el-form-item label="用户昵称" prop="name">
+            <el-form-item label="用户名" prop="username" v-if="!form.source">
+              <el-input v-model="form.username" placeholder="请输入用户名" maxlength="30" />
+            </el-form-item>
+          </el-col>
+          <el-col :span="10">
+            <el-form-item label="用户昵称" prop="name"  v-if="!form.source">
               <el-input v-model="form.name" placeholder="请输入用户昵称" maxlength="30" />
             </el-form-item>
           </el-col>
-          <el-col :span="14">
-            <el-form-item label="所属机构" prop="orgId">
+        </el-row>
+        <el-row>
+          
+          <el-col :span="10">
+            <el-form-item label="所属机构" prop="orgId"  v-if="!form.source">
               <tree-select
                 v-model="form.orgId"
                 :options="deptOptions"
@@ -157,18 +180,26 @@
                 placeholder="请选择归属机构" />
             </el-form-item>
           </el-col>
+          <el-col :span="10" >
+            <el-form-item label="用户角色" prop="roleIds">
+              <el-select style="width: 100%;" v-model="form.roleIds" multiple placeholder="请选择角色">
+                <el-option v-for="item in roleOptions" :key="item.id" :label="item.roleName" :value="item.id"
+                  :disabled="item.status == 1"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
         </el-row>
         <el-row>
           <el-col :span="10">
-            <el-form-item label="手机号码" prop="phone">
+            <el-form-item label="手机号码" prop="phone"  v-if="!form.source">
               <el-input v-model="form.phone" placeholder="请输入手机号码" maxlength="11" />
             </el-form-item>
           </el-col>
-          <el-col :span="14">
-            <el-form-item label="用户角色" prop="roleIds">
-              <el-select style="width: 100%;" v-model="form.roleIds" multiple placeholder="请选择角色">
-                <el-option v-for="item in roleOptions" :key="item.id" :label="item.roleName" :value="item.id"
-                  :disabled="item.status == 1"></el-option>
+          <el-col :span="10">
+            <el-form-item label="用户性别"  v-if="!form.source">
+              <el-select style="width: 100%;" v-model="form.gender" placeholder="请选择性别">
+                <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.value" :label="dict.label"
+                  :value="`${dict.value}`"></el-option>
               </el-select>
             </el-form-item>
           </el-col>
@@ -191,16 +222,9 @@
           </el-col>
         </el-row>
         <el-row>
-          <el-col :span="10">
-            <el-form-item label="用户性别">
-              <el-select style="width: 100%;" v-model="form.gender" placeholder="请选择性别">
-                <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.value" :label="dict.label"
-                  :value="`${dict.value}`"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
+         
           <el-col :span="14">
-            <el-form-item label="状态">
+            <el-form-item label="状态"  v-if="!form.source">
               <el-radio-group v-model="form.isLock">
                 <el-radio v-for="dict in dict.type.sys_normal_disable" :key="`${dict.value}`"
                   :label="dict.value">{{ dict.label }}</el-radio>