Browse Source

Merge branch 'orangeUrgent' into allTestUrgent

qymljy 1 month ago
parent
commit
f143dc23e7

+ 1 - 1
src/HManagement/roleManage/modules/add.vue

@@ -18,7 +18,7 @@
 </template>
 
 <script>
-import roleContentTemp from './roleContent copy.vue'
+import roleContentTemp from './roleContent.vue'
 export default {
   data () {
     return{

+ 15 - 2
src/HManagement/roleManage/modules/edit.vue

@@ -29,6 +29,11 @@
                   </el-select>
                 </el-form-item>
               </el-col>
+              <el-form-item :label="$t(`字段限制`)" prop="fielddatatypelimit">
+                <el-select v-model="form.fielddatatypelimit" :placeholder="$t(`字段限制`)" @focus="queryField" multiple >
+                  <el-option v-for="item in fielddatatype" :key="item.index" :label="$t(item.value)" :value="item.value"></el-option>
+                </el-select>
+              </el-form-item>
             </el-form>
           </el-row>
         </div>
@@ -42,7 +47,7 @@
 </template>
 
 <script>
-import roleContentTemp from './roleContent copy.vue'
+import roleContentTemp from './roleContent.vue'
 export default {
   data () {
     return{
@@ -53,7 +58,8 @@ export default {
         "roleid":0,
         "rolename":"",
         "remarks":"",
-        "usertype":""
+        "usertype":"",
+        "fielddatatypelimit":[]
       },
       rules:{
         rolename: [
@@ -66,6 +72,7 @@ export default {
           { required: true, message: this.$t('请选择角色类型'), trigger: 'change' }
         ],
       },
+      fielddatatype:[]
     }
   },
   props:['data'],
@@ -114,6 +121,12 @@ export default {
         })
       })
     },
+    async queryField(){
+      if (this.fielddatatype.length == 0){
+        const res = await this.$store.dispatch('optiontypeselect','fielddatatype')
+        this.fielddatatype = res.data
+      }
+    }
   }
 }
 

+ 56 - 38
src/HManagement/roleManage/modules/roleContent.vue

@@ -1,16 +1,37 @@
 <template>
   <div class="normal-panel drewer__panel">
     <div>
+      <p class="normal-title mb-16">{{$t('角色信息')}}</p>
+      <el-form :inline="true" :model="form" :rules="rules" ref="form" size="small" :label-width="tool.onlyZh('100px')" label-position="left" class="demo-form-inline">
+        <el-form-item :label="$t(`角色名称`)" prop="rolename" style="margin-right: 40px">
+          <el-input v-model="form.rolename" :placeholder="$t(`输入角色名称`)"></el-input>
+        </el-form-item>
+        <el-form-item :label="$t(`角色描述`)" prop="remarks" style="margin-right: 40px">
+          <el-input v-model="form.remarks" :placeholder="$t(`输入角色描述`)" ></el-input>
+        </el-form-item>
+        <el-form-item :label="$t(`角色类型`)" prop="usertype" style="margin-right: 40px">
+          <el-select v-model="form.usertype" :placeholder="$t(`角色类型`)">
+            <el-option v-for="item in options" :key="item.index" :label="$t(item.remarks)" :value="Number(item.value)"></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item :label="$t(`字段限制`)" prop="fielddatatypelimit">
+          <el-select v-model="form.fielddatatypelimit" :placeholder="$t(`字段限制`)" @focus="queryField">
+            <el-option v-for="item in fielddatatype" :key="item.index" :label="$t(item.value)" :value="item.value"></el-option>
+          </el-select>
+        </el-form-item>
+      </el-form>
+    </div>
+    <div>
+      <p class="normal-title mb-16">{{$t('角色授权')}}</p>
       <el-row :gutter="20">
         <el-col :span="12">
           <div class="mb-16">
-            <el-input style="width:250px" v-model="params.content.where.condition" size="mini" @keyup.native.enter="roleMain" @clear="roleMain" :placeholder="$t(`应用名称`)" clearable></el-input>
-            <auth style="margin-left:10px" @onSuccess="roleMain" v-if="tool.checkAuth($route.name,'auth')"></auth>
+            <auth @onSuccess="roleMain"></auth>
           </div>
           <el-collapse>
             <el-collapse-item :title="$t(`筛选`)" name="1">
               <el-row class="normal-margin">
-                <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">{{ $t('全选') }}</el-checkbox>
+                <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">{{$t('全选')}}</el-checkbox>
                 <div style="margin: 15px 0;"></div>
                 <el-checkbox-group v-model="checkModuleList"  @change="handleCheckedCitiesChange">
                   <el-col style="margin-bottom:5px" :span="6"  v-for="item in modulesList" :key="item.index">
@@ -25,28 +46,22 @@
         </el-col>
         <el-col :span="11">
           <el-row :gutter="40">
-            <el-col :span="12" v-if="tool.checkAuth($route.name,'auth')">
-              <p class="title">{{ $t('功能') }}</p>
+            <el-col :span="12">
+              <p class="title">{{$t('功能')}}</p>
               <el-row>
                 <el-checkbox-group v-model="checkedApps">
                   <el-col class="normal-margin" v-for="item in appoptions" :key="item.rowindex">
-                    <el-checkbox :label="item.optionid">{{$t(item.optionname)}}</el-checkbox>
+                    <el-checkbox :label="item.optionid">{{item.optionname}}</el-checkbox>
                   </el-col>
                 </el-checkbox-group>
               </el-row>
               <div class="flex-align-center flex-between option-item">
-                <el-checkbox :indeterminate="isIndeterminate2" v-model="checkAll2" @change="handleCheckAllChange2">{{ $t('全选') }}</el-checkbox>
-                <cancelAuth v-if="checkedApps.length > 0" :data="{roleid:data.roleid,systemappid:active_systemappid,optionid:checkedApps}" @onSuccess="(roleMain(),$emit('onSuccess'),checkedApps=[])"></cancelAuth>
-              </div>
-            </el-col>
-            <el-col :span="12" v-else>
-              <p class="title">{{ $t('功能') }}</p>
-              <div class="flex-align-center flex-between option-item" v-for="item in appoptions" :key="item.index">
-                <p>{{$t(item.optionname)}}</p>
+                <el-checkbox :indeterminate="isIndeterminate2" v-model="checkAll2" @change="handleCheckAllChange2">{{$t('全选')}}</el-checkbox>
+                <cancelAuth v-if="checkedApps.length > 0" :data="{roleid:data.roleid,systemappid:active_systemappid,optionid:checkedApps}" @onSuccess="(roleMain(),$emit('onSuccess'))"></cancelAuth>
               </div>
             </el-col>
             <el-col :span="12">
-              <p class="title">{{ $t('隐藏字段') }}</p>
+              <p class="title">{{$t('隐藏字段')}}</p>
               <div class="flex-align-center flex-between option-item" v-for="item in hiddenfields" :key="item.index">
                 <p>{{item.fieldname}}</p>
                 <cancelFields :data="{roleid:roleid,systemappid:active_systemappid,hiddenfieldid:item.hiddenfieldid}" @onSuccess="(roleMain(),$emit('onSuccess'))"></cancelFields>
@@ -56,6 +71,10 @@
         </el-col>
       </el-row>
     </div>
+    <div class="fixed__btn__panel">
+      <slot name="cancel"></slot>
+      <el-button type="primary" size="small" class="normal-btn-width" @click="onSubmit">{{$t('保 存')}}</el-button>
+    </div>
   </div>
 </template>
 
@@ -63,7 +82,6 @@
 import auth from './auth_list.vue'
 import cancelAuth from './cancel_auth.vue'
 import cancelFields from './cancel_fields.vue'
-import { log } from '@antv/g2plot/lib/utils'
 
 export default {
   props:['data'],
@@ -89,20 +107,11 @@ export default {
           { required: true, message: this.$t('请选择角色类型'), trigger: 'change' }
         ],
       },
-      params: {
-        "classname": "webmanage.role.role",
-        "method": "query_roleMain",
-        "content": {
-          "roleid":"",
-          "where": {
-            "condition":""
-          }
-        }
-      },
       form:{
         "roleid":0,
         "rolename":"",
-        "remarks":""
+        "remarks":"",
+        "fielddatatypelimit":[],
       },
       roleMainInfo:{},
       options:[],
@@ -114,13 +123,19 @@ export default {
       apps:[],
       checkedApps:[],
       roleid:0,
-      active_systemappid:''
+      active_systemappid:'',
+      fielddatatype:[]
     }
   },
   methods:{
     async roleMain () {
-      this.params.content.roleid = this.data.roleid
-      const res = await this.$api.requested(this.params)
+      const res = await this.$api.requested({
+        "classname": "webmanage.role.role",
+        "method": "query_roleMain",
+        "content": {
+          "roleid":this.data.roleid
+        }
+      })
       this.form = {
         "roleid":res.data.roleid,
         "rolename":res.data.rolename,
@@ -128,8 +143,7 @@ export default {
         "usertype":res.data.usertype
       }
       this.roleMainInfo = res.data
-      console.log(this.roleMainInfo);
-      
+
       //显示默认授权信息,一般默认信息为第一条数据
       res.data.apps[0]?this.appoptionselect(res.data.apps[0]):''
       this.filterModules()
@@ -150,8 +164,6 @@ export default {
       this.options = res.data
     },
     async appoptionselect (row) {
-      this.checkAll2 = false
-      this.checkedApps = []
       this.active_systemappid = row.systemappid
       this.appoptions = row.options
       this.hiddenfields = row.hiddenfields
@@ -165,6 +177,7 @@ export default {
           "content": this.form
         }).then(res=>{
           this.tool.showMessage(res,()=>{
+            this.$router.push({path:this.$route.path,query:{id:res.data.roleid}})
             this.$emit('onSuccess')
           })
         })
@@ -198,16 +211,21 @@ export default {
           }
         })
       });
-      
+
       this.apps = arr
-      console.log(this.apps,'666');
-      
     },
     handleCheckAllChange2 (val) {
       let arr = this.appoptions.map(e=>{return e.optionid})
       this.checkedApps = val ? arr : [];
       this.isIndeterminate2 = false;
     },
+    async queryField(){
+      if (this.fielddatatype.length == 0){
+        const res = await this.$store.dispatch('optiontypeselect','fielddatatype')
+        this.fielddatatype = res.data
+      }
+    }
+
   },
   mounted () {
     // 获取应用表结构
@@ -244,4 +262,4 @@ export default {
   border-top:1px solid #f1f2f3;
   padding-top:16px;
 }
-</style>
+</style>

+ 36 - 40
src/HManagement/roleManage/modules/roleContent copy.vue → src/HManagement/roleManage/modules/roleContent1.vue

@@ -1,32 +1,16 @@
 <template>
   <div class="normal-panel drewer__panel">
     <div>
-      <p class="normal-title mb-16">{{$t('角色信息')}}</p>
-      <el-form :inline="true" :model="form" :rules="rules" ref="form" size="small" :label-width="tool.onlyZh('100px')" label-position="left" class="demo-form-inline">
-        <el-form-item :label="$t(`角色名称`)" prop="rolename" style="margin-right: 40px">
-          <el-input v-model="form.rolename" :placeholder="$t(`输入角色名称`)"></el-input>
-        </el-form-item>
-        <el-form-item :label="$t(`角色描述`)" prop="remarks" style="margin-right: 40px">
-          <el-input v-model="form.remarks" :placeholder="$t(`输入角色描述`)" ></el-input>
-        </el-form-item>
-        <el-form-item :label="$t(`角色类型`)" prop="usertype">
-          <el-select v-model="form.usertype" :placeholder="$t(`角色类型`)">
-            <el-option v-for="item in options" :key="item.index" :label="$t(item.remarks)" :value="Number(item.value)"></el-option>
-          </el-select>
-        </el-form-item>
-      </el-form>
-    </div>
-    <div>
-      <p class="normal-title mb-16">{{$t('角色授权')}}</p>
       <el-row :gutter="20">
         <el-col :span="12">
           <div class="mb-16">
-            <auth @onSuccess="roleMain"></auth>
+            <el-input style="width:250px" v-model="params.content.where.condition" size="mini" @keyup.native.enter="roleMain" @clear="roleMain" :placeholder="$t(`应用名称`)" clearable></el-input>
+            <auth style="margin-left:10px" @onSuccess="roleMain" v-if="tool.checkAuth($route.name,'auth')"></auth>
           </div>
           <el-collapse>
             <el-collapse-item :title="$t(`筛选`)" name="1">
               <el-row class="normal-margin">
-                <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">{{$t('全选')}}</el-checkbox>
+                <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">{{ $t('全选') }}</el-checkbox>
                 <div style="margin: 15px 0;"></div>
                 <el-checkbox-group v-model="checkModuleList"  @change="handleCheckedCitiesChange">
                   <el-col style="margin-bottom:5px" :span="6"  v-for="item in modulesList" :key="item.index">
@@ -41,22 +25,28 @@
         </el-col>
         <el-col :span="11">
           <el-row :gutter="40">
-            <el-col :span="12">
-              <p class="title">{{$t('功能')}}</p>
+            <el-col :span="12" v-if="tool.checkAuth($route.name,'auth')">
+              <p class="title">{{ $t('功能') }}</p>
               <el-row>
                 <el-checkbox-group v-model="checkedApps">
                   <el-col class="normal-margin" v-for="item in appoptions" :key="item.rowindex">
-                    <el-checkbox :label="item.optionid">{{item.optionname}}</el-checkbox>
+                    <el-checkbox :label="item.optionid">{{$t(item.optionname)}}</el-checkbox>
                   </el-col>
                 </el-checkbox-group>
               </el-row>
               <div class="flex-align-center flex-between option-item">
-                <el-checkbox :indeterminate="isIndeterminate2" v-model="checkAll2" @change="handleCheckAllChange2">{{$t('全选')}}</el-checkbox>
-                <cancelAuth v-if="checkedApps.length > 0" :data="{roleid:data.roleid,systemappid:active_systemappid,optionid:checkedApps}" @onSuccess="(roleMain(),$emit('onSuccess'))"></cancelAuth>
+                <el-checkbox :indeterminate="isIndeterminate2" v-model="checkAll2" @change="handleCheckAllChange2">{{ $t('全选') }}</el-checkbox>
+                <cancelAuth v-if="checkedApps.length > 0" :data="{roleid:data.roleid,systemappid:active_systemappid,optionid:checkedApps}" @onSuccess="(roleMain(),$emit('onSuccess'),checkedApps=[])"></cancelAuth>
+              </div>
+            </el-col>
+            <el-col :span="12" v-else>
+              <p class="title">{{ $t('功能') }}</p>
+              <div class="flex-align-center flex-between option-item" v-for="item in appoptions" :key="item.index">
+                <p>{{$t(item.optionname)}}</p>
               </div>
             </el-col>
             <el-col :span="12">
-              <p class="title">{{$t('隐藏字段')}}</p>
+              <p class="title">{{ $t('隐藏字段') }}</p>
               <div class="flex-align-center flex-between option-item" v-for="item in hiddenfields" :key="item.index">
                 <p>{{item.fieldname}}</p>
                 <cancelFields :data="{roleid:roleid,systemappid:active_systemappid,hiddenfieldid:item.hiddenfieldid}" @onSuccess="(roleMain(),$emit('onSuccess'))"></cancelFields>
@@ -66,10 +56,6 @@
         </el-col>
       </el-row>
     </div>
-    <div class="fixed__btn__panel">
-      <slot name="cancel"></slot>
-      <el-button type="primary" size="small" class="normal-btn-width" @click="onSubmit">{{$t('保 存')}}</el-button>
-    </div>
   </div>
 </template>
 
@@ -77,6 +63,7 @@
 import auth from './auth_list.vue'
 import cancelAuth from './cancel_auth.vue'
 import cancelFields from './cancel_fields.vue'
+import { log } from '@antv/g2plot/lib/utils'
 
 export default {
   props:['data'],
@@ -102,6 +89,16 @@ export default {
           { required: true, message: this.$t('请选择角色类型'), trigger: 'change' }
         ],
       },
+      params: {
+        "classname": "webmanage.role.role",
+        "method": "query_roleMain",
+        "content": {
+          "roleid":"",
+          "where": {
+            "condition":""
+          }
+        }
+      },
       form:{
         "roleid":0,
         "rolename":"",
@@ -122,13 +119,8 @@ export default {
   },
   methods:{
     async roleMain () {
-      const res = await this.$api.requested({
-        "classname": "webmanage.role.role",
-        "method": "query_roleMain",
-        "content": {
-          "roleid":this.data.roleid
-        }
-      })
+      this.params.content.roleid = this.data.roleid
+      const res = await this.$api.requested(this.params)
       this.form = {
         "roleid":res.data.roleid,
         "rolename":res.data.rolename,
@@ -136,7 +128,8 @@ export default {
         "usertype":res.data.usertype
       }
       this.roleMainInfo = res.data
-
+      console.log(this.roleMainInfo);
+      
       //显示默认授权信息,一般默认信息为第一条数据
       res.data.apps[0]?this.appoptionselect(res.data.apps[0]):''
       this.filterModules()
@@ -157,6 +150,8 @@ export default {
       this.options = res.data
     },
     async appoptionselect (row) {
+      this.checkAll2 = false
+      this.checkedApps = []
       this.active_systemappid = row.systemappid
       this.appoptions = row.options
       this.hiddenfields = row.hiddenfields
@@ -170,7 +165,6 @@ export default {
           "content": this.form
         }).then(res=>{
           this.tool.showMessage(res,()=>{
-            this.$router.push({path:this.$route.path,query:{id:res.data.roleid}})
             this.$emit('onSuccess')
           })
         })
@@ -204,8 +198,10 @@ export default {
           }
         })
       });
-
+      
       this.apps = arr
+      console.log(this.apps,'666');
+      
     },
     handleCheckAllChange2 (val) {
       let arr = this.appoptions.map(e=>{return e.optionid})
@@ -248,4 +244,4 @@ export default {
   border-top:1px solid #f1f2f3;
   padding-top:16px;
 }
-</style>
+</style>

+ 1 - 1
src/HManagement/roleManage/modules/role_details.vue

@@ -49,7 +49,7 @@
 </template>
 
 <script>
-import roleContentTemp from './roleContent'
+import roleContentTemp from './roleContent1'
 import reportCenter from './reportCenter'
 import userCenter from './userCenter'
 import dataFiltering from './dataFiltering'