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

zhujiamin 发布系统代码 [TrainSys,网页端]

上级 cc738085
......@@ -40,6 +40,7 @@ import { WizardViewEngine } from "./wizard-view-engine";
import { MPickupView2Engine } from "./mpickup-view2-engine";
import { PickupView3Engine } from "./pickup-view3-engine";
import { EditView9Engine } from "./edit-view9-engine";
import { GridView9Engine } from "./grid-view9-engine";
export class appEngineService{
......@@ -56,6 +57,8 @@ export class appEngineService{
return new GridViewEngine();
case 'DEGRIDVIEW4':
return new GridView4Engine();
case 'DEGRIDVIEW9':
return new GridView9Engine();
case 'DEEDITVIEW':
return new EditViewEngine();
case 'DEEDITVIEW9':
......
......@@ -18,6 +18,15 @@ export class ExpViewEngine extends ViewEngine {
*/
protected expBar: any = null;
/**
* 是否真正选中
*
* @protected
* @type {boolean}
* @memberof ExpViewEngine
*/
protected isRealSelected: boolean = false;
/**
* 是否关闭导航视图
*
......@@ -67,6 +76,17 @@ export class ExpViewEngine extends ViewEngine {
this.isCloseNavView = true;
}
/**
* 处理导航视图重绘(有选中项,且导航视图需要刷新则通知嵌入导航视图执行刷新逻辑)
*
* @memberof ExpViewEngine
*/
public handleNavViewRefresh(tag: string) {
if (this.view && this.view.viewState && this.isRealSelected) {
this.setViewState2({ tag, action: 'load', viewdata: this.view.viewparams });
}
}
/**
* 事件处理
*
......@@ -107,6 +127,18 @@ export class ExpViewEngine extends ViewEngine {
if (this.view.backSplit !== 0) {
this.view.split = this.view.backSplit;
}
// 计算真实选中值
if (args && args.data && args.data[0]) {
const selectedData = args.data[0];
const result = Object.keys(selectedData).find((key: string) => {
return selectedData[key] !== null && key !== 'srfchecked';
})
if(result){
this.isRealSelected = true;
}else{
this.isRealSelected = false;
}
}
this.view.$forceUpdate();
}
this.emitViewEvent('viewdataschange', args?.data);
......
......@@ -84,6 +84,11 @@ export class ViewEngine {
*/
public load(opts: any = {}): void {
Object.assign(this.view.viewparams, opts);
if(!this.isLoadDefault && this.view && this.view.isNavView){
this.view.renderNoDataShade();
}else{
this.view.removeNoDataShade();
}
}
/**
......
......@@ -728,6 +728,23 @@ export class Util {
})
}
/**
* 元素选择器
* @param tag (id选择/class类名选择/css元素选择)
*/
public static selector(tag: string) {
// id选择直接返回
if (document.getElementById(tag)) {
return document.getElementById(tag);
}
// class选择返回找到的第一个元素
if (document.getElementsByClassName(tag)) {
return document.getElementsByClassName(tag)[0];
}
// 通过css元素器获取第一个符合条件的元素
return document.querySelector(tag);
}
}
/**
* 创建 UUID
......
import { IPSAppDEUIAction } from '@ibiz/dynamic-model-api';
import { PluginService } from 'ibiz-core';
import { AppBackEndAction } from './app-backend-action';
import { AppCustomAction } from './app-custom-action';
import { AppFrontAction } from './app-front-action';
import { AppSysAction } from './app-sys-action';
......@@ -39,6 +40,8 @@ export class AppActionFactory {
return new AppBackEndAction(modelData, context);
case 'SYS':
return new AppSysAction(modelData, context);
case 'CUSTOM':
return new AppCustomAction(modelData, context);
default:
return undefined;
}
......
import { LogUtil, Util } from 'ibiz-core';
import { AppDEUIAction } from './app-ui-action';
export class AppCustomAction extends AppDEUIAction {
/**
* 初始化AppCustomAction
*
* @memberof AppCustomAction
*/
constructor(opts: any, context?: any) {
super(opts, context);
}
/**
* 执行界面行为
*
* @param args
* @param context
* @param params
* @param $event
* @param xData
* @param actionContext
* @param srfParentDeName
*
* @memberof AppCustomAction
*/
public async execute(
args: any[],
context: any = {},
params: any = {},
$event?: any,
xData?: any,
actionContext?: any,
srfParentDeName?: string,
deUIService?: any,
) {
// 自定义脚本
if (this.actionModel && this.actionModel.scriptCode) {
// 准备自定义脚本数据(context:应用上下文,params:视图参数,data:业务数据)
const data = args;
const selector = Util.selector;
eval(this.actionModel.scriptCode);
} else {
LogUtil.warn(`自定义界面行为暂未实现`);
}
}
}
......@@ -2,4 +2,5 @@ export { AppBackEndAction } from './app-backend-action';
export { AppFrontAction } from './app-front-action';
export { AppActionFactory } from './app-action-factory';
export { AppSysAction } from './app-sys-action';
export { AppCustomAction } from './app-custom-action';
export * from './appuilogic';
\ No newline at end of file
......@@ -8,7 +8,7 @@
<i v-if="getIconClass(item)" :class="getIconClass(item)"></i>
<img v-if="isIconImage(item)" :src="item.imgUrlBase64" />
<span :class="getTextClass(item)" :style="{ color: item.color }">
{{ item.value || item.value == 0 ? ($t(item.text) || item.text) : items.length == 1 ? '- - -' : ''}}
{{ item.text ? ($t(item.text) || item.text) : items.length == 1 ? '- - -' : ''}}
</span>
<span v-if="index != items.length-1">{{ textSeparator }}</span>
</span>
......
......@@ -420,12 +420,17 @@ export class AppmenuBase extends AppMenuControlBase {
<el-submenu popper-class="app-popper-menu" v-show={!item.hidden} index={item?.name}>
<template slot='title'>{item.caption}</template>
{item.getPSAppMenuItems.map((item1: any) => (
<el-menu-item v-show={!item1.hidden} index={item1?.name}>
{this.$tl(item1.captionTag, item1.caption)}
<badge
count={this.counterdata ? this.counterdata[item1.counterid] : null}
overflow-count={9999}
></badge>
<el-menu-item v-show={!item1.hidden} index={item1?.name} class={{ 'seperator': Object.is(item1.itemType, 'SEPERATOR')}}>
{
!Object.is(item1.itemType, 'SEPERATOR') ?
[
this.$tl(item1.captionTag, item1.caption),
<badge
count={this.counterdata ? this.counterdata[item1.counterid] : null}
overflow-count={9999}
></badge>
] : <divider />
}
</el-menu-item>
))}
</el-submenu>
......
......@@ -104,7 +104,7 @@ export class AppTabExpPanelBase extends TabExpPanelBase {
return (
<tab-pane lazy={true} name={tabViewPanel.name} tab={tabsName} disabled={disabled}
label={(h: any) => {
return h('div', [
return h('div', { class: tabViewPanel.getPSSysCss()?.cssName }, [
IPSSysImage ? IPSSysImage.imagePath ?
h('img', {
src: IPSSysImage.imagePath,
......
......@@ -244,6 +244,9 @@
height: 40px;
line-height: 40px;
}
.el-menu-item.seperator {
height: auto !important;
}
.el-menu-item {
.ivu-badge {
.ivu-badge-count {
......
......@@ -807,7 +807,7 @@ export class ControlContainer extends Vue {
}
/**
* 绘制遮罩
* 绘制权限遮罩
*
* @memberof ControlContainer
*/
......@@ -822,6 +822,60 @@ export class ControlContainer extends Vue {
}
}
/**
* 删除权限遮罩
*
* @memberof ControlContainer
*/
public removeShade() {
const currentViewKey = `${this.containerModel.codeName}`;
const el: any = currentViewKey ? document.getElementById(currentViewKey) : null;
if (el) {
el.classList.remove('no-authority-shade');
const targetElement = document.getElementsByClassName("no-authority-shade-child")[0];
if(targetElement){
el.removeChild(targetElement);
}
}
}
/**
* 绘制无数据遮罩
*
* @memberof ControlContainer
*/
public renderNoDataShade() {
const currentViewKey = `${this.containerModel.codeName}`;
const el: any = currentViewKey ? document.getElementById(currentViewKey) : null;
if (el) {
el.classList.add('no-nodata-shade');
const shade = document.createElement('div');
shade.setAttribute('class', 'no-nodata-shade-child');
const span = document.createElement('span');
span.setAttribute('class', 'empty-data-shade-tip')
span.append(`${this.$t('app.commonwords.nodata')}`);
shade.appendChild(span);
el.appendChild(shade);
}
}
/**
* 删除权限遮罩
*
* @memberof ControlContainer
*/
public removeNoDataShade() {
const currentViewKey = `${this.containerModel.codeName}`;
const el: any = currentViewKey ? document.getElementById(currentViewKey) : null;
if (el) {
el.classList.remove('no-nodata-shade');
const targetElement = document.getElementsByClassName("no-nodata-shade-child")[0];
if(targetElement){
el.removeChild(targetElement);
}
}
}
/**
* 应用实体代码名称
*
......
......@@ -166,7 +166,9 @@ export class ExpViewBase extends MainViewBase implements ExpViewInterface {
const navViewParam = this.navItem.srfnavdata ? this.navItem.srfnavdata.viewparams : {};
const targetCtrlParam: any = {
staticProps: {
viewDefaultUsage: false
viewDefaultUsage: false,
inputState: this.viewState,
isNavView: true
},
dynamicProps: {
viewdata: JSON.stringify(navContext),
......@@ -175,13 +177,18 @@ export class ExpViewBase extends MainViewBase implements ExpViewInterface {
}
return this.$createElement('app-view-shell', {
class: "viewcontainer2",
key: navContext.viewpath,
key: Util.createUUID(),
props: targetCtrlParam,
on: {
close: (data: any) => {
if (this.engine) {
this.engine.closeNavView();
}
},
viewNeedRefresh: (data: any, tag: string) => {
if (this.engine) {
this.engine.handleNavViewRefresh(tag);
}
}
}
});
......@@ -211,7 +218,7 @@ export class ExpViewBase extends MainViewBase implements ExpViewInterface {
v-model={this.split}
class={[
"exp-view",
`exp-view-${this.viewInstance.sideBarLayout ? this.viewInstance.sideBarLayout.toLowerCase() : 'left'}`
`exp-view-${this.viewInstance.sideBarLayout ? this.viewInstance.sideBarLayout.toLowerCase() : 'left'}`
]}
mode={this.viewInstance.sideBarLayout === 'TOP' ? 'vertical' : 'horizontal'}
on-on-move-end={() => this.handleSplitChange()}>
......
......@@ -64,6 +64,14 @@ export class ViewBase extends ControlContainer implements ViewInterface {
*/
public viewDefaultUsage!: boolean;
/**
* 是否为嵌入导航视图
*
* @type {boolean}
* @memberof ViewBase
*/
public isNavView:boolean = false;
/**
* 视图默认加载
*
......@@ -347,6 +355,7 @@ export class ViewBase extends ControlContainer implements ViewInterface {
this.cacheRoutePath = this.$route.fullPath;
this.isLoadDefault = data.isLoadDefault ? true : false;
this.viewDefaultUsage = data.viewDefaultUsage !== false;
this.isNavView = data.isNavView == true;
this.noViewCaption = data.noViewCaption == true;
this.viewtag = data.viewtag;
this.inputState = data.inputState;
......@@ -982,12 +991,12 @@ export class ViewBase extends ControlContainer implements ViewInterface {
* @memberof ViewBase
*/
public closeViewWithDefault(view: any) {
const microAppService = AppServiceBase.getInstance().getMicroAppService();
const microAppService = AppServiceBase.getInstance().getMicroAppService();
if (microAppService && microAppService.getIsMicroApp()) {
const data = {};
Object.assign(data, { microAppName: this.Environment.microAppName, fullPath: view.$route.fullPath });
microAppService.noticeBaseApp({ action: 'REMOVE_PAGE', data })
}else{
} else {
view.$store.commit("deletePage", view.$route.fullPath);
const length = view.$store.state.historyPathList.length;
if (length > 0) {
......@@ -1034,18 +1043,22 @@ export class ViewBase extends ControlContainer implements ViewInterface {
} else {
super.containerMounted();
const _this: any = this;
this.$emit('view-event', { viewname: this.viewInstance.name, action: 'viewIsMounted', data: true })
this.$emit('view-event', { viewname: this.viewInstance.name, action: 'viewIsMounted', data: true });
this.handleContainerPreEvent('onViewMounted').then((result: boolean) => {
if (!result) {
return;
}
if (this.engine) {
this.engineInit();
if(this.engine.loadModel instanceof Function) {
if (this.engine.loadModel instanceof Function) {
this.engine.loadModel();
}
}
this.$emit('view-event', { viewName: this.viewInstance.codeName, action: 'viewIsInited', data: null });
// 默认不加载,需要重新刷新视图(导航视图专用)
if (this.viewInstance && ((this.viewInstance as any).loadDefault === false)) {
this.$emit('view-event', { viewName: this.viewInstance.name, action: 'viewNeedRefresh', data: true });
}
})
}
}
......
......@@ -158,6 +158,50 @@ html, body{
}
/*** END:权限遮罩 ***/
/*** BRGIN:无数据遮罩 ***/
.no-nodata-shade {
position: relative;
height: 100%;
& :first-child {
filter: blur(2px);
}
.no-nodata-shade-child {
height: 100%;
width: 100%;
position: absolute;
top: 0;
background-color: rgba(125,125,125, .3);
background-image: url("/assets/img/empty-data.svg");
background-repeat: no-repeat;
background-position: center;
.empty-data-shade-tip {
filter: brightness(1);
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50px, 90px);
font-size: 20px;
}
&+.no-nodata-shade-child {
display: none;
}
}
.no-nodata-shade {
& :first-child {
filter: none;
}
.no-nodata-shade-child {
display: none;
}
}
}
.app-modal .ivu-modal .ivu-modal-content .ivu-modal-body{
.no-nodata-shade {
position: relative !important;
}
}
/*** END:无数据遮罩 ***/
.grid-row-select {
background-color: var(--ctrl-font-color-bright) !important;
td {
......
......@@ -50,7 +50,7 @@
</changeSet>
<!--输出实体[BOOK]数据结构 -->
<changeSet author="root" id="tab-book-170-3">
<changeSet author="root" id="tab-book-171-3">
<createTable tableName="T_BOOK">
<column name="BOOKNAME" remarks="" type="VARCHAR(200)">
</column>
......@@ -229,7 +229,7 @@
</changeSet>
<!--输出实体[REGINFOF]数据结构 -->
<changeSet author="root" id="tab-reginfof-33-9">
<changeSet author="root" id="tab-reginfof-34-9">
<createTable tableName="T_REGINFOF">
<column name="REGINFOFID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_REGINFOF"/>
......
......@@ -1759,6 +1759,13 @@
"logicName" : "更新",
"name" : "UPDATE"
} ],
"getAllPSDEPrints" : [ {
"codeName" : "Print",
"name" : "PRINT",
"reportFile" : "#",
"reportType" : "JR",
"id" : "PSMODULES/common/PSDATAENTITIES/Reginfof/PSDEPRINTS/Print.json"
} ],
"getAllPSDEUserRoles" : [ {
"dynaModelFilePath" : "PSMODULES/common/PSDATAENTITIES/Reginfof/PSDEUSERROLES/ALL_R.json",
"name" : "全部数据(读)",
......
{
"codeName" : "Print",
"name" : "PRINT",
"reportFile" : "#",
"reportType" : "JR",
"id" : "PSMODULES/common/PSDATAENTITIES/Reginfof/PSDEPRINTS/Print.json"
}
\ No newline at end of file
......@@ -141,6 +141,13 @@
"name" : "FIELD6",
"codeName" : "Field6"
}
}, {
"id" : "field18",
"dataType" : 25,
"getPSAppDEField" : {
"name" : "FIELD18",
"codeName" : "Field18"
}
}, {
"id" : "field7",
"dataType" : 25,
......@@ -535,15 +542,14 @@
},
"getPSEditor" : {
"editorParams" : {
"isDrag" : "true",
"accept" : "image/*",
"MAXFILECNT" : "",
"MINFILECNT" : "",
"exportparams" : "{'test1':'%field16%','test2':'%field17%'}",
"uploadparams" : "{'test1':'%field16%','test2':'%field17%'} ",
"multiple" : "true",
"FILEEXTS" : "",
"exportparams" : "{'test1':'%field16%','test2':'%field17%'}",
"accept" : "image/*",
"MAXFILESIZE" : "",
"uploadparams" : "{'test1':'%field16%','test2':'%field17%'} ",
"multiple" : "true"
"MINFILECNT" : "",
"MAXFILECNT" : ""
},
"editorType" : "FILEUPLOADER",
"maxFileCount" : -1,
......@@ -557,6 +563,35 @@
},
"allowEmpty" : true,
"showCaption" : true
}, {
"caption" : "图片上传",
"codeName" : "field18",
"dataType" : 25,
"detailStyle" : "DEFAULT",
"detailType" : "FORMITEM",
"enableCond" : 3,
"ignoreInput" : 0,
"labelPos" : "LEFT",
"labelWidth" : 130,
"name" : "field18",
"noPrivDisplayMode" : 1,
"getPSAppDEField" : {
"name" : "FIELD18",
"codeName" : "Field18"
},
"getPSEditor" : {
"editorType" : "PICTURE",
"maxFileCount" : -1,
"maxFileSize" : -1,
"minFileCount" : 0,
"name" : "field18"
},
"getPSLayoutPos" : {
"colMD" : 24,
"layout" : "TABLE_24COL"
},
"allowEmpty" : true,
"showCaption" : true
}, {
"caption" : "HTML",
"codeName" : "field7",
......
......@@ -752,6 +752,11 @@
"requestPath" : "/select",
"builtinMethod" : false
} ],
"getAllPSAppDEPrints" : [ {
"codeName" : "Print",
"name" : "PRINT",
"reportType" : "JR"
} ],
"getAllPSDEOPPrivs" : [ {
"logicName" : "建立",
"name" : "CREATE"
......
......@@ -713,6 +713,51 @@
},
"showCaption" : true,
"showIcon" : true
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.PRINT"
},
"caption" : "打印",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "tbitem15",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_tbitem15"
},
"getPSSysImage" : {
"glyph" : "xf02f@FontAwesome",
"cssClass" : "fa fa-print"
},
"getPSUIAction" : {
"actionTarget" : "SINGLEKEY",
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.PRINT"
},
"caption" : "打印",
"codeName" : "Print",
"fullCodeName" : "Print",
"name" : "编辑界面_打印操作",
"getPSSysImage" : {
"glyph" : "xf02f@FontAwesome",
"cssClass" : "fa fa-print"
},
"predefinedType" : "EDITVIEW_PRINTACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.PRINT"
},
"uIActionMode" : "SYS",
"uIActionTag" : "Print",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "打印",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.PRINT"
},
"showCaption" : true,
"showIcon" : true
}, {
"itemType" : "SEPERATOR",
"name" : "tbitem16",
......
......@@ -1323,6 +1323,55 @@
"itemType" : "SEPERATOR",
"name" : "tbitem10",
"spanMode" : false
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.PRINT"
},
"caption" : "打印",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "tbitem11",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_tbitem11"
},
"getPSSysImage" : {
"glyph" : "xf02f@FontAwesome",
"cssClass" : "fa fa-print"
},
"getPSUIAction" : {
"actionTarget" : "MULTIKEY",
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.PRINT"
},
"caption" : "打印",
"codeName" : "Print",
"fullCodeName" : "Print",
"name" : "表格界面_打印操作",
"getPSSysImage" : {
"glyph" : "xf02f@FontAwesome",
"cssClass" : "fa fa-print"
},
"predefinedType" : "GRIDVIEW_PRINTACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.PRINT"
},
"uIActionMode" : "SYS",
"uIActionTag" : "Print",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "打印",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.PRINT"
},
"showCaption" : true,
"showIcon" : true
}, {
"itemType" : "SEPERATOR",
"name" : "tbitem12",
"spanMode" : false
}, {
"caption" : "其它",
"itemType" : "ITEMS",
......
......@@ -262,6 +262,13 @@
"name" : "FIELD6",
"codeName" : "Field6"
}
}, {
"id" : "field18",
"dataType" : 25,
"getPSAppDEField" : {
"name" : "FIELD18",
"codeName" : "Field18"
}
}, {
"id" : "field7",
"dataType" : 25,
......@@ -656,15 +663,14 @@
},
"getPSEditor" : {
"editorParams" : {
"isDrag" : "true",
"accept" : "image/*",
"MAXFILECNT" : "",
"MINFILECNT" : "",
"exportparams" : "{'test1':'%field16%','test2':'%field17%'}",
"uploadparams" : "{'test1':'%field16%','test2':'%field17%'} ",
"multiple" : "true",
"FILEEXTS" : "",
"exportparams" : "{'test1':'%field16%','test2':'%field17%'}",
"accept" : "image/*",
"MAXFILESIZE" : "",
"uploadparams" : "{'test1':'%field16%','test2':'%field17%'} ",
"multiple" : "true"
"MINFILECNT" : "",
"MAXFILECNT" : ""
},
"editorType" : "FILEUPLOADER",
"maxFileCount" : -1,
......@@ -678,6 +684,35 @@
},
"allowEmpty" : true,
"showCaption" : true
}, {
"caption" : "图片上传",
"codeName" : "field18",
"dataType" : 25,
"detailStyle" : "DEFAULT",
"detailType" : "FORMITEM",
"enableCond" : 3,
"ignoreInput" : 0,
"labelPos" : "LEFT",
"labelWidth" : 130,
"name" : "field18",
"noPrivDisplayMode" : 1,
"getPSAppDEField" : {
"name" : "FIELD18",
"codeName" : "Field18"
},
"getPSEditor" : {
"editorType" : "PICTURE",
"maxFileCount" : -1,
"maxFileSize" : -1,
"minFileCount" : 0,
"name" : "field18"
},
"getPSLayoutPos" : {
"colMD" : 24,
"layout" : "TABLE_24COL"
},
"allowEmpty" : true,
"showCaption" : true
}, {
"caption" : "HTML",
"codeName" : "field7",
......
{
"accUserMode" : 0,
"codeName" : "AppPortalView2",
"dynaModelFilePath" : "PSSYSAPPS/Web/PSAPPPORTALVIEWS/AppPortalView2.json",
"name" : "AppPortalView2",
"getPSControls" : [ {
"codeName" : "AppPortalView2_db",
"controlType" : "DASHBOARD",
"name" : "dashboard",
"getPSControlHandler" : {
"enableDEFieldPrivilege" : false,
"id" : "dashboard"
},
"getPSControlParam" : {
"autoLoad" : true,
"showBusyIndicator" : true
},
"getPSLayout" : {
"columnCount" : 24,
"layout" : "TABLE_24COL"
},
"enableCustomized" : false,
"modelid" : "8C32C338-C7EF-486B-AC24-54EC274400E6",
"modeltype" : "PSSYSDASHBOARD"
} ],
"getPSViewLayoutPanel" : {
"codeName" : "Layoutpanel",
"controlStyle" : "APPPORTALVIEW",
"controlType" : "VIEWLAYOUTPANEL",
"name" : "layoutpanel",
"getPSControlParam" : { },
"layoutBodyOnly" : true,
"layoutPanel" : true,
"useDefaultLayout" : true
},
"title" : "应用门户视图2",
"viewStyle" : "DEFAULT",
"viewType" : "APPPORTALVIEW",
"enableDP" : true,
"modelid" : "8C32C338-C7EF-486B-AC24-54EC274400E6",
"modeltype" : "PSAPPPORTALVIEW"
}
\ No newline at end of file
......@@ -1070,6 +1070,11 @@
"viewType" : "DETREEEXPVIEW",
"resource" : "Phone",
"view" : "TreeExpView"
}, {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPPORTALVIEWS/AppPortalView2.json",
"viewType" : "APPPORTALVIEW",
"view" : "AppPortalView2"
}, {
"modelref" : true,
"path" : "PSSYSAPPS/Web/PSAPPDEVIEWS/BXDGridView.json",
......@@ -3969,6 +3974,13 @@
"name" : "FIELD6",
"codeName" : "Field6"
}
}, {
"id" : "field18",
"dataType" : 25,
"getPSAppDEField" : {
"name" : "FIELD18",
"codeName" : "Field18"
}
}, {
"id" : "field7",
"dataType" : 25,
......@@ -4363,15 +4375,14 @@
},
"getPSEditor" : {
"editorParams" : {
"isDrag" : "true",
"accept" : "image/*",
"MAXFILECNT" : "",
"MINFILECNT" : "",
"exportparams" : "{'test1':'%field16%','test2':'%field17%'}",
"uploadparams" : "{'test1':'%field16%','test2':'%field17%'} ",
"multiple" : "true",
"FILEEXTS" : "",
"exportparams" : "{'test1':'%field16%','test2':'%field17%'}",
"accept" : "image/*",
"MAXFILESIZE" : "",
"uploadparams" : "{'test1':'%field16%','test2':'%field17%'} ",
"multiple" : "true"
"MINFILECNT" : "",
"MAXFILECNT" : ""
},
"editorType" : "FILEUPLOADER",
"maxFileCount" : -1,
......@@ -4385,6 +4396,35 @@
},
"allowEmpty" : true,
"showCaption" : true
}, {
"caption" : "图片上传",
"codeName" : "field18",
"dataType" : 25,
"detailStyle" : "DEFAULT",
"detailType" : "FORMITEM",
"enableCond" : 3,
"ignoreInput" : 0,
"labelPos" : "LEFT",
"labelWidth" : 130,
"name" : "field18",
"noPrivDisplayMode" : 1,
"getPSAppDEField" : {
"name" : "FIELD18",
"codeName" : "Field18"
},
"getPSEditor" : {
"editorType" : "PICTURE",
"maxFileCount" : -1,
"maxFileSize" : -1,
"minFileCount" : 0,
"name" : "field18"
},
"getPSLayoutPos" : {
"colMD" : 24,
"layout" : "TABLE_24COL"
},
"allowEmpty" : true,
"showCaption" : true
}, {
"caption" : "HTML",
"codeName" : "field7",
......@@ -8888,6 +8928,55 @@
"itemType" : "SEPERATOR",
"name" : "tbitem10",
"spanMode" : false
}, {
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.PRINT"
},
"caption" : "打印",
"groupExtractMode" : "ITEM",
"itemType" : "DEUIACTION",
"name" : "tbitem11",
"noPrivDisplayMode" : 2,
"getPSAppViewUIAction" : {
"modelref" : true,
"id" : "toolbar_tbitem11"
},
"getPSSysImage" : {
"glyph" : "xf02f@FontAwesome",
"cssClass" : "fa fa-print"
},
"getPSUIAction" : {
"actionTarget" : "MULTIKEY",
"getCapPSLanguageRes" : {
"lanResTag" : "TBB.TEXT.*.PRINT"
},
"caption" : "打印",
"codeName" : "Print",
"fullCodeName" : "Print",
"name" : "表格界面_打印操作",
"getPSSysImage" : {
"glyph" : "xf02f@FontAwesome",
"cssClass" : "fa fa-print"
},
"predefinedType" : "GRIDVIEW_PRINTACTION",
"timeout" : 60000,
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.PRINT"
},
"uIActionMode" : "SYS",
"uIActionTag" : "Print",
"uIActionType" : "DEUIACTION"
},
"tooltip" : "打印",
"getTooltipPSLanguageRes" : {
"lanResTag" : "TBB.TOOLTIP.*.PRINT"
},
"showCaption" : true,
"showIcon" : true
}, {
"itemType" : "SEPERATOR",
"name" : "tbitem12",
"spanMode" : false
}, {
"caption" : "其它",
"itemType" : "ITEMS",
......@@ -15949,6 +16038,11 @@
"requestPath" : "/select",
"builtinMethod" : false
} ],
"getAllPSAppDEPrints" : [ {
"codeName" : "Print",
"name" : "PRINT",
"reportType" : "JR"
} ],
"getAllPSDEOPPrivs" : [ {
"logicName" : "建立",
"name" : "CREATE"
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册