Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiedao-web-master
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lanbaoming
jiedao-web-master
Commits
4bdadadf
Commit
4bdadadf
authored
Sep 09, 2024
by
dragondean@qq.com
Browse files
Options
Browse Files
Download
Plain Diff
合并订单编辑,fix合并冲突
parents
b63fc958
fd79416a
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
600 additions
and
463 deletions
+600
-463
data.js
src/api/data.js
+9
-0
zh.js
src/lang/zh.js
+5
-5
SectionTitle.vue
src/views/jiedao/profile/components/SectionTitle.vue
+36
-0
delivery.vue
src/views/jiedao/profile/delivery.vue
+550
-458
No files found.
src/api/data.js
View file @
4bdadadf
...
...
@@ -143,3 +143,12 @@ export function getCityData(query) {
params
:
query
})
}
// 获取仓库区域并行国家、城市、仓库列表
export
function
getGuojiaAndShiAndWarehouseList
(
query
=
{})
{
return
request
({
url
:
'
/app-api/ecw/warehouse/getGuojiaAndShiAndWarehouseList
'
,
method
:
'
get
'
,
params
:
query
})
}
src/lang/zh.js
View file @
4bdadadf
...
...
@@ -568,11 +568,11 @@ export default {
consignorPhone
:
'
发货人电话
'
,
consignorEmail
:
'
发货人邮箱
'
,
consigneeName
:
'
收货人
'
,
consigneeCompany
:
'
收货人
公司名称
'
,
consigneeNameEn
:
'
收货人
英文名称
'
,
consigneeCompanyEn
:
'
收货人
公司英文名称
'
,
consigneeEmail
:
'
收货人
邮箱
'
,
consigneePhone
:
'
收货人
电话
'
,
consigneeCompany
:
'
公司名称
'
,
consigneeNameEn
:
'
英文名称
'
,
consigneeCompanyEn
:
'
公司英文名称
'
,
consigneeEmail
:
'
邮箱
'
,
consigneePhone
:
'
电话
'
,
marks
:
'
唛头
'
,
isCargoControl
:
'
是否控货
'
,
baseInfo
:
'
基础
'
,
...
...
src/views/jiedao/profile/components/SectionTitle.vue
0 → 100644
View file @
4bdadadf
<
script
>
export
default
{
props
:
{
title
:
String
,
langKey
:
String
}
}
</
script
>
<
template
>
<div
style=
"display: flex"
>
<div
style=
"
width: 6px;
height: 26px;
background: #659fd5;
border-radius: 0px 6px 6px 0px;
"
/>
<span
style=
"
font-size: 22px;
font-weight: 500;
color: #333;
line-height: 26px;
margin-left: 5px;
"
>
<slot>
{{
title
||
$t
(
langKey
)
}}
</slot>
</span>
</div>
</
template
>
<
style
scoped
>
</
style
>
src/views/jiedao/profile/delivery.vue
View file @
4bdadadf
...
...
@@ -16,7 +16,7 @@
"
>
{{
$t
(
"
delivery.header
"
)
}}
</span>
</div>
<div
style=
"display: flex; align-items: flex-end; margin-top: 5px"
>
<div
style=
"display: flex; align-items: flex-end; margin-top: 5px
; margin-bottom: 20px
"
>
<div
style=
"width: 75px; height: 4px; background: #396fff"
/>
<div
style=
"
...
...
@@ -27,33 +27,21 @@
"
/>
</div>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
>
<el-form-item
v-if=
"
selectedRouter &&
(routeOtherServices.indexOf('1') > -1 ||
routeOtherServices.indexOf('4') > -1)
"
:label=
"$t('delivery.header')"
style=
"margin-top: 30px"
>
<el-checkbox-group
v-model=
"form.type"
>
<el-checkbox
v-if=
"
(!selectedRouter || routeOtherServices.indexOf('1') > -1) && false
"
label=
"1"
>
{{
$t
(
"
delivery.orderType1
"
)
}}
</el-checkbox>
<el-checkbox
v-if=
"!selectedRouter || routeOtherServices.indexOf('2') > -1"
label=
"2"
>
{{
$t
(
"
delivery.orderType2
"
)
}}
</el-checkbox>
</el-checkbox-group>
</el-form-item>
<section-title
lang-key=
"delivery.header"
>
{{
$t
(
'
delivery.consigneeName
'
)
}}
<el-radio-group
v-if=
"noConsignee"
v-model=
"hasConsignee"
>
<el-radio
:label=
"true"
>
{{
$t
(
'
有
'
)
}}
</el-radio>
<el-radio
:label=
"false"
>
{{
$t
(
'
无
'
)
}}
</el-radio>
</el-radio-group>
</section-title>
<!--收货人-->
<el-row
:gutter=
"20"
style=
"margin-top: 30px"
>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('
delivery.consigneeName
')"
:label=
"$t('
名称
')"
prop=
"consigneeName"
>
<el-input
...
...
@@ -68,68 +56,71 @@
>
{{
$t
(
"
delivery.openConsignee
"
)
}}
</el-button>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('orderdetail.consigneeNameEn')"
prop=
"consigneeNameEn"
>
<el-input
v-model=
"form.consigneeNameEn"
:placeholder=
"$t('delivery.consigneeNameNoticeEn')"
style=
"width: 200px"
/>
</el-form-item>
</el-col>
</el-row>
<el-row
:gutter=
"20"
style=
"margin-top: 30px"
>
<el-col
:span=
"12"
>
<el-col
:span=
"10"
>
<el-form-item
:label=
"$t('delivery.consigneePhone')"
prop=
"consigneePhone"
:label=
"$t('delivery.consigneePhone')"
prop=
"consigneePhone"
>
<el-select
v-model=
"form.countryCode"
style=
"width: 100px"
@
change=
"(val) => changeArea(val, form.consigneePhone)"
v-model=
"form.countryCode"
style=
"width: 100px"
@
change=
"(val) => changeArea(val, form.consigneePhone)"
>
<el-option
v-for=
"item in countryList"
:key=
"item.id"
:label=
"'+' + item.tel"
:value=
"item.tel"
v-for=
"item in countryList"
:key=
"item.id"
:label=
"'+' + item.tel"
:value=
"item.tel"
>
<span>
{{
"
+
"
+
item
.
tel
+
"
"
+
$l
(
item
,
"
name
"
)
}}
</span>
</el-option>
</el-select>
<el-input
v-model=
"form.consigneePhone"
:placeholder=
"$t('delivery.consigneePhoneNotice')"
style=
"width: 180px"
@
blur=
"(val) => changeArea(form.countryCode, form.consigneePhone)"
v-model=
"form.consigneePhone"
:placeholder=
"$t('delivery.consigneePhoneNotice')"
style=
"width: 180px"
@
blur=
"(val) => changeArea(form.countryCode, form.consigneePhone)"
/>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-col
:span=
"2"
>
<el-button
circle
icon=
"el-icon-circle-plus"
v-if=
"!showFullConsignee"
@
click=
"showFullConsignee=true"
></el-button>
<el-button
circle
icon=
"el-icon-remove"
v-else
@
click=
"showFullConsignee=false"
></el-button>
</el-col>
</el-row>
<el-row
:gutter=
"5"
v-if=
"showFullConsignee"
>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('orderdetail.consigneeNameEn')"
prop=
"consigneeNameEn"
>
<el-input
v-model=
"form.consigneeNameEn"
:placeholder=
"$t('delivery.consigneeNameNoticeEn')"
style=
"width: 200px"
/>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('delivery.consigneeCompany')"
>
<el-input
v-model=
"form.consigneeCompany"
:placeholder=
"$t('delivery.consigneeCompanyNotice')"
style=
"width:
20
0px"
style=
"width:
15
0px"
/>
</el-form-item>
</el-col>
</el-row>
<el-row
:gutter=
"20"
>
<el-col
:span=
"12"
>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('orderdetail.consigneeCompanyEn')"
>
<el-input
v-model=
"form.consigneeCompanyEn"
:placeholder=
"$t('delivery.consigneeCompanyNoticeEn')"
style=
"width:
20
0px"
style=
"width:
15
0px"
/>
</el-form-item>
</el-col>
<el-col
:span=
"
12
"
>
<el-col
:span=
"
6
"
>
<el-form-item
label=
"Email"
>
<el-input
v-model=
"form.consigneeEmail"
...
...
@@ -139,7 +130,11 @@
</el-form-item>
</el-col>
</el-row>
<el-card>
<template
#header
>
<section-title
:title=
"$t('运输')"
></section-title>
</
template
>
<el-descriptions
:column=
"2"
border
>
<el-descriptions-item
:label=
"$t('delivery.transport')"
...
...
@@ -165,7 +160,8 @@
</el-form-item>
</el-descriptions-item>
</el-descriptions>
<el-descriptions
:column=
"2"
border
>
<el-descriptions
:column=
"3"
border
>
<!--始发城市-->
<el-descriptions-item
:label=
"$t('delivery.departure')"
label-style=
"width:100px"
...
...
@@ -195,6 +191,40 @@
</el-select>
</el-form-item>
</el-descriptions-item>
<!--目的国-->
<el-descriptions-item
:label=
"$t('delivery.objective')"
label-style=
"width:100px"
>
<span
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("目的国") }}
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"destCountryId"
required
:error=
"$t('请选择目的国')"
>
<el-select
v-model=
"form.destCountryId"
:placeholder=
"$t('请选择目的国')"
clearable
@
change=
"handleChangeDestCountry"
>
<el-option
v-for=
"item in showDestCountryLis"
:key=
"item.guojia"
:label=
"$l(item, 'guojiaName')"
:value=
"item.guojia"
/>
</el-select>
</el-form-item>
</el-descriptions-item>
<!--目的城市-->
<el-descriptions-item
:label=
"$t('delivery.objective')"
label-style=
"width:100px"
...
...
@@ -214,19 +244,22 @@
v-model=
"form.objectiveId"
:placeholder=
"$t('delivery.objectiveNotice')"
clearable
@
change=
"handleChangeDestCity"
>
<el-option
v-for=
"item in
impor
tCityList"
:key=
"item.
id
"
:label=
"$l(item, '
titl
e')"
:value=
"item.
id
"
v-for=
"item in
showDes
tCityList"
:key=
"item.
shi
"
:label=
"$l(item, '
shiNam
e')"
:value=
"item.
shi
"
/>
</el-select>
</el-form-item>
</el-descriptions-item>
<!--路线-->
<el-descriptions-item
:label=
"$t('delivery.router')"
:span=
"
2
"
:span=
"
3
"
label-style=
"width:100px"
>
<span
...
...
@@ -247,11 +280,10 @@
/>
</el-col>
<el-col
:span=
"12"
>
<select
v-model=
"form.lineId"
size=
"5"
style=
"min-width: 300px"
>
<select
v-model=
"form.lineId"
size=
"5"
style=
"min-width: 300px"
@
change=
"handleChangeLineId"
>
<
template
v-for=
"item in routerList"
>
<option
:key=
"item.id"
:value=
"item.id"
>
{{
$l
(
item
,
"
startTitle
"
)
}}
>>
{{
$l
(
item
,
"
destTitle
"
)
}}
{{
$l
(
item
,
"
startTitle
"
)
}}
>>
{{
$l
(
item
,
"
destTitle
"
)
}}
</option>
</
template
>
</select>
...
...
@@ -286,11 +318,24 @@
/>
</el-form-item>
</el-descriptions-item>
<!--服务-->
<el-descriptions-item
:label=
"$t('服务')"
v-if=
"selectedRouter && (routeOtherServices.indexOf('1') > -1 || routeOtherServices.indexOf('4') > -1)"
>
<el-checkbox-group
v-model=
"form.type"
>
<el-checkbox
label=
"1"
v-if=
"(!selectedRouter || routeOtherServices.indexOf('1') > -1)"
>
{{ $t("delivery.orderType1") }}
</el-checkbox>
<el-checkbox
label=
"2"
v-if=
"!selectedRouter || routeOtherServices.indexOf('2') > -1"
>
{{ $t("delivery.orderType2") }}
</el-checkbox>
</el-checkbox-group>
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card
class=
"mt-10"
>
<div
slot=
"header"
class=
"card-title"
>
<div
style=
"display: flex"
>
<
!--<
div style="display: flex">
<div
style="
width: 6px;
...
...
@@ -308,7 +353,8 @@
margin-left: 5px;
"
>{{ $t("delivery.goods") }}</span>
</div>
</div>-->
<section-title
:title=
'$t("delivery.goods")'
></section-title>
<div>
<el-button
type=
"primary"
...
...
@@ -677,135 +723,13 @@
</el-descriptions>
</el-card>
<el-card
v-if=
"false"
class=
"mt-10"
>
<div
slot=
"header"
class=
"card-title"
>
<div
style=
"display: flex"
>
<div
style=
"
width: 6px;
height: 26px;
background: #659fd5;
border-radius: 0px 6px 6px 0px;
"
/>
<span
style=
"
font-size: 22px;
font-weight: 500;
color: #333;
line-height: 26px;
margin-left: 5px;
"
>
预计费用
</span>
</div>
</div>
<el-descriptions
:column=
"5"
border
>
<el-descriptions-item
label=
"保价费"
>
{{ fee.insuranceFee || 0 }} 人民币
</el-descriptions-item>
<el-descriptions-item
label=
"总运费"
>
<div>
{{ fee.seaNGN || 0 }}奈拉
</div>
<div>
{{ fee.seaRMB || 0 }}人民币
</div>
<div>
{{ fee.seaUSD || 0 }}美元
</div>
</el-descriptions-item>
<!--代收货款,只有非控货订单、并且线路开通了代收货款后,才显示是否代收货款选项-->
<el-descriptions-item
label=
"总清关费"
>
<div>
{{ fee.clearanceNGN || 0 }}奈拉
</div>
<div>
{{ fee.clearanceRMB || 0 }}人民币
</div>
<div>
{{ fee.clearanceUSD || 0 }}美元
</div>
</el-descriptions-item>
<el-descriptions-item
label=
"其他费用"
>
<!--TODO 缺少其他费用字段-->
<el-input
v-model=
"form.otherFee"
placeholder=
""
style=
"width: 100px"
/>
<selector
v-model=
"form.otherFeeCurrencyId"
:options=
"currencyList"
label-field=
"titleZh"
value-field=
"id"
defaultable
style=
"width: 100px"
/>
</el-descriptions-item>
<el-descriptions-item
label=
"原价"
:span=
"2"
>
<!--TODO 缺少字段-->
<div>
{{ fee.clearanceNGN || 0 }}奈拉
</div>
<div>
{{ fee.clearanceRMB || 0 }}人民币
</div>
<div>
{{ fee.clearanceUSD || 0 }}美元
</div>
</el-descriptions-item>
</el-descriptions>
<div
class=
"card-title"
style=
"padding: 20px 0"
>
<div
style=
"display: flex"
>
<div
style=
"
width: 6px;
height: 26px;
background: #659fd5;
border-radius: 0px 6px 6px 0px;
"
/>
<span
style=
"
font-size: 22px;
font-weight: 500;
color: #333;
line-height: 26px;
margin-left: 5px;
"
>
优惠信息
</span>
</div>
</div>
<el-row
v-for=
"(item, index) in getDictDatas(DICT_TYPE.ECW_COUPON_TYPE)"
:key=
"item.value"
:gutter=
"10"
>
<el-col
:span=
"4"
>
{{ index + 1 }}.{{ item.label }}
</el-col>
<el-col
:span=
"6"
>
<!-- <el-select placeholder="">
</el-select> -->
</el-col>
<el-col
:span=
"4"
>
-10美元
</el-col>
<el-col
:span=
"6"
>
有效期:永久有效
</el-col>
</el-row>
<el-descriptions
:column=
"1"
border
>
<el-descriptions-item
label=
"优惠合计"
>
1233.1美元
</el-descriptions-item>
<el-descriptions-item
label=
"预计费用"
/>
</el-descriptions>
</el-card>
<el-card
class=
"mt-10"
>
<div
slot=
"header"
class=
"card-title"
>
<div
style=
"display: flex"
>
<div
style=
"
width: 6px;
height: 26px;
background: #659fd5;
border-radius: 0px 6px 6px 0px;
"
/>
<span
style=
"
font-size: 22px;
font-weight: 500;
color: #333;
line-height: 26px;
margin-left: 5px;
"
>
{{ $t("delivery.common") }}
</span>
</div>
<section-title
:title=
'$t("delivery.common")'
></section-title>
</div>
<el-descriptions
:column=
"2"
border
>
<el-descriptions
:column=
"3"
border
>
<!--唛头-->
<el-descriptions-item
:label=
"$t('delivery.marks')"
>
<span
slot=
"label"
...
...
@@ -821,296 +745,406 @@
<el-input
v-model=
"form.marks"
placeholder=
""
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('delivery.isCargoControl')"
>
<!--单证报关-->
<el-descriptions-item
:label=
"$t('delivery.customsType')"
:span=
"2"
>
<span
slot=
"label"
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.
isCargoControl
") }}
{{ $t("delivery.
customsType
") }}
<el-tooltip
:content=
"$t('delivery.isCargoControl
Notice')"
placement=
"top"
:content=
"$t('delivery.customsType
Notice')"
placement=
"top"
>
<i
class=
"el-icon-question"
/>
</el-tooltip>
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"isCargoControl
"
required
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"customsType
"
required
>
<dict-selector
v-model=
"form.isCargoControl
"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING
"
formatter=
"bool"
form-type=
"radio"
v-model=
"form.customsType
"
:type=
"DICT_TYPE.ECW_CUSTOMS_TYPE
"
defaultable
form-type=
"radio"
/>
</el-form-item>
</el-descriptions-item>
<!--代收货款,只有非控货订单、并且线路开通了代收货款后,才显示是否代收货款选项-->
<el-descriptions-item
v-if=
"collectionProxy"
:label=
"$t('delivery.isCollection')"
>
<!--控货-->
<el-descriptions-item
:label=
"$t('delivery.isCargoControl')"
>
<span
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.isCollection") }}
</span>
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.isCargoControl") }}
<el-tooltip
:content=
"$t('delivery.isCargoControlNotice')"
placement=
"top"
>
<i
class=
"el-icon-question"
/>
</el-tooltip>
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"isC
ollection
"
prop=
"isC
argoControl
"
required
>
<dict-selector
v-model=
"form.isC
ollection
"
v-model=
"form.isC
argoControl
"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
formatter=
"bool"
form-type=
"radio"
@
input=
"selectCollectionProxy"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
v-if=
"collectionProxy && showCollectionProxy"
:label=
"$t('delivery.collectionProxy')"
>
<el-input-number
v-model=
"form.collectionProxy"
min=
"0"
:controls=
"false"
style=
"width: 200px"
/>
<selector
v-model=
"form.collectionProxyCurrency"
:options=
"currencyList"
label-field=
"titleZh"
value-field=
"id"
defaultable
style=
"width: 100px"
/>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('delivery.customsType')"
:span=
"2"
>
<!--付款人-->
<el-descriptions-item
:label=
"$t('delivery.drawee')"
:span=
"2"
>
<span
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.customsType") }}
<el-tooltip
:content=
"$t('delivery.customsTypeNotice')"
placement=
"top"
>
<i
class=
"el-icon-question"
/>
</el-tooltip>
</span>
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.drawee") }}
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"customsTyp
e"
required
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"drawe
e"
required
>
<dict-selector
v-model=
"form.customsType"
:type=
"DICT_TYPE.ECW_CUSTOMS_TYPE"
defaultable
form-type=
"radio"
v-model=
"form.drawee"
:type=
"DICT_TYPE.DRAWEE"
:filter=
"(e) => e.value == '1' || e.value == '2'"
defaultable
form-type=
"radio"
/>
</el-form-item>
<!--自定义付款人-->
<div
v-if=
"form.drawee == 3"
>
<
template
v-for=
"(item, index) in customDraweeList"
v-key=
"index"
>
<el-form-item
:key=
"index"
:label=
"item.label"
>
<dict-selector
v-model=
"item.value"
:type=
"DICT_TYPE.DRAWEE"
:filter=
"(e) => e.value == '1' || e.value == '2'"
form-type=
"radio"
/>
</el-form-item>
</
template
>
</div>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('delivery.issuingMethod')"
>
<!--入仓类型-->
<el-descriptions-item
:label=
"$t('delivery.warehouseType')"
>
<span
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.
issuingMethod
") }}
</span>
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.
warehouseType
") }}
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"issuingMethod
"
required
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"warehouseType
"
required
>
<dict-selector
v-model=
"form.issuingMethod"
:type=
"DICT_TYPE.ECW_SUING_METHOD"
defaultable
form-type=
"radio"
v-model=
"form.warehouseType"
:type=
"DICT_TYPE.ECW_WAREHOUSING_TYPE"
defaultable
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('外部仓')"
:span=
"2"
>
<el-form-item
prop=
"isExternalWarehouse"
>
<el-checkbox
label=
""
v-model=
"form.isExternalWarehouse"
@
change=
"form.isExternalWarehouse=$event"
:disabled=
"false"
></el-checkbox>
</el-form-item>
<div
v-if=
"form.isExternalWarehouse"
>
<div
v-for=
"(item, index) in form.externalWarehouseDtoList"
class=
""
:key=
"index"
style=
"border-bottom: 1px solid #ccc; margin-bottom: 10px"
>
<div
class=
"flex-1"
>
<el-form-item
:label=
"$t('装货时间')"
:prop=
"'externalWarehouseDtoList.' + index + '.estLoadingTime'"
:rules=
"{
required: true, message: '装货时间不能为空', trigger: 'blur'
}"
>
<el-date-picker
v-model=
"item.estLoadingTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
class=
"w-200"
></el-date-picker>
</el-form-item>
</div>
<div
class=
"flex-1"
>
<el-form-item
:label=
"$t('装货地址')"
:prop=
"'externalWarehouseDtoList.' + index + '.loadingAddress'"
:rules=
"{
required: true, message: '装货地址不能为空', trigger: 'blur'
}"
>
<el-input
v-model=
"item.loadingAddress"
placeholder=
""
class=
"w-200"
></el-input>
</el-form-item>
</div>
</div>
<div>
<el-button
size=
"mini"
type=
"primary"
icon=
"el-icon-plus"
@
click=
"form.externalWarehouseDtoList.push({})"
></el-button>
<el-button
size=
"mini"
type=
"danger"
icon=
"el-icon-delete"
:disabled=
"form.externalWarehouseDtoList.length <= 1"
@
click=
"form.externalWarehouseDtoList.splice(form.externalWarehouseDtoList.length-1, 1)"
></el-button>
</div>
</div>
</el-descriptions-item>
<!--预计送货日期-->
<el-descriptions-item
:label=
"$t('delivery.deliveryDate')"
>
<span
slot=
"label"
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.deliveryDate") }}
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"deliveryDate"
required
:error=
"$t('delivery.deliveryDateRules')"
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"deliveryDate"
required
:error=
"$t('delivery.deliveryDateRules')"
>
<el-date-picker
v-model=
"form.deliveryDate"
value-format=
"yyyy-MM-dd HH:mm:ss"
v-model=
"form.deliveryDate"
value-format=
"yyyy-MM-dd HH:mm:ss"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('delivery.warehouseType')"
>
<!--代收货款,只有非控货订单、并且线路开通了代收货款后,才显示是否代收货款选项-->
<el-descriptions-item
v-if=
"collectionProxy"
:label=
"$t('delivery.isCollection')"
:span=
"2"
>
<span
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.
warehouseType
") }}
</span>
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.
isCollection
") }}
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"
warehouseType
"
prop=
"
isCollection
"
required
>
<dict-selector
v-model=
"form.warehouseType"
:type=
"DICT_TYPE.ECW_WAREHOUSING_TYPE"
defaultable
v-model=
"form.isCollection"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
formatter=
"bool"
form-type=
"radio"
@
input=
"selectCollectionProxy"
/>
</el-form-item>
<!--代收货款金额-->
<el-form-item
v-if=
"collectionProxy && showCollectionProxy"
:label=
"$t('delivery.collectionProxy')"
>
<el-input-number
v-model=
"form.collectionProxy"
min=
"0"
:controls=
"false"
style=
"width: 200px"
/>
<selector
v-model=
"form.collectionProxyCurrency"
:options=
"currencyList"
label-field=
"titleZh"
value-field=
"id"
defaultable
style=
"width: 100px"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
v-else
:span=
"2"
>
<!--占位-->
</el-descriptions-item>
<!--收货方式-->
<el-descriptions-item
:label=
"$t('delivery.harvestMethod')"
>
<span
slot=
"label"
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.harvestMethod") }}
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"harvestMethod"
required
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"harvestMethod"
required
>
<dict-selector
v-model=
"form.harvestMethod"
:type=
"DICT_TYPE.ECW_HARVEST_METHOD"
:filter=
"(item) => item.value == 1 || homeDeliveryService"
defaultable
v-model=
"form.harvestMethod"
:type=
"DICT_TYPE.ECW_HARVEST_METHOD"
:filter=
"(item) => item.value == 1 || homeDeliveryService"
defaultable
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:span=
"2"
>
<!--报价单字段已在群里确认不需要-->
</el-descriptions-item>
<!--收货地址-->
<el-descriptions-item
v-if=
"homeDeliveryService && form.harvestMethod == 2"
:label=
"$t('delivery.deliveryaddress')"
:span=
"2"
>
v-if=
"homeDeliveryService && form.harvestMethod == 2"
:label=
"$t('delivery.deliveryaddress')"
>
<span
slot=
"label"
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.deliveryaddress") }}
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"city"
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"city"
>
<area-selector
:country=
"
:country=
"
form.consigneeVO ? form.consigneeVO.country : undefined
"
:province=
"
:province=
"
form.consigneeVO ? form.consigneeVO.province : undefined
"
:city=
"form.consigneeVO ? form.consigneeVO.city : undefined"
@
countryChange=
"onAreaChange('country', $event)"
@
provinceChange=
"onAreaChange('province', $event)"
@
cityChange=
"onAreaChange('city', $event)"
:city=
"form.consigneeVO ? form.consigneeVO.city : undefined"
@
countryChange=
"onAreaChange('country', $event)"
@
provinceChange=
"onAreaChange('province', $event)"
@
cityChange=
"onAreaChange('city', $event)"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
v-if=
"homeDeliveryService && form.harvestMethod == 2"
:label=
"$t('delivery.addressdetail')"
:span=
"2"
v-if=
"homeDeliveryService && form.harvestMethod == 2"
:label=
"$t('delivery.addressdetail')"
:span=
"2"
>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"consigneeAddress"
required
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"consigneeAddress"
required
>
<el-input
v-model=
"form.consigneeAddress"
placeholder=
""
/>
</el-form-item>
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card
class=
"mt-10"
>
<
template
#header
>
<section-title
:title=
"$t('其他')"
></section-title>
</
template
>
<el-descriptions
:column=
"2"
label-style=
"width: 120px"
border
>
<el-descriptions-item>
<span
slot=
"label"
>
{{ $t("delivery.packageType") }}
<el-tooltip
:content=
"$t('delivery.packageTypeNotice')"
placement=
"top"
>
<i
class=
"el-icon-question"
/>
</el-tooltip>
</span>
<!--特殊要求 / 包装类型-->
<el-form-item
prop=
"packageType"
>
<dict-selector
v-model=
"form.packageType"
form-type=
"checkbox"
:type=
"DICT_TYPE.ORDER_SPECIAL_NEEDS"
multiple
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('特殊要求备注')"
>
<!--包装备注-->
<el-form-item
prop=
"packageRemarks"
>
<el-input
v-model=
"form.packageRemarks"
type=
"textarea"
class=
"w-200"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:span=
"2"
:label=
"$t('delivery.number')"
>
<!--快递单号-->
<el-form-item
prop=
"number"
>
<el-input
v-model=
"form.number"
:placeholder=
"$t('delivery.numberNotice')"
>
<el-button
slot=
"append"
type=
"primary"
@
click=
"getOrderCourierNumber"
>
{{ $t("delivery.getNumber") }}
</el-button>
</el-input>
</el-form-item>
</el-descriptions-item>
<
template
v-if=
"isAir"
>
<el-descriptions-item
:label=
"$t('delivery.customsClearCert')"
>
<!--清关证书-->
<el-form-item
prop=
"customsClearCert"
>
<dict-selector
v-model=
"form.customsClearCert"
form-type=
"radio"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
defaultable
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('delivery.clearCertRemark')"
>
<!--清关证书备注-->
<el-form-item
prop=
"remarks"
>
<el-input
v-model=
"form.remarks"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('delivery.isUnpack')"
>
<!--是否拆包-->
<el-form-item
prop=
"isUnpack"
>
<dict-selector
v-model=
"form.isUnpack"
form-type=
"radio"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('delivery.isSingleTicketTransport')"
>
<!--单票立刻转运-->
<el-form-item
prop=
"isSingleTicketTransport"
>
<dict-selector
v-model=
"form.isSingleTicketTransport"
form-type=
"radio"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
/>
<span
style=
"margin-left: 10px; color: red"
>
{{
$t
(
"
delivery.notice
"
)
}}
</span>
</el-form-item>
</el-descriptions-item>
</
template
>
<el-descriptions-item
:label=
"$t('delivery.drawee')"
:span=
"2"
>
<!--出单方式,新的原型没有提现,暂时隐藏显示-->
<el-descriptions-item
:label=
"$t('delivery.issuingMethod')"
v-false
>
<span
slot=
"label"
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.
drawee
") }}
</span>
><span
style=
"color: red"
>
*
</span>
{{ $t("delivery.
issuingMethod
") }}
</span>
<el-form-item
label=
""
label-width=
"0"
style=
"margin-bottom: 0"
prop=
"
drawee
"
prop=
"
issuingMethod
"
required
>
<dict-selector
v-model=
"form.drawee"
:type=
"DICT_TYPE.DRAWEE"
:filter=
"(e) => e.value == '1' || e.value == '2'"
v-model=
"form.issuingMethod"
:type=
"DICT_TYPE.ECW_SUING_METHOD"
defaultable
form-type=
"radio"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
v-if=
"form.drawee == 3"
:label=
"$t('delivery.customDraweeList')"
:span=
"2"
>
<
template
v-for=
"(item, index) in customDraweeList"
v-key=
"index"
>
<el-form-item
:key=
"index"
:label=
"item.label"
>
<dict-selector
v-model=
"item.value"
:type=
"DICT_TYPE.DRAWEE"
:filter=
"(e) => e.value == '1' || e.value == '2'"
form-type=
"radio"
/>
</el-form-item>
</
template
>
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card
v-if=
"transport"
class=
"mt-10"
>
<div
slot=
"header"
class=
"card-title"
>
<div
style=
"display: flex"
>
<div
style=
"
width: 6px;
height: 26px;
background: #659fd5;
border-radius: 0px 6px 6px 0px;
"
/>
<span
style=
"
font-size: 22px;
font-weight: 500;
color: #333;
line-height: 26px;
margin-left: 5px;
"
>
{{ $l(transport, "label") }}
</span>
</div>
</div>
<el-form-item
:label=
"$t('delivery.number')"
>
<el-input
v-model=
"form.number"
:placeholder=
"$t('delivery.numberNotice')"
>
<el-button
slot=
"append"
type=
"primary"
@
click=
"getOrderCourierNumber"
>
{{ $t("delivery.getNumber") }}
</el-button>
</el-input>
</el-form-item>
<!--下面这部分根据原型没有展示,暂时隐藏-->
<el-card
v-if=
"false"
class=
"mt-10"
>
<!--是否双清-->
<el-form-item
v-if=
"[2, 3, 4].indexOf(+form.transportId) > -1"
:label=
"$t('delivery.doubleClear')"
...
...
@@ -1128,82 +1162,16 @@
>
<supplier-selector v-model="form.airlineCompany" company-type="10" />
</el-form-item-->
<!--船公司-->
<el-form-item
v-if=
"[2].indexOf(+form.transportId) > -1"
:label=
"$t('delivery.shippingCompany')"
>
<supplier-selector
v-model=
"form.shippingCompany"
company-type=
"9"
/>
</el-form-item>
<el-form-item
v-if=
"[2, 3, 4].indexOf(+form.transportId) > -1"
:label=
"$t('delivery.customsClearCert')"
>
<dict-selector
v-model=
"form.customsClearCert"
form-type=
"radio"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
defaultable
/>
</el-form-item>
<el-form-item
v-if=
"[2, 3, 4].indexOf(+form.transportId) > -1"
:label=
"$t('delivery.clearCertRemark')"
>
<el-input
v-model=
"form.remarks"
/>
</el-form-item>
<el-form-item
v-if=
"[3, 4].indexOf(+form.transportId) > -1"
:label=
"$t('delivery.isUnpack')"
>
<dict-selector
v-model=
"form.isUnpack"
form-type=
"radio"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
/>
</el-form-item>
<el-form-item
v-if=
"[3, 4].indexOf(+form.transportId) > -1"
:label=
"$t('delivery.isSingleTicketTransport')"
>
<dict-selector
v-model=
"form.isSingleTicketTransport"
form-type=
"radio"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
/>
<span
style=
"margin-left: 10px; color: red"
>
{{
$t("delivery.notice")
}}
</span>
</el-form-item>
<el-form-item
:label=
"$t('delivery.packageType')"
>
<
template
#label
>
{{
$t
(
"
delivery.packageType
"
)
}}
</
template
>
<el-tooltip
:content=
"$t('delivery.packageTypeNotice')"
placement=
"top"
style=
"margin-right: 15px"
>
<i
class=
"el-icon-question"
/>
</el-tooltip>
<dict-selector
v-model=
"form.packageType"
form-type=
"checkbox"
:type=
"DICT_TYPE.ORDER_SPECIAL_NEEDS"
multiple
/>
</el-form-item>
<el-form-item
:label=
"$t('delivery.packageRemarks')"
>
<el-input
v-model=
"form.packageRemarks"
/>
</el-form-item>
</el-card>
<el-form-item
label=
""
>
<el-form-item
label=
""
class=
"mt-20"
>
<el-button
v-if=
"form.status == 0 || editFlag"
type=
"primary"
...
...
@@ -1547,7 +1515,7 @@ import {
getData
,
getOpenedRouterList
,
validatorPhone
,
checkKycStatus
checkKycStatus
,
getListTree
,
getWarehouseTreeList
,
getGuojiaAndShiAndWarehouseList
}
from
'
@/api/data
'
import
{
getCustomerList
,
...
...
@@ -1573,9 +1541,11 @@ import AreaSelector from '@/components/AreaSelector'
import
DictTag
from
'
@/components/DictTag
'
import
SupplierSelector
from
'
@/components/SupplierSelector
'
import
Pagination
from
'
@/components/Pagination
'
import
SectionTitle
from
'
@/views/jiedao/profile/components/SectionTitle.vue
'
export
default
{
name
:
'
OrderEdit
'
,
components
:
{
SectionTitle
,
ProductSelector
,
DictSelector
,
Selector
,
...
...
@@ -1601,7 +1571,12 @@ export default {
return
{
validatorPositiveNumber
,
// customDraweeList: [],
// 国家区号列表,用于电话的区号选择
countryList
:
[],
// 目的国家,用于线路筛选
destCountryList
:
[],
// 目的城市
destCityList
:
[],
customerList
:
[],
// 客户信息
productAttrList
:
[],
// 商品属性
channelList
:
[],
// 出货取到
...
...
@@ -1617,6 +1592,7 @@ export default {
couponList
:
[],
fee
:
{},
// 费用
form
:
{
destCountryId
:
null
,
countryCode
:
'
86
'
,
status
:
0
,
consigneeName
:
''
,
...
...
@@ -1632,7 +1608,8 @@ export default {
isUnpack
:
false
,
drawee
:
2
,
type
:
[],
orderItemVOList
:
[]
orderItemVOList
:
[],
externalWarehouseDtoList
:[]
},
// 总条数
total
:
0
,
...
...
@@ -1680,7 +1657,7 @@ export default {
],
marks
:
[
{
required
:
true
,
message
:
this
.
$t
(
'
delivery.marksRules
'
)
},
{
pattern
:
/
[
A-z
]
/
,
message
:
this
.
$t
(
'
delivery.marksRules1
'
)
}
//
{ pattern: /[A-z]/, message: this.$t('delivery.marksRules1') }
],
departureId
:
[
{
required
:
true
,
message
:
this
.
$t
(
'
delivery.departureRules
'
)
}
...
...
@@ -1735,19 +1712,27 @@ export default {
exportLoading
:
false
,
// 装下单模板下载状态
importList
:
[],
noticeVisble
:
false
,
noticeVisble1
:
false
noticeVisble1
:
false
,
// 有无收货人
hasConsignee
:
true
,
// 显示完整收货人信息
showFullConsignee
:
false
,
// 仓库区域树形列表
warehouseTreeList
:
[],
// 选择的路线对象
selectedRouter
:
null
}
},
computed
:
{
exportCityList
()
{
return
this
.
tradeCityList
.
filter
(
(
item
)
=>
item
.
type
==
2
||
item
.
type
==
3
)
return
this
.
tradeCityList
.
filter
(
(
item
)
=>
{
return
item
.
type
==
2
||
item
.
type
==
3
}
)
},
importCityList
()
{
return
this
.
tradeCityList
.
filter
(
(
item
)
=>
item
.
type
==
1
||
item
.
type
==
3
)
return
this
.
tradeCityList
.
filter
(
(
item
)
=>
{
return
item
.
type
==
1
||
item
.
type
==
3
}
)
},
exportCityIds
()
{
const
ids
=
[]
...
...
@@ -1783,11 +1768,11 @@ export default {
})
return
data
},
selectedRouter
()
{
/*
selectedRouter() {
// otherService 1 送货上门,2非控货订单代收货款
if (!this.form.lineId) return null
return this.routerList.find((item) => item.id == this.form.lineId)
},
},
*/
// 送货上门
homeDeliveryService
()
{
return
(
...
...
@@ -1868,6 +1853,24 @@ export default {
// return false
// }
return
true
},
// 当前用户信息
userInfo
()
{
return
this
.
$store
.
getters
.
loginUser
||
{}
},
noConsignee
()
{
return
this
.
userInfo
.
noConsignee
||
false
},
isAir
()
{
return
[
3
,
4
].
indexOf
(
+
this
.
form
.
transportId
)
>
-
1
},
// 显示的目的国
showDestCountryLis
(){
return
this
.
destCountryList
},
showDestCityList
(){
if
(
!
this
.
form
.
destCountryId
)
return
this
.
destCityList
return
this
.
destCityList
.
filter
(
item
=>
item
.
guojia
===
this
.
form
.
destCountryId
)
||
[]
}
},
watch
:
{
...
...
@@ -1879,9 +1882,9 @@ export default {
this
.
getOpenedRouterList
()
},
// 目的地
'
form.objectiveId
'
()
{
/*
'form.objectiveId'() {
this.getOpenedRouterList()
},
},
*/
'
form.transportId
'
()
{
this
.
getOpenedRouterList
()
},
...
...
@@ -1903,8 +1906,9 @@ export default {
async
'
form.lineId
'
(
lineId
)
{
const
router
=
this
.
routerList
.
find
((
item
)
=>
item
.
id
==
lineId
)
if
(
!
router
)
return
this
.
$set
(
this
.
form
,
'
departureId
'
,
router
.
startCityId
)
/*
this.$set(this.form, 'departureId', router.startCityId)
this.$set(this.form, 'objectiveId', router.destCityId)
this.form.destCountryId = router.destCountryId */
this
.
calculationPrice
()
this
.
getIdCardData
()
await
this
.
getChannelList
()
...
...
@@ -1913,8 +1917,22 @@ export default {
'
form.harvestMethod
'
(
harvestMethod
)
{
console
.
log
(
harvestMethod
)
},
// 服务
'
form.type
'
(
type
){
if
(
type
.
indexOf
(
'
2
'
)
>
-
1
){
this
.
$alert
(
this
.
$t
(
'
如需海外仓服务,请联系客服,服务热线:400-900-9962
'
))
}
},
'
form.isExternalWarehouse
'
(
isExternalWarehouse
){
// 勾选外部仓则添加一个默认的,取消则删除默认的空的
if
(
!
isExternalWarehouse
){
this
.
$set
(
this
.
form
,
'
externalWarehouseDtoList
'
,
[])
}
else
if
(
!
this
.
form
.
externalWarehouseDtoList
||
!
this
.
form
.
externalWarehouseDtoList
.
length
){
this
.
$set
(
this
.
form
,
'
externalWarehouseDtoList
'
,
[{}])
}
},
// 选择的路线变化后,需要判断是否开通了对应的服务,如果没开通需要取消对应的服务选择
selectedRouter
(
val
)
{
async
selectedRouter
(
val
)
{
if
(
!
val
)
return
;
[
'
1
'
,
'
4
'
].
forEach
((
service
)
=>
{
if
(
...
...
@@ -1979,6 +1997,9 @@ export default {
getCountryList
().
then
((
r
)
=>
{
this
.
countryList
=
r
.
data
})
getListTree
({
treeType
:
1
}).
then
(
res
=>
{
this
.
dstCountryList
=
res
.
data
})
getData
({
page
:
1
,
rows
:
100
,
dictType
:
'
transport_type
'
}).
then
((
r
)
=>
{
this
.
transportTypeList
=
r
.
data
.
list
})
...
...
@@ -1994,6 +2015,12 @@ export default {
await
this
.
getTradeCity
()
await
this
.
getChannelList
()
getCurrencyList
().
then
((
res
)
=>
(
this
.
currencyList
=
res
.
data
))
getGuojiaAndShiAndWarehouseList
({
tradeType
:
1
}).
then
(
res
=>
{
this
.
destCountryList
=
res
.
data
.
guojiaList
this
.
destCityList
=
res
.
data
.
shiList
// this.destWarehoustList = res.data.warehouseList
})
},
methods
:
{
async
getTradeCity
()
{
...
...
@@ -2001,7 +2028,20 @@ export default {
if
(
this
.
form
.
channelId
)
{
query
.
channelId
=
this
.
form
.
channelId
}
if
(
this
.
destCountryId
){
query
.
destCountryId
=
this
.
destCountryId
}
this
.
tradeCityList
=
(
await
getTradeCityList
(
query
)).
data
await
this
.
$nextTick
()
// 如果已选中的城市不在列表中则清空
if
(
this
.
form
.
departureId
&&
this
.
importCityList
.
findIndex
(
item
=>
item
.
id
==
this
.
form
.
departureId
)
<
0
){
this
.
form
.
objectiveId
=
null
}
// 如果只有一个城市则选中
if
(
this
.
importCityList
.
length
===
1
){
this
.
form
.
objectiveId
=
this
.
importCityList
[
0
].
id
}
},
async
getChannelList
()
{
const
query
=
{
...
...
@@ -2295,6 +2335,9 @@ export default {
if
(
this
.
form
.
channelId
)
{
params
.
channelId
=
this
.
form
.
channelId
}
if
(
this
.
form
.
destCountryId
){
params
.
destCountryId
=
this
.
form
.
destCountryId
}
await
this
.
$nextTick
()
getOpenedRouterList
(
params
).
then
((
res
)
=>
{
this
.
routerList
=
res
.
data
.
filter
((
item
)
=>
{
...
...
@@ -2303,6 +2346,12 @@ export default {
this
.
importCityIds
.
indexOf
(
item
.
destCityId
)
>
-
1
)
})
return
this
.
$nextTick
()
}).
then
(()
=>
{
// 如果已选中的路线不在列表中则清空
if
(
this
.
form
.
lineId
&&
this
.
routerList
.
findIndex
(
item
=>
item
.
id
==
this
.
form
.
lineId
)
<
0
){
this
.
form
.
lineId
=
null
}
})
},
// 计算体积
...
...
@@ -2337,6 +2386,47 @@ export default {
this
.
couponList
=
res
.
data
})
},
// 切换目的国
handleChangeDestCountry
(
val
)
{
console
.
log
(
"
handleChangeDestCountry
"
,
val
)
this
.
form
.
destCountryId
=
val
if
(
this
.
form
.
destCountryId
){
this
.
form
.
objectiveId
=
null
this
.
form
.
lineId
=
null
this
.
selectedRouter
=
null
this
.
getOpenedRouterList
()
}
},
// 切换目的城市
handleChangeDestCity
(
val
){
this
.
form
.
objectiveId
=
val
if
(
this
.
form
.
objectiveId
){
this
.
form
.
lineId
=
null
this
.
selectedRouter
=
null
this
.
form
.
destCountryId
=
this
.
destCityList
.
find
(
item
=>
item
.
shi
===
val
)?.
guojia
this
.
getOpenedRouterList
()
}
},
// 切换路线
setLineId
(
lineId
){
this
.
form
.
lineId
=
lineId
this
.
handleChangeLineId
()
},
// 切换线路回调
async
handleChangeLineId
(){
await
this
.
$nextTick
()
this
.
selectedRouter
=
this
.
routerList
.
find
(
item
=>
item
.
id
===
this
.
form
.
lineId
)
console
.
log
(
"
handleChangeLineId
"
,
"
路线
"
,
this
.
form
.
lineId
,
"
目的市
"
,
this
.
selectedRouter
?.
destCityId
,
"
目的国
"
,
this
.
selectedRouter
?.
destCountryId
,
"
始发市
"
,
this
.
selectedRouter
?.
startCityId
)
if
(
this
.
form
.
lineId
){
this
.
form
.
objectiveId
=
this
.
selectedRouter
?.
destCityId
this
.
form
.
destCountryId
=
this
.
selectedRouter
?.
destCountryId
this
.
form
.
departureId
=
this
.
selectedRouter
?.
startCityId
}
},
/** 提交按钮 */
submitForm
(
status
,
flag
=
true
)
{
this
.
$refs
[
'
form
'
].
validate
(
async
(
valid
,
errors
)
=>
{
...
...
@@ -2477,7 +2567,9 @@ export default {
font-weight
:
500
;
color
:
#ffffff
;
}
::v-deep
.el-descriptions-item__content
.el-form-item
{
margin-bottom
:
0
;
}
.card-title
{
display
:
flex
;
justify-content
:
space-between
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment