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

update:更新

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