import { IObject } from '../../util'; /** * 值类型 */ export interface HelpValue { /** 值 */ value: any; /** 显示标题 */ label: string; /** 数据源 */ origin?: any; } export interface UserHelpOutProps { /** 是否多选 * @default false */ multiple?: boolean; /** 当前登录的是否为项目;不传的时候,默认读当前登录信息里的状态 */ isProject?: boolean; /** 项目编码;不传的时候,默认读当前登录信息里的状态 */ projCode?: string; } /** * 传入的用户格式 */ export interface LocalUser { /** 用户编码 */ userNo: string; /** 用户名称 */ userName: string; /** 所属组织 */ belongOrgName: string; /** 所属部门 */ belongDeptName: string; /** 其他任意自定义字段 */ [prop: string]: any; } /** * 弹出层 Props */ export interface BaseUserHelpProps extends UserHelpOutProps { /** 回填显示字段 */ labelField?: string; /** 回填值字段 */ valueField?: string; /** 顶部导航栏标题 */ title?: string; /** 选中值 */ value?: HelpValue[]; /** 走本地数据,不走接口 */ localData?: Array; /** 确认回调 */ onOk?: (data: HelpValue[]) => void; /** 取消回调 */ onCancel?: () => void; } /** * 弹出层 State */ export interface BaseUserHelpState { /** 已选值 */ selectedValue: HelpValue[]; /** 当前页数 */ pageIndex: number; /** 关键字搜索 */ keywords: string; /** 登录的是否为项目 */ isProject: boolean; /** 当前登录的项目编码 */ projCode: string; /** 当前tab页 */ activeKey: string; /** 面包屑数据 */ breadcrumbData: Array; /** 当前组织层级 */ curOrganization?: IObject; } /** * 指令式调用参数 */ export type OpenUserHelpParams = Omit; /** * 指令式调用返回 */ export type OpenUserHelpReturn = Promise; /** * 表单公共 Props */ export interface PublicHelpProps { /** 禁用 */ disabled: boolean; /** 空值提示 */ placeholder: string; /** 打开帮助之前的钩子,若返回 false 则停止打开 */ onBeforeOpen: () => boolean | Promise; } /** * 表单单选 Props */ export interface SingleUserHelpProps extends Partial, Omit { /** 已选值 */ value: HelpValue; /** 变动回调 */ onChange: (val: HelpValue | null) => void; } /** * 表单多选 Props */ export interface MultipleUserHelpProps extends Partial, Omit { /** 已选值 */ value: HelpValue[]; /** 变动回调 */ onChange: (val: HelpValue[]) => void; }