UNPKG

@farris/bef-vue

Version:
197 lines (196 loc) 5.49 kB
import { HttpMethod, HttpRequestConfig, HttpClient } from '@farris/devkit-vue'; import { ResponseInfo } from './types'; import { IProxyExtend } from './bef-proxy-extend'; import { ChangeDetail } from './change/index'; /** * Bef API代理类 */ export declare abstract class BefProxy { httpClient: HttpClient; /** * 基路径 */ abstract baseUrl: string; /** * 代理扩展 */ protected proxyExtend: IProxyExtend; /** * 构造函数 */ constructor(httpClient: HttpClient); /** * 设置扩展策略 */ setProxyExtend(proxyExtend: IProxyExtend): void; /** * 列表数据查询(扩展) */ extendQuery(entityFilter: any): Promise<ResponseInfo>; /** * 查询数据 * @param entityFilter 过滤、排序、分页信息 * @returns * @description 和extendQuery类似,区别在于将查询参数放到body中 */ filter(entityFilter: any): Promise<ResponseInfo>; /** * 单条数据检索(扩展) */ extendRetrieve(id: string): Promise<ResponseInfo>; /** * 加锁编辑数据 * @param id * @returns */ edit(id: string): Promise<ResponseInfo>; /** * 新增数据 */ create(defaultValue?: any): Promise<ResponseInfo>; /** * 批量新增主表数据 * @param defaultValues 字段默认值,keyvalue格式 * @returns */ batchCreate(defaultValues: Array<any>): Promise<ResponseInfo>; /** * 新增从表或从从表数据 * @param fpath 实体路径 * @param defaultValues 默认值,keyvalue格式 * @returns */ createByPath(fpath: string, defaultValues?: Array<any>): Promise<ResponseInfo>; /** * 批量新增从表或从从表数据 * @param path * @param defaultValues * @returns */ batchCreateByPath(path: string, defaultValues: Array<any>): Promise<ResponseInfo>; update(changeDetails: ChangeDetail[]): Promise<ResponseInfo>; /** * 保存 */ save(): Promise<any>; /** * 删除 */ extendDelete(id: string): Promise<any>; /** * 删除从表或从从表数据 * @param fpath 实体路径 * @param id 实体id * @returns */ extendDeletByPath(fpath: string, id: string): Promise<any>; /** * 批量删除从表或从从表数据 * @param fPath 实体路径 * @param ids 要删除的实体id * @returns */ extendBatchDeleteByPath(fPath: string, ids: string[]): Promise<any>; /** * 删除并保存 */ deleteAndSave(id: any): Promise<any>; /** * 是否有未保存变更 * @returns */ hasChanges(): Promise<any>; /** * 批量删除实体 * @param ids 实体id数组 * @returns */ extensionBatchDeletion(ids: string[]): Promise<any>; /** * 取消 */ cancel(): Promise<any>; /** * 父节点分级方式新增同级 * @param id * @returns */ parentHierarchyCreateSibling(id: string): Promise<any>; /** * 父节点分级方式新增子级 * @param id * @returns */ parentHierarchyCreateChildLayer(id: string): Promise<any>; /** * 子对象父节点分级方式新增同级 * @param ids 数据id顺序列表 * @param nodes 节点编号列表 * @returns */ childNodeParentHierarchyCreateSibling(ids: string[], nodes: string[]): Promise<any>; /** * 子对象父节点分级方式新增子级 * @param ids 数据id顺序列表 * @param nodes 节点编号列表 * @returns */ childNodeParentHierarchyCreateChildLayer(ids: string[], nodes: string[]): Promise<any>; /** * 分级码分级方式新增同级 * @param id * @returns */ pathHierarchyCreateSibling(id: string): Promise<any>; /** * 分级码分级方式新增子级 * @param id * @returns */ pathHierarchyCreateChildLayer(id: string): Promise<any>; /** * 子对象分级码分级方式新增同级 * @param ids 数据id顺序列表 * @param nodes 节点编号列表 * @returns */ childNodePathHierarchyCreateSibling(ids: string[], nodes: string[]): Promise<any>; /** * 子对象分级码分级方式新增子级 * @param ids 数据id顺序列表 * @param nodes 节点编号列表 * @returns */ childNodePathHierarchyCreateChildLayer(ids: string[], nodes: string[]): Promise<any>; /** * 查询全部树信息 * @param id * @param virtualPropertyName * @param fullTreeType * @param loadType * @param filter * @returns */ parentIDFullTreeQuery(id: string, virtualPropertyName: string, fullTreeType: string, loadType: string, filter: any[]): Promise<any>; /** * 获取帮助数据 * @param labelId * @param nodeCode * @param queryParam * @returns */ elementhelps(labelId: string, nodeCode: string, queryParam: any): Promise<any>; /** * 发送请求 */ request(method: HttpMethod, url: string, requestConfigs?: HttpRequestConfig, ignoreHandlingChanges?: boolean, selfHandError?: boolean, ignoreError?: boolean): Promise<any>; private setContentType; private detectContentType; /** * 将路径转换为url * @param path * @returns */ private convertPathToUrl; private buildEntityFilter; }