Commit 1d28ddc8 by wusiyi

feat: 物流分拣规则改造,支持平台+物流公司条件 #1010010

parent 4b29cd82
...@@ -11,7 +11,11 @@ import { AddDeclarationRuleObj } from '@/views/logistics/types/declarationRule' ...@@ -11,7 +11,11 @@ import { AddDeclarationRuleObj } from '@/views/logistics/types/declarationRule'
import { LogisticsQuotation } from '@/views/logistics/types/logisticsQuotation' import { LogisticsQuotation } from '@/views/logistics/types/logisticsQuotation'
import { LogisticsPartitionObj } from '@/views/logistics/types/logisticsPartition' import { LogisticsPartitionObj } from '@/views/logistics/types/logisticsPartition'
import { ShippingAddressObj } from '@/views/logistics/types/shippingAddress' import { ShippingAddressObj } from '@/views/logistics/types/shippingAddress'
import { IsortingInfo } from '@/types/api/logistics' import {
IsortingInfo,
SortingPortAreaItem,
SortingPortOptionItem,
} from '@/types/api/logistics'
export interface ILogisticsList { export interface ILogisticsList {
code: string code: string
basicsName: string basicsName: string
...@@ -168,9 +172,12 @@ export function getLogisticsWayListByCompanyId(companyId: number) { ...@@ -168,9 +172,12 @@ export function getLogisticsWayListByCompanyId(companyId: number) {
} }
// 获取tictok物流承运商 // 获取tictok物流承运商
export function getTiktokCarrier() { export function getTiktokCarrier() {
return axios.get<never, BaseRespData<{ name: string; id: string, typeCode: string, label: string }[]>>( return axios.get<
'logisticsWay/getTiktokShippingProvider', never,
) BaseRespData<
{ name: string; id: string; typeCode: string; label: string }[]
>
>('logisticsWay/getTiktokShippingProvider')
} }
/** /**
...@@ -461,16 +468,14 @@ export function logisticsCompanyAllCodelist() { ...@@ -461,16 +468,14 @@ export function logisticsCompanyAllCodelist() {
'/logisticsCompany/allCodelist', '/logisticsCompany/allCodelist',
) )
} }
/** // 物流 分拣配置
分拣配置
*/
export function getsortingConfigListApi( export function getsortingConfigListApi(
data: IsortingInfo, data: IsortingInfo,
currentPage: number, currentPage: number,
pageSize: number, pageSize: number,
) { ) {
return axios.post<never, BasePaginationData<IsortingInfo>>( return axios.post<never, BasePaginationData<IsortingInfo>>(
'logistics/sortingConfig/list_page', 'logistics-sort-port-config/list_page',
{ {
...data, ...data,
currentPage, currentPage,
...@@ -481,34 +486,52 @@ export function getsortingConfigListApi( ...@@ -481,34 +486,52 @@ export function getsortingConfigListApi(
// 详情 // 详情
export function getSortingConfig(params: { id: number | string }) { export function getSortingConfig(params: { id: number | string }) {
return axios.get<never, BaseRespData<IsortingInfo>>( return axios.get<never, BaseRespData<IsortingInfo>>(
'logistics/sortingConfig/get', 'logistics-sort-port-config/get',
{ params }, { params },
) )
} }
export function createSortingApi(data: IsortingInfo) { export function createSortingApi(data: IsortingInfo) {
return axios.post<never, BaseRespData<never>>( return axios.post<never, BaseRespData<never>>(
'logistics/sortingConfig/add', 'logistics-sort-port-config/add',
data, data,
) )
} }
export function updateSortingApi(data: IsortingInfo) { export function updateSortingApi(data: IsortingInfo) {
return axios.post<never, BaseRespData<never>>( return axios.post<never, BaseRespData<never>>(
'logistics/sortingConfig/update', 'logistics-sort-port-config/update',
data, data,
) )
} }
export function deleteSortingApi(params: { export function deleteSortingApi(params: { id: number }) {
ids: string
type: string | number
}) {
return axios.get<never, BaseRespData<never>>( return axios.get<never, BaseRespData<never>>(
'logistics/sortingConfig/delete', 'logistics-sort-port-config/delete',
{ {
params, params,
}, },
) )
} }
// 分拣配置 查询可用分拣口
export function getSortingPortAreaListApi() {
return axios.get<never, BaseRespData<SortingPortAreaItem[]>>(
'logistics-sort-port-config/area-list',
)
}
// 分拣口规则 条件类型
export function getSortPortConditionTypeListApi() {
return axios.get<never, BaseRespData<SortingPortOptionItem[]>>(
'logistics-sort-port-config/condition-type',
)
}
// 分拣口规则 操作符
export function getSortPortOperatorListApi() {
return axios.get<never, BaseRespData<SortingPortOptionItem[]>>(
'logistics-sort-port-config/operator-list',
)
}
// 物流跟踪 获取菜单树 // 物流跟踪 获取菜单树
export function logisticStatusList() { export function logisticStatusList() {
return axios.get<never, BaseRespData<LogisticsTrackingTree[]>>( return axios.get<never, BaseRespData<LogisticsTrackingTree[]>>(
......
...@@ -15,11 +15,34 @@ export interface Ilogistics { ...@@ -15,11 +15,34 @@ export interface Ilogistics {
createTime?: string createTime?: string
updateTime?: string | null updateTime?: string | null
} }
export interface SortingPortCondition {
id?: number
ruleId?: number
conditionType: string
operator: string
conditionValue?: string | number | string[]
}
export interface IsortingInfo { export interface IsortingInfo {
id?: number id?: number
sortingFacility?: string | null sortingRemark?: string
sortingArea: number | null sortingArea?: number | null
sortingAreaName?: string | null sortingAreaName?: string | null
serviceCode: string | null matchType?: 1 | 2
type?: string | number sortNo?: number
conditions?: SortingPortCondition[]
conditionsText?: string
}
export interface SortingPortAreaItem {
code: number
desc: string
used: boolean
}
export interface SortingPortOptionItem {
desc: string
code: string
used?: boolean
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment