提交 707610b0 编写于 作者: tony001's avatar tony001

update:更新

上级 4e2411c0
import { deepCopy, GridControlState, IActionParam, IParam, MDControl } from "@core"; import { deepCopy, GridControlState, IActionParam, IParam, MDControl } from "@core";
import { createUUID } from "qx-util"; import { createUUID } from "qx-util";
/** /**
* @description 表格部件 * @description 表格部件
* @export * @export
......
export * from './control-base' export * from './control-base'
export * from './main-control' export * from './main-control'
export * from './md-control'
export * from './exp-bar-control' export * from './exp-bar-control'
export * from './form-control' export * from './form-control'
export * from './menu-control' export * from './menu-control'
......
...@@ -20,20 +20,14 @@ export class ControlVO extends ControlVOBase { ...@@ -20,20 +20,14 @@ export class ControlVO extends ControlVOBase {
} }
export const ctrlState = { export const ctrlState = {
controlCodeName: "{{ctrl.codeName}}", controlCodeName: '{{ctrl.codeName}}',
controlName: "{{ctrl.name}}", controlName: '{{ctrl.name}}',
appEntityCodeName:'{{ctrl.appEntity.codeName}}',
controlService: new GridService<ControlVO>(ControlVO, new {{pascalCase ctrl.psAppDataEntity.codeName}}Service() ), controlService: new GridService<ControlVO>(ControlVO, new {{pascalCase ctrl.psAppDataEntity.codeName}}Service() ),
data: [], items: [],
selectedRowKeys: [], selectedRowKeys: [],
gridAgg: { // 多数据部件分组
aggMode: "{{ctrl.aggMode}}", mdCtrlGroup: {
aggData: [],
{{#if ctrl.aggPSAppDataEntity}}
aggEntity: "{{ctrl.aggPSAppDataEntity.codeName}}",
aggDataSet: "{{ctrl.aggPSAppDEDataSet.codeName}}",
{{/if}}
},
gridGroup: {
enableGroup: {{ctrl.enableGroup}}, enableGroup: {{ctrl.enableGroup}},
groupMode: "{{ctrl.groupMode}}", groupMode: "{{ctrl.groupMode}}",
groupField: "{{lowerCase ctrl.groupPSAppDEField.codeName}}", groupField: "{{lowerCase ctrl.groupPSAppDEField.codeName}}",
...@@ -44,12 +38,14 @@ export const ctrlState = { ...@@ -44,12 +38,14 @@ export const ctrlState = {
}, },
{{/if}} {{/if}}
}, },
gridSort: { // 多数据部件排序
mdCtrlSort: {
noSort: {{ctrl.noSort}}, noSort: {{ctrl.noSort}},
minorSortDir: "{{#if ctrl.minorSortDir}}{{ctrl.minorSortDir}}{{/if}}", minorSortDir: "{{#if ctrl.minorSortDir}}{{ctrl.minorSortDir}}{{/if}}",
minorSortPSDEF: "{{ctrl.minorSortPSAppDEField.codeName}}", minorSortPSDEF: "{{ctrl.minorSortPSAppDEField.codeName}}",
}, },
gridPaging: { // 多数据部件分页
mdCtrlPaging: {
enablePagingBar: {{ctrl.enablePagingBar}}, enablePagingBar: {{ctrl.enablePagingBar}},
current: 1, current: 1,
pageSize: {{#if ctrl.pagingSize}}{{ctrl.pagingSize}}{{else}}20{{/if}}, pageSize: {{#if ctrl.pagingSize}}{{ctrl.pagingSize}}{{else}}20{{/if}},
...@@ -61,6 +57,14 @@ export const ctrlState = { ...@@ -61,6 +57,14 @@ export const ctrlState = {
pageSizeOptions: ['10','20','50','100'], pageSizeOptions: ['10','20','50','100'],
}{{else}}false{{/if}}, }{{else}}false{{/if}},
}, },
gridAgg: {
aggMode: "{{ctrl.aggMode}}",
aggData: [],
{{#if ctrl.aggPSAppDataEntity}}
aggEntity: "{{ctrl.aggPSAppDataEntity.codeName}}",
aggDataSet: "{{ctrl.aggPSAppDEDataSet.codeName}}",
{{/if}}
},
uAColumnModel:[ uAColumnModel:[
{{#each ctrl.psDEGridColumns as | column |}} {{#each ctrl.psDEGridColumns as | column |}}
{{>(lookup 'UACOLUMNMODEL') item=column}} {{>(lookup 'UACOLUMNMODEL') item=column}}
......
...@@ -6,11 +6,11 @@ import { GridControl, IActionParam, IParam, IContext, ControlAction, deepCopy } ...@@ -6,11 +6,11 @@ import { GridControl, IActionParam, IParam, IContext, ControlAction, deepCopy }
interface Props { interface Props {
context: IContext; context: IContext;
multiple: boolean; isMultiple: boolean;
rowEditState: boolean; rowEditState: boolean;
rowActiveMode: 0 | 1 | 2; rowActiveMode: 0 | 1 | 2;
selectedData: IParam[]; selectedData: IParam[];
selectFirstDefault: boolean; isSelectDefault: boolean;
viewParams?: IParam; viewParams?: IParam;
controlAction: ControlAction; controlAction: ControlAction;
showBusyIndicator?: boolean; showBusyIndicator?: boolean;
...@@ -27,24 +27,33 @@ const props = withDefaults(defineProps < Props > (), { ...@@ -27,24 +27,33 @@ const props = withDefaults(defineProps < Props > (), {
}) })
// emit声明 // emit声明
interface CtrlEmit { const emit = defineEmits<{(event: 'ctrlevent', value: IActionParam): void;}>();
(name: "ctrlEvent", value: IActionParam): void;
}
const emit = defineEmits < CtrlEmit > ();
// 安装功能模块,提供状态和能力 // 安装功能模块,提供状态和能力
const { state, load, handleEditorEvent, handleToolbarEvent, custom } = new GridControl(ctrlState, props, emit).moduleInstall(); const { state, custom } = new GridControl(ctrlState, props, emit).moduleInstall();
const { scrollOption, rowKey, rowClassName, customRow, rowSelectionOption, resizeColumn, handleGridChange } = custom; const { scrollOption, rowKey, rowClassName, customRow, rowSelectionOption, resizeColumn, onGridChange } = custom;
// 暴露内部状态及能力 // 暴露内部状态及能力
defineExpose({ state, name: '{{ctrl.name}}', load }); defineExpose({ state, name: '{{ctrl.name}}' });
</script> </script>
<template> <template>
<a-table bordered sticky class="app-grid{{#if ctrl.psSysCss}} {{ctrl.psSysCss.cssName}}{{/if}}" :rowKey="rowKey" <a-table
:showHeader="{{#if ctrl.hideHeader}}false{{else}}true{{/if}}" :scroll="scrollOption" bordered
:sortDirections="['ascend', 'descend']" :data-source="state.data" :row-selection="rowSelectionOption" sticky
:columns="state.columnsModel" :pagination="state.gridPaging.pagination" :customRow="customRow" class="app-grid"
:rowClassName="rowClassName" @change="handleGridChange" @resizeColumn="resizeColumn"> :rowKey="rowKey"
:showHeader="true"
:scroll="scrollOption"
:sortDirections="['ascend', 'descend']"
:data-source="state.items"
:row-selection="rowSelectionOption"
:columns="state.columnsModel"
:pagination="state.mdCtrlPaging.pagination"
:customRow="customRow"
:rowClassName="rowClassName"
@change="onGridChange"
@resizeColumn="resizeColumn"
>
<template #emptyText> <template #emptyText>
<div class="not-data"> <div class="not-data">
<span class="empty-text"> <span class="empty-text">
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册