@farris/bef-vue
Version:
197 lines (196 loc) • 5.49 kB
TypeScript
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;
}