mirror of
https://github.com/dataease/dataease.git
synced 2026-05-24 06:18:10 +08:00
Merge pull request #1154 from dataease/pr@dev@feat_share_out
feat: 新增我分享的
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function saveShare(data) {
|
||||
/* export function saveShare(data) {
|
||||
return request({
|
||||
url: '/api/share/',
|
||||
method: 'post',
|
||||
loading: true,
|
||||
data
|
||||
})
|
||||
}
|
||||
} */
|
||||
|
||||
export function loadShares(data) {
|
||||
return request({
|
||||
@@ -27,6 +27,14 @@ export function loadTree(data) {
|
||||
})
|
||||
}
|
||||
|
||||
export function loadShareOutTree() {
|
||||
return request({
|
||||
url: '/api/share/shareOut',
|
||||
method: 'post',
|
||||
loading: true
|
||||
})
|
||||
}
|
||||
|
||||
export function fineSave(data) {
|
||||
return request({
|
||||
url: '/api/share/fineSave',
|
||||
|
||||
@@ -17,7 +17,8 @@
|
||||
<script>
|
||||
import { roleGrid } from '@/api/system/user'
|
||||
import { formatCondition } from '@/utils/index'
|
||||
import { saveShare, loadShares } from '@/api/panel/share'
|
||||
import { loadShares } from '@/api/panel/share'
|
||||
/* import { saveShare, loadShares } from '@/api/panel/share' */
|
||||
export default {
|
||||
name: 'GrantRole',
|
||||
props: {
|
||||
@@ -85,7 +86,7 @@ export default {
|
||||
}
|
||||
},
|
||||
|
||||
save(msg) {
|
||||
/* save(msg) {
|
||||
const rows = this.$refs.table.store.states.selection
|
||||
const request = this.buildRequest(rows)
|
||||
saveShare(request).then(res => {
|
||||
@@ -95,7 +96,7 @@ export default {
|
||||
this.$error(err.message)
|
||||
return false
|
||||
})
|
||||
},
|
||||
}, */
|
||||
|
||||
cancel() {
|
||||
},
|
||||
|
||||
@@ -1,24 +1,47 @@
|
||||
<template>
|
||||
<div>
|
||||
|
||||
<el-tree :data="datas" :props="defaultProps" node-key="name" :default-expanded-keys="expandNodes" @node-click="handleNodeClick">
|
||||
<span slot-scope="{ data }" class="custom-tree-node">
|
||||
<span :class="!!data.msgNode ? 'msg-node-class': ''">
|
||||
<span v-if="!!data.id">
|
||||
<el-button
|
||||
icon="el-icon-picture-outline"
|
||||
type="text"
|
||||
/>
|
||||
<el-col style="padding: 0 5px 0 5px;">
|
||||
<el-row>
|
||||
<span class="header-title">分享给我</span>
|
||||
<div class="block" style="margin-top:8px;">
|
||||
<el-tree :data="datas" :props="defaultProps" node-key="name" :default-expanded-keys="expandNodes" @node-click="handleNodeClick">
|
||||
<span slot-scope="{ data }" class="custom-tree-node">
|
||||
<span :class="!!data.msgNode ? 'msg-node-class': ''">
|
||||
<span v-if="!!data.id">
|
||||
<el-button
|
||||
icon="el-icon-picture-outline"
|
||||
type="text"
|
||||
/>
|
||||
</span>
|
||||
<span style="margin-left: 6px">{{ data.name }}</span>
|
||||
</span>
|
||||
</span>
|
||||
<span style="margin-left: 6px">{{ data.name }}</span>
|
||||
</span>
|
||||
</span>
|
||||
</el-tree>
|
||||
</div>
|
||||
</el-tree>
|
||||
</div>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<span class="header-title">我分享的</span>
|
||||
<div class="block" style="margin-top:8px;">
|
||||
<el-tree :data="outDatas" :props="defaultProps" node-key="name" :default-expand-all="true" @node-click="handleNodeClick">
|
||||
<span slot-scope="{ data }" class="custom-tree-node">
|
||||
<span>
|
||||
<span v-if="!!data.id">
|
||||
<el-button
|
||||
icon="el-icon-picture-outline"
|
||||
type="text"
|
||||
/>
|
||||
</span>
|
||||
<span style="margin-left: 6px">{{ data.name }}</span>
|
||||
</span>
|
||||
</span>
|
||||
</el-tree>
|
||||
</div>
|
||||
</el-row>
|
||||
</el-col>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { loadTree } from '@/api/panel/share'
|
||||
import { loadTree, loadShareOutTree } from '@/api/panel/share'
|
||||
import { uuid } from 'vue-uuid'
|
||||
import { get } from '@/api/panel/panel'
|
||||
import bus from '@/utils/bus'
|
||||
@@ -37,7 +60,8 @@ export default {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
},
|
||||
expandNodes: []
|
||||
expandNodes: [],
|
||||
outDatas: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -47,6 +71,9 @@ export default {
|
||||
this.expandMsgNode(this.msgPanelIds)
|
||||
}
|
||||
})
|
||||
this.initOutData().then(res => {
|
||||
this.outDatas = res.data
|
||||
})
|
||||
},
|
||||
|
||||
methods: {
|
||||
@@ -54,6 +81,9 @@ export default {
|
||||
const param = {}
|
||||
return loadTree(param)
|
||||
},
|
||||
initOutData() {
|
||||
return loadShareOutTree()
|
||||
},
|
||||
handleNodeClick(data) {
|
||||
get('panel/group/findOne/' + data.id).then(response => {
|
||||
this.$store.commit('setComponentData', this.resetID(JSON.parse(response.data.panelData)))
|
||||
@@ -96,6 +126,15 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.header-title {
|
||||
font-size: 14px;
|
||||
flex: 1;
|
||||
color: var(--TextPrimary, #606266);
|
||||
font-weight: bold;
|
||||
display: block;
|
||||
height: 100%;
|
||||
/*line-height: 36px;*/
|
||||
}
|
||||
.msg-node-class {
|
||||
color: red;
|
||||
>>> i{
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
<script>
|
||||
import { userLists } from '@/api/system/user'
|
||||
import { formatCondition } from '@/utils/index'
|
||||
import { saveShare, loadShares } from '@/api/panel/share'
|
||||
import { loadShares } from '@/api/panel/share'
|
||||
/* import { saveShare, loadShares } from '@/api/panel/share' */
|
||||
export default {
|
||||
name: 'GrantUser',
|
||||
props: {
|
||||
@@ -92,7 +93,7 @@ export default {
|
||||
}
|
||||
},
|
||||
|
||||
save(msg) {
|
||||
/* save(msg) {
|
||||
const rows = this.$refs.table.store.states.selection
|
||||
const request = this.buildRequest(rows)
|
||||
saveShare(request).then(response => {
|
||||
@@ -102,7 +103,7 @@ export default {
|
||||
this.$error(err.message)
|
||||
return false
|
||||
})
|
||||
},
|
||||
}, */
|
||||
|
||||
cancel() {
|
||||
console.log('user cancel')
|
||||
|
||||
Reference in New Issue
Block a user