diff --git a/packages/runtime/src/constant/sys-uiaction-tag.ts b/packages/runtime/src/constant/sys-uiaction-tag.ts index 7ac1d700cf9d8d1a812ead52af42e2b90c702890..9e6a3644ccafaf720d35d5fa2601961b81686279 100644 --- a/packages/runtime/src/constant/sys-uiaction-tag.ts +++ b/packages/runtime/src/constant/sys-uiaction-tag.ts @@ -118,7 +118,7 @@ export enum SysUIActionTag { /** * 添加全部 */ - 'ADD_ALL' = 'RemoveAll', + 'ADD_ALL' = 'AddAll', /** * 登出 */ diff --git a/packages/runtime/src/interface/controller/controller/control/i-list.controller.ts b/packages/runtime/src/interface/controller/controller/control/i-list.controller.ts index 65948717c1340d263463496b7e787228360c2ee0..7b7c33afd5aecef2cbe824786c13815332ad4ab6 100644 --- a/packages/runtime/src/interface/controller/controller/control/i-list.controller.ts +++ b/packages/runtime/src/interface/controller/controller/control/i-list.controller.ts @@ -12,4 +12,24 @@ import { IMDControlController } from './i-md-control.controller'; * @extends {IMDControlController} */ export interface IListController - extends IMDControlController {} + extends IMDControlController { + /** + * 设置列表数据 + * + * @author zk + * @date 2023-05-26 02:05:55 + * @param {IData[]} items + * @memberof IListController + */ + setData(items: IData[]): void; + + /** + * 获取列表全部数据 + * + * @author zk + * @date 2023-05-26 02:05:26 + * @return {*} {IData[]} + * @memberof IListController + */ + getAllData(): IData[]; +} diff --git a/packages/runtime/src/interface/controller/controller/control/i-pickup-view-panel.controller.ts b/packages/runtime/src/interface/controller/controller/control/i-pickup-view-panel.controller.ts new file mode 100644 index 0000000000000000000000000000000000000000..3ae1fe61f2802516a6cfd62c06c251f39238861f --- /dev/null +++ b/packages/runtime/src/interface/controller/controller/control/i-pickup-view-panel.controller.ts @@ -0,0 +1,38 @@ +import { IDEPickupViewPanel } from '@ibiz/model-core'; +import { IPickupViewPanelEvent } from '../../event'; +import { IPickupViewPanelState } from '../../state'; +import { IControlController } from './i-control.controller'; + +/** + * 选择视图面板控制器 + * + * @export + * @interface IPickupViewPanelController + * @extends {IControlController} + */ +export interface IPickupViewPanelController + extends IControlController< + IDEPickupViewPanel, + IPickupViewPanelState, + IPickupViewPanelEvent + > { + /** + * 获取选中数据 + * + * @author zk + * @date 2023-05-26 02:05:17 + * @return {*} {IData[]} + * @memberof IPickupViewPanelController + */ + getSelectedData(): Promise; + + /** + * 获取所有数据 + * + * @author zk + * @date 2023-05-26 02:05:17 + * @return {*} {IData[]} + * @memberof IPickupViewPanelController + */ + getAllData(): Promise; +} diff --git a/packages/runtime/src/interface/controller/controller/control/index.ts b/packages/runtime/src/interface/controller/controller/control/index.ts index 9d6d535fc8f7e7f8590f5c8e6730197c6c475464..e181ef9778be23b1c0cb3cf0856e80a2e374f98b 100644 --- a/packages/runtime/src/interface/controller/controller/control/index.ts +++ b/packages/runtime/src/interface/controller/controller/control/index.ts @@ -14,3 +14,4 @@ export * from './i-toolbar.controller'; export * from './i-view-layout-panel.controller'; export * from './i-caption-bar.controller'; export * from './i-data-view-control.controller'; +export * from './i-pickup-view-panel.controller'; diff --git a/packages/runtime/src/interface/controller/event/control/i-pickup-view-panel.event.ts b/packages/runtime/src/interface/controller/event/control/i-pickup-view-panel.event.ts new file mode 100644 index 0000000000000000000000000000000000000000..1525d6df75eab18bb75819a1b42cfb68bbb41a6f --- /dev/null +++ b/packages/runtime/src/interface/controller/event/control/i-pickup-view-panel.event.ts @@ -0,0 +1,41 @@ +import { EventBase } from '../argument'; +import { IControlEvent } from './i-control.event'; + +/** + * 选择视图面板部件事件 + * + * @export + * @interface IPickupViewPanelEvent + * @extends {IControlEvent} + */ +export interface IPickupViewPanelEvent extends IControlEvent { + /** + * 选中数据变更事件 + * + * @type {{ + * event: EventBase; + * emitArgs: { data: IData[] }; + * }} + * @memberof IPickupViewPanelEvent + */ + onSelectionChange: { + event: EventBase; + emitArgs: { data: IData[] }; + }; + + /** + * 激活数据变更事件 + * + * @author zk + * @date 2023-05-26 11:05:52 + * @type {{ + * event: EventBase; + * emitArgs: { data: IData[] }; + * }} + * @memberof IPickupViewPanelEvent + */ + onDataActive: { + event: EventBase; + emitArgs: { data: IData[] }; + }; +} diff --git a/packages/runtime/src/interface/controller/event/control/index.ts b/packages/runtime/src/interface/controller/event/control/index.ts index dfb5f4d75ff694a3bb75010aff09b146c83587ac..518241d32ab126f07ca449483e5ca3a6387489cd 100644 --- a/packages/runtime/src/interface/controller/event/control/index.ts +++ b/packages/runtime/src/interface/controller/event/control/index.ts @@ -15,3 +15,4 @@ export * from './i-view-layout-panel.event'; export * from './i-wizard-panel.event'; export * from './i-kanban.event'; export * from './i-caption-bar.event'; +export * from './i-pickup-view-panel.event'; diff --git a/packages/runtime/src/interface/controller/event/view/i-md-view.event.ts b/packages/runtime/src/interface/controller/event/view/i-md-view.event.ts index 0d8f193b6e26c06cabfbc6ae1e76a25867165993..3cdfb32d90822f9765744b32312fcaf465f044c8 100644 --- a/packages/runtime/src/interface/controller/event/view/i-md-view.event.ts +++ b/packages/runtime/src/interface/controller/event/view/i-md-view.event.ts @@ -1,3 +1,4 @@ +import { EventBase } from '../argument'; import { IViewEvent } from './i-view.event'; /** @@ -9,4 +10,20 @@ import { IViewEvent } from './i-view.event'; * @interface IMDViewEvent * @extends {IViewEvent} */ -export interface IMDViewEvent extends IViewEvent {} +export interface IMDViewEvent extends IViewEvent { + /** + * 数据激活事件 + * + * @author zk + * @date 2023-05-26 10:05:26 + * @type {{ + * event: EventBase; + * emitArgs: { data: IData[] }; + * }} + * @memberof IMDViewEvent + */ + onDataActive: { + event: EventBase; + emitArgs: { data: IData[] }; + }; +} diff --git a/packages/runtime/src/interface/controller/state/control/i-pickup-view-panel.state.ts b/packages/runtime/src/interface/controller/state/control/i-pickup-view-panel.state.ts new file mode 100644 index 0000000000000000000000000000000000000000..245a40f9f65cbc8c8ab1a36ffb50510175bf212c --- /dev/null +++ b/packages/runtime/src/interface/controller/state/control/i-pickup-view-panel.state.ts @@ -0,0 +1,34 @@ +import { IControlState } from './i-control.state'; + +/** + * 选择视图面板UI状态 + * + * @export + * @interface IPickupViewPanelState + * @extends {IControlState} + */ +export interface IPickupViewPanelState extends IControlState { + /** + * 单选 + * + * @type {boolean} + * @memberof IPickupViewPanelState + */ + singleSelect: boolean; + + /** + * 嵌入选择视图的上下文 + * + * @type {IContext} + * @memberof IPickupViewPanelState + */ + context: IContext; + + /** + * 嵌入选择视图的视图参数 + * + * @type {IParams} + * @memberof IPickupViewPanelState + */ + params: IParams; +} diff --git a/packages/runtime/src/interface/controller/state/control/index.ts b/packages/runtime/src/interface/controller/state/control/index.ts index 5a4ca494c1e031f6a6d3eed0629224888662198d..7913cc289609b8a8f81f825e96ad73cd9d29be36 100644 --- a/packages/runtime/src/interface/controller/state/control/index.ts +++ b/packages/runtime/src/interface/controller/state/control/index.ts @@ -12,3 +12,4 @@ export * from './i-toolbar.state'; export * from './i-view-layout-panel.state'; export * from './i-caption-bar.state'; export * from './i-data-view-control.state'; +export * from './i-pickup-view-panel.state'; diff --git a/packages/runtime/src/interface/controller/state/view/i-mpickup-view.state.ts b/packages/runtime/src/interface/controller/state/view/i-mpickup-view.state.ts new file mode 100644 index 0000000000000000000000000000000000000000..9bc3b524b0047aa9003a06288da9fbece1d6ef2b --- /dev/null +++ b/packages/runtime/src/interface/controller/state/view/i-mpickup-view.state.ts @@ -0,0 +1,22 @@ +import { IViewState } from './i-view.state'; + +/** + * 数据多项选择视图UI状态 + * + * @author zk + * @date 2023-05-25 03:05:39 + * @export + * @interface IMPickUpViewState + * @extends {IViewState} + */ +export interface IMPickupViewState extends IViewState { + /** + * 选中数据 + * + * @author zk + * @date 2023-05-25 05:05:10 + * @type {IData[]} + * @memberof IMPickupViewState + */ + selectData: IData[]; +} diff --git a/packages/runtime/src/interface/controller/state/view/i-pickup-grid-view.state.ts b/packages/runtime/src/interface/controller/state/view/i-pickup-grid-view.state.ts new file mode 100644 index 0000000000000000000000000000000000000000..8c18ab7add66f041629f087cb77cbe1ce2b3b551 --- /dev/null +++ b/packages/runtime/src/interface/controller/state/view/i-pickup-grid-view.state.ts @@ -0,0 +1,22 @@ +import { IGridViewState } from './i-grid-view.state'; + +/** + * 表格选择视图UI状态 + * + * @author zk + * @date 2023-05-25 05:05:43 + * @export + * @interface IPickupGridViewState + * @extends {IGridViewState} + */ +export interface IPickupGridViewState extends IGridViewState { + /** + * 是否单选 + * + * @author zk + * @date 2023-05-26 05:05:02 + * @type {boolean} + * @memberof IPickupGridViewState + */ + singleSelect: boolean; +} diff --git a/packages/runtime/src/interface/controller/state/view/i-pickup-view.state.ts b/packages/runtime/src/interface/controller/state/view/i-pickup-view.state.ts new file mode 100644 index 0000000000000000000000000000000000000000..5e8dba2472eb0cd51ae36b3f4348db0252f30fba --- /dev/null +++ b/packages/runtime/src/interface/controller/state/view/i-pickup-view.state.ts @@ -0,0 +1,10 @@ +import { IViewState } from './i-view.state'; + +/** + * 单数据选择视图UI状态 + * + * @export + * @interface IPickupViewState + * @extends {IViewState} + */ +export interface IPickupViewState extends IViewState {} diff --git a/packages/runtime/src/interface/controller/state/view/index.ts b/packages/runtime/src/interface/controller/state/view/index.ts index eea403dfc139af2931431d1abcfc58281a759ca8..7ff8c0df86238a88f53de2f659eaabeb40980d47 100644 --- a/packages/runtime/src/interface/controller/state/view/index.ts +++ b/packages/runtime/src/interface/controller/state/view/index.ts @@ -5,3 +5,6 @@ export * from './i-grid-view.state'; export * from './i-list-view.state'; export * from './i-data-view.state'; export * from './i-opt-view.state'; +export * from './i-mpickup-view.state'; +export * from './i-pickup-view.state'; +export * from './i-pickup-grid-view.state';