提交 b4299e82 编写于 作者: ibizdev's avatar ibizdev

tony001 发布系统代码 [后台服务,演示应用]

上级 1e2075ea
<template> <template>
<div class='view-container dekanbanview ibizbookinter-func-kan-ban-view'> <div class="app-view-layout ibizbookinter-func-kan-ban-view" style="height: '100%'; width: '100%';'display': 'flex'; 'flex-direction': 'column';">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="ibizbookinterfunckanbanview"></app-studioaction> <app-standard-container name="page_container" :layoutModelDetails="layoutModelDetails">
<card class='view-card view-no-caption ' :dis-hover="true" :bordered="false"> <template #container_grid1>
<div class='view-top-messages'> <app-simpleflex-container name="container_grid1" :layoutModelDetails="layoutModelDetails">
<app-alert-group position='TOP' :context="context" :viewparam="viewparams" infoGroup='VMGroup59' viewname='ibizbookinterfunckanbanview'></app-alert-group> </div> <template #container1>
<div class='content-container'> <app-simpleflex-container name="container1" :layoutModelDetails="layoutModelDetails">
<div style="margin-bottom:6px;"> <template #view_pagecaption>
<div class="quick-group-container"> <app-preset-caption name="view_pagecaption" :layoutModelDetails="layoutModelDetails">实体看板视图(内置功能)</app-preset-caption>
<app-quick-group :items="quickGroupModel" @valuechange="quickGroupValueChange"></app-quick-group> </template>
</div> </app-simpleflex-container>
<i-input v-show='!this.isExpandSearchForm ' v-model='query' search @on-search='onSearch' placeholder="图书名称" class='pull-left' style='max-width: 400px;margin-top:6px;' /> </template>
<div class='pull-right'> <template #container2>
<app-simpleflex-container name="container2" :layoutModelDetails="layoutModelDetails">
<template #quicksearchbar>
<app-ctrl-pos name="quicksearchbar" :layoutModelDetails="layoutModelDetails">
<i-input v-model="query" search enter-button @on-search="onSearch($event)" class='quick-search-input' style='max-width: 400px;' placeholder="图书名称" />
</app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
<template #container_2>
<app-simpleflex-container name="container_2" :layoutModelDetails="layoutModelDetails">
<template #toolbar>
<app-ctrl-pos name="toolbar" :layoutModelDetails="layoutModelDetails">
<div class='toolbar-container'> <div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600"> <tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class=' deepskyblueToolBar' v-loading:i-button @click="toolbar_click({ tag: 'tbitem3' }, $event)"> <i-button v-show="toolBarModels.tbitem3.visabled" :disabled="toolBarModels.tbitem3.disabled" class=' deepskyblueToolBar' v-loading:i-button @click="toolbar_click({ tag: 'tbitem3' }, $event)">
...@@ -87,15 +99,22 @@ ...@@ -87,15 +99,22 @@
</dropdown-item> </dropdown-item>
</dropdown-menu> </dropdown-menu>
</dropdown> </dropdown>
</div> </div>
</div> </app-ctrl-pos>
</div> </template>
</app-simpleflex-container>
</template>
</app-simpleflex-container>
</template>
<template #container4>
<app-standard-container name="container4" :layoutModelDetails="layoutModelDetails">
<template #searchform>
<app-ctrl-pos name="searchform" :layoutModelDetails="layoutModelDetails">
<view_searchform <view_searchform
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
:context="context" :context="context"
:showBusyIndicator="true" :showBusyIndicator="true"
v-show="isExpandSearchForm"
loaddraftAction="FilterGetDraft" loaddraftAction="FilterGetDraft"
loadAction="FilterGet" loadAction="FilterGet"
...@@ -105,7 +124,11 @@ ...@@ -105,7 +124,11 @@
@load="searchform_load($event)" @load="searchform_load($event)"
@save="searchform_save($event)" @save="searchform_save($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_searchform> </view_searchform>
</app-ctrl-pos>
</template>
<template #kanban>
<app-ctrl-pos name="kanban" :layoutModelDetails="layoutModelDetails">
<view_kanban <view_kanban
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
...@@ -126,11 +149,13 @@ ...@@ -126,11 +149,13 @@
@load="kanban_load($event)" @load="kanban_load($event)"
@beforeload="kanban_beforeload($event)" @beforeload="kanban_beforeload($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_kanban> </view_kanban>
</app-ctrl-pos>
</template>
</app-standard-container>
</template>
</app-standard-container>
</div> </div>
</card>
</div>
</template> </template>
...@@ -145,6 +170,7 @@ import IBIZBOOKAuthService from '@/authservice/ibizbook/ibizbook-auth-service'; ...@@ -145,6 +170,7 @@ import IBIZBOOKAuthService from '@/authservice/ibizbook/ibizbook-auth-service';
import KanBanViewEngine from '@engine/view/kan-ban-view-engine'; import KanBanViewEngine from '@engine/view/kan-ban-view-engine';
import IBIZBOOKUIService from '@/uiservice/ibizbook/ibizbook-ui-service'; import IBIZBOOKUIService from '@/uiservice/ibizbook/ibizbook-ui-service';
import { PanelContainerModel, PanelRawitemModel, PanelFieldModel, PanelControlModel, PanelButtonModel, PanelUserControlModel, PanelTabPanelModel, PanelTabPageModel, PanelCtrlPosModel} from '@/model/panel-detail';
import CodeListService from "@/codelist/codelist-service"; import CodeListService from "@/codelist/codelist-service";
...@@ -311,9 +337,10 @@ export default class IBIZBOOKInterFuncKanBanViewBase extends Vue { ...@@ -311,9 +337,10 @@ export default class IBIZBOOKInterFuncKanBanViewBase extends Vue {
* @memberof IBIZBOOKInterFuncKanBanViewBase * @memberof IBIZBOOKInterFuncKanBanViewBase
*/ */
public containerModel: any = { public containerModel: any = {
view_searchform: { name: 'searchform', type: 'SEARCHFORM' },
view_toolbar: { name: 'toolbar', type: 'TOOLBAR' },
view_kanban: { name: 'kanban', type: 'KANBAN' }, view_kanban: { name: 'kanban', type: 'KANBAN' },
view_toolbar: { name: 'toolbar', type: 'TOOLBAR' },
view_searchform: { name: 'searchform', type: 'SEARCHFORM' },
view_searchbar: { name: 'searchbar', type: 'SEARCHBAR' },
}; };
/** /**
...@@ -383,6 +410,219 @@ export default class IBIZBOOKInterFuncKanBanViewBase extends Vue { ...@@ -383,6 +410,219 @@ export default class IBIZBOOKInterFuncKanBanViewBase extends Vue {
}; };
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public rootLayoutDetailNames: string[] = [ 'page_container' ];
/**
* 视图布局数据
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public layoutData:any = {};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public layoutCtrls: any[] = [
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public layoutModelDetails:any = {
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'LEFT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , fieldState: '0', predefinedType: 'VIEW_PAGECAPTION', }),
container1:new PanelContainerModel({ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:6, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' }),
quicksearchbar:new PanelCtrlPosModel({ name: 'quicksearchbar', caption: 'QUICKSEARCHBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this }),
container2:new PanelContainerModel({ name: 'container2', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:3, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['quicksearchbar'] , dataRegionType: 'INHERIT' }),
toolbar:new PanelCtrlPosModel({ name: 'toolbar', caption: 'TOOLBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_2', panel: this }),
container_2:new PanelContainerModel({ name: 'container_2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['toolbar'] , dataRegionType: 'INHERIT' }),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container2','container_2'] , dataRegionType: 'INHERIT' }),
searchform:new PanelCtrlPosModel({ name: 'searchform', caption: 'SEARCHFORM', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container4', panel: this }),
kanban:new PanelCtrlPosModel({ name: 'kanban', caption: 'KANBAN', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:100, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container4', panel: this }),
container4:new PanelContainerModel({ name: 'container4', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:100, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['searchform','kanban'] , dataRegionType: 'INHERIT' }),
page_container:new PanelContainerModel({ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container_grid1','container4'] , dataRegionType: 'INHERIT' })
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public layoutItems:any = {
view_pagecaption:{ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'LEFT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , fieldState: '0', },
container1:{ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:6, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' },
quicksearchbar:{ name: 'quicksearchbar', caption: 'QUICKSEARCHBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this },
container2:{ name: 'container2', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:3, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['quicksearchbar'] , dataRegionType: 'INHERIT' },
toolbar:{ name: 'toolbar', caption: 'TOOLBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_2', panel: this },
container_2:{ name: 'container_2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['toolbar'] , dataRegionType: 'INHERIT' },
container_grid1:{ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container2','container_2'] , dataRegionType: 'INHERIT' },
searchform:{ name: 'searchform', caption: 'SEARCHFORM', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container4', panel: this },
kanban:{ name: 'kanban', caption: 'KANBAN', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:100, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container4', panel: this },
container4:{ name: 'container4', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:100, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['searchform','kanban'] , dataRegionType: 'INHERIT' },
page_container:{ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container_grid1','container4'] , dataRegionType: 'INHERIT' }
};
/**
* 初始化布局
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public async initLayout() {
if (this.rootLayoutDetailNames.length > 0) {
this.rootLayoutDetailNames.forEach(async (name: string) => {
const rootLayoutModelDetail = this.layoutModelDetails[name];
if (!rootLayoutModelDetail) {
return;
}
await this.initLayoutItem(rootLayoutModelDetail);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public async initLayoutItem(layoutModelDetail: any, index: number = 0) {
const { name } = layoutModelDetail;
if (!index) {
await layoutModelDetail.load(this.context,this.viewparams);
this.layoutData[name] = layoutModelDetail.getData();
} else {
const clonelayoutModelDetail = layoutModelDetail;
clonelayoutModelDetail.setIndex(index);
await clonelayoutModelDetail.load(this.context,this.viewparams);
this.$set(this.layoutModelDetails,`${name}_${index}`, clonelayoutModelDetail);
this.$set(this.layoutData,`${name}_${index}`, clonelayoutModelDetail.getData());
}
if (layoutModelDetail && layoutModelDetail.details) {
if (layoutModelDetail.dataRegionType === 'MULTIDATA') {
const multiData = layoutModelDetail.getData();
if (multiData && multiData.length > 0) {
multiData.forEach(async (data: any, index: number) => {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key], index);
}
}
})
}
} else {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public handleValueChange($event: { name: string, value: any }) {
if (!$event || !$event.name || Object.is($event.name, '') || !this.layoutData.hasOwnProperty($event.name)) {
return;
}
this.layoutData[$event.name] = $event.value;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public getButtonXData(name: string): any {
let xData = null;
let xDataControl: any = null;
let curLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((layoutModel: any) => {
if (layoutModel.name == name) {
curLayoutModel = layoutModel;
}
})
// 获取数据容器
if (curLayoutModel) {
const getDataArea = (cLayoutModel: any): any => {
let dataArea = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
if (parentLayoutModel.dataRegionType == 'SINGLEDATA' || parentLayoutModel.dataRegionType == 'MULTIDATA') {
dataArea = parentLayoutModel;
}
}
})
if (!dataArea && parentLayoutModel) {
dataArea = getDataArea(parentLayoutModel);
}
return dataArea;
}
xData = getDataArea(curLayoutModel);
// 获取激活部件
if (!xData && this.layoutCtrls.length > 0) {
const getActionCtrl = (cLayoutModel: any) => {
let actionCtrl = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
actionCtrl= parentLayoutModel.details.find((ctrlName: string) => {
return this.layoutCtrls.indexOf(ctrlName) !== -1;
})
}
})
if (!actionCtrl && parentLayoutModel) {
actionCtrl = getActionCtrl(parentLayoutModel);
}
return actionCtrl;
}
xData = getActionCtrl(curLayoutModel);
}
}
// 获取当前视图
if (!xData) {
xData = this;
}
return xData;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public handleButtonClick(name: string, $event?: any) {
const datas: any[] = [this.layoutData];
const xData: any = this.getButtonXData(name);
const paramJO: any = {};
const contextJO: any = {};
const _this: any = this;
}
/** /**
...@@ -734,38 +974,62 @@ export default class IBIZBOOKInterFuncKanBanViewBase extends Vue { ...@@ -734,38 +974,62 @@ export default class IBIZBOOKInterFuncKanBanViewBase extends Vue {
/** /**
* searchform 部件 search 事件 * kanban 部件 rowdblclick 事件
* *
* @param {*} [args={}] * @param {*} [args={}]
* @param {*} $event * @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase * @memberof IBIZBOOKInterFuncKanBanViewBase
*/ */
public searchform_search($event: any, $event2?: any) { public kanban_rowdblclick($event: any, $event2?: any) {
this.engine.onCtrlEvent('searchform', 'search', $event); this.engine.onCtrlEvent('kanban', 'rowdblclick', $event);
} }
/** /**
* searchform 部件 load 事件 * kanban 部件 selectionchange 事件
* *
* @param {*} [args={}] * @param {*} [args={}]
* @param {*} $event * @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase * @memberof IBIZBOOKInterFuncKanBanViewBase
*/ */
public searchform_load($event: any, $event2?: any) { public kanban_selectionchange($event: any, $event2?: any) {
this.engine.onCtrlEvent('searchform', 'load', $event); this.engine.onCtrlEvent('kanban', 'selectionchange', $event);
} }
/** /**
* searchform 部件 save 事件 * kanban 部件 remove 事件
* *
* @param {*} [args={}] * @param {*} [args={}]
* @param {*} $event * @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase * @memberof IBIZBOOKInterFuncKanBanViewBase
*/ */
public searchform_save($event: any, $event2?: any) { public kanban_remove($event: any, $event2?: any) {
this.engine.onCtrlEvent('searchform', 'save', $event); this.engine.onCtrlEvent('kanban', 'remove', $event);
}
/**
* kanban 部件 load 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public kanban_load($event: any, $event2?: any) {
this.engine.onCtrlEvent('kanban', 'load', $event);
}
/**
* kanban 部件 beforeload 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public kanban_beforeload($event: any, $event2?: any) {
this.engine.onCtrlEvent('kanban', 'beforeload', $event);
} }
...@@ -820,62 +1084,38 @@ export default class IBIZBOOKInterFuncKanBanViewBase extends Vue { ...@@ -820,62 +1084,38 @@ export default class IBIZBOOKInterFuncKanBanViewBase extends Vue {
/** /**
* kanban 部件 rowdblclick 事件 * searchform 部件 search 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public kanban_rowdblclick($event: any, $event2?: any) {
this.engine.onCtrlEvent('kanban', 'rowdblclick', $event);
}
/**
* kanban 部件 selectionchange 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase
*/
public kanban_selectionchange($event: any, $event2?: any) {
this.engine.onCtrlEvent('kanban', 'selectionchange', $event);
}
/**
* kanban 部件 remove 事件
* *
* @param {*} [args={}] * @param {*} [args={}]
* @param {*} $event * @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase * @memberof IBIZBOOKInterFuncKanBanViewBase
*/ */
public kanban_remove($event: any, $event2?: any) { public searchform_search($event: any, $event2?: any) {
this.engine.onCtrlEvent('kanban', 'remove', $event); this.engine.onCtrlEvent('searchform', 'search', $event);
} }
/** /**
* kanban 部件 load 事件 * searchform 部件 load 事件
* *
* @param {*} [args={}] * @param {*} [args={}]
* @param {*} $event * @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase * @memberof IBIZBOOKInterFuncKanBanViewBase
*/ */
public kanban_load($event: any, $event2?: any) { public searchform_load($event: any, $event2?: any) {
this.engine.onCtrlEvent('kanban', 'load', $event); this.engine.onCtrlEvent('searchform', 'load', $event);
} }
/** /**
* kanban 部件 beforeload 事件 * searchform 部件 save 事件
* *
* @param {*} [args={}] * @param {*} [args={}]
* @param {*} $event * @param {*} $event
* @memberof IBIZBOOKInterFuncKanBanViewBase * @memberof IBIZBOOKInterFuncKanBanViewBase
*/ */
public kanban_beforeload($event: any, $event2?: any) { public searchform_save($event: any, $event2?: any) {
this.engine.onCtrlEvent('kanban', 'beforeload', $event); this.engine.onCtrlEvent('searchform', 'save', $event);
} }
......
.ibizbookinter-func-kan-ban-view{ .ibizbookinter-func-kan-ban-view {
position: relative;
}
.toolbar-container {
button {
margin: 6px 0px 4px 4px;
.caption {
margin-left: 4px;
}
}
.seperator {
color: #dcdee2;
margin: 0 0px 0 4px;
}
}
// this is less
.deepskyblueToolBar {color:white !important;background-color:#108cee !important;}
.ibizbookinter-func-kan-ban-view{
display: block; display: block;
} }
...@@ -2,12 +2,14 @@ ...@@ -2,12 +2,14 @@
import { Component } from 'vue-property-decorator'; import { Component } from 'vue-property-decorator';
import IBIZBOOKInterFuncKanBanViewBase from './ibizbookinter-func-kan-ban-view-base.vue'; import IBIZBOOKInterFuncKanBanViewBase from './ibizbookinter-func-kan-ban-view-base.vue';
import view_searchform from '@widgets/ibizbook/default-searchform/default-searchform.vue';
import view_kanban from '@widgets/ibizbook/inter-func-kanban-kanban/inter-func-kanban-kanban.vue'; import view_kanban from '@widgets/ibizbook/inter-func-kanban-kanban/inter-func-kanban-kanban.vue';
import view_searchform from '@widgets/ibizbook/default-searchform/default-searchform.vue';
import view_searchbar from '@widgets/ibizbook/-searchbar/-searchbar.vue';
@Component({ @Component({
components: { components: {
view_searchform,
view_kanban, view_kanban,
view_searchform,
view_searchbar,
}, },
beforeRouteEnter: (to: any, from: any, next: any) => { beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => { next((vm: any) => {
......
<template> <template>
<div class='view-container delistview ibizbookusr4-list-view'> <div class="app-view-layout ibizbookusr4-list-view" style="height: '100%'; width: '100%';'display': 'flex'; 'flex-direction': 'column';">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="ibizbookusr4listview"></app-studioaction> <app-standard-container name="page_container" :layoutModelDetails="layoutModelDetails">
<card class='view-card view-no-caption ' :bordered="false" :dis-hover="true" > <template #container_grid1>
<app-simpleflex-container name="container_grid1" :layoutModelDetails="layoutModelDetails">
<template #container1>
<div class='view-top-messages'> <app-simpleflex-container name="container1" :layoutModelDetails="layoutModelDetails">
<app-alert-group position='TOP' :context="context" :viewparam="viewparams" infoGroup='VMGroup96' viewname='ibizbookusr4listview'></app-alert-group> </div> <template #view_pagecaption>
<div class='content-container'> <app-preset-caption name="view_pagecaption" :layoutModelDetails="layoutModelDetails">实体列表视图</app-preset-caption>
</template>
<div style="margin-bottom:6px;"> </app-simpleflex-container>
<div class="quick-group-container"> </template>
<app-quick-group :items="quickGroupModel" @valuechange="quickGroupValueChange"></app-quick-group> <template #container2>
</div> <app-simpleflex-container name="container2" :layoutModelDetails="layoutModelDetails">
<i-input v-show="!isExpandSearchForm" v-model="query" search enter-button @on-search="onSearch($event)" class='pull-left' placeholder="图书名称" style='max-width: 400px;margin-top:6px;padding-left: 24px' /> <template #quicksearchbar>
<div class='pull-right'> <app-ctrl-pos name="quicksearchbar" :layoutModelDetails="layoutModelDetails">
<i-input v-model="query" search enter-button @on-search="onSearch($event)" class='quick-search-input' style='max-width: 400px;' placeholder="图书名称" />
</app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
<template #container_2>
<app-simpleflex-container name="container_2" :layoutModelDetails="layoutModelDetails">
<template #toolbar>
<app-ctrl-pos name="toolbar" :layoutModelDetails="layoutModelDetails">
<div class='toolbar-container'> <div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600"> <tooltip :transfer="true" :max-width="600">
<i-button v-show="toolBarModels.deuiaction1.visabled" :disabled="toolBarModels.deuiaction1.disabled" class='' v-loading:i-button @click="toolbar_click({ tag: 'deuiaction1' }, $event)"> <i-button v-show="toolBarModels.deuiaction1.visabled" :disabled="toolBarModels.deuiaction1.disabled" class='' v-loading:i-button @click="toolbar_click({ tag: 'deuiaction1' }, $event)">
...@@ -43,15 +52,22 @@ ...@@ -43,15 +52,22 @@
</i-button> </i-button>
<div slot='content'>{{$t('entities.ibizbook.usr4listviewtoolbar_toolbar.deuiaction4.tip')}}</div> <div slot='content'>{{$t('entities.ibizbook.usr4listviewtoolbar_toolbar.deuiaction4.tip')}}</div>
</tooltip> </tooltip>
</div>
</div>
</div> </div>
<view_searchform </app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
</app-simpleflex-container>
</template>
<template #container5>
<app-standard-container name="container5" :layoutModelDetails="layoutModelDetails">
<template #searchform>
<app-ctrl-pos name="searchform" :layoutModelDetails="layoutModelDetails">
<view_searchform
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
:context="context" :context="context"
:showBusyIndicator="true" :showBusyIndicator="true"
v-show="isExpandSearchForm"
loaddraftAction="FilterGetDraft" loaddraftAction="FilterGetDraft"
loadAction="FilterGet" loadAction="FilterGet"
...@@ -62,7 +78,11 @@ ...@@ -62,7 +78,11 @@
@save="searchform_save($event)" @save="searchform_save($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_searchform> </view_searchform>
<view_list </app-ctrl-pos>
</template>
<template #list>
<app-ctrl-pos name="list" :layoutModelDetails="layoutModelDetails">
<view_list
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
:context="context" :context="context"
...@@ -83,10 +103,12 @@ ...@@ -83,10 +103,12 @@
@beforeload="list_beforeload($event)" @beforeload="list_beforeload($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_list> </view_list>
</app-ctrl-pos>
</template>
</app-standard-container>
</template>
</app-standard-container>
</div> </div>
</card>
</div>
</template> </template>
...@@ -101,6 +123,7 @@ import IBIZBOOKAuthService from '@/authservice/ibizbook/ibizbook-auth-service'; ...@@ -101,6 +123,7 @@ import IBIZBOOKAuthService from '@/authservice/ibizbook/ibizbook-auth-service';
import ListViewEngine from '@engine/view/list-view-engine'; import ListViewEngine from '@engine/view/list-view-engine';
import IBIZBOOKUIService from '@/uiservice/ibizbook/ibizbook-ui-service'; import IBIZBOOKUIService from '@/uiservice/ibizbook/ibizbook-ui-service';
import { PanelContainerModel, PanelRawitemModel, PanelFieldModel, PanelControlModel, PanelButtonModel, PanelUserControlModel, PanelTabPanelModel, PanelTabPageModel, PanelCtrlPosModel} from '@/model/panel-detail';
import CodeListService from "@/codelist/codelist-service"; import CodeListService from "@/codelist/codelist-service";
...@@ -268,8 +291,9 @@ export default class IBIZBOOKUsr4ListViewBase extends Vue { ...@@ -268,8 +291,9 @@ export default class IBIZBOOKUsr4ListViewBase extends Vue {
*/ */
public containerModel: any = { public containerModel: any = {
view_searchform: { name: 'searchform', type: 'SEARCHFORM' }, view_searchform: { name: 'searchform', type: 'SEARCHFORM' },
view_toolbar: { name: 'toolbar', type: 'TOOLBAR' },
view_list: { name: 'list', type: 'LIST' }, view_list: { name: 'list', type: 'LIST' },
view_toolbar: { name: 'toolbar', type: 'TOOLBAR' },
view_searchbar: { name: 'searchbar', type: 'SEARCHBAR' },
}; };
/** /**
...@@ -326,6 +350,219 @@ export default class IBIZBOOKUsr4ListViewBase extends Vue { ...@@ -326,6 +350,219 @@ export default class IBIZBOOKUsr4ListViewBase extends Vue {
}; };
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public rootLayoutDetailNames: string[] = [ 'page_container' ];
/**
* 视图布局数据
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public layoutData:any = {};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public layoutCtrls: any[] = [
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public layoutModelDetails:any = {
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'LEFT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , fieldState: '0', predefinedType: 'VIEW_PAGECAPTION', }),
container1:new PanelContainerModel({ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:6, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' }),
quicksearchbar:new PanelCtrlPosModel({ name: 'quicksearchbar', caption: 'QUICKSEARCHBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this }),
container2:new PanelContainerModel({ name: 'container2', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:3, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['quicksearchbar'] , dataRegionType: 'INHERIT' }),
toolbar:new PanelCtrlPosModel({ name: 'toolbar', caption: 'TOOLBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_2', panel: this }),
container_2:new PanelContainerModel({ name: 'container_2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['toolbar'] , dataRegionType: 'INHERIT' }),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container2','container_2'] , dataRegionType: 'INHERIT' }),
searchform:new PanelCtrlPosModel({ name: 'searchform', caption: 'SEARCHFORM', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container5', panel: this }),
list:new PanelCtrlPosModel({ name: 'list', caption: 'LIST', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:100, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container5', panel: this }),
container5:new PanelContainerModel({ name: 'container5', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, parentName: 'page_container', panel: this , details:['searchform','list'] , dataRegionType: 'INHERIT' }),
page_container:new PanelContainerModel({ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container_grid1','container5'] , dataRegionType: 'INHERIT' })
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public layoutItems:any = {
view_pagecaption:{ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'LEFT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , fieldState: '0', },
container1:{ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:6, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' },
quicksearchbar:{ name: 'quicksearchbar', caption: 'QUICKSEARCHBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this },
container2:{ name: 'container2', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:3, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['quicksearchbar'] , dataRegionType: 'INHERIT' },
toolbar:{ name: 'toolbar', caption: 'TOOLBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_2', panel: this },
container_2:{ name: 'container_2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['toolbar'] , dataRegionType: 'INHERIT' },
container_grid1:{ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container2','container_2'] , dataRegionType: 'INHERIT' },
searchform:{ name: 'searchform', caption: 'SEARCHFORM', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container5', panel: this },
list:{ name: 'list', caption: 'LIST', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:100, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container5', panel: this },
container5:{ name: 'container5', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, parentName: 'page_container', panel: this , details:['searchform','list'] , dataRegionType: 'INHERIT' },
page_container:{ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container_grid1','container5'] , dataRegionType: 'INHERIT' }
};
/**
* 初始化布局
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public async initLayout() {
if (this.rootLayoutDetailNames.length > 0) {
this.rootLayoutDetailNames.forEach(async (name: string) => {
const rootLayoutModelDetail = this.layoutModelDetails[name];
if (!rootLayoutModelDetail) {
return;
}
await this.initLayoutItem(rootLayoutModelDetail);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public async initLayoutItem(layoutModelDetail: any, index: number = 0) {
const { name } = layoutModelDetail;
if (!index) {
await layoutModelDetail.load(this.context,this.viewparams);
this.layoutData[name] = layoutModelDetail.getData();
} else {
const clonelayoutModelDetail = layoutModelDetail;
clonelayoutModelDetail.setIndex(index);
await clonelayoutModelDetail.load(this.context,this.viewparams);
this.$set(this.layoutModelDetails,`${name}_${index}`, clonelayoutModelDetail);
this.$set(this.layoutData,`${name}_${index}`, clonelayoutModelDetail.getData());
}
if (layoutModelDetail && layoutModelDetail.details) {
if (layoutModelDetail.dataRegionType === 'MULTIDATA') {
const multiData = layoutModelDetail.getData();
if (multiData && multiData.length > 0) {
multiData.forEach(async (data: any, index: number) => {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key], index);
}
}
})
}
} else {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public handleValueChange($event: { name: string, value: any }) {
if (!$event || !$event.name || Object.is($event.name, '') || !this.layoutData.hasOwnProperty($event.name)) {
return;
}
this.layoutData[$event.name] = $event.value;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public getButtonXData(name: string): any {
let xData = null;
let xDataControl: any = null;
let curLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((layoutModel: any) => {
if (layoutModel.name == name) {
curLayoutModel = layoutModel;
}
})
// 获取数据容器
if (curLayoutModel) {
const getDataArea = (cLayoutModel: any): any => {
let dataArea = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
if (parentLayoutModel.dataRegionType == 'SINGLEDATA' || parentLayoutModel.dataRegionType == 'MULTIDATA') {
dataArea = parentLayoutModel;
}
}
})
if (!dataArea && parentLayoutModel) {
dataArea = getDataArea(parentLayoutModel);
}
return dataArea;
}
xData = getDataArea(curLayoutModel);
// 获取激活部件
if (!xData && this.layoutCtrls.length > 0) {
const getActionCtrl = (cLayoutModel: any) => {
let actionCtrl = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
actionCtrl= parentLayoutModel.details.find((ctrlName: string) => {
return this.layoutCtrls.indexOf(ctrlName) !== -1;
})
}
})
if (!actionCtrl && parentLayoutModel) {
actionCtrl = getActionCtrl(parentLayoutModel);
}
return actionCtrl;
}
xData = getActionCtrl(curLayoutModel);
}
}
// 获取当前视图
if (!xData) {
xData = this;
}
return xData;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZBOOKUsr4ListViewBase
*/
public handleButtonClick(name: string, $event?: any) {
const datas: any[] = [this.layoutData];
const xData: any = this.getButtonXData(name);
const paramJO: any = {};
const contextJO: any = {};
const _this: any = this;
}
/** /**
...@@ -712,29 +949,6 @@ export default class IBIZBOOKUsr4ListViewBase extends Vue { ...@@ -712,29 +949,6 @@ export default class IBIZBOOKUsr4ListViewBase extends Vue {
} }
/**
* toolbar 部件 click 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof IBIZBOOKUsr4ListViewBase
*/
public toolbar_click($event: any, $event2?: any) {
if (Object.is($event.tag, 'deuiaction1')) {
this.toolbar_deuiaction1_click(null, '', $event2);
}
if (Object.is($event.tag, 'deuiaction3')) {
this.toolbar_deuiaction3_click(null, '', $event2);
}
if (Object.is($event.tag, 'deuiaction2')) {
this.toolbar_deuiaction2_click(null, '', $event2);
}
if (Object.is($event.tag, 'deuiaction4')) {
this.toolbar_deuiaction4_click(null, '', $event2);
}
}
/** /**
* list 部件 rowdblclick 事件 * list 部件 rowdblclick 事件
* *
...@@ -795,6 +1009,29 @@ export default class IBIZBOOKUsr4ListViewBase extends Vue { ...@@ -795,6 +1009,29 @@ export default class IBIZBOOKUsr4ListViewBase extends Vue {
} }
/**
* toolbar 部件 click 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof IBIZBOOKUsr4ListViewBase
*/
public toolbar_click($event: any, $event2?: any) {
if (Object.is($event.tag, 'deuiaction1')) {
this.toolbar_deuiaction1_click(null, '', $event2);
}
if (Object.is($event.tag, 'deuiaction3')) {
this.toolbar_deuiaction3_click(null, '', $event2);
}
if (Object.is($event.tag, 'deuiaction2')) {
this.toolbar_deuiaction2_click(null, '', $event2);
}
if (Object.is($event.tag, 'deuiaction4')) {
this.toolbar_deuiaction4_click(null, '', $event2);
}
}
/** /**
* 逻辑事件 * 逻辑事件
......
.ibizbookusr4-list-view{ .ibizbookusr4-list-view {
position: relative; display: block;
} }
.toolbar-container {
button {
margin: 6px 0px 4px 4px;
.caption {
margin-left: 4px;
}
}
.seperator {
color: #dcdee2;
margin: 0 0px 0 4px;
}
}
// this is less
...@@ -4,10 +4,12 @@ import IBIZBOOKUsr4ListViewBase from './ibizbookusr4-list-view-base.vue'; ...@@ -4,10 +4,12 @@ import IBIZBOOKUsr4ListViewBase from './ibizbookusr4-list-view-base.vue';
import view_searchform from '@widgets/ibizbook/default-searchform/default-searchform.vue'; import view_searchform from '@widgets/ibizbook/default-searchform/default-searchform.vue';
import view_list from '@widgets/ibizbook/lnternal-func-list-list/lnternal-func-list-list.vue'; import view_list from '@widgets/ibizbook/lnternal-func-list-list/lnternal-func-list-list.vue';
import view_searchbar from '@widgets/ibizbook/-searchbar/-searchbar.vue';
@Component({ @Component({
components: { components: {
view_searchform, view_searchform,
view_list, view_list,
view_searchbar,
}, },
beforeRouteEnter: (to: any, from: any, next: any) => { beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => { next((vm: any) => {
......
<template> <template>
<div class="view-container decalendarexpview ibizorder-calendar-exp-view"> <div class="app-view-layout ibizorder-calendar-exp-view" style="height: '100%'; width: '100%';'display': 'flex'; 'flex-direction': 'column';">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="ibizordercalendarexpview"></app-studioaction> <app-standard-container name="page_container" :layoutModelDetails="layoutModelDetails">
<card class='view-card view-no-caption view-no-toolbar' :dis-hover="true" :bordered="false"> <template #container2>
<div class='view-top-messages'> <app-standard-container name="container2" :layoutModelDetails="layoutModelDetails">
<app-alert-group position='TOP' :context="context" :viewparam="viewparams" infoGroup='VMGroup46' viewname='ibizordercalendarexpview'></app-alert-group> </div> <template #view_pagecaption>
<div class="content-container"> <app-preset-caption name="view_pagecaption" :layoutModelDetails="layoutModelDetails">实体日历导航视图</app-preset-caption>
<split v-model="split" mode="horizontal" @on-move-end="onSplitChange"> </template>
<template slot="left"> </app-standard-container>
</template>
<template #container_grid1>
<app-simpleflex-container name="container_grid1" :layoutModelDetails="layoutModelDetails">
<template #container1>
<app-simpleflex-container name="container1" :layoutModelDetails="layoutModelDetails">
<template #calendarexpbar>
<app-ctrl-pos name="calendarexpbar" :layoutModelDetails="layoutModelDetails">
<view_calendarexpbar <view_calendarexpbar
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
...@@ -22,22 +29,21 @@ ...@@ -22,22 +29,21 @@
@activated="calendarexpbar_activated($event)" @activated="calendarexpbar_activated($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_calendarexpbar> </view_calendarexpbar>
</app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
<template #container8>
<app-simpleflex-container name="container8" :layoutModelDetails="layoutModelDetails">
<template #nav_pos1>
<app-nav-pos name="nav_pos1" :layoutModelDetails="layoutModelDetails" :navData="layoutModelDetails['nav_pos1'].navData"></app-nav-pos>
</template> </template>
<template slot="right"> </app-simpleflex-container>
<component
v-if="navItem && navItem.navView"
:is="navItem.navView"
:key="navItem.data && navItem.data.length ? navItem.data[0].srfkey : ''"
class="viewcontainer2"
:viewDefaultUsage="false"
:viewdata="JSON.stringify(navItem.srfnavdata.context)"
:viewparam="JSON.stringify(navItem.srfnavdata.viewparams)">
</component>
</template> </template>
</split> </app-simpleflex-container>
</template>
</app-standard-container>
</div> </div>
</card>
</div>
</template> </template>
<script lang='tsx'> <script lang='tsx'>
...@@ -51,6 +57,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service ...@@ -51,6 +57,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service
import CalendarExpViewEngine from '@engine/view/calendar-exp-view-engine'; import CalendarExpViewEngine from '@engine/view/calendar-exp-view-engine';
import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service'; import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service';
import { PanelContainerModel, PanelRawitemModel, PanelFieldModel, PanelControlModel, PanelButtonModel, PanelUserControlModel, PanelTabPanelModel, PanelTabPageModel, PanelCtrlPosModel} from '@/model/panel-detail';
@Component({ @Component({
...@@ -216,6 +223,7 @@ export default class IBIZOrderCalendarExpViewBase extends Vue { ...@@ -216,6 +223,7 @@ export default class IBIZOrderCalendarExpViewBase extends Vue {
*/ */
public containerModel: any = { public containerModel: any = {
view_calendarexpbar: { name: 'calendarexpbar', type: 'CALENDAREXPBAR' }, view_calendarexpbar: { name: 'calendarexpbar', type: 'CALENDAREXPBAR' },
view_searchbar: { name: 'searchbar', type: 'SEARCHBAR' },
wflinks: [], wflinks: [],
}; };
...@@ -244,6 +252,213 @@ export default class IBIZOrderCalendarExpViewBase extends Vue { ...@@ -244,6 +252,213 @@ export default class IBIZOrderCalendarExpViewBase extends Vue {
*/ */
public viewState: Subject<ViewState> = new Subject(); public viewState: Subject<ViewState> = new Subject();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public rootLayoutDetailNames: string[] = [ 'page_container' ];
/**
* 视图布局数据
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public layoutData:any = {};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public layoutCtrls: any[] = [
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public layoutModelDetails:any = {
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this , fieldState: '0', predefinedType: 'VIEW_PAGECAPTION', }),
container2:new PanelContainerModel({ name: 'container2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'TABLE_24COL', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' }),
calendarexpbar:new PanelCtrlPosModel({ name: 'calendarexpbar', caption: 'CALENDAREXPBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this }),
container1:new PanelContainerModel({ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:5, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['calendarexpbar'] , dataRegionType: 'INHERIT' }),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container8', panel: this , viewType: 'DECALENDAREXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
container8:new PanelContainerModel({ name: 'container8', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:7, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' }),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container8'] , dataRegionType: 'INHERIT' }),
page_container:new PanelContainerModel({ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container2','container_grid1'] , dataRegionType: 'INHERIT' })
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public layoutItems:any = {
view_pagecaption:{ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this , fieldState: '0', },
container2:{ name: 'container2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'TABLE_24COL', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' },
calendarexpbar:{ name: 'calendarexpbar', caption: 'CALENDAREXPBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this },
container1:{ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:5, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['calendarexpbar'] , dataRegionType: 'INHERIT' },
nav_pos1:{ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container8', panel: this , viewType: 'DECALENDAREXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', },
container8:{ name: 'container8', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:7, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' },
container_grid1:{ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container8'] , dataRegionType: 'INHERIT' },
page_container:{ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container2','container_grid1'] , dataRegionType: 'INHERIT' }
};
/**
* 初始化布局
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public async initLayout() {
if (this.rootLayoutDetailNames.length > 0) {
this.rootLayoutDetailNames.forEach(async (name: string) => {
const rootLayoutModelDetail = this.layoutModelDetails[name];
if (!rootLayoutModelDetail) {
return;
}
await this.initLayoutItem(rootLayoutModelDetail);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public async initLayoutItem(layoutModelDetail: any, index: number = 0) {
const { name } = layoutModelDetail;
if (!index) {
await layoutModelDetail.load(this.context,this.viewparams);
this.layoutData[name] = layoutModelDetail.getData();
} else {
const clonelayoutModelDetail = layoutModelDetail;
clonelayoutModelDetail.setIndex(index);
await clonelayoutModelDetail.load(this.context,this.viewparams);
this.$set(this.layoutModelDetails,`${name}_${index}`, clonelayoutModelDetail);
this.$set(this.layoutData,`${name}_${index}`, clonelayoutModelDetail.getData());
}
if (layoutModelDetail && layoutModelDetail.details) {
if (layoutModelDetail.dataRegionType === 'MULTIDATA') {
const multiData = layoutModelDetail.getData();
if (multiData && multiData.length > 0) {
multiData.forEach(async (data: any, index: number) => {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key], index);
}
}
})
}
} else {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public handleValueChange($event: { name: string, value: any }) {
if (!$event || !$event.name || Object.is($event.name, '') || !this.layoutData.hasOwnProperty($event.name)) {
return;
}
this.layoutData[$event.name] = $event.value;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public getButtonXData(name: string): any {
let xData = null;
let xDataControl: any = null;
let curLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((layoutModel: any) => {
if (layoutModel.name == name) {
curLayoutModel = layoutModel;
}
})
// 获取数据容器
if (curLayoutModel) {
const getDataArea = (cLayoutModel: any): any => {
let dataArea = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
if (parentLayoutModel.dataRegionType == 'SINGLEDATA' || parentLayoutModel.dataRegionType == 'MULTIDATA') {
dataArea = parentLayoutModel;
}
}
})
if (!dataArea && parentLayoutModel) {
dataArea = getDataArea(parentLayoutModel);
}
return dataArea;
}
xData = getDataArea(curLayoutModel);
// 获取激活部件
if (!xData && this.layoutCtrls.length > 0) {
const getActionCtrl = (cLayoutModel: any) => {
let actionCtrl = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
actionCtrl= parentLayoutModel.details.find((ctrlName: string) => {
return this.layoutCtrls.indexOf(ctrlName) !== -1;
})
}
})
if (!actionCtrl && parentLayoutModel) {
actionCtrl = getActionCtrl(parentLayoutModel);
}
return actionCtrl;
}
xData = getActionCtrl(curLayoutModel);
}
}
// 获取当前视图
if (!xData) {
xData = this;
}
return xData;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderCalendarExpViewBase
*/
public handleButtonClick(name: string, $event?: any) {
const datas: any[] = [this.layoutData];
const xData: any = this.getButtonXData(name);
const paramJO: any = {};
const contextJO: any = {};
const _this: any = this;
}
/** /**
......
.ibizorder-calendar-exp-view{ .ibizorder-calendar-exp-view {
position: relative;
}
.ibizorder-calendar-exp-view{
display: block; display: block;
} }
...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator'; ...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator';
import IBIZOrderCalendarExpViewBase from './ibizorder-calendar-exp-view-base.vue'; import IBIZOrderCalendarExpViewBase from './ibizorder-calendar-exp-view-base.vue';
import view_calendarexpbar from '@widgets/ibizorder/calendar-exp-viewcalendarexpbar-calendarexpbar/calendar-exp-viewcalendarexpbar-calendarexpbar.vue'; import view_calendarexpbar from '@widgets/ibizorder/calendar-exp-viewcalendarexpbar-calendarexpbar/calendar-exp-viewcalendarexpbar-calendarexpbar.vue';
import view_searchbar from '@widgets/ibizorder/-searchbar/-searchbar.vue';
@Component({ @Component({
components: { components: {
view_calendarexpbar, view_calendarexpbar,
view_searchbar,
}, },
beforeRouteEnter: (to: any, from: any, next: any) => { beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => { next((vm: any) => {
......
<template> <template>
<div class="view-container dedataviewexpview ibizorder-data-view-exp-view"> <div class="app-view-layout ibizorder-data-view-exp-view" style="height: '100%'; width: '100%';'display': 'flex'; 'flex-direction': 'column';">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="ibizorderdataviewexpview"></app-studioaction> <app-standard-container name="page_container" :layoutModelDetails="layoutModelDetails">
<card class='view-card view-no-caption view-no-toolbar' :dis-hover="true" :bordered="false"> <template #container_grid1>
<div class='view-top-messages'> <app-simpleflex-container name="container_grid1" :layoutModelDetails="layoutModelDetails">
<app-alert-group position='TOP' :context="context" :viewparam="viewparams" infoGroup='VMGroup49' viewname='ibizorderdataviewexpview'></app-alert-group> </div> <template #container1>
<div class="content-container"> <app-simpleflex-container name="container1" :layoutModelDetails="layoutModelDetails">
<split v-model="split" mode="horizontal" @on-move-end="onSplitChange"> <template #view_pagecaption>
<template slot="left"> <app-preset-caption name="view_pagecaption" :layoutModelDetails="layoutModelDetails">实体卡片视图导航视图</app-preset-caption>
</template>
</app-simpleflex-container>
</template>
<template #container_2>
<app-simpleflex-container name="container_2" :layoutModelDetails="layoutModelDetails">
<template #toolbar>
<app-ctrl-pos name="toolbar" :layoutModelDetails="layoutModelDetails">
<span>部件占位toolbar</span>
</app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
</app-simpleflex-container>
</template>
<template #container_grid2>
<app-simpleflex-container name="container_grid2" :layoutModelDetails="layoutModelDetails">
<template #container2>
<app-simpleflex-container name="container2" :layoutModelDetails="layoutModelDetails">
<template #dataviewexpbar>
<app-ctrl-pos name="dataviewexpbar" :layoutModelDetails="layoutModelDetails">
<view_dataviewexpbar <view_dataviewexpbar
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
...@@ -22,22 +42,21 @@ ...@@ -22,22 +42,21 @@
@activated="dataviewexpbar_activated($event)" @activated="dataviewexpbar_activated($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_dataviewexpbar> </view_dataviewexpbar>
</app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
<template #container3>
<app-simpleflex-container name="container3" :layoutModelDetails="layoutModelDetails">
<template #nav_pos1>
<app-nav-pos name="nav_pos1" :layoutModelDetails="layoutModelDetails" :navData="layoutModelDetails['nav_pos1'].navData"></app-nav-pos>
</template> </template>
<template slot="right"> </app-simpleflex-container>
<component
v-if="navItem && navItem.navView"
:is="navItem.navView"
:key="navItem.data && navItem.data.length ? navItem.data[0].srfkey : ''"
class="viewcontainer2"
:viewDefaultUsage="false"
:viewdata="JSON.stringify(navItem.srfnavdata.context)"
:viewparam="JSON.stringify(navItem.srfnavdata.viewparams)">
</component>
</template> </template>
</split> </app-simpleflex-container>
</template>
</app-standard-container>
</div> </div>
</card>
</div>
</template> </template>
<script lang='tsx'> <script lang='tsx'>
...@@ -51,6 +70,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service ...@@ -51,6 +70,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service
import DataViewExpViewEngine from '@engine/view/data-view-exp-view-engine'; import DataViewExpViewEngine from '@engine/view/data-view-exp-view-engine';
import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service'; import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service';
import { PanelContainerModel, PanelRawitemModel, PanelFieldModel, PanelControlModel, PanelButtonModel, PanelUserControlModel, PanelTabPanelModel, PanelTabPageModel, PanelCtrlPosModel} from '@/model/panel-detail';
@Component({ @Component({
...@@ -216,6 +236,7 @@ export default class IBIZOrderDataViewExpViewBase extends Vue { ...@@ -216,6 +236,7 @@ export default class IBIZOrderDataViewExpViewBase extends Vue {
*/ */
public containerModel: any = { public containerModel: any = {
view_dataviewexpbar: { name: 'dataviewexpbar', type: 'DATAVIEWEXPBAR' }, view_dataviewexpbar: { name: 'dataviewexpbar', type: 'DATAVIEWEXPBAR' },
view_searchbar: { name: 'searchbar', type: 'SEARCHBAR' },
wflinks: [], wflinks: [],
}; };
...@@ -244,6 +265,219 @@ export default class IBIZOrderDataViewExpViewBase extends Vue { ...@@ -244,6 +265,219 @@ export default class IBIZOrderDataViewExpViewBase extends Vue {
*/ */
public viewState: Subject<ViewState> = new Subject(); public viewState: Subject<ViewState> = new Subject();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public rootLayoutDetailNames: string[] = [ 'page_container' ];
/**
* 视图布局数据
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public layoutData:any = {};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public layoutCtrls: any[] = [
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public layoutModelDetails:any = {
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'LEFT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , fieldState: '0', predefinedType: 'VIEW_PAGECAPTION', }),
container1:new PanelContainerModel({ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:6, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' }),
toolbar:new PanelCtrlPosModel({ name: 'toolbar', caption: 'TOOLBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_2', panel: this }),
container_2:new PanelContainerModel({ name: 'container_2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['toolbar'] , dataRegionType: 'INHERIT' }),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container_2'] , dataRegionType: 'INHERIT' }),
dataviewexpbar:new PanelCtrlPosModel({ name: 'dataviewexpbar', caption: '', isShowCaption: false, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this }),
container2:new PanelContainerModel({ name: 'container2', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:3, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid2', panel: this , details:['dataviewexpbar'] , dataRegionType: 'INHERIT' }),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container3', panel: this , viewType: 'DEDATAVIEWEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
container3:new PanelContainerModel({ name: 'container3', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:9, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid2', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' }),
container_grid2:new PanelContainerModel({ name: 'container_grid2', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container2','container3'] , dataRegionType: 'INHERIT' }),
page_container:new PanelContainerModel({ name: 'page_container', caption: '', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container_grid1','container_grid2'] , dataRegionType: 'INHERIT' })
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public layoutItems:any = {
view_pagecaption:{ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'LEFT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , fieldState: '0', },
container1:{ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:6, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' },
toolbar:{ name: 'toolbar', caption: 'TOOLBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'RIGHT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_2', panel: this },
container_2:{ name: 'container_2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['toolbar'] , dataRegionType: 'INHERIT' },
container_grid1:{ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container_2'] , dataRegionType: 'INHERIT' },
dataviewexpbar:{ name: 'dataviewexpbar', caption: '', isShowCaption: false, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this },
container2:{ name: 'container2', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:3, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid2', panel: this , details:['dataviewexpbar'] , dataRegionType: 'INHERIT' },
nav_pos1:{ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container3', panel: this , viewType: 'DEDATAVIEWEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', },
container3:{ name: 'container3', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:9, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid2', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' },
container_grid2:{ name: 'container_grid2', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container2','container3'] , dataRegionType: 'INHERIT' },
page_container:{ name: 'page_container', caption: '', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container_grid1','container_grid2'] , dataRegionType: 'INHERIT' }
};
/**
* 初始化布局
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public async initLayout() {
if (this.rootLayoutDetailNames.length > 0) {
this.rootLayoutDetailNames.forEach(async (name: string) => {
const rootLayoutModelDetail = this.layoutModelDetails[name];
if (!rootLayoutModelDetail) {
return;
}
await this.initLayoutItem(rootLayoutModelDetail);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public async initLayoutItem(layoutModelDetail: any, index: number = 0) {
const { name } = layoutModelDetail;
if (!index) {
await layoutModelDetail.load(this.context,this.viewparams);
this.layoutData[name] = layoutModelDetail.getData();
} else {
const clonelayoutModelDetail = layoutModelDetail;
clonelayoutModelDetail.setIndex(index);
await clonelayoutModelDetail.load(this.context,this.viewparams);
this.$set(this.layoutModelDetails,`${name}_${index}`, clonelayoutModelDetail);
this.$set(this.layoutData,`${name}_${index}`, clonelayoutModelDetail.getData());
}
if (layoutModelDetail && layoutModelDetail.details) {
if (layoutModelDetail.dataRegionType === 'MULTIDATA') {
const multiData = layoutModelDetail.getData();
if (multiData && multiData.length > 0) {
multiData.forEach(async (data: any, index: number) => {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key], index);
}
}
})
}
} else {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public handleValueChange($event: { name: string, value: any }) {
if (!$event || !$event.name || Object.is($event.name, '') || !this.layoutData.hasOwnProperty($event.name)) {
return;
}
this.layoutData[$event.name] = $event.value;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public getButtonXData(name: string): any {
let xData = null;
let xDataControl: any = null;
let curLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((layoutModel: any) => {
if (layoutModel.name == name) {
curLayoutModel = layoutModel;
}
})
// 获取数据容器
if (curLayoutModel) {
const getDataArea = (cLayoutModel: any): any => {
let dataArea = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
if (parentLayoutModel.dataRegionType == 'SINGLEDATA' || parentLayoutModel.dataRegionType == 'MULTIDATA') {
dataArea = parentLayoutModel;
}
}
})
if (!dataArea && parentLayoutModel) {
dataArea = getDataArea(parentLayoutModel);
}
return dataArea;
}
xData = getDataArea(curLayoutModel);
// 获取激活部件
if (!xData && this.layoutCtrls.length > 0) {
const getActionCtrl = (cLayoutModel: any) => {
let actionCtrl = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
actionCtrl= parentLayoutModel.details.find((ctrlName: string) => {
return this.layoutCtrls.indexOf(ctrlName) !== -1;
})
}
})
if (!actionCtrl && parentLayoutModel) {
actionCtrl = getActionCtrl(parentLayoutModel);
}
return actionCtrl;
}
xData = getActionCtrl(curLayoutModel);
}
}
// 获取当前视图
if (!xData) {
xData = this;
}
return xData;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderDataViewExpViewBase
*/
public handleButtonClick(name: string, $event?: any) {
const datas: any[] = [this.layoutData];
const xData: any = this.getButtonXData(name);
const paramJO: any = {};
const contextJO: any = {};
const _this: any = this;
}
/** /**
......
.ibizorder-data-view-exp-view{ .ibizorder-data-view-exp-view {
position: relative;
}
.ibizorder-data-view-exp-view{
display: block; display: block;
} }
...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator'; ...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator';
import IBIZOrderDataViewExpViewBase from './ibizorder-data-view-exp-view-base.vue'; import IBIZOrderDataViewExpViewBase from './ibizorder-data-view-exp-view-base.vue';
import view_dataviewexpbar from '@widgets/ibizorder/data-view-exp-viewdataviewexpbar-dataviewexpbar/data-view-exp-viewdataviewexpbar-dataviewexpbar.vue'; import view_dataviewexpbar from '@widgets/ibizorder/data-view-exp-viewdataviewexpbar-dataviewexpbar/data-view-exp-viewdataviewexpbar-dataviewexpbar.vue';
import view_searchbar from '@widgets/ibizorder/-searchbar/-searchbar.vue';
@Component({ @Component({
components: { components: {
view_dataviewexpbar, view_dataviewexpbar,
view_searchbar,
}, },
beforeRouteEnter: (to: any, from: any, next: any) => { beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => { next((vm: any) => {
......
<template> <template>
<div class="view-container degridexpview ibizorder-grid-exp-view"> <div class="app-view-layout ibizorder-grid-exp-view" style="height: '100%'; width: '100%';'display': 'flex'; 'flex-direction': 'column';">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="ibizordergridexpview"></app-studioaction> <app-standard-container name="page_container" :layoutModelDetails="layoutModelDetails">
<card class='view-card view-no-caption view-no-toolbar' :dis-hover="true" :bordered="false"> <template #container2>
<div class='view-top-messages'> <app-standard-container name="container2" :layoutModelDetails="layoutModelDetails">
<app-alert-group position='TOP' :context="context" :viewparam="viewparams" infoGroup='VMGroup44' viewname='ibizordergridexpview'></app-alert-group> </div> <template #view_pagecaption>
<div class="content-container"> <app-preset-caption name="view_pagecaption" :layoutModelDetails="layoutModelDetails">实体表格导航视图</app-preset-caption>
<split v-model="split" mode="horizontal" @on-move-end="onSplitChange"> </template>
<template slot="left"> </app-standard-container>
</template>
<template #container_grid1>
<app-simpleflex-container name="container_grid1" :layoutModelDetails="layoutModelDetails">
<template #container1>
<app-simpleflex-container name="container1" :layoutModelDetails="layoutModelDetails">
<template #gridexpbar>
<app-ctrl-pos name="gridexpbar" :layoutModelDetails="layoutModelDetails">
<view_gridexpbar <view_gridexpbar
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
...@@ -22,22 +29,21 @@ ...@@ -22,22 +29,21 @@
@activated="gridexpbar_activated($event)" @activated="gridexpbar_activated($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_gridexpbar> </view_gridexpbar>
</app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
<template #container8>
<app-simpleflex-container name="container8" :layoutModelDetails="layoutModelDetails">
<template #nav_pos1>
<app-nav-pos name="nav_pos1" :layoutModelDetails="layoutModelDetails" :navData="layoutModelDetails['nav_pos1'].navData"></app-nav-pos>
</template> </template>
<template slot="right"> </app-simpleflex-container>
<component
v-if="navItem && navItem.navView"
:is="navItem.navView"
:key="navItem.data && navItem.data.length ? navItem.data[0].srfkey : ''"
class="viewcontainer2"
:viewDefaultUsage="false"
:viewdata="JSON.stringify(navItem.srfnavdata.context)"
:viewparam="JSON.stringify(navItem.srfnavdata.viewparams)">
</component>
</template> </template>
</split> </app-simpleflex-container>
</template>
</app-standard-container>
</div> </div>
</card>
</div>
</template> </template>
<script lang='tsx'> <script lang='tsx'>
...@@ -51,6 +57,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service ...@@ -51,6 +57,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service
import GridExpViewEngine from '@engine/view/grid-exp-view-engine'; import GridExpViewEngine from '@engine/view/grid-exp-view-engine';
import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service'; import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service';
import { PanelContainerModel, PanelRawitemModel, PanelFieldModel, PanelControlModel, PanelButtonModel, PanelUserControlModel, PanelTabPanelModel, PanelTabPageModel, PanelCtrlPosModel} from '@/model/panel-detail';
@Component({ @Component({
...@@ -216,6 +223,7 @@ export default class IBIZOrderGridExpViewBase extends Vue { ...@@ -216,6 +223,7 @@ export default class IBIZOrderGridExpViewBase extends Vue {
*/ */
public containerModel: any = { public containerModel: any = {
view_gridexpbar: { name: 'gridexpbar', type: 'GRIDEXPBAR' }, view_gridexpbar: { name: 'gridexpbar', type: 'GRIDEXPBAR' },
view_searchbar: { name: 'searchbar', type: 'SEARCHBAR' },
wflinks: [], wflinks: [],
}; };
...@@ -244,6 +252,213 @@ export default class IBIZOrderGridExpViewBase extends Vue { ...@@ -244,6 +252,213 @@ export default class IBIZOrderGridExpViewBase extends Vue {
*/ */
public viewState: Subject<ViewState> = new Subject(); public viewState: Subject<ViewState> = new Subject();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public rootLayoutDetailNames: string[] = [ 'page_container' ];
/**
* 视图布局数据
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public layoutData:any = {};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public layoutCtrls: any[] = [
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public layoutModelDetails:any = {
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this , fieldState: '0', predefinedType: 'VIEW_PAGECAPTION', }),
container2:new PanelContainerModel({ name: 'container2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'TABLE_24COL', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' }),
gridexpbar:new PanelCtrlPosModel({ name: 'gridexpbar', caption: 'GRIDEXPBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this }),
container1:new PanelContainerModel({ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:5, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['gridexpbar'] , dataRegionType: 'INHERIT' }),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container8', panel: this , viewType: 'DEGRIDEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
container8:new PanelContainerModel({ name: 'container8', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:7, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' }),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container8'] , dataRegionType: 'INHERIT' }),
page_container:new PanelContainerModel({ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container2','container_grid1'] , dataRegionType: 'INHERIT' })
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public layoutItems:any = {
view_pagecaption:{ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this , fieldState: '0', },
container2:{ name: 'container2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'TABLE_24COL', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' },
gridexpbar:{ name: 'gridexpbar', caption: 'GRIDEXPBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this },
container1:{ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:5, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['gridexpbar'] , dataRegionType: 'INHERIT' },
nav_pos1:{ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container8', panel: this , viewType: 'DEGRIDEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', },
container8:{ name: 'container8', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:7, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' },
container_grid1:{ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container8'] , dataRegionType: 'INHERIT' },
page_container:{ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container2','container_grid1'] , dataRegionType: 'INHERIT' }
};
/**
* 初始化布局
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public async initLayout() {
if (this.rootLayoutDetailNames.length > 0) {
this.rootLayoutDetailNames.forEach(async (name: string) => {
const rootLayoutModelDetail = this.layoutModelDetails[name];
if (!rootLayoutModelDetail) {
return;
}
await this.initLayoutItem(rootLayoutModelDetail);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public async initLayoutItem(layoutModelDetail: any, index: number = 0) {
const { name } = layoutModelDetail;
if (!index) {
await layoutModelDetail.load(this.context,this.viewparams);
this.layoutData[name] = layoutModelDetail.getData();
} else {
const clonelayoutModelDetail = layoutModelDetail;
clonelayoutModelDetail.setIndex(index);
await clonelayoutModelDetail.load(this.context,this.viewparams);
this.$set(this.layoutModelDetails,`${name}_${index}`, clonelayoutModelDetail);
this.$set(this.layoutData,`${name}_${index}`, clonelayoutModelDetail.getData());
}
if (layoutModelDetail && layoutModelDetail.details) {
if (layoutModelDetail.dataRegionType === 'MULTIDATA') {
const multiData = layoutModelDetail.getData();
if (multiData && multiData.length > 0) {
multiData.forEach(async (data: any, index: number) => {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key], index);
}
}
})
}
} else {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public handleValueChange($event: { name: string, value: any }) {
if (!$event || !$event.name || Object.is($event.name, '') || !this.layoutData.hasOwnProperty($event.name)) {
return;
}
this.layoutData[$event.name] = $event.value;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public getButtonXData(name: string): any {
let xData = null;
let xDataControl: any = null;
let curLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((layoutModel: any) => {
if (layoutModel.name == name) {
curLayoutModel = layoutModel;
}
})
// 获取数据容器
if (curLayoutModel) {
const getDataArea = (cLayoutModel: any): any => {
let dataArea = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
if (parentLayoutModel.dataRegionType == 'SINGLEDATA' || parentLayoutModel.dataRegionType == 'MULTIDATA') {
dataArea = parentLayoutModel;
}
}
})
if (!dataArea && parentLayoutModel) {
dataArea = getDataArea(parentLayoutModel);
}
return dataArea;
}
xData = getDataArea(curLayoutModel);
// 获取激活部件
if (!xData && this.layoutCtrls.length > 0) {
const getActionCtrl = (cLayoutModel: any) => {
let actionCtrl = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
actionCtrl= parentLayoutModel.details.find((ctrlName: string) => {
return this.layoutCtrls.indexOf(ctrlName) !== -1;
})
}
})
if (!actionCtrl && parentLayoutModel) {
actionCtrl = getActionCtrl(parentLayoutModel);
}
return actionCtrl;
}
xData = getActionCtrl(curLayoutModel);
}
}
// 获取当前视图
if (!xData) {
xData = this;
}
return xData;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderGridExpViewBase
*/
public handleButtonClick(name: string, $event?: any) {
const datas: any[] = [this.layoutData];
const xData: any = this.getButtonXData(name);
const paramJO: any = {};
const contextJO: any = {};
const _this: any = this;
}
/** /**
* 视图引擎 * 视图引擎
* *
......
.ibizorder-grid-exp-view{ .ibizorder-grid-exp-view {
position: relative;
}
.ibizorder-grid-exp-view{
display: block; display: block;
} }
...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator'; ...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator';
import IBIZOrderGridExpViewBase from './ibizorder-grid-exp-view-base.vue'; import IBIZOrderGridExpViewBase from './ibizorder-grid-exp-view-base.vue';
import view_gridexpbar from '@widgets/ibizorder/grid-exp-viewgridexpbar-gridexpbar/grid-exp-viewgridexpbar-gridexpbar.vue'; import view_gridexpbar from '@widgets/ibizorder/grid-exp-viewgridexpbar-gridexpbar/grid-exp-viewgridexpbar-gridexpbar.vue';
import view_searchbar from '@widgets/ibizorder/-searchbar/-searchbar.vue';
@Component({ @Component({
components: { components: {
view_gridexpbar, view_gridexpbar,
view_searchbar,
}, },
beforeRouteEnter: (to: any, from: any, next: any) => { beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => { next((vm: any) => {
......
<template> <template>
<div class="view-container delistexpview ibizorder-list-exp-view"> <div class="app-view-layout ibizorder-list-exp-view" style="height: '100%'; width: '100%';'display': 'flex'; 'flex-direction': 'column';">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="ibizorderlistexpview"></app-studioaction> <app-standard-container name="page_container" :layoutModelDetails="layoutModelDetails">
<card class='view-card view-no-caption view-no-toolbar' :dis-hover="true" :bordered="false"> <template #container2>
<div class='view-top-messages'> <app-standard-container name="container2" :layoutModelDetails="layoutModelDetails">
<app-alert-group position='TOP' :context="context" :viewparam="viewparams" infoGroup='VMGroup45' viewname='ibizorderlistexpview'></app-alert-group> </div> <template #view_pagecaption>
<div class="content-container"> <app-preset-caption name="view_pagecaption" :layoutModelDetails="layoutModelDetails">实体列表导航视图</app-preset-caption>
<split v-model="split" mode="horizontal" @on-move-end="onSplitChange"> </template>
<template slot="left"> </app-standard-container>
</template>
<template #container_grid1>
<app-simpleflex-container name="container_grid1" :layoutModelDetails="layoutModelDetails">
<template #container1>
<app-simpleflex-container name="container1" :layoutModelDetails="layoutModelDetails">
<template #listexpbar>
<app-ctrl-pos name="listexpbar" :layoutModelDetails="layoutModelDetails">
<view_listexpbar <view_listexpbar
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
...@@ -22,22 +29,21 @@ ...@@ -22,22 +29,21 @@
@activated="listexpbar_activated($event)" @activated="listexpbar_activated($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_listexpbar> </view_listexpbar>
</app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
<template #container8>
<app-simpleflex-container name="container8" :layoutModelDetails="layoutModelDetails">
<template #nav_pos1>
<app-nav-pos name="nav_pos1" :layoutModelDetails="layoutModelDetails" :navData="layoutModelDetails['nav_pos1'].navData"></app-nav-pos>
</template> </template>
<template slot="right"> </app-simpleflex-container>
<component
v-if="navItem && navItem.navView"
:is="navItem.navView"
:key="navItem.data && navItem.data.length ? navItem.data[0].srfkey : ''"
class="viewcontainer2"
:viewDefaultUsage="false"
:viewdata="JSON.stringify(navItem.srfnavdata.context)"
:viewparam="JSON.stringify(navItem.srfnavdata.viewparams)">
</component>
</template> </template>
</split> </app-simpleflex-container>
</template>
</app-standard-container>
</div> </div>
</card>
</div>
</template> </template>
<script lang='tsx'> <script lang='tsx'>
...@@ -51,6 +57,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service ...@@ -51,6 +57,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service
import ListExpViewEngine from '@engine/view/list-exp-view-engine'; import ListExpViewEngine from '@engine/view/list-exp-view-engine';
import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service'; import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service';
import { PanelContainerModel, PanelRawitemModel, PanelFieldModel, PanelControlModel, PanelButtonModel, PanelUserControlModel, PanelTabPanelModel, PanelTabPageModel, PanelCtrlPosModel} from '@/model/panel-detail';
@Component({ @Component({
...@@ -216,6 +223,7 @@ export default class IBIZOrderListExpViewBase extends Vue { ...@@ -216,6 +223,7 @@ export default class IBIZOrderListExpViewBase extends Vue {
*/ */
public containerModel: any = { public containerModel: any = {
view_listexpbar: { name: 'listexpbar', type: 'LISTEXPBAR' }, view_listexpbar: { name: 'listexpbar', type: 'LISTEXPBAR' },
view_searchbar: { name: 'searchbar', type: 'SEARCHBAR' },
wflinks: [], wflinks: [],
}; };
...@@ -244,6 +252,213 @@ export default class IBIZOrderListExpViewBase extends Vue { ...@@ -244,6 +252,213 @@ export default class IBIZOrderListExpViewBase extends Vue {
*/ */
public viewState: Subject<ViewState> = new Subject(); public viewState: Subject<ViewState> = new Subject();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public rootLayoutDetailNames: string[] = [ 'page_container' ];
/**
* 视图布局数据
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public layoutData:any = {};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public layoutCtrls: any[] = [
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public layoutModelDetails:any = {
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this , fieldState: '0', predefinedType: 'VIEW_PAGECAPTION', }),
container2:new PanelContainerModel({ name: 'container2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'TABLE_24COL', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' }),
listexpbar:new PanelCtrlPosModel({ name: 'listexpbar', caption: 'LISTEXPBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this }),
container1:new PanelContainerModel({ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:2, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['listexpbar'] , dataRegionType: 'INHERIT' }),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container8', panel: this , viewType: 'DELISTEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
container8:new PanelContainerModel({ name: 'container8', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:10, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' }),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container8'] , dataRegionType: 'INHERIT' }),
page_container:new PanelContainerModel({ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container2','container_grid1'] , dataRegionType: 'INHERIT' })
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public layoutItems:any = {
view_pagecaption:{ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this , fieldState: '0', },
container2:{ name: 'container2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'TABLE_24COL', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' },
listexpbar:{ name: 'listexpbar', caption: 'LISTEXPBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this },
container1:{ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:2, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['listexpbar'] , dataRegionType: 'INHERIT' },
nav_pos1:{ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container8', panel: this , viewType: 'DELISTEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', },
container8:{ name: 'container8', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:10, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' },
container_grid1:{ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container8'] , dataRegionType: 'INHERIT' },
page_container:{ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container2','container_grid1'] , dataRegionType: 'INHERIT' }
};
/**
* 初始化布局
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public async initLayout() {
if (this.rootLayoutDetailNames.length > 0) {
this.rootLayoutDetailNames.forEach(async (name: string) => {
const rootLayoutModelDetail = this.layoutModelDetails[name];
if (!rootLayoutModelDetail) {
return;
}
await this.initLayoutItem(rootLayoutModelDetail);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public async initLayoutItem(layoutModelDetail: any, index: number = 0) {
const { name } = layoutModelDetail;
if (!index) {
await layoutModelDetail.load(this.context,this.viewparams);
this.layoutData[name] = layoutModelDetail.getData();
} else {
const clonelayoutModelDetail = layoutModelDetail;
clonelayoutModelDetail.setIndex(index);
await clonelayoutModelDetail.load(this.context,this.viewparams);
this.$set(this.layoutModelDetails,`${name}_${index}`, clonelayoutModelDetail);
this.$set(this.layoutData,`${name}_${index}`, clonelayoutModelDetail.getData());
}
if (layoutModelDetail && layoutModelDetail.details) {
if (layoutModelDetail.dataRegionType === 'MULTIDATA') {
const multiData = layoutModelDetail.getData();
if (multiData && multiData.length > 0) {
multiData.forEach(async (data: any, index: number) => {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key], index);
}
}
})
}
} else {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public handleValueChange($event: { name: string, value: any }) {
if (!$event || !$event.name || Object.is($event.name, '') || !this.layoutData.hasOwnProperty($event.name)) {
return;
}
this.layoutData[$event.name] = $event.value;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public getButtonXData(name: string): any {
let xData = null;
let xDataControl: any = null;
let curLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((layoutModel: any) => {
if (layoutModel.name == name) {
curLayoutModel = layoutModel;
}
})
// 获取数据容器
if (curLayoutModel) {
const getDataArea = (cLayoutModel: any): any => {
let dataArea = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
if (parentLayoutModel.dataRegionType == 'SINGLEDATA' || parentLayoutModel.dataRegionType == 'MULTIDATA') {
dataArea = parentLayoutModel;
}
}
})
if (!dataArea && parentLayoutModel) {
dataArea = getDataArea(parentLayoutModel);
}
return dataArea;
}
xData = getDataArea(curLayoutModel);
// 获取激活部件
if (!xData && this.layoutCtrls.length > 0) {
const getActionCtrl = (cLayoutModel: any) => {
let actionCtrl = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
actionCtrl= parentLayoutModel.details.find((ctrlName: string) => {
return this.layoutCtrls.indexOf(ctrlName) !== -1;
})
}
})
if (!actionCtrl && parentLayoutModel) {
actionCtrl = getActionCtrl(parentLayoutModel);
}
return actionCtrl;
}
xData = getActionCtrl(curLayoutModel);
}
}
// 获取当前视图
if (!xData) {
xData = this;
}
return xData;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderListExpViewBase
*/
public handleButtonClick(name: string, $event?: any) {
const datas: any[] = [this.layoutData];
const xData: any = this.getButtonXData(name);
const paramJO: any = {};
const contextJO: any = {};
const _this: any = this;
}
/** /**
......
.ibizorder-list-exp-view{ .ibizorder-list-exp-view {
position: relative;
}
.ibizorder-list-exp-view{
display: block; display: block;
} }
...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator'; ...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator';
import IBIZOrderListExpViewBase from './ibizorder-list-exp-view-base.vue'; import IBIZOrderListExpViewBase from './ibizorder-list-exp-view-base.vue';
import view_listexpbar from '@widgets/ibizorder/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar.vue'; import view_listexpbar from '@widgets/ibizorder/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar.vue';
import view_searchbar from '@widgets/ibizorder/-searchbar/-searchbar.vue';
@Component({ @Component({
components: { components: {
view_listexpbar, view_listexpbar,
view_searchbar,
}, },
beforeRouteEnter: (to: any, from: any, next: any) => { beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => { next((vm: any) => {
......
<template> <template>
<div class='view-container detreeexpview ibizorder-tree-exp-view'> <div class="app-view-layout ibizorder-tree-exp-view" style="height: '100%'; width: '100%';'display': 'flex'; 'flex-direction': 'column';">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="ibizordertreeexpview"></app-studioaction> <app-standard-container name="page_container" :layoutModelDetails="layoutModelDetails">
<card class='view-card view-no-caption view-no-toolbar' :dis-hover="true" :bordered="false"> <template #container2>
<div class='view-top-messages'> <app-standard-container name="container2" :layoutModelDetails="layoutModelDetails">
<app-alert-group position='TOP' :context="context" :viewparam="viewparams" infoGroup='VMGroup48' viewname='ibizordertreeexpview'></app-alert-group> </div> <template #view_pagecaption>
<div class='content-container'> <app-preset-caption name="view_pagecaption" :layoutModelDetails="layoutModelDetails">实体树导航视图</app-preset-caption>
<split v-model="split" mode="horizontal" @on-move-end="onSplitChange"> </template>
<template slot="left"> </app-standard-container>
</template>
<template #container_grid1>
<app-simpleflex-container name="container_grid1" :layoutModelDetails="layoutModelDetails">
<template #container1>
<app-simpleflex-container name="container1" :layoutModelDetails="layoutModelDetails">
<template #treeexpbar>
<app-ctrl-pos name="treeexpbar" :layoutModelDetails="layoutModelDetails">
<view_treeexpbar <view_treeexpbar
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
...@@ -20,23 +27,22 @@ ...@@ -20,23 +27,22 @@
@load="treeexpbar_load($event)" @load="treeexpbar_load($event)"
@activated="treeexpbar_activated($event)" @activated="treeexpbar_activated($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_treeexpbar> </view_treeexpbar>
</app-ctrl-pos>
</template>
</app-simpleflex-container>
</template>
<template #container8>
<app-simpleflex-container name="container8" :layoutModelDetails="layoutModelDetails">
<template #nav_pos1>
<app-nav-pos name="nav_pos1" :layoutModelDetails="layoutModelDetails" :navData="layoutModelDetails['nav_pos1'].navData"></app-nav-pos>
</template> </template>
<template slot="right"> </app-simpleflex-container>
<component
v-if="navItem && navItem.navView"
:is="navItem.navView"
:key="navItem.data && navItem.data.length ? navItem.data[0].srfkey : ''"
class="viewcontainer2"
:viewDefaultUsage="false"
:viewdata="JSON.stringify(navItem.srfnavdata.context)"
:viewparam="JSON.stringify(navItem.srfnavdata.viewparams)">
</component>
</template> </template>
</split> </app-simpleflex-container>
</template>
</app-standard-container>
</div> </div>
</card>
</div>
</template> </template>
<script lang='tsx'> <script lang='tsx'>
...@@ -50,6 +56,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service ...@@ -50,6 +56,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service
import TreeExpViewEngine from '@engine/view/tree-exp-view-engine'; import TreeExpViewEngine from '@engine/view/tree-exp-view-engine';
import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service'; import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service';
import { PanelContainerModel, PanelRawitemModel, PanelFieldModel, PanelControlModel, PanelButtonModel, PanelUserControlModel, PanelTabPanelModel, PanelTabPageModel, PanelCtrlPosModel} from '@/model/panel-detail';
@Component({ @Component({
...@@ -215,6 +222,7 @@ export default class IBIZOrderTreeExpViewBase extends Vue { ...@@ -215,6 +222,7 @@ export default class IBIZOrderTreeExpViewBase extends Vue {
*/ */
public containerModel: any = { public containerModel: any = {
view_treeexpbar: { name: 'treeexpbar', type: 'TREEEXPBAR' }, view_treeexpbar: { name: 'treeexpbar', type: 'TREEEXPBAR' },
view_searchbar: { name: 'searchbar', type: 'SEARCHBAR' },
wflinks: [], wflinks: [],
}; };
...@@ -243,6 +251,213 @@ export default class IBIZOrderTreeExpViewBase extends Vue { ...@@ -243,6 +251,213 @@ export default class IBIZOrderTreeExpViewBase extends Vue {
*/ */
public viewState: Subject<ViewState> = new Subject(); public viewState: Subject<ViewState> = new Subject();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public rootLayoutDetailNames: string[] = [ 'page_container' ];
/**
* 视图布局数据
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public layoutData:any = {};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public layoutCtrls: any[] = [
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public layoutModelDetails:any = {
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this , fieldState: '0', predefinedType: 'VIEW_PAGECAPTION', }),
container2:new PanelContainerModel({ name: 'container2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'TABLE_24COL', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' }),
treeexpbar:new PanelCtrlPosModel({ name: 'treeexpbar', caption: 'TREEEXPBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this }),
container1:new PanelContainerModel({ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:2, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['treeexpbar'] , dataRegionType: 'INHERIT' }),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container8', panel: this , viewType: 'DETREEEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
container8:new PanelContainerModel({ name: 'container8', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:10, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' }),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container8'] , dataRegionType: 'INHERIT' }),
page_container:new PanelContainerModel({ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container2','container_grid1'] , dataRegionType: 'INHERIT' })
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public layoutItems:any = {
view_pagecaption:{ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this , fieldState: '0', },
container2:{ name: 'container2', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'TABLE_24COL', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' },
treeexpbar:{ name: 'treeexpbar', caption: 'TREEEXPBAR', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this },
container1:{ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:2, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['treeexpbar'] , dataRegionType: 'INHERIT' },
nav_pos1:{ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container8', panel: this , viewType: 'DETREEEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', },
container8:{ name: 'container8', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:10, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['nav_pos1'] , dataRegionType: 'INHERIT' },
container_grid1:{ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container8'] , dataRegionType: 'INHERIT' },
page_container:{ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'column',vAlign:''}, panel: this , details:['container2','container_grid1'] , dataRegionType: 'INHERIT' }
};
/**
* 初始化布局
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public async initLayout() {
if (this.rootLayoutDetailNames.length > 0) {
this.rootLayoutDetailNames.forEach(async (name: string) => {
const rootLayoutModelDetail = this.layoutModelDetails[name];
if (!rootLayoutModelDetail) {
return;
}
await this.initLayoutItem(rootLayoutModelDetail);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public async initLayoutItem(layoutModelDetail: any, index: number = 0) {
const { name } = layoutModelDetail;
if (!index) {
await layoutModelDetail.load(this.context,this.viewparams);
this.layoutData[name] = layoutModelDetail.getData();
} else {
const clonelayoutModelDetail = layoutModelDetail;
clonelayoutModelDetail.setIndex(index);
await clonelayoutModelDetail.load(this.context,this.viewparams);
this.$set(this.layoutModelDetails,`${name}_${index}`, clonelayoutModelDetail);
this.$set(this.layoutData,`${name}_${index}`, clonelayoutModelDetail.getData());
}
if (layoutModelDetail && layoutModelDetail.details) {
if (layoutModelDetail.dataRegionType === 'MULTIDATA') {
const multiData = layoutModelDetail.getData();
if (multiData && multiData.length > 0) {
multiData.forEach(async (data: any, index: number) => {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key], index);
}
}
})
}
} else {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public handleValueChange($event: { name: string, value: any }) {
if (!$event || !$event.name || Object.is($event.name, '') || !this.layoutData.hasOwnProperty($event.name)) {
return;
}
this.layoutData[$event.name] = $event.value;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public getButtonXData(name: string): any {
let xData = null;
let xDataControl: any = null;
let curLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((layoutModel: any) => {
if (layoutModel.name == name) {
curLayoutModel = layoutModel;
}
})
// 获取数据容器
if (curLayoutModel) {
const getDataArea = (cLayoutModel: any): any => {
let dataArea = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
if (parentLayoutModel.dataRegionType == 'SINGLEDATA' || parentLayoutModel.dataRegionType == 'MULTIDATA') {
dataArea = parentLayoutModel;
}
}
})
if (!dataArea && parentLayoutModel) {
dataArea = getDataArea(parentLayoutModel);
}
return dataArea;
}
xData = getDataArea(curLayoutModel);
// 获取激活部件
if (!xData && this.layoutCtrls.length > 0) {
const getActionCtrl = (cLayoutModel: any) => {
let actionCtrl = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
actionCtrl= parentLayoutModel.details.find((ctrlName: string) => {
return this.layoutCtrls.indexOf(ctrlName) !== -1;
})
}
})
if (!actionCtrl && parentLayoutModel) {
actionCtrl = getActionCtrl(parentLayoutModel);
}
return actionCtrl;
}
xData = getActionCtrl(curLayoutModel);
}
}
// 获取当前视图
if (!xData) {
xData = this;
}
return xData;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderTreeExpViewBase
*/
public handleButtonClick(name: string, $event?: any) {
const datas: any[] = [this.layoutData];
const xData: any = this.getButtonXData(name);
const paramJO: any = {};
const contextJO: any = {};
const _this: any = this;
}
/** /**
* 视图引擎 * 视图引擎
......
.view-card { .ibizorder-tree-exp-view {
>.ivu-card-extra { display: block;
top: 5px;
right: 0px;
}
} }
.ibizorder-tree-exp-view{
position: relative;
height: 100%;
}
...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator'; ...@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator';
import IBIZOrderTreeExpViewBase from './ibizorder-tree-exp-view-base.vue'; import IBIZOrderTreeExpViewBase from './ibizorder-tree-exp-view-base.vue';
import view_treeexpbar from '@widgets/ibizorder/tree-exp-viewtreeexpbar-treeexpbar/tree-exp-viewtreeexpbar-treeexpbar.vue'; import view_treeexpbar from '@widgets/ibizorder/tree-exp-viewtreeexpbar-treeexpbar/tree-exp-viewtreeexpbar-treeexpbar.vue';
import view_searchbar from '@widgets/ibizorder/-searchbar/-searchbar.vue';
@Component({ @Component({
components: { components: {
view_treeexpbar, view_treeexpbar,
view_searchbar,
}, },
beforeRouteEnter: (to: any, from: any, next: any) => { beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => { next((vm: any) => {
......
<template> <template>
<div class='view-container detreegridexview ibizorder-tree-grid-ex-view'> <div class="app-view-layout ibizorder-tree-grid-ex-view" style="height: '100%'; width: '100%'; overflow: 'auto';">
<app-studioaction :viewTitle="$t(model.srfCaption)" viewName="ibizordertreegridexview"></app-studioaction> <app-standard-container name="page_container" :layoutModelDetails="layoutModelDetails">
<card class='view-card view-no-caption' :dis-hover="true" :bordered="false"> <template #container_grid1>
<div class='view-top-messages'> <app-simpleflex-container name="container_grid1" :layoutModelDetails="layoutModelDetails">
<app-alert-group position='TOP' :context="context" :viewparam="viewparams" infoGroup='VMGroup58' viewname='ibizordertreegridexview'></app-alert-group> </div> <template #container1>
<div class='content-container'> <app-simpleflex-container name="container1" :layoutModelDetails="layoutModelDetails">
<div style='margin-bottom: 6px;'> <template #view_pagecaption>
<div class='pull-right'> <app-preset-caption name="view_pagecaption" :layoutModelDetails="layoutModelDetails">实体树表格视图(增强)</app-preset-caption>
</template>
</app-simpleflex-container>
</template>
<template #container2>
<app-simpleflex-container name="container2" :layoutModelDetails="layoutModelDetails">
<template #toolbar>
<app-ctrl-pos name="toolbar" :layoutModelDetails="layoutModelDetails">
<div class='toolbar-container'> <div class='toolbar-container'>
</div> </div>
</div> </app-ctrl-pos>
</div> </template>
</app-simpleflex-container>
</template>
</app-simpleflex-container>
</template>
<template #container3>
<app-standard-container name="container3" :layoutModelDetails="layoutModelDetails">
<template #treegridex>
<app-ctrl-pos name="treegridex" :layoutModelDetails="layoutModelDetails">
<view_treegridex <view_treegridex
:viewState="viewState" :viewState="viewState"
:viewparams="viewparams" :viewparams="viewparams"
...@@ -24,10 +39,13 @@ ...@@ -24,10 +39,13 @@
@load="treegridex_load($event)" @load="treegridex_load($event)"
@beforeload="treegridex_beforeload($event)" @beforeload="treegridex_beforeload($event)"
@closeview="closeView($event)"> @closeview="closeView($event)">
</view_treegridex> </view_treegridex>
</app-ctrl-pos>
</template>
</app-standard-container>
</template>
</app-standard-container>
</div> </div>
</card>
</div>
</template> </template>
<script lang='tsx'> <script lang='tsx'>
...@@ -41,6 +59,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service ...@@ -41,6 +59,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service
import TreeGridExViewEngine from '@engine/view/tree-grid-ex-view-engine'; import TreeGridExViewEngine from '@engine/view/tree-grid-ex-view-engine';
import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service'; import IBIZOrderUIService from '@/uiservice/ibizorder/ibizorder-ui-service';
import { PanelContainerModel, PanelRawitemModel, PanelFieldModel, PanelControlModel, PanelButtonModel, PanelUserControlModel, PanelTabPanelModel, PanelTabPageModel, PanelCtrlPosModel} from '@/model/panel-detail';
@Component({ @Component({
...@@ -205,8 +224,8 @@ export default class IBIZOrderTreeGridExViewBase extends Vue { ...@@ -205,8 +224,8 @@ export default class IBIZOrderTreeGridExViewBase extends Vue {
* @memberof IBIZOrderTreeGridExViewBase * @memberof IBIZOrderTreeGridExViewBase
*/ */
public containerModel: any = { public containerModel: any = {
view_treegridex: { name: 'treegridex', type: 'TREEGRIDEX' },
view_toolbar: { name: 'toolbar', type: 'TOOLBAR' }, view_toolbar: { name: 'toolbar', type: 'TOOLBAR' },
view_treegridex: { name: 'treegridex', type: 'TREEGRIDEX' },
wflinks: [], wflinks: [],
}; };
...@@ -256,6 +275,213 @@ export default class IBIZOrderTreeGridExViewBase extends Vue { ...@@ -256,6 +275,213 @@ export default class IBIZOrderTreeGridExViewBase extends Vue {
}; };
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public rootLayoutDetailNames: string[] = [ 'page_container' ];
/**
* 视图布局数据
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public layoutData:any = {};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public layoutCtrls: any[] = [
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public layoutModelDetails:any = {
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , fieldState: '0', predefinedType: 'VIEW_PAGECAPTION', }),
container1:new PanelContainerModel({ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:3, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' }),
toolbar:new PanelCtrlPosModel({ name: 'toolbar', caption: '工具栏', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this }),
container2:new PanelContainerModel({ name: 'container2', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:9, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['toolbar'] , dataRegionType: 'INHERIT' }),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container2'] , dataRegionType: 'INHERIT' }),
treegridex:new PanelCtrlPosModel({ name: 'treegridex', caption: '树表格部件', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container3', panel: this }),
container3:new PanelContainerModel({ name: 'container3', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['treegridex'] , dataRegionType: 'INHERIT' }),
page_container:new PanelContainerModel({ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container_grid1','container3'] , dataRegionType: 'INHERIT' })
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public layoutItems:any = {
view_pagecaption:{ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , fieldState: '0', },
container1:{ name: 'container1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:3, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['view_pagecaption'] , dataRegionType: 'INHERIT' },
toolbar:{ name: 'toolbar', caption: '工具栏', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container2', panel: this },
container2:{ name: 'container2', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:9, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_grid1', panel: this , details:['toolbar'] , dataRegionType: 'INHERIT' },
container_grid1:{ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['container1','container2'] , dataRegionType: 'INHERIT' },
treegridex:{ name: 'treegridex', caption: '树表格部件', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container3', panel: this },
container3:{ name: 'container3', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'page_container', panel: this , details:['treegridex'] , dataRegionType: 'INHERIT' },
page_container:{ name: 'page_container', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container_grid1','container3'] , dataRegionType: 'INHERIT' }
};
/**
* 初始化布局
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public async initLayout() {
if (this.rootLayoutDetailNames.length > 0) {
this.rootLayoutDetailNames.forEach(async (name: string) => {
const rootLayoutModelDetail = this.layoutModelDetails[name];
if (!rootLayoutModelDetail) {
return;
}
await this.initLayoutItem(rootLayoutModelDetail);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public async initLayoutItem(layoutModelDetail: any, index: number = 0) {
const { name } = layoutModelDetail;
if (!index) {
await layoutModelDetail.load(this.context,this.viewparams);
this.layoutData[name] = layoutModelDetail.getData();
} else {
const clonelayoutModelDetail = layoutModelDetail;
clonelayoutModelDetail.setIndex(index);
await clonelayoutModelDetail.load(this.context,this.viewparams);
this.$set(this.layoutModelDetails,`${name}_${index}`, clonelayoutModelDetail);
this.$set(this.layoutData,`${name}_${index}`, clonelayoutModelDetail.getData());
}
if (layoutModelDetail && layoutModelDetail.details) {
if (layoutModelDetail.dataRegionType === 'MULTIDATA') {
const multiData = layoutModelDetail.getData();
if (multiData && multiData.length > 0) {
multiData.forEach(async (data: any, index: number) => {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key], index);
}
}
})
}
} else {
for (const key of layoutModelDetail.details) {
if (this.layoutModelDetails[key]) {
await this.initLayoutItem(this.layoutModelDetails[key]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public handleValueChange($event: { name: string, value: any }) {
if (!$event || !$event.name || Object.is($event.name, '') || !this.layoutData.hasOwnProperty($event.name)) {
return;
}
this.layoutData[$event.name] = $event.value;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public getButtonXData(name: string): any {
let xData = null;
let xDataControl: any = null;
let curLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((layoutModel: any) => {
if (layoutModel.name == name) {
curLayoutModel = layoutModel;
}
})
// 获取数据容器
if (curLayoutModel) {
const getDataArea = (cLayoutModel: any): any => {
let dataArea = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
if (parentLayoutModel.dataRegionType == 'SINGLEDATA' || parentLayoutModel.dataRegionType == 'MULTIDATA') {
dataArea = parentLayoutModel;
}
}
})
if (!dataArea && parentLayoutModel) {
dataArea = getDataArea(parentLayoutModel);
}
return dataArea;
}
xData = getDataArea(curLayoutModel);
// 获取激活部件
if (!xData && this.layoutCtrls.length > 0) {
const getActionCtrl = (cLayoutModel: any) => {
let actionCtrl = null;
let parentLayoutModel = null;
Object.values(this.layoutModelDetails).forEach((pLayoutModel: any) => {
if (pLayoutModel.name == cLayoutModel.name) {
parentLayoutModel = pLayoutModel;
actionCtrl= parentLayoutModel.details.find((ctrlName: string) => {
return this.layoutCtrls.indexOf(ctrlName) !== -1;
})
}
})
if (!actionCtrl && parentLayoutModel) {
actionCtrl = getActionCtrl(parentLayoutModel);
}
return actionCtrl;
}
xData = getActionCtrl(curLayoutModel);
}
}
// 获取当前视图
if (!xData) {
xData = this;
}
return xData;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderTreeGridExViewBase
*/
public handleButtonClick(name: string, $event?: any) {
const datas: any[] = [this.layoutData];
const xData: any = this.getButtonXData(name);
const paramJO: any = {};
const contextJO: any = {};
const _this: any = this;
}
/** /**
* 视图引擎 * 视图引擎
......
.ibizorder-tree-grid-ex-view{ .ibizorder-tree-grid-ex-view {
position: relative; display: block;
} }
.toolbar-container {
button {
margin: 6px 0px 4px 4px;
.caption {
margin-left: 4px;
}
}
.seperator {
color: #dcdee2;
margin: 0 0px 0 4px;
}
}
// this is less
...@@ -663,7 +663,7 @@ export default class DefaultBase extends Vue implements ControlInterface { ...@@ -663,7 +663,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/ */
public load(opt: any = {}): void { public load(opt: any = {}): void {
if(!this.loadAction){ if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKUsr8GridView' + (this.$t('app.searchForm.notConfig.loadAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKGroupByCodelistListView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
return; return;
} }
const arg: any = { ...opt }; const arg: any = { ...opt };
...@@ -699,7 +699,7 @@ export default class DefaultBase extends Vue implements ControlInterface { ...@@ -699,7 +699,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/ */
public loadDraft(opt: any = {},mode?:string): void { public loadDraft(opt: any = {},mode?:string): void {
if(!this.loaddraftAction){ if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKUsr8GridView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKGroupByCodelistListView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
return; return;
} }
const arg: any = { ...opt } ; const arg: any = { ...opt } ;
......
...@@ -1300,7 +1300,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface ...@@ -1300,7 +1300,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
*/ */
public load(opt: any = {}): void { public load(opt: any = {}): void {
if(!this.loadAction){ if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.loadaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.loadaction') as string) });
return; return;
} }
const arg: any = { ...opt }; const arg: any = { ...opt };
...@@ -1335,7 +1335,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface ...@@ -1335,7 +1335,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
*/ */
public loadDraft(opt: any = {}): void { public loadDraft(opt: any = {}): void {
if(!this.loaddraftAction){ if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.loaddraftaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.loaddraftaction') as string) });
return; return;
} }
const arg: any = { ...opt } ; const arg: any = { ...opt } ;
...@@ -1396,7 +1396,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface ...@@ -1396,7 +1396,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction; const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction;
if(!action){ if(!action){
let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction"; let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction";
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.actionname') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.actionname') as string) });
return; return;
} }
Object.assign(arg,{viewparams:this.viewparams}); Object.assign(arg,{viewparams:this.viewparams});
...@@ -1504,7 +1504,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface ...@@ -1504,7 +1504,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction; const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction;
if(!action){ if(!action){
let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction"; let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction";
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.actionname') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.actionname') as string) });
return; return;
} }
Object.assign(arg,{viewparams:this.viewparams}); Object.assign(arg,{viewparams:this.viewparams});
...@@ -1578,7 +1578,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface ...@@ -1578,7 +1578,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
public remove(opt:Array<any> = [],showResultInfo?: boolean): Promise<any> { public remove(opt:Array<any> = [],showResultInfo?: boolean): Promise<any> {
return new Promise((resolve: any, reject: any) => { return new Promise((resolve: any, reject: any) => {
if(!this.removeAction){ if(!this.removeAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.removeaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.removeaction') as string) });
return; return;
} }
const arg: any = opt[0]; const arg: any = opt[0];
......
...@@ -1266,7 +1266,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface ...@@ -1266,7 +1266,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface
*/ */
public load(opt: any = {}): void { public load(opt: any = {}): void {
if(!this.loadAction){ if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.loadaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.loadaction') as string) });
return; return;
} }
const arg: any = { ...opt }; const arg: any = { ...opt };
...@@ -1301,7 +1301,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface ...@@ -1301,7 +1301,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface
*/ */
public loadDraft(opt: any = {}): void { public loadDraft(opt: any = {}): void {
if(!this.loaddraftAction){ if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.loaddraftaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.loaddraftaction') as string) });
return; return;
} }
const arg: any = { ...opt } ; const arg: any = { ...opt } ;
...@@ -1362,7 +1362,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface ...@@ -1362,7 +1362,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface
const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction; const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction;
if(!action){ if(!action){
let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction"; let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction";
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.actionname') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.actionname') as string) });
return; return;
} }
Object.assign(arg,{viewparams:this.viewparams}); Object.assign(arg,{viewparams:this.viewparams});
...@@ -1470,7 +1470,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface ...@@ -1470,7 +1470,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface
const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction; const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction;
if(!action){ if(!action){
let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction"; let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction";
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.actionname') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.actionname') as string) });
return; return;
} }
Object.assign(arg,{viewparams:this.viewparams}); Object.assign(arg,{viewparams:this.viewparams});
...@@ -1544,7 +1544,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface ...@@ -1544,7 +1544,7 @@ export default class GuideReturnFormBase extends Vue implements ControlInterface
public remove(opt:Array<any> = [],showResultInfo?: boolean): Promise<any> { public remove(opt:Array<any> = [],showResultInfo?: boolean): Promise<any> {
return new Promise((resolve: any, reject: any) => { return new Promise((resolve: any, reject: any) => {
if(!this.removeAction){ if(!this.removeAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.removeaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.removeaction') as string) });
return; return;
} }
const arg: any = opt[0]; const arg: any = opt[0];
......
...@@ -1369,7 +1369,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface { ...@@ -1369,7 +1369,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface {
*/ */
public load(opt: any = {}): void { public load(opt: any = {}): void {
if(!this.loadAction){ if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.loadaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.loadaction') as string) });
return; return;
} }
const arg: any = { ...opt }; const arg: any = { ...opt };
...@@ -1404,7 +1404,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface { ...@@ -1404,7 +1404,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface {
*/ */
public loadDraft(opt: any = {}): void { public loadDraft(opt: any = {}): void {
if(!this.loaddraftAction){ if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.loaddraftaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.loaddraftaction') as string) });
return; return;
} }
const arg: any = { ...opt } ; const arg: any = { ...opt } ;
...@@ -1465,7 +1465,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface { ...@@ -1465,7 +1465,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface {
const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction; const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction;
if(!action){ if(!action){
let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction"; let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction";
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.actionname') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.actionname') as string) });
return; return;
} }
Object.assign(arg,{viewparams:this.viewparams}); Object.assign(arg,{viewparams:this.viewparams});
...@@ -1573,7 +1573,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface { ...@@ -1573,7 +1573,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface {
const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction; const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction;
if(!action){ if(!action){
let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction"; let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction";
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.actionname') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.actionname') as string) });
return; return;
} }
Object.assign(arg,{viewparams:this.viewparams}); Object.assign(arg,{viewparams:this.viewparams});
...@@ -1647,7 +1647,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface { ...@@ -1647,7 +1647,7 @@ export default class GuideViewFormBase extends Vue implements ControlInterface {
public remove(opt:Array<any> = [],showResultInfo?: boolean): Promise<any> { public remove(opt:Array<any> = [],showResultInfo?: boolean): Promise<any> {
return new Promise((resolve: any, reject: any) => { return new Promise((resolve: any, reject: any) => {
if(!this.removeAction){ if(!this.removeAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView_layout' + (this.$t('app.formpage.notconfig.removeaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKWizardView' + (this.$t('app.formpage.notconfig.removeaction') as string) });
return; return;
} }
const arg: any = opt[0]; const arg: any = opt[0];
......
...@@ -1800,7 +1800,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1800,7 +1800,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/ */
public load(opt: any = {}): void { public load(opt: any = {}): void {
if(!this.loadAction){ if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView_layout' + (this.$t('app.formpage.notconfig.loadaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView' + (this.$t('app.formpage.notconfig.loadaction') as string) });
return; return;
} }
const arg: any = { ...opt }; const arg: any = { ...opt };
...@@ -1835,7 +1835,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1835,7 +1835,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/ */
public loadDraft(opt: any = {}): void { public loadDraft(opt: any = {}): void {
if(!this.loaddraftAction){ if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView_layout' + (this.$t('app.formpage.notconfig.loaddraftaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView' + (this.$t('app.formpage.notconfig.loaddraftaction') as string) });
return; return;
} }
const arg: any = { ...opt } ; const arg: any = { ...opt } ;
...@@ -1897,7 +1897,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1897,7 +1897,7 @@ export default class MainBase extends Vue implements ControlInterface {
const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction; const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction;
if(!action){ if(!action){
let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction"; let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction";
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView_layout' + (this.$t('app.formpage.notconfig.actionname') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView' + (this.$t('app.formpage.notconfig.actionname') as string) });
return; return;
} }
Object.assign(arg,{viewparams:this.viewparams}); Object.assign(arg,{viewparams:this.viewparams});
...@@ -2005,7 +2005,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -2005,7 +2005,7 @@ export default class MainBase extends Vue implements ControlInterface {
const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction; const action: any = Object.is(data.srfuf, '1') ? this.updateAction : this.createAction;
if(!action){ if(!action){
let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction"; let actionName:any = Object.is(data.srfuf, '1')?"updateAction":"createAction";
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView_layout' + (this.$t('app.formpage.notconfig.actionname') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView' + (this.$t('app.formpage.notconfig.actionname') as string) });
return; return;
} }
Object.assign(arg,{viewparams:this.viewparams}); Object.assign(arg,{viewparams:this.viewparams});
...@@ -2082,7 +2082,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -2082,7 +2082,7 @@ export default class MainBase extends Vue implements ControlInterface {
public remove(opt:Array<any> = [],showResultInfo?: boolean): Promise<any> { public remove(opt:Array<any> = [],showResultInfo?: boolean): Promise<any> {
return new Promise((resolve: any, reject: any) => { return new Promise((resolve: any, reject: any) => {
if(!this.removeAction){ if(!this.removeAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView_layout' + (this.$t('app.formpage.notconfig.removeaction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKOptionView' + (this.$t('app.formpage.notconfig.removeaction') as string) });
return; return;
} }
const arg: any = opt[0]; const arg: any = opt[0];
......
...@@ -12,6 +12,189 @@ ...@@ -12,6 +12,189 @@
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}, },
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup59"
},
"getPSDEViewCodeName" : "InterFuncKanBanView",
"getPSDEViewId" : "520461c48d734e7d2b34b20d62b637ab",
"getPSViewLayoutPanel" : {
"getAllPSPanelFields" : [ {
"id" : "view_pagecaption"
} ],
"codeName" : "Usr1104625649",
"controlType" : "VIEWLAYOUTPANEL",
"layoutMode" : "FLEX",
"logicName" : "InterFuncKanBanViewDEKANBANVIEW",
"name" : "layoutpanel",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSControlParam" : { },
"getPSLayout" : {
"layout" : "FLEX"
},
"getRootPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "page_container",
"getPSLayout" : {
"dir" : "column",
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 6,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "页面标题",
"itemStyle" : "DEFAULT",
"itemType" : "FIELD",
"name" : "view_pagecaption",
"getPSEditor" : {
"editorType" : "SPAN",
"name" : "view_pagecaption",
"predefinedType" : "VIEW_PAGECAPTION",
"renderMode" : "HEADING1",
"enableLinkView" : false
},
"getPSLayoutPos" : {
"grow" : -1,
"hAlignSelf" : "LEFT",
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX",
"widthMode" : "FULL"
},
"hidden" : false,
"showCaption" : false
} ]
}, {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 3,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "QUICKSEARCHBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "quicksearchbar",
"getPSLayoutPos" : {
"grow" : -1,
"hAlignSelf" : "RIGHT",
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
}, {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_2",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "TOOLBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "toolbar",
"getPSLayoutPos" : {
"grow" : -1,
"hAlignSelf" : "RIGHT",
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
} ]
}, {
"caption" : "容器",
"contentHeight" : 100.0,
"height" : 100.0,
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container4",
"getPSLayout" : {
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"height" : 100,
"heightMode" : "PERCENTAGE",
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "SEARCHFORM",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "searchform",
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "FLEX"
},
"showCaption" : true
}, {
"caption" : "KANBAN",
"contentHeight" : 100.0,
"height" : 100.0,
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "kanban",
"getPSLayoutPos" : {
"grow" : -1,
"height" : 100,
"heightMode" : "PERCENTAGE",
"layout" : "FLEX"
},
"showCaption" : true
} ]
} ]
} ],
"layoutBodyOnly" : false,
"layoutPanel" : true,
"useDefaultLayout" : false,
"viewProxyMode" : true,
"modelid" : "F21D6807-59E9-484F-BE4B-133BC776CB85",
"modeltype" : "PSSYSVIEWLAYOUTPANEL",
"getPSAppViewEngines" : [ { "getPSAppViewEngines" : [ {
"engineCat" : "VIEW", "engineCat" : "VIEW",
"engineType" : "KanBanView", "engineType" : "KanBanView",
...@@ -229,10 +412,6 @@ ...@@ -229,10 +412,6 @@
"editMode" : true "editMode" : true
} }
} ], } ],
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup59"
},
"getPSAppViewRefs" : [ { "getPSAppViewRefs" : [ {
"name" : "NEWDATA", "name" : "NEWDATA",
"realTitle" : "图书编辑视图", "realTitle" : "图书编辑视图",
...@@ -354,58 +533,171 @@ ...@@ -354,58 +533,171 @@
"xDataControlName" : "kanban" "xDataControlName" : "kanban"
} ], } ],
"getPSControls" : [ { "getPSControls" : [ {
"codeName" : "Default", "codeName" : "InterFuncKanban",
"controlType" : "SEARCHFORM", "controlType" : "KANBAN",
"dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSSEARCHFORMS/Default.json", "getCreatePSControlAction" : {
"hookEventNames" : [ "SEARCH", "LOAD", "SAVE" ], "modelref" : true,
"logicName" : "默认搜索表单", "id" : "create"
},
"dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSKANBANS/InterFuncKanban.json",
"getFetchPSControlAction" : {
"modelref" : true,
"id" : "fetch"
},
"getGetPSControlAction" : {
"modelref" : true,
"id" : "load"
},
"groupLayout" : "ROW",
"groupMode" : "AUTO",
"getGroupPSAppDEField" : {
"name" : "AUTHOR",
"codeName" : "Author"
},
"getGroupPSUIActionGroup" : {
"codeName" : "Auto11",
"name" : "实体看板界面行为组",
"getPSUIActionGroupDetails" : [ {
"detailType" : "DEUIACTION",
"name" : "u7f86898",
"getPSUIAction" : {
"actionTarget" : "NONE",
"caption" : "打开实体看板文档",
"codeName" : "openKanbanDocument",
"frontProcessType" : "OPENHTMLPAGE",
"fullCodeName" : "IBIZBOOK_openKanbanDocument",
"htmlPageUrl" : "https://www.yuque.com/ibiz/wuf19n/tqi7p6",
"name" : "打开实体看板文档",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"timeout" : 60000,
"uIActionMode" : "FRONT",
"uIActionTag" : "openKanbanDocument",
"uIActionType" : "DEUIACTION",
"id" : "openKanbanDocument@IBIZBOOK"
},
"addSeparator" : false,
"showCaption" : true,
"showIcon" : true
} ]
},
"hookEventNames" : [ "ROWDBLCLICK", "SELECTIONCHANGE", "REMOVE", "LOAD", "BEFORELOAD" ],
"logicName" : "看板(内置功能)",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSAppViewLogics" : [ {
"logicTrigger" : "CUSTOM",
"logicType" : "APPVIEWUIACTION",
"name" : "kanban_group_u7f86898_click",
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "打开实体看板文档"
}
} ],
"getPSAppViewUIActions" : [ {
"name" : "打开实体看板文档",
"getPSUIAction" : {
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}, },
"modelref" : true,
"id" : "openKanbanDocument@IBIZBOOK"
},
"uIActionTarget" : "NONE",
"xDataControlName" : "kanban"
} ],
"getPSControlHandler" : { "getPSControlHandler" : {
"getPSHandlerActions" : [ { "getPSHandlerActions" : [ {
"actionType" : "FILTERACTION", "actionName" : "Update",
"actionType" : "DEACTION",
"dataAccessAction" : "UPDATE",
"name" : "updategroup",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "Update"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionName" : "Get",
"actionType" : "DEACTION",
"dataAccessAction" : "READ",
"name" : "load", "name" : "load",
"getPSAppDEMethod" : { "getPSAppDEMethod" : {
"modelref" : true, "modelref" : true,
"id" : "FilterGet" "id" : "Get"
}, },
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
} }
}, { }, {
"actionType" : "FILTERACTION", "actionName" : "Create",
"name" : "loaddraft", "actionType" : "DEACTION",
"dataAccessAction" : "CREATE",
"name" : "create",
"getPSAppDEMethod" : { "getPSAppDEMethod" : {
"modelref" : true, "modelref" : true,
"id" : "FilterGetDraft" "id" : "Create"
}, },
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
} }
}, { }, {
"actionType" : "FILTERACTION", "actionName" : "Update",
"name" : "search", "actionType" : "DEACTION",
"dataAccessAction" : "UPDATE",
"name" : "update",
"getPSAppDEMethod" : { "getPSAppDEMethod" : {
"modelref" : true, "modelref" : true,
"id" : "FilterSearch" "id" : "Update"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionName" : "Remove",
"actionType" : "DEACTION",
"dataAccessAction" : "DELETE",
"name" : "remove",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "Remove"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionType" : "DEDATASET",
"name" : "fetch",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "FetchDefault"
}, },
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
} }
} ], } ],
"userDRAction" : "READ",
"enableDEFieldPrivilege" : false, "enableDEFieldPrivilege" : false,
"id" : "搜索表单处理器" "id" : "数据视图处理器"
}, },
"getPSControlLogics" : [ { "getPSControlLogics" : [ {
"eventNames" : "SEARCH;LOAD;SAVE", "eventNames" : "ROWDBLCLICK;SELECTIONCHANGE;REMOVE;LOAD;BEFORELOAD",
"logicTag" : "searchform", "logicTag" : "kanban",
"logicType" : "APPVIEWENGINE", "logicType" : "APPVIEWENGINE",
"name" : "engine_searchform", "name" : "engine_kanban",
"getPSAppViewEngine" : { "getPSAppViewEngine" : {
"modelref" : true, "modelref" : true,
"id" : "engine" "id" : "engine"
...@@ -414,114 +706,151 @@ ...@@ -414,114 +706,151 @@
"getPSControlParam" : { "getPSControlParam" : {
"autoLoad" : true, "autoLoad" : true,
"showBusyIndicator" : true, "showBusyIndicator" : true,
"id" : "SEARCHFORM" "id" : "KANBAN"
}, },
"getPSDEFormItems" : [ { "getPSDEDataImport" : {
"id" : "n_ibizbookname_like", "modelref" : true,
"id" : "DataImport"
},
"getPSDEDataViewDataItems" : [ {
"dataType" : 25, "dataType" : 25,
"name" : "srfmajortext",
"getPSAppDEField" : { "getPSAppDEField" : {
"name" : "IBIZBOOKNAME", "name" : "IBIZBOOKNAME",
"codeName" : "IBIZBOOKName" "codeName" : "IBIZBOOKName"
} }
}, { }, {
"id" : "n_price_gtandeq", "dataType" : 25,
"dataType" : 7, "name" : "author",
"getPSAppDEField" : { "getPSAppDEField" : {
"name" : "PRICE", "name" : "AUTHOR",
"codeName" : "Price" "codeName" : "Author"
} }
} ], }, {
"getPSDEFormPages" : [ {
"getCapPSLanguageRes" : {
"lanResTag" : "CONTROL.DEFORM.IBIZBOOK.DEFAULT.FORMPAGE.FORMPAGE1"
},
"caption" : "常规条件",
"codeName" : "formpage1",
"detailStyle" : "DEFAULT",
"detailType" : "FORMPAGE",
"name" : "formpage1",
"getPSDEFormDetails" : [ {
"getCapPSLanguageRes" : {
"lanResTag" : "CONTROL.DEFSFITEM.IBIZBOOK.N_IBIZBOOKNAME_LIKE"
},
"caption" : "图书名称(%)",
"codeName" : "n_ibizbookname_like",
"dataType" : 25, "dataType" : 25,
"detailStyle" : "DEFAULT", "getFrontPSCodeList" : {
"detailType" : "FORMITEM", "modelref" : true,
"enableCond" : 3, "path" : "PSSYSAPPS/Web/PSAPPCODELISTS/BookType.json"
"ignoreInput" : 0, },
"labelPos" : "LEFT", "name" : "type",
"labelWidth" : 130,
"name" : "n_ibizbookname_like",
"noPrivDisplayMode" : 1,
"getPSAppDEField" : { "getPSAppDEField" : {
"name" : "IBIZBOOKNAME", "name" : "TYPE",
"codeName" : "IBIZBOOKName" "codeName" : "Type"
}
}, {
"dataType" : 9,
"name" : "booknumber",
"getPSAppDEField" : {
"name" : "BOOKNUMBER",
"codeName" : "Booknumber"
}
}, {
"dataType" : 25,
"name" : "press",
"getPSAppDEField" : {
"name" : "PRESS",
"codeName" : "Press"
}
}, {
"dataType" : 25,
"name" : "srfkey",
"getPSAppDEField" : {
"name" : "IBIZBOOKID",
"codeName" : "IBIZBOOKId"
}
}, {
"dataType" : 25,
"name" : "srfmstag"
} ],
"getPSDEDataViewItems" : [ {
"dataItemName" : "srfmajortext",
"itemType" : "DATAITEM",
"name" : "srfmajortext",
"enableSort" : false
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "DEF.LNAME.AUTHOR"
}, },
"getPSEditor" : { "caption" : "图书作者",
"editorType" : "TEXTBOX", "dataItemName" : "author",
"editorWidth" : 100.0, "itemType" : "DATAITEM",
"name" : "n_ibizbookname_like" "name" : "AUTHOR",
"getPSAppDEField" : {
"name" : "AUTHOR",
"codeName" : "Author"
}, },
"getPSLayoutPos" : { "enableSort" : true
"colLG" : 12, }, {
"colMD" : 24, "cLConvertMode" : "FRONT",
"layout" : "TABLE_24COL" "getCapPSLanguageRes" : {
"lanResTag" : "DEF.LNAME.TYPE"
}, },
"allowEmpty" : true, "caption" : "图书类型",
"showCaption" : true "dataItemName" : "type",
"itemType" : "DATAITEM",
"name" : "TYPE",
"getPSAppDEField" : {
"name" : "TYPE",
"codeName" : "Type"
},
"getPSCodeList" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPCODELISTS/BookType.json"
},
"enableSort" : true
}, { }, {
"getCapPSLanguageRes" : { "getCapPSLanguageRes" : {
"lanResTag" : "CONTROL.DEFSFITEM.IBIZBOOK.N_PRICE_GTANDEQ" "lanResTag" : "DEF.LNAME.BOOKNUMBER"
}, },
"caption" : "图书价格(>=)", "caption" : "图书数量",
"codeName" : "n_price_gtandeq", "dataItemName" : "booknumber",
"dataType" : 7, "itemType" : "DATAITEM",
"detailStyle" : "DEFAULT", "name" : "BOOKNUMBER",
"detailType" : "FORMITEM",
"enableCond" : 3,
"ignoreInput" : 0,
"labelPos" : "LEFT",
"labelWidth" : 130,
"name" : "n_price_gtandeq",
"noPrivDisplayMode" : 1,
"getPSAppDEField" : { "getPSAppDEField" : {
"name" : "PRICE", "name" : "BOOKNUMBER",
"codeName" : "Price" "codeName" : "Booknumber"
}, },
"getPSEditor" : { "enableSort" : true
"editorType" : "TEXTBOX", }, {
"editorWidth" : 100.0, "getCapPSLanguageRes" : {
"name" : "n_price_gtandeq" "lanResTag" : "DEF.LNAME.PRESS"
}, },
"getPSLayoutPos" : { "caption" : "图书出版社",
"colLG" : 12, "dataItemName" : "press",
"colMD" : 24, "itemType" : "DATAITEM",
"layout" : "TABLE_24COL" "name" : "PRESS",
"getPSAppDEField" : {
"name" : "PRESS",
"codeName" : "Press"
}, },
"allowEmpty" : true, "enableSort" : true
"showCaption" : true
} ], } ],
"getPSLayout" : { "pagingSize" : 20,
"columnCount" : 24, "getRemovePSControlAction" : {
"layout" : "TABLE_24COL" "modelref" : true,
"id" : "remove"
}, },
"infoGroupMode" : false "getUpdateGroupPSControlAction" : {
} ], "modelref" : true,
"getPSLayout" : { "id" : "updategroup"
"columnCount" : 24,
"layout" : "TABLE_24COL"
}, },
"searchButtonStyle" : "DEFAULT", "getUpdatePSControlAction" : {
"tabHeaderPos" : "TOP", "modelref" : true,
"enableAdvanceSearch" : false, "id" : "update"
"enableAutoSearch" : false, },
"enableFilterSave" : false, "hasWFDataItems" : false,
"noTabHeader" : true, "appendDEItems" : true,
"name" : "searchform", "enableCardEdit" : false,
"modelid" : "643b7d93870f8f5842b663af83ba85ae", "enableCardEditGroup" : false,
"modeltype" : "PSDEFORM_SEARCHFORM" "enableCardEditOrder" : false,
"enableCardNew" : false,
"enableGroup" : true,
"enablePagingBar" : true,
"noSort" : false,
"singleSelect" : false,
"name" : "kanban",
"modelid" : "405bd5d8c8449736c77f6735ff139b21",
"modeltype" : "PSDEKANBAN"
}, { }, {
"codeName" : "InterFuncKanBanViewtoolbar", "codeName" : "InterFuncKanBanViewtoolbar",
"controlType" : "TOOLBAR", "controlType" : "TOOLBAR",
...@@ -1034,340 +1363,228 @@ ...@@ -1034,340 +1363,228 @@
"modelid" : "47d7b189cb310900c71aaabc97f7444b", "modelid" : "47d7b189cb310900c71aaabc97f7444b",
"modeltype" : "PSDETOOLBAR" "modeltype" : "PSDETOOLBAR"
}, { }, {
"codeName" : "InterFuncKanban", "codeName" : "Default",
"controlType" : "KANBAN", "controlType" : "SEARCHFORM",
"getCreatePSControlAction" : { "dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSSEARCHFORMS/Default.json",
"hookEventNames" : [ "SEARCH", "LOAD", "SAVE" ],
"logicName" : "默认搜索表单",
"getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"id" : "create" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}, },
"dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSKANBANS/InterFuncKanban.json", "getPSControlHandler" : {
"getFetchPSControlAction" : { "getPSHandlerActions" : [ {
"actionType" : "FILTERACTION",
"name" : "load",
"getPSAppDEMethod" : {
"modelref" : true, "modelref" : true,
"id" : "fetch" "id" : "FilterGet"
}, },
"getGetPSControlAction" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"id" : "load" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}, }
"groupLayout" : "ROW", }, {
"groupMode" : "AUTO", "actionType" : "FILTERACTION",
"getGroupPSAppDEField" : { "name" : "loaddraft",
"name" : "AUTHOR", "getPSAppDEMethod" : {
"codeName" : "Author" "modelref" : true,
"id" : "FilterGetDraft"
}, },
"getGroupPSUIActionGroup" : {
"codeName" : "Auto11",
"name" : "实体看板界面行为组",
"getPSUIActionGroupDetails" : [ {
"detailType" : "DEUIACTION",
"name" : "u7f86898",
"getPSUIAction" : {
"actionTarget" : "NONE",
"caption" : "打开实体看板文档",
"codeName" : "openKanbanDocument",
"frontProcessType" : "OPENHTMLPAGE",
"fullCodeName" : "IBIZBOOK_openKanbanDocument",
"htmlPageUrl" : "https://www.yuque.com/ibiz/wuf19n/tqi7p6",
"name" : "打开实体看板文档",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionType" : "FILTERACTION",
"name" : "search",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "FilterSearch"
}, },
"timeout" : 60000,
"uIActionMode" : "FRONT",
"uIActionTag" : "openKanbanDocument",
"uIActionType" : "DEUIACTION",
"id" : "openKanbanDocument@IBIZBOOK"
},
"addSeparator" : false,
"showCaption" : true,
"showIcon" : true
} ]
},
"hookEventNames" : [ "ROWDBLCLICK", "SELECTIONCHANGE", "REMOVE", "LOAD", "BEFORELOAD" ],
"logicName" : "看板(内置功能)",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
} ],
"enableDEFieldPrivilege" : false,
"id" : "搜索表单处理器"
}, },
"getPSAppViewLogics" : [ { "getPSControlLogics" : [ {
"logicTrigger" : "CUSTOM", "eventNames" : "SEARCH;LOAD;SAVE",
"logicType" : "APPVIEWUIACTION", "logicTag" : "searchform",
"name" : "kanban_group_u7f86898_click", "logicType" : "APPVIEWENGINE",
"getPSAppViewUIAction" : { "name" : "engine_searchform",
"getPSAppViewEngine" : {
"modelref" : true, "modelref" : true,
"id" : "打开实体看板文档" "id" : "engine"
}
} ],
"getPSAppViewUIActions" : [ {
"name" : "打开实体看板文档",
"getPSUIAction" : {
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"modelref" : true,
"id" : "openKanbanDocument@IBIZBOOK"
},
"uIActionTarget" : "NONE",
"xDataControlName" : "kanban"
} ],
"getPSControlHandler" : {
"getPSHandlerActions" : [ {
"actionName" : "Update",
"actionType" : "DEACTION",
"dataAccessAction" : "UPDATE",
"name" : "updategroup",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "Update"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionName" : "Get",
"actionType" : "DEACTION",
"dataAccessAction" : "READ",
"name" : "load",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "Get"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionName" : "Create",
"actionType" : "DEACTION",
"dataAccessAction" : "CREATE",
"name" : "create",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "Create"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionName" : "Update",
"actionType" : "DEACTION",
"dataAccessAction" : "UPDATE",
"name" : "update",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "Update"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionName" : "Remove",
"actionType" : "DEACTION",
"dataAccessAction" : "DELETE",
"name" : "remove",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "Remove"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
}, {
"actionType" : "DEDATASET",
"name" : "fetch",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "FetchDefault"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}
} ],
"userDRAction" : "READ",
"enableDEFieldPrivilege" : false,
"id" : "数据视图处理器"
},
"getPSControlLogics" : [ {
"eventNames" : "ROWDBLCLICK;SELECTIONCHANGE;REMOVE;LOAD;BEFORELOAD",
"logicTag" : "kanban",
"logicType" : "APPVIEWENGINE",
"name" : "engine_kanban",
"getPSAppViewEngine" : {
"modelref" : true,
"id" : "engine"
} }
} ], } ],
"getPSControlParam" : { "getPSControlParam" : {
"autoLoad" : true, "autoLoad" : true,
"showBusyIndicator" : true, "showBusyIndicator" : true,
"id" : "KANBAN" "id" : "SEARCHFORM"
},
"getPSDEDataImport" : {
"modelref" : true,
"id" : "DataImport"
}, },
"getPSDEDataViewDataItems" : [ { "getPSDEFormItems" : [ {
"id" : "n_ibizbookname_like",
"dataType" : 25, "dataType" : 25,
"name" : "srfmajortext",
"getPSAppDEField" : { "getPSAppDEField" : {
"name" : "IBIZBOOKNAME", "name" : "IBIZBOOKNAME",
"codeName" : "IBIZBOOKName" "codeName" : "IBIZBOOKName"
} }
}, { }, {
"dataType" : 25, "id" : "n_price_gtandeq",
"name" : "author", "dataType" : 7,
"getPSAppDEField" : {
"name" : "AUTHOR",
"codeName" : "Author"
}
}, {
"dataType" : 25,
"getFrontPSCodeList" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPCODELISTS/BookType.json"
},
"name" : "type",
"getPSAppDEField" : {
"name" : "TYPE",
"codeName" : "Type"
}
}, {
"dataType" : 9,
"name" : "booknumber",
"getPSAppDEField" : {
"name" : "BOOKNUMBER",
"codeName" : "Booknumber"
}
}, {
"dataType" : 25,
"name" : "press",
"getPSAppDEField" : {
"name" : "PRESS",
"codeName" : "Press"
}
}, {
"dataType" : 25,
"name" : "srfkey",
"getPSAppDEField" : { "getPSAppDEField" : {
"name" : "IBIZBOOKID", "name" : "PRICE",
"codeName" : "IBIZBOOKId" "codeName" : "Price"
} }
}, {
"dataType" : 25,
"name" : "srfmstag"
} ], } ],
"getPSDEDataViewItems" : [ { "getPSDEFormPages" : [ {
"dataItemName" : "srfmajortext",
"itemType" : "DATAITEM",
"name" : "srfmajortext",
"enableSort" : false
}, {
"getCapPSLanguageRes" : { "getCapPSLanguageRes" : {
"lanResTag" : "DEF.LNAME.AUTHOR" "lanResTag" : "CONTROL.DEFORM.IBIZBOOK.DEFAULT.FORMPAGE.FORMPAGE1"
},
"caption" : "图书作者",
"dataItemName" : "author",
"itemType" : "DATAITEM",
"name" : "AUTHOR",
"getPSAppDEField" : {
"name" : "AUTHOR",
"codeName" : "Author"
}, },
"enableSort" : true "caption" : "常规条件",
}, { "codeName" : "formpage1",
"cLConvertMode" : "FRONT", "detailStyle" : "DEFAULT",
"detailType" : "FORMPAGE",
"name" : "formpage1",
"getPSDEFormDetails" : [ {
"getCapPSLanguageRes" : { "getCapPSLanguageRes" : {
"lanResTag" : "DEF.LNAME.TYPE" "lanResTag" : "CONTROL.DEFSFITEM.IBIZBOOK.N_IBIZBOOKNAME_LIKE"
}, },
"caption" : "图书类型", "caption" : "图书名称(%)",
"dataItemName" : "type", "codeName" : "n_ibizbookname_like",
"itemType" : "DATAITEM", "dataType" : 25,
"name" : "TYPE", "detailStyle" : "DEFAULT",
"detailType" : "FORMITEM",
"enableCond" : 3,
"ignoreInput" : 0,
"labelPos" : "LEFT",
"labelWidth" : 130,
"name" : "n_ibizbookname_like",
"noPrivDisplayMode" : 1,
"getPSAppDEField" : { "getPSAppDEField" : {
"name" : "TYPE", "name" : "IBIZBOOKNAME",
"codeName" : "Type" "codeName" : "IBIZBOOKName"
},
"getPSCodeList" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPCODELISTS/BookType.json"
}, },
"enableSort" : true "getPSEditor" : {
}, { "editorType" : "TEXTBOX",
"getCapPSLanguageRes" : { "editorWidth" : 100.0,
"lanResTag" : "DEF.LNAME.BOOKNUMBER" "name" : "n_ibizbookname_like"
}, },
"caption" : "图书数量", "getPSLayoutPos" : {
"dataItemName" : "booknumber", "colLG" : 12,
"itemType" : "DATAITEM", "colMD" : 24,
"name" : "BOOKNUMBER", "layout" : "TABLE_24COL"
"getPSAppDEField" : {
"name" : "BOOKNUMBER",
"codeName" : "Booknumber"
}, },
"enableSort" : true "allowEmpty" : true,
"showCaption" : true
}, { }, {
"getCapPSLanguageRes" : { "getCapPSLanguageRes" : {
"lanResTag" : "DEF.LNAME.PRESS" "lanResTag" : "CONTROL.DEFSFITEM.IBIZBOOK.N_PRICE_GTANDEQ"
}, },
"caption" : "图书出版社", "caption" : "图书价格(>=)",
"dataItemName" : "press", "codeName" : "n_price_gtandeq",
"itemType" : "DATAITEM", "dataType" : 7,
"name" : "PRESS", "detailStyle" : "DEFAULT",
"detailType" : "FORMITEM",
"enableCond" : 3,
"ignoreInput" : 0,
"labelPos" : "LEFT",
"labelWidth" : 130,
"name" : "n_price_gtandeq",
"noPrivDisplayMode" : 1,
"getPSAppDEField" : { "getPSAppDEField" : {
"name" : "PRESS", "name" : "PRICE",
"codeName" : "Press" "codeName" : "Price"
}, },
"enableSort" : true "getPSEditor" : {
} ], "editorType" : "TEXTBOX",
"pagingSize" : 20, "editorWidth" : 100.0,
"getRemovePSControlAction" : { "name" : "n_price_gtandeq"
"modelref" : true,
"id" : "remove"
}, },
"getUpdateGroupPSControlAction" : { "getPSLayoutPos" : {
"modelref" : true, "colLG" : 12,
"id" : "updategroup" "colMD" : 24,
"layout" : "TABLE_24COL"
}, },
"getUpdatePSControlAction" : { "allowEmpty" : true,
"modelref" : true, "showCaption" : true
"id" : "update" } ],
"getPSLayout" : {
"columnCount" : 24,
"layout" : "TABLE_24COL"
}, },
"hasWFDataItems" : false, "infoGroupMode" : false
"appendDEItems" : true,
"enableCardEdit" : false,
"enableCardEditGroup" : false,
"enableCardEditOrder" : false,
"enableCardNew" : false,
"enableGroup" : true,
"enablePagingBar" : true,
"noSort" : false,
"singleSelect" : false,
"name" : "kanban",
"modelid" : "405bd5d8c8449736c77f6735ff139b21",
"modeltype" : "PSDEKANBAN"
} ], } ],
"getPSDEViewCodeName" : "InterFuncKanBanView", "getPSLayout" : {
"getPSDEViewId" : "520461c48d734e7d2b34b20d62b637ab", "columnCount" : 24,
"getPSViewLayoutPanel" : { "layout" : "TABLE_24COL"
"codeName" : "Layoutpanel", },
"controlStyle" : "APPDEKANBANVIEW", "searchButtonStyle" : "DEFAULT",
"controlType" : "VIEWLAYOUTPANEL", "tabHeaderPos" : "TOP",
"name" : "layoutpanel", "enableAdvanceSearch" : false,
"enableAutoSearch" : false,
"enableFilterSave" : false,
"noTabHeader" : true,
"name" : "searchform",
"modelid" : "643b7d93870f8f5842b663af83ba85ae",
"modeltype" : "PSDEFORM_SEARCHFORM"
}, {
"controlType" : "SEARCHBAR",
"dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSSEARCHBARS/.json",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}, },
"getPSControlParam" : { }, "getPSControlParam" : {
"layoutBodyOnly" : true, "id" : "searchbar"
"layoutPanel" : true, },
"useDefaultLayout" : true "getPSSearchBarGroups" : [ {
"caption" : "全部",
"itemType" : "GROUP",
"name" : "all",
"width" : 0.0,
"addSeparator" : false
}, {
"caption" : "已上架",
"data" : "{\"n_sailstate_eq\":400}",
"itemType" : "GROUP",
"name" : "onshelf",
"width" : 0.0,
"addSeparator" : false
}, {
"caption" : "未上架",
"data" : "{\"n_sailstate_eq\":300}",
"itemType" : "GROUP",
"name" : "noshelf",
"width" : 0.0,
"addSeparator" : false
}, {
"caption" : "未出版",
"data" : "{\"n_sailstate_eq\":100}",
"itemType" : "GROUP",
"name" : "nopublish",
"width" : 0.0,
"addSeparator" : false
}, {
"caption" : "等待出版",
"data" : "{\"n_sailstate_eq\":200}",
"itemType" : "GROUP",
"name" : "waitpublish",
"width" : 0.0,
"addSeparator" : false
} ],
"quickGroupCount" : 3,
"quickSearchMode" : 1,
"quickSearchWidth" : 0,
"enableFilter" : false,
"enableGroup" : true,
"enableQuickSearch" : true,
"mobileSearchBar" : false,
"name" : "searchbar"
} ]
}, },
"getQuickGroupPSCodeList" : { "getQuickGroupPSCodeList" : {
"modelref" : true, "modelref" : true,
......
...@@ -12,6 +12,186 @@ ...@@ -12,6 +12,186 @@
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}, },
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup96"
},
"getPSDEViewCodeName" : "Usr4ListView",
"getPSDEViewId" : "683208b861f0c5ca5b8bada5df9dd67f",
"getPSViewLayoutPanel" : {
"getAllPSPanelFields" : [ {
"id" : "view_pagecaption"
} ],
"codeName" : "Usr1104012140",
"controlType" : "VIEWLAYOUTPANEL",
"layoutMode" : "FLEX",
"logicName" : "Usr4ListViewDELISTVIEW",
"name" : "layoutpanel",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSControlParam" : { },
"getPSLayout" : {
"layout" : "FLEX"
},
"getRootPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "page_container",
"getPSLayout" : {
"dir" : "column",
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 6,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "页面标题",
"itemStyle" : "DEFAULT",
"itemType" : "FIELD",
"name" : "view_pagecaption",
"getPSEditor" : {
"editorType" : "SPAN",
"name" : "view_pagecaption",
"predefinedType" : "VIEW_PAGECAPTION",
"renderMode" : "HEADING1",
"enableLinkView" : false
},
"getPSLayoutPos" : {
"grow" : -1,
"hAlignSelf" : "LEFT",
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX",
"widthMode" : "FULL"
},
"hidden" : false,
"showCaption" : false
} ]
}, {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 3,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "QUICKSEARCHBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "quicksearchbar",
"getPSLayoutPos" : {
"grow" : -1,
"hAlignSelf" : "RIGHT",
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
}, {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_2",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "TOOLBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "toolbar",
"getPSLayoutPos" : {
"grow" : -1,
"hAlignSelf" : "RIGHT",
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
} ]
}, {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container5",
"getPSLayout" : {
"dir" : "column",
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "SEARCHFORM",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "searchform",
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "FLEX"
},
"showCaption" : true
}, {
"caption" : "LIST",
"contentHeight" : 100.0,
"height" : 100.0,
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "list",
"getPSLayoutPos" : {
"grow" : -1,
"height" : 100,
"heightMode" : "PERCENTAGE",
"layout" : "FLEX"
},
"showCaption" : true
} ]
} ]
} ],
"layoutBodyOnly" : false,
"layoutPanel" : true,
"useDefaultLayout" : false,
"viewProxyMode" : true,
"modelid" : "19994F53-199C-43B8-B783-1822ADFB9902",
"modeltype" : "PSSYSVIEWLAYOUTPANEL",
"getPSAppViewEngines" : [ { "getPSAppViewEngines" : [ {
"engineCat" : "VIEW", "engineCat" : "VIEW",
"engineType" : "ListView", "engineType" : "ListView",
...@@ -130,10 +310,6 @@ ...@@ -130,10 +310,6 @@
"editMode" : true "editMode" : true
} }
} ], } ],
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup96"
},
"getPSAppViewRefs" : [ { "getPSAppViewRefs" : [ {
"name" : "NEWDATA", "name" : "NEWDATA",
"realTitle" : "图书编辑视图", "realTitle" : "图书编辑视图",
...@@ -353,247 +529,10 @@ ...@@ -353,247 +529,10 @@
"enableAdvanceSearch" : false, "enableAdvanceSearch" : false,
"enableAutoSearch" : false, "enableAutoSearch" : false,
"enableFilterSave" : false, "enableFilterSave" : false,
"noTabHeader" : true, "noTabHeader" : true,
"name" : "searchform", "name" : "searchform",
"modelid" : "643b7d93870f8f5842b663af83ba85ae", "modelid" : "643b7d93870f8f5842b663af83ba85ae",
"modeltype" : "PSDEFORM_SEARCHFORM" "modeltype" : "PSDEFORM_SEARCHFORM"
}, {
"codeName" : "Usr4ListViewtoolbar",
"controlType" : "TOOLBAR",
"hookEventNames" : [ "CLICK" ],
"logicName" : "实体列表工具栏",
"name" : "toolbar",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSControlLogics" : [ {
"eventArg" : "deuiaction1",
"eventNames" : "CLICK",
"logicTag" : "toolbar",
"logicType" : "APPVIEWLOGIC",
"name" : "toolbar_deuiaction1_click",
"getPSAppViewLogic" : {
"modelref" : true,
"id" : "toolbar_deuiaction1_click"
}
}, {
"eventArg" : "deuiaction3",
"eventNames" : "CLICK",
"logicTag" : "toolbar",
"logicType" : "APPVIEWLOGIC",
"name" : "toolbar_deuiaction3_click",
"getPSAppViewLogic" : {
"modelref" : true,
"id" : "toolbar_deuiaction3_click"
}
}, {
"eventArg" : "deuiaction2",
"eventNames" : "CLICK",
"logicTag" : "toolbar",
"logicType" : "APPVIEWLOGIC",
"name" : "toolbar_deuiaction2_click",
"getPSAppViewLogic" : {
"modelref" : true,
"id" : "toolbar_deuiaction2_click"
}
}, {
"eventArg" : "deuiaction4",
"eventNames" : "CLICK",
"logicTag" : "toolbar",
"logicType" : "APPVIEWLOGIC",
"name" : "toolbar_deuiaction4_click",
"getPSAppViewLogic" : {
"modelref" : true,
"id" : "toolbar_deuiaction4_click"
}
} ],
"getPSControlParam" : {
"id" : "TOOLBAR"
},
"getPSDEToolbarItems" : [ {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.NEW"
},
"caption" : "新建",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "deuiaction1",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_deuiaction1"
},
"getPSSysImage" : {
"glyph" : "xf0f6@FontAwesome",
"cssClass" : "fa fa-file-text-o"
},
"getPSUIAction" : {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.NEW"
},
"caption" : "新建",
"codeName" : "New",
"fullCodeName" : "New",
"name" : "表格界面_新建操作",
"getPSSysImage" : {
"glyph" : "xf0f6@FontAwesome",
"cssClass" : "fa fa-file-text-o"
},
"predefinedType" : "GRIDVIEW_NEWACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.NEW"
},
"uIActionMode" : "SYS",
"uIActionTag" : "New",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "新建",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.NEW"
},
"showCaption" : true,
"showIcon" : true
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.EDIT"
},
"caption" : "编辑",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "deuiaction3",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_deuiaction3"
},
"getPSSysImage" : {
"glyph" : "xf044@FontAwesome",
"cssClass" : "fa fa-edit"
},
"getPSUIAction" : {
"actionTarget" : "SINGLEKEY",
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.EDIT"
},
"caption" : "编辑",
"codeName" : "Edit",
"fullCodeName" : "Edit",
"name" : "表格界面_编辑操作",
"getPSSysImage" : {
"glyph" : "xf044@FontAwesome",
"cssClass" : "fa fa-edit"
},
"predefinedType" : "GRIDVIEW_EDITACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.EDIT"
},
"uIActionMode" : "SYS",
"uIActionTag" : "Edit",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "编辑",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.EDIT"
},
"showCaption" : true,
"showIcon" : true
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.REMOVE"
},
"caption" : "删除",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "deuiaction2",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_deuiaction2"
},
"getPSSysImage" : {
"glyph" : "xf00d@FontAwesome",
"cssClass" : "fa fa-remove"
},
"getPSUIAction" : {
"actionTarget" : "MULTIKEY",
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.REMOVE"
},
"caption" : "删除",
"codeName" : "Remove",
"fullCodeName" : "Remove",
"name" : "表格界面_删除操作",
"getPSSysImage" : {
"glyph" : "xf00d@FontAwesome",
"cssClass" : "fa fa-remove"
},
"predefinedType" : "GRIDVIEW_REMOVEACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.REMOVE"
},
"uIActionMode" : "SYS",
"uIActionTag" : "Remove",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "删除",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.REMOVE"
},
"showCaption" : true,
"showIcon" : true
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.FILTER"
},
"caption" : "过滤",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "deuiaction4",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_deuiaction4"
},
"getPSSysImage" : {
"glyph" : "xf0b0@FontAwesome",
"cssClass" : "fa fa-filter"
},
"getPSUIAction" : {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.FILTER"
},
"caption" : "过滤",
"codeName" : "ToggleFilter",
"fullCodeName" : "ToggleFilter",
"name" : "表格界面_搜索栏",
"getPSSysImage" : {
"glyph" : "xf0b0@FontAwesome",
"cssClass" : "fa fa-filter"
},
"predefinedType" : "GRIDVIEW_SEARCHBAR",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.FILTER"
},
"uIActionMode" : "SYS",
"uIActionTag" : "ToggleFilter",
"uIActionType" : "DEUIACTION",
"enableToggleMode" : true
},
"tooltip" : "过滤",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.FILTER"
},
"enableToggleMode" : true,
"showCaption" : true,
"showIcon" : true
} ],
"modelid" : "86d87068d8256316499b9c87ff0783e2",
"modeltype" : "PSDETOOLBAR"
}, { }, {
"codeName" : "LnternalFuncList", "codeName" : "LnternalFuncList",
"controlType" : "LIST", "controlType" : "LIST",
...@@ -1150,22 +1089,297 @@ ...@@ -1150,22 +1089,297 @@
"name" : "list", "name" : "list",
"modelid" : "8594b932ea501f73756410b3d22cc1ec", "modelid" : "8594b932ea501f73756410b3d22cc1ec",
"modeltype" : "PSDELIST" "modeltype" : "PSDELIST"
}, {
"codeName" : "Usr4ListViewtoolbar",
"controlType" : "TOOLBAR",
"hookEventNames" : [ "CLICK" ],
"logicName" : "实体列表工具栏",
"name" : "toolbar",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSControlLogics" : [ {
"eventArg" : "deuiaction1",
"eventNames" : "CLICK",
"logicTag" : "toolbar",
"logicType" : "APPVIEWLOGIC",
"name" : "toolbar_deuiaction1_click",
"getPSAppViewLogic" : {
"modelref" : true,
"id" : "toolbar_deuiaction1_click"
}
}, {
"eventArg" : "deuiaction3",
"eventNames" : "CLICK",
"logicTag" : "toolbar",
"logicType" : "APPVIEWLOGIC",
"name" : "toolbar_deuiaction3_click",
"getPSAppViewLogic" : {
"modelref" : true,
"id" : "toolbar_deuiaction3_click"
}
}, {
"eventArg" : "deuiaction2",
"eventNames" : "CLICK",
"logicTag" : "toolbar",
"logicType" : "APPVIEWLOGIC",
"name" : "toolbar_deuiaction2_click",
"getPSAppViewLogic" : {
"modelref" : true,
"id" : "toolbar_deuiaction2_click"
}
}, {
"eventArg" : "deuiaction4",
"eventNames" : "CLICK",
"logicTag" : "toolbar",
"logicType" : "APPVIEWLOGIC",
"name" : "toolbar_deuiaction4_click",
"getPSAppViewLogic" : {
"modelref" : true,
"id" : "toolbar_deuiaction4_click"
}
} ], } ],
"getPSDEViewCodeName" : "Usr4ListView", "getPSControlParam" : {
"getPSDEViewId" : "683208b861f0c5ca5b8bada5df9dd67f", "id" : "TOOLBAR"
"getPSViewLayoutPanel" : { },
"codeName" : "Layoutpanel", "getPSDEToolbarItems" : [ {
"controlStyle" : "APPDELISTVIEW", "getCapPSLanguageRes" : {
"controlType" : "VIEWLAYOUTPANEL", "lanResTag" : "TBB.TEXT.*.NEW"
"name" : "layoutpanel", },
"caption" : "新建",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "deuiaction1",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_deuiaction1"
},
"getPSSysImage" : {
"glyph" : "xf0f6@FontAwesome",
"cssClass" : "fa fa-file-text-o"
},
"getPSUIAction" : {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.NEW"
},
"caption" : "新建",
"codeName" : "New",
"fullCodeName" : "New",
"name" : "表格界面_新建操作",
"getPSSysImage" : {
"glyph" : "xf0f6@FontAwesome",
"cssClass" : "fa fa-file-text-o"
},
"predefinedType" : "GRIDVIEW_NEWACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.NEW"
},
"uIActionMode" : "SYS",
"uIActionTag" : "New",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "新建",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.NEW"
},
"showCaption" : true,
"showIcon" : true
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.EDIT"
},
"caption" : "编辑",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "deuiaction3",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_deuiaction3"
},
"getPSSysImage" : {
"glyph" : "xf044@FontAwesome",
"cssClass" : "fa fa-edit"
},
"getPSUIAction" : {
"actionTarget" : "SINGLEKEY",
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.EDIT"
},
"caption" : "编辑",
"codeName" : "Edit",
"fullCodeName" : "Edit",
"name" : "表格界面_编辑操作",
"getPSSysImage" : {
"glyph" : "xf044@FontAwesome",
"cssClass" : "fa fa-edit"
},
"predefinedType" : "GRIDVIEW_EDITACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.EDIT"
},
"uIActionMode" : "SYS",
"uIActionTag" : "Edit",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "编辑",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.EDIT"
},
"showCaption" : true,
"showIcon" : true
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.REMOVE"
},
"caption" : "删除",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "deuiaction2",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_deuiaction2"
},
"getPSSysImage" : {
"glyph" : "xf00d@FontAwesome",
"cssClass" : "fa fa-remove"
},
"getPSUIAction" : {
"actionTarget" : "MULTIKEY",
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.REMOVE"
},
"caption" : "删除",
"codeName" : "Remove",
"fullCodeName" : "Remove",
"name" : "表格界面_删除操作",
"getPSSysImage" : {
"glyph" : "xf00d@FontAwesome",
"cssClass" : "fa fa-remove"
},
"predefinedType" : "GRIDVIEW_REMOVEACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.REMOVE"
},
"uIActionMode" : "SYS",
"uIActionTag" : "Remove",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "删除",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.REMOVE"
},
"showCaption" : true,
"showIcon" : true
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.FILTER"
},
"caption" : "过滤",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "deuiaction4",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_deuiaction4"
},
"getPSSysImage" : {
"glyph" : "xf0b0@FontAwesome",
"cssClass" : "fa fa-filter"
},
"getPSUIAction" : {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.FILTER"
},
"caption" : "过滤",
"codeName" : "ToggleFilter",
"fullCodeName" : "ToggleFilter",
"name" : "表格界面_搜索栏",
"getPSSysImage" : {
"glyph" : "xf0b0@FontAwesome",
"cssClass" : "fa fa-filter"
},
"predefinedType" : "GRIDVIEW_SEARCHBAR",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.FILTER"
},
"uIActionMode" : "SYS",
"uIActionTag" : "ToggleFilter",
"uIActionType" : "DEUIACTION",
"enableToggleMode" : true
},
"tooltip" : "过滤",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.FILTER"
},
"enableToggleMode" : true,
"showCaption" : true,
"showIcon" : true
} ],
"modelid" : "86d87068d8256316499b9c87ff0783e2",
"modeltype" : "PSDETOOLBAR"
}, {
"controlType" : "SEARCHBAR",
"dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSSEARCHBARS/.json",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}, },
"getPSControlParam" : { }, "getPSControlParam" : {
"layoutBodyOnly" : true, "id" : "searchbar"
"layoutPanel" : true, },
"useDefaultLayout" : true "getPSSearchBarGroups" : [ {
"caption" : "全部",
"itemType" : "GROUP",
"name" : "all",
"width" : 0.0,
"addSeparator" : false
}, {
"caption" : "已上架",
"data" : "{\"n_sailstate_eq\":400}",
"itemType" : "GROUP",
"name" : "onshelf",
"width" : 0.0,
"addSeparator" : false
}, {
"caption" : "未上架",
"data" : "{\"n_sailstate_eq\":300}",
"itemType" : "GROUP",
"name" : "noshelf",
"width" : 0.0,
"addSeparator" : false
}, {
"caption" : "未出版",
"data" : "{\"n_sailstate_eq\":100}",
"itemType" : "GROUP",
"name" : "nopublish",
"width" : 0.0,
"addSeparator" : false
}, {
"caption" : "等待出版",
"data" : "{\"n_sailstate_eq\":200}",
"itemType" : "GROUP",
"name" : "waitpublish",
"width" : 0.0,
"addSeparator" : false
} ],
"quickGroupCount" : 3,
"quickSearchMode" : 1,
"quickSearchWidth" : 0,
"enableFilter" : false,
"enableGroup" : true,
"enableQuickSearch" : true,
"mobileSearchBar" : false,
"name" : "searchbar"
} ]
}, },
"getQuickGroupPSCodeList" : { "getQuickGroupPSCodeList" : {
"modelref" : true, "modelref" : true,
......
...@@ -11,6 +11,149 @@ ...@@ -11,6 +11,149 @@
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup46"
},
"getPSDEViewCodeName" : "CalendarExpView",
"getPSDEViewId" : "69faae56dc0c6221045cfdc5ce889654",
"getPSViewLayoutPanel" : {
"getAllPSPanelFields" : [ {
"id" : "view_pagecaption"
} ],
"codeName" : "Usr1104905184",
"controlType" : "VIEWLAYOUTPANEL",
"layoutMode" : "FLEX",
"logicName" : "CalendarExpViewDECALENDAREXPVIEW",
"name" : "layoutpanel",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
},
"getPSControlParam" : { },
"getPSLayout" : {
"layout" : "FLEX"
},
"getRootPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "page_container",
"getPSLayout" : {
"dir" : "column",
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"columnCount" : 24,
"layout" : "TABLE_24COL"
},
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "页面标题",
"itemStyle" : "DEFAULT",
"itemType" : "FIELD",
"name" : "view_pagecaption",
"getPSEditor" : {
"editorType" : "SPAN",
"name" : "view_pagecaption",
"predefinedType" : "VIEW_PAGECAPTION",
"renderMode" : "HEADING1",
"enableLinkView" : false
},
"getPSLayoutPos" : {
"colMD" : 24,
"heightMode" : "FULL",
"layout" : "TABLE_24COL",
"widthMode" : "FULL"
},
"hidden" : false,
"showCaption" : false
} ]
}, {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 5,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "CALENDAREXPBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "calendarexpbar",
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
}, {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container8",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 7,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "导航区占位",
"itemStyle" : "DEFAULT",
"itemType" : "RAWITEM",
"name" : "nav_pos1",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"getPSRawItem" : {
"name" : "nav_pos1",
"predefinedType" : "NAV_POS"
},
"showCaption" : true
} ]
} ]
} ]
} ],
"layoutBodyOnly" : false,
"layoutPanel" : true,
"useDefaultLayout" : false,
"viewProxyMode" : true,
"modelid" : "6AC7B24A-B989-42FA-AA65-CA6050C4668F",
"modeltype" : "PSSYSVIEWLAYOUTPANEL",
"getPSAppViewEngines" : [ { "getPSAppViewEngines" : [ {
"engineCat" : "VIEW", "engineCat" : "VIEW",
"engineType" : "CalendarExpView", "engineType" : "CalendarExpView",
...@@ -73,12 +216,8 @@ ...@@ -73,12 +216,8 @@
"editMode" : true "editMode" : true
} }
} ], } ],
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup46"
},
"getPSAppViewRefs" : [ { "getPSAppViewRefs" : [ {
"name" : "EDITDATA", "name" : "NEWDATA",
"realTitle" : "订单编辑视图", "realTitle" : "订单编辑视图",
"getRealTitlePSLanguageRes" : { "getRealTitlePSLanguageRes" : {
"lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW" "lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW"
...@@ -89,7 +228,7 @@ ...@@ -89,7 +228,7 @@
"viewType" : "DEEDITVIEW" "viewType" : "DEEDITVIEW"
} }
}, { }, {
"name" : "NEWDATA", "name" : "EDITDATA",
"realTitle" : "订单编辑视图", "realTitle" : "订单编辑视图",
"getRealTitlePSLanguageRes" : { "getRealTitlePSLanguageRes" : {
"lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW" "lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW"
...@@ -332,30 +471,34 @@ ...@@ -332,30 +471,34 @@
"showTitleBar" : true, "showTitleBar" : true,
"modelid" : "6e838643ecb37eab99428cd3fc5ce15a_calendarexpbar", "modelid" : "6e838643ecb37eab99428cd3fc5ce15a_calendarexpbar",
"modeltype" : "PSEXPBAR" "modeltype" : "PSEXPBAR"
} ], }, {
"getPSDEViewCodeName" : "CalendarExpView", "controlType" : "SEARCHBAR",
"getPSDEViewId" : "69faae56dc0c6221045cfdc5ce889654", "dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder/PSSEARCHBARS/.json",
"getPSViewLayoutPanel" : {
"codeName" : "Layoutpanel",
"controlStyle" : "APPDECALENDAREXPVIEW",
"controlType" : "VIEWLAYOUTPANEL",
"name" : "layoutpanel",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSControlParam" : { }, "getPSControlParam" : {
"layoutBodyOnly" : true, "id" : "searchbar"
"layoutPanel" : true, },
"useDefaultLayout" : true "quickGroupCount" : -1,
"quickSearchMode" : 1,
"quickSearchWidth" : 0,
"enableFilter" : false,
"enableGroup" : false,
"enableQuickSearch" : true,
"mobileSearchBar" : false,
"name" : "searchbar"
} ]
}, },
"sideBarLayout" : "LEFT", "sideBarLayout" : "LEFT",
"title" : "实体日历导航视图", "title" : "实体日历导航视图",
"viewStyle" : "DEFAULT", "viewStyle" : "DEFAULT",
"viewType" : "DECALENDAREXPVIEW", "viewType" : "DECALENDAREXPVIEW",
"enableDP" : true, "enableDP" : true,
"enableFilter" : false, "enableFilter" : true,
"enableQuickSearch" : true, "enableQuickSearch" : true,
"enableSearch" : true,
"showCaptionBar" : false, "showCaptionBar" : false,
"showDataInfoBar" : true, "showDataInfoBar" : true,
"modelid" : "6e838643ecb37eab99428cd3fc5ce15a", "modelid" : "6e838643ecb37eab99428cd3fc5ce15a",
......
...@@ -11,6 +11,181 @@ ...@@ -11,6 +11,181 @@
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup49"
},
"getPSDEViewCodeName" : "DataViewExpView",
"getPSDEViewId" : "249cdb96e203f9126e55f8e268353266",
"getPSViewLayoutPanel" : {
"getAllPSPanelFields" : [ {
"id" : "view_pagecaption"
} ],
"codeName" : "Usr1104835568",
"controlType" : "VIEWLAYOUTPANEL",
"layoutMode" : "FLEX",
"logicName" : "DataViewExpViewDEDATAVIEWEXPVIEW",
"name" : "layoutpanel",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
},
"getPSControlParam" : { },
"getPSLayout" : {
"layout" : "FLEX"
},
"getRootPSPanelItems" : [ {
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "page_container",
"getPSLayout" : {
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 6,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "页面标题",
"itemStyle" : "DEFAULT",
"itemType" : "FIELD",
"name" : "view_pagecaption",
"getPSEditor" : {
"editorType" : "SPAN",
"name" : "view_pagecaption",
"predefinedType" : "VIEW_PAGECAPTION",
"renderMode" : "HEADING1",
"enableLinkView" : false
},
"getPSLayoutPos" : {
"grow" : -1,
"hAlignSelf" : "LEFT",
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX",
"widthMode" : "FULL"
},
"hidden" : false,
"showCaption" : false
} ]
}, {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_2",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "TOOLBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "toolbar",
"getPSLayoutPos" : {
"grow" : -1,
"hAlignSelf" : "RIGHT",
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
} ]
}, {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid2",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 3,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "dataviewexpbar",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
}
} ]
}, {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container3",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 9,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "导航区占位",
"itemStyle" : "DEFAULT",
"itemType" : "RAWITEM",
"name" : "nav_pos1",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"getPSRawItem" : {
"name" : "nav_pos1",
"predefinedType" : "NAV_POS"
},
"showCaption" : true
} ]
} ]
} ]
} ],
"layoutBodyOnly" : false,
"layoutPanel" : true,
"useDefaultLayout" : false,
"viewProxyMode" : true,
"modelid" : "F8734CB4-8A8D-451B-B9B2-4E053430D296",
"modeltype" : "PSSYSVIEWLAYOUTPANEL",
"getPSAppViewEngines" : [ { "getPSAppViewEngines" : [ {
"engineCat" : "VIEW", "engineCat" : "VIEW",
"engineType" : "DataViewExpView", "engineType" : "DataViewExpView",
...@@ -73,10 +248,6 @@ ...@@ -73,10 +248,6 @@
"editMode" : true "editMode" : true
} }
} ], } ],
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup49"
},
"getPSAppViewRefs" : [ { "getPSAppViewRefs" : [ {
"name" : "EDITDATA", "name" : "EDITDATA",
"realTitle" : "订单编辑视图", "realTitle" : "订单编辑视图",
...@@ -578,30 +749,34 @@ ...@@ -578,30 +749,34 @@
"showTitleBar" : true, "showTitleBar" : true,
"modelid" : "24eda604d53b477c9c8446aad6d3eb61_dataviewexpbar", "modelid" : "24eda604d53b477c9c8446aad6d3eb61_dataviewexpbar",
"modeltype" : "PSEXPBAR" "modeltype" : "PSEXPBAR"
} ], }, {
"getPSDEViewCodeName" : "DataViewExpView", "controlType" : "SEARCHBAR",
"getPSDEViewId" : "249cdb96e203f9126e55f8e268353266", "dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder/PSSEARCHBARS/.json",
"getPSViewLayoutPanel" : {
"codeName" : "Layoutpanel",
"controlStyle" : "APPDEDATAVIEWEXPVIEW",
"controlType" : "VIEWLAYOUTPANEL",
"name" : "layoutpanel",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSControlParam" : { }, "getPSControlParam" : {
"layoutBodyOnly" : true, "id" : "searchbar"
"layoutPanel" : true, },
"useDefaultLayout" : true "quickGroupCount" : -1,
"quickSearchMode" : 1,
"quickSearchWidth" : 0,
"enableFilter" : false,
"enableGroup" : false,
"enableQuickSearch" : true,
"mobileSearchBar" : false,
"name" : "searchbar"
} ]
}, },
"sideBarLayout" : "LEFT", "sideBarLayout" : "LEFT",
"title" : "实体卡片视图导航视图", "title" : "实体卡片视图导航视图",
"viewStyle" : "DEFAULT", "viewStyle" : "DEFAULT",
"viewType" : "DEDATAVIEWEXPVIEW", "viewType" : "DEDATAVIEWEXPVIEW",
"enableDP" : true, "enableDP" : true,
"enableFilter" : false, "enableFilter" : true,
"enableQuickSearch" : true, "enableQuickSearch" : true,
"enableSearch" : true,
"showCaptionBar" : false, "showCaptionBar" : false,
"showDataInfoBar" : true, "showDataInfoBar" : true,
"modelid" : "24eda604d53b477c9c8446aad6d3eb61", "modelid" : "24eda604d53b477c9c8446aad6d3eb61",
......
...@@ -373,6 +373,29 @@ ...@@ -373,6 +373,29 @@
"showCaption" : false "showCaption" : false
} ] } ]
} ] } ]
}, {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "甘特部件",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "gantt",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"showCaption" : true
} ]
} ] } ]
} ], } ],
"layoutBodyOnly" : true, "layoutBodyOnly" : true,
......
...@@ -11,6 +11,149 @@ ...@@ -11,6 +11,149 @@
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup44"
},
"getPSDEViewCodeName" : "GridExpView",
"getPSDEViewId" : "9938a5bfe83757fde1debbab048d9beb",
"getPSViewLayoutPanel" : {
"getAllPSPanelFields" : [ {
"id" : "view_pagecaption"
} ],
"codeName" : "Usr1104444270",
"controlType" : "VIEWLAYOUTPANEL",
"layoutMode" : "FLEX",
"logicName" : "GridExpViewDEGRIDEXPVIEW",
"name" : "layoutpanel",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
},
"getPSControlParam" : { },
"getPSLayout" : {
"layout" : "FLEX"
},
"getRootPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "page_container",
"getPSLayout" : {
"dir" : "column",
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"columnCount" : 24,
"layout" : "TABLE_24COL"
},
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "页面标题",
"itemStyle" : "DEFAULT",
"itemType" : "FIELD",
"name" : "view_pagecaption",
"getPSEditor" : {
"editorType" : "SPAN",
"name" : "view_pagecaption",
"predefinedType" : "VIEW_PAGECAPTION",
"renderMode" : "HEADING1",
"enableLinkView" : false
},
"getPSLayoutPos" : {
"colMD" : 24,
"heightMode" : "FULL",
"layout" : "TABLE_24COL",
"widthMode" : "FULL"
},
"hidden" : false,
"showCaption" : false
} ]
}, {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 5,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "GRIDEXPBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "gridexpbar",
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
}, {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container8",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 7,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "导航区占位",
"itemStyle" : "DEFAULT",
"itemType" : "RAWITEM",
"name" : "nav_pos1",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"getPSRawItem" : {
"name" : "nav_pos1",
"predefinedType" : "NAV_POS"
},
"showCaption" : true
} ]
} ]
} ]
} ],
"layoutBodyOnly" : false,
"layoutPanel" : true,
"useDefaultLayout" : false,
"viewProxyMode" : true,
"modelid" : "E900FE55-88AC-4868-B964-A388D20F2B55",
"modeltype" : "PSSYSVIEWLAYOUTPANEL",
"getPSAppViewEngines" : [ { "getPSAppViewEngines" : [ {
"engineCat" : "VIEW", "engineCat" : "VIEW",
"engineType" : "GridExpView", "engineType" : "GridExpView",
...@@ -73,12 +216,8 @@ ...@@ -73,12 +216,8 @@
"editMode" : true "editMode" : true
} }
} ], } ],
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup44"
},
"getPSAppViewRefs" : [ { "getPSAppViewRefs" : [ {
"name" : "EDITDATA", "name" : "NEWDATA",
"realTitle" : "订单编辑视图", "realTitle" : "订单编辑视图",
"getRealTitlePSLanguageRes" : { "getRealTitlePSLanguageRes" : {
"lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW" "lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW"
...@@ -89,7 +228,7 @@ ...@@ -89,7 +228,7 @@
"viewType" : "DEEDITVIEW" "viewType" : "DEEDITVIEW"
} }
}, { }, {
"name" : "NEWDATA", "name" : "EDITDATA",
"realTitle" : "订单编辑视图", "realTitle" : "订单编辑视图",
"getRealTitlePSLanguageRes" : { "getRealTitlePSLanguageRes" : {
"lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW" "lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW"
...@@ -575,30 +714,34 @@ ...@@ -575,30 +714,34 @@
"showTitleBar" : true, "showTitleBar" : true,
"modelid" : "eb7b89e6e628ba9fef4c9a684390b59e_gridexpbar", "modelid" : "eb7b89e6e628ba9fef4c9a684390b59e_gridexpbar",
"modeltype" : "PSEXPBAR" "modeltype" : "PSEXPBAR"
} ], }, {
"getPSDEViewCodeName" : "GridExpView", "controlType" : "SEARCHBAR",
"getPSDEViewId" : "9938a5bfe83757fde1debbab048d9beb", "dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder/PSSEARCHBARS/.json",
"getPSViewLayoutPanel" : {
"codeName" : "Layoutpanel",
"controlStyle" : "APPDEGRIDEXPVIEW",
"controlType" : "VIEWLAYOUTPANEL",
"name" : "layoutpanel",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSControlParam" : { }, "getPSControlParam" : {
"layoutBodyOnly" : true, "id" : "searchbar"
"layoutPanel" : true, },
"useDefaultLayout" : true "quickGroupCount" : -1,
"quickSearchMode" : 1,
"quickSearchWidth" : 0,
"enableFilter" : false,
"enableGroup" : false,
"enableQuickSearch" : true,
"mobileSearchBar" : false,
"name" : "searchbar"
} ]
}, },
"sideBarLayout" : "LEFT", "sideBarLayout" : "LEFT",
"title" : "实体表格导航视图", "title" : "实体表格导航视图",
"viewStyle" : "DEFAULT", "viewStyle" : "DEFAULT",
"viewType" : "DEGRIDEXPVIEW", "viewType" : "DEGRIDEXPVIEW",
"enableDP" : true, "enableDP" : true,
"enableFilter" : false, "enableFilter" : true,
"enableQuickSearch" : true, "enableQuickSearch" : true,
"enableSearch" : true,
"showCaptionBar" : false, "showCaptionBar" : false,
"showDataInfoBar" : true, "showDataInfoBar" : true,
"modelid" : "eb7b89e6e628ba9fef4c9a684390b59e", "modelid" : "eb7b89e6e628ba9fef4c9a684390b59e",
......
...@@ -11,6 +11,149 @@ ...@@ -11,6 +11,149 @@
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup45"
},
"getPSDEViewCodeName" : "ListExpView",
"getPSDEViewId" : "93996e083dfe7980decea33c8b9e57a5",
"getPSViewLayoutPanel" : {
"getAllPSPanelFields" : [ {
"id" : "view_pagecaption"
} ],
"codeName" : "Usr1104101971",
"controlType" : "VIEWLAYOUTPANEL",
"layoutMode" : "FLEX",
"logicName" : "ListExpViewDELISTEXPVIEW",
"name" : "layoutpanel",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
},
"getPSControlParam" : { },
"getPSLayout" : {
"layout" : "FLEX"
},
"getRootPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "page_container",
"getPSLayout" : {
"dir" : "column",
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"columnCount" : 24,
"layout" : "TABLE_24COL"
},
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "页面标题",
"itemStyle" : "DEFAULT",
"itemType" : "FIELD",
"name" : "view_pagecaption",
"getPSEditor" : {
"editorType" : "SPAN",
"name" : "view_pagecaption",
"predefinedType" : "VIEW_PAGECAPTION",
"renderMode" : "HEADING1",
"enableLinkView" : false
},
"getPSLayoutPos" : {
"colMD" : 24,
"heightMode" : "FULL",
"layout" : "TABLE_24COL",
"widthMode" : "FULL"
},
"hidden" : false,
"showCaption" : false
} ]
}, {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 2,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "LISTEXPBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "listexpbar",
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
}, {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container8",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 10,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "导航区占位",
"itemStyle" : "DEFAULT",
"itemType" : "RAWITEM",
"name" : "nav_pos1",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"getPSRawItem" : {
"name" : "nav_pos1",
"predefinedType" : "NAV_POS"
},
"showCaption" : true
} ]
} ]
} ]
} ],
"layoutBodyOnly" : false,
"layoutPanel" : true,
"useDefaultLayout" : false,
"viewProxyMode" : true,
"modelid" : "5B73D350-ECB5-46D5-B9CD-201E56AB4226",
"modeltype" : "PSSYSVIEWLAYOUTPANEL",
"getPSAppViewEngines" : [ { "getPSAppViewEngines" : [ {
"engineCat" : "VIEW", "engineCat" : "VIEW",
"engineType" : "ListExpView", "engineType" : "ListExpView",
...@@ -73,12 +216,8 @@ ...@@ -73,12 +216,8 @@
"editMode" : true "editMode" : true
} }
} ], } ],
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup45"
},
"getPSAppViewRefs" : [ { "getPSAppViewRefs" : [ {
"name" : "NEWDATA", "name" : "EDITDATA",
"realTitle" : "订单编辑视图", "realTitle" : "订单编辑视图",
"getRealTitlePSLanguageRes" : { "getRealTitlePSLanguageRes" : {
"lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW" "lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW"
...@@ -89,7 +228,7 @@ ...@@ -89,7 +228,7 @@
"viewType" : "DEEDITVIEW" "viewType" : "DEEDITVIEW"
} }
}, { }, {
"name" : "EDITDATA", "name" : "NEWDATA",
"realTitle" : "订单编辑视图", "realTitle" : "订单编辑视图",
"getRealTitlePSLanguageRes" : { "getRealTitlePSLanguageRes" : {
"lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW" "lanResTag" : "PAGE.TITLE.IBIZORDER.EDITVIEW"
...@@ -465,30 +604,34 @@ ...@@ -465,30 +604,34 @@
"showTitleBar" : true, "showTitleBar" : true,
"modelid" : "c49fda1f55b84da055e850e06093b843_listexpbar", "modelid" : "c49fda1f55b84da055e850e06093b843_listexpbar",
"modeltype" : "PSEXPBAR" "modeltype" : "PSEXPBAR"
} ], }, {
"getPSDEViewCodeName" : "ListExpView", "controlType" : "SEARCHBAR",
"getPSDEViewId" : "93996e083dfe7980decea33c8b9e57a5", "dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder/PSSEARCHBARS/.json",
"getPSViewLayoutPanel" : {
"codeName" : "Layoutpanel",
"controlStyle" : "APPDELISTEXPVIEW",
"controlType" : "VIEWLAYOUTPANEL",
"name" : "layoutpanel",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSControlParam" : { }, "getPSControlParam" : {
"layoutBodyOnly" : true, "id" : "searchbar"
"layoutPanel" : true, },
"useDefaultLayout" : true "quickGroupCount" : -1,
"quickSearchMode" : 1,
"quickSearchWidth" : 0,
"enableFilter" : false,
"enableGroup" : false,
"enableQuickSearch" : true,
"mobileSearchBar" : false,
"name" : "searchbar"
} ]
}, },
"sideBarLayout" : "LEFT", "sideBarLayout" : "LEFT",
"title" : "实体列表导航视图", "title" : "实体列表导航视图",
"viewStyle" : "DEFAULT", "viewStyle" : "DEFAULT",
"viewType" : "DELISTEXPVIEW", "viewType" : "DELISTEXPVIEW",
"enableDP" : true, "enableDP" : true,
"enableFilter" : false, "enableFilter" : true,
"enableQuickSearch" : true, "enableQuickSearch" : true,
"enableSearch" : true,
"showCaptionBar" : false, "showCaptionBar" : false,
"showDataInfoBar" : true, "showDataInfoBar" : true,
"modelid" : "c49fda1f55b84da055e850e06093b843", "modelid" : "c49fda1f55b84da055e850e06093b843",
......
...@@ -11,6 +11,149 @@ ...@@ -11,6 +11,149 @@
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup48"
},
"getPSDEViewCodeName" : "TreeExpView",
"getPSDEViewId" : "0369a08155c3178418813507d2df1c53",
"getPSViewLayoutPanel" : {
"getAllPSPanelFields" : [ {
"id" : "view_pagecaption"
} ],
"codeName" : "Usr1104887055",
"controlType" : "VIEWLAYOUTPANEL",
"layoutMode" : "FLEX",
"logicName" : "TreeExpViewDETREEEXPVIEW",
"name" : "layoutpanel",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
},
"getPSControlParam" : { },
"getPSLayout" : {
"layout" : "FLEX"
},
"getRootPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "page_container",
"getPSLayout" : {
"dir" : "column",
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"columnCount" : 24,
"layout" : "TABLE_24COL"
},
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "页面标题",
"itemStyle" : "DEFAULT",
"itemType" : "FIELD",
"name" : "view_pagecaption",
"getPSEditor" : {
"editorType" : "SPAN",
"name" : "view_pagecaption",
"predefinedType" : "VIEW_PAGECAPTION",
"renderMode" : "HEADING1",
"enableLinkView" : false
},
"getPSLayoutPos" : {
"colMD" : 24,
"heightMode" : "FULL",
"layout" : "TABLE_24COL",
"widthMode" : "FULL"
},
"hidden" : false,
"showCaption" : false
} ]
}, {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 2,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "TREEEXPBAR",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "treeexpbar",
"getPSLayoutPos" : {
"grow" : -1,
"heightMode" : "FULL",
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
}, {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container8",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 10,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "导航区占位",
"itemStyle" : "DEFAULT",
"itemType" : "RAWITEM",
"name" : "nav_pos1",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"getPSRawItem" : {
"name" : "nav_pos1",
"predefinedType" : "NAV_POS"
},
"showCaption" : true
} ]
} ]
} ]
} ],
"layoutBodyOnly" : false,
"layoutPanel" : true,
"useDefaultLayout" : false,
"viewProxyMode" : true,
"modelid" : "90FD0138-412B-4C52-AEA7-3725A167C670",
"modeltype" : "PSSYSVIEWLAYOUTPANEL",
"getPSAppViewEngines" : [ { "getPSAppViewEngines" : [ {
"engineCat" : "VIEW", "engineCat" : "VIEW",
"engineType" : "TreeExpView", "engineType" : "TreeExpView",
...@@ -73,10 +216,6 @@ ...@@ -73,10 +216,6 @@
"editMode" : true "editMode" : true
} }
} ], } ],
"getPSAppViewMsgGroup" : {
"modelref" : true,
"id" : "VMGroup48"
},
"getPSAppViewRefs" : [ { "getPSAppViewRefs" : [ {
"name" : "EDITDATA", "name" : "EDITDATA",
"realTitle" : "订单编辑视图", "realTitle" : "订单编辑视图",
...@@ -726,29 +865,33 @@ ...@@ -726,29 +865,33 @@
"showTitleBar" : true, "showTitleBar" : true,
"modelid" : "e445494f8d658d87d054b1fc51831af1_treeexpbar", "modelid" : "e445494f8d658d87d054b1fc51831af1_treeexpbar",
"modeltype" : "PSEXPBAR" "modeltype" : "PSEXPBAR"
} ], }, {
"getPSDEViewCodeName" : "TreeExpView", "controlType" : "SEARCHBAR",
"getPSDEViewId" : "0369a08155c3178418813507d2df1c53", "dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder/PSSEARCHBARS/.json",
"getPSViewLayoutPanel" : {
"codeName" : "Layoutpanel",
"controlStyle" : "APPDETREEEXPVIEW",
"controlType" : "VIEWLAYOUTPANEL",
"name" : "layoutpanel",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSControlParam" : { }, "getPSControlParam" : {
"layoutBodyOnly" : true, "id" : "searchbar"
"layoutPanel" : true, },
"useDefaultLayout" : true "quickGroupCount" : -1,
"quickSearchMode" : 1,
"quickSearchWidth" : 0,
"enableFilter" : false,
"enableGroup" : false,
"enableQuickSearch" : true,
"mobileSearchBar" : false,
"name" : "searchbar"
} ]
}, },
"title" : "实体树导航视图", "title" : "实体树导航视图",
"viewStyle" : "DEFAULT", "viewStyle" : "DEFAULT",
"viewType" : "DETREEEXPVIEW", "viewType" : "DETREEEXPVIEW",
"enableDP" : true, "enableDP" : true,
"enableFilter" : false, "enableFilter" : true,
"enableQuickSearch" : true, "enableQuickSearch" : true,
"enableSearch" : true,
"showCaptionBar" : false, "showCaptionBar" : false,
"showDataInfoBar" : true, "showDataInfoBar" : true,
"modelid" : "e445494f8d658d87d054b1fc51831af1", "modelid" : "e445494f8d658d87d054b1fc51831af1",
......
...@@ -27,6 +27,19 @@ ...@@ -27,6 +27,19 @@
"id" : "VMGroup58" "id" : "VMGroup58"
}, },
"getPSControls" : [ { "getPSControls" : [ {
"codeName" : "TreeGridExViewtoolbar",
"controlType" : "TOOLBAR",
"name" : "toolbar",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
},
"getPSControlParam" : {
"id" : "TOOLBAR"
},
"modelid" : "d7f9470512d0d0ad2d4aba7b17e40b05_toolbar",
"modeltype" : "PSDETOOLBAR"
}, {
"codeName" : "OrderTreeGrid", "codeName" : "OrderTreeGrid",
"controlType" : "TREEGRIDEX", "controlType" : "TREEGRIDEX",
"dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder/PSTREEGRIDICES/OrderTreeGrid.json", "dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder/PSTREEGRIDICES/OrderTreeGrid.json",
...@@ -285,35 +298,136 @@ ...@@ -285,35 +298,136 @@
"name" : "treegridex", "name" : "treegridex",
"modelid" : "7aba7d0e31fc1df3a27cb7e7f45b608e", "modelid" : "7aba7d0e31fc1df3a27cb7e7f45b608e",
"modeltype" : "PSDETREEGRIDEX" "modeltype" : "PSDETREEGRIDEX"
}, {
"codeName" : "TreeGridExViewtoolbar",
"controlType" : "TOOLBAR",
"name" : "toolbar",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
},
"getPSControlParam" : {
"id" : "TOOLBAR"
},
"modelid" : "d7f9470512d0d0ad2d4aba7b17e40b05_toolbar",
"modeltype" : "PSDETOOLBAR"
} ], } ],
"getPSDEViewCodeName" : "TreeGridExView", "getPSDEViewCodeName" : "TreeGridExView",
"getPSDEViewId" : "7e09ce460d099683184b57a8dc174e85", "getPSDEViewId" : "7e09ce460d099683184b57a8dc174e85",
"getPSViewLayoutPanel" : { "getPSViewLayoutPanel" : {
"getAllPSPanelFields" : [ {
"id" : "view_pagecaption"
} ],
"codeName" : "Layoutpanel", "codeName" : "Layoutpanel",
"controlStyle" : "APPDETREEGRIDEXVIEW",
"controlType" : "VIEWLAYOUTPANEL", "controlType" : "VIEWLAYOUTPANEL",
"layoutMode" : "TABLE_24COL",
"logicName" : "树表格视图",
"name" : "layoutpanel", "name" : "layoutpanel",
"getPSAppDataEntity" : { "getPSAppDataEntity" : {
"modelref" : true, "modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
}, },
"getPSControlParam" : { }, "getPSControlParam" : { },
"getPSLayout" : {
"columnCount" : 24,
"layout" : "TABLE_24COL"
},
"getRootPSPanelItems" : [ {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "page_container",
"getPSLayout" : {
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"colMD" : 24,
"layout" : "TABLE_24COL"
},
"getPSPanelItems" : [ {
"caption" : "栅格容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_grid1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 3,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "页面标题",
"itemStyle" : "DEFAULT",
"itemType" : "FIELD",
"name" : "view_pagecaption",
"getPSEditor" : {
"editorType" : "SPAN",
"name" : "view_pagecaption",
"predefinedType" : "VIEW_PAGECAPTION",
"renderMode" : "HEADING1",
"enableLinkView" : false
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"hidden" : false,
"showCaption" : false
} ]
}, {
"caption" : "面板容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container2",
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
},
"getPSLayoutPos" : {
"grow" : 9,
"layout" : "SIMPLEFLEX"
},
"getPSPanelItems" : [ {
"caption" : "工具栏",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "toolbar",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "SIMPLEFLEX"
},
"showCaption" : true
} ]
} ]
}, {
"caption" : "容器",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container3",
"getPSLayout" : {
"layout" : "FLEX"
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"getPSPanelItems" : [ {
"caption" : "树表格部件",
"itemStyle" : "DEFAULT",
"itemType" : "CTRLPOS",
"name" : "treegridex",
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
},
"showCaption" : true
} ]
} ]
} ],
"layoutBodyOnly" : true, "layoutBodyOnly" : true,
"layoutPanel" : true, "layoutPanel" : true,
"useDefaultLayout" : true "useDefaultLayout" : false,
"modelid" : "A45D1A7D-16A4-4752-A7AA-2C4AA8C04256",
"modeltype" : "PSSYSVIEWLAYOUTPANEL"
}, },
"title" : "实体树表格视图(增强)", "title" : "实体树表格视图(增强)",
"viewStyle" : "DEFAULT", "viewStyle" : "DEFAULT",
......
...@@ -172,7 +172,7 @@ ...@@ -172,7 +172,7 @@
<!--输出实体[IBIZBOOK]数据结构 --> <!--输出实体[IBIZBOOK]数据结构 -->
<changeSet author="a_LAB01_df847bdfd" id="tab-ibizbook-140-7"> <changeSet author="a_LAB01_df847bdfd" id="tab-ibizbook-148-7">
<createTable tableName="T_IBIZBOOK"> <createTable tableName="T_IBIZBOOK">
<column name="CREATEMAN" remarks="" type="VARCHAR(60)"> <column name="CREATEMAN" remarks="" type="VARCHAR(60)">
</column> </column>
...@@ -340,7 +340,7 @@ ...@@ -340,7 +340,7 @@
<!--输出实体[IBIZORDER]数据结构 --> <!--输出实体[IBIZORDER]数据结构 -->
<changeSet author="a_LAB01_df847bdfd" id="tab-ibizorder-142-14"> <changeSet author="a_LAB01_df847bdfd" id="tab-ibizorder-176-14">
<createTable tableName="T_IBIZORDER"> <createTable tableName="T_IBIZORDER">
<column name="TP" remarks="" type="TEXT(1048576)"> <column name="TP" remarks="" type="TEXT(1048576)">
</column> </column>
......
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
</createView> </createView>
</changeSet> </changeSet>
<!--输出实体[IBIZORDER]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步--> <!--输出实体[IBIZORDER]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet author="a_LAB01_df847bdfd" id="view-ibizorder-142-8" runOnChange="true"> <changeSet author="a_LAB01_df847bdfd" id="view-ibizorder-176-8" runOnChange="true">
<createView fullDefinition="false" replaceIfExists="true" viewName="V_IBIZORDER"> <createView fullDefinition="false" replaceIfExists="true" viewName="V_IBIZORDER">
<![CDATA[ SELECT t1.[AMOUNT], t1.[CREATEDATE], t1.[CREATEMAN], t1.[DETAILNUM], t1.[IBIZCUSTOMERID], t11.[IBIZCUSTOMERNAME], t1.[IBIZORDERID], t1.[IBIZORDERNAME], t1.[MEMO], t1.[ORDERSTATE], t1.[ORDERTIME], t1.[ORDERTYPE], t1.[ORDERUID], t1.[UPDATEDATE], t1.[UPDATEMAN], t1.[WFINSTANCEID], t1.[WFSTATE], t1.[WFSTEP] FROM [T_IBIZORDER] t1 LEFT JOIN T_IBIZCUSTOMER t11 ON t1.IBIZCUSTOMERID = t11.IBIZCUSTOMERID ]]> <![CDATA[ SELECT t1.[AMOUNT], t1.[CREATEDATE], t1.[CREATEMAN], t1.[DETAILNUM], t1.[IBIZCUSTOMERID], t11.[IBIZCUSTOMERNAME], t1.[IBIZORDERID], t1.[IBIZORDERNAME], t1.[MEMO], t1.[ORDERSTATE], t1.[ORDERTIME], t1.[ORDERTYPE], t1.[ORDERUID], t1.[UPDATEDATE], t1.[UPDATEMAN], t1.[WFINSTANCEID], t1.[WFSTATE], t1.[WFSTEP] FROM [T_IBIZORDER] t1 LEFT JOIN T_IBIZCUSTOMER t11 ON t1.IBIZCUSTOMERID = t11.IBIZCUSTOMERID ]]>
</createView> </createView>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册