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

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

上级 5e7f688a
<template>
<div :class="[model.sysCss, 'app-login-button']" :style="containerStyle">
<i-button @click="handleClick" :type="curStyle">
<i v-if="model.sysImage.iconcls" :class="model.sysImage.iconcls"/>
<img v-else-if="model.sysImage.imagePath" :src="model.sysImage.imagePath" />
<template v-if="model.sysImage">
<i v-if="model.sysImage.iconcls" :class="model.sysImage.iconcls"/>
<img v-else-if="model.sysImage.imagePath" :src="model.sysImage.imagePath" />
</template>
<span v-show="model.isShowCaption">{{ model.caption }}</span>
</i-button>
</div>
......
......@@ -106,7 +106,17 @@ export default class AppPresetText extends Vue {
if (layoutModel.sysImage) {
cssClass = layoutModel.sysImage.iconcls;
}
return layoutModel.iconcls;
return cssClass;
}
/**
* 内容类型
*
* @memberof AppPresetTitle
*/
get contentType() {
const layoutModel = this.layoutModelDetails[this.name];
return layoutModel.contentType || 'RAW';
}
/**
......@@ -116,7 +126,7 @@ export default class AppPresetText extends Vue {
*/
get curClassName() {
const layoutModel = this.layoutModelDetails[this.name];
return `app-preset-text app-preset-text--${layoutModel.contentType.toLowerCase()} ${this.name} ${layoutModel.sysCss}`;
return `app-preset-text app-preset-text--${this.contentType.toLowerCase()} ${this.name} ${layoutModel.sysCss}`;
}
/**
......@@ -148,9 +158,9 @@ export default class AppPresetText extends Vue {
const layoutModel = this.layoutModelDetails[this.name];
let content = this.value;
if (layoutModel.predefinedType !== 'FIELD_TEXT_DYNAMIC') {
if (layoutModel.contentType == 'ROW') {
if (this.contentType == 'RAW') {
content = layoutModel.rawContent;
} else if (layoutModel.contentType == 'HTML') {
} else if (this.contentType == 'HTML') {
content = layoutModel.htmlContent;
const items = content.match(/\{{(.+?)\}}/g);
if (items) {
......
......@@ -405,6 +405,19 @@ export default class IBIZCustomerMediaTestEditViewBase extends Vue {
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','container3','container2']})
};
/**
* 处理值改变
*
* @public
* @memberof IBIZCustomerMediaTestEditViewBase
*/
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;
}
/**
......
......@@ -278,6 +278,19 @@ export default class IBIZOrderTestCustomLayoutPanelGridExpViewBase extends Vue {
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_scroll1']})
};
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderTestCustomLayoutPanelGridExpViewBase
*/
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;
}
/**
* 视图引擎
*
......
......@@ -354,6 +354,19 @@ export default class IBIZOrderUsr2GridViewBase extends Vue {
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']})
};
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderUsr2GridViewBase
*/
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;
}
......
......@@ -303,6 +303,19 @@ export default class IndexBase extends Vue {
container_scroll1:new PanelContainerModel({ name: 'container_scroll1', 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:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container_scroll_main1','container_scroll_left1','container_scroll_header1']})
};
/**
* 处理值改变
*
* @public
* @memberof IndexBase
*/
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;
}
......
......@@ -20,10 +20,10 @@
<app-preset-text name="field_text_dynamic" :value="layoutData.field_text_dynamic" :layoutModelDetails="layoutModelDetails"/>
</template>
<template #field_switch>
<app-preset-switch :layoutModelDetails="layoutModelDetails" :value="layoutData.field_switch" name="field_switch" @valueChange="handleVauleChange"/>
<app-preset-switch :layoutModelDetails="layoutModelDetails" :value="layoutData.field_switch" name="field_switch" @valueChange="handleValueChange"/>
</template>
<template #field_textbox>
<app-preset-text-input :layoutModelDetails="layoutModelDetails" :value="layoutData.field_textbox" name="field_textbox" @valueChange="handleVauleChange"/>
<app-preset-text-input :layoutModelDetails="layoutModelDetails" :value="layoutData.field_textbox" name="field_textbox" @valueChange="handleValueChange"/>
</template>
<template #field_qrcode>
<app-preset-qrcode :layoutModelDetails="layoutModelDetails" :value="layoutData.field_qrcode" name="field_qrcode"/>
......@@ -270,6 +270,19 @@ export default class AppIndexViewBase extends Vue {
container_scroll1:new PanelContainerModel({ name: 'container_scroll1', 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:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container_scroll_main1','container_scroll_left1','container_scroll_header1']})
};
/**
* 处理值改变
*
* @public
* @memberof AppIndexViewBase
*/
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;
}
......
......@@ -248,7 +248,7 @@ export default class AppLoginViewBase extends Vue {
* @memberof AppLoginViewBase
*/
public layoutModelDetails:any = {
userid:new PanelFieldModel({ name: 'userid', 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:''}, panel: this }),
userid:new PanelFieldModel({ name: 'userid', caption: '用户名', isShowCaption: false, sysCss: 'greenToolBar', itemType: 'FIELD', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:50, heightMode:'PX', layoutWidth:200, widthMode:'PX', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this }),
auth_password:new PanelFieldModel({ name: 'auth_password', 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:''}, panel: this }),
auth_orgpick:new PanelFieldModel({ name: 'auth_orgpick', 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:''}, panel: this }),
auth_loginbutton1:new PanelButtonModel({ name: 'auth_loginbutton1', caption: '登陆', isShowCaption: true, sysCss: 'deepskyblueToolBar', itemType: 'BUTTON', itemStyle: 'PRIMARY', sysImage:{ iconcls: 'fa fa-refresh', imagePath:'', rawContent: '' }, visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:50, heightMode:'PX', layoutWidth:200, widthMode:'PX', spacingBottom:'OUTERLARGE', spacingLeft:'OUTERLARGE', spacingRight:'OUTERLARGE', spacingTop:'OUTERLARGE', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, buttonStyle: 'PRIMARY', predefinedType: 'APP_LOGIN', renderMode: '', panel: this }),
......@@ -263,6 +263,19 @@ export default class AppLoginViewBase extends Vue {
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:100, heightMode:'PERCENTAGE', layoutWidth:100, widthMode:'PERCENTAGE', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container1']})
};
/**
* 处理值改变
*
* @public
* @memberof AppLoginViewBase
*/
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;
}
/**
......
......@@ -621,7 +621,7 @@ export default class QUICKSEARCHFORMBase extends Vue implements ControlInterface
*/
public load(opt: any = {}): void {
if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKCalendarView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKListView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
return;
}
const arg: any = { ...opt };
......@@ -657,7 +657,7 @@ export default class QUICKSEARCHFORMBase 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: 'IBIZBOOKCalendarView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKListView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
return;
}
const arg: any = { ...opt } ;
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册