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
9ab53b11
Commit
9ab53b11
authored
Jan 05, 2024
by
邓春圆
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
516ceabd
29f7b9a9
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
219 additions
and
72 deletions
+219
-72
batchEdit.vue
src/views/ecw/productPrice/batchEdit.vue
+8
-2
batchEditAir.vue
src/views/ecw/productPrice/batchEditAir.vue
+8
-11
Logs.vue
src/views/ecw/productPrice/components/Logs.vue
+70
-23
PriceStep.vue
src/views/ecw/productPrice/components/PriceStep.vue
+3
-2
ShowStepPriceItem.vue
src/views/ecw/productPrice/components/ShowStepPriceItem.vue
+68
-0
editAir.vue
src/views/ecw/productPrice/editAir.vue
+5
-1
index.vue
src/views/ecw/productPrice/index.vue
+57
-33
No files found.
src/views/ecw/productPrice/batchEdit.vue
View file @
9ab53b11
...
...
@@ -411,7 +411,10 @@ export default {
minWeightUnit
,
needOrderInquiry
,
needBook
,
needPay
needPay
,
freightPriceStepList
,
clearancePriceStepList
,
fullPriceStepList
}
=
res
.
data
const
data
=
{
...
...
@@ -432,7 +435,10 @@ export default {
minWeightUnit
,
needOrderInquiry
,
needBook
,
needPay
needPay
,
freightPriceStepList
,
clearancePriceStepList
,
fullPriceStepList
}
// 海运需要填充货柜位置和订单方数上限
if
(
this
.
type
==
'
sea
'
){
...
...
src/views/ecw/productPrice/batchEditAir.vue
View file @
9ab53b11
...
...
@@ -216,15 +216,6 @@ export default {
// 获取模板数据(复制的源路线价格信息)
async
getTemplateDetail
(
id
){
const
res
=
await
getProductPrice
(
id
)
// 填充商品、线路、价格信息、出货渠道(空运)
// this.form.productIdList = [res.data.productId]
/* 23-11-07要求不复制商品和线路 https://zentao.test.jdshangmen.com/bug-view-5145.html
this.selectedRoutes = [{
"lineId": res.data.warehouseLineId,
"channelId": res.data.shippingChannelId,
"transportId": res.data.warehouseLineDO.transportType,
"shippingChannelId":res.data.channelId
}]*/
// 要复制过来的字段
const
{
allPrice
,
...
...
@@ -244,7 +235,10 @@ export default {
minWeightUnit
,
needOrderInquiry
,
needBook
,
needPay
needPay
,
freightPriceStepList
,
clearancePriceStepList
,
fullPriceStepList
}
=
res
.
data
const
data
=
{
...
...
@@ -265,7 +259,10 @@ export default {
minWeightUnit
,
needOrderInquiry
,
needBook
,
needPay
needPay
,
freightPriceStepList
,
clearancePriceStepList
,
fullPriceStepList
}
this
.
$set
(
this
,
'
form
'
,
Object
.
assign
({},
this
.
form
,
data
))
...
...
src/views/ecw/productPrice/components/Logs.vue
View file @
9ab53b11
<
script
>
import
{
getPriceSnapshotList
}
from
"
@/api/ecw/productPrice
"
;
import
{
parseTime
}
from
"
../../../../utils/ruoyi
"
;
import
Template
from
"
@/views/cms/template/index.vue
"
;
import
ShowStepPriceItem
from
"
@/views/ecw/productPrice/components/ShowStepPriceItem.vue
"
;
export
default
{
name
:
"
Logs
"
,
components
:
{
ShowStepPriceItem
,
Template
},
filters
:
{
parseTime
},
props
:{
currencyMap
:{
type
:
Object
,
...
...
@@ -25,6 +30,7 @@ export default {
}
},
methods
:{
parseTime
,
open
(
id
){
this
.
showLogsDialog
=
true
this
.
loading
=
true
...
...
@@ -61,6 +67,8 @@ export default {
<!----阶梯定价-->
<template
v-if=
"row.detail.stepPrice == 1"
>
<!--老的数据格式-->
<template
v-if=
"row.detail.priceStepList"
>
<template
v-for=
"(item, index) in row.detail.priceStepList"
>
<div
class=
"mt-10"
>
第
{{
index
+
1
}}
阶段
...
...
@@ -83,35 +91,74 @@ export default {
</div>
</template>
</template>
<
template
v-else-if=
"row.detail.priceType"
>
<template
v-for=
"(item, index) in row.detail.fullPriceStepList"
>
<show-step-price-item
:value=
"item"
:unit-map=
"unitMap"
:currency-map=
"currencyMap"
:index=
"index"
:price-name=
"$t('全包价')"
field-prefix=
"all"
/>
</
template
>
</template>
<
template
v-else
>
<template
v-if=
"row.detail.freightPriceStepList && row.detail.freightPriceStepList.length"
>
<template
v-for=
"(item, index) in row.detail.freightPriceStepList"
>
<show-step-price-item
:value=
"item"
:unit-map=
"unitMap"
:currency-map=
"currencyMap"
:index=
"index"
:price-name=
"$t('运费')"
field-prefix=
"transport"
/>
</
template
>
</template>
<
template
v-if=
"row.detail.freightPriceStepList && row.detail.freightPriceStepList.length"
>
<template
v-for=
"(item, index) in row.detail.freightPriceStepList"
>
<show-step-price-item
:value=
"item"
:unit-map=
"unitMap"
:currency-map=
"currencyMap"
:index=
"index"
:price-name=
"$t('清关费')"
field-prefix=
"clearance"
/>
</
template
>
</template>
</template>
</template>
<
template
v-else
>
<template
v-if=
"row.detail.priceType != 1"
>
<div>
默认运费
:
{{
$t
(
'
默认运费
'
)
}}
’
:
{{
row
.
detail
.
transportPrice
}}
{{
currencyMap
[
row
.
detail
.
transportPriceUnit
]
}}
/
{{
unitMap
[
row
.
detail
.
transportVolumeUnit
]
}}
</div>
<div>
默认清关费
:
{{
$t
(
'
默认清关费
'
)
}}
:
{{
row
.
detail
.
clearancePrice
}}
{{
currencyMap
[
row
.
detail
.
clearancePriceUnit
]
}}
/
{{
unitMap
[
row
.
detail
.
clearanceVolumeUnit
]
}}
</div>
</
template
>
<div
v-else
>
全包价
:
{{$t('全包价')}}
:
{{row.detail.allPrice}} {{currencyMap[row.detail.allPriceUnit]}} / {{unitMap[row.detail.allVolumeUnit]}}
</div>
<
template
v-for=
"(item, index) in row.detail.specialList"
>
<template
v-if=
"row.detail.priceType != 1"
>
<div
:key=
"item.specialDictType + '_freight'"
>
{{
getDictDataLabel
(
DICT_TYPE
.
ECW_SPECIAL_REQ_FOR_LINE_PRODUCTS
,
item
.
specialDictType
)
}}
运费
:
{{
getDictDataLabel
(
DICT_TYPE
.
ECW_SPECIAL_REQ_FOR_LINE_PRODUCTS
,
item
.
specialDictType
)
}}
{{
$t
(
'
运费
'
)
}}
}
:
{{
item
.
transportPrice
}}
{{
currencyMap
[
item
.
transportPriceUnit
]
}}
/
{{
unitMap
[
item
.
transportVolumeUnit
]
}}
</div>
<div
:key=
"item.specialDictType + '_clearance'"
>
{{
getDictDataLabel
(
DICT_TYPE
.
ECW_SPECIAL_REQ_FOR_LINE_PRODUCTS
,
item
.
specialDictType
)
}}
清关费
:
{{
getDictDataLabel
(
DICT_TYPE
.
ECW_SPECIAL_REQ_FOR_LINE_PRODUCTS
,
item
.
specialDictType
)
}}
{{
$t
(
'
清关费
'
)
}}
:
{{
item
.
clearancePrice
}}
{{
currencyMap
[
item
.
clearancePriceUnit
]
}}
/
{{
unitMap
[
item
.
clearanceVolumeUnit
]
}}
</div>
</
template
>
<div
v-else
>
{{getDictDataLabel(DICT_TYPE.ECW_SPECIAL_REQ_FOR_LINE_PRODUCTS, item.specialDictType)}}
全包价
:
{{getDictDataLabel(DICT_TYPE.ECW_SPECIAL_REQ_FOR_LINE_PRODUCTS, item.specialDictType)}}
{{$t('全包价')}}
:
{{item.allPrice}} {{currencyMap[item.allPriceUnit]}} / {{unitMap[item.allVolumeUnit]}}
</div>
</template>
...
...
src/views/ecw/productPrice/components/PriceStep.vue
View file @
9ab53b11
...
...
@@ -52,7 +52,8 @@ export default {
},
computed
:{
packagingList
(){
return
getDictDatas
(
DICT_TYPE
.
ECW_PACKAGING_TYPE
).
map
(
dict
=>
{
const
dicts
=
JSON
.
parse
(
JSON
.
stringify
(
getDictDatas
(
DICT_TYPE
.
ECW_PACKAGING_TYPE
)))
return
dicts
.
map
(
dict
=>
{
dict
.
enable
=
true
this
.
value
.
packagingList
.
forEach
(
item
=>
{
if
(
item
.
packagingTypes
?.
length
&&
item
.
packagingTypes
.
indexOf
(
dict
.
value
)
>
-
1
){
...
...
@@ -210,7 +211,7 @@ export default {
<!--
包装类型价格
-->
<
template
v
-
for
=
"
(item, i) in value.packagingList
"
>
<
el
-
form
-
item
:
label
=
"
$t('包装类型') + priceName + (i+1)
"
>
<
el
-
form
-
item
:
label
=
"
$t('包装类型') + priceName + (i+1)
"
:
key
=
"
i
"
>
<
template
#
label
>
<
div
class
=
"
el-form-item__label
"
style
=
"
width: 150px;
"
>
{{
$t
(
'
包装类型
'
)
+
priceName
+
(
i
+
1
)
}}
<
/div
>
<
div
v
-
if
=
"
!item.packagingTypes || !item.packagingTypes.length
"
class
=
"
tips
"
>
{{
$t
(
'
未选择包装类型将被忽略
'
)
}}
<
/div
>
...
...
src/views/ecw/productPrice/components/ShowStepPriceItem.vue
0 → 100644
View file @
9ab53b11
<
script
>
import
Selector
from
"
@/components/Selector/index.vue
"
;
import
Template
from
"
@/views/cms/template/index.vue
"
;
import
{
DICT_TYPE
}
from
"
@/utils/dict
"
;
export
default
{
name
:
"
ShowStepPriceItem
"
,
components
:
{
Template
,
Selector
},
props
:
{
index
:
Number
,
value
:
Object
,
priceName
:
String
,
fieldPrefix
:
String
,
unitMap
:
{
type
:
Object
,
default
(){
return
{}
}
},
currencyMap
:
{
type
:
Object
,
default
(){
return
{}
}
}
},
computed
:{
showPackages
(){
return
str
=>
{
let
arr
=
str
.
split
(
"
,
"
)
return
arr
.
map
(
item
=>
{
return
this
.
getDictDataLabel
(
DICT_TYPE
.
ECW_PACKAGING_TYPE
,
item
)
}).
join
(
"
,
"
)
}
}
}
}
</
script
>
<
template
>
<div>
<div
class=
"mt-10"
>
{{
$t
(
"
第{no
}
阶段
"
,
{
no
:
index
+
1
}
)
}}
{{
priceName
}}
{{
value
.
startNum
}}
-
{{
value
.
endNum
}}
{{
unitMap
[
value
.
weightUnit
]
}}
<
/div
>
<
div
class
=
"
pl-10
"
>
{{
$t
(
'
默认
'
)
+
priceName
}}
:
{{
value
.
transportPrice
}}
{{
currencyMap
[
value
[
`${fieldPrefix
}
PriceUnit`
]]
}}
/
{{
unitMap
[
value
[
`${fieldPrefix
}
VolumeUnit`
]]
}}
<
/div
>
<!--
特需加价
-->
<
div
v
-
for
=
"
(special, specialIndex) in value.specialList
"
>
{{
getDictDataLabel
(
DICT_TYPE
.
ECW_SPECIAL_REQ_FOR_LINE_PRODUCTS
,
special
.
specialDictType
)
+
priceName
}}
{{
special
[
`${fieldPrefix
}
Price`
]
}}
{{
currencyMap
[
special
[
`${fieldPrefix
}
PriceUnit`
]]
}}
{{
unitMap
[
special
[
`${fieldPrefix
}
VolumeUnit`
]]
}}
<
/div
>
<!--
包装价
-->
<!--
包装类型价格
-->
<
template
v
-
for
=
"
(item, i) in value.packagingList
"
>
{{
$t
(
'
包装类型
'
)
+
priceName
+
(
i
+
1
)
}}
{{
showPackages
(
item
.
packagingTypes
)
}}
{{
item
.
packagingPrice
}}
{{
currencyMap
[
item
.
packagingPriceUnit
]
}}
{{
unitMap
[
item
.
packagingVolumeUnit
]
}}
<
/template
>
<
/div
>
<
/template
>
src/views/ecw/productPrice/editAir.vue
View file @
9ab53b11
...
...
@@ -191,7 +191,7 @@
<el-button
@
click=
"showLogs"
type=
"primary"
v-if=
"readonly"
>
{{$t('查看价格日志')}}
</el-button>
</div>
<logs
ref=
"logs"
></logs>
<logs
ref=
"logs"
:unit-map=
"unitMap"
:currency-map=
"currencyMap"
></logs>
</div>
</template>
<
script
>
...
...
@@ -235,6 +235,7 @@ export default {
checkList
:
[],
selectedRoutes
:
[],
// 勾选的路线渠道
form
:
{
weightLimit
:
0
,
minWeightUnit
:
0
,
priceStepList
:
[],
// 阶梯价格
specialList
:
[],
...
...
@@ -606,6 +607,9 @@ export default {
}
}
// 空运固定阶梯价
data
.
stepPrice
=
1
// 修改单条路线
if
(
this
.
$route
.
query
.
action
==
'
update
'
)
{
this
.
loading
=
true
...
...
src/views/ecw/productPrice/index.vue
View file @
9ab53b11
...
...
@@ -273,34 +273,42 @@
<
el
-
row
:
gutter
=
"
20
"
v
-
if
=
"
showMoreStepPriceItem
"
>
<
el
-
col
:
span
=
"
12
"
>
<
div
v
-
for
=
"
(item, index) in showMoreStepPriceItem.priceStepList
"
>
<
div
class
=
"
page-title
"
>
{{
$t
(
"
第{no
}
阶梯({start
}
~{end
}
{weightUnit
}
)
"
,
{
no
:
index
+
1
,
start
:
item
.
startNum
,
end
:
item
.
endNum
,
weightUnit
:
getUnitTitle
(
item
.
weightUnit
),
}
)
}}
<!--
全包价
-->
<
template
v
-
if
=
"
showMoreStepPriceItem.priceType
"
>
<
div
v
-
for
=
"
(item, index) in showMoreStepPriceItem.fullPriceStepList
"
>
<
show
-
step
-
price
-
item
:
value
=
"
item
"
:
unit
-
map
=
"
unitMap
"
:
currency
-
map
=
"
currencyMap
"
:
index
=
"
index
"
field
-
prefix
=
"
all
"
:
price
-
name
=
"
$t('全包价')
"
><
/show-step-price-item
>
<
/div
>
<
div
v
-
if
=
"
showMoreStepPriceItem.priceType == 0
"
>
{{
$t
(
'
运费
'
)
}}
:{{
getCurrencySymbol
(
item
.
transportPriceUnit
)
+
item
.
transportPrice
}}
&
nbsp
;
{{
getCurrencyTitle
(
item
.
transportPriceUnit
)
+
'
/
'
+
getUnitTitle
(
item
.
transportVolumeUnit
)
}}
<
br
/>
<
template
v
-
if
=
"
[3,4].indexOf(+showMoreStepPriceItem.warehouseLineDO.transportType) > -1
"
>
<!--
空运的清关费单独显示
-->
<
/template
>
<
template
v
-
else
>
<!--
海运的清关费
-->
{{
$t
(
'
清关费
'
)
}}
:{{
getCurrencySymbol
(
item
.
clearancePriceUnit
)
+
item
.
clearancePrice
}}
&
nbsp
;
{{
getCurrencyTitle
(
item
.
clearancePriceUnit
)
+
'
/
'
+
getUnitTitle
(
item
.
clearanceVolumeUnit
)
}}
<
/template
>
<
/div
>
<
div
v
-
if
=
"
showMoreStepPriceItem.priceType == 1
"
>
{{
$t
(
'
全包价
'
)
}}
:{{
getCurrencySymbol
(
item
.
allPriceUnit
)
+
item
.
allPrice
}}
&
nbsp
;
{{
getCurrencyTitle
(
item
.
allPriceUnit
)
+
'
/
'
+
getUnitTitle
(
item
.
allVolumeUnit
)
}}
<
template
v
-
if
=
"
showMoreStepPriceItem.freightPriceStepList
"
>
<
div
v
-
for
=
"
(item, index) in showMoreStepPriceItem.freightPriceStepList
"
>
<
show
-
step
-
price
-
item
:
value
=
"
item
"
:
unit
-
map
=
"
unitMap
"
:
currency
-
map
=
"
currencyMap
"
:
index
=
"
index
"
field
-
prefix
=
"
transport
"
:
price
-
name
=
"
$t('运费')
"
><
/show-step-price-item
>
<
/div
>
<
/template
>
<
template
v
-
if
=
"
showMoreStepPriceItem.clearancePriceStepList
"
>
<
div
v
-
for
=
"
(item, index) in showMoreStepPriceItem.clearancePriceStepList
"
>
<
show
-
step
-
price
-
item
:
value
=
"
item
"
:
unit
-
map
=
"
unitMap
"
:
currency
-
map
=
"
currencyMap
"
:
index
=
"
index
"
field
-
prefix
=
"
clearance
"
:
price
-
name
=
"
$t('清关费')
"
><
/show-step-price-item
>
<
/div
>
<
/template
>
<
/template
>
<
/el-col
>
<!--
空运的清关费单独显示
-->
<!--
...
...
@@ -356,10 +364,12 @@ import { getProduct } from '@/api/ecw/product';
import
{
parseTime
}
from
'
@/utils/ruoyi
'
import
Template
from
"
@/views/cms/template
"
;
import
{
getStatusName
}
from
"
./util
"
;
import
ShowStepPriceItem
from
"
@/views/ecw/productPrice/components/ShowStepPriceItem.vue
"
;
export
default
{
name
:
"
EcwProductpriceIndex
"
,
filters
:
{
parseTime
}
,
components
:
{
ShowStepPriceItem
,
Template
,
DictTag
}
,
...
...
@@ -379,7 +389,7 @@ export default {
/* startCityList: [], //始发地城市
destCityList: [], //目的地城市 */
routedList
:
[],
//已开头路线列表
currecyList
:
[],
//货币列表
curre
n
cyList
:
[],
//货币列表
unitList
:
[],
//单位列表
channelList
:[]
,
// 渠道
routeParams
:{
}
,
//路线搜索条件
...
...
@@ -506,8 +516,8 @@ export default {
// 显示币种符号
getCurrencySymbol
()
{
return
currencyId
=>
{
for
(
let
index
in
this
.
currecyList
)
{
let
currecyItem
=
this
.
currecyList
[
index
];
for
(
let
index
in
this
.
curre
n
cyList
)
{
let
currecyItem
=
this
.
curre
n
cyList
[
index
];
if
(
currecyItem
.
id
==
currencyId
)
{
return
currecyItem
.
fuhao
;
}
...
...
@@ -517,8 +527,8 @@ export default {
// 显示币种名称
getCurrencyTitle
()
{
return
currencyId
=>
{
for
(
let
index
in
this
.
currecyList
)
{
let
currecyItem
=
this
.
currecyList
[
index
];
for
(
let
index
in
this
.
curre
n
cyList
)
{
let
currecyItem
=
this
.
curre
n
cyList
[
index
];
if
(
currecyItem
.
id
==
currencyId
)
{
return
this
.
$l
(
currecyItem
,
'
title
'
);
}
...
...
@@ -543,6 +553,20 @@ export default {
destCityList
(){
return
this
.
cityList
.
filter
(
item
=>
item
.
type
==
1
||
item
.
type
==
3
)
}
,
currencyMap
(){
let
map
=
{
}
this
.
currencyList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
}
)
return
map
}
,
unitMap
(){
let
map
=
{
}
this
.
unitList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
}
)
return
map
}
,
}
,
activated
()
{
// console.log('activated', Object.assign(
{
}
,
this
.
$route
.
query
))
...
...
@@ -687,7 +711,7 @@ export default {
/**获取所有货币列表 */
requestCurrencyList
()
{
getCurrencyList
().
then
(
response
=>
{
this
.
currecyList
=
response
.
data
;
this
.
curre
n
cyList
=
response
.
data
;
}
)
}
,
...
...
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