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

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

上级 ca67382b
......@@ -120,10 +120,10 @@
<template v-slot:container9="slotProps">
<app-standard-container name="container9" :index="slotProps.data.index" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
<template #field_text_dynamic>
<app-preset-text name="field_text_dynamic" :index="slotProps.data.index" :value="layoutData[`field_text_dynamic_${slotProps.data.index}`]" :layoutModelDetails="layoutModelDetails"/>
<app-preset-text name="field_text_dynamic" :index="slotProps.data.index" :value="layoutData[`ibizcustomername_${slotProps.data.index}`]" :layoutModelDetails="layoutModelDetails"/>
</template>
<template #field_textbox>
<app-panel-field name="field_textbox" :index="slotProps.data.index" :data="layoutData" :value="layoutData[`field_textbox_${slotProps.data.index}`]"> <app-preset-text-input name="field_textbox" :index="slotProps.data.index" :layoutModelDetails="layoutModelDetails" :value="layoutData[`field_textbox_${slotProps.data.index}`]" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="field_textbox" :index="slotProps.data.index" :data="layoutData" :value="layoutData[`field_textbox_${slotProps.data.index}`]"> <app-preset-text-input name="field_textbox" :index="slotProps.data.index" :layoutModelDetails="layoutModelDetails" :value="layoutData[`ibizcustomername_${slotProps.data.index}`]" @valueChange="handleValueChange"/> </app-panel-field>
</template>
</app-standard-container>
</template>
......@@ -385,7 +385,7 @@ export default class IBIZCustomerMediaTestEditViewBase extends Vue {
static_image1:{ name: 'static_image1', type: 'VIEWLAYOUT', caption: '图片', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', sysImage:{ iconcls: '', imagePath:'assets/img/logo2.png', rawContent: '' }, 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: 'container4', panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_IMAGE', contentType: 'IMAGE', contentStyle: '', rawContent: '', htmlContent: '', },
container4:{ name: 'container4', type: 'VIEWLAYOUT', 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_grid2', panel: this , details:['static_image1'] , dataRegionType: 'INHERIT' },
field_image:{ name: 'field_image', type: 'VIEWLAYOUT', 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: 'container_singledata3', panel: this , fieldState: '0', predefinedType: 'FIELD_IMAGE', dataItemName:'', },
container_singledata3:{ name: 'container_singledata3', type: 'VIEWLAYOUT', 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: 'container5', panel: this , details:['field_image'] , dataRegionType: 'SINGLEDATA' , dataSourceType: 'DEDATASET' , appDataEntityCodeName: 'ibizcustom' , appDEMethodCodeName: 'FetchDefault' },
container_singledata3:{ name: 'container_singledata3', type: 'VIEWLAYOUT', 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: 'container5', panel: this , details:['field_image'] , dataRegionType: 'SINGLEDATA' , dataSourceType: 'DEACTION' , appDataEntityCodeName: 'ibizcustomer' , appDEMethodCodeName: 'GetDynaImg' },
container5:{ name: 'container5', type: 'VIEWLAYOUT', 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_grid2', panel: this , details:['container_singledata3'] , dataRegionType: 'INHERIT' },
container_grid2:{ name: 'container_grid2', type: 'VIEWLAYOUT', 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: 'container2', panel: this , details:['container4','container5'] , dataRegionType: 'INHERIT' },
static_carousel1:{ name: 'static_carousel1', type: 'VIEWLAYOUT', 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: 'container6', panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_CAROUSEL', contentType: 'IMAGE', contentStyle: '', rawContent: '', htmlContent: '', },
......
......@@ -29,10 +29,10 @@
<template #container1>
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
<template #button_calluilogic1>
<app-preset-button name="button_calluilogic1" :layoutModelDetails="layoutModelDetails" caption="按钮" tooltip="" @itemClick="handleButtonClick" />
<app-preset-button name="button_calluilogic1" :layoutModelDetails="layoutModelDetails" caption="确认" tooltip="" @itemClick="handleButtonClick" />
</template>
<template #button_calluilogic2>
<app-preset-button name="button_calluilogic2" :layoutModelDetails="layoutModelDetails" caption="按钮" tooltip="" @itemClick="handleButtonClick" />
<app-login-button class="app-reset-button" name="button_calluilogic2" :layoutModelDetails="layoutModelDetails" defaultStyle='success' @itemClick="handleButtonClick" />
</template>
</app-standard-container>
</template>
......@@ -284,9 +284,9 @@ export default class IBIZCustomerUsr2PickupView_layoutBase extends Vue {
public layoutItems:any = {
pickupviewpanel:{ name: 'pickupviewpanel', type: 'VIEWLAYOUT', caption: 'PICKUPVIEWPANEL部件', isShowCaption: true, sysCss: '', itemType: 'CTRLPOS', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'CENTER', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_scroll_main1', panel: this },
container_scroll_main1:{ name: 'container_scroll_main1', type: 'VIEWLAYOUT', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'CENTER', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_scroll1', panel: this , details:['pickupviewpanel'] , dataRegionType: 'INHERIT' },
button_calluilogic1:{ name: 'button_calluilogic1', type: 'VIEWLAYOUT', caption: '按钮', isShowCaption: true, sysCss: '', itemType: 'BUTTON', 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 , buttonStyle: 'DEFAULT', borderStyle: '', iconAlign: '', renderMode: '', },
button_calluilogic2:{ name: 'button_calluilogic2', type: 'VIEWLAYOUT', caption: '按钮', isShowCaption: true, sysCss: '', itemType: 'BUTTON', 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 , buttonStyle: 'DEFAULT', borderStyle: '', iconAlign: '', renderMode: '', },
container1:{ name: 'container1', type: 'VIEWLAYOUT', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'CENTER', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'INNERMEDIUM', spacingLeft:'', spacingRight:'', spacingTop:'INNERMEDIUM', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_scroll_bottom1', panel: this , details:['button_calluilogic1','button_calluilogic2'] , dataRegionType: 'INHERIT' },
button_calluilogic1:{ name: 'button_calluilogic1', type: 'VIEWLAYOUT', caption: '确认', isShowCaption: true, sysCss: '', itemType: 'BUTTON', itemStyle: 'PRIMARY', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:32, heightMode:'PX', layoutWidth:60, widthMode:'PX', spacingBottom:'', spacingLeft:'', spacingRight:'OUTERSMALL', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , buttonStyle: 'PRIMARY', borderStyle: '', iconAlign: '', predefinedType: 'DATA_SAVECHANGES', renderMode: '', },
button_calluilogic2:{ name: 'button_calluilogic2', type: 'VIEWLAYOUT', caption: '取消', isShowCaption: true, sysCss: '', itemType: 'BUTTON', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:32, heightMode:'PX', layoutWidth:60, widthMode:'PX', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container1', panel: this , buttonStyle: 'DEFAULT', borderStyle: '', iconAlign: '', predefinedType: 'DATA_CANCELCHANGES', renderMode: '', },
container1:{ name: 'container1', type: 'VIEWLAYOUT', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'CENTER', layoutHeight:0, heightMode:'FULL', layoutWidth:0, widthMode:'FULL', spacingBottom:'INNERMEDIUM', spacingLeft:'', spacingRight:'', spacingTop:'INNERMEDIUM', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'flex-end',dir:'row',vAlign:'center'}, parentName: 'container_scroll_bottom1', panel: this , details:['button_calluilogic1','button_calluilogic2'] , dataRegionType: 'INHERIT' },
container_scroll_bottom1:{ name: 'container_scroll_bottom1', type: 'VIEWLAYOUT', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'SOUTH', layoutHeight:64, heightMode:'PX', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, parentName: 'container_scroll1', panel: this , details:['container1'] , dataRegionType: 'INHERIT' },
container_scroll1:{ name: 'container_scroll1', type: 'VIEWLAYOUT', caption: '滚动条容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container_scroll_main1','container_scroll_bottom1'] , dataRegionType: 'INHERIT' }
};
......@@ -457,15 +457,15 @@ export default class IBIZCustomerUsr2PickupView_layoutBase extends Vue {
const contextJO: any = {};
const _this: any = this;
if (Object.is(name, 'button_calluilogic1')) {
_this.IBIZCustomer_panel_Layoutpanel_button_calluilogic1_click(datas, contextJO, paramJO, $event, xData, this, undefined);
_this.panel_Layoutpanel_button_calluilogic1_click(datas, contextJO, paramJO, $event, xData, this, undefined);
}
if (Object.is(name, 'button_calluilogic2')) {
_this.IBIZCustomer_panel_Layoutpanel_button_calluilogic2_click(datas, contextJO, paramJO, $event, xData, this, undefined);
_this.panel_Layoutpanel_button_calluilogic2_click(datas, contextJO, paramJO, $event, xData, this, undefined);
}
}
/**
* 按钮
* 确认
*
* @param {any[]} args 当前数据
* @param {any} context 行为附加上下文
......@@ -475,22 +475,72 @@ export default class IBIZCustomerUsr2PickupView_layoutBase extends Vue {
* @param {*} [actionContext] 执行行为上下文
* @param {*} [srfParentDeName] 父实体名称
*/
public IBIZCustomer_panel_Layoutpanel_button_calluilogic1_click(args: any[], context: any = {}, params: any = {}, $event?: any, xData?: any, actionContext?: any, srfParentDeName?: string) {
this.$Notice.error({ title: '错误', desc: '自定义行为未实现' });
public panel_Layoutpanel_button_calluilogic1_click(args: any[], context: any = {}, params: any = {}, $event?: any, xData?: any, actionContext?: any, srfParentDeName?: string) {
// 准备上下文参数
const tempContext = {...context};
if (xData && xData.context) {
Object.assign(tempContext, xData.context);
}
const data = args[0];
let action: string | undefined = undefined;
const appEntityService: any = new IBIZCustomerService();
const key = appEntityService.APPDEKEY.toLowerCase();
const name = appEntityService.APPDENAME.toLowerCase();
if (data.hasOwnProperty(key) || data.hasOwnProperty(name)) {
if (data.hasOwnProperty(key)) {
Object.assign(context, { [name]: data[key] });
} else {
Object.assign(context, { [name]: data[name] });
}
action = 'Update';
} else {
action = 'Create';
}
try {
if (action) {
appEntityService[action](tempContext, data).then((response: any) => {
if (!response.status || response.status !== 200) {
this.$Notice.error({ title: '错误', desc: '当前环境无法执行保存变更逻辑[执行行为异常]' });
}
})
} else {
this.$Notice.error({ title: '错误', desc: '当前环境无法执行保存变更逻辑[执行行为异常]' });
}
} catch (error: any) {
this.$Notice.error({ title: '错误', desc: '当前环境无法执行保存变更逻辑[执行行为异常]' });
}
}
/**
* 按钮
* 取消
*
* @param {any[]} args 当前数据
* @param {any} context 行为附加上下文
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @param {*} [srfParentDeName] 父实体名称
*/
public IBIZCustomer_panel_Layoutpanel_button_calluilogic2_click(args: any[], context: any = {}, params: any = {}, $event?: any, xData?: any, actionContext?: any, srfParentDeName?: string) {
this.$Notice.error({ title: '错误', desc: '自定义行为未实现' });
public panel_Layoutpanel_button_calluilogic2_click(args: any[], contextJO?:any, params?: any, $event?: any, xData?: any, actionContext?:any, srfParentDeName?:string) {
if (actionContext.viewType === 'APPLOGINVIEW') {
const length = Object.keys(actionContext.layoutData).length;
for (let i = length - 1; i >= 0; i--) {
const name = Object.keys(actionContext.layoutData)[i];
if (actionContext.layoutData.hasOwnProperty(name) && !Object.is(actionContext.layoutModelDetails[name].itemType, 'CONTAINER')) {
actionContext.handleValueChange({ name, value: null });
}
}
actionContext.$nextTick(() => {
actionContext.$forceUpdate();
})
} else {
const parentRef = actionContext.$parent;
if (parentRef.closeView && (parentRef.closeView instanceof Function)) {
parentRef.closeView(args);
} else if (actionContext.closeView && (actionContext.closeView instanceof Function)) {
actionContext.closeView(args);
}
}
}
......
......@@ -15,7 +15,7 @@
<app-preset-text name="static_text1" :layoutModelDetails="layoutModelDetails"/>
</template>
<template #field_text_dynamic>
<app-preset-text name="field_text_dynamic" :value="layoutData.field_text_dynamic" :layoutModelDetails="layoutModelDetails"/>
<app-preset-text name="field_text_dynamic" :value="layoutData.field_textbox" :layoutModelDetails="layoutModelDetails"/>
</template>
<template #field_switch>
<app-preset-switch name="field_switch" :layoutModelDetails="layoutModelDetails" :value="layoutData.field_switch" @valueChange="handleValueChange"/>
......
<template>
<div class="app-layoutpanel AppPanelView" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel AppPanelView" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
</template>
</div>
......@@ -331,14 +332,13 @@ export default class AppPanelViewBase extends Vue implements ControlInterface {
*
* @memberof AppPanelViewBase
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -359,8 +359,8 @@ export default class AppPanelViewBase extends Vue implements ControlInterface {
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
......@@ -598,7 +598,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public load(opt: any = {}): void {
if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORGridView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORListView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
return;
}
const arg: any = { ...opt };
......@@ -634,7 +634,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public loadDraft(opt: any = {},mode?:string): void {
if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORGridView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORListView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
return;
}
const arg: any = { ...opt } ;
......
<template>
<div class="app-layoutpanel Auto1" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel Auto1" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
<template #field1>
<app-panel-field name="field1" :data="layoutData" :value="layoutData.field1"> <app-preset-text-input name="field1" :layoutModelDetails="layoutModelDetails" :value="layoutData.field1" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="field1" :data="layoutData" :value="layoutData.field1"> <app-span name="field1" :value="layoutData.field1" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
<template #field2>
<app-panel-field name="field2" :data="layoutData" :value="layoutData.field2"> <app-preset-text-input name="field2" :layoutModelDetails="layoutModelDetails" :value="layoutData.field2" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="field2" :data="layoutData" :value="layoutData.field2"> <app-span name="field2" :value="layoutData.field2" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
<template #field3>
<app-panel-field name="field3" :data="layoutData" :value="layoutData.field3"> <app-preset-text-input name="field3" :layoutModelDetails="layoutModelDetails" :value="layoutData.field3" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="field3" :data="layoutData" :value="layoutData.field3"> <app-span name="field3" :value="layoutData.field3" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
</app-standard-container>
</template>
......@@ -381,14 +382,13 @@ export default class Auto1Base extends Vue implements ControlInterface {
*
* @memberof Auto1Base
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -409,8 +409,8 @@ export default class Auto1Base extends Vue implements ControlInterface {
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
......@@ -671,7 +671,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public load(opt: any = {}): void {
if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKGroupByCodelistListView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKUsr9GridView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
return;
}
const arg: any = { ...opt };
......@@ -707,7 +707,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public loadDraft(opt: any = {},mode?:string): void {
if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKGroupByCodelistListView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKUsr9GridView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
return;
}
const arg: any = { ...opt } ;
......
<template>
<div class="app-layoutpanel HasPanelKanBan" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel HasPanelKanBan" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
<template #srfmajortext>
<app-panel-field name="srfmajortext" :data="layoutData" :value="layoutData.srfmajortext"> <app-preset-text-input name="srfmajortext" :layoutModelDetails="layoutModelDetails" :value="layoutData.srfmajortext" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="srfmajortext" :data="layoutData" :value="layoutData.srfmajortext"> <app-span name="srfmajortext" :value="layoutData.srfmajortext" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
<template #author>
<app-panel-field name="author" :data="layoutData" :value="layoutData.author"> <app-preset-text-input name="author" :layoutModelDetails="layoutModelDetails" :value="layoutData.author" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="author" :data="layoutData" :value="layoutData.author"> <app-span name="author" :value="layoutData.author" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
<template #srfdescription>
<app-panel-field name="srfdescription" :data="layoutData" :value="layoutData.srfdescription"> <app-preset-text-input name="srfdescription" :layoutModelDetails="layoutModelDetails" :value="layoutData.srfdescription" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="srfdescription" :data="layoutData" :value="layoutData.srfdescription"> <app-span name="srfdescription" :value="layoutData.srfdescription" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
</app-standard-container>
</template>
......@@ -381,14 +382,13 @@ export default class HasPanelKanBanBase extends Vue implements ControlInterface
*
* @memberof HasPanelKanBanBase
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -409,8 +409,8 @@ export default class HasPanelKanBanBase extends Vue implements ControlInterface
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
<template>
<div class="app-layoutpanel HasPanelList" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel HasPanelList" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
<template #bookname>
<app-panel-field name="bookname" :data="layoutData" :value="layoutData.bookname"> <app-preset-text-input name="bookname" :layoutModelDetails="layoutModelDetails" :value="layoutData.bookname" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="bookname" :data="layoutData" :value="layoutData.bookname"> <app-span name="bookname" :value="layoutData.bookname" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
<template #author>
<app-panel-field name="author" :data="layoutData" :value="layoutData.author"> <app-preset-text-input name="author" :layoutModelDetails="layoutModelDetails" :value="layoutData.author" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="author" :data="layoutData" :value="layoutData.author"> <app-span name="author" :value="layoutData.author" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
<template #press>
<app-panel-field name="press" :data="layoutData" :value="layoutData.press"> <app-preset-text-input name="press" :layoutModelDetails="layoutModelDetails" :value="layoutData.press" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="press" :data="layoutData" :value="layoutData.press"> <app-span name="press" :value="layoutData.press" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
</app-standard-container>
</template>
......@@ -381,14 +382,13 @@ export default class HasPanelListBase extends Vue implements ControlInterface {
*
* @memberof HasPanelListBase
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -409,8 +409,8 @@ export default class HasPanelListBase extends Vue implements ControlInterface {
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
<template>
<div class="app-layoutpanel Listpanel" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel Listpanel" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
<template #static_label1>
<app-preset-text name="static_label1" :layoutModelDetails="layoutModelDetails"/>
......@@ -9,10 +10,10 @@
<app-preset-text name="static_text1" :layoutModelDetails="layoutModelDetails"/>
</template>
<template #field_text_dynamic>
<app-preset-text name="field_text_dynamic" :value="layoutData.field_text_dynamic" :layoutModelDetails="layoutModelDetails"/>
<app-preset-text name="field_text_dynamic" :value="layoutData.author" :layoutModelDetails="layoutModelDetails"/>
</template>
<template #field_textbox>
<app-panel-field name="field_textbox" :data="layoutData" :value="layoutData.field_textbox"> <app-preset-text-input name="field_textbox" :layoutModelDetails="layoutModelDetails" :value="layoutData.field_textbox" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="field_textbox" :data="layoutData" :value="layoutData.field_textbox"> <app-preset-text-input name="field_textbox" :layoutModelDetails="layoutModelDetails" :value="layoutData.booknumber" @valueChange="handleValueChange"/> </app-panel-field>
</template>
<template #button_link1>
<app-preset-button name="button_link1" :layoutModelDetails="layoutModelDetails" caption="页面链接" tooltip="" @itemClick="handleButtonClick" />
......@@ -389,14 +390,13 @@ export default class ListpanelBase extends Vue implements ControlInterface {
*
* @memberof ListpanelBase
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -417,8 +417,8 @@ export default class ListpanelBase extends Vue implements ControlInterface {
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
<template>
<div class="app-layoutpanel TIMELINEITEMLAYOUTPANEL" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel TIMELINEITEMLAYOUTPANEL" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
</app-standard-container>
</template>
......@@ -357,14 +358,13 @@ export default class TIMELINEITEMLAYOUTPANELBase extends Vue implements ControlI
*
* @memberof TIMELINEITEMLAYOUTPANELBase
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -385,8 +385,8 @@ export default class TIMELINEITEMLAYOUTPANELBase extends Vue implements ControlI
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
<template>
<div class="app-layoutpanel Usr" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel Usr" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
</app-standard-container>
</template>
......@@ -357,14 +358,13 @@ export default class UsrBase extends Vue implements ControlInterface {
*
* @memberof UsrBase
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -385,8 +385,8 @@ export default class UsrBase extends Vue implements ControlInterface {
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
<template>
<div class="app-layoutpanel Usr4" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel Usr4" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
<template #author>
<app-panel-field name="author" :data="layoutData" :value="layoutData.author"> <app-preset-text-input name="author" :layoutModelDetails="layoutModelDetails" :value="layoutData.author" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="author" :data="layoutData" :value="layoutData.author"> <app-span name="author" :value="layoutData.author" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
<template #press>
<app-panel-field name="press" :data="layoutData" :value="layoutData.press"> <app-preset-text-input name="press" :layoutModelDetails="layoutModelDetails" :value="layoutData.press" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="press" :data="layoutData" :value="layoutData.press"> <app-span name="press" :value="layoutData.press" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
<template #bookname>
<app-panel-field name="bookname" :data="layoutData" :value="layoutData.bookname"> <app-preset-text-input name="bookname" :layoutModelDetails="layoutModelDetails" :value="layoutData.bookname" @valueChange="handleValueChange"/> </app-panel-field>
<app-panel-field name="bookname" :data="layoutData" :value="layoutData.bookname"> <app-span name="bookname" :value="layoutData.bookname" :data="layoutData" :context="context" :viewparams="viewparams" :localContext='{ }' :localParam='{ }' /> </app-panel-field>
</template>
</app-standard-container>
</template>
......@@ -381,14 +382,13 @@ export default class Usr4Base extends Vue implements ControlInterface {
*
* @memberof Usr4Base
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -409,8 +409,8 @@ export default class Usr4Base extends Vue implements ControlInterface {
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
<template>
<div class="app-layoutpanel Usr5" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template>
<div class="app-layoutpanel Usr5" v-loading="isLayoutLoadding" :style="{width: '100%', height: '100%', overflow: 'auto'}">
<template v-if="!isLayoutLoadding">
<app-standard-container name="container1" :isMultiContainer="false" :layoutModelDetails="layoutModelDetails">
</app-standard-container>
</template>
......@@ -357,14 +358,13 @@ export default class Usr5Base extends Vue implements ControlInterface {
*
* @memberof Usr5Base
*/
@Watch('inputData',{immediate:true,deep: true})
@Watch('inputData', { deep: true } )
public onInputDataChange(newVal: any, oldVal: any){
if(newVal){
this.computedUIData(newVal);
this.layoutData = Util.deepCopy(newVal);
this.computeButtonState(newVal);
this.panelLogic('');
this.$forceUpdate();
}
}
......@@ -385,8 +385,8 @@ export default class Usr5Base extends Vue implements ControlInterface {
public afterMounted () {
const _this: any = this;
_this.initLayout().then((result: any) => {
_this.onInputDataChange(this.inputData);
_this.isLayoutLoadding = false;
});
}
......
......@@ -299,7 +299,7 @@ export default class MainBase extends Vue implements ControlInterface {
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof IBIZOrderSF1GridViewBase
* @memberof IBIZOrderPickupGridViewBase
*/
public Edit(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
if (args.length === 0) {
......@@ -421,20 +421,6 @@ export default class MainBase extends Vue implements ControlInterface {
return this.selections[0];
}
/**
* 打开新建数据视图
*
* @type {any}
* @memberof MainBase
*/
@Prop() public newdata: any;
/**
* 打开编辑数据视图
*
* @type {any}
* @memberof MainBase
*/
@Prop() public opendata: any;
/**
* 是否嵌入关系界面
......@@ -967,7 +953,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public load(opt: any = {}, pageReset: boolean = false): void {
if(!this.fetchAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderSF1GridView'+(this.$t('app.gridpage.notConfig.fetchAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderPickupGridView'+(this.$t('app.gridpage.notConfig.fetchAction') as string) });
return;
}
if(pageReset){
......@@ -1062,7 +1048,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public async remove(datas: any[]): Promise<any> {
if(!this.removeAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderSF1GridView'+(this.$t('app.gridpage.notConfig.removeAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderPickupGridView'+(this.$t('app.gridpage.notConfig.removeAction') as string) });
return;
}
let _datas:any[] = [];
......@@ -1168,7 +1154,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public addBatch(arg: any = {}): void {
if(!this.fetchAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderSF1GridView'+(this.$t('app.gridpage.notConfig.fetchAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderPickupGridView'+(this.$t('app.gridpage.notConfig.fetchAction') as string) });
return;
}
if(!arg){
......@@ -2085,7 +2071,7 @@ export default class MainBase extends Vue implements ControlInterface {
try {
if(Object.is(item.rowDataState, 'create')){
if(!this.createAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderSF1GridView'+(this.$t('app.gridpage.notConfig.createAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderPickupGridView'+(this.$t('app.gridpage.notConfig.createAction') as string) });
}else{
Object.assign(item,{viewparams:this.viewparams});
let response = await this.service.add(this.createAction, JSON.parse(JSON.stringify(this.context)),item, this.showBusyIndicator);
......@@ -2093,7 +2079,7 @@ export default class MainBase extends Vue implements ControlInterface {
}
}else if(Object.is(item.rowDataState, 'update')){
if(!this.updateAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderSF1GridView'+(this.$t('app.gridpage.notConfig.updateAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderPickupGridView'+(this.$t('app.gridpage.notConfig.updateAction') as string) });
}else{
Object.assign(item,{viewparams:this.viewparams});
if(item.ibizorder){
......@@ -2160,7 +2146,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public newRow(args: any[], params?: any, $event?: any, xData?: any): void {
if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderSF1GridView'+(this.$t('app.gridpage.notConfig.loaddraftAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderPickupGridView'+(this.$t('app.gridpage.notConfig.loaddraftAction') as string) });
return;
}
let _this = this;
......
......@@ -829,35 +829,33 @@
"builtinMethod" : false
} ],
"getAllPSAppDEUIActions" : [ {
"actionTarget" : "NONE",
"caption" : "按钮",
"caption" : "确认",
"codeName" : "panel_Layoutpanel_button_calluilogic1_click",
"fullCodeName" : "IBIZCustomer_panel_Layoutpanel_button_calluilogic1_click",
"name" : "按钮",
"fullCodeName" : "panel_Layoutpanel_button_calluilogic1_click",
"name" : "确认",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZCustomer.json"
},
"predefinedType" : "DATA_SAVECHANGES",
"timeout" : 60000,
"uIActionMode" : "CUSTOM",
"uIActionMode" : "SYS",
"uIActionTag" : "panel_Layoutpanel_button_calluilogic1_click",
"uIActionType" : "DEUIACTION",
"id" : "panel_Layoutpanel_button_calluilogic1_click@IBIZCustomer"
"uIActionType" : "DEUIACTION"
}, {
"actionTarget" : "NONE",
"caption" : "按钮",
"caption" : "取消",
"codeName" : "panel_Layoutpanel_button_calluilogic2_click",
"fullCodeName" : "IBIZCustomer_panel_Layoutpanel_button_calluilogic2_click",
"name" : "按钮",
"fullCodeName" : "panel_Layoutpanel_button_calluilogic2_click",
"name" : "取消",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZCustomer.json"
},
"predefinedType" : "DATA_CANCELCHANGES",
"timeout" : 60000,
"uIActionMode" : "CUSTOM",
"uIActionMode" : "SYS",
"uIActionTag" : "panel_Layoutpanel_button_calluilogic2_click",
"uIActionType" : "DEUIACTION",
"id" : "panel_Layoutpanel_button_calluilogic2_click@IBIZCustomer"
"uIActionType" : "DEUIACTION"
} ],
"getAllPSDEOPPrivs" : [ {
"logicName" : "建立",
......
......@@ -227,17 +227,17 @@
"getPSPanelItems" : [ {
"caption" : "单项数据容器",
"dataRegionType" : "SINGLEDATA",
"dataSourceType" : "DEDATASET",
"dataSourceType" : "DEACTION",
"itemStyle" : "DEFAULT",
"itemType" : "CONTAINER",
"name" : "container_singledata3",
"getPSAppDEMethod" : {
"modelref" : true,
"id" : "FetchDefault"
"id" : "GetDynaImg"
},
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZCustom.json"
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZCustomer.json"
},
"getPSLayout" : {
"layout" : "SIMPLEFLEX"
......
......@@ -86,9 +86,8 @@
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZCustomer.json"
},
"modelref" : true,
"id" : "panel_Layoutpanel_button_calluilogic1_click@IBIZCustomer"
"id" : "panel_Layoutpanel_button_calluilogic1_click"
},
"uIActionTarget" : "NONE",
"xDataControlName" : "layoutpanel"
}, {
"name" : "layoutpanel_button_calluilogic2",
......@@ -98,9 +97,8 @@
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZCustomer.json"
},
"modelref" : true,
"id" : "panel_Layoutpanel_button_calluilogic2_click@IBIZCustomer"
"id" : "panel_Layoutpanel_button_calluilogic2_click"
},
"uIActionTarget" : "NONE",
"xDataControlName" : "layoutpanel"
} ],
"getPSControlParam" : { },
......@@ -166,7 +164,10 @@
"itemType" : "CONTAINER",
"name" : "container1",
"getPSLayout" : {
"layout" : "FLEX"
"align" : "flex-end",
"dir" : "row",
"layout" : "FLEX",
"vAlign" : "center"
},
"getPSLayoutPos" : {
"heightMode" : "FULL",
......@@ -178,9 +179,14 @@
},
"getPSPanelItems" : [ {
"actionType" : "UIACTION",
"buttonStyle" : "DEFAULT",
"caption" : "按钮",
"itemStyle" : "DEFAULT",
"buttonHeight" : 32.0,
"buttonStyle" : "PRIMARY",
"buttonWidth" : 60.0,
"caption" : "确认",
"contentHeight" : 32.0,
"contentWidth" : 60.0,
"height" : 32.0,
"itemStyle" : "PRIMARY",
"itemType" : "BUTTON",
"name" : "button_calluilogic1",
"getPSAppViewUIAction" : {
......@@ -189,30 +195,40 @@
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
"height" : 32,
"heightMode" : "PX",
"layout" : "FLEX",
"spacingRight" : "OUTERSMALL",
"width" : 60,
"widthMode" : "PX"
},
"getPSUIAction" : {
"actionTarget" : "NONE",
"caption" : "按钮",
"caption" : "确认",
"codeName" : "panel_Layoutpanel_button_calluilogic1_click",
"fullCodeName" : "IBIZCustomer_panel_Layoutpanel_button_calluilogic1_click",
"name" : "按钮",
"fullCodeName" : "panel_Layoutpanel_button_calluilogic1_click",
"name" : "确认",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZCustomer.json"
},
"predefinedType" : "DATA_SAVECHANGES",
"timeout" : 60000,
"uIActionMode" : "CUSTOM",
"uIActionMode" : "SYS",
"uIActionTag" : "panel_Layoutpanel_button_calluilogic1_click",
"uIActionType" : "DEUIACTION",
"id" : "panel_Layoutpanel_button_calluilogic1_click@IBIZCustomer"
"uIActionType" : "DEUIACTION"
},
"tooltip" : "按钮",
"tooltip" : "确认",
"width" : 60.0,
"showCaption" : true
}, {
"actionType" : "UIACTION",
"buttonHeight" : 32.0,
"buttonStyle" : "DEFAULT",
"caption" : "按钮",
"buttonWidth" : 60.0,
"caption" : "取消",
"contentHeight" : 32.0,
"contentWidth" : 60.0,
"height" : 32.0,
"itemStyle" : "DEFAULT",
"itemType" : "BUTTON",
"name" : "button_calluilogic2",
......@@ -222,25 +238,29 @@
},
"getPSLayoutPos" : {
"grow" : -1,
"layout" : "FLEX"
"height" : 32,
"heightMode" : "PX",
"layout" : "FLEX",
"width" : 60,
"widthMode" : "PX"
},
"getPSUIAction" : {
"actionTarget" : "NONE",
"caption" : "按钮",
"caption" : "取消",
"codeName" : "panel_Layoutpanel_button_calluilogic2_click",
"fullCodeName" : "IBIZCustomer_panel_Layoutpanel_button_calluilogic2_click",
"name" : "按钮",
"fullCodeName" : "panel_Layoutpanel_button_calluilogic2_click",
"name" : "取消",
"getPSAppDataEntity" : {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZCustomer.json"
},
"predefinedType" : "DATA_CANCELCHANGES",
"timeout" : 60000,
"uIActionMode" : "CUSTOM",
"uIActionMode" : "SYS",
"uIActionTag" : "panel_Layoutpanel_button_calluilogic2_click",
"uIActionType" : "DEUIACTION",
"id" : "panel_Layoutpanel_button_calluilogic2_click@IBIZCustomer"
"uIActionType" : "DEUIACTION"
},
"tooltip" : "按钮",
"tooltip" : "取消",
"width" : 60.0,
"showCaption" : true
} ]
} ],
......
......@@ -172,7 +172,7 @@
<!--输出实体[IBIZBOOK]数据结构 -->
<changeSet author="a_LAB01_df847bdfd" id="tab-ibizbook-484-7">
<changeSet author="a_LAB01_df847bdfd" id="tab-ibizbook-485-7">
<createTable tableName="T_IBIZBOOK">
<column name="CREATEMAN" remarks="" type="VARCHAR(60)">
</column>
......@@ -278,7 +278,7 @@
<!--输出实体[IBIZCUSTOMER]数据结构 -->
<changeSet author="a_LAB01_df847bdfd" id="tab-ibizcustomer-124-10">
<changeSet author="a_LAB01_df847bdfd" id="tab-ibizcustomer-146-10">
<createTable tableName="T_IBIZCUSTOMER">
<column name="CREATEMAN" remarks="" type="VARCHAR(60)">
</column>
......
......@@ -19,7 +19,7 @@
</createView>
</changeSet>
<!--输出实体[IBIZCUSTOMER]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet author="a_LAB01_df847bdfd" id="view-ibizcustomer-124-4" runOnChange="true">
<changeSet author="a_LAB01_df847bdfd" id="view-ibizcustomer-146-4" runOnChange="true">
<createView fullDefinition="false" replaceIfExists="true" viewName="V_IBIZCUSTOMER">
<![CDATA[ SELECT t1.[ADDRESS], t1.[CREATEDATE], t1.[CREATEMAN], t1.[CUSTOMERUID], t1.[IBIZCUSTOMERID], t1.[IBIZCUSTOMERNAME], t1.[SN], t1.[UPDATEDATE], t1.[UPDATEMAN] FROM [T_IBIZCUSTOMER] t1 ]]>
</createView>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册