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

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

上级 885d58df
......@@ -639,7 +639,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public load(opt: any = {}): void {
if(!this.loadAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORGridView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORListView' + (this.$t('app.searchForm.notConfig.loadAction') as string) });
return;
}
const arg: any = { ...opt };
......@@ -675,7 +675,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public async loadDraft(opt: any = {},mode?:string): Promise<any> {
if(!this.loaddraftAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORGridView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: 'IBIZAPPEDITORListView' + (this.$t('app.searchForm.notConfig.loaddraftAction') as string) });
return;
}
const arg: any = { ...opt } ;
......
......@@ -46,11 +46,11 @@
<span class="quick-toolbar">
<div class='toolbar-container'>
<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>
<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>
<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>
</div>
</span>
......@@ -61,18 +61,18 @@
<span class="batch-toolbar">
<div class='toolbar-container'>
<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>
<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>
<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 :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>
<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>
<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>
</div>
</span>
......@@ -382,7 +382,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof IBIZBOOKUsr4ListView_layoutBase
* @memberof IBIZBOOKListViewBase
*/
public New(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
const _this: any = this;
......@@ -402,7 +402,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof IBIZBOOKUsr4ListView_layoutBase
* @memberof IBIZBOOKListViewBase
*/
public Edit(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
if (args.length === 0) {
......@@ -428,7 +428,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof IBIZBOOKUsr4ListView_layoutBase
* @memberof IBIZBOOKListViewBase
*/
public Remove(args: any[],contextJO?:any, params?: any, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
const _this: any = this;
......@@ -624,9 +624,9 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* 工具栏模型
*
* @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: '' } },
};
......@@ -636,9 +636,9 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
* 工具栏模型
*
* @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' } },
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
*/
public async load(opt: any = {}): Promise<any> {
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;
}
const arg: any = {...opt};
......@@ -991,7 +991,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
*/
public async remove(datas: any[]): Promise<any> {
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;
}
if (datas.length === 0) {
......@@ -1096,7 +1096,7 @@ export default class LnternalFuncListBase extends Vue implements ControlInterfac
try {
if(Object.is(item.rowDataState, 'create')){
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{
Object.assign(item,{viewparams:this.viewparams});
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
}
}else if(Object.is(item.rowDataState, 'update')){
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{
Object.assign(item,{viewparams:this.viewparams});
if(item.ibizbook){
......
<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>
// 基于 @CONTROL/表格/CONTROL-BASE.vue.ftl 生成
<script lang='tsx'>
......@@ -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>
<div>iframe</div>
<div class="form-iframe">
<iframe width="100%" height="100%" src="https://www.baidu.com//" />
</div>
</template>
// 基于 @CONTROL/表单/CONTROL-BASE.vue.ftl 生成
<script lang='tsx'>
......
......@@ -964,7 +964,7 @@ export default class MainBase extends Vue implements ControlInterface {
if (!this.fetchAction) {
this.$Notice.error({
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;
}
......@@ -1093,7 +1093,7 @@ export default class MainBase extends Vue implements ControlInterface {
if (!this.removeAction) {
this.$Notice.error({
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;
}
......@@ -1207,7 +1207,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public addBatch(arg: any = {}): void {
if(!this.fetchAction){
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: '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;
}
if(!arg){
......@@ -2101,7 +2101,7 @@ export default class MainBase extends Vue implements ControlInterface {
try {
if (Object.is(item.rowDataState, 'create')) {
if (!this.createAction) {
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: '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 {
Object.assign(item, { viewparams: this.viewparams });
const tempContext = Util.deepCopy(this.context);
......@@ -2110,7 +2110,7 @@ export default class MainBase extends Vue implements ControlInterface {
}
}else if (Object.is(item.rowDataState, 'update')){
if (!this.updateAction) {
this.$Notice.error({ title: (this.$t('app.commonWords.wrong') as string), desc: '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 {
Object.assign(item, { viewparams: this.viewparams });
const tempContext = Util.deepCopy(this.context);
......@@ -2186,7 +2186,7 @@ export default class MainBase extends Vue implements ControlInterface {
if(!this.loaddraftAction){
this.$Notice.error({
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;
}
......
......@@ -97,6 +97,7 @@ export default class MainModel {
name: 'ibizorderdetail',
prop: 'ibizorderdetailid',
},
{
name:'size',
prop:'size',
......
......@@ -12,18 +12,6 @@
"path" : "PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"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" : "图书名称",
"codeName" : "ibizbookname",
"columnType" : "DEFGRIDCOLUMN",
......@@ -59,6 +47,18 @@
"widthUnit" : "px",
"enableExpand" : 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" : "借出日期",
"codeName" : "lendouttime",
......
......@@ -20,6 +20,18 @@
}
} ],
"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" : "图书名称",
"codeName" : "ibizbookname",
"columnType" : "DEFGRIDCOLUMN",
......@@ -43,18 +55,6 @@
"widthUnit" : "px",
"enableExpand" : 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" : [ {
"getChildPSDETreeNode" : {
......
......@@ -42,18 +42,6 @@
"id" : "GANTT"
},
"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" : "图书名称",
"codeName" : "ibizbookname",
"columnType" : "DEFGRIDCOLUMN",
......@@ -89,6 +77,18 @@
"widthUnit" : "px",
"enableExpand" : 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" : "借出日期",
"codeName" : "lendouttime",
......
......@@ -88,6 +88,18 @@
"id" : "TREEGRIDEX"
},
"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" : "图书名称",
"codeName" : "ibizbookname",
"columnType" : "DEFGRIDCOLUMN",
......@@ -111,18 +123,6 @@
"widthUnit" : "px",
"enableExpand" : 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" : [ {
"getChildPSDETreeNode" : {
......
......@@ -5569,7 +5569,9 @@
"pluginType" : "GRID_RENDER",
"refMode" : "CONTROL",
"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" : "编辑器数量",
"getPSSysPFPlugin" : {
......@@ -5637,7 +5639,8 @@
"pluginType" : "CUSTOM",
"refMode" : "CONTROL",
"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" : "表单测试插件",
"getPSSysPFPlugin" : {
......@@ -5725,7 +5728,9 @@
"pluginType" : "VIEW_CUSTOM",
"refMode" : "APPVIEW",
"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" : "选项操作视图按钮左对齐",
"getPSSysPFPlugin" : {
......@@ -216,7 +216,9 @@
"pluginType" : "GRID_RENDER",
"refMode" : "CONTROL",
"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" : "编辑器数量",
"getPSSysPFPlugin" : {
......@@ -284,7 +286,8 @@
"pluginType" : "CUSTOM",
"refMode" : "CONTROL",
"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" : "表单测试插件",
"getPSSysPFPlugin" : {
......@@ -372,7 +375,9 @@
"pluginType" : "VIEW_CUSTOM",
"refMode" : "APPVIEW",
"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" : "选项操作视图按钮左对齐",
"getPSSysPFPlugin" : {
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册