import { ID } from '../model/baseentity'; export interface RestApiInfo { action?: string; actionName?: string; url?: string; httpMethod?: string; fullUrl?: string; } export interface EntityApi extends RestApiInfo { entityName?: string; entityTitle?: string; } export interface EntityInfo { entityName?: string; entityTitle?: string; baseUrl?: string; tableName?: string; className?: string; idProp?: string; nameProp?: string; sortProp?: string; apis?: EntityApi[]; } export interface IEntityNameValue { name?: string; value?: any; } export declare enum EntityPropType { ENTITY_PROPTYPE_STR = "C", ENTITY_PROPTYPE_DATE = "D", ENTITY_PROPTYPE_NUM = "N", ENTITY_PROPTYPE_REF = "REF" } export interface EntityPropMetadata { /** * 属性名称 */ propName?: string; /** * 属性类型:C/D/N/REF */ propType?: EntityPropType; /** * 用于显示的属性名称 */ propTitle?: string; /** * 是否父节点 */ isParent?: boolean; /** * 是否内部编码节点 */ isInnercode?: boolean; /** * 是否必须 */ required?: boolean; /** * 最小长度 */ minLength?: number; /** * 最大长度 */ maxLength?: number; /** * 最小值 */ minValue?: any; /** * 最大值 */ maxValue?: any; /** * 精度(小数位数) */ precision?: number; /** * 正则匹配 */ pattern?: string; /** * 日期格式 */ format?: string; /** * 可选值列表 */ listValues?: IEntityNameValue[]; /** * 引用实体名称 */ refEntityName?: string; /** * 对引用实体属性,表示其ID属性 */ refIdProp?: string; /** * 对引用实体属性,表示其名称属性 */ refNameProp?: string; /** * 应用实体父ID */ refParentId?: ID; str?: boolean; num?: boolean; date?: boolean; ref?: boolean; extend?: boolean; } /** * 元数据扩展属性 */ export interface IEntityMetadataExtra { attributeName?: string; attributeVal?: string; } export interface EntityMeta { /** * 实体名称,默认类名称(simple) */ entityName?: string; /** * 实体名称,用于显示,默认实体名称 */ entityTitle?: string; /** * 实体ID属性名称,默认:id */ idProp?: string; /** * 标识实体的属性名称,如果一个实体需要用多个字段来标识,请定义@Transient字段来组装 */ nameProp?: string; /** * 排序字段,为空则用nameProp排序 */ sortProp?: string; /** * 明细元数据 */ detailMetadata?: EntityMeta; /** * 明细字段名称 */ detailPropname?: string; /** * 主表引用属性 */ masterPropname?: string; /** * 树形实体父节点属性 */ parentProp?: string; /** * 树形实体父节点属性类型: REF/C */ parentPropType?: EntityPropType; /** * 属性元信息列表 */ props?: EntityPropMetadata[]; /** * 扩展属性 */ extraAttributes?: IEntityMetadataExtra[]; }