UNPKG

dbweb-common

Version:

用`yarn add dbweb-common`安装,不要忘记修改`angular.json`里的 `architect\build\options\assets`,加上

157 lines (156 loc) 4.38 kB
import { OwnerByEnum, ILabelKey, IColumnType } from '../../services/eleview/types/model'; import { ConditionalTemplate } from '../../element/service/recordview-param'; export interface TableColumnType extends IColumnType { /**附加的属性,用于客户端 */ index: number; sticky: boolean; stickyEnd: boolean; showToolbar: boolean; } export declare enum Order { OrderAsc = "+", OrderDesc = "-", OrderNone = "" } export declare enum SelectType { Selected = "s", Unselected = "ns" } export interface ConditionalValue { Type: string; Field: string; Value: any; } export interface RangeInputConditionalValue { LowValue: string; HighValue: string; } export interface SelectConditionalValue { Value: string; OtherOption: string; Options: string[]; } export interface MultiSelectConditionalValue { Value: string[]; OtherOption: string; Options: string[]; } export interface SliderConditionalValue { LowValue: number; HighValue: number; PositiveInfinity: boolean; NegativeInfinity: boolean; Ratio: number; } export interface IFetchDataParam { /**分隔行的主键值*/ Divide?: Array<string>; /**排序的字段,升序只填字段名,降序字段名前加-(减号)*/ Order?: Array<string>; /**字段*/ Field?: string; /**运算符*/ Opt?: string; /**值*/ Value?: string; /**选择类型*/ SelType?: string; /**选择的主键*/ SelKeys?: Array<string>; /**每页最多行数*/ Limit?: number; /**开始行号*/ DivideRowNum?: number; Labels?: ILabelKey[]; View?: IElementViewDigest; ConditionalTemplate?: ConditionalValue[]; } export interface IFetchRowCountResult { RowCount: number; } export interface IFetchDataResultType { Error: string; FData: IFetchDataResult; } export interface IFetchDataResult { Title: string; Rows: Array<IRenderRow>; Columns: Array<IColumnType>; DisplayColumns: Array<IColumnType>; /**一般为0,除非最后一页,通过最后的序号得出总数 */ RowCount: number; /**下一页用到的起始序号 */ DownRowNum: number; /**下一页用到的起始分界值 */ DownDivide: string[]; /**非绑定记录的处理按钮的可用性 */ Processes: { [key: string]: IRenderProcess; }; } export interface IRenderProcess { URL: string; Sign: string; Enabled: boolean; } export interface IRenderRow { RowNum: number; /**是否被选中 */ Checked: boolean; /**该行关联的主键值,多字段用csv格式组合 */ Key: string; Data: any; /**绑定记录的处理按钮的可用性 */ Processes: { [key: string]: IRenderProcess; }; } /**菜单项定义中的处理按钮的参数 */ export interface IRecordViewProcess { Name: string; /**[namespace]:[name] 的方式*/ Icon: string; /**图标的颜色 */ Color: string; ElementName: string; Element: { Name: string; Label: string; LabelEN: string; Category: string; CategoryEN: string; Icon: string; Color: string; Controller: string; Bill: boolean; BillOperate: string; URL: string; }; BindRecord: boolean; /**传递到下一个工作元素的路径上,一般用来传递主键,如果为空则自动传递表的主键*/ TransPath: string[]; /**传递到下一个工作元素的参数,用模板来完成, 一般是用来传递到另一个RecordView的附加条件及标题 */ TransQuery: string; /**是否传递sql */ WithSql: boolean; /**非空的话计算可见性,用templater的语法*/ Visable: string; /**动态传入的more参数,从recordview的query中提取*/ MoreStr: string; } export interface IFetchParamResult { UniqueField: string[]; Processes: IRecordViewProcess[]; ConditionalTemplates: ConditionalTemplate[]; } export interface IDisplayColumn { Name: string; Hidden: boolean; Order: Order; } export interface IElementViewDigest { OwnerBy: OwnerByEnum; Owner: string; Name: string; }