import { CreateAssetQuery, RemoveAssetsQuery, GetAssetListQuery, UpdateAssetQuery, AssetInfo, AllAssetInfo, } from '@easytwin/core'; import { request } from '@/utils'; import apis from '@/constants/api.swagger-constants'; /** * 通过 iD 获取资产 * @author xuek * @since 2021-12-28 * @param { string } id * @returns { Promise } */ export async function getById(id: string): Promise { try { return await request(apis.assetGet, { params: { id } }); } catch (err) { console.error('getAssetById:', err); return Promise.reject('获取资产失败!'); } } /** * 获取资产列表 * @author xuek * @since 2022-05-26 * @param { GetAssetListQuery } query * @returns { Promise } */ export async function getList(query: GetAssetListQuery): Promise { try { const { id } = query; const result: AssetInfo[] = await request(apis.assetsGet); return result.filter((item) => item.categoryId === id); } catch (err) { console.error('getAssetList:', err); return Promise.reject('获取资产列表失败!'); } } /** * 获取"所有资产"列表 * @author xuek * @since 2021-12-28 * @param { GetAssetListQuery } query * @returns { Promise } */ export async function getPageList(query: GetAssetListQuery): Promise { try { const result = await request(apis.assetsAllGet, { query }); return result; } catch (err) { console.error('getAssetPageList:', err); return Promise.reject('获取资产分页列表失败!'); } } /** * 创建资产 * @author xuek * @since 2021-12-28 * @param { CreateAssetQuery } query * @returns { Promise } */ export async function create(query: CreateAssetQuery): Promise { try { } catch (err) { console.error('addAsset:', err); return Promise.reject('添加资产失败!'); } } /** * 更新资产 * @author xuek * @since 2021-12-28 * @param { UpdateAssetQuery } query * @returns { Promise } */ export async function update(query: UpdateAssetQuery): Promise { try { } catch (err) { console.error('addAsset:', err); return Promise.reject('添加资产失败!'); } } /** * 删除资产 * @author xuek * @since 2021-12-28 * @param { RemoveAssetsQuery } query * @returns { Promise } */ export async function remove(query: RemoveAssetsQuery): Promise { try { const { ids } = query; return await Promise.all(ids.map(async (id) => request(apis.assetDelete, { params: { id } }))); } catch (err) { console.error('removeAsset:', err); return Promise.reject('删除资产失败!'); } }