|
@@ -19,7 +19,7 @@
|
|
v-if="permissionBtn.checkPermissionBtn(permissionBtn.etaTablePermission.etaTable_analysis_upload)"
|
|
v-if="permissionBtn.checkPermissionBtn(permissionBtn.etaTablePermission.etaTable_analysis_upload)"
|
|
>{{$t('CustomAnalysisPage.up_file_btn')}}</el-button>
|
|
>{{$t('CustomAnalysisPage.up_file_btn')}}</el-button>
|
|
<input type="file" @change="fileSelected" id="file" style="display: none;">
|
|
<input type="file" @change="fileSelected" id="file" style="display: none;">
|
|
-
|
|
|
|
|
|
+ <!-- 只看我的 -->
|
|
<el-checkbox v-model="isShowMe" @change="() => { getTreeData();getPublicList() }">{{$t('Chart.only_see_mine')}}</el-checkbox>
|
|
<el-checkbox v-model="isShowMe" @change="() => { getTreeData();getPublicList() }">{{$t('Chart.only_see_mine')}}</el-checkbox>
|
|
</div>
|
|
</div>
|
|
<div class="search-cont">
|
|
<div class="search-cont">
|
|
@@ -54,6 +54,16 @@
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</div>
|
|
</div>
|
|
|
|
+ <ul class="left-tab">
|
|
|
|
+ <li
|
|
|
|
+ :class="['tab', { act: classify_tab === index }]"
|
|
|
|
+ v-for="(tab, index) in [$t('CustomAnalysisPage.table_my'), $t('CustomAnalysisPage.table_share')]"
|
|
|
|
+ :key="tab"
|
|
|
|
+ @click="changeTab(index)"
|
|
|
|
+ >
|
|
|
|
+ {{ tab }}
|
|
|
|
+ </li>
|
|
|
|
+ </ul>
|
|
<div class="tree-cont">
|
|
<div class="tree-cont">
|
|
<el-tree
|
|
<el-tree
|
|
ref="treeRef"
|
|
ref="treeRef"
|
|
@@ -113,14 +123,14 @@
|
|
alt=""
|
|
alt=""
|
|
style="width: 14px; height: 14px; margin-right: 8px"
|
|
style="width: 14px; height: 14px; margin-right: 8px"
|
|
/>
|
|
/>
|
|
- <!-- 添加子 -->
|
|
|
|
- <img
|
|
|
|
- src="~@/assets/img/set_m/add.png"
|
|
|
|
- alt=""
|
|
|
|
- style="width: 14px; height: 14px; margin-right: 8px"
|
|
|
|
- @click.stop="addNode(node,data)"
|
|
|
|
- v-if="!data.ExcelInfoId&&isSheetBtnShow('classifyOpt_edit')&&node.level<3"
|
|
|
|
- />
|
|
|
|
|
|
+ <!-- 目录操作:添加/编辑/删除 -->
|
|
|
|
+ <img
|
|
|
|
+ src="~@/assets/img/set_m/add.png"
|
|
|
|
+ alt=""
|
|
|
|
+ style="width: 14px; height: 14px; margin-right: 8px"
|
|
|
|
+ @click.stop="addNode(node,data)"
|
|
|
|
+ v-if="!data.ExcelInfoId&&isSheetBtnShow('classifyOpt_edit')&&node.level<3"
|
|
|
|
+ />
|
|
<img
|
|
<img
|
|
src="~@/assets/img/set_m/edit.png"
|
|
src="~@/assets/img/set_m/edit.png"
|
|
alt=""
|
|
alt=""
|
|
@@ -136,6 +146,28 @@
|
|
@click.stop="removeNode(node, data)"
|
|
@click.stop="removeNode(node, data)"
|
|
v-if="!data.ExcelInfoId&&isSheetBtnShow('classifyOpt_delete')"
|
|
v-if="!data.ExcelInfoId&&isSheetBtnShow('classifyOpt_delete')"
|
|
/>
|
|
/>
|
|
|
|
+ <!-- 表格操作:共享/取消共享 -->
|
|
|
|
+ <span v-if="data.ExcelInfoId">
|
|
|
|
+ <el-dropdown @command="handleShareCommand">
|
|
|
|
+ <i class="el-icon-share" style="color:#5cb6ff;"></i>
|
|
|
|
+ <el-dropdown-menu slot="dropdown">
|
|
|
|
+ <!-- 表格为已共享,有取消共享按钮 -->
|
|
|
|
+ <el-dropdown-item v-if="classify_tab===1||data.isShare===1"
|
|
|
|
+ :command="{key:'cancel',item:data}"
|
|
|
|
+ class="treenode-dropdown-item"
|
|
|
|
+ :class="data.isShare===0?'treenode-dropdown-item-act':''"
|
|
|
|
+ >
|
|
|
|
+ {{$t('CustomAnalysisPage.cancel_share_btn')}}
|
|
|
|
+ </el-dropdown-item>
|
|
|
|
+ <el-dropdown-item :command="{key:'share',item:data}"
|
|
|
|
+ class="treenode-dropdown-item"
|
|
|
|
+ :class="data.isShare===1?'treenode-dropdown-item-act':''"
|
|
|
|
+ >
|
|
|
|
+ {{classify_tab?$t('CustomAnalysisPage.share_user_btn'):$t('CustomAnalysisPage.share_btn')}}
|
|
|
|
+ </el-dropdown-item>
|
|
|
|
+ </el-dropdown-menu>
|
|
|
|
+ </el-dropdown>
|
|
|
|
+ </span>
|
|
</span>
|
|
</span>
|
|
</span>
|
|
</span>
|
|
</el-tree>
|
|
</el-tree>
|
|
@@ -331,6 +363,11 @@
|
|
>
|
|
>
|
|
</div>
|
|
</div>
|
|
</m-dialog>
|
|
</m-dialog>
|
|
|
|
+ <!-- 设置共享弹窗 -->
|
|
|
|
+ <shareTableDia
|
|
|
|
+ :isOpenDialog="isShowShareDia"
|
|
|
|
+ @close="isShowShareDia=false"
|
|
|
|
+ />
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
@@ -339,12 +376,13 @@ import * as sheetInterface from "@/api/modules/sheetApi.js";
|
|
import leftMixin from "../mixins/classifyMixin";
|
|
import leftMixin from "../mixins/classifyMixin";
|
|
import mDialog from "@/components/mDialog.vue";
|
|
import mDialog from "@/components/mDialog.vue";
|
|
import classifyDia from "../components/sheetClassifyDia.vue";
|
|
import classifyDia from "../components/sheetClassifyDia.vue";
|
|
|
|
+import shareTableDia from "./components/shareTableDia"
|
|
import Sheet from "../components/SheetExcel.vue";
|
|
import Sheet from "../components/SheetExcel.vue";
|
|
import { getSheetImage } from "../common/option";
|
|
import { getSheetImage } from "../common/option";
|
|
import sheetListWrap from "../components/sheetListWrap.vue"
|
|
import sheetListWrap from "../components/sheetListWrap.vue"
|
|
export default {
|
|
export default {
|
|
name: "",
|
|
name: "",
|
|
- components: { mDialog, classifyDia, Sheet, sheetListWrap },
|
|
|
|
|
|
+ components: { mDialog, classifyDia, Sheet, sheetListWrap, shareTableDia },
|
|
mixins: [leftMixin],
|
|
mixins: [leftMixin],
|
|
computed: {
|
|
computed: {
|
|
downExcelFileUrl() {
|
|
downExcelFileUrl() {
|
|
@@ -432,6 +470,9 @@ export default {
|
|
isEdbReFreshLoading: false,//指标刷新
|
|
isEdbReFreshLoading: false,//指标刷新
|
|
// 内容是否更新
|
|
// 内容是否更新
|
|
hasChange:false,
|
|
hasChange:false,
|
|
|
|
+
|
|
|
|
+ classify_tab:0,//tab栏选中的项
|
|
|
|
+ isShowShareDia:false,
|
|
};
|
|
};
|
|
},
|
|
},
|
|
watch: {
|
|
watch: {
|
|
@@ -480,7 +521,17 @@ export default {
|
|
},
|
|
},
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
-
|
|
|
|
|
|
+ //切换表格tab
|
|
|
|
+ changeTab(index){
|
|
|
|
+ this.classify_tab = index
|
|
|
|
+ },
|
|
|
|
+ //表格 设置共享/取消共享
|
|
|
|
+ handleShareCommand(command){
|
|
|
|
+ if(command.key==='share'){
|
|
|
|
+ this.currentTable = command.item
|
|
|
|
+ this.isShowShareDia = true
|
|
|
|
+ }
|
|
|
|
+ },
|
|
/* 获取表格分类 */
|
|
/* 获取表格分类 */
|
|
getTreeData(params = null) {
|
|
getTreeData(params = null) {
|
|
sheetInterface.classifyList({Source: this.sourceMap[this.$route.path],IsShowMe: this.isShowMe}).then((res) => {
|
|
sheetInterface.classifyList({Source: this.sourceMap[this.$route.path],IsShowMe: this.isShowMe}).then((res) => {
|
|
@@ -1019,7 +1070,25 @@ $normal-font: 14px;
|
|
.search-cont {
|
|
.search-cont {
|
|
padding: 0 20px;
|
|
padding: 0 20px;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+ .left-tab {
|
|
|
|
+ display: flex;
|
|
|
|
+ align-items: center;
|
|
|
|
+ padding: 20px 20px 0;
|
|
|
|
+ .tab {
|
|
|
|
+ cursor: pointer;
|
|
|
|
+ font-size: 16px;
|
|
|
|
+ border-bottom: 2px solid transparent;
|
|
|
|
+ margin-right: 40px;
|
|
|
|
+ padding-bottom: 5px;
|
|
|
|
+ &.act {
|
|
|
|
+ color: #409eff;
|
|
|
|
+ border-color: #409eff;
|
|
|
|
+ }
|
|
|
|
+ &:hover {
|
|
|
|
+ color: #409eff;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
.tree-cont {
|
|
.tree-cont {
|
|
padding: 30px 20px;
|
|
padding: 30px 20px;
|
|
max-height: calc(100vh - 280px);
|
|
max-height: calc(100vh - 280px);
|