feat: update appraisal ordering and payment flows

This commit is contained in:
wushumin
2026-06-03 18:14:40 +08:00
parent 0838db5aba
commit 6383ec5a2a
50 changed files with 6143 additions and 988 deletions

View File

@@ -179,6 +179,9 @@ export interface AdminOrderListItem {
brand_name: string;
service_provider: string;
service_provider_text: string;
price_package_name: string;
price_package_code: string;
price_package_price: number;
source_channel: string;
source_channel_text: string;
source_customer_id: string;
@@ -196,6 +199,9 @@ export interface AdminOrderDetail {
appraisal_no: string;
service_provider: string;
service_provider_text: string;
price_package_name: string;
price_package_code: string;
price_package_price: number;
source_channel: string;
source_channel_text: string;
source_customer_id: string;
@@ -320,6 +326,8 @@ export interface AdminManualOrderMaterialItem {
export interface AdminManualOrderCreatePayload {
service_provider: string;
price_package_id?: number;
price_package_code?: string;
product_info: {
category_id: number;
brand_id: number;
@@ -370,6 +378,7 @@ export interface AdminManualOrderMeta {
category_ids: number[];
supported_service_types: string[];
}>;
service_price_packages: AdminServicePriceProviderOption[];
}
export interface CatalogOverviewCard {
@@ -1404,6 +1413,44 @@ export interface AdminSystemConfigUploadResult {
original_name: string;
}
export interface AdminServicePricePackage {
id: number;
service_provider: string;
service_provider_text: string;
package_name: string;
package_code: string;
price: number;
description: string;
is_enabled: boolean;
is_default: boolean;
sort_order: number;
sla_hours: number;
created_at: string;
updated_at: string;
}
export interface AdminServicePriceProviderOption {
service_provider: string;
service_provider_text: string;
price: number;
sla_hours: number;
default_package_id: number;
default_package: AdminServicePricePackage | null;
packages: AdminServicePricePackage[];
}
export interface AdminServicePricePayload {
id?: number;
service_provider: string;
package_name: string;
package_code: string;
price: number;
description: string;
is_enabled: boolean;
is_default: boolean;
sort_order: number;
}
export interface AdminPageVisualsConfig {
order_background_image_url: string;
report_background_image_url: string;
@@ -2317,6 +2364,46 @@ export const adminApi = {
data: { id: number };
}>;
},
getServicePricePackages() {
return request.get("/api/admin/service-price-packages") as Promise<{
code: number;
message: string;
data: {
providers: Array<{
service_provider: string;
service_provider_text: string;
sla_hours: number;
}>;
list: AdminServicePricePackage[];
};
}>;
},
saveServicePricePackage(data: AdminServicePricePayload) {
return request.post("/api/admin/service-price-package/save", data) as Promise<{
code: number;
message: string;
data: { id: number };
}>;
},
updateServicePricePackageStatus(id: number, isEnabled: boolean) {
return request.post("/api/admin/service-price-package/status", {
id,
is_enabled: isEnabled,
}) as Promise<{
code: number;
message: string;
data: { id: number };
}>;
},
setDefaultServicePricePackage(id: number) {
return request.post("/api/admin/service-price-package/default", {
id,
}) as Promise<{
code: number;
message: string;
data: { id: number };
}>;
},
getExpressCompanies(params?: { enabled_only?: 0 | 1 }) {
return request.get("/api/admin/express-companies", { params }) as Promise<{
code: number;