Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiedao-app-operator-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
0
Merge Requests
0
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-app-operator-master
Commits
f1deb7b8
Commit
f1deb7b8
authored
Sep 06, 2022
by
dragondean@qq.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
改bug
parent
846e2f0c
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
86 additions
and
37 deletions
+86
-37
region.js
src/api/ecw/region.js
+9
-0
index.vue
src/components/AreaSelector/index.vue
+5
-4
detail.vue
src/views/ecw/order/detail.vue
+38
-15
edit.vue
src/views/ecw/order/edit.vue
+23
-12
index.vue
src/views/ecw/order/index.vue
+8
-2
index.vue
src/views/ecw/productPrice/index.vue
+3
-4
No files found.
src/api/ecw/region.js
View file @
f1deb7b8
...
...
@@ -98,3 +98,12 @@ export function getTradeCityList(query) {
params
:
query
})
}
export
function
listByIds
(
params
){
return
request
({
url
:
'
/ecw/region/listByIds
'
,
method
:
'
get
'
,
params
})
}
\ No newline at end of file
src/components/AreaSelector/index.vue
View file @
f1deb7b8
<
template
>
<div>
<el-select
v-model=
"formData.country"
>
<el-select
v-model=
"formData.country"
:disabled=
"readonly"
>
<el-option
v-for=
"(item) in treeList"
:value=
"item.id"
:label=
"item.titleZh"
:key=
"item.id"
/>
</el-select>
<el-select
v-model=
"formData.province"
class=
"ml-10"
>
<el-select
v-model=
"formData.province"
class=
"ml-10"
:disabled=
"readonly"
>
<el-option
v-for=
"(item) in provinceList"
:value=
"item.id"
:label=
"item.titleZh"
:key=
"item.id"
/>
</el-select>
<el-select
v-model=
"formData.city"
class=
"ml-10"
>
<el-select
v-model=
"formData.city"
class=
"ml-10"
:disabled=
"readonly"
>
<el-option
v-for=
"(item) in cityList"
:value=
"item.id"
:label=
"item.titleZh"
:key=
"item.id"
/>
</el-select>
</div>
...
...
@@ -18,7 +18,8 @@ export default {
props
:{
country
:
Number
,
city
:
Number
,
province
:
Number
province
:
Number
,
readonly
:
Boolean
},
data
(){
return
{
...
...
src/views/ecw/order/detail.vue
View file @
f1deb7b8
...
...
@@ -6,7 +6,7 @@
<template
v-if=
"order.containerNumber"
>
-
{{
order
.
containerNumber
}}
</
template
>
</div>
<el-row
:gutter=
"20"
>
<el-col
:span=
"
12
"
v-if=
"order.consignorVO"
>
<el-col
:span=
"
8
"
v-if=
"order.consignorVO"
>
<el-descriptions
class=
"margin-top"
border
title=
"发货人"
:column=
"1"
:labelStyle=
"{width:'150px'}"
>
<el-descriptions-item
label=
"发货人"
>
{{order.consignorVO.name}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人电话"
>
{{order.consignorVO.phone}}
</el-descriptions-item>
...
...
@@ -16,14 +16,23 @@
</el-descriptions-item>
</el-descriptions>
</el-col>
<el-col
:span=
"1
2
"
v-if=
"order.consigneeVO"
>
<el-descriptions
class=
"margin-top"
border
title=
"收货人"
:column=
"
1
"
:labelStyle=
"{width:'150px'}"
>
<el-col
:span=
"1
6
"
v-if=
"order.consigneeVO"
>
<el-descriptions
class=
"margin-top"
border
title=
"收货人"
:column=
"
2
"
:labelStyle=
"{width:'150px'}"
>
<el-descriptions-item
label=
"收货人"
>
{{order.consigneeVO.name}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人电话"
>
{{order.consigneeVO.phone}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人邮箱"
>
{{order.consigneeVO.email}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人公司名称"
>
{{order.consigneeVO.company}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货方式"
>
<dict-tag
:type=
"DICT_TYPE.ECW_HARVEST_METHOD"
:value=
"order.consigneeVO.harvestMethod"
/>
</el-descriptions-item>
<el-descriptions-item
label=
"收货地区"
>
{{region}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货地址"
>
{{order.consigneeVO.address}}
</el-descriptions-item>
</el-descriptions>
</el-col>
</el-row>
...
...
@@ -72,41 +81,42 @@
<el-tabs
v-model=
"activeName"
>
<el-tab-pane
label=
"货物详情"
name=
"first"
>
<el-table
:data=
"order.orderItemVOList"
border
style=
"width: 100%"
>
<el-table-column
prop=
"prodTitleZh"
label=
"序号"
>
<el-table-column
prop=
"prodTitleZh"
label=
"序号"
width=
"90px"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"prodTitleZh"
label=
"中文品名"
/>
<el-table-column
prop=
"prodTitleEn"
label=
"英文品名"
/>
<el-table-column
prop=
"brand"
label=
"品牌"
>
<el-table-column
prop=
"brand"
label=
"品牌"
width=
"90px"
>
<
template
slot-scope=
"{row}"
>
<dict-tag
:type=
"DICT_TYPE.ECW_IS_BRAND"
:value=
"row.brand"
/>
<dict-tag
:type=
"DICT_TYPE.ECW_IS_BRAND"
:value=
"row.brand
Type
"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"num"
label=
"填单件数"
/>
<el-table-column
prop=
"sumNum"
label=
"入仓件数"
/>
<el-table-column
prop=
"unit"
label=
"单位"
>
<el-table-column
prop=
"num"
label=
"填单件数"
width=
"90px"
/>
<el-table-column
prop=
"sumNum"
label=
"入仓件数"
width=
"90px"
/>
<el-table-column
prop=
"unit"
label=
"单位"
width=
"90px"
>
<
template
slot-scope=
"{row}"
>
<dict-tag
:type=
"DICT_TYPE.ECW_PACKAGE_TYPE"
:value=
"row.unit"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"worth"
label=
"货值"
/>
<el-table-column
prop=
"worth"
label=
"货值"
width=
"120px"
/>
<el-table-column
prop=
""
label=
"材质"
>
<
template
slot-scope=
"{row}"
>
<dict-tag
:type=
"DICT_TYPE.ECW_PRODUCT_MATERIAL"
:value=
"row.material"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"volume"
label=
"体积(m3)"
/>
<el-table-column
prop=
"weight"
label=
"重量(kg)"
/>
<el-table-column
prop=
"volume"
label=
"体积(m³)"
width=
"90px"
/>
<el-table-column
prop=
"weight"
label=
"重量(kg)"
width=
"90px"
/>
<el-table-column
prop=
"quantity"
label=
"数量(个)"
width=
"90px"
/>
<el-table-column
prop=
""
label=
"费用类型"
>
<
template
slot-scope=
"{row}"
>
<dict-tag
:type=
"DICT_TYPE.FEE_TYPE"
:value=
"row.feeType"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
""
label=
"成交单价"
>
<el-table-column
prop=
""
label=
"成交单价"
width=
"220px"
>
<
template
slot-scope=
"{row}"
>
<template
v-if=
"row.charging ==1"
>
全包价
// TODO 缺少全包价字段
全包价
{{
row
.
seaFreight
}}
{{
currentcyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</
template
>
<
template
v-else
>
<div>
...
...
@@ -187,6 +197,7 @@ import {getUnitList} from '@/api/ecw/unit'
import
{
getCurrencyList
}
from
'
@/api/ecw/currency
'
import
{
getReceivableListByOrderId
}
from
'
@/api/ecw/receipt
'
import
{
getChannel
}
from
'
@/api/ecw/channel
'
;
import
{
listByIds
}
from
'
@/api/ecw/region
'
export
default
{
name
:
"
detail
"
,
...
...
@@ -221,7 +232,8 @@ export default {
currencyList
:
[],
unitList
:[],
feeList
:
[],
channelName
:
'
/
'
channelName
:
'
/
'
,
region
:
''
}
},
computed
:{
...
...
@@ -260,6 +272,17 @@ export default {
},
'
order.channelId
'
(){
this
.
getChannel
()
},
'
order.consigneeVO
'
(
val
){
if
(
!
val
)
return
'
-
'
listByIds
({
ids
:
[
val
.
country
,
val
.
province
,
val
.
city
].
join
(
'
,
'
)}).
then
(
res
=>
{
console
.
log
(
'
listById
'
,
res
)
let
region
=
''
res
.
data
.
forEach
(
item
=>
{
region
+=
"
"
+
item
.
titleZh
})
this
.
region
=
region
})
}
},
created
()
{
...
...
src/views/ecw/order/edit.vue
View file @
f1deb7b8
...
...
@@ -3,7 +3,7 @@
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<el-card>
<div
slot=
"header"
class=
"card-title"
>
新建订单
</div>
<div
slot=
"header"
class=
"card-title"
>
{{
editMode
?
'
新建订单
'
:
'
编辑订单
'
}}
</div>
<el-form-item
label=
"订单类型"
style=
"margin-bottom: 0"
>
<el-checkbox-group
v-model=
"form.type"
>
<el-checkbox
label=
"1"
>
集运服务
</el-checkbox>
...
...
@@ -109,12 +109,12 @@
</el-table-column>
<el-table-column
label=
"中文品名"
width=
"160px"
>
<
template
slot-scope=
"{row}"
>
<product-selector
v-model=
"row.prodId"
@
change=
"onProductChange(row, $event)"
:disabled=
"!form.lineId"
/>
<product-selector
v-model=
"row.prodId"
@
change=
"onProductChange(row, $event)"
:disabled=
"!form.lineId
|| !productEditable
"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"英文品名"
width=
"160px"
>
<
template
slot-scope=
"{row}"
>
<product-selector
lang=
"En"
v-model=
"row.prodId"
@
change=
"onProductChange(row, $event)"
:disabled=
"!form.lineId"
/>
<product-selector
lang=
"En"
v-model=
"row.prodId"
@
change=
"onProductChange(row, $event)"
:disabled=
"!form.lineId
|| !productEditable
"
/>
</
template
>
</el-table-column>
<!-- <el-table-column label="商品类型" width="160px">
...
...
@@ -125,22 +125,22 @@
<el-table-column
label=
"品牌"
width=
"100px"
>
<
template
slot-scope=
"{row}"
>
<dict-selector
v-model=
"row.brand"
:type=
"DICT_TYPE.ECW_IS_BRAND"
defaultable
@
input=
"calculationPrice(row)"
:disabled=
"!form.lineId"
/>
<dict-selector
v-model=
"row.brand"
:type=
"DICT_TYPE.ECW_IS_BRAND"
defaultable
@
input=
"calculationPrice(row)"
:disabled=
"!form.lineId
|| !productEditable
"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"件数"
width=
"90px"
>
<
template
slot-scope=
"{row}"
>
<el-input
v-model.number=
"row.num"
:disabled=
"!form.lineId"
/>
<el-input
v-model.number=
"row.num"
:disabled=
"!form.lineId
|| !productEditable
"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"包装单位"
>
<
template
slot-scope=
"{row}"
>
<dict-selector
v-model=
"row.unit"
:type=
"DICT_TYPE.ECW_PACKAGE_TYPE"
defaultable
:disabled=
"!form.lineId"
/>
<dict-selector
v-model=
"row.unit"
:type=
"DICT_TYPE.ECW_PACKAGE_TYPE"
defaultable
:disabled=
"!form.lineId
|| !productEditable
"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"数量(个)"
width=
"120px"
>
<
template
slot-scope=
"{row}"
>
<el-input
v-model=
"row.quantity"
type=
"number"
:disabled=
"!form.lineId"
/>
<el-input
v-model=
"row.quantity"
type=
"number"
:disabled=
"!form.lineId
|| !productEditable
"
/>
</
template
>
</el-table-column>
<!-- <el-table-column label="箱规(m)" width="120px">
...
...
@@ -150,12 +150,12 @@
</el-table-column> -->
<el-table-column
label=
"体积(m³)"
width=
"100px"
>
<
template
slot-scope=
"{row}"
>
<el-input
v-model=
"row.volume"
:disabled=
"!form.lineId"
/>
<el-input
v-model=
"row.volume"
:disabled=
"!form.lineId
|| !productEditable
"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"重量(kg)"
width=
"100px"
>
<
template
slot-scope=
"{row}"
>
<el-input
v-model=
"row.weight"
:disabled=
"!form.lineId"
/>
<el-input
v-model=
"row.weight"
:disabled=
"!form.lineId
|| !productEditable
"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"货值(RMB)"
width=
"100px"
>
...
...
@@ -165,7 +165,7 @@
</el-table-column>
<el-table-column
label=
"商品特性"
width=
"250px"
>
<
template
slot-scope=
"{row}"
>
<el-checkbox-group
v-model=
"row.prodAttrArr"
@
change=
"onProductAttrChange(row, $event); calculationPrice(row)"
:disabled=
"!form.lineId"
>
<el-checkbox-group
v-model=
"row.prodAttrArr"
@
change=
"onProductAttrChange(row, $event); calculationPrice(row)"
:disabled=
"!form.lineId
|| !productEditable
"
>
<el-checkbox
v-for=
"item in productAttrList"
:label=
"item.id"
:key=
"item.id"
>
{{
item
.
attrName
}}
</el-checkbox>
</el-checkbox-group>
</
template
>
...
...
@@ -199,7 +199,7 @@
<el-table-column
label=
"商品链接"
width=
"200px"
align=
"center"
>
<
template
slot-scope=
"{row}"
>
<el-link
type=
"primary"
:href=
"row.link"
target=
"_blank"
style=
"display:block"
>
{{
row
.
link
}}
</el-link>
<el-button
type=
"primary"
size=
"mini"
@
click=
"setLink(row)"
>
<el-button
type=
"primary"
size=
"mini"
@
click=
"setLink(row)"
v-if=
"productEditable"
>
{{
row
.
link
?
'
编辑商品链接
'
:
'
添加商品链接
'
}}
</el-button>
</
template
>
...
...
@@ -225,7 +225,7 @@
{{sum.totalWeight || 0}}kg
</el-descriptions-item>
<el-descriptions-item
label=
"总数量"
>
{{sum.total
Worth
|| 0}}
{{sum.total
Quatity
|| 0}}
</el-descriptions-item>
<el-descriptions-item
label=
"总货值(RMB)"
>
{{sum.totalWorth || 0}}元
...
...
@@ -598,12 +598,14 @@ export default {
totalVolume
:
0
,
totalWeight
:
0
,
totalWorth
:
0
,
totalQuatity
:
0
}
this
.
productList
.
forEach
(
item
=>
{
sum
.
totalNum
+=
parseInt
(
item
.
num
)
||
0
sum
.
totalVolume
+=
parseFloat
(
item
.
volume
)
||
0
sum
.
totalWeight
+=
parseFloat
(
item
.
weight
)
||
0
sum
.
totalWorth
+=
parseFloat
(
item
.
worth
)
||
0
sum
.
totalQuatity
+=
parseInt
(
item
.
quantity
)
||
0
})
return
sum
...
...
@@ -611,6 +613,15 @@ export default {
// 总优惠金额
discount
(){
return
0
},
// 是否编辑
editMode
(){
return
this
.
$route
.
path
.
indexOf
(
'
create
'
)
==
-
1
},
// 是否可以编辑商品基本信息(货值除外)
productEditable
(){
// 非编辑模式 或者 草稿状态就可以编辑
return
!
this
.
editMode
||
this
.
form
.
status
==
0
}
},
watch
:{
...
...
src/views/ecw/order/index.vue
View file @
f1deb7b8
...
...
@@ -130,10 +130,16 @@
</el-table-column>
<el-table-column
label=
"唛头"
align=
"center"
prop=
"marks"
/>
<el-table-column
label=
"总箱数/入仓箱数"
align=
"center"
prop=
"sumNum"
>
<
template
slot-scope=
"{row}"
>
{{
row
.
totalNum
}}
箱/
{{
row
.
sumNum
}}
箱
</
template
>
<
template
slot-scope=
"{row}"
>
{{
row
.
totalNum
}}
箱/
{{
row
.
sumNum
}}
箱
</
template
>
</el-table-column>
<el-table-column
label=
"体积/重量"
align=
"center"
prop=
"sumWeight"
>
<
template
slot-scope=
"{row}"
>
{{
row
.
sumVolume
}}
m³ /
{{
row
.
sumWeight
}}
Kg
</
template
>
<
template
slot-scope=
"{row}"
>
<!--入仓前是填单数据,入仓后是入仓数据-->
<template
v-if=
"row.inWarehouseState
<
=
1
"
>
{{
row
.
costVO
.
totalVolume
}}
m³ /
{{
row
.
costVO
.
totalWeight
}}
Kg箱
</
template
>
<
template
v-else
>
{{
row
.
sumVolume
}}
m³ /
{{
row
.
sumWeight
}}
Kg箱
</
template
>
</template>
</el-table-column>
<el-table-column
label=
"始发仓"
align=
"center"
prop=
"departureName"
/>
<el-table-column
label=
"运输方式/目的地"
align=
"center"
prop=
"transportId"
>
...
...
src/views/ecw/productPrice/index.vue
View file @
f1deb7b8
...
...
@@ -425,14 +425,13 @@ export default {
this
.
product
=
res
.
data
})
}
else
{
// 不指定产品获取类型等信息
this
.
getTypeList
();
this
.
getAttrList
();
}
//获取城市列表
this
.
getAllCityList
()
;
this
.
getAllCityList
()
this
.
getChannelList
()
this
.
getTypeList
()
//获取货币列表
this
.
requestCurrencyList
();
...
...
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