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

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

上级 885d58df
...@@ -639,7 +639,7 @@ export default class DefaultBase extends Vue implements ControlInterface { ...@@ -639,7 +639,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/ */
public load(opt: any = {}): void { public load(opt: any = {}): void {
if(!this.loadAction){ if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORGridView' + (this.$t('app.searchForm.notConfig.loadAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORListView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
return; return;
} }
const arg: any = { ...opt }; const arg: any = { ...opt };
...@@ -675,7 +675,7 @@ export default class DefaultBase extends Vue implements ControlInterface { ...@@ -675,7 +675,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/ */
public async loadDraft(opt: any = {},mode?:string): Promise<any> { public async loadDraft(opt: any = {},mode?:string): Promise<any> {
if(!this.loaddraftAction){ if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORGridView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORListView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
return; return;
} }
const arg: any = { ...opt } ; const arg: any = { ...opt } ;
......
...@@ -46,11 +46,11 @@ ...@@ -46,11 +46,11 @@
<span class="quick-toolbar"> <span class="quick-toolbar">
<div class='toolbar-container'> <div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600"> <tooltip :transfer="true" :max-width="600">
<i-button v-show="usr4listview_layoutlist_quicktoolbarModels.deuiaction1.visabled" :disabled="usr4listview_layoutlist_quicktoolbarModels.deuiaction1.disabled" class='' v-button-loading:i-button @click="list_quicktoolbar_click({ tag: 'deuiaction1' }, $event)"> <i-button v-show="listviewlist_quicktoolbarModels.deuiaction1.visabled" :disabled="listviewlist_quicktoolbarModels.deuiaction1.disabled" class='' v-button-loading:i-button @click="list_quicktoolbar_click({ tag: 'deuiaction1' }, $event)">
<i class='fa fa-file-text-o'></i> <i class='fa fa-file-text-o'></i>
<span class='caption'>{{$t('entities.ibizbook.usr4listview_layoutlist_quicktoolbar_toolbar.deuiaction1.caption')}}</span> <span class='caption'>{{$t('entities.ibizbook.listviewlist_quicktoolbar_toolbar.deuiaction1.caption')}}</span>
</i-button> </i-button>
<div slot='content'>{{$t('entities.ibizbook.usr4listview_layoutlist_quicktoolbar_toolbar.deuiaction1.tip')}}</div> <div slot='content'>{{$t('entities.ibizbook.listviewlist_quicktoolbar_toolbar.deuiaction1.tip')}}</div>
</tooltip> </tooltip>
</div> </div>
</span> </span>
...@@ -61,18 +61,18 @@ ...@@ -61,18 +61,18 @@
<span class="batch-toolbar"> <span class="batch-toolbar">
<div class='toolbar-container'> <div class='toolbar-container'>
<tooltip :transfer="true" :max-width="600"> <tooltip :transfer="true" :max-width="600">
<i-button v-show="usr4listview_layoutlist_batchtoolbarModels.deuiaction1.visabled" :disabled="usr4listview_layoutlist_batchtoolbarModels.deuiaction1.disabled" class='' v-button-loading:i-button @click="list_batchtoolbar_click({ tag: 'deuiaction1' }, $event)"> <i-button v-show="listviewlist_batchtoolbarModels.deuiaction1.visabled" :disabled="listviewlist_batchtoolbarModels.deuiaction1.disabled" class='' v-button-loading:i-button @click="list_batchtoolbar_click({ tag: 'deuiaction1' }, $event)">
<i class='fa fa-edit'></i> <i class='fa fa-edit'></i>
<span class='caption'>{{$t('entities.ibizbook.usr4listview_layoutlist_batchtoolbar_toolbar.deuiaction1.caption')}}</span> <span class='caption'>{{$t('entities.ibizbook.listviewlist_batchtoolbar_toolbar.deuiaction1.caption')}}</span>
</i-button> </i-button>
<div slot='content'>{{$t('entities.ibizbook.usr4listview_layoutlist_batchtoolbar_toolbar.deuiaction1.tip')}}</div> <div slot='content'>{{$t('entities.ibizbook.listviewlist_batchtoolbar_toolbar.deuiaction1.tip')}}</div>
</tooltip> </tooltip>
<tooltip :transfer="true" :max-width="600"> <tooltip :transfer="true" :max-width="600">
<i-button v-show="usr4listview_layoutlist_batchtoolbarModels.deuiaction2.visabled" :disabled="usr4listview_layoutlist_batchtoolbarModels.deuiaction2.disabled" class='' v-button-loading:i-button @click="list_batchtoolbar_click({ tag: 'deuiaction2' }, $event)"> <i-button v-show="listviewlist_batchtoolbarModels.deuiaction2.visabled" :disabled="listviewlist_batchtoolbarModels.deuiaction2.disabled" class='' v-button-loading:i-button @click="list_batchtoolbar_click({ tag: 'deuiaction2' }, $event)">
<i class='fa fa-remove'></i> <i class='fa fa-remove'></i>
<span class='caption'>{{$t('entities.ibizbook.usr4listview_layoutlist_batchtoolbar_toolbar.deuiaction2.caption')}}</span> <span class='caption'>{{$t('entities.ibizbook.listviewlist_batchtoolbar_toolbar.deuiaction2.caption')}}</span>
</i-button> </i-button>
<div slot='content'>{{$t('entities.ibizbook.usr4listview_layoutlist_batchtoolbar_toolbar.deuiaction2.tip')}}</div> <div slot='content'>{{$t('entities.ibizbook.listviewlist_batchtoolbar_toolbar.deuiaction2.tip')}}</div>
</tooltip> </tooltip>
</div> </div>
</span> </span>
...@@ -382,7 +382,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -382,7 +382,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* @param {*} [$event] 事件源 * @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件 * @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文 * @param {*} [actionContext] 执行行为上下文
* @memberof IBIZBOOKUsr4ListView_layoutBase * @memberof IBIZBOOKListViewBase
*/ */
public New(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) { public New(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
const _this: any = this; const _this: any = this;
...@@ -402,7 +402,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -402,7 +402,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* @param {*} [$event] 事件源 * @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件 * @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文 * @param {*} [actionContext] 执行行为上下文
* @memberof IBIZBOOKUsr4ListView_layoutBase * @memberof IBIZBOOKListViewBase
*/ */
public Edit(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) { public Edit(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
if (args.length === 0) { if (args.length === 0) {
...@@ -428,7 +428,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -428,7 +428,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* @param {*} [$event] 事件源 * @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件 * @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文 * @param {*} [actionContext] 执行行为上下文
* @memberof IBIZBOOKUsr4ListView_layoutBase * @memberof IBIZBOOKListViewBase
*/ */
public Remove(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) { public Remove(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
const _this: any = this; const _this: any = this;
...@@ -624,9 +624,9 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -624,9 +624,9 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* 工具栏模型 * 工具栏模型
* *
* @type {*} * @type {*}
* @memberof IBIZBOOKUsr4ListView_layout * @memberof IBIZBOOKListView
*/ */
public usr4listview_layoutlist_quicktoolbarModels: any = { public listviewlist_quicktoolbarModels: any = {
deuiaction1: { name: 'deuiaction1', actiontarget: 'NONE', caption: '新建', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'New', target: '' } }, deuiaction1: { name: 'deuiaction1', actiontarget: 'NONE', caption: '新建', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'New', target: '' } },
}; };
...@@ -636,9 +636,9 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -636,9 +636,9 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* 工具栏模型 * 工具栏模型
* *
* @type {*} * @type {*}
* @memberof IBIZBOOKUsr4ListView_layout * @memberof IBIZBOOKListView
*/ */
public usr4listview_layoutlist_batchtoolbarModels: any = { public listviewlist_batchtoolbarModels: any = {
deuiaction1: { name: 'deuiaction1', actiontarget: 'NONE', caption: '编辑', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'Edit', target: 'SINGLEKEY' } }, deuiaction1: { name: 'deuiaction1', actiontarget: 'NONE', caption: '编辑', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'Edit', target: 'SINGLEKEY' } },
deuiaction2: { name: 'deuiaction2', actiontarget: 'NONE', caption: '删除', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'Remove', target: 'MULTIKEY' } }, deuiaction2: { name: 'deuiaction2', actiontarget: 'NONE', caption: '删除', disabled: false, type: 'DEUIACTION', visabled: true,noprivdisplaymode:2,dataaccaction: '', uiaction: { tag: 'Remove', target: 'MULTIKEY' } },
...@@ -861,7 +861,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -861,7 +861,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
*/ */
public async load(opt: any = {}): Promise<any> { public async load(opt: any = {}): Promise<any> {
if(!this.fetchAction){ if(!this.fetchAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKUsr4ListView_layout' + (this.$t('app.list.notConfig.fetchAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKListView' + (this.$t('app.list.notConfig.fetchAction') as string) });
return; return;
} }
const arg: any = {...opt}; const arg: any = {...opt};
...@@ -991,7 +991,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -991,7 +991,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
*/ */
public async remove(datas: any[]): Promise<any> { public async remove(datas: any[]): Promise<any> {
if(!this.removeAction){ if(!this.removeAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKUsr4ListView_layout' + (this.$t('app.list.notConfig.removeAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKListView' + (this.$t('app.list.notConfig.removeAction') as string) });
return; return;
} }
if (datas.length === 0) { if (datas.length === 0) {
...@@ -1096,7 +1096,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -1096,7 +1096,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
try { try {
if(Object.is(item.rowDataState, 'create')){ if(Object.is(item.rowDataState, 'create')){
if(!this.createAction){ if(!this.createAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKUsr4ListView_layout' + (this.$t('app.list.notConfig.createAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZBOOKListView' + (this.$t('app.list.notConfig.createAction') as string) });
}else{ }else{
Object.assign(item,{viewparams:this.viewparams}); Object.assign(item,{viewparams:this.viewparams});
let response = await this.service.add(this.createAction, JSON.parse(JSON.stringify(this.context)),item, this.showBusyIndicator); let response = await this.service.add(this.createAction, JSON.parse(JSON.stringify(this.context)),item, this.showBusyIndicator);
...@@ -1104,7 +1104,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac ...@@ -1104,7 +1104,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
} }
}else if(Object.is(item.rowDataState, 'update')){ }else if(Object.is(item.rowDataState, 'update')){
if(!this.updateAction){ if(!this.updateAction){
this.$Notice.error({ title: (this.$t('app.commonWords.warning') as string), desc: 'IBIZBOOKUsr4ListView_layout' + (this.$t('app.list.notConfig.updateAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.warning') as string), desc: 'IBIZBOOKListView' + (this.$t('app.list.notConfig.updateAction') as string) });
}else{ }else{
Object.assign(item,{viewparams:this.viewparams}); Object.assign(item,{viewparams:this.viewparams});
if(item.ibizbook){ if(item.ibizbook){
......
<template> <template>
<div>红色表格头</div> <div :class="classNames" :id="controlID" style="" >
<a-form class="control-content">
<AppGrid
:columns="model.columns"
:items="store.data"
:singleSelect="singleSelect"
:selections="store.selections"
:showHeader="model.showHeader"
:current="store.curPage"
:limit="store.limit"
:totalRecord="store.totalRecord"
:context="store.context"
:viewParams="store.viewParams"
:enableRowEdit="model.enableRowEdit"
:paging="model.paging"
@row-click="handleRowClick"
@row-db-click="handleRowDbClick"
@selection-change="handleSelectionChange"
@sort-change="(field: string, dir: '' | 'asc' | 'desc') => handleSortChange(controller, field, dir)"
@page-change="(currentPage: number) => handlePageChange(controller, currentPage)"
@page-size-change="(pageSize: number) => handlePageSizeChange(controller, pageSize)"
@action-click="(logic: any, data: IParam, event: MouseEvent) => handleActionClick(controller, logic as IViewLogicInput, data, event)"
>
</AppGrid>
</a-form>
</div>
</template> </template>
// 基于 @CONTROL/表格/CONTROL-BASE.vue.ftl 生成 // 基于 @CONTROL/表格/CONTROL-BASE.vue.ftl 生成
<script lang='tsx'> <script lang='tsx'>
...@@ -192,7 +217,45 @@ export default class PluginBase extends Vue implements ControlInterface { ...@@ -192,7 +217,45 @@ export default class PluginBase extends Vue implements ControlInterface {
} }
import { AppGrid } from "@components/widgets/grid";
import { IContext, IParam, IViewLogicInput } from "@/core";
import { GridActionType, ICtrlDataAction, IGridAbility, IGridControllerParams, IGridStore, GridController, ILoadingHelper, LoadingHelper, createUUID, IViewCtx } from "@/core";
import { handlePageChange, handlePageSizeChange, handleSortChange, handleComponentAction } from '@/hooks/use-ctrl';
import { useNavParamsBind, useEventBind, handleActionClick, getCtrlClassNames } from '@/hooks/use-ctrl';
import GridService from "@/core/modules/ctrl-service/grid-service";
interface Props {
name?: string;
context: IContext;
viewParams: IParam;
localContext?: IParam,
localViewParams?: IParam,
closeView?: Function;
pLoadingHelper?: ILoadingHelper;
pViewCtx?: IViewCtx;
openView?: Function;
newView?: Function;
actions: ICtrlDataAction;
singleSelect?: boolean;
selectFirstDefault?: boolean;
rowActiveMode?: 0 | 1 | 2;
defaultEnableRowEdit?: boolean;
controller: GridController
}
const props = withDefaults(defineProps<Props>(), {
singleSelect: false,
rowActiveMode: 2
});
const model: IParam = props.controller.getModel();
const store = props.controller.getStore();
const classNames = computed(() => {
const names = getCtrlClassNames(model, props);
Object.assign(names, {
"app-control-grid--no-paging-bar": model.enablePagingBar,
"red-grid-header": true
});
return names;
});
/** /**
* 代码表服务对象 * 代码表服务对象
......
<template> <template>
<div>iframe</div> <div class="form-iframe">
<iframe width="100%" height="100%" src="https://www.baidu.com//" />
</div>
</template> </template>
// 基于 @CONTROL/表单/CONTROL-BASE.vue.ftl 生成 // 基于 @CONTROL/表单/CONTROL-BASE.vue.ftl 生成
<script lang='tsx'> <script lang='tsx'>
......
...@@ -964,7 +964,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -964,7 +964,7 @@ export default class MainBase extends Vue implements ControlInterface {
if (!this.fetchAction) { if (!this.fetchAction) {
this.$Notice.error({ this.$Notice.error({
title: this.$t("app.commonWords.wrong") as string, title: this.$t("app.commonWords.wrong") as string,
desc: "IBIZOrderDetailGridView9" + (this.$t("app.gridpage.notConfig.fetchAction") as string), desc: "IBIZOrderDetailSGridView" + (this.$t("app.gridpage.notConfig.fetchAction") as string),
}); });
return; return;
} }
...@@ -1093,7 +1093,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1093,7 +1093,7 @@ export default class MainBase extends Vue implements ControlInterface {
if (!this.removeAction) { if (!this.removeAction) {
this.$Notice.error({ this.$Notice.error({
title: (this.$t('app.commonWords.wrong') as string), title: (this.$t('app.commonWords.wrong') as string),
desc: 'IBIZOrderDetailGridView9' + (this.$t('app.gridpage.notConfig.removeAction') as string) desc: 'IBIZOrderDetailSGridView' + (this.$t('app.gridpage.notConfig.removeAction') as string)
}); });
return; return;
} }
...@@ -1207,7 +1207,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1207,7 +1207,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/ */
public addBatch(arg: any = {}): void { public addBatch(arg: any = {}): void {
if(!this.fetchAction){ if(!this.fetchAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderDetailGridView9'+(this.$t('app.gridpage.notConfig.fetchAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderDetailSGridView'+(this.$t('app.gridpage.notConfig.fetchAction') as string) });
return; return;
} }
if(!arg){ if(!arg){
...@@ -2101,7 +2101,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -2101,7 +2101,7 @@ export default class MainBase extends Vue implements ControlInterface {
try { try {
if (Object.is(item.rowDataState, 'create')) { if (Object.is(item.rowDataState, 'create')) {
if (!this.createAction) { if (!this.createAction) {
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderDetailGridView9'+(this.$t('app.gridpage.notConfig.createAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderDetailSGridView'+(this.$t('app.gridpage.notConfig.createAction') as string) });
} else { } else {
Object.assign(item, { viewparams: this.viewparams }); Object.assign(item, { viewparams: this.viewparams });
const tempContext = Util.deepCopy(this.context); const tempContext = Util.deepCopy(this.context);
...@@ -2110,7 +2110,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -2110,7 +2110,7 @@ export default class MainBase extends Vue implements ControlInterface {
} }
}else if (Object.is(item.rowDataState, 'update')){ }else if (Object.is(item.rowDataState, 'update')){
if (!this.updateAction) { if (!this.updateAction) {
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderDetailGridView9'+(this.$t('app.gridpage.notConfig.updateAction') as string) }); this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZOrderDetailSGridView'+(this.$t('app.gridpage.notConfig.updateAction') as string) });
} else { } else {
Object.assign(item, { viewparams: this.viewparams }); Object.assign(item, { viewparams: this.viewparams });
const tempContext = Util.deepCopy(this.context); const tempContext = Util.deepCopy(this.context);
...@@ -2186,7 +2186,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -2186,7 +2186,7 @@ export default class MainBase extends Vue implements ControlInterface {
if(!this.loaddraftAction){ if(!this.loaddraftAction){
this.$Notice.error({ this.$Notice.error({
title: (this.$t('app.commonWords.wrong') as string), title: (this.$t('app.commonWords.wrong') as string),
desc: 'IBIZOrderDetailGridView9' + (this.$t('app.gridpage.notConfig.loaddraftAction') as string) desc: 'IBIZOrderDetailSGridView' + (this.$t('app.gridpage.notConfig.loaddraftAction') as string)
}); });
return; return;
} }
......
...@@ -97,6 +97,7 @@ export default class MainModel { ...@@ -97,6 +97,7 @@ export default class MainModel {
name: 'ibizorderdetail', name: 'ibizorderdetail',
prop: 'ibizorderdetailid', prop: 'ibizorderdetailid',
}, },
{ {
name:'size', name:'size',
prop:'size', prop:'size',
......
...@@ -12,18 +12,6 @@ ...@@ -12,18 +12,6 @@
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json" "path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
}, },
"getPSDETreeColumns" : [ { "getPSDETreeColumns" : [ {
"caption" : "作者",
"codeName" : "author",
"columnType" : "DEFGRIDCOLUMN",
"dataItemName" : "author",
"mOSFilePath" : "psdetreecols/author",
"name" : "author",
"rTMOSFilePath" : "psdetreecols/author",
"width" : 200,
"widthUnit" : "px",
"enableExpand" : false,
"enableSort" : false
}, {
"caption" : "图书名称", "caption" : "图书名称",
"codeName" : "ibizbookname", "codeName" : "ibizbookname",
"columnType" : "DEFGRIDCOLUMN", "columnType" : "DEFGRIDCOLUMN",
...@@ -59,6 +47,18 @@ ...@@ -59,6 +47,18 @@
"widthUnit" : "px", "widthUnit" : "px",
"enableExpand" : false, "enableExpand" : false,
"enableSort" : false "enableSort" : false
}, {
"caption" : "作者",
"codeName" : "author",
"columnType" : "DEFGRIDCOLUMN",
"dataItemName" : "author",
"mOSFilePath" : "psdetreecols/author",
"name" : "author",
"rTMOSFilePath" : "psdetreecols/author",
"width" : 200,
"widthUnit" : "px",
"enableExpand" : false,
"enableSort" : false
}, { }, {
"caption" : "借出日期", "caption" : "借出日期",
"codeName" : "lendouttime", "codeName" : "lendouttime",
......
...@@ -20,6 +20,18 @@ ...@@ -20,6 +20,18 @@
} }
} ], } ],
"getPSDETreeColumns" : [ { "getPSDETreeColumns" : [ {
"caption" : "作者",
"codeName" : "author",
"columnType" : "DEFGRIDCOLUMN",
"dataItemName" : "author",
"mOSFilePath" : "psdetreecols/author",
"name" : "author",
"rTMOSFilePath" : "psdetreecols/author",
"width" : 50,
"widthUnit" : "px",
"enableExpand" : false,
"enableSort" : false
}, {
"caption" : "图书名称", "caption" : "图书名称",
"codeName" : "ibizbookname", "codeName" : "ibizbookname",
"columnType" : "DEFGRIDCOLUMN", "columnType" : "DEFGRIDCOLUMN",
...@@ -43,18 +55,6 @@ ...@@ -43,18 +55,6 @@
"widthUnit" : "px", "widthUnit" : "px",
"enableExpand" : false, "enableExpand" : false,
"enableSort" : false "enableSort" : false
}, {
"caption" : "作者",
"codeName" : "author",
"columnType" : "DEFGRIDCOLUMN",
"dataItemName" : "author",
"mOSFilePath" : "psdetreecols/author",
"name" : "author",
"rTMOSFilePath" : "psdetreecols/author",
"width" : 50,
"widthUnit" : "px",
"enableExpand" : false,
"enableSort" : false
} ], } ],
"getPSDETreeNodeRSs" : [ { "getPSDETreeNodeRSs" : [ {
"getChildPSDETreeNode" : { "getChildPSDETreeNode" : {
......
...@@ -42,18 +42,6 @@ ...@@ -42,18 +42,6 @@
"id" : "GANTT" "id" : "GANTT"
}, },
"getPSDETreeColumns" : [ { "getPSDETreeColumns" : [ {
"caption" : "作者",
"codeName" : "author",
"columnType" : "DEFGRIDCOLUMN",
"dataItemName" : "author",
"mOSFilePath" : "psdetreecols/author",
"name" : "author",
"rTMOSFilePath" : "psdetreecols/author",
"width" : 200,
"widthUnit" : "px",
"enableExpand" : false,
"enableSort" : false
}, {
"caption" : "图书名称", "caption" : "图书名称",
"codeName" : "ibizbookname", "codeName" : "ibizbookname",
"columnType" : "DEFGRIDCOLUMN", "columnType" : "DEFGRIDCOLUMN",
...@@ -89,6 +77,18 @@ ...@@ -89,6 +77,18 @@
"widthUnit" : "px", "widthUnit" : "px",
"enableExpand" : false, "enableExpand" : false,
"enableSort" : false "enableSort" : false
}, {
"caption" : "作者",
"codeName" : "author",
"columnType" : "DEFGRIDCOLUMN",
"dataItemName" : "author",
"mOSFilePath" : "psdetreecols/author",
"name" : "author",
"rTMOSFilePath" : "psdetreecols/author",
"width" : 200,
"widthUnit" : "px",
"enableExpand" : false,
"enableSort" : false
}, { }, {
"caption" : "借出日期", "caption" : "借出日期",
"codeName" : "lendouttime", "codeName" : "lendouttime",
......
...@@ -88,6 +88,18 @@ ...@@ -88,6 +88,18 @@
"id" : "TREEGRIDEX" "id" : "TREEGRIDEX"
}, },
"getPSDETreeColumns" : [ { "getPSDETreeColumns" : [ {
"caption" : "作者",
"codeName" : "author",
"columnType" : "DEFGRIDCOLUMN",
"dataItemName" : "author",
"mOSFilePath" : "psdetreecols/author",
"name" : "author",
"rTMOSFilePath" : "psdetreecols/author",
"width" : 50,
"widthUnit" : "px",
"enableExpand" : false,
"enableSort" : false
}, {
"caption" : "图书名称", "caption" : "图书名称",
"codeName" : "ibizbookname", "codeName" : "ibizbookname",
"columnType" : "DEFGRIDCOLUMN", "columnType" : "DEFGRIDCOLUMN",
...@@ -111,18 +123,6 @@ ...@@ -111,18 +123,6 @@
"widthUnit" : "px", "widthUnit" : "px",
"enableExpand" : false, "enableExpand" : false,
"enableSort" : false "enableSort" : false
}, {
"caption" : "作者",
"codeName" : "author",
"columnType" : "DEFGRIDCOLUMN",
"dataItemName" : "author",
"mOSFilePath" : "psdetreecols/author",
"name" : "author",
"rTMOSFilePath" : "psdetreecols/author",
"width" : 50,
"widthUnit" : "px",
"enableExpand" : false,
"enableSort" : false
} ], } ],
"getPSDETreeNodeRSs" : [ { "getPSDETreeNodeRSs" : [ {
"getChildPSDETreeNode" : { "getChildPSDETreeNode" : {
......
...@@ -5569,7 +5569,9 @@ ...@@ -5569,7 +5569,9 @@
"pluginType" : "GRID_RENDER", "pluginType" : "GRID_RENDER",
"refMode" : "CONTROL", "refMode" : "CONTROL",
"refTag" : "GRID", "refTag" : "GRID",
"templCode" : "<div>红色表格头</div>" "templCode" : "<div :class=\"classNames\" :id=\"controlID\" style=\"\" >\r\n <a-form class=\"control-content\">\r\n <AppGrid\r\n :columns=\"model.columns\"\r\n :items=\"store.data\"\r\n :singleSelect=\"singleSelect\"\r\n :selections=\"store.selections\"\r\n :showHeader=\"model.showHeader\"\r\n :current=\"store.curPage\"\r\n :limit=\"store.limit\"\r\n :totalRecord=\"store.totalRecord\"\r\n :context=\"store.context\"\r\n :viewParams=\"store.viewParams\"\r\n :enableRowEdit=\"model.enableRowEdit\"\r\n :paging=\"model.paging\"\r\n @row-click=\"handleRowClick\"\r\n @row-db-click=\"handleRowDbClick\"\r\n @selection-change=\"handleSelectionChange\"\r\n @sort-change=\"(field: string, dir: '' | 'asc' | 'desc') => handleSortChange(controller, field, dir)\"\r\n @page-change=\"(currentPage: number) => handlePageChange(controller, currentPage)\"\r\n @page-size-change=\"(pageSize: number) => handlePageSizeChange(controller, pageSize)\"\r\n @action-click=\"(logic: any, data: IParam, event: MouseEvent) => handleActionClick(controller, logic as IViewLogicInput, data, event)\"\r\n >\r\n </AppGrid>\r\n </a-form>\r\n </div>",
"templCode2" : "import { AppGrid } from \"@components/widgets/grid\";\r\nimport { IContext, IParam, IViewLogicInput } from \"@/core\";\r\nimport { GridActionType, ICtrlDataAction, IGridAbility, IGridControllerParams, IGridStore, GridController, ILoadingHelper, LoadingHelper, createUUID, IViewCtx } from \"@/core\";\r\nimport { handlePageChange, handlePageSizeChange, handleSortChange, handleComponentAction } from '@/hooks/use-ctrl';\r\nimport { useNavParamsBind, useEventBind, handleActionClick, getCtrlClassNames } from '@/hooks/use-ctrl';\r\nimport GridService from \"@/core/modules/ctrl-service/grid-service\";\r\ninterface Props {\r\n name?: string;\r\n context: IContext;\r\n viewParams: IParam;\r\n localContext?: IParam,\r\n localViewParams?: IParam,\r\n closeView?: Function;\r\n pLoadingHelper?: ILoadingHelper;\r\n pViewCtx?: IViewCtx;\r\n openView?: Function;\r\n newView?: Function;\r\n actions: ICtrlDataAction;\r\n singleSelect?: boolean;\r\n selectFirstDefault?: boolean;\r\n rowActiveMode?: 0 | 1 | 2;\r\n defaultEnableRowEdit?: boolean;\r\n controller: GridController\r\n}\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n singleSelect: false,\r\n rowActiveMode: 2\r\n});\r\nconst model: IParam = props.controller.getModel();\r\nconst store = props.controller.getStore();\r\nconst classNames = computed(() => {\r\n const names = getCtrlClassNames(model, props);\r\n Object.assign(names, {\r\n \"app-control-grid--no-paging-bar\": model.enablePagingBar,\r\n \"red-grid-header\": true\r\n });\r\n return names;\r\n});",
"templCode3" : ".red-grid-header {\r\n .ant-table-container .ant-table-header {\r\n .ant-table-cell {\r\n background-color: red;\r\n }\r\n }\r\n}"
}, { }, {
"name" : "编辑器数量", "name" : "编辑器数量",
"getPSSysPFPlugin" : { "getPSSysPFPlugin" : {
...@@ -5637,7 +5639,8 @@ ...@@ -5637,7 +5639,8 @@
"pluginType" : "CUSTOM", "pluginType" : "CUSTOM",
"refMode" : "CONTROL", "refMode" : "CONTROL",
"refTag" : "FORM", "refTag" : "FORM",
"templCode" : "<div>iframe</div>" "templCode" : "<div class=\"form-iframe\">\r\n <iframe width=\"100%\" height=\"100%\" src=\"https://www.baidu.com//\" />\r\n </div>",
"templCode3" : ".form-iframe {\r\n height: 100%;\r\n width: 100%;\r\n iframe {\r\n border: 0;\r\n }\r\n}"
}, { }, {
"name" : "表单测试插件", "name" : "表单测试插件",
"getPSSysPFPlugin" : { "getPSSysPFPlugin" : {
...@@ -5725,7 +5728,9 @@ ...@@ -5725,7 +5728,9 @@
"pluginType" : "VIEW_CUSTOM", "pluginType" : "VIEW_CUSTOM",
"refMode" : "APPVIEW", "refMode" : "APPVIEW",
"refTag" : "DEPICKUPVIEW", "refTag" : "DEPICKUPVIEW",
"templCode" : "<div>选择视图插件</div>" "templCode" : "<AppViewLayout :class=\"classNames\">\r\n <template #default>\r\n <UsrPickupView_pluginpickupviewpanelPickupViewPanel\r\n :openView=\"store.openView\"\r\n :newView=\"store.newView\"\r\n :singleSelect='true'\r\n name=\"pickupviewpanel\"\r\n :context=\"store.context\"\r\n :viewParams=\"store.viewParams\"\r\n :closeView=\"store.closeView\"\r\n :pLoadingHelper=\"store.loadingHelper\"\r\n :pViewCtx=\"store.viewCtx\"\r\n @ctrl-init=\"(name:string, ability:any) => { handleCtrlInit(controller, name, ability) }\"\r\n @ctrl-action=\"(name:string, action:any, data:any) => { handleCtrlAction(controller, name, action, data) }\"\r\n @ctrl-destroy=\"(name:string, data:any) => { handleCtrlDestroy(controller, name, data) }\"/>\r\n </template>\r\n <template #viewFooter>\r\n <div class=\"view-footer__buttons\">\r\n <AppButton type=\"primary\" :disabled=\"store.selections.length === 0\" @click=\"handlePickupViewButtonAction(controller, 'confirm')\">确认</AppButton>\r\n <AppButton @click=\"handlePickupViewButtonAction(controller, 'cancel')\">取消</AppButton>\r\n </div>\r\n </template>\r\n </AppViewLayout>",
"templCode2" : "import { AppViewLayout } from \"@components/layout/view-layout\";\r\nimport UsrPickupView_pluginpickupviewpanelPickupViewPanel from '@widgets/ibizbook/usr-pickup-view-pluginpickupviewpanel-pickup-view-panel/usr-pickup-view-pluginpickupviewpanel-pickup-view-panel.vue';\r\nimport { \r\n useNavParamsBind, \r\n useEventBind, \r\n getViewClassNames, \r\n handlePickupViewButtonAction, \r\n handleCtrlAction, \r\n handleCtrlInit, \r\n handleCtrlDestroy,\r\n} from \"@/hooks/use-view\";\r\nimport { PickupViewActionType, PickupViewController, IPickupViewAbility, IPickupViewControllerParams, IPickupViewStore, IPickupViewController, IParam, IContext, ILoadingHelper, IEvent } from \"@/core\";\r\ninterface Props {\r\n name?: string,\r\n noViewCaption?: boolean,\r\n openType?: 'ROUTE' | 'EMBED' | 'MODAL',\r\n context?: IContext,\r\n viewParams?: IParam,\r\n pLoadingHelper?: ILoadingHelper,\r\n isLoadDefault?: boolean,\r\n controller: IPickupViewController<IPickupViewStore, IPickupViewAbility>\r\n}\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n noViewCaption: false,\r\n openType: 'ROUTE',\r\n isLoadDefault: true,\r\n});\r\nconst model: IParam = props.controller.getModel();\r\nconst store: IPickupViewStore = props.controller.getStore();\r\nconst classNames = computed(() => {\r\n const classNames = getViewClassNames(model, props);\r\n Object.assign(classNames, {\"picker-view-custom\": true});\r\n return classNames;\r\n});",
"templCode3" : ".picker-view-custom {\r\n .view-footer__buttons {\r\n text-align: left;\r\n }\r\n}"
}, { }, {
"name" : "选项操作视图按钮左对齐", "name" : "选项操作视图按钮左对齐",
"getPSSysPFPlugin" : { "getPSSysPFPlugin" : {
...@@ -216,7 +216,9 @@ ...@@ -216,7 +216,9 @@
"pluginType" : "GRID_RENDER", "pluginType" : "GRID_RENDER",
"refMode" : "CONTROL", "refMode" : "CONTROL",
"refTag" : "GRID", "refTag" : "GRID",
"templCode" : "<div>红色表格头</div>" "templCode" : "<div :class=\"classNames\" :id=\"controlID\" style=\"\" >\r\n <a-form class=\"control-content\">\r\n <AppGrid\r\n :columns=\"model.columns\"\r\n :items=\"store.data\"\r\n :singleSelect=\"singleSelect\"\r\n :selections=\"store.selections\"\r\n :showHeader=\"model.showHeader\"\r\n :current=\"store.curPage\"\r\n :limit=\"store.limit\"\r\n :totalRecord=\"store.totalRecord\"\r\n :context=\"store.context\"\r\n :viewParams=\"store.viewParams\"\r\n :enableRowEdit=\"model.enableRowEdit\"\r\n :paging=\"model.paging\"\r\n @row-click=\"handleRowClick\"\r\n @row-db-click=\"handleRowDbClick\"\r\n @selection-change=\"handleSelectionChange\"\r\n @sort-change=\"(field: string, dir: '' | 'asc' | 'desc') => handleSortChange(controller, field, dir)\"\r\n @page-change=\"(currentPage: number) => handlePageChange(controller, currentPage)\"\r\n @page-size-change=\"(pageSize: number) => handlePageSizeChange(controller, pageSize)\"\r\n @action-click=\"(logic: any, data: IParam, event: MouseEvent) => handleActionClick(controller, logic as IViewLogicInput, data, event)\"\r\n >\r\n </AppGrid>\r\n </a-form>\r\n </div>",
"templCode2" : "import { AppGrid } from \"@components/widgets/grid\";\r\nimport { IContext, IParam, IViewLogicInput } from \"@/core\";\r\nimport { GridActionType, ICtrlDataAction, IGridAbility, IGridControllerParams, IGridStore, GridController, ILoadingHelper, LoadingHelper, createUUID, IViewCtx } from \"@/core\";\r\nimport { handlePageChange, handlePageSizeChange, handleSortChange, handleComponentAction } from '@/hooks/use-ctrl';\r\nimport { useNavParamsBind, useEventBind, handleActionClick, getCtrlClassNames } from '@/hooks/use-ctrl';\r\nimport GridService from \"@/core/modules/ctrl-service/grid-service\";\r\ninterface Props {\r\n name?: string;\r\n context: IContext;\r\n viewParams: IParam;\r\n localContext?: IParam,\r\n localViewParams?: IParam,\r\n closeView?: Function;\r\n pLoadingHelper?: ILoadingHelper;\r\n pViewCtx?: IViewCtx;\r\n openView?: Function;\r\n newView?: Function;\r\n actions: ICtrlDataAction;\r\n singleSelect?: boolean;\r\n selectFirstDefault?: boolean;\r\n rowActiveMode?: 0 | 1 | 2;\r\n defaultEnableRowEdit?: boolean;\r\n controller: GridController\r\n}\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n singleSelect: false,\r\n rowActiveMode: 2\r\n});\r\nconst model: IParam = props.controller.getModel();\r\nconst store = props.controller.getStore();\r\nconst classNames = computed(() => {\r\n const names = getCtrlClassNames(model, props);\r\n Object.assign(names, {\r\n \"app-control-grid--no-paging-bar\": model.enablePagingBar,\r\n \"red-grid-header\": true\r\n });\r\n return names;\r\n});",
"templCode3" : ".red-grid-header {\r\n .ant-table-container .ant-table-header {\r\n .ant-table-cell {\r\n background-color: red;\r\n }\r\n }\r\n}"
}, { }, {
"name" : "编辑器数量", "name" : "编辑器数量",
"getPSSysPFPlugin" : { "getPSSysPFPlugin" : {
...@@ -284,7 +286,8 @@ ...@@ -284,7 +286,8 @@
"pluginType" : "CUSTOM", "pluginType" : "CUSTOM",
"refMode" : "CONTROL", "refMode" : "CONTROL",
"refTag" : "FORM", "refTag" : "FORM",
"templCode" : "<div>iframe</div>" "templCode" : "<div class=\"form-iframe\">\r\n <iframe width=\"100%\" height=\"100%\" src=\"https://www.baidu.com//\" />\r\n </div>",
"templCode3" : ".form-iframe {\r\n height: 100%;\r\n width: 100%;\r\n iframe {\r\n border: 0;\r\n }\r\n}"
}, { }, {
"name" : "表单测试插件", "name" : "表单测试插件",
"getPSSysPFPlugin" : { "getPSSysPFPlugin" : {
...@@ -372,7 +375,9 @@ ...@@ -372,7 +375,9 @@
"pluginType" : "VIEW_CUSTOM", "pluginType" : "VIEW_CUSTOM",
"refMode" : "APPVIEW", "refMode" : "APPVIEW",
"refTag" : "DEPICKUPVIEW", "refTag" : "DEPICKUPVIEW",
"templCode" : "<div>选择视图插件</div>" "templCode" : "<AppViewLayout :class=\"classNames\">\r\n <template #default>\r\n <UsrPickupView_pluginpickupviewpanelPickupViewPanel\r\n :openView=\"store.openView\"\r\n :newView=\"store.newView\"\r\n :singleSelect='true'\r\n name=\"pickupviewpanel\"\r\n :context=\"store.context\"\r\n :viewParams=\"store.viewParams\"\r\n :closeView=\"store.closeView\"\r\n :pLoadingHelper=\"store.loadingHelper\"\r\n :pViewCtx=\"store.viewCtx\"\r\n @ctrl-init=\"(name:string, ability:any) => { handleCtrlInit(controller, name, ability) }\"\r\n @ctrl-action=\"(name:string, action:any, data:any) => { handleCtrlAction(controller, name, action, data) }\"\r\n @ctrl-destroy=\"(name:string, data:any) => { handleCtrlDestroy(controller, name, data) }\"/>\r\n </template>\r\n <template #viewFooter>\r\n <div class=\"view-footer__buttons\">\r\n <AppButton type=\"primary\" :disabled=\"store.selections.length === 0\" @click=\"handlePickupViewButtonAction(controller, 'confirm')\">确认</AppButton>\r\n <AppButton @click=\"handlePickupViewButtonAction(controller, 'cancel')\">取消</AppButton>\r\n </div>\r\n </template>\r\n </AppViewLayout>",
"templCode2" : "import { AppViewLayout } from \"@components/layout/view-layout\";\r\nimport UsrPickupView_pluginpickupviewpanelPickupViewPanel from '@widgets/ibizbook/usr-pickup-view-pluginpickupviewpanel-pickup-view-panel/usr-pickup-view-pluginpickupviewpanel-pickup-view-panel.vue';\r\nimport { \r\n useNavParamsBind, \r\n useEventBind, \r\n getViewClassNames, \r\n handlePickupViewButtonAction, \r\n handleCtrlAction, \r\n handleCtrlInit, \r\n handleCtrlDestroy,\r\n} from \"@/hooks/use-view\";\r\nimport { PickupViewActionType, PickupViewController, IPickupViewAbility, IPickupViewControllerParams, IPickupViewStore, IPickupViewController, IParam, IContext, ILoadingHelper, IEvent } from \"@/core\";\r\ninterface Props {\r\n name?: string,\r\n noViewCaption?: boolean,\r\n openType?: 'ROUTE' | 'EMBED' | 'MODAL',\r\n context?: IContext,\r\n viewParams?: IParam,\r\n pLoadingHelper?: ILoadingHelper,\r\n isLoadDefault?: boolean,\r\n controller: IPickupViewController<IPickupViewStore, IPickupViewAbility>\r\n}\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n noViewCaption: false,\r\n openType: 'ROUTE',\r\n isLoadDefault: true,\r\n});\r\nconst model: IParam = props.controller.getModel();\r\nconst store: IPickupViewStore = props.controller.getStore();\r\nconst classNames = computed(() => {\r\n const classNames = getViewClassNames(model, props);\r\n Object.assign(classNames, {\"picker-view-custom\": true});\r\n return classNames;\r\n});",
"templCode3" : ".picker-view-custom {\r\n .view-footer__buttons {\r\n text-align: left;\r\n }\r\n}"
}, { }, {
"name" : "选项操作视图按钮左对齐", "name" : "选项操作视图按钮左对齐",
"getPSSysPFPlugin" : { "getPSSysPFPlugin" : {
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册