Files
KCGL/inventory-web/src/api/inbound/service.ts
dxc 9f0134b2e4 feat: add material search filters to semi, product, service modules
Co-authored-by: aider (openai/DeepSeek-V3.2-Thinking) <aider@aider.chat>
2026-02-11 14:42:16 +08:00

140 lines
2.6 KiB
TypeScript

import request from '@/utils/request'
export interface ServiceItem {
id: number
base_id: number
sku: string
sale_price: number
provider_name: string
description: string
created_at: string
updated_at: string
material_name?: string
spec_model?: string
unit?: string
}
export interface ServiceListResponse {
code: number
msg: string
data: {
items: ServiceItem[]
total: number
page: number
per_page: number
}
}
export interface ServiceQueryParams {
page?: number
per_page?: number
keyword?: string
start_date?: string
end_date?: string
provider_name?: string
}
export interface ServiceCreateRequest {
base_id: number
sale_price: number
provider_name: string
description?: string
}
export interface ServiceUpdateRequest {
sale_price?: number
provider_name?: string
description?: string
}
export interface MaterialBaseItem {
id: number
name: string
spec: string
category: string
unit: string
type: string
}
// 获取服务权益列表
export function getServiceList(params: ServiceQueryParams) {
return request<ServiceListResponse>({
url: '/v1/inbound/service',
method: 'get',
params
})
}
// 创建服务权益
export function createService(data: ServiceCreateRequest) {
return request({
url: '/v1/inbound/service',
method: 'post',
data
})
}
// 获取服务权益详情
export function getServiceDetail(id: number) {
return request<ServiceListResponse>({
url: `/v1/inbound/service/${id}`,
method: 'get'
})
}
// 更新服务权益
export function updateService(id: number, data: ServiceUpdateRequest) {
return request({
url: `/v1/inbound/service/${id}`,
method: 'put',
data
})
}
// 搜索基础物料
export function searchMaterialBase(keyword: string) {
return request<{
code: number
msg: string
data: MaterialBaseItem[]
}>({
url: '/v1/inbound/service/search-base',
method: 'get',
params: { keyword }
})
}
// 供应商建议
export function getProviderSuggestions(params: any) {
return request({
url: '/v1/inbound/service/suggestions/providers',
method: 'get',
params
})
}
// 用户建议
export function getUserSuggestions(params: any) {
return request({
url: '/v1/inbound/service/suggestions/users',
method: 'get',
params
})
}
// 筛选选项
export function getFilterOptions() {
return request({
url: '/v1/inbound/service/options',
method: 'get'
})
}
// 删除服务权益
export function deleteService(id: number) {
return request({
url: `/v1/inbound/service/${id}`,
method: 'delete'
})
}