forked from github/dataease
Merge branch 'dev' into pr@dev@pages
This commit is contained in:
commit
6ee8206e02
16
.github/workflows/sync2gitee.yml
vendored
Normal file
16
.github/workflows/sync2gitee.yml
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
name: sync2gitee
|
||||
on: [push]
|
||||
|
||||
jobs:
|
||||
repo-sync:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Mirror the Github organization repos to Gitee.
|
||||
uses: Yikun/hub-mirror-action@master
|
||||
with:
|
||||
src: 'github/dataease'
|
||||
dst: 'gitee/fit2cloud-feizhiyun'
|
||||
dst_key: ${{ secrets.GITEE_PRIVATE_KEY }}
|
||||
dst_token: ${{ secrets.GITEE_TOKEN }}
|
||||
static_list: "DataEase"
|
||||
force_update: true
|
@ -509,6 +509,9 @@ public class PanelGroupService {
|
||||
if (dynamicDataMap == null) {
|
||||
DataEaseException.throwException("Please use the template after v1.9");
|
||||
}
|
||||
//custom组件替换.tableId 和 parentFieldId 追加识别标识
|
||||
templateData = templateData.replaceAll("\"tableId\":\"", "\"tableId\":\"no_auth");
|
||||
templateData = templateData.replaceAll("\"fieldsParent\":\\{\"id\":\"", "\"fieldsParent\":\\{\"id\":\"no_auth");
|
||||
|
||||
List<PanelViewInsertDTO> panelViews = new ArrayList<>();
|
||||
List<PanelGroupExtendDataDTO> viewsData = new ArrayList<>();
|
||||
|
@ -138,6 +138,14 @@ export function fieldList(id, showLoading = true) {
|
||||
}
|
||||
|
||||
export function fieldListWithPermission(id, showLoading = true) {
|
||||
//初始模板中的过滤组件无需走后台
|
||||
if (id.indexOf('no_auth') > -1) {
|
||||
return new Promise(function(resolve) {
|
||||
resolve({
|
||||
data: []
|
||||
})
|
||||
})
|
||||
}
|
||||
return request({
|
||||
url: '/dataset/field/listWithPermission/' + id,
|
||||
loading: showLoading,
|
||||
|
@ -252,6 +252,9 @@ export default {
|
||||
bus.$off('button-dialog-edit', this.editButtonDialog)
|
||||
},
|
||||
methods: {
|
||||
getWrapperChildRefs() {
|
||||
return this.$refs[this.editorRefName].getWrapperChildRefs()
|
||||
},
|
||||
initEvents() {
|
||||
bus.$on('component-dialog-edit', this.editDialog)
|
||||
bus.$on('button-dialog-edit', this.editButtonDialog)
|
||||
|
@ -154,7 +154,7 @@
|
||||
/>
|
||||
</el-dropdown-item>
|
||||
|
||||
<el-dropdown-item>
|
||||
<el-dropdown-item v-if="showPdfPageButton">
|
||||
<span>
|
||||
<svg-icon
|
||||
style="width: 16px; height: 16px;"
|
||||
@ -286,7 +286,8 @@ export default {
|
||||
scale: '100%',
|
||||
timer: null,
|
||||
changes: 0,
|
||||
closePanelVisible: false
|
||||
closePanelVisible: false,
|
||||
showPdfPageButton: false
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
@ -223,10 +223,18 @@ export default {
|
||||
runAnimation(this.$el, this.config.animations)
|
||||
},
|
||||
methods: {
|
||||
setChartData(chart) {
|
||||
this.chart = chart
|
||||
getComponentId() {
|
||||
return this.config.id
|
||||
},
|
||||
getCanvasId() {
|
||||
return this.canvasId
|
||||
},
|
||||
getType() {
|
||||
return this.config.type
|
||||
},
|
||||
getWrapperChildRefs() {
|
||||
return this.$refs.wrapperChild.getWrapperChildRefs()
|
||||
},
|
||||
getStyle,
|
||||
getShapeStyleIntDeDrag(style, prop) {
|
||||
if (prop === 'rotate') {
|
||||
return style['rotate']
|
||||
|
@ -1017,7 +1017,7 @@ export default {
|
||||
]),
|
||||
|
||||
searchButtonInfo() {
|
||||
const result = this.buildButtonFilterMap(this.componentData)
|
||||
const result = this.buildButtonFilterMap(this.$store.state.componentData)
|
||||
return result
|
||||
},
|
||||
filterMap() {
|
||||
@ -1138,6 +1138,25 @@ export default {
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
getWrapperChildRefs() {
|
||||
return this.$refs['wrapperChild']
|
||||
},
|
||||
getAllWrapperChildRefs() {
|
||||
let allChildRefs = []
|
||||
const currentChildRefs = this.getWrapperChildRefs()
|
||||
if (currentChildRefs && currentChildRefs.length > 0) {
|
||||
allChildRefs.push.apply(allChildRefs, currentChildRefs)
|
||||
}
|
||||
currentChildRefs && currentChildRefs.forEach(subRef => {
|
||||
if (subRef?.getType && subRef.getType() === 'de-tabs') {
|
||||
const currentTabChildRefs = subRef.getWrapperChildRefs()
|
||||
if (currentTabChildRefs && currentTabChildRefs.length > 0) {
|
||||
allChildRefs.push.apply(allChildRefs, currentTabChildRefs)
|
||||
}
|
||||
}
|
||||
})
|
||||
return allChildRefs
|
||||
},
|
||||
setChartData(chart) {
|
||||
this.componentData.forEach((item, index) => {
|
||||
if (item.type === 'view' && item.component === 'user-view' && item.propValue.viewId === chart.id) {
|
||||
@ -1154,7 +1173,7 @@ export default {
|
||||
})
|
||||
},
|
||||
refreshButtonInfo(isClear = false) {
|
||||
const result = this.buildButtonFilterMap(this.componentData, isClear)
|
||||
const result = this.buildButtonFilterMap(this.$store.state.componentData, isClear)
|
||||
this.searchButtonInfo.buttonExist = result.buttonExist
|
||||
this.searchButtonInfo.relationFilterIds = result.relationFilterIds
|
||||
this.searchButtonInfo.filterMap = result.filterMap
|
||||
@ -1162,10 +1181,12 @@ export default {
|
||||
this.buttonFilterMap = this.searchButtonInfo.filterMap
|
||||
},
|
||||
triggerSearchButton(isClear = false) {
|
||||
if (this.canvasId !== 'canvas-main') {
|
||||
return
|
||||
}
|
||||
this.refreshButtonInfo(isClear)
|
||||
this.buttonFilterMap = this.searchButtonInfo.filterMap
|
||||
|
||||
this.componentData.forEach(component => {
|
||||
this.$store.state.componentData.forEach(component => {
|
||||
if (component.type === 'view' && this.buttonFilterMap[component.propValue.viewId]) {
|
||||
component.filters = this.buttonFilterMap[component.propValue.viewId]
|
||||
}
|
||||
@ -1212,20 +1233,16 @@ export default {
|
||||
return result
|
||||
},
|
||||
buildViewKeyFilters(panelItems, result, isClear = false) {
|
||||
const refs = this.$refs
|
||||
if (!this.$refs['wrapperChild'] || !this.$refs['wrapperChild'].length) return result
|
||||
const len = this.$refs['wrapperChild'].length
|
||||
const wrapperChildAll = this.getAllWrapperChildRefs()
|
||||
if (!wrapperChildAll || !wrapperChildAll.length) return result
|
||||
panelItems.forEach((element) => {
|
||||
if (element.type !== 'custom') {
|
||||
return true
|
||||
}
|
||||
|
||||
let param = null
|
||||
const index = this.getComponentIndex(element.id)
|
||||
if (index < 0 || index >= len) {
|
||||
return true
|
||||
}
|
||||
const wrapperChild = refs['wrapperChild'][index]
|
||||
let wrapperChild
|
||||
wrapperChildAll?.forEach(item => {
|
||||
if (item?.['getComponentId'] && item.getComponentId() === element.id) {
|
||||
wrapperChild = item
|
||||
}
|
||||
})
|
||||
if (!wrapperChild || !wrapperChild.getCondition) return true
|
||||
if (isClear) {
|
||||
wrapperChild.clearHandler && wrapperChild.clearHandler()
|
||||
@ -1234,9 +1251,11 @@ export default {
|
||||
const condition = formatCondition(param)
|
||||
const vValid = valueValid(condition)
|
||||
const filterComponentId = condition.componentId
|
||||
const conditionCanvasId = wrapperChild.getCanvasId && wrapperChild.getCanvasId()
|
||||
Object.keys(result).forEach(viewId => {
|
||||
const vidMatch = viewIdMatch(condition.viewIds, viewId)
|
||||
const viewFilters = result[viewId]
|
||||
const canvasMatch = this.checkCanvasViewIdsMatch(conditionCanvasId, viewId)
|
||||
let j = viewFilters.length
|
||||
while (j--) {
|
||||
const filter = viewFilters[j]
|
||||
@ -1244,14 +1263,24 @@ export default {
|
||||
viewFilters.splice(j, 1)
|
||||
}
|
||||
}
|
||||
vidMatch && vValid && viewFilters.push(condition)
|
||||
canvasMatch && vidMatch && vValid && viewFilters.push(condition)
|
||||
})
|
||||
})
|
||||
return result
|
||||
},
|
||||
checkCanvasViewIdsMatch(conditionCanvasId, viewId) {
|
||||
if (conditionCanvasId === 'canvas-main') {
|
||||
return true
|
||||
}
|
||||
for (let index = 0; index < this.$store.state.componentData.length; index++) {
|
||||
const item = this.$store.state.componentData[index]
|
||||
if (item.type === 'view' && item.propValue.viewId === viewId && item.canvasId === conditionCanvasId) return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
getComponentIndex(id) {
|
||||
for (let index = 0; index < this.componentData.length; index++) {
|
||||
const item = this.componentData[index]
|
||||
for (let index = 0; index < this.$store.state.componentData.length; index++) {
|
||||
const item = this.$store.state.componentData[index]
|
||||
if (item.id === id) return index
|
||||
}
|
||||
return -1
|
||||
|
@ -346,10 +346,10 @@ export default {
|
||||
return this.targetLinkageInfo[this.element.propValue.viewId]
|
||||
},
|
||||
miniHeight() {
|
||||
return this.mobileLayoutStatus ? 1 : 4
|
||||
return this.mobileLayoutStatus ? 1 : 1
|
||||
},
|
||||
miniWidth() {
|
||||
return this.mobileLayoutStatus ? 1 : 4
|
||||
return this.mobileLayoutStatus ? 1 : 1
|
||||
},
|
||||
curCanvasScaleSelf() {
|
||||
return this.curCanvasScaleMap[this.canvasId]
|
||||
|
@ -366,7 +366,7 @@ export default {
|
||||
]),
|
||||
|
||||
searchButtonInfo() {
|
||||
const result = this.buildButtonFilterMap(this.componentData)
|
||||
const result = this.buildButtonFilterMap(this.$store.state.componentData)
|
||||
return result
|
||||
},
|
||||
filterMap() {
|
||||
@ -448,6 +448,26 @@ export default {
|
||||
bus.$off('trigger-reset-button', this.triggerResetButton)
|
||||
},
|
||||
methods: {
|
||||
getWrapperChildRefs() {
|
||||
return this.$refs['viewWrapperChild']
|
||||
},
|
||||
getAllWrapperChildRefs() {
|
||||
let allChildRefs = []
|
||||
const currentChildRefs = this.getWrapperChildRefs()
|
||||
if (currentChildRefs && currentChildRefs.length > 0) {
|
||||
allChildRefs.push.apply(allChildRefs, currentChildRefs)
|
||||
}
|
||||
currentChildRefs && currentChildRefs.forEach(subRef => {
|
||||
if (subRef?.getType && subRef.getType() === 'de-tabs') {
|
||||
const currentTabChildRefs = subRef.getWrapperChildRefs()
|
||||
if (currentTabChildRefs && currentTabChildRefs.length > 0) {
|
||||
allChildRefs.push.apply(allChildRefs, currentTabChildRefs)
|
||||
}
|
||||
}
|
||||
})
|
||||
return allChildRefs
|
||||
},
|
||||
|
||||
getCanvasHeight() {
|
||||
return this.mainHeightCount
|
||||
},
|
||||
@ -484,12 +504,15 @@ export default {
|
||||
})
|
||||
},
|
||||
triggerSearchButton(isClear = false) {
|
||||
const result = this.buildButtonFilterMap(this.componentData, isClear)
|
||||
if (this.canvasId !== 'canvas-main') {
|
||||
return
|
||||
}
|
||||
const result = this.buildButtonFilterMap(this.$store.state.componentData, isClear)
|
||||
this.searchButtonInfo.autoTrigger = result.autoTrigger
|
||||
this.searchButtonInfo.filterMap = result.filterMap
|
||||
this.buttonFilterMap = this.searchButtonInfo.filterMap
|
||||
|
||||
this.componentData.forEach(component => {
|
||||
this.$store.state.componentData.forEach(component => {
|
||||
if (component.type === 'view' && this.buttonFilterMap[component.propValue.viewId]) {
|
||||
component.filters = this.buttonFilterMap[component.propValue.viewId]
|
||||
}
|
||||
@ -534,19 +557,20 @@ export default {
|
||||
return result
|
||||
},
|
||||
buildViewKeyFilters(panelItems, result, isClear = false) {
|
||||
const refs = this.$refs
|
||||
if (!this.$refs['viewWrapperChild'] || !this.$refs['viewWrapperChild'].length) return result
|
||||
const wrapperChildAll = this.getAllWrapperChildRefs()
|
||||
if (!wrapperChildAll || !wrapperChildAll.length) return result
|
||||
panelItems.forEach((element) => {
|
||||
if (element.type !== 'custom') {
|
||||
return true
|
||||
}
|
||||
|
||||
const index = this.getComponentIndex(element.id)
|
||||
if (index < 0) {
|
||||
return true
|
||||
}
|
||||
let wrapperChild
|
||||
wrapperChildAll?.forEach(item => {
|
||||
if (item?.['getComponentId'] && item.getComponentId() === element.id) {
|
||||
wrapperChild = item
|
||||
}
|
||||
})
|
||||
if (!wrapperChild || !wrapperChild.getCondition) return true
|
||||
let param = null
|
||||
const wrapperChild = refs['viewWrapperChild'][index]
|
||||
if (isClear) {
|
||||
wrapperChild.clearHandler && wrapperChild.clearHandler()
|
||||
}
|
||||
@ -554,9 +578,12 @@ export default {
|
||||
const condition = formatCondition(param)
|
||||
const vValid = valueValid(condition)
|
||||
const filterComponentId = condition.componentId
|
||||
const conditionCanvasId = wrapperChild.getCanvasId && wrapperChild.getCanvasId()
|
||||
Object.keys(result).forEach(viewId => {
|
||||
const vidMatch = viewIdMatch(condition.viewIds, viewId)
|
||||
const viewFilters = result[viewId]
|
||||
const canvasMatch = this.checkCanvasViewIdsMatch(conditionCanvasId, viewId)
|
||||
|
||||
let j = viewFilters.length
|
||||
while (j--) {
|
||||
const filter = viewFilters[j]
|
||||
@ -564,11 +591,21 @@ export default {
|
||||
viewFilters.splice(j, 1)
|
||||
}
|
||||
}
|
||||
vidMatch && vValid && viewFilters.push(condition)
|
||||
canvasMatch && vidMatch && vValid && viewFilters.push(condition)
|
||||
})
|
||||
})
|
||||
return result
|
||||
},
|
||||
checkCanvasViewIdsMatch(conditionCanvasId, viewId) {
|
||||
if (conditionCanvasId === 'canvas-main') {
|
||||
return true
|
||||
}
|
||||
for (let index = 0; index < this.$store.state.componentData.length; index++) {
|
||||
const item = this.$store.state.componentData[index]
|
||||
if (item.type === 'view' && item.propValue.viewId === viewId && item.canvasId === conditionCanvasId) return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
getComponentIndex(id) {
|
||||
for (let index = 0; index < this.componentData.length; index++) {
|
||||
const item = this.componentData[index]
|
||||
|
@ -175,6 +175,12 @@ export default {
|
||||
this.$set(this.element.style, 'innerBgColor', innerBgColor || '')
|
||||
},
|
||||
methods: {
|
||||
getComponentId() {
|
||||
return this.element.id
|
||||
},
|
||||
getCanvasId() {
|
||||
return this.canvasId
|
||||
},
|
||||
handlerPositionChange(val) {
|
||||
const { horizontal = 'left', vertical = 'center' } = val
|
||||
this.titleStyle = {
|
||||
@ -185,7 +191,6 @@ export default {
|
||||
flexDirection: 'column'
|
||||
}
|
||||
|
||||
|
||||
if (vertical !== 'top' && this.element.component !== 'de-select-grid') {
|
||||
this.titleStyle = null
|
||||
this.outsideStyle = {
|
||||
|
@ -630,7 +630,8 @@ export default {
|
||||
}
|
||||
if (this.element.auxiliaryMatrix && this.curCanvasScaleSelf) {
|
||||
const height = Math.round(this.height / this.curCanvasScaleSelf.matrixStyleHeight) * this.curCanvasScaleSelf.matrixStyleHeight
|
||||
return (height - this.curGap * 2) + 'px'
|
||||
const hp = (height - this.curGap * 2)
|
||||
return (hp > 3 ? hp : 3) + 'px'
|
||||
} else {
|
||||
return (this.height - this.curGap * 2) + 'px'
|
||||
}
|
||||
@ -682,14 +683,14 @@ export default {
|
||||
return (this.canvasStyleData.panel.gap === 'yes' && this.element.auxiliaryMatrix) ? this.componentGap : 0
|
||||
},
|
||||
miniWidth() {
|
||||
return this.element.auxiliaryMatrix ? this.curCanvasScaleSelf.matrixStyleWidth * (this.mobileLayoutStatus ? 1 : 4) : 0
|
||||
return this.element.auxiliaryMatrix ? this.curCanvasScaleSelf.matrixStyleWidth * (this.mobileLayoutStatus ? 1 : 1) : 0
|
||||
},
|
||||
miniHeight() {
|
||||
if (this.element.auxiliaryMatrix) {
|
||||
if (this.element.component === 'de-number-range') {
|
||||
return this.element.auxiliaryMatrix ? this.curCanvasScaleSelf.matrixStyleHeight * (this.mobileLayoutStatus ? 1 : 4) : 0
|
||||
return this.element.auxiliaryMatrix ? this.curCanvasScaleSelf.matrixStyleHeight * (this.mobileLayoutStatus ? 1 : 1) : 0
|
||||
} else {
|
||||
return this.element.auxiliaryMatrix ? this.curCanvasScaleSelf.matrixStyleHeight * (this.mobileLayoutStatus ? 1 : 4) : 0
|
||||
return this.element.auxiliaryMatrix ? this.curCanvasScaleSelf.matrixStyleHeight * (this.mobileLayoutStatus ? 1 : 1) : 0
|
||||
}
|
||||
} else {
|
||||
return 0
|
||||
|
@ -108,6 +108,7 @@ export default {
|
||||
handler() {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.table.doLayout()
|
||||
this.$emit('columnsChange')
|
||||
})
|
||||
},
|
||||
deep: true
|
||||
|
@ -152,11 +152,17 @@ export default {
|
||||
},
|
||||
resetDefaultValue(id) {
|
||||
if (this.inDraw && this.manualModify && this.element.id === id) {
|
||||
const values = this.element.options.value
|
||||
this.form.min = values[0]
|
||||
if (values.length > 1) {
|
||||
this.form.max = values[1]
|
||||
if (!this.element.options.value) {
|
||||
this.form.min = null
|
||||
this.form.max = null
|
||||
} else {
|
||||
const values = this.element.options.value
|
||||
this.form.min = values[0]
|
||||
if (values.length > 1) {
|
||||
this.form.max = values[1]
|
||||
}
|
||||
}
|
||||
|
||||
this.search()
|
||||
}
|
||||
},
|
||||
|
@ -76,6 +76,7 @@
|
||||
>
|
||||
<Preview
|
||||
:component-data="tabCanvasComponentData(item.name)"
|
||||
:ref="'canvasTabRef-'+item.name"
|
||||
:canvas-style-data="canvasStyleData"
|
||||
:canvas-id="element.id+'-'+item.name"
|
||||
:panel-info="panelInfo"
|
||||
@ -458,6 +459,23 @@ export default {
|
||||
bus.$off('add-new-tab', this.addNewTab)
|
||||
},
|
||||
methods: {
|
||||
getType() {
|
||||
return this.element.type
|
||||
},
|
||||
getWrapperChildRefs() {
|
||||
let refsSubAll = []
|
||||
const _this = this
|
||||
this.element.options.tabList.forEach(tabItem => {
|
||||
const refsSub = _this.$refs['canvasTabRef-' + tabItem.name]
|
||||
if (refsSub && refsSub.length) {
|
||||
const refsSubArray = refsSub[0].getWrapperChildRefs()
|
||||
if (refsSubArray && refsSubArray.length > 0) {
|
||||
refsSubAll.push.apply(refsSubAll, refsSubArray)
|
||||
}
|
||||
}
|
||||
})
|
||||
return refsSubAll
|
||||
},
|
||||
titleStyle(itemName) {
|
||||
if (this.activeTabName === itemName) {
|
||||
return {
|
||||
|
@ -1751,4 +1751,12 @@ div:focus {
|
||||
.el-tree-node__label {
|
||||
color: var(--deTextPrimary, #1F2329) !important;
|
||||
}
|
||||
}
|
||||
|
||||
.el-pagination__editor.el-input .el-input__inner {
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
.el-table__fixed-right::before {
|
||||
display: none;
|
||||
}
|
@ -138,7 +138,7 @@
|
||||
<svg-icon
|
||||
:icon-class="showTable ? 'reference-table' : 'reference-field'"
|
||||
/>
|
||||
{{ (showTable && fieldData.length) || tableData.length }}
|
||||
{{ (showTable && fieldDataCopy.length) || tableDataCopy.length }}
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
|
@ -1114,6 +1114,25 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
reloadStatus(apiConfiguration = []) {
|
||||
let arr = []
|
||||
let arrError = []
|
||||
let arrSuccess = []
|
||||
if (!Array.isArray(apiConfiguration)) {
|
||||
arr = JSON.parse(apiConfiguration)
|
||||
if (!Array.isArray(arr)) return
|
||||
}
|
||||
arrError = arr.filter(ele => ele.status === 'Error').map(ele => ele.name)
|
||||
arrSuccess = arr.filter(ele => ele.status === 'Success').map(ele => ele.name)
|
||||
this.form.apiConfiguration.forEach(ele => {
|
||||
if (arrError.includes(ele.name)) {
|
||||
ele.status = 'Error'
|
||||
}
|
||||
if (arrSuccess.includes(ele.name)) {
|
||||
ele.status = 'Success'
|
||||
}
|
||||
})
|
||||
},
|
||||
validaDatasource() {
|
||||
if (!this.form.configuration.schema && this.form.type === 'oracle') {
|
||||
this.openMessageSuccess('datasource.please_choose_schema', 'error')
|
||||
@ -1167,6 +1186,9 @@ export default {
|
||||
if (res.success) {
|
||||
this.openMessageSuccess('datasource.validate_success')
|
||||
} else {
|
||||
if (data.type === 'api') {
|
||||
this.reloadStatus(res.data?.configuration)
|
||||
}
|
||||
if (res.message.length < 2500) {
|
||||
this.openMessageSuccess(res.message, 'error')
|
||||
} else {
|
||||
|
@ -118,13 +118,16 @@
|
||||
v-loading="$store.getters.loadingMap[$store.getters.currentPath]"
|
||||
:table-data="data"
|
||||
:columns="checkedColumnNames"
|
||||
current-row-key="email"
|
||||
:pagination="paginationConfig"
|
||||
@columnsChange="columnsChange"
|
||||
@sort-change="sortChange"
|
||||
@size-change="handleSizeChange"
|
||||
@current-change="handleCurrentChange"
|
||||
>
|
||||
<el-table-column
|
||||
prop="username"
|
||||
key="username"
|
||||
label="ID"
|
||||
/>
|
||||
<el-table-column
|
||||
@ -137,6 +140,7 @@
|
||||
<!-- <el-table-column prop="gender" :label="$t('commons.gender')" width="60" /> -->
|
||||
<el-table-column
|
||||
prop="from"
|
||||
key="from"
|
||||
:label="$t('user.source')"
|
||||
width="80"
|
||||
>
|
||||
@ -237,6 +241,7 @@
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
key="__operation"
|
||||
slot="__operation"
|
||||
:label="$t('commons.operating')"
|
||||
fixed="right"
|
||||
@ -554,6 +559,13 @@ export default {
|
||||
this.showScroll = dom && dom.scrollWidth > dom.offsetWidth
|
||||
})
|
||||
},
|
||||
columnsChange() {
|
||||
const arr = this.data
|
||||
this.data = []
|
||||
this.$nextTick(() => {
|
||||
this.data = arr
|
||||
})
|
||||
},
|
||||
search() {
|
||||
const param = {
|
||||
orders: formatOrders(this.orderConditions),
|
||||
|
Loading…
Reference in New Issue
Block a user