ソースを参照

电签角色库修改

duy 2 ヶ月 前
コミット
168eceb580
2 ファイル変更90 行追加16 行削除
  1. 27 0
      src/api/sigital/signer.js
  2. 63 16
      src/views/digital/signer.vue

+ 27 - 0
src/api/sigital/signer.js

@@ -25,4 +25,31 @@ export const getElementList = (params) => {
         method: 'get',
         params
     })
+}
+
+
+//获取元素表分类列表
+export const getTableTypeList = (params) => {
+    return request({
+        url: '/api/blade-manager/signConfig/tableType',
+        method: 'get',
+        params
+    })
+}
+//获取元素表列表
+export const getTableList = (params) => {
+    return request({
+        url: '/api/blade-manager/signConfig/tableList',
+        method: 'get',
+        params
+    })
+}
+
+//获取所有施工方、监理方、业主方的角色列表
+export const queryAllRoleList= (params) => {
+    return request({
+        url: '/api/blade-manager/signConfig/queryAllRoleList',
+        method: 'get',
+        params
+    })
 }

+ 63 - 16
src/views/digital/signer.vue

@@ -129,7 +129,7 @@
                               >
                                 <template slot-scope="scope">
                                  
-                                    <el-select v-model="scope.row.elementType" placeholder="请选择元素或搜索"   filterable >
+                                    <el-select v-model="scope.row.eName" placeholder="请选择元素或搜索"   filterable   size="small" @change="changeEleType($event,scope.row)">
                                         <el-option
                                         v-for="item in eleOptions"
                                         :key="item.value"
@@ -200,7 +200,7 @@
             append-to-body
                 title="选择元素来源"
                 :visible.sync="sourceDialogVisible"
-                width="30%"
+                width="50%"
                 :before-close="handleSourceClose">
                 <div>
                     <p class="tip-text" >
@@ -214,7 +214,7 @@
                    </div>
                  <!-- 并行显示的下拉框 -->
                         <div v-if="selectedSourceOption === 2" class="dropdown-container">
-                            <el-select v-model="elementCategorySelect" placeholder="请选择表分类" style="flex: 1; margin-right: 10px;" clearable>
+                            <el-select v-model="elementCategorySelect" placeholder="请选择表分类" style="flex: 1; margin-right: 10px;" clearable @change="changeSelect" >
                                 <el-option
                                     v-for="item in elementCategoryOptions"
                                     :key="item.value"
@@ -294,7 +294,7 @@
 </template>
 
 <script>
-  import {getRoleList,getListPage,getElementList} from "@/api/sigital/signer.js";
+  import {getRoleList,getListPage,getElementList,getTableTypeList,getTableList,queryAllRoleList} from "@/api/sigital/signer.js";
   import { getDictionary } from "@/api/system/dict";
     export default {
         data() {
@@ -322,14 +322,10 @@
                 elementCategorySelect: '', // 元素分类表分类选中值
                 elementTableNameSelect: '', // 元素表名称筛选选中值
                 elementCategoryOptions: [
-                    // 元素分类表分类选项数据
-                    { value: 'category1', label: '分类1' },
-                    { value: 'category2', label: '分类2' }
+                   
                 ],
                 elementTableOptions: [
-                    // 元素表名称筛选选项数据
-                    { value: 'table1', label: '表1' },
-                    { value: 'table2', label: '表2' }
+               
                 ],
                 elementList: Array.from({ length: 30 }, (_, i) => ({
                     name: `元素表名称 ${i + 1}`,
@@ -423,13 +419,16 @@
                     if (res.data.code == 200) {
                         this.eleOptions = res.data.data.map(item => ({
                             value: item.id,
-                            label: item.eName
+                            label: item.ename,
+                            etype: item.etype,
                         }));
-                       
-                        
+                    }else{
+                        this.eleOptions = [];
+
                     }
                 });
             },
+        
             getDataTypelist() {
                 if (this.dataTypeList.length > 1) {
                     return;
@@ -450,13 +449,60 @@
             handleDelete(row) {
                 console.log('删除', row);
                 // 删除操作的逻辑
+            },
+            changeEleType(value,row) {
+               
+                
+                const selectedItem = this.eleOptions.find(item => item.value === value);
+      
+                
+                    if (selectedItem && selectedItem.etype != null) {
+                        row.elementType = selectedItem.etype; // 假设接口返回的 eleOptions 中有 etype 字段
+                    }
+                
+                            
+              
+              
             },
             //选择元素来源
             eleCheck(row) {
               console.log('选择元素来源');
               this.eleCheckRow = row;
+             
               this.sourceDialogVisible = true;
+              this.getElementCategoryOptions();
               
+            },
+                //获取元素表分类
+            
+           getElementCategoryOptions(){
+         
+                getTableTypeList().then(res => {
+                    if (res.data.code == 200) {
+                        this.elementCategoryOptions = res.data.data.map(item => ({
+                            value: item.dictKey,
+                            label: item.dictValue
+                        }));
+                    }else{  this.elementCategoryOptions = [];}
+                });
+            },
+            changeSelect(){
+              this.getElementTableOptions();
+            },
+            //获取元素表List
+            getElementTableOptions(){
+                getTableList({
+                  
+                    tableType:this.elementCategorySelect
+                }).then(res => {
+                    
+                    if (res.data.code == 200) {
+                        this.elementTableOptions = res.data.data.map(item => ({
+                            value: item.id,
+                            label: item.tabChName
+                        }));
+                    }else{  this.elementTableOptions = [];}
+                });
             },
                     // 弹窗关闭时的回调
             handleSourceClose(done) {
@@ -503,9 +549,10 @@
     
         },
         mounted() {
-            // this.getRoleData();
-            // this.getTableData();
-            // this.getEleOptions();
+            this.getRoleData();
+            this.getTableData();
+            this.getEleOptions();
+            this.getDataTypelist();
         },
         components: {}
     }