Explorar el Código

ETA逻辑配置化

cxmo hace 1 año
padre
commit
b7cb965971

+ 9 - 1
src/utils/buttonConfig.js

@@ -295,5 +295,13 @@ export const etaTablePermission = {
     etaTable_excel_del:'etaTable:excel:del',
     etaTable_excel_download:'etaTable:excel:download',
     etaTable_excel_save:'etaTable:excel:save'
-
+}
+/*
+ * --------------------------------------------------------------------------ETA逻辑------------------------------------------------
+*/
+export const sandboxPermission = {
+    sandbox_variety:'sandbox:variety',//沙盘品种选择,控制筛选项和列表项
+    sandbox_addMy:'sandbox:addMy',//复制图片
+    sandbox_del:'sandbox:del',//删除
+    sandbox_saveView:'sandbox:saveView',//添加/编辑/查看
 }

+ 13 - 2
src/views/sandbox_manage/index.vue

@@ -1,7 +1,8 @@
 <template>
   <div class="sandList-container">
     <div class="main-top">
-      <el-button type="primary" @click="addSand">添加沙盘</el-button>
+      <el-button v-permission="permissionBtn.sandboxPermission.sandbox_saveView"
+        type="primary" @click="addSand">添加沙盘</el-button>
       <div>
         <el-input
           v-model="search_txt"
@@ -11,6 +12,7 @@
           <i slot="prefix" class="el-input__icon el-icon-search"></i>
         </el-input>
         <el-cascader
+          v-permission="permissionBtn.sandboxPermission.sandbox_variety"
           :options="classifyArr"
           :props="classifyProps"
           v-model="classify"
@@ -62,29 +64,34 @@
           <template slot-scope="scope">
             <template v-if="scope.row.key !== 'more'">
               <el-button
+                v-permission="permissionBtn.sandboxPermission.sandbox_saveView"
                 type="text"
                 @click="handleSand(scope.row, 'edit')"
                 v-if="scope.row.CanEdit"
                 >编辑</el-button
               >
               <el-button
+                v-permission="permissionBtn.sandboxPermission.sandbox_saveView"
                 type="text"
                 @click="handleSand(scope.row, 'edit')"
                 v-if="!scope.row.CanEdit"
                 >{{scope.row.Editor||''}}编辑中...</el-button
               >
               <el-button
+                v-permission="permissionBtn.sandboxPermission.sandbox_del"
                 type="text"
                 style="color: #f00"
                 @click="handleSand(scope.row, 'del')"
                 >删除</el-button
               >
               <el-button
+                v-permission="permissionBtn.sandboxPermission.sandbox_saveView"
                 type="text"
                 @click="handleSand(scope.row, 'view')"
                 >查看</el-button
               >
-              <el-button  type="text" @click="copyImg(scope.row)"
+              <el-button  v-permission="permissionBtn.sandboxPermission.sandbox_addMy"
+                type="text" @click="copyImg(scope.row)"
                 >复制图片</el-button
               >
             </template>
@@ -585,6 +592,10 @@ export default {
     },
   },
   mounted() {
+    //如果没有品种权限,表格就不展示这一列
+    if(!this.permissionBtn.checkPermissionBtn(this.permissionBtn.sandboxPermission.sandbox_variety)){
+        this.tableColums = this.tableColums.filter(i=>i.key!=='ChartPermissionName')
+    }
     this.getTableData();
     this.getClassify();
     this.tableBody = this.$refs.table.bodyWrapper

+ 8 - 5
src/views/sandbox_manage/sandFlow/index.vue

@@ -15,7 +15,7 @@
 							style="width:300px">
 						</el-input>
 					</li>
-					<li>
+					<li v-permission="permissionBtn.sandboxPermission.sandbox_variety">
 						品种:
 						<el-cascader 
 							:options="classifyArr"
@@ -29,8 +29,10 @@
 					</li>
 				</ul>
 				<div>
-					<el-button type="primary" size="medium" @click="saveChart(null)" v-if="!isView">保存</el-button>
-					<el-button type="primary" size="medium" @click="copySandHandle">复制图片</el-button>
+					<el-button v-permission="permissionBtn.sandboxPermission.sandbox_saveView"
+						type="primary" size="medium" @click="saveChart(null)" v-if="!isView">保存</el-button>
+					<el-button v-permission="permissionBtn.sandboxPermission.sandbox_addMy"
+						type="primary" size="medium" @click="copySandHandle">复制图片</el-button>
 				</div>
 			</header>
 			<div class="flow-wrapper">
@@ -161,7 +163,8 @@ export default {
 
 		/* 保存 */
 		saveChart: _.debounce( function(callback=null) {
-			if(!this.sandObj.name || !this.sandObj.classify) return this.$message.warning(`${this.sandObj.classify ? '请填写沙盘名称' : this.sandObj.name ? '请选择沙盘品种' : '请填写沙盘名称和品种'}`);
+			if(!this.sandObj.name) 
+				return this.$message.warning(`'请填写沙盘名称`);
 
 			if(!this.graph.toJSON().cells.length) return this.$message.warning('请绘制画布内容');
 
@@ -184,7 +187,7 @@ export default {
 				const { Ret } =	await sandInterface.sandSave({
 					SandboxVersionCode,
 					Name: name,
-					ChartPermissionId: classify,
+					ChartPermissionId: Number(classify),
 					Content: JSON.stringify(this.graph.toJSON()),
 					PicUrl: Data.ResourceUrl,
 					SvgData: dataUri

+ 2 - 0
src/vuex/modules/permissionButton.js

@@ -36,6 +36,8 @@ const permissionButtons = {
                     {button_code:'pptEn:show'},
                     //table test
                     {button_code:'etaTable:excel:download'},
+                    //sandbox test
+                    {button_code:'sandbox:saveView'},
                 ]
                 commit('SET_PERMISSION_BUTTONS',buttons)
                 resolve('获取权限按钮成功')