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

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

上级 7a467949
......@@ -137,6 +137,7 @@ import AppIndexOrgSelect from './components/layout-element/index/app-index-org-s
import AppIndexUserInfo from './components/layout-element/index/app-index-user-info/app-index-user-info.vue';
import AppCtrlPos from './components/layout-element/control/app-ctrl-pos/app-ctrl-pos.vue';
import AppPresetButton from './components/layout-element/interactive/app-preset-button/app-preset-button.vue';
import AppFieldImageDynamic from './components/layout-element/media/app-field-image-dynamic/app-field-image-dynamic.vue';
// 全局挂载UI实体服务注册中心
window['uiServiceRegister'] = uiServiceRegister;
// 全局挂载实体权限服务注册中心
......@@ -288,5 +289,6 @@ export const AppComponents = {
v.component('app-index-user-info', AppIndexUserInfo);
v.component('app-ctrl-pos', AppCtrlPos);
v.component('app-preset-button',AppPresetButton);
v.component('app-field-image-dynamic', AppFieldImageDynamic);
},
};
\ No newline at end of file
<template>
<i-button
:class="className"
:class="curClassName"
:style="curStyle"
:type="buttonType"
:disabled="disabled"
:title="tooltip"
......@@ -45,67 +46,91 @@ export default class AppPresetButton extends Vue {
@Prop() public caption?: string;
/**
* 显示标题
* 加载状态
*
* @memberof AppPresetButton
*/
@Prop({ default: true }) public showCaption!: boolean;
@Prop({ default: false }) public loading?: boolean;
/**
* 禁用状态
* 布局模型详情
*
* @type {*}
* @memberof AppPresetButton
*/
@Prop({ default: false }) public disabled?: boolean;
@Prop() public layoutModelDetails: any;
/**
* 加载状态
*
* @memberof AppPresetButton
*/
@Prop({ default: false }) public loading?: boolean;
/**
* 传入数据
* 显示标题
*
* @memberof AppPresetButton
*/
@Prop() public data: any;
get showCaption() {
const layoutModel = this.layoutModelDetails[this.name];
return layoutModel.isShowCaption;
}
/**
* 图标
* 类名
*
* @memberof AppPresetButton
*/
@Prop() public cssClass?: string;
get curClassName(){
const layoutModel = this.layoutModelDetails[this.name];
return `app-preset-button ${this.name} ${layoutModel.sysCss}`;
}
/**
* 图片路径
*
* @memberof AppPresetButton
*/
@Prop() public imagePath?: string;
get imagePath() {
const layoutModel = this.layoutModelDetails[this.name];
let imagePath = '';
if (layoutModel.sysImage) {
imagePath = layoutModel.sysImage.imagePath;
} else if (layoutModel.uiAction) {
imagePath = layoutModel.uiAction.imagePath;
}
return imagePath;
}
/**
* 按钮绘制模式
* 图标
*
* @memberof AppPresetButton
*/
@Prop({ default: 'BUTTON' }) public renderMode!: 'BUTTON' | 'LINK';
get cssClass() {
const layoutModel = this.layoutModelDetails[this.name];
let cssClass = '';
if (layoutModel.sysImage) {
cssClass = layoutModel.sysImage.iconcls;
} else if (layoutModel.uiAction) {
cssClass = layoutModel.uiAction.iconcls;
}
return cssClass;
}
/**
* 按钮样式
*
* 当前容器样式
*
* @memberof AppPresetButton
*/
@Prop({ default: 'DEFAULT' }) public buttonStyle!: 'DEFAULT' | 'INVERSE' | 'PRIMARY' | 'INFO' | 'SUCCESS' | 'WARNING' | 'DANGER' | 'STYLE2' | 'STYLE3' | 'STYLE4';
get curStyle(){
const layoutModel = this.layoutModelDetails[this.name];
return layoutModel.getElementStyle();
}
/**
* 按钮图标方向
*
* 禁用
*
* @memberof AppPresetButton
*/
@Prop({ default: 'LEFT' }) public iconAlign!: 'LEFT' | 'TOP' | 'RIGHT' | 'BOTTOM';
get disabled(){
const layoutModel = this.layoutModelDetails[this.name];
return layoutModel.disabled;
}
/**
* 按钮类型
......@@ -113,42 +138,45 @@ export default class AppPresetButton extends Vue {
* @memberof AppPresetButton
*/
get buttonType() {
if (Object.is(this.renderMode, 'LINK')) {
const layoutModel = this.layoutModelDetails[this.name];
if (Object.is(layoutModel.renderMode, 'LINK')) {
return 'text';
} else {
if (
Object.is(this.buttonStyle, 'DEFAULT') ||
Object.is(this.buttonStyle, 'STYLE2') ||
Object.is(this.buttonStyle, 'STYLE3') ||
Object.is(this.buttonStyle, 'STYLE4')
Object.is(layoutModel.buttonStyle, 'DEFAULT') ||
Object.is(layoutModel.buttonStyle, 'STYLE2') ||
Object.is(layoutModel.buttonStyle, 'STYLE3') ||
Object.is(layoutModel.buttonStyle, 'STYLE4')
) {
return 'default';
} else if (Object.is(this.buttonStyle, 'DANGER')) {
} else if (Object.is(layoutModel.buttonStyle, 'DANGER')) {
return 'error';
} else if (Object.is(this.buttonStyle, 'INVERSE')) {
} else if (Object.is(layoutModel.buttonStyle, 'INVERSE')) {
return 'primary';
} else {
return this.buttonStyle.toLowerCase();
return layoutModel.buttonStyle.toLowerCase();
}
}
}
/**
* 按钮幽灵属性,使按钮背景透明
* 图标方向
*
* @memberof AppPresetButton
*/
get buttonGhost() {
return Object.is(this.buttonStyle, 'INVERSE');
get iconAlign() {
const layoutModel = this.layoutModelDetails[this.name];
return layoutModel.iconAlign || 'LEFT';
}
/**
* 类名
* 按钮幽灵属性,使按钮背景透明
*
* @memberof AppPresetButton
*/
get className(): string {
return `app-preset-button ${this.name}`;
get buttonGhost() {
const layoutModel = this.layoutModelDetails[this.name];
return Object.is(layoutModel.buttonStyle, 'INVERSE');
}
/**
......
.app-login-input {
.ivu-input-wrapper {
width: 100%;
height: 100%;
}
.ivu-input {
height: 100%;
width: 100%;
}
.ivu-input-prefix {
display: flex;
align-items: center;
justify-content: center;
}
}
\ No newline at end of file
<template>
<div class="app-user-input">
<div :class="[model.sysCss, 'app-login-input']" :style="containerStyle">
<i-input
size='large'
:prefix='icon'
v-model="value"
:placeholder="placeholder">
:prefix='defaultIcon'
v-model="curValue"
:disabled="disabled"
:readonly="readonly"
:placeholder="model.caption">
</i-input>
</div>
</template>
<script lang="ts">
import { Vue, Component, Watch, Prop, Model } from 'vue-property-decorator';
import { PanelFieldModel } from '@/model/panel-detail';
import { Vue, Component, Prop } from 'vue-property-decorator';
@Component({
})
export default class AppUserId extends Vue {
export default class AppLoginInput extends Vue {
/**
* 模型
*
* @type {string}
* @memberof AppLoginInput
*/
@Prop() public model!: PanelFieldModel;
/**
* 登录名称
*
*
* @type {string}
* @memberof AppUserId
* @memberof AppLoginInput
*/
@Prop() public value!: string;
/**
* 名称
*
* @type {string}
* @memberof AppLoginInput
*/
@Prop() public name!: string;
/**
* 默认图标
*
* @type {string}
* @memberof AppLoginInput
*/
@Prop() public defaultIcon?: string;
/**
* 容器样式
*
* @type {any}
* @memberof AppLoginInput
*/
@Prop({default: ''}) public value!: string;
public containerStyle: any = null;
@Prop() public icon?: string;
/**
* 禁用模式
*
* @type {any}
* @memberof AppLoginInput
*/
public disabled: boolean = false;
/**
* 只读模式
*
* @type {any}
* @memberof AppLoginInput
*/
public readonly: boolean = false;
/**
* 当前值
*
* @type {any}
* @memberof AppLoginInput
*/
get curValue() {
return this.value;
}
/**
* 值变化
*
* @memberof AppPresetTextInput
*/
set curValue(val: any) {
this.$emit('valueChange', { name: this.name, value: val });
}
@Prop() public placeholder?: string;
public mounted() {
if (this.model) {
this.containerStyle = this.model.getElementStyle();
this.disabled = Object.is(this.model.fieldState, '1');
this.readonly = Object.is(this.model.fieldState, '2');
}
}
}
</script>
<style lang="less">
@import "./app-login-input.less";
</style>
\ No newline at end of file
<template>
<div :class="{'app-field-image-dynamic':true,[cssClass]:cssClass?true:false}">
<img :style="cssStyle" :src="imgUrl" />
</div>
</template>
<script lang = 'ts'>
import { Vue, Component, Prop, Watch, Provide } from 'vue-property-decorator';
import { ImgurlBase64 } from '@/utils';
import { Environment } from "@/environments/environment";
@Component({})
export default class AppFieldImageDynamic extends Vue {
/**
* 输入值
*
* @type {string}
* @memberof AppRawItemImage
*/
@Prop() public value: any;
/**
* 样式
*
* @type {string}
* @memberof AppRawItemImage
*/
@Prop() public cssStyle?: string;
/**
* 样式表类名
*
* @type {string}
* @memberof AppRawItemImage
*/
@Prop({default:''}) public cssClass: string;
/**
* 动态图片路径
*
* @memberof AppPresetRawitem
*/
protected dynaImgUrl: string = '';
/**
* 下载文件路径
*
* @memberof AppPresetRawitem
*/
public downloadUrl = Environment.ExportFile;
/**
* 图片路径
*
* @memberof AppPresetRawitem
*/
get imgUrl(): string {
return this.dynaImgUrl;
}
created() {
this.handleDynaImg();
}
/**
* 处理动态图片
*
* @memberof AppPresetRawitem
*/
protected handleDynaImg() {
if (this.value && typeof this.value == "string") {
// 默认识别文件对象形式,识别失败则为全路径模式
try {
const _files = JSON.parse(this.value);
const file = _files instanceof Array ? _files[0] : null;
const url =
file && file.id ? `${this.downloadUrl}/${file.id}` : "";
ImgurlBase64.getInstance()
.getImgURLOfBase64(url)
.then((res: any) => {
this.dynaImgUrl = res;
});
} catch (error) {
this.dynaImgUrl = this.value;
}
}
}
}
</script>
<style lang = "less">
@import './app-field-image-dynamic.less';
</style>
\ No newline at end of file
......@@ -18,19 +18,50 @@
import { Component, Vue, Prop, Watch } from 'vue-property-decorator';
@Component({})
export default class AppCarousel extends Vue {
/**
* 父项所有数据
*
* @type {*}
* @memberof AppPresetCarousel
*/
@Prop() public contextData?: any;
/**
* @description 轮播图数据
* @param {*}
* @memberof AppCarousel
*/
@Prop() public data?: any;
@Prop() public value?: any;
/**
* @description 轮播图样式
* @param {*}
* @memberof AppCarousel
*/
@Prop() public rawstyle?: any;
@Prop() public cssStyle?: any;
/**
* @description 样式表
* @param {*}
* @memberof AppCarousel
*/
@Prop() public cssClass?: any;
/**
* 名称
*
* @type {string}
* @memberof AppCarousel
*/
@Prop() public name!: string;
/**
* 类型
*
* @type {string}
* @memberof AppCarousel
*/
@Prop() public type?: string;
/**
* @description 轮播图图片所有项数据
......@@ -64,7 +95,7 @@ export default class AppCarousel extends Vue {
* @memberof AppCarousel
*/
created() {
this.handleSwipData(this.data);
this.handleSwipData(this.value);
}
/**
......@@ -81,7 +112,7 @@ export default class AppCarousel extends Vue {
this.swipeData = data.slice(0, -2);
this.swipeConfig = this.setSwipeConfig(data.slice(-2));
} else {
this.swipeData = this.data;
this.swipeData = data;
this.swipeConfig = this.setSwipeConfig(data);
}
}
......
......@@ -11,9 +11,11 @@ export class PanelButtonModel extends PanelDetailModel {
constructor(opts: any = {}) {
super(opts);
this.uiaction = opts.uiaction;
this.uiAction = opts.uiAction;
this.buttonStyle = opts.buttonStyle;
this.renderMode = opts.renderMode;
this.iconAlign = opts.iconAlign || 'LEFT';
this.disabled = opts.disabled ? true : false;
}
/**
......@@ -22,8 +24,23 @@ export class PanelButtonModel extends PanelDetailModel {
* @type {*}
* @memberof PanelButtonModel
*/
public uiaction:any;
public uiAction:any;
/**
* 图标方向
*
* @type {('LEFT' | 'TOP' | 'RIGHT' | 'BOTTOM')}
* @memberof PanelButtonModel
*/
public iconAlign: 'LEFT' | 'TOP' | 'RIGHT' | 'BOTTOM';
/**
* 是否禁用
*
* @type {boolean}
* @memberof PanelButtonModel
*/
public disabled: boolean = false;
/**
* @description 按钮类型
......
......@@ -38,6 +38,16 @@ export class PanelFieldModel extends PanelDetailModel {
*/
public enableCond: number | 0 | 1 | 2 | 3 = 3;
/**
* @description 默认状态
* 0 不启用
* 1 只读
* 2 禁用
* @type {('0' | '1' | '2')}
* @memberof PanelFieldModel
*/
public fieldState: '0' | '1' | '2';
/**
* Creates an instance of PanelFieldModel.
* PanelFieldModel 实例
......@@ -49,6 +59,7 @@ export class PanelFieldModel extends PanelDetailModel {
super(opts);
this.disabled = opts.disabled ? true : false;
this.enableCond = opts.enableCond;
this.fieldState = opts.fieldState;
}
/**
......
......@@ -76,7 +76,12 @@
<app-preset-text name="static_label2" :layoutModelDetails="layoutModelDetails"/>
</template>
<template #field_image>
<span>属性项</span>
<app-field-image-dynamic
name="field_image"
cssStyle=""
:value="layoutData['field_image']">
</app-field-image-dynamic>
</template>
</app-simpleflex-container>
</template>
......@@ -91,9 +96,11 @@
</template>
<template #static_carousel1>
<app-rawitem-carousel
:data="[]"
type="STATIC_CAROUSEL"
name="static_carousel1"
:value="[]"
cssStyle=""
cssClass=""
:contextData="layoutData"
>
</app-rawitem-carousel>
</template>
......@@ -105,7 +112,14 @@
<app-preset-text name="static_label4" :layoutModelDetails="layoutModelDetails"/>
</template>
<template #field_carousel>
<span>属性项</span>
<app-rawitem-carousel
:contextData="layoutData"
name="field_carousel"
type="FIELD_CAROUSEL"
:value="layoutData['field_carousel']"
cssStyle=""
>
</app-rawitem-carousel>
</template>
</app-simpleflex-container>
</template>
......@@ -377,29 +391,29 @@ export default class IBIZCustomerMediaTestEditViewBase extends Vue {
* @memberof IBIZCustomerMediaTestEditViewBase
*/
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:''}, fieldState: '0', panel: this }),
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:''}, panel: this , fieldState: '0', }),
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:''}, panel: this , details:['view_pagecaption']}),
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:''}, 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:''}, panel: this , details:['toolbar']}),
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:''}, panel: this , details:['container1','container_2']}),
form:new PanelCtrlPosModel({ name: 'form', caption: 'FORM', 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:''}, 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:100, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['form']}),
static_label1:new PanelRawitemModel({ name: 'static_label1', 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:''}, predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '图片', htmlContent: '', renderMode: 'PARAGRAPH', panel: this , viewType: 'DEEDITVIEW' }),
static_image1:new PanelRawitemModel({ name: 'static_image1', caption: '图片', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', sysImage:{ iconcls: 'fa fa-maxcdn', imagePath:'', 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:''}, predefinedType: 'STATIC_IMAGE', contentType: 'IMAGE', contentStyle: '', rawContent: '', htmlContent: '', panel: this , viewType: 'DEEDITVIEW' }),
static_label1:new PanelRawitemModel({ name: 'static_label1', 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:''}, panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '图片', htmlContent: '', renderMode: 'PARAGRAPH', }),
static_image1:new PanelRawitemModel({ name: 'static_image1', caption: '图片', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', sysImage:{ iconcls: 'fa fa-maxcdn', imagePath:'', 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:''}, panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_IMAGE', contentType: 'IMAGE', contentStyle: '', rawContent: '', htmlContent: '', }),
container4:new PanelContainerModel({ name: 'container4', 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:''}, panel: this , details:['static_label1','static_image1']}),
static_label2:new PanelRawitemModel({ name: 'static_label2', 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:''}, predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '图片-动态', htmlContent: '', renderMode: 'PARAGRAPH', panel: this , viewType: 'DEEDITVIEW' }),
field_image:new PanelFieldModel({ name: 'field_image', 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:''}, fieldState: '0', panel: this }),
static_label2:new PanelRawitemModel({ name: 'static_label2', 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:''}, panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '图片-动态', htmlContent: '', renderMode: 'PARAGRAPH', }),
field_image:new PanelFieldModel({ name: 'field_image', 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 , fieldState: '0', }),
container5:new PanelContainerModel({ name: 'container5', 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:''}, panel: this , details:['static_label2','field_image']}),
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:''}, panel: this , details:['container4','container5']}),
static_label3:new PanelRawitemModel({ name: 'static_label3', 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:''}, predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '轮播图', htmlContent: '', renderMode: 'PARAGRAPH', panel: this , viewType: 'DEEDITVIEW' }),
static_carousel1:new PanelRawitemModel({ name: 'static_carousel1', 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:''}, predefinedType: 'STATIC_CAROUSEL', contentType: 'IMAGE', contentStyle: '', rawContent: '', htmlContent: '', panel: this , viewType: 'DEEDITVIEW' }),
static_label3:new PanelRawitemModel({ name: 'static_label3', 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:''}, panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '轮播图', htmlContent: '', renderMode: 'PARAGRAPH', }),
static_carousel1:new PanelRawitemModel({ name: 'static_carousel1', 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:''}, panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_CAROUSEL', contentType: 'IMAGE', contentStyle: '', rawContent: '', htmlContent: '', }),
container6:new PanelContainerModel({ name: 'container6', 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:''}, panel: this , details:['static_label3','static_carousel1']}),
static_label4:new PanelRawitemModel({ name: 'static_label4', 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:''}, predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '轮播图-动态', htmlContent: '', renderMode: 'PARAGRAPH', panel: this , viewType: 'DEEDITVIEW' }),
field_carousel:new PanelFieldModel({ name: 'field_carousel', 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:''}, fieldState: '0', panel: this }),
static_label4:new PanelRawitemModel({ name: 'static_label4', 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:''}, panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '轮播图-动态', htmlContent: '', renderMode: 'PARAGRAPH', }),
field_carousel:new PanelFieldModel({ name: 'field_carousel', 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 , fieldState: '0', }),
container7:new PanelContainerModel({ name: 'container7', 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:''}, panel: this , details:['static_label4','field_carousel']}),
container_grid3:new PanelContainerModel({ name: 'container_grid3', 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:''}, panel: this , details:['container6','container7']}),
static_label5:new PanelRawitemModel({ name: 'static_label5', 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:''}, predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '视图', htmlContent: '', renderMode: 'PARAGRAPH', panel: this , viewType: 'DEEDITVIEW' }),
static_videoplayer1:new PanelRawitemModel({ name: 'static_videoplayer1', 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:''}, predefinedType: 'STATIC_VIDEOPLAYER', contentType: 'RAW', contentStyle: '', rawContent: '', htmlContent: '', renderMode: '', panel: this , viewType: 'DEEDITVIEW' }),
static_label5:new PanelRawitemModel({ name: 'static_label5', 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:''}, panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '视图', htmlContent: '', renderMode: 'PARAGRAPH', }),
static_videoplayer1:new PanelRawitemModel({ name: 'static_videoplayer1', 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:''}, panel: this , viewType: 'DEEDITVIEW', predefinedType: 'STATIC_VIDEOPLAYER', contentType: 'RAW', contentStyle: '', rawContent: '', htmlContent: '', renderMode: '', }),
container8:new PanelContainerModel({ name: 'container8', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:600, widthMode:'PX', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'LEFT', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['static_label5','static_videoplayer1']}),
container2:new PanelContainerModel({ name: 'container2', 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_grid2','container_grid3','container8']}),
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']})
......@@ -418,6 +432,16 @@ export default class IBIZCustomerMediaTestEditViewBase extends Vue {
this.layoutData[$event.name] = $event.value;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZCustomerMediaTestEditViewBase
*/
public handleButtonClick($event: any) {
}
/**
......
......@@ -268,9 +268,9 @@ export default class IBIZOrderTestCustomLayoutPanelGridExpViewBase extends Vue {
* @memberof IBIZOrderTestCustomLayoutPanelGridExpViewBase
*/
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:''}, fieldState: '0', panel: this }),
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:''}, panel: this , fieldState: '0', }),
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:''}, panel: this , details:['view_pagecaption']}),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', 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:''}, predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', panel: this , viewType: 'DEGRIDEXPVIEW' }),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', 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:''}, panel: this , viewType: 'DEGRIDEXPVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
container_scroll_main1:new PanelContainerModel({ name: 'container_scroll_main1', 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:''}, panel: this , details:['nav_pos1']}),
gridexpbar:new PanelCtrlPosModel({ name: 'gridexpbar', caption: '表格导航栏', 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:''}, panel: this }),
container_scroll_left1:new PanelContainerModel({ name: 'container_scroll_left1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'WEST', layoutHeight:0, heightMode:'', layoutWidth:200, widthMode:'PX', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['gridexpbar']}),
......@@ -291,6 +291,16 @@ export default class IBIZOrderTestCustomLayoutPanelGridExpViewBase extends Vue {
this.layoutData[$event.name] = $event.value;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderTestCustomLayoutPanelGridExpViewBase
*/
public handleButtonClick($event: any) {
}
/**
* 视图引擎
*
......
......@@ -341,7 +341,7 @@ export default class IBIZOrderUsr2GridViewBase extends Vue {
* @memberof IBIZOrderUsr2GridViewBase
*/
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:''}, fieldState: '0', panel: this }),
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:''}, panel: this , fieldState: '0', }),
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:''}, panel: this , details:['view_pagecaption']}),
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:''}, 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:''}, panel: this , details:['quicksearchbar']}),
......@@ -367,6 +367,16 @@ export default class IBIZOrderUsr2GridViewBase extends Vue {
this.layoutData[$event.name] = $event.value;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderUsr2GridViewBase
*/
public handleButtonClick($event: any) {
}
......
......@@ -68,7 +68,7 @@
<app-index-user-info name="auth_userinfo1" :layoutModelDetails="layoutModelDetails"></app-index-user-info>
</template>
<template #auth_logout1>
<app-login-button class="app-logout-button" :model="layoutModelDetails.auth_logout1" @itemClick="handleItemClick" />
<app-login-button class="app-logout-button" :model="layoutModelDetails.auth_logout1" @itemClick="handleButtonClick" />
</template>
</app-simpleflex-container>
</template>
......@@ -284,19 +284,19 @@ export default class IndexBase extends Vue {
* @memberof IndexBase
*/
public layoutModelDetails:any = {
nav_tabs2:new PanelRawitemModel({ name: 'nav_tabs2', caption: '标签页导航栏', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'CENTER', layoutHeight:70, heightMode:'PX', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, predefinedType: 'NAV_TABS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', panel: this , viewType: 'APPINDEXVIEW' }),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', 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:''}, predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', panel: this , viewType: 'APPINDEXVIEW' }),
nav_tabs2:new PanelRawitemModel({ name: 'nav_tabs2', caption: '标签页导航栏', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'CENTER', layoutHeight:70, heightMode:'PX', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , viewType: 'APPINDEXVIEW', predefinedType: 'NAV_TABS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
nav_pos1:new PanelRawitemModel({ name: 'nav_pos1', caption: '导航区占位', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', 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:''}, panel: this , viewType: 'APPINDEXVIEW', predefinedType: 'NAV_POS', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
container_group1:new PanelContainerModel({ name: 'container_group1', 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:''}, panel: this , details:[]}),
container_scroll_main1:new PanelContainerModel({ name: 'container_scroll_main1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'CENTER', layoutHeight:0, heightMode:'', layoutWidth:80, widthMode:'PERCENTAGE', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['nav_tabs2','nav_pos1','container_group1']}),
appmenu:new PanelCtrlPosModel({ name: 'appmenu', caption: '首页菜单', 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:''}, panel: this }),
container_scroll_left1:new PanelContainerModel({ name: 'container_scroll_left1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'WEST', layoutHeight:0, heightMode:'', layoutWidth:20, widthMode:'PERCENTAGE', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['appmenu']}),
app_apptitle:new PanelFieldModel({ name: 'app_apptitle', 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:''}, fieldState: '0', panel: this }),
app_apptitle:new PanelFieldModel({ name: 'app_apptitle', 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 , fieldState: '0', }),
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:''}, panel: this , details:['app_apptitle']}),
nav_breadcrumb1:new PanelRawitemModel({ name: 'nav_breadcrumb1', 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:'LEFT', vAlignSelf:'MIDDLE', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, predefinedType: 'NAV_BREADCRUMB', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', panel: this , viewType: 'APPINDEXVIEW' }),
nav_breadcrumb1:new PanelRawitemModel({ name: 'nav_breadcrumb1', 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:'LEFT', vAlignSelf:'MIDDLE', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , viewType: 'APPINDEXVIEW', predefinedType: 'NAV_BREADCRUMB', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
container4:new PanelContainerModel({ name: 'container4', 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:'space-between',dir:'row',vAlign:'center'}, panel: this , details:['nav_breadcrumb1']}),
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:6, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container4']}),
auth_userinfo1:new PanelRawitemModel({ name: 'auth_userinfo1', 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:'LEFT', vAlignSelf:'MIDDLE', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, predefinedType: 'AUTH_USERINFO', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', panel: this , viewType: 'APPINDEXVIEW' }),
auth_logout1:new PanelButtonModel({ name: 'auth_logout1', 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:'RIGHT', vAlignSelf:'MIDDLE', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, buttonStyle: 'DEFAULT', iconAlign: '', predefinedType: 'APP_LOGOUT', renderMode: '', panel: this }),
auth_userinfo1:new PanelRawitemModel({ name: 'auth_userinfo1', 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:'LEFT', vAlignSelf:'MIDDLE', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , viewType: 'APPINDEXVIEW', predefinedType: 'AUTH_USERINFO', contentType: '', contentStyle: '', rawContent: '', htmlContent: '', }),
auth_logout1:new PanelButtonModel({ name: 'auth_logout1', 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:'RIGHT', vAlignSelf:'MIDDLE', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , buttonStyle: 'DEFAULT', iconAlign: '', predefinedType: 'APP_LOGOUT', renderMode: '', }),
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:3, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['auth_userinfo1','auth_logout1']}),
container_grid1:new PanelContainerModel({ name: 'container_grid1', caption: '栅格容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'SIMPLEFLEX', layoutPos:'CENTER', layoutHeight:0, heightMode:'', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container1','container2','container3']}),
container_scroll_header1:new PanelContainerModel({ name: 'container_scroll_header1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'NORTH', layoutHeight:80, heightMode:'PX', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['container_grid1']}),
......@@ -316,6 +316,16 @@ export default class IndexBase extends Vue {
this.layoutData[$event.name] = $event.value;
}
/**
* 处理按钮点击
*
* @public
* @memberof IndexBase
*/
public handleButtonClick($event: any) {
}
......
......@@ -32,18 +32,18 @@
<app-preset-button
name="button_link1"
:layoutModelDetails="layoutModelDetails"
:caption="$t('', '页面链接')"
:tooltip="$t('', '')"
@itemClick="handleItemClick">
:caption="页面链接"
:tooltip=""
@itemClick="handleButtonClick">
</app-preset-button>
</template>
<template #button_openview1>
<app-preset-button
name="button_openview1"
:layoutModelDetails="layoutModelDetails"
:caption="$t('', '索引选择视图')"
:tooltip="$t('', '')"
@itemClick="handleItemClick">
:caption="索引选择视图"
:tooltip=""
@itemClick="handleButtonClick">
</app-preset-button>
</template>
<template #button_calluilogic1>
......@@ -266,18 +266,18 @@ export default class AppIndexViewBase extends Vue {
* @memberof AppIndexViewBase
*/
public layoutModelDetails:any = {
static_label1:new PanelRawitemModel({ name: 'static_label1', 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:''}, predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '标签', htmlContent: '', renderMode: 'PARAGRAPH', panel: this , viewType: 'APPINDEXVIEW' }),
app_apptitle:new PanelFieldModel({ name: 'app_apptitle', caption: '应用标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, fieldState: '0', panel: this }),
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, fieldState: '0', panel: this }),
static_label2:new PanelRawitemModel({ name: 'static_label2', caption: '标签', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', 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:''}, predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '标签爱仕达多', htmlContent: '', renderMode: 'PARAGRAPH', panel: this , viewType: 'APPINDEXVIEW' }),
static_text1:new PanelRawitemModel({ name: 'static_text1', caption: '文本', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', 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:''}, predefinedType: 'STATIC_TEXT', contentType: 'RAW', contentStyle: '', rawContent: '文本内容', htmlContent: '', renderMode: 'TEXT', panel: this , viewType: 'APPINDEXVIEW' }),
field_text_dynamic:new PanelFieldModel({ name: 'field_text_dynamic', caption: '文本(动态)', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, fieldState: '0', panel: this }),
field_switch:new PanelFieldModel({ name: 'field_switch', caption: '开关', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, fieldState: '0', panel: this }),
field_textbox:new PanelFieldModel({ name: 'field_textbox', caption: '文本框', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, fieldState: '0', panel: this }),
field_qrcode:new PanelFieldModel({ name: 'field_qrcode', caption: '二维码', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, fieldState: '0', panel: this }),
button_link1:new PanelButtonModel({ name: 'button_link1', caption: '页面链接', isShowCaption: true, sysCss: '', itemType: 'BUTTON', itemStyle: 'DEFAULT', sysImage:{ iconcls: 'fa fa-dropbox', imagePath:'', rawContent: '' }, 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:''}, buttonStyle: 'DEFAULT', iconAlign: '', renderMode: 'LINK', panel: this }),
button_openview1:new PanelButtonModel({ name: 'button_openview1', caption: '打开页面', isShowCaption: true, sysCss: '', itemType: 'BUTTON', 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:''}, buttonStyle: 'DEFAULT', iconAlign: '', renderMode: '', panel: this }),
button_calluilogic1:new PanelButtonModel({ name: 'button_calluilogic1', caption: '按钮', isShowCaption: true, sysCss: '', itemType: 'BUTTON', itemStyle: 'INFO', 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:''}, buttonStyle: 'INFO', iconAlign: '', renderMode: '', panel: this }),
static_label1:new PanelRawitemModel({ name: 'static_label1', 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:''}, panel: this , viewType: 'APPINDEXVIEW', predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '标签', htmlContent: '', renderMode: 'PARAGRAPH', }),
app_apptitle:new PanelFieldModel({ name: 'app_apptitle', caption: '应用标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, panel: this , fieldState: '0', }),
view_pagecaption:new PanelFieldModel({ name: 'view_pagecaption', caption: '页面标题', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, panel: this , fieldState: '0', }),
static_label2:new PanelRawitemModel({ name: 'static_label2', caption: '标签', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', 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:''}, panel: this , viewType: 'APPINDEXVIEW', predefinedType: 'STATIC_LABEL', contentType: 'RAW', contentStyle: '', rawContent: '标签爱仕达多', htmlContent: '', renderMode: 'PARAGRAPH', }),
static_text1:new PanelRawitemModel({ name: 'static_text1', caption: '文本', isShowCaption: true, sysCss: '', itemType: 'RAWITEM', 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:''}, panel: this , viewType: 'APPINDEXVIEW', predefinedType: 'STATIC_TEXT', contentType: 'RAW', contentStyle: '', rawContent: '文本内容', htmlContent: '', renderMode: 'TEXT', }),
field_text_dynamic:new PanelFieldModel({ name: 'field_text_dynamic', caption: '文本(动态)', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, panel: this , fieldState: '0', }),
field_switch:new PanelFieldModel({ name: 'field_switch', caption: '开关', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, panel: this , fieldState: '0', }),
field_textbox:new PanelFieldModel({ name: 'field_textbox', caption: '文本框', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, panel: this , fieldState: '0', }),
field_qrcode:new PanelFieldModel({ name: 'field_qrcode', caption: '二维码', isShowCaption: false, sysCss: '', itemType: 'FIELD', 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:''}, panel: this , fieldState: '0', }),
button_link1:new PanelButtonModel({ name: 'button_link1', caption: '页面链接', isShowCaption: true, sysCss: '', itemType: 'BUTTON', itemStyle: 'DEFAULT', sysImage:{ iconcls: 'fa fa-dropbox', imagePath:'', rawContent: '' }, 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:''}, panel: this , buttonStyle: 'DEFAULT', iconAlign: '', renderMode: 'LINK', }),
button_openview1:new PanelButtonModel({ name: 'button_openview1', caption: '打开页面', isShowCaption: true, sysCss: '', itemType: 'BUTTON', 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:''}, panel: this , buttonStyle: 'DEFAULT', iconAlign: '', renderMode: '', }),
button_calluilogic1:new PanelButtonModel({ name: 'button_calluilogic1', caption: '按钮', isShowCaption: true, sysCss: '', itemType: 'BUTTON', itemStyle: 'INFO', 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:''}, panel: this , buttonStyle: 'INFO', iconAlign: '', renderMode: '', }),
container_scroll_main1:new PanelContainerModel({ name: 'container_scroll_main1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'CENTER', layoutHeight:0, heightMode:'', layoutWidth:80, widthMode:'PERCENTAGE', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['app_apptitle','view_pagecaption','static_label2','static_text1','field_text_dynamic','field_switch','field_textbox','field_qrcode','button_link1','button_openview1','button_calluilogic1']}),
container_scroll_left1:new PanelContainerModel({ name: 'container_scroll_left1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'WEST', layoutHeight:0, heightMode:'', layoutWidth:20, widthMode:'PERCENTAGE', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:[]}),
container_scroll_header1:new PanelContainerModel({ name: 'container_scroll_header1', caption: '面板容器', titleBarCloseMode: 0, isShowCaption: true, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'BORDER', layoutPos:'NORTH', layoutHeight:80, heightMode:'PX', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:0, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:[]}),
......@@ -297,6 +297,16 @@ export default class AppIndexViewBase extends Vue {
this.layoutData[$event.name] = $event.value;
}
/**
* 处理按钮点击
*
* @public
* @memberof AppIndexViewBase
*/
public handleButtonClick($event: any) {
}
......
......@@ -5,31 +5,31 @@
<template #container1>
<app-standard-container name="container1" :layoutModelDetails="layoutModelDetails">
<template #userid>
<app-login-input v-model="formData.loginName" icon="ios-contact" :placeholder="$t('components.login.placeholder1')" />
<app-login-input class="app-login-user" name="userid" :model="layoutModelDetails.userid" :value="layoutData.userid" defaultIcon="ios-contact" @valueChange="handleValueChange" />
</template>
<template #auth_password>
<app-login-input v-model="formData.password" icon="ios-key" :placeholder="$t('components.login.placeholder2')" />
<app-login-input class="app-login-password" name="auth_password" :model="layoutModelDetails.auth_password" :value="layoutData.auth_password" defaultIcon="ios-key" @valueChange="handleValueChange" />
</template>
<template #auth_orgpick>
<app-login-org />
</template>
<template #auth_loginbutton1>
<app-login-button class="app-login-button" :model="layoutModelDetails.auth_loginbutton1" defaultStyle='primary' @itemClick="handleItemClick" />
<app-login-button class="app-login-button" :model="layoutModelDetails.auth_loginbutton1" defaultStyle='primary' @itemClick="handleButtonClick" />
</template>
<template #auth_registbutton1>
<app-preset-button
name="auth_registbutton1"
:layoutModelDetails="layoutModelDetails"
:caption="$t('', '注册')"
:tooltip="$t('', '')"
@itemClick="handleItemClick">
:caption="注册"
:tooltip=""
@itemClick="handleButtonClick">
</app-preset-button>
</template>
<template #auth_resetinput1>
<app-login-button class="app-reset-button" :model="layoutModelDetails.auth_resetinput1" defaultStyle='success' @itemClick="handleItemClick" />
<app-login-button class="app-reset-button" :model="layoutModelDetails.auth_resetinput1" defaultStyle='success' @itemClick="handleButtonClick" />
</template>
<template #auth_logout1>
<app-login-button class="app-logout-button" :model="layoutModelDetails.auth_logout1" @itemClick="handleItemClick" />
<app-login-button class="app-logout-button" :model="layoutModelDetails.auth_logout1" @itemClick="handleButtonClick" />
</template>
<template #auth_captcha1>
<app-login-captcha />
......@@ -255,16 +255,16 @@ export default class AppLoginViewBase extends Vue {
* @memberof AppLoginViewBase
*/
public layoutModelDetails:any = {
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:''}, fieldState: '0', 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:''}, fieldState: '2', 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:''}, fieldState: '0', 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', iconAlign: '', predefinedType: 'APP_LOGIN', renderMode: '', panel: this }),
auth_registbutton1:new PanelButtonModel({ name: 'auth_registbutton1', caption: '注册', isShowCaption: true, sysCss: '', itemType: 'BUTTON', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:50, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, buttonStyle: 'DEFAULT', iconAlign: '', renderMode: 'LINK', panel: this }),
auth_resetinput1:new PanelButtonModel({ name: 'auth_resetinput1', 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:''}, buttonStyle: 'DEFAULT', iconAlign: '', predefinedType: 'DATA_CANCELCHANGES', renderMode: '', panel: this }),
auth_logout1:new PanelButtonModel({ name: 'auth_logout1', 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:''}, buttonStyle: 'DEFAULT', iconAlign: '', predefinedType: 'APP_LOGOUT', renderMode: '', 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 , fieldState: '0', }),
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 , fieldState: '2', }),
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 , fieldState: '0', }),
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:''}, panel: this , buttonStyle: 'PRIMARY', iconAlign: '', predefinedType: 'APP_LOGIN', renderMode: '', }),
auth_registbutton1:new PanelButtonModel({ name: 'auth_registbutton1', caption: '注册', isShowCaption: true, sysCss: '', itemType: 'BUTTON', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'', layoutPos:'', layoutHeight:50, heightMode:'PERCENTAGE', layoutWidth:0, widthMode:'', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , buttonStyle: 'DEFAULT', iconAlign: '', renderMode: 'LINK', }),
auth_resetinput1:new PanelButtonModel({ name: 'auth_resetinput1', 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:''}, panel: this , buttonStyle: 'DEFAULT', iconAlign: '', predefinedType: 'DATA_CANCELCHANGES', renderMode: '', }),
auth_logout1:new PanelButtonModel({ name: 'auth_logout1', 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:''}, panel: this , buttonStyle: 'DEFAULT', iconAlign: '', predefinedType: 'APP_LOGOUT', renderMode: '', }),
auth_captcha1:new PanelUserControlModel({ name: 'auth_captcha1', caption: '人机识别', isShowCaption: true, sysCss: '', itemType: 'USERCONTROL', 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_verificationcode:new PanelFieldModel({ name: 'auth_verificationcode', 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:''}, fieldState: '0', panel: this }),
auth_loginmsg:new PanelFieldModel({ name: 'auth_loginmsg', 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:''}, fieldState: '0', panel: this }),
auth_verificationcode:new PanelFieldModel({ name: 'auth_verificationcode', 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 , fieldState: '0', }),
auth_loginmsg:new PanelFieldModel({ name: 'auth_loginmsg', 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 , fieldState: '0', }),
auth_sso1:new PanelUserControlModel({ name: 'auth_sso1', caption: '第三方登陆', isShowCaption: true, sysCss: '', itemType: 'USERCONTROL', 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 }),
container1:new PanelContainerModel({ name: 'container1', caption: '容器', titleBarCloseMode: 0, isShowCaption: false, sysCss: '', itemType: 'CONTAINER', itemStyle: 'DEFAULT', visible: true, disabled: false, layout:'FLEX', layoutPos:'', layoutHeight:0, heightMode:'', layoutWidth:600, widthMode:'PX', spacingBottom:'', spacingLeft:'', spacingRight:'', spacingTop:'', hAlignSelf:'CENTER', vAlignSelf:'', flexGrow:-1, flexParams:{align:'',dir:'',vAlign:''}, panel: this , details:['userid','auth_password','auth_orgpick','auth_loginbutton1','auth_registbutton1','auth_resetinput1','auth_logout1','auth_captcha1','auth_verificationcode','auth_loginmsg','auth_sso1']}),
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']})
......@@ -283,6 +283,16 @@ export default class AppLoginViewBase extends Vue {
this.layoutData[$event.name] = $event.value;
}
/**
* 处理按钮点击
*
* @public
* @memberof AppLoginViewBase
*/
public handleButtonClick($event: any) {
}
/**
......@@ -750,7 +760,7 @@ export default class AppLoginViewBase extends Vue {
* 处理项点击
* @param AppLoginViewBase
*/
handleItemClick(key: string) {
handleButtonClick(key: string) {
}
......
......@@ -12,3 +12,4 @@ export { UIActionTool } from './uiaction-tool/uiaction-tool';
export { LoadAppData } from './load-app-data/load-app-data';
export { Interceptors } from './interceptor/interceptor';
export { StudioActionUtil } from './studio-action/StudioActionUtil';
export { ImgurlBase64 } from './util/imgurl-base64';
\ No newline at end of file
import axios from 'axios';
export class ImgurlBase64{
/**
* 单例变量声明
*
* @memberof ImgurlBase64
*/
private static imgurlBase64: ImgurlBase64;
/**
* 图片缓存(加载中)
*
* @type {Map<string,any>}
* @memberof ImgurlBase64
*/
public static imgCache: Map<string, any> = new Map();
/**
* 图片缓存(已完成)
*
* @type {Map<string,any>}
* @memberof ImgurlBase64
*/
public static imgCached: Map<string, any> = new Map();
/**
* 获取 ImgurlBase64 单例对象
*
* @memberof ImgurlBase64
*/
public static getInstance() {
if (!this.imgurlBase64) {
this.imgurlBase64 = new ImgurlBase64();
}
return this.imgurlBase64;
}
/**
* 手动获取图片
*
*
* @param url 图片url路径
* @returns
*/
public async getImgURLOfBase64(url: string) {
return new Promise((resolve, reject) => {
let img = '/';
// 富文本CV上传图片与鼠标移出抛值冲突问题,上传成功回调还没执行时就抛值
var reg = /^\s*data:([a-z]+\/[a-z0-9-+.]+(;[a-z-]+=[a-z0-9-]+)?)?(;base64)?,([a-z0-9!$&',()*+;=\-._~:@\/?%\s]*?)\s*$/i;
if (reg.test(url)) {
return resolve(url);
}
// 缓存中有从缓存中拿
if (ImgurlBase64.imgCached.get(url)) {
let img = ImgurlBase64.imgCached.get(url);
resolve(img);
}
const callback: Function = (url: string, promise: Promise<any>) => {
promise.then((response: any) => {
if (response && response.status === 200 && response.data) {
// 获取文件名
const disposition = response.headers['content-disposition'];
const filename = disposition.split('filename=')[1];
let type = 'image/png';
if (filename && filename.indexOf('.') > 0) {
const start = filename.lastIndexOf('.');
const expandedName = filename.substring(start + 1);
if (expandedName.match(/(bmp|jpg|jpeg|png|tif|gif|pcx|tga|exif|fpx|svg|psd|cdr|pcd|dxf|ufo|eps|ai|raw|WMF|webp)/gi) != null) {
type = 'image/' + expandedName;
} else {
resolve(img);
}
}
let blob = new Blob([response.data],{type: type});
this.blobToBase64(blob).then((res) => {
// 转化后的base64
img = `${res}`;
// 缓存图片
ImgurlBase64.imgCached.set(url, img);
resolve(img);
})
} else {
resolve(img);
}
}).catch((result: any) => {
return resolve(img);
})
}
// 加载中
if (ImgurlBase64.imgCache.get(url)) {
callback(url, ImgurlBase64.imgCache.get(url));
} else {
let _url = url;
if (!Object.is('/', _url.substring(0,1))) {
_url = '/'+_url;
}
let result:Promise<any> = axios({method: 'get', url: _url, responseType: 'blob'});
ImgurlBase64.imgCache.set(url, result);
callback(url, result);
}
});
}
/**
* 将blob转为base64
*
*
* @param blob blob对象
* @returns
*/
public blobToBase64(blob: any) {
return new Promise((resolve, reject) => {
const fileReader = new FileReader();
fileReader.onload = (e: any) => {
resolve(e.target.result);
};
// readAsDataURL
fileReader.readAsDataURL(blob);
fileReader.onerror = () => {
reject(new Error('blobToBase64 error'));
};
});
}
}
\ No newline at end of file
......@@ -663,7 +663,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: 'IBIZBOOKUsr3GridView' + (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 };
......@@ -699,7 +699,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: 'IBIZBOOKUsr3GridView' + (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 } ;
......
......@@ -214,17 +214,24 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public selection: any = {};
public menuItems: any[] = [
public items: any[] = [
{
caption: '详细信息',
id: 'a7c7923d37319b42645a41908d62bae9',
name: 'a7c7923d37319b42645a41908d62bae9',
codeName: 'a7c7923d37319b42645a41908d62bae9',
hidden: false,
items: this.items.find((item: any) => item.groupCodeName === 'a7c7923d37319b42645a41908d62bae9')
},
{
items: [
{
text: "订单明细",
disabled: false,
id: "dritem2",
groupCodeName: 'a7c7923d37319b42645a41908d62bae9',
drView: 'ibizorder-detail-sgrid-view',
localContext:{CONTEXTPARAM1:"%orderstate%"},
localViewParam:{param2:"%orderstate%"}
},
]
},
]
......@@ -292,8 +299,10 @@ export default class DefaultBase extends Vue implements ControlInterface {
return;
}
if (Object.is('state', action)) {
const state = !this.context.ibizorder ? true : false;
this.setItemDisabled(this.items, state);
this.handleFormChange(data);
}
if (Object.is('change', action)) {
this.selection = data;
}
});
}
......@@ -323,28 +332,6 @@ export default class DefaultBase extends Vue implements ControlInterface {
}
}
/**
* 获取关系项
*
* @public
* @param {*} [arg={}]
* @returns {*}
* @memberof DefaultBase
*/
public getDRBarItem(arg: any = {}): any {
let expmode = arg.nodetype;
if (!expmode) {
expmode = '';
}
if (Object.is(expmode, 'dritem2')) {
return {
viewname: 'ibizorder-detail-sgrid-view',
parentdatajo: {},
};
}
return undefined;
}
/**
* 处理数据
*
......@@ -392,67 +379,62 @@ export default class DefaultBase extends Vue implements ControlInterface {
return item;
}
/**
* 初始化导航参数
*
* @param {*} drItem
* @memberof DefaultBase
*/
public initNavParam(drItem:any){
// let returnNavParam:any = {};
// if(drItem && drItem.id){
// let curDRItem:any = this.navParamsArray.find((item:any) =>{
// return Object.is(item.id,drItem.id);
// })
// if(curDRItem){
// let localContext:any = curDRItem.localContext;
// let localViewParam:any = curDRItem.localViewParam;
// if(localContext && Object.keys(localContext).length >0){
// let _context:any = this.$util.computedNavData(this.formData,this.context,this.viewparams,localContext);
// returnNavParam.localContext = _context;
// }
// if(localViewParam && Object.keys(localViewParam).length >0){
// let _params:any = this.$util.computedNavData(this.formData,this.context,this.viewparams,localViewParam);
// returnNavParam.localViewParam = _params;
// }
// return returnNavParam;
// }else{
// return null;
// }
// }
}
/**
* 节点选中
*
* @param {*} $event
* @memberof DefaultBase
*/
public onSelect($event: any): void {
public onSelect(key: string): void {
if (key === this.selection.id) {
return;
}
const selectItem = this.getItem(this.items, key);
if (!selectItem) {
return;
}
const tempContext = Util.deepCopy(this.context);
const tempViewParams = Util.deepCopy(this.viewparams);
if (selectItem.localContext && Object.keys(selectItem.localContext).length > 0) {
const _context: any = this.$util.computedNavData(this.formData, tempContext, tempViewParams, selectItem.localContext);
Object.assign(tempContext, _context);
}
if (this.formData.srfparentkey) {
Object.assign(tempContext, { srfparentkey: this.formData.srfparentkey });
Object.assign(tempViewParams, { srfparentkey: this.formData.srfparentkey });
}
if (selectItem.localViewParam && Object.keys(selectItem.localViewParam).length > 0) {
const _params: any = this.$util.computedNavData(this.formData, tempContext, tempViewParams, selectItem.localViewParam);
Object.assign(tempViewParams, _params);
}
if (this.formData.srfparentdename) {
Object.assign(tempContext, { srfparentdename: this.formData.srfparentdename });
Object.assign(tempViewParams, { srfparentdename: this.formData.srfparentdename });
}
const drItem = {
id: selectItem.id,
drView: selectItem.drView,
srfnavdata: {
context: tempContext,
viewparams: tempViewParams
}
}
this.$emit('selectionchange', drItem);
}
// this.$emit('selectionchange', [item]);
// let localNavParam:any = this.initNavParam(item);
// const refview = this.getDRBarItem({ nodetype: item.id });
// this.selection = {};
// const _context: any = { ...JSON.parse(JSON.stringify(this.context)) };
// if(localNavParam && localNavParam.localContext){
// Object.assign(_context,localNavParam.localContext);
// }
// const _params: any = {};
// if(localNavParam && localNavParam.localViewParam){
// Object.assign(_params,localNavParam.localViewParam);
// }
// if (refview && refview.parentdatajo) {
// Object.assign(_context, refview.parentdatajo);
// Object.assign(this.selection, { view: { viewname: refview.viewname }, data: _context, param: _params });
// }
// Object.assign(this.selection, item);
/**
* 处理表单变化
*
* @param {*} $event
* @memberof DefaultBase
*/
public handleFormChange(args: any) {
if (args && Object.is(args.srfuf, '1')) {
this.setDisabled(this.items, false);
} else {
this.setDisabled(this.items, true);
}
this.formData = args;
}
/**
......@@ -492,21 +474,17 @@ export default class DefaultBase extends Vue implements ControlInterface {
}
/**
* 设置关系项状态
* 设置禁用状态
*
* @param {any[]} items
* @param {boolean} state
* @memberof DefaultBase
*/
public setItemDisabled(items: any[], state: boolean) {
public setDisabled(items: any[], state: boolean) {
items.forEach((item: any) => {
if (!Object.is(item.id, 'form')) {
item.disabled = state;
item.disabled = state;
if (item && item.items && item.items.length > 0) {
this.setDisabled(item.items, state);
}
if (item.items && Array.isArray(item.items)) {
this.setItemDisabled(item.items, state);
}
});
})
}
}
......
......@@ -55,23 +55,6 @@
git clone -b master $para2 demosys/
export NODE_OPTIONS=--max-old-space-size=4096
cd demosys/
cd demo-boot
mvn ibizlabcli:code
cd ..
set +e
git config user.name "ibizdev"
git add .
git commit -m "generator before deploy $para5"
git push origin master
git config user.name "root"
set -e
mvn package -Pboot
cd demo-boot
sed -i "s#dstimage#$para5#g" pom.xml
sed -i "s#dstimage#$para5#g" src/main/docker/demo-boot-demoapi.yaml
mvn -Pboot docker:build
mvn -Pboot docker:push
docker -H $para1 stack deploy --compose-file=src/main/docker/demo-boot-demoapi.yaml iBizDemo --with-registry-auth
</command>
</hudson.tasks.Shell>
</builders>
......
......@@ -10,6 +10,6 @@ CMD echo "The application will start in ${IBIZ_SLEEP}s..." && \
sleep ${IBIZ_SLEEP} && \
java ${JAVA_OPTS} -Duser.timezone=$TZ -Djava.security.egd=file:/dev/./urandom -jar /demo-boot.jar
EXPOSE 51000
EXPOSE 8081
ADD demo-boot.jar /demo-boot.jar
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册