feat: 地区选择器改走接口、订单市价重算与资金流水、同步日志内容复用

region-address-picker 接 region-picker API;订单支持按进价重算 market_price、追踪页资金流水;MES/ERP/中台同步日志共用内容查看组件;地区管理支持 pid 下钻与拼音检索。
This commit is contained in:
李琦
2026-10-09 10:02:33 +08:00
parent 87c480f391
commit 8df1ffb80a
26 changed files with 2256 additions and 1109 deletions

View File

@@ -0,0 +1,64 @@
import { requestClient } from '#/api/request';
const prefix = 'region-picker/';
/** 子节点项(children 接口) */
export interface RegionPickerChild {
id: number;
name: string;
code: string;
pid: number;
level: number;
pinyin_first: string;
pinyin_full: string;
deleted_at: number;
has_children: boolean;
}
/** 搜索命中项 */
export interface RegionPickerSearchHit extends RegionPickerChild {
path: { id: number; name: string; level: number; pid: number }[];
path_label: string;
complete: boolean;
}
/** 按省+叶解析 */
export interface RegionPickerResolvedPair {
province_id: number;
city_id: number;
province?: RegionPickerChild | null;
city?: { id: number; name: string; level: number; pid: number } | null;
district?: { id: number; name: string; level: number; pid: number } | null;
path_label: string;
}
/** 懒加载子级 xk-api GET /region-picker/children */
export async function getRegionChildren(pid = 0) {
return requestClient.get<RegionPickerChild[]>(`${prefix}children`, {
params: { pid },
});
}
/** 合一搜索 xk-api GET /region-picker/search */
export async function searchRegions(keyword: string, limit = 30) {
return requestClient.get<RegionPickerSearchHit[]>(`${prefix}search`, {
params: { keyword, limit },
});
}
/** 按省+叶回显 xk-api GET /region-picker/resolve */
export async function resolveRegionPair(provinceId: number, cityId: number) {
return requestClient.get<RegionPickerResolvedPair>(`${prefix}resolve`, {
params: { province_id: provinceId, city_id: cityId },
});
}
/** 批量 ID 解析 */
export async function resolveRegionIds(ids: number[]) {
return requestClient.get<{ items: RegionPickerSearchHit[] }>(
`${prefix}resolve`,
{
params: { ids: ids.join(',') },
},
);
}