From a0431deb4d557cd50d304df885a275edf1390f56 Mon Sep 17 00:00:00 2001
From: yuxc <yuxc@vci-tech.com>
Date: 星期四, 16 一月 2025 17:34:32 +0800
Subject: [PATCH] 1、修改属性报错修护。 2、修改用户信息增加个人信息处修改判断处理。
---
Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-table.vue | 68 +++++++++++++++++++++++++---------
1 files changed, 50 insertions(+), 18 deletions(-)
diff --git a/Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-table.vue b/Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-table.vue
index 9314cbc..36bbd88 100644
--- a/Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-table.vue
+++ b/Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-table.vue
@@ -4,15 +4,15 @@
v-model="form"
:data="tableList"
:option="option"
- :page.sync="pageType"
+ :page.sync="componentVO.uiComponentType == 'TreeTable'?{}:pageType"
:table-loading="loading"
@on-load="onLoad"
@search-reset="searchReset"
+ @search-change='searchChange'
@refresh-change="handleRefresh"
@current-change="currentChange"
@size-change="sizeChange"
@row-click="rowClickChange"
- @search-change='searchChange'
@filter="filterChange"
@selection-change="selectChange">
<!--top鍖哄煙鎸夐挳-->
@@ -57,6 +57,14 @@
<el-button icon="el-icon-refresh" circle @click="$refs.dataTable.refreshChange()"
:size="scope.size"></el-button>
</el-tooltip>
+ </template>
+ <template #icon="{ row }">
+ <span class="avue-icon avue-icon--small">
+ <svg v-if="row.icon && row.icon.indexOf('#')==0" aria-hidden="true">
+ <use :xlink:href="row.icon"></use>
+ </svg>
+ <i v-else :class="row.icon"></i>
+ </span>
</template>
</avue-crud>
</div>
@@ -203,7 +211,7 @@
isShow: {
handler(newval) {
if (newval && this.$el.clientHeight > 50) {
- this.parentHeight = this.$el.clientHeight - this.$children[0].$children[1].$children[0].$el.clientHeight - this.$children[0].$children[2].$el.clientHeight - 5;
+ this.parentHeight = this.$el.clientHeight - this.$children[0].$children[1].$children[0].$el.clientHeight - (this.$children[0].$children[2].$el.clientHeight || 57) - 5;
}
if(newval){
this.handleRefresh();
@@ -226,10 +234,10 @@
},
'sourceData':{
handler(newval) {
- if(newval) {
+ if(newval && Object.keys(newval).length>0) {
this.sourceDataMapParams=this.sourceDataMap();
this.getParams();
- // this.handleRefresh();
+ this.handleRefresh();
}
},
deep: true,
@@ -262,6 +270,7 @@
const queryFields = !validatenull(this.currentDefineVO.queryColumns) ? this.currentDefineVO.queryColumns.map(item => item.field) : [];
return this.currentDefineVO.cols[0].map(item => {
const search = queryFields.includes(item.field); // 鍒ゆ柇 field 鏄惁鍦� queryColumns 閲�
+ item.type = this.columnType[item.fieldType] || item.fieldType;
if (this.currentDefineVO.btmType == 'fileobject' && item.field == 'name') {
//鏄枃浠�
item.formatter = function (d) {
@@ -272,38 +281,57 @@
if (typeof formatter == "string" && formatter != '') {
formatter = eval("(" + formatter + ")");
}
- item.type = this.columnType[item.fieldType] || item.fieldType;
+ if (['date', 'datetime', 'time'].includes(item.type)) {
+ item.valueFormat = item.dateFormate;
+ item.format = item.dateFormate;
+ }
return {
...item,
prop: item.field,
label: item.title,
search: search,
- formatter: formatter
+ formatter: formatter,
+ overHidden: true
};
});
},
sourceDataMap: function () {
const sourceDataMap = {};
if (Object.keys(this.sourceData).length>0) {
- if(this.sourceData.oid ) {
- if (this.sourceData.oid.indexOf('@vcitreesep@') > -1) {
- this.sourceData.oid = this.sourceData.oid.split('@vcitreesep@')[1];
+ if(this.sourceData.part && Object.keys(this.sourceData.part).length>0){
+ //璇存槑婧愭暟鎹槸鏍戣妭鐐�
+ if(this.sourceData.part.oid ) {
+ if (this.sourceData.part.oid.indexOf('@vcitreesep@') > -1) {
+ this.sourceData.part.oid = this.sourceData.oid.split('@vcitreesep@')[1];
+ }
+ sourceDataMap.sourceBtmName = this.sourceBtmType;
+ sourceDataMap.sourceOid = this.sourceData.part.oid;
}
- sourceDataMap.sourceBtmName = this.sourceBtmType;;
- sourceDataMap.sourceOid = this.sourceData.oid;
+ }else {
+ if(this.sourceData.oid ) {
+ if (this.sourceData.oid.indexOf('@vcitreesep@') > -1) {
+ this.sourceData.oid = this.sourceData.oid.split('@vcitreesep@')[1];
+ }
+ sourceDataMap.sourceBtmName = this.sourceBtmType;
+ sourceDataMap.sourceOid = this.sourceData.oid;
+ }
}
+
for (let i in this.sourceData) {
const item = this.sourceData[i]
- if (item && item.constructor === Object) continue;
- if (i == 'type' || i == 'context' || i == 'content') continue;
- sourceDataMap['sourceData["' + i + '"]'] = item
+ if (['type', 'context', 'content', 'querytemplate', 'querytype'].includes(i)) continue;
+ if (item && item.constructor === Object) {
+ sourceDataMap['sourceData["' + i + '"]'] = JSON.stringify(item)
+ }else {
+ sourceDataMap['sourceData["' + i + '"]'] = item
+ }
}
}
if (Object.keys(this.paramVOS).length>0) {
for (let j in this.paramVOS) {
if (this.paramVOS[j] && this.paramVOS[j].constructor === Object) continue;
- if (j == 'type' || j == 'context' || j == 'content' || j == "getdataurl" || j == "getdatamethod" || j == "url" || j == "method" || j == "uploadfileurl" || j == "title") continue;
+ if (['type', 'context', 'content', "getdataurl", "getdatamethod", "url", "method", "uploadfileurl", "title", 'querytemplate', 'querytype', 'usesourcedata','component'].includes(j)) continue;
sourceDataMap['sourceData["' + j + '"]'] = this.paramVOS[j]
}
}
@@ -311,7 +339,7 @@
},
getParams: function () {
const tableParams = {
- btmname: this.currentDefineVO.btmType,
+ btmName: this.currentDefineVO.btmType,
btmType:this.currentDefineVO.btmType,
tableDefineId: this.currentDefineVO.id,
componentOid: this.componentVO.oid,
@@ -328,7 +356,11 @@
if (Object.keys(this.sourceData).length>0 && this.isShow) {
this.tableList = [];
this.loading = true;
- getList(page.currentPage, page.pageSize, Object.assign({},this.params,this.query,params)).then(res => {
+ let url='';
+ if(this.componentVO.bsDataModel && this.componentVO.bsDataModel.indexOf('/')!=-1){
+ url=this.componentVO.bsDataModel;
+ }
+ getList(page.currentPage, page.pageSize, Object.assign({},this.params,this.query,params),url).then(res => {
let data = [];
if (res.data && res.data.data) {
data = res.data.data;
--
Gitblit v1.9.3