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
b0b46e09
Commit
b0b46e09
authored
Aug 18, 2022
by
吴滔
Browse files
Options
Browse Files
Download
Plain Diff
解决冲突
parents
c246af92
ed168d68
Changes
38
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
38 changed files
with
1869 additions
and
897 deletions
+1869
-897
App.vue
src/App.vue
+15
-0
boxSea.js
src/api/ecw/boxSea.js
+39
-8
deptTarget.js
src/api/ecw/deptTarget.js
+9
-0
order.js
src/api/ecw/order.js
+7
-9
orderCargoControl.js
src/api/ecw/orderCargoControl.js
+28
-0
needKnow.js
src/api/system/needKnow.js
+54
-0
index.vue
src/components/OrderBaseInfo/index.vue
+13
-11
index.vue
src/components/UserSelector/index.vue
+75
-0
index.js
src/router/index.js
+5
-29
dict.js
src/utils/dict.js
+4
-2
detail.vue
src/views/bpm/processInstance/detail.vue
+56
-0
costForm.vue
src/views/ecw/box/costForm.vue
+2
-24
indexSea.vue
src/views/ecw/box/indexSea.vue
+81
-23
query.vue
src/views/ecw/box/query.vue
+146
-112
regError.vue
src/views/ecw/box/regError.vue
+2
-1
shippingDetail.vue
src/views/ecw/box/shippingDetail.vue
+13
-6
arrival.vue
src/views/ecw/box/shippingSea/nodePage/arrival.vue
+1
-1
startPacking.vue
...ews/ecw/box/shippingSea/nodePage/cabinet/startPacking.vue
+13
-12
supplementOrder.vue
.../ecw/box/shippingSea/nodePage/cabinet/supplementOrder.vue
+6
-7
cusClearance.vue
src/views/ecw/box/shippingSea/nodePage/cusClearance.vue
+1
-1
departure.vue
src/views/ecw/box/shippingSea/nodePage/departure.vue
+1
-1
preinstall.vue
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
+22
-20
utils.js
src/views/ecw/box/shippingSea/utils.js
+37
-0
index.vue
src/views/ecw/deptTarget/index.vue
+344
-255
batchSingleApplication.vue
src/views/ecw/order/batchSingleApplication.vue
+118
-84
cargoControl.vue
src/views/ecw/order/cargoControl.vue
+4
-10
cargoControlDetail.vue
src/views/ecw/order/cargoControlDetail.vue
+3
-18
CargoControlEdit.vue
src/views/ecw/order/components/CargoControlEdit.vue
+10
-10
SendSmsCode.vue
src/views/ecw/order/components/SendSmsCode.vue
+55
-0
Transfer.vue
src/views/ecw/order/components/Transfer.vue
+63
-31
edit.vue
src/views/ecw/order/edit.vue
+8
-2
feeApplication.vue
src/views/ecw/order/feeApplication.vue
+79
-65
index.vue
src/views/ecw/order/index.vue
+39
-24
transferWarehousing.vue
src/views/ecw/order/transferWarehousing.vue
+45
-19
index.vue
src/views/ecw/order/warehousing/index.vue
+12
-5
edit.vue
src/views/ecw/productPrice/edit.vue
+110
-53
index.vue
src/views/ecw/productPrice/index.vue
+77
-54
index.vue
src/views/system/needKnow/index.vue
+272
-0
No files found.
src/App.vue
View file @
b0b46e09
...
...
@@ -17,3 +17,18 @@ export default {
}
}
</
script
>
<
style
lang=
"scss"
>
.page-title
{
font-size
:
16px
;
margin
:
20px
0
;
display
:flex
;
align-items
:center
;
&
:before
{
content
:
''
;
width
:
5px
;
height
:
15px
;
background
:
#666
;
margin-right
:
10px
;
}
}
</
style
>
src/api/ecw/boxSea.js
View file @
b0b46e09
...
...
@@ -355,14 +355,14 @@ export function abnormalCreate(data) {
* 获得已预装部分列表
*
* @export
* @param {*}
params
* @param {*}
data
* @return {*}
*/
export
function
secGoodsList
(
params
)
{
export
function
secGoodsList
(
data
)
{
return
request
({
url
:
"
/ecw/box-preload-goods/secGoodsList
"
,
method
:
"
ge
t
"
,
params
,
method
:
"
pos
t
"
,
data
,
});
}
...
...
@@ -370,14 +370,14 @@ export function secGoodsList(params) {
* 获得预装分页
*
* @export
* @param {*}
params
* @param {*}
data
* @return {*}
*/
export
function
preloadPage
(
params
)
{
export
function
preloadPage
(
data
)
{
return
request
({
url
:
"
/ecw/box-preload-goods/preloadPage
"
,
method
:
"
ge
t
"
,
params
,
method
:
"
pos
t
"
,
data
,
});
}
...
...
@@ -396,6 +396,37 @@ export function createSection(data) {
});
}
/**
* 查询出货单下的所有部分列表
*
* @export
* @param {*} data
* @return {*}
*/
export
function
getSectionList
(
params
)
{
return
request
({
url
:
"
/ecw/box-preload-section/list
"
,
method
:
"
get
"
,
params
,
});
}
/**
* 装柜订单明细
*
* @export
* @param {*} data
* @return {*}
*/
export
function
boxGoodsDetail
(
data
)
{
return
request
({
url
:
"
/ecw/box-preload-goods/boxGoodsDetail
"
,
method
:
"
post
"
,
headers
:
{
"
Content-Type
"
:
"
application/x-www-form-urlencoded
"
},
data
:
jsonToFormData
(
data
),
});
}
/**
* 删除预装部分
*
...
...
src/api/ecw/deptTarget.js
View file @
b0b46e09
...
...
@@ -50,6 +50,15 @@ export function getDeptTargetPage(query) {
})
}
// 获得个人目标进度分页
export
function
getPersonTargetPage
(
query
)
{
return
request
({
url
:
'
/sale/dept-target/personal/page
'
,
method
:
'
get
'
,
params
:
query
})
}
// 导出部门业绩目标设置 Excel
export
function
exportDeptTargetExcel
(
query
)
{
return
request
({
...
...
src/api/ecw/order.js
View file @
b0b46e09
...
...
@@ -249,15 +249,6 @@ export function feeApplicationGet(params){
})
}
// 获得控货分页
export
function
getCargoControlOrderPage
(
params
){
return
request
({
url
:
'
ecw/order-cargo-control/cargo/control/order
'
,
method
:
'
get
'
,
params
})
}
//获得调仓明细
export
function
orderWarehouseInGetAdjustInfo
(
params
){
return
request
({
...
...
@@ -288,6 +279,13 @@ export function getCargoControlOrderPage(params){
params
})
}
export
function
getAdjustInfo
(
params
){
return
request
({
url
:
'
/order/order-warehouse-in/get-adjust-info
'
,
method
:
'
get
'
,
params
,
})
}
export
function
warehouseAdjustArrived
(
data
){
return
request
({
url
:
'
/order/order-warehouse-in/warehouse-adjust-arrived
'
,
...
...
src/api/ecw/orderCargoControl.js
0 → 100644
View file @
b0b46e09
import
request
from
'
@/utils/request
'
// 获得控货分页
export
function
getCargoControlOrderPage
(
params
){
return
request
({
url
:
'
ecw/order-cargo-control/cargo/control/order
'
,
method
:
'
get
'
,
params
})
}
// 发送手机验证码
export
function
sendSmsCode
(
data
){
return
request
({
url
:
'
/ecw/order-cargo-control/send-sms-code
'
,
method
:
'
post
'
,
data
})
}
// 创建订单控货人信息
export
function
create
(
data
){
return
request
({
url
:
'
/ecw/order-cargo-control/create
'
,
method
:
'
post
'
,
data
})
}
\ No newline at end of file
src/api/system/needKnow.js
0 → 100644
View file @
b0b46e09
import
request
from
'
@/utils/request
'
// 创建需知
export
function
createNeedKnow
(
data
)
{
return
request
({
url
:
'
/system/need-know/create
'
,
method
:
'
post
'
,
data
:
data
})
}
// 更新需知
export
function
updateNeedKnow
(
data
)
{
return
request
({
url
:
'
/system/need-know/update
'
,
method
:
'
put
'
,
data
:
data
})
}
// 删除需知
export
function
deleteNeedKnow
(
id
)
{
return
request
({
url
:
'
/system/need-know/delete?id=
'
+
id
,
method
:
'
delete
'
})
}
// 获得需知
export
function
getNeedKnow
(
id
)
{
return
request
({
url
:
'
/system/need-know/get?id=
'
+
id
,
method
:
'
get
'
})
}
// 获得需知分页
export
function
getNeedKnowPage
(
query
)
{
return
request
({
url
:
'
/system/need-know/page
'
,
method
:
'
get
'
,
params
:
query
})
}
// 导出需知 Excel
export
function
exportNeedKnowExcel
(
query
)
{
return
request
({
url
:
'
/system/need-know/export-excel
'
,
method
:
'
get
'
,
params
:
query
,
responseType
:
'
blob
'
})
}
src/components/OrderBaseInfo/index.vue
View file @
b0b46e09
...
...
@@ -4,36 +4,38 @@
<el-descriptions-item
label=
"唛头"
>
{{
order
.
marks
}}
</el-descriptions-item>
<el-descriptions-item
label=
"已到箱数"
>
{{
order
.
sumNum
}}
</el-descriptions-item>
<el-descriptions-item
label=
"订单状态"
><dict-tag
:type=
"DICT_TYPE.ORDER_STATUS"
:value=
"order.status"
/></el-descriptions-item>
<el-descriptions-item
label=
"送货时间"
>
todo
</el-descriptions-item>
<el-descriptions-item
label=
"送货时间"
>
{{
order
.
consigneeVO
&&
order
.
consigneeVO
.
deliveryDate
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"运输方式"
>
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"order.logisticsInfoDto.transportId"
></dict-tag>
</el-descriptions-item>
<el-descriptions-item
label=
"始发地"
>
{{
order
.
logisticsInfoDto
.
start
WarehouseId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"目的地"
>
{{
order
.
logisticsInfoDto
.
dest
WarehouseId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人姓名"
>
{{
order
.
consignorVO
&&
order
.
consignorVO
.
name
}}
</el-descriptions-item>
<el-descriptions-item
label=
"始发地"
>
{{
order
.
logisticsInfoDto
.
start
AddressZh
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"目的地"
>
{{
order
.
logisticsInfoDto
.
dest
TitleZh
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人姓名"
>
{{
order
.
consignorVO
&&
order
.
consignorVO
.
name
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人公司"
>
{{
order
.
consignorVO
&&
order
.
consignorVO
.
company
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人电话"
>
{{
order
.
consignorVO
&&
order
.
consignorVO
.
phone
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人姓名"
>
{{
order
.
consigneeVO
&&
order
.
consigneeVO
.
name
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人公司"
>
{{
order
.
consigneeVO
&&
order
.
consigneeVO
.
company
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人电话"
>
{{
order
.
consigneeVO
&&
order
.
consigneeVO
.
phone
}}
</el-descriptions-item>
<el-descriptions-item
label=
"入仓类型"
>
{{
order
.
warehouseType
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人电话"
>
{{
order
.
consignorVO
&&
order
.
consignorVO
.
phone
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人姓名"
>
{{
order
.
consigneeVO
&&
order
.
consigneeVO
.
name
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人公司"
>
{{
order
.
consigneeVO
&&
order
.
consigneeVO
.
company
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人电话"
>
{{
order
.
consigneeVO
&&
order
.
consigneeVO
.
phone
||
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"入仓类型"
>
{{
getDictDataLabel
(
DICT_TYPE
.
ECW_WAREHOUSING_TYPE
,
order
.
warehouseType
)
}}
</el-descriptions-item>
<el-descriptions-item
label=
"订单号"
>
{{
order
.
orderNo
}}
</el-descriptions-item>
</el-descriptions>
</div>
</
template
>
<
script
>
import
{
DICT_TYPE
}
from
"
@/utils/dict
"
import
{
DICT_TYPE
,
getDictDataLabel
}
from
"
@/utils/dict
"
export
default
{
name
:
"
orderBaseInfo
"
,
props
:
{
order
:
Object
},
data
()
{
return
{
DICT_TYPE
DICT_TYPE
,
getDictDataLabel
}
}
}
...
...
src/components/UserSelector/index.vue
0 → 100644
View file @
b0b46e09
<
template
>
<el-select
v-model=
"index"
filterable
clearable
remote
reserve-keyword
placeholder=
"请选择"
:loading=
"loading"
>
<el-option
v-for=
"(item, index) in list"
:key=
"item.id"
:label=
"`$
{item.nickname}`"
:value="index">
</el-option>
</el-select>
</
template
>
<
script
>
import
{
getCustomerContactsSelect
,
getCustomerContacts
}
from
'
@/api/ecw/customerContacts
'
import
{
listSimpleUsers
}
from
'
@/api/system/user
'
export
default
{
props
:{
value
:
[
String
,
Number
]
},
data
(){
return
{
index
:
null
,
list
:[],
loading
:
false
,
size
:
20
}
},
watch
:{
index
(
val
){
this
.
$emit
(
'
input
'
,
val
!==
null
?
this
.
list
[
val
].
id
:
null
)
this
.
$emit
(
'
change
'
,
val
!==
null
?
this
.
list
[
val
]:
null
)
},
value
(
val
){
// this.init()
}
},
created
(){
listSimpleUsers
().
then
(
res
=>
{
this
.
list
=
res
.
data
})
// this.init()
},
methods
:{
/* init(){
console.log('初始化联系人选择', this.value)
if(!this.value) return
let index = this.list.findIndex(item => item.customerContactsId == this.value)
if(index < 0){
getCustomerContactsSelect({ids: this.value}).then(res => {
if(!res.data || !res.data.length){
return this.$message.error('联系人信息获取失败')
}
this.list.unshift(res.data[0])
this.index = 0
})
}
}, */
/* remoteMethod(keyword){
let params = {
size: this.size
}
params.searchKey = keyword
this.loading = true
getCustomerContactsSelect(params)
.then(res => this.list = res.data)
.finally(() => this.loading = false)
} */
}
}
</
script
>
\ No newline at end of file
src/router/index.js
View file @
b0b46e09
...
...
@@ -308,30 +308,6 @@ export const constantRoutes = [
noCache
:
true
,
}
},
{
path
:
'
batch-single-application
'
,
component
:(
resolve
)
=>
require
([
'
@/views/ecw/order/batchSingleApplication
'
],
resolve
),
name
:
'
batchSingleApplication
'
,
props
:
route
=>
({
orderList
:
route
.
query
.
list
}),
meta
:
{
title
:
'
批量调仓申请
'
,
icon
:
''
,
activeMenu
:
'
/order/batchSingleApplication
'
,
noCache
:
true
}
},
{
path
:
'
fee-application/:orderId
'
,
component
:(
resolve
)
=>
require
([
'
@/views/ecw/order/feeApplication
'
],
resolve
),
name
:
'
feeApplication
'
,
props
:
true
,
meta
:
{
title
:
'
费用申请
'
,
icon
:
''
,
activeMenu
:
'
/order/feeApplication
'
}
},
{
path
:
'
mutex-order/:orderId
'
,
component
:()
=>
import
(
'
@/views/ecw/order/mutexOrder
'
),
...
...
@@ -387,13 +363,13 @@ export const constantRoutes = [
hidden
:
true
,
redirect
:
'
noredirect
'
,
children
:
[
/*
{
path: 'query/:
box
Id(\\d+)',
{
path
:
'
query/:
shipment
Id(
\\
d+)
'
,
component
:
(
resolve
)
=>
import
(
'
@/views/ecw/box/query
'
),
props
:
true
,
name: '
boxQuery
',
meta: {title: '出货详情', icon: '', activeMenu: '/shipment/box'}
},
*/
name
:
'
shippingDetail
'
,
meta
:
{
title
:
'
出货详情
'
,
icon
:
''
,
activeMenu
:
'
/shipment/box
Detail
'
}
},
{
path
:
'
shippingSea/:shipmentId(
\\
d+)
'
,
component
:
(
resolve
)
=>
import
(
'
@/views/ecw/box/shippingSea/shippingSea
'
),
...
...
src/utils/dict.js
View file @
b0b46e09
...
...
@@ -104,6 +104,7 @@ export const DICT_TYPE = {
ECW_CUSTOM_DRAWEE
:
'
custom_drawee
'
,
// 自定义付款人费用类型
ECW_IS_DRAFT
:
'
is_draft
'
,
// 草稿发布状态
ECW_PAYMENT_STATE
:
'
payment_state
'
,
//付款单状态
ECW_PRICE_TYPE
:
'
price_type
'
,
//--------ecw---------
CUSTOMER_STATUS
:
'
customer_status
'
,
CUSTOMER_SOURCE
:
'
customer_source
'
,
...
...
@@ -163,7 +164,8 @@ export const DICT_TYPE = {
ORDER_COD_EXCEPTION_RESULT
:
'
order_cod_exception_result
'
,
//代收货款异常处理结果
ORDER_OTHER_EXCEPTION_RESULT
:
'
order_other_exception_result
'
,
//其它异常处理结果
ORDER_BULKY_CARGO_EXCEPTION_RESULT
:
'
order_bulky_cargo_exception_result
'
,
//泡货异常处理结果
PAYMENT_TYPE
:
'
payment_type
'
,
//收款类型
NEED_KNOW_TYPE
:
'
need_know_type
'
,
//需知类型
NEED_KNOW_STATUS
:
'
need_know_status
'
,
//需知状态
ECASH_INIT
:
'
ecash_init
'
,
//e-cash
...
...
src/views/bpm/processInstance/detail.vue
View file @
b0b46e09
...
...
@@ -62,6 +62,62 @@
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='warehouse_transfer'"
>
<!--调仓申请-->
<warehouseDetails
:processId=
"this.processInstance.businessKey"
:type=
"1"
></warehouseDetails>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='container_modify'"
>
<!--出货审核-柜子修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='trailer_modify'"
>
<!--出货审核-拖车修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='ship_modify'"
>
<!--出货审核-配船修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='ship_modify'"
>
<!--出货审核-配船修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='customs_declare_modify'"
>
<!--出货审核-报关修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='arrival_modify'"
>
<!--出货审核-到港修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='customs_clearance_modify'"
>
<!--出货审核-清关修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='customs_exit_part'"
>
<!--出货审核-报关部分退场审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='customs_exit_all'"
>
<!--出货审核-报关退场审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='start_port_modify'"
>
<!--出货审核-起运修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='book_space_modify'"
>
<!--出货审核-订舱修改审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='sorting_apply_no'"
>
<!--出货审核-分拣反审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='sorting_apply'"
>
<!--出货审核-分拣审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='unload_container_no'"
>
<!--出货审核-卸柜反审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='unload_container'"
>
<!--出货审核-卸柜审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='close_container'"
>
<!--出货审核-封柜审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='shipment_preassemble_no'"
>
<!--出货审核-预装反审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-if=
"this.processInstance.processDefinition.formCustomViewPath=='shipment_preassemble'"
>
<!--出货审核-预装审核-->
<shippingDetail
:processId=
"this.processInstance.businessKey"
></shippingDetail>
</div>
<div
v-else
>
<router-link
:to=
"this.processInstance.processDefinition.formCustomViewPath + '?id='
+ this.processInstance.businessKey"
>
...
...
src/views/ecw/box/costForm.vue
View file @
b0b46e09
...
...
@@ -20,7 +20,7 @@
</el-select>
</el-form-item>
<el-row
class=
"two-element"
>
<el-row
class=
"two-element
-formItem
"
>
<el-form-item
label=
"金额"
>
<el-input-number
v-model=
"costObj.price"
controls-position=
"right"
:min=
"1"
></el-input-number>
</el-form-item>
...
...
@@ -36,7 +36,7 @@
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"operate-button"
>
<div
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"submit"
>
确定
</el-button>
<el-button
@
click=
"$emit('closeDialog')"
>
取消
</el-button>
</div>
...
...
@@ -84,25 +84,3 @@ export default {
},
};
</
script
>
<
style
lang=
"scss"
>
// 海运操作统一弹窗样式
.app-costForm
{
// 页面内元素弹窗form控件宽度设置
.el-form-item__content
{
>
div
:not
(
.el-input-number
)
{
width
:
100%
;
}
}
.operate-button
{
text-align
:
center
;
}
.two-element
{
display
:
flex
;
>
:last-child
{
width
:
100%
;
margin-left
:
10px
;
}
}
}
</
style
>
src/views/ecw/box/indexSea.vue
View file @
b0b46e09
<
template
>
<div
class=
"app-container"
>
<div
class=
"app-container
shipping-sea
"
>
<!-- 搜索工作栏 -->
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
>
...
...
@@ -79,7 +79,11 @@
<!-- 列表 -->
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table-column
label=
"自编号"
align=
"center"
prop=
"selfNo"
/>
<el-table-column
label=
"自编号"
align=
"center"
prop=
"selfNo"
>
<template
slot-scope=
"scope"
>
<el-button
type=
"text"
@
click=
"handleCommand(scope.row, 'detail')"
>
{{
scope
.
row
.
selfNo
}}
</el-button>
</
template
>
</el-table-column>
<el-table-column
label=
"柜号"
align=
"center"
prop=
"cubNo"
/>
<el-table-column
label=
"柜型"
align=
"center"
prop=
"cabinetId"
>
<
template
slot-scope=
"scope"
>
...
...
@@ -106,9 +110,9 @@
<span>
{{
new
Date
(
scope
.
row
.
createTime
).
format
(
'
yyyy-MM-dd
'
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
width=
"200px"
>
<
template
slot-scope=
"scope"
>
<el-dropdown
trigger=
"click"
@
command=
"(command)=>handleCommand(scope.row, command)"
>
<el-dropdown
trigger=
"click"
@
command=
"(command)=>handleCommand(scope.row, command)"
style=
"marginRight:10px;"
>
<el-button
type=
"primary"
>
操作
<i
class=
"el-icon-arrow-down el-icon--right"
></i>
</el-button>
...
...
@@ -120,6 +124,20 @@
<el-dropdown-item
command=
"delete"
>
删除
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown
trigger=
"click"
>
<el-button
type=
"primary"
>
下载
<i
class=
"el-icon-arrow-down el-icon--right"
></i>
</el-button>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
command=
""
>
预装单
</el-dropdown-item>
<el-dropdown-item
command=
""
>
已装单
</el-dropdown-item>
<el-dropdown-item
command=
""
>
应收汇总表
</el-dropdown-item>
<el-dropdown-item
command=
""
>
agent list
</el-dropdown-item>
<el-dropdown-item
command=
""
>
son cap
</el-dropdown-item>
<el-dropdown-item
command=
""
>
提货单
</el-dropdown-item>
<el-dropdown-item
command=
""
>
提单Copy
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -128,7 +146,7 @@
@
pagination=
"getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"600px"
append-to-body
>
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"600px"
append-to-body
class=
"shippingSea-dialog"
>
<
template
v-if=
"dialogType === 'edit' || dialogType === 'add'"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
...
...
@@ -157,7 +175,7 @@
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer
"
>
<div
class=
"operate-button
"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
...
...
@@ -165,6 +183,9 @@
<
template
v-if=
"dialogType === 'cost'"
>
<costForm
v-if=
"open"
@
closeDialog=
"closeDialog"
:currRow=
"currRow"
/>
</
template
>
<
template
v-if=
"dialogType === 'error'"
>
<regError
v-if=
"open"
@
closeDialog=
"closeDialog"
:shipmentObj=
"currRow"
/>
</
template
>
</el-dialog>
</div>
</template>
...
...
@@ -173,13 +194,15 @@
import
{
createbox
,
updatebox
,
deletebox
,
getbox
,
getboxPage
,
exportboxExcel
}
from
"
@/api/ecw/box
"
;
import
{
getCabinetPage
}
from
"
@/api/ecw/cabinet
"
;
import
{
getWarehouseList
}
from
"
@/api/ecw/warehouse
"
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
{
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
costForm
from
'
./costForm.vue
'
import
regError
from
'
./regError.vue
'
export
default
{
name
:
"
box
"
,
components
:
{
costForm
costForm
,
regError
},
data
()
{
return
{
...
...
@@ -275,7 +298,6 @@
this
.
getList
();
},
methods
:
{
/** 查询列表 */
getList
()
{
this
.
loading
=
true
;
...
...
@@ -390,13 +412,6 @@
closeDialog
()
{
this
.
open
=
false
;
},
/* 费用登记 */
createCost
(
row
)
{
this
.
title
=
'
费用登记
'
this
.
dialogType
=
'
cost
'
;
this
.
open
=
true
;
this
.
currRow
=
row
;
},
/** 查看按钮操作 */
handleCommand
(
row
,
command
)
{
switch
(
command
)
{
...
...
@@ -413,10 +428,53 @@
break
;
case
'
cost
'
:
this
.
createCost
(
row
);
this
.
title
=
'
费用登记
'
this
.
dialogType
=
'
cost
'
;
this
.
open
=
true
;
this
.
currRow
=
row
;
break
;
case
'
error
'
:
this
.
title
=
'
异常登记
'
this
.
dialogType
=
'
error
'
;
this
.
open
=
true
;
this
.
currRow
=
row
;
break
;
case
'
detail
'
:
this
.
$router
.
push
(
'
/boxSea/query/
'
+
row
.
id
)
break
;
}
},
}
};
</
script
>
<
style
lang=
"scss"
>
// 海运操作统一弹窗样式
.shippingSea-dialog
{
// 页面内元素弹窗form控件宽度设置
.el-form-item__content
{
>
div
:not
(
.el-input-number
)
{
width
:
100%
;
}
}
.operate-button
{
text-align
:
center
;
}
.two-element-formItem
{
display
:
flex
;
>
:last-child
{
width
:
100%
;
margin-left
:
10px
;
}
}
.two-element
{
.el-form-item__content
{
display
:
flex
;
>
:last-child
{
margin-left
:
10px
;
}
}
}
}
</
style
>
src/views/ecw/box/query.vue
View file @
b0b46e09
This diff is collapsed.
Click to expand it.
src/views/ecw/box/
shippingSea/nodePage/
regError.vue
→
src/views/ecw/box/regError.vue
View file @
b0b46e09
...
...
@@ -18,6 +18,7 @@
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"errorObj.abnStartTime"
value-format=
"yyyy-MM-dd"
></el-date-picker>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"errorObj.abnEndTime"
value-format=
"yyyy-MM-dd"
></el-date-picker>
</el-form-item>
<el-form-item
label=
"是否更新订单状态"
>
<el-radio-group
v-model=
"errorObj.orderStatus"
>
<el-radio
v-for=
"item in status"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
...
...
@@ -65,7 +66,7 @@ export default {
},
created
()
{
const
{
currNode
}
=
this
.
$attrs
;
this
.
errorObj
=
{
opStep
:
currNode
.
dataKey
};
this
.
errorObj
=
{
opStep
:
currNode
?.
dataKey
??
undefined
};
},
methods
:
{
/** 提交 */
...
...
src/views/ecw/box/shippingDetail.vue
View file @
b0b46e09
...
...
@@ -73,7 +73,7 @@
<section
class=
"table-goodList"
>
<div>
合计:
{{
calcSum
(
row
.
goodsList
)
}}
箱
</div>
<div
v-for=
"(item, index) in row.goodsList"
:key=
"index"
class=
"goodList-div"
>
{{
item
.
volume
}}
m³
{{
item
.
weight
}}
kg
{{
getTotlContent
(
item
,[
'
volume
'
,
'
weight
'
])
}}
</div>
</section>
</
template
>
...
...
@@ -90,7 +90,11 @@
<
script
>
import
{
approvalDetail
}
from
"
@/api/ecw/box
"
;
import
{
getSeaStatus
,
getStatusName
}
from
"
./shippingSea/utils
"
;
import
{
getSeaStatus
,
getStatusName
,
getTotlContent
,
}
from
"
./shippingSea/utils
"
;
import
{
getCabinetPage
}
from
"
@/api/ecw/cabinet
"
;
import
{
getChannelList
}
from
"
@/api/ecw/channel
"
;
...
...
@@ -123,6 +127,7 @@ export default {
getChannelList
().
then
((
res
)
=>
(
this
.
channelList
=
res
.
data
));
},
methods
:
{
getTotlContent
,
/* 获取详情 */
getApprovalDetail
(
processId
)
{
approvalDetail
({
approvalId
:
processId
}).
then
((
res
)
=>
{
...
...
@@ -144,7 +149,11 @@ export default {
},
/* 打开订单列表 */
showOrder
()
{
this
.
$set
(
this
.
dialogConfig
,
"
title
"
,
`
${
this
.
boxBackVO
.
selfNo
}
订单列表`
);
this
.
$set
(
this
.
dialogConfig
,
"
title
"
,
`
${
this
.
boxBackVO
.
selfNo
}
订单列表`
);
this
.
$set
(
this
.
dialogConfig
,
"
visible
"
,
true
);
},
/* 合计 */
...
...
@@ -190,9 +199,7 @@ export default {
/* 体积重量 */
getVolumeWeight
()
{
return
(
total
)
=>
{
return
`
${
total
?.
num
??
0
}
箱
$
{
total
?.
volume
??
0
}
m
³
$
{
total
?.
weight
??
0
}
kg
`;
return
this
.
getTotlContent
(
total
);
};
},
/* 是否显示卸柜箱数 */
...
...
src/views/ecw/box/shippingSea/nodePage/arrival.vue
View file @
b0b46e09
...
...
@@ -30,7 +30,7 @@
</
template
>
<
script
>
import
regError
from
"
./regError
"
;
import
regError
from
"
.
./..
/regError
"
;
import
dayjs
from
"
dayjs
"
;
import
{
arrivalCreate
,
serviceMsg
}
from
"
@/api/ecw/boxSea
"
;
import
{
formatDateStr
}
from
"
../utils
"
;
...
...
src/views/ecw/box/shippingSea/nodePage/cabinet/startPacking.vue
View file @
b0b46e09
...
...
@@ -11,9 +11,7 @@
</div>
<div>
<template
v-if=
"item.secStatistics"
>
<p>
{{
item
.
secStatistics
.
num
}}
箱
</p>
<p>
{{
item
.
secStatistics
.
volume
}}
m³
</p>
<p>
{{
item
.
secStatistics
.
weight
}}
Kg
</p>
{{
getTotlContent
(
item
.
secStatistics
)
}}
</
template
>
</div>
</el-row>
...
...
@@ -54,29 +52,29 @@
<dict-tag
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
:value=
"item.productRecord"
/>
】
</p>
<p>
其他:
<span>
{{
item
.
num
}}
箱
</span><span>
{{
item
.
volume
}}
m³
</span><span>
{{
item
.
weight
}}
Kg
</span>
</p>
<p>
其他:
{{
getTotlContent
(
item
)
}}
</p>
</div>
</section>
</
template
>
</el-table-column>
<el-table-column
label=
"计划箱数"
align=
"center"
prop=
"num"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
num
}}
箱
{{
getTotlContent
(
scope
.
row
,[
'
num
'
])
}}
</
template
>
</el-table-column>
<el-table-column
label=
"实装箱数"
align=
"center"
prop=
"installNum"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
installNum
}}
箱
{{
scope
.
row
.
installNum
}}
箱
</
template
>
</el-table-column>
<el-table-column
label=
"体积"
align=
"center"
prop=
"volume"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
volume
}}
m³
{{
getTotlContent
(
scope
.
row
,[
'
volume
'
])
}}
</
template
>
</el-table-column>
<el-table-column
label=
"重量"
align=
"center"
prop=
"weight"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
weight
}}
Kg
{{
getTotlContent
(
scope
.
row
,[
'
weight
'
])
}}
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
...
...
@@ -97,14 +95,15 @@
<el-col
:span=
"6"
class=
"totle-info"
>
<div
class=
"count-info"
>
<p>
总计:
<!-- <span>{{sumData.count.num}}箱</span><span>{{sumData.count.volume}}m³</span><span>{{sumData.count.weight}}Kg</span> -->
111
无返回
<!-- <span>{{sumData.count.num}}箱</span><span>{{sumData.count.volume}}m³</span><span>{{sumData.count.weight}}Kg</span> -->
</p>
</div>
<div>
<p>
容量:
</p>
<p>
111
</p>
<p>
无返回
</p>
</div>
<div>
已装
0
箱
</div>
<div>
已装
无返回
箱
</div>
</el-col>
</el-row>
...
...
@@ -204,6 +203,7 @@ import {
boxUpdate
,
approvalCreate
,
}
from
"
@/api/ecw/boxSea
"
;
import
{
getTotlContent
}
from
"
../../utils
"
;
/**
* 开始装柜
...
...
@@ -268,6 +268,7 @@ export default {
});
},
methods
:
{
getTotlContent
,
/* 装柜部分列表 */
getLoadSecGoodsList
()
{
loadSecGoodsList
({
shipmentId
:
this
.
shipmentObj
.
id
}).
then
((
res
)
=>
{
...
...
@@ -275,7 +276,7 @@ export default {
this
.
listData
=
data
.
map
((
item
,
index
)
=>
{
return
{
...
item
,
title
:
`第
${
++
index
}
部分`
,
title
:
`第
${
++
index
}
部分`
,
};
});
if
(
this
.
listData
.
length
)
{
...
...
src/views/ecw/box/shippingSea/nodePage/cabinet/supplementOrder.vue
View file @
b0b46e09
...
...
@@ -28,9 +28,7 @@
</el-collapse-transition>
<div
class=
"part-secGoog"
>
<template>
<p>
{{
item
.
secStatistics
?
item
.
secStatistics
.
num
:
0
}}
箱
</p>
<p>
{{
item
.
secStatistics
?
item
.
secStatistics
.
volume
:
0
}}
m³
</p>
<p>
{{
item
.
secStatistics
?
item
.
secStatistics
.
weight
:
0
}}
Kg
</p>
{{
getTotlContent
(
item
.
secStatistics
)
}}
</
template
>
</div>
</el-row>
...
...
@@ -95,12 +93,12 @@
<el-table-column
label=
"箱数"
align=
"center"
prop=
"num"
width=
"120"
/>
<el-table-column
label=
"体积"
align=
"center"
prop=
"volume"
width=
"120"
>
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.volume"
>
{{
scope
.
row
.
volume
}}
m³
</p>
<p
v-if=
"scope.row.volume"
>
{{
getTotlContent
(
scope
.
row
,[
'
volume
'
])
}}
</p>
</
template
>
</el-table-column>
<el-table-column
label=
"重量"
align=
"center"
prop=
"weight"
width=
"120"
>
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.weight"
>
{{
scope
.
row
.
weight
}}
kg
</p>
<p
v-if=
"scope.row.weight"
>
{{
getTotlContent
(
scope
.
row
,[
'
weight
'
])
}}
</p>
</
template
>
</el-table-column>
<el-table-column
label=
"预装柜"
align=
"center"
prop=
""
width=
"120"
>
...
...
@@ -151,7 +149,7 @@ import {
createGoods
,
remove
,
}
from
"
@/api/ecw/boxSea
"
;
import
{
formatDate
}
from
"
../../utils
"
;
import
{
formatDate
,
getTotlContent
}
from
"
../../utils
"
;
/**
* 补单
*/
...
...
@@ -197,7 +195,7 @@ export default {
}
return
{
...
item
,
title
:
`第
${
++
index
}
部分`
,
title
:
`第
${
++
index
}
部分`
,
};
});
...
...
@@ -324,6 +322,7 @@ export default {
.
catch
((
_
)
=>
{});
},
formatDate
,
getTotlContent
,
},
computed
:
{
/** 目的地 */
...
...
src/views/ecw/box/shippingSea/nodePage/cusClearance.vue
View file @
b0b46e09
...
...
@@ -26,7 +26,7 @@
</
template
>
<
script
>
import
regError
from
"
./regError
"
;
import
regError
from
"
.
./..
/regError
"
;
import
dayjs
from
"
dayjs
"
;
import
{
clearanceCreate
,
serviceMsg
}
from
"
@/api/ecw/boxSea
"
;
import
{
formatDateStr
}
from
"
../utils
"
;
...
...
src/views/ecw/box/shippingSea/nodePage/departure.vue
View file @
b0b46e09
...
...
@@ -30,7 +30,7 @@
</
template
>
<
script
>
import
regError
from
"
./regError
"
;
import
regError
from
"
.
./..
/regError
"
;
import
{
shippingCreate
,
serviceMsg
}
from
"
@/api/ecw/boxSea
"
;
import
dayjs
from
"
dayjs
"
;
import
{
formatDateStr
}
from
"
../utils
"
;
...
...
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
View file @
b0b46e09
...
...
@@ -11,7 +11,7 @@
</el-select>
</el-form-item>
<el-form-item
label=
"目的地"
prop=
"destWarehouseIdList"
>
<el-select
v-model=
"queryParams.destWarehouseIdList"
placeholder=
"请选择目的地"
multiple
>
<el-select
v-model=
"queryParams.destWarehouseIdList"
placeholder=
"请选择目的地"
multiple
clearable
>
<el-option
v-for=
"item in importWarehouseList"
:label=
"item.titleZh"
:value=
"item.id"
:key=
"item.id"
></el-option>
</el-select>
</el-form-item>
...
...
@@ -108,11 +108,7 @@
<el-row
class=
"preinstall-title"
>
<div
class=
"pre-part-info"
>
<p>
第
{{
index
+
1
}}
部分
</p>
<p>
<span>
{{
part
.
secStatistics
?
part
.
secStatistics
.
num
:
0
}}
箱
</span>
<span>
{{
part
.
secStatistics
?
part
.
secStatistics
.
volume
:
0
}}
m³
</span>
<span>
{{
part
.
secStatistics
?
part
.
secStatistics
.
weight
:
0
}}
kg
</span>
</p>
<p>
{{
getTotlContent
(
part
.
secStatistics
)
}}
</p>
</div>
<div
class=
"table-button"
>
<el-button
type=
"danger"
size=
"small"
@
click=
"deletePart(part)"
>
删除部分
</el-button>
...
...
@@ -131,8 +127,8 @@
<el-table-column
label=
"箱数"
align=
"center"
prop=
"num"
/>
<el-table-column
label=
"体积/重量/重货比"
align=
"center"
width=
"140"
prop=
"volumeWeight"
>
<template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.volume"
>
{{
scope
.
row
.
volume
}}
m³
</p>
<p
v-if=
"scope.row.weight"
>
{{
scope
.
row
.
weight
}}
kg
</p>
<p
v-if=
"scope.row.volume"
>
{{
getTotlContent
(
scope
.
row
,[
'
volume
'
])
}}
</p>
<p
v-if=
"scope.row.weight"
>
{{
getTotlContent
(
scope
.
row
,[
'
weight
'
])
}}
</p>
</
template
>
</el-table-column>
<el-table-column
label=
"报关方式"
align=
"center"
prop=
"customsType"
width=
"120"
>
...
...
@@ -169,15 +165,15 @@
<div
class=
"preinstall-title preinstalled"
>
<div
class=
"red-label"
>
<p>
筛选后待预装数量:
</p>
<p>
{{
unloadStatistics.num}}箱
</p>
<p>
{{
getTotlContent(unloadStatistics,['num'])}}
</p>
</div>
<div
class=
"red-label"
>
<p>
方数:
</p>
<p>
{{
unloadStatistics.volume}}m³
</p>
<p>
{{
getTotlContent(unloadStatistics,['volume'])}}
</p>
</div>
<div
class=
"red-label"
>
<p>
重量:
</p>
<p>
{{
unloadStatistics.weight}}kg
</p>
<p>
{{
getTotlContent(unloadStatistics,['weight'])}}
</p>
</div>
</div>
</el-row>
...
...
@@ -225,8 +221,8 @@
<el-table-column
label=
"箱数"
align=
"center"
prop=
"num"
/>
<el-table-column
label=
"体积/重量"
align=
"center"
prop=
"volumeWeight"
>
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.volume"
>
{{
scope
.
row
.
volume
}}
m³
</p>
<p
v-if=
"scope.row.weight"
>
{{
scope
.
row
.
weight
}}
kg
</p>
<p
v-if=
"scope.row.volume"
>
{{
getTotlContent
(
scope
.
row
,[
'
volume
'
])
}}
</p>
<p
v-if=
"scope.row.weight"
>
{{
getTotlContent
(
scope
.
row
,[
'
weight
'
])
}}
</p>
</
template
>
</el-table-column>
<el-table-column
label=
"报关方式"
align=
"center"
prop=
""
>
...
...
@@ -284,7 +280,8 @@ import {
approvalCreate
,
}
from
"
@/api/ecw/boxSea
"
;
import
userSelect
from
"
./common/userSelect.vue
"
;
import
{
formatDate
}
from
"
../utils
"
;
import
{
formatDate
,
getTotlContent
}
from
"
../utils
"
;
import
dayjs
from
"
dayjs
"
;
/**
* 预装
...
...
@@ -354,6 +351,7 @@ export default {
},
methods
:
{
formatDate
,
getTotlContent
,
/* 获取城市 */
importCityName
(
id
)
{
var
arr
=
this
.
$attrs
.
warehouseList
.
filter
((
item
)
=>
item
.
id
==
id
);
...
...
@@ -370,7 +368,6 @@ export default {
let
params
=
this
.
getParams
();
// 已预装单号
params
.
orderNo
=
params
.
preOrderNo
;
delete
params
.
preOrderNo
;
params
.
shipmentId
=
this
.
shipmentObj
.
id
;
secGoodsList
(
params
).
then
((
res
)
=>
{
this
.
preList
=
res
.
data
;
...
...
@@ -384,7 +381,6 @@ export default {
let
params
=
this
.
getParams
();
// 订单号
params
.
orderNo
=
params
.
toBePreOrderNo
;
delete
params
.
toBePreOrderNo
;
preloadPage
({
...
params
,
...
this
.
pageParam
}).
then
((
res
)
=>
{
const
{
data
}
=
res
;
this
.
toBePreList
=
data
.
dataList
?.
list
??
[];
...
...
@@ -438,7 +434,10 @@ export default {
if
(
column
.
property
===
"
volumeWeight
"
)
{
const
volume
=
this
.
calcSum
(
"
volume
"
,
data
);
const
weight
=
this
.
calcSum
(
"
weight
"
,
data
);
sums
[
index
]
=
`
${
volume
??
0
}
m
³
$
{
weight
??
0
}
kg
`;
sums
[
index
]
=
getTotlContent
({
volume
,
weight
},
[
"
volume
"
,
"
weight
"
,
]);
}
});
...
...
@@ -540,11 +539,14 @@ export default {
},
getParams
()
{
const
{
rucangtime
=
[]
}
=
this
.
queryParams
;
delete this.queryParams.rucangtime;
return
{
...
this
.
queryParams
,
rucangTimeStart: rucangtime[0],
rucangTimeEnd: rucangtime[1],
rucangTimeStart
:
rucangtime
[
0
]
?
dayjs
(
rucangtime
[
0
]).
format
(
"
YYYY-MM-DD 00:00:00
"
)
:
rucangtime
[
0
],
rucangTimeEnd
:
rucangtime
[
1
]
?
dayjs
(
rucangtime
[
1
]).
format
(
"
YYYY-MM-DD 23:59:59
"
)
:
rucangtime
[
1
],
};
},
},
...
...
src/views/ecw/box/shippingSea/utils.js
View file @
b0b46e09
...
...
@@ -859,11 +859,24 @@ function formatDateStr(obj, keys, format = "YYYY-MM-DD") {
return
obj
;
}
/**
* 格式化日期
*
* @param {*} date
* @param {string} [format="YYYY-MM-DD"]
* @return {*}
*/
function
formatDate
(
date
,
format
=
"
YYYY-MM-DD
"
)
{
if
(
!
date
)
return
date
;
return
dayjs
(
date
).
format
(
format
);
}
/**
* 获取海运流程状态
*
* @param {*} val
* @return {*}
*/
function
getSeaStatus
(
val
)
{
let
currNodeStatus
=
11
,
isBreak
=
false
,
...
...
@@ -896,6 +909,29 @@ function getSeaStatus(val) {
return
currNodeStatus
;
}
/**
* 组装统计信息文字
*
* @param {*} total
* @param {string} [keys=["num", "volume", "weight"]]
* @return {*}
*/
function
getTotlContent
(
total
,
keys
=
[
"
num
"
,
"
volume
"
,
"
weight
"
])
{
let
content
=
[];
for
(
const
key
of
keys
)
{
if
(
key
===
"
num
"
)
{
content
.
push
(
`
${
total
?.
num
??
0
}
箱
`);
}
if (key === "volume") {
content.push(`
$
{
total
?.
volume
??
0
}
m
³
`);
}
if (key === "weight") {
content.push(`
$
{
total
?.
weight
??
0
}
kg
`);
}
}
return content.join(" ");
}
export const fileTypes = [
"doc",
"xls",
...
...
@@ -917,4 +953,5 @@ export {
formatDateStr,
formatNumberString,
formatDate,
getTotlContent,
};
src/views/ecw/deptTarget/index.vue
View file @
b0b46e09
This diff is collapsed.
Click to expand it.
src/views/ecw/order/batchSingleApplication.vue
View file @
b0b46e09
<
template
>
<el-dialog
:visible.sync=
"dialogVisible"
width=
"80%"
:before-close=
"()=>
{
$emit('update:dialogVisible',false)
}">
<div
class=
"batch-single-application"
>
<h1
class=
"title"
>
调仓申请
</h1>
<el-table
:data=
"list"
>
...
...
@@ -36,14 +42,19 @@
<el-table-column
label=
"出货渠道"
>
</el-table-column>
<!-- <el-table-column label="始发仓" prop="startWarehouseName"></el-table-column>-->
<!-- <el-table-column label="始发仓" prop="startWarehouseName"></el-table-column>-->
<el-table-column
label=
"目的地"
prop=
"objectiveName"
></el-table-column>
<el-table-column
label=
"发货人"
>
<
template
v-slot=
"{row}"
>
<div>
<div>
<p>
{{
row
.
consignorName
}}
</p>
<p>
</p>
</div>
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"收货人"
>
...
...
@@ -58,10 +69,17 @@
</div>
</
template
>
</el-table-column>
<el-table-column>
<
template
v-slot=
"{row}"
>
<el-button
type=
"text"
v-if=
"row.inWarehouseState === 10"
>
取消调仓
</el-button>
</
template
>
</el-table-column>
</el-table>
<div
style=
"display: flex;justify-content:center; margin-top: 20px"
>
<div
style=
"width: 200px; margin: 0 10px"
>
{{list[0].startWarehouseName
}}
{{ list[0]
&&
list[0].startWarehouseName ? list[0].startWarehouseName : ''
}}
</div>
<div
style=
"width: 200px;"
>
<el-select
v-model=
"params.warehouseInId"
>
...
...
@@ -77,11 +95,13 @@
<work-flow
xmlkey=
"warehouse_transfer"
v-model=
"params.copyUserId"
/>
</div>
<div
style=
"text-align: center"
>
<el-button
style=
"margin-right: 50px"
@
click=
"submit"
:disabled=
"isSubmit"
>
提交申请
</el-button>
<el-button
@
click=
"$router.push('/order/order')"
>
取消
</el-button>
<el-button
style=
"margin-right: 50px"
v-if=
"adjustmentBol"
>
审核中
</el-button>
<el-button
v-else
style=
"margin-right: 50px"
@
click=
"submit"
:disabled=
"isSubmit"
>
提交申请
</el-button>
<el-button
@
click=
"$emit('update:dialogVisible',false)"
>
取消
</el-button>
</div>
<!-- <warehouseDetails></warehouseDetails>-->
<!-- <warehouseDetails></warehouseDetails>-->
</div>
</el-dialog>
</template>
<
script
>
...
...
@@ -95,20 +115,30 @@ import {getProcessDefinitionBpmnXMLByKey} from "@/api/bpm/definition";
import
warehouseDetails
from
"
@/views/ecw/order/components/warehouseDetails
"
;
import
{
getOrderPage
}
from
"
@/api/ecw/order
"
;
import
workFlow
from
"
@/components/WorkFlow
"
;
import
Template
from
"
@/views/cms/template
"
;
export
default
{
name
:
"
batchSingleApplication
"
,
props
:{
orderList
:
String
,
orderList
:[
String
,
Number
],
dialogVisible
:{
type
:
Boolean
,
default
:
false
,
}
},
components
:{
Template
,
warehouseDetails
,
workFlow
},
created
()
{
watch
:{
dialogVisible
(
val
){
if
(
val
){
getOrderPage
({
orderIdList
:
this
.
orderList
}).
then
(
r
=>
{
this
.
list
=
r
.
data
.
list
warehouseAdjustmentList
({
id
:
this
.
list
[
0
].
startWarehouseId
}).
then
(
r
=>
this
.
availableWarehouse
=
r
.
data
)
})
}
}
},
computed
:{
isSubmit
(){
...
...
@@ -120,6 +150,9 @@ export default {
if
(
this
.
list
.
every
(
e
=>
e
.
status
===
5
)
&&
[...
new
Set
(
l
)].
length
===
1
)
flag
=
false
}
return
flag
;
},
adjustmentBol
(){
return
this
.
list
.
some
(
e
=>
e
.
inWarehouseState
===
10
)
}
},
data
(){
...
...
@@ -146,6 +179,7 @@ export default {
this
.
params
.
orderNo
=
this
.
list
[
0
].
orderNo
orderWarehouseInAdjustApply
(
this
.
params
).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
$emit
(
'
update:dialogVisible
'
,
false
)
this
.
$message
.
success
(
'
调仓成功
'
);
}
})
...
...
src/views/ecw/order/cargoControl.vue
View file @
b0b46e09
...
...
@@ -113,7 +113,7 @@
<el-button
type=
"text"
size=
"mini"
@
click=
"$router.push('detail?id=' + scope.row.orderId)"
>
查看
</el-button>
<el-button
type=
"text"
size=
"mini"
>
调货
</el-button>
<el-button
type=
"text"
size=
"mini"
>
反复核
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"showTransferOrder
Id = scope.row.orderId
"
>
控货权转移
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"showTransferOrder
= scope.row
"
>
控货权转移
</el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -121,7 +121,7 @@
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.page"
:limit.sync=
"queryParams.rows"
@
pagination=
"getList"
/>
<transfer
v-if=
"showTransferOrder
Id"
:order-id=
"showTransferOrderId"
@
close=
"showTransferOrderId
=null"
/>
<transfer
v-if=
"showTransferOrder
"
v-bind=
"showTransferOrder"
@
close=
"showTransferOrder
=null"
/>
<release
v-if=
"showReleaseOrderId"
:order-id=
"showReleaseOrderId"
@
close=
"showReleaseOrderId=null"
/>
<release
v-if=
"showEditOrderId"
:order-id=
"showEditOrderId"
@
close=
"showEditOrderId=null"
/>
</div>
...
...
@@ -132,17 +132,11 @@ import Selector from '@/components/Selector'
import
ProductSelector
from
'
@/components/ProductSelector
'
import
{
getProductAttrList
}
from
'
@/api/ecw/productAttr
'
import
CustomerSelector
from
'
@/components/CustomerSelector
'
import
specialNeeds
from
'
@/views/ecw/order/components/specialNeeds
'
;
import
{
getTradeCityList
}
from
'
@/api/ecw/region
'
import
Transfer
from
'
@/views/ecw/order/components/Transfer
'
import
Release
from
'
./components/Release
'
import
CargoControlEdit
from
'
./components/CargoControlEdit
'
import
{
getOrder
,
getOrderPage
,
exportOrderExcel
,
getCargoControlOrderPage
}
from
"
@/api/ecw/order
"
;
import
{
getCargoControlOrderPage
}
from
"
@/api/ecw/orderCargoControl
"
export
default
{
...
...
@@ -181,7 +175,7 @@ export default {
denominator
:
''
,
//重货比分母
dateFilterType
:
''
,
//日期筛选类别
dateFilter
:
[],
//筛选日期
showTransferOrder
Id
:
null
,
// 控制权转移操作订单
showTransferOrder
:
null
,
// 控制权转移操作订单
showReleaseOrderId
:
null
,
// 放货ID
showEditOrderId
:
null
,
// 修改ID
};
...
...
src/views/ecw/order/cargoControlDetail.vue
View file @
b0b46e09
<
template
>
<div
class=
"app-container"
>
<div
class=
"title"
>
控货订单
</div>
<div
class=
"
page-
title"
>
控货订单
</div>
<el-form
ref=
"elForm"
:model=
"formData"
:rules=
"rules"
size=
"small"
label-width=
"100px"
>
<el-row>
<el-col
:span=
"6"
>
...
...
@@ -36,7 +36,7 @@
</el-row>
</el-form>
<div
class=
"title"
>
放货详情
</div>
<div
class=
"
page-
title"
>
放货详情
</div>
<el-table
:data=
"[1]"
border
>
<el-table-column
label=
"序号"
width=
"50px"
>
...
...
@@ -77,7 +77,7 @@
</el-table-column>
</el-table>
<div
class=
"title"
>
历史放货记录
</div>
<div
class=
"
page-
title"
>
历史放货记录
</div>
<el-table
:data=
"[1]"
border
>
<el-table-column
label=
"序号"
width=
"50px"
>
...
...
@@ -131,18 +131,3 @@ export default {
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.title
{
font-size
:
16px
;
margin
:
20px
0
;
display
:flex
;
align-items
:center
;
&
:before
{
content
:
''
;
width
:
5px
;
height
:
15px
;
background
:
#666
;
margin-right
:
10px
;
}
}
</
style
>
src/views/ecw/order/components/CargoControlEdit.vue
View file @
b0b46e09
src/views/ecw/order/components/SendSmsCode.vue
0 → 100644
View file @
b0b46e09
<
template
>
<span
@
click=
"send"
>
{{
text
}}
</span>
</
template
>
<
script
>
import
{
sendSmsCode
}
from
'
@/api/ecw/orderCargoControl
'
const
timeout
=
null
export
default
{
props
:{
orderId
:
[
String
,
Number
],
scene
:
[
String
,
Number
]
},
data
(){
return
{
leftTime
:
60
,
loading
:
false
}
},
computed
:{
text
(){
if
(
this
.
leftTime
===
60
){
return
'
发送验证码
'
}
if
(
this
.
leftTime
>
0
){
return
this
.
leftTime
+
'
秒
'
}
return
'
重新发送
'
}
},
destroyed
(){
if
(
timeout
)
clearTimeout
(
timeout
)
},
methods
:{
send
(){
if
(
this
.
loading
||
(
this
.
leftTime
>
0
&&
this
.
leftTime
<
60
))
return
false
this
.
loading
=
true
sendSmsCode
({
orderId
:
this
.
orderId
,
scene
:
this
.
scene
}).
then
(
res
=>
{
this
.
$message
.
success
(
'
发送成功
'
)
this
.
countDown
()
}).
finally
(
res
=>
{
this
.
loading
=
false
})
},
countDown
(){
this
.
leftTime
--
if
(
this
.
leftTime
<=
0
){
return
false
}
timeout
=
setTimeout
(
this
.
countDown
,
1000
)
}
}
}
</
script
>
\ No newline at end of file
src/views/ecw/order/components/Transfer.vue
View file @
b0b46e09
<
template
>
<el-dialog
:title=
"title"
visible
:before-close=
"closeDialog"
>
<el-dialog
:title=
"title"
visible
:before-close=
"closeDialog"
:close-on-click-modal=
"false"
>
<div
class=
""
v-if=
"agreement"
>
<el-form
ref=
"form"
:model=
"form"
label-position=
"left"
label-width=
"120px"
>
<el-form-item
v-if=
"detail"
label=
"原控货人"
>
<el-input
v-model=
"
detail.orderNo
"
readonly
></el-input>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-position=
"left"
label-width=
"120px"
>
<el-form-item
label=
"原控货人"
>
<el-input
v-model=
"
cargoControlName
"
readonly
></el-input>
</el-form-item>
<el-form-item
label=
"原控货手机号"
prop=
"start"
required
>
<el-input
v-model
.number=
"form.start"
type=
"number"
></el-input>
<el-form-item
label=
"原控货手机号"
>
<el-input
v-model
=
"cargoControlPhone"
readonly
></el-input>
</el-form-item>
<el-form-item
label=
"新控货人"
prop=
"end"
required
>
<el-input
v-model.number=
"form.end"
type=
"number"
:max=
"detail ? detail.num : 1"
></el-input>
<el-form-item
label=
"新控货人"
prop=
"name"
>
<el-input
v-model=
"form.name"
></el-input>
</el-form-item>
<el-form-item
label=
"新控货手机号"
prop=
"
start"
required
>
<el-input
v-model
.number=
"form.start"
type=
"number
"
>
<el-select
slot=
"prepend"
v-model=
"form.
areaCode"
placeholder=
"
"
>
<el-option
:label=
"1"
:value=
"1
"
></el-option>
<el-form-item
label=
"新控货手机号"
prop=
"
phone"
>
<el-input
v-model
=
"form.phone"
type=
"tel
"
>
<el-select
slot=
"prepend"
v-model=
"form.
dialCode"
placeholder=
""
style=
"width:200px
"
>
<el-option
v-for=
"item in countryList"
:key=
"item.id"
:label=
"item.nameZh + item.tel"
:value=
"item.tel.replace('+', '')
"
></el-option>
</el-select>
</el-input>
</el-form-item>
<el-form-item
label=
"新控货人邮箱"
prop=
"e
nd"
required
>
<el-input
v-model
.number=
"form.end"
type=
"number"
:max=
"detail ? detail.num : 1
"
></el-input>
<el-form-item
label=
"新控货人邮箱"
prop=
"e
mail"
>
<el-input
v-model
=
"form.email"
type=
"email
"
></el-input>
</el-form-item>
<el-form-item
label=
"手机验证码"
prop=
"
end"
required
>
<el-input
v-model.number=
"form.
end
"
type=
"number"
>
<s
pan
slot=
"append"
>
获取验证码
</span
>
<el-form-item
label=
"手机验证码"
prop=
"
code"
>
<el-input
v-model.number=
"form.
code
"
type=
"number"
>
<s
end-sms-code
slot=
"append"
:order-id=
"orderId"
scene=
"4"
/
>
</el-input>
</el-form-item>
<el-form-item
label=
""
>
<el-button
type=
"primary"
@
click=
"s
howPreview
"
>
确定转移
</el-button>
<el-button
type=
"primary"
@
click=
"s
ubmit
"
>
确定转移
</el-button>
</el-form-item>
</el-form>
</div>
...
...
@@ -42,41 +43,72 @@
</
template
>
<
script
>
import
TransferAgreement
from
"
./TransferAgreement
"
import
{
getCountryListAll
}
from
'
@/api/ecw/country
'
import
SendSmsCode
from
'
./SendSmsCode
'
import
{
create
}
from
'
@/api/ecw/orderCargoControl
'
export
default
{
props
:{
orderId
:
[
String
,
Number
]
orderId
:
[
String
,
Number
],
cargoControlName
:
String
,
cargoControlPhone
:
String
,
orderNo
:
String
},
components
:
{
TransferAgreement
},
components
:
{
TransferAgreement
,
SendSmsCode
},
data
(){
return
{
show
:
false
,
detail
:
null
,
//
detail: null,
form
:{},
agreement
:
false
,
// 是否同意协议
countryList
:
[],
rules
:{
name
:
[{
required
:
true
,
message
:
'
请输入控货人
'
}],
phone
:
[{
required
:
true
,
message
:
'
请输入控货人手机
'
}],
// email: [{required: true, message: '请输入控货人'}],
code
:
[{
required
:
true
,
message
:
'
验证码不能为空
'
}]
}
}
},
computed
:{
title
(){
let
t
=
'
控货权转移
'
if
(
this
.
detail
){
t
+=
'
-
'
+
this
.
detail
.
orderNo
return
this
.
orderNo
}
},
watch
:{
countryList
(){
if
(
this
.
countryList
.
length
){
this
.
$set
(
this
.
form
,
'
dialCode
'
,
this
.
countryList
[
0
].
tel
.
replace
(
'
+
'
,
''
))
}
return
t
}
},
created
(){
this
.
show
=
true
this
.
loadData
()
getCountryListAll
().
then
(
res
=>
{
this
.
countryList
=
res
.
data
})
},
methods
:{
loadData
(){
},
closeDialog
(){
this
.
show
=
false
this
.
$emit
(
'
close
'
);
},
submit
(){
this
.
$refs
.
form
.
validate
(
valid
=>
{
if
(
!
valid
){
return
false
}
let
data
=
Object
.
assign
({
orderId
:
this
.
orderId
,
orderNo
:
this
.
orderNo
},
this
.
form
)
create
(
data
)
.
then
(
res
=>
{
this
.
$message
.
success
(
res
.
message
||
'
操作成功
'
)
this
.
closeDialog
()
})
})
}
}
}
</
script
>
\ No newline at end of file
src/views/ecw/order/edit.vue
View file @
b0b46e09
...
...
@@ -278,7 +278,7 @@
<el-input
v-model=
"form.marks"
placeholder=
""
></el-input>
</el-descriptions-item>
<el-descriptions-item
label=
"是否控货"
>
<dict-selector
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
formatter=
"bool"
v-model=
"form.
c
ontrol"
form-type=
"radio"
/>
<dict-selector
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
formatter=
"bool"
v-model=
"form.
isCargoC
ontrol"
form-type=
"radio"
/>
</el-descriptions-item>
<!--代收货款,只有非控货订单、并且线路开通了代收货款后,才显示是否代收货款选项-->
<el-descriptions-item
label=
"是否代收货款"
>
...
...
@@ -527,7 +527,13 @@ export default {
this
.
getOpenedRouterList
()
},
'
form.transportId
'
(){
this
.
getOpenedRouterList
this
.
getOpenedRouterList
()
},
'
form.lineId
'
(
lineId
){
let
router
=
this
.
routerList
.
find
(
item
=>
item
.
id
==
lineId
)
this
.
$set
(
this
.
form
,
'
departureId
'
,
router
.
startCityId
)
this
.
$set
(
this
.
form
,
'
objectiveId
'
,
router
.
destCityId
)
// TODO 还需要回填渠道信息,暂时缺少渠道ID
},
/* // 发货联系人发生变化获取发货客户
consignorContact(){
...
...
src/views/ecw/order/feeApplication.vue
View file @
b0b46e09
<
template
>
<el-dialog
:visible.sync=
"dialogVisible"
width=
"80%"
:before-close=
"()=>
{
$emit('update:dialogVisible',false)
}">
<div
class=
"fee-application"
>
<h1>
费用申请-
{{
orderDetails
.
orderNo
}}
</h1>
...
...
@@ -63,6 +66,8 @@
<el-button>
取消
</el-button>
</div>
</div>
</el-dialog>
</template>
<
script
>
...
...
@@ -75,6 +80,10 @@ export default {
components
:
{
Template
,
workFlow
},
props
:{
orderId
:[
Number
,
String
],
dialogVisible
:{
type
:
Boolean
,
default
:
false
,
}
},
data
(){
return
{
...
...
@@ -89,12 +98,6 @@ export default {
}
},
created
()
{
getOrder
(
this
.
orderId
).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
orderDetails
=
r
.
data
}
})
this
.
getOrderList
()
this
.
getDictDatas
(
this
.
DICT_TYPE
.
AUDIT_STATUS
).
forEach
(
e
=>
{
this
.
STATUS
[
e
.
value
]
=
e
.
label
})
...
...
@@ -128,11 +131,10 @@ export default {
this
.
isModifyIf
=
false
;
},
submit
(){
if
(
this
.
isModifyIf
){
applicationUpdate
({...
this
.
list
[
this
.
isModify
.
findIndex
(
e
=>
e
===
false
)],
status
:
1
}).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
getOrderList
();
this
.
$emit
(
'
update:dialogVisible
'
,
false
)
this
.
$message
.
success
(
'
修改成功
'
);
}
})
...
...
@@ -140,7 +142,7 @@ export default {
if
(
this
.
list
[
this
.
list
.
length
-
1
].
status
===
0
){
feeApplicationCreate
(
{...
this
.
list
[
this
.
list
.
length
-
1
],
status
:
1
,
copyUserId
:
this
.
selectedUsers
}).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
getOrderList
();
this
.
$emit
(
'
update:dialogVisible
'
,
false
)
this
.
$message
.
success
(
'
添加成功
'
);
this
.
selectedUsers
=
[];
}
...
...
@@ -163,6 +165,18 @@ export default {
this
.
isModifyIf
=
true
;
this
.
$set
(
this
.
isModify
,
this
.
list
.
findIndex
(
e
=>
e
.
id
=
row
.
id
),
false
)
},
},
watch
:{
dialogVisible
(
val
){
if
(
val
){
this
.
getOrderList
()
getOrder
(
this
.
orderId
).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
orderDetails
=
r
.
data
}
})
}
},
}
}
</
script
>
...
...
src/views/ecw/order/index.vue
View file @
b0b46e09
...
...
@@ -3,12 +3,12 @@
<!-- 搜索工作栏 -->
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
>
<el-form-item
label=
"
订单
编号"
prop=
"orderNo"
>
<el-input
v-model=
"queryParams.
orderNo"
placeholder=
"订单编
号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-form-item
label=
"编号"
prop=
"orderNo"
>
<el-input
v-model=
"queryParams.
numberKey"
placeholder=
"请输入订单号、唛头、提单
号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"唛头"
prop=
"marks"
>
<
!--
<
el-form-item
label=
"唛头"
prop=
"marks"
>
<el-input
v-model=
"queryParams.marks"
placeholder=
"唛头"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
-->
<el-form-item
label=
"发货人"
prop=
"consignorId"
>
<el-input
v-model=
"queryParams.consignorId"
placeholder=
"发货人"
clearable
@
keyup.enter.native=
"handleQuery"
/>
...
...
@@ -17,8 +17,8 @@
<el-form-item
label=
"收货人"
prop=
"consigneeId"
>
<el-input
v-model=
"queryParams.consigneeId"
placeholder=
"收货人"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"
日期筛选
"
>
<dict-selector
:type=
"DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME"
v-model=
"dateFilterType"
style=
"width: 150px; margin-right: 5px"
/>
<el-form-item
label=
""
>
<dict-selector
:type=
"DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME"
v-model=
"dateFilterType"
defaultable
style=
"width: 150px; margin-right: 5px"
/>
<el-date-picker
v-model=
"dateFilter"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
</el-form-item>
...
...
@@ -37,7 +37,7 @@
<dict-selector
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model=
"queryParams.transportId"
formatter=
"number"
/>
</el-form-item>
<el-form-item
label=
"商品分类"
prop=
"goodsType"
>
<
!--
<
el-form-item
label=
"商品分类"
prop=
"goodsType"
>
<selector
v-model=
"queryParams.goodsType"
:options=
"productAttrList"
label-field=
"attrName"
value-field=
"id"
>
</selector>
</el-form-item>
...
...
@@ -47,9 +47,10 @@
<el-form-item
label=
"品牌"
prop=
"brand"
>
<dict-selector
v-model=
"queryParams.brand"
:type=
"DICT_TYPE.ECW_IS_BRAND"
formatter=
"bool"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"提单号"
prop=
"tidanNo"
>
<el-input
v-model=
"queryParams.tidanNo"
placeholder=
"提单号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
-->
<el-form-item
label=
"商品"
prop=
"tidanNo"
>
<el-input
v-model=
"queryParams.prodKey"
placeholder=
"请输入商品类型、品名或品牌"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"控货"
prop=
"isCargoControl"
>
...
...
@@ -58,11 +59,11 @@
<el-form-item
label=
"入仓类型"
prop=
"warehouseType"
>
<dict-selector
:type=
"DICT_TYPE.ECW_WAREHOUSING_TYPE"
v-model=
"queryParams.warehousingType"
/>
</el-form-item>
<el-form-item
label=
"
跟进客服
"
>
<
customer-selector
/>
<el-form-item
label=
"
客户经理
"
>
<
user-selector
v-model=
"queryParams.salesmanId"
/>
</el-form-item>
<el-form-item
label=
"订单状态"
prop=
"status"
>
<dict-selector
:type=
"DICT_TYPE.
PAY_
ORDER_STATUS"
v-model=
"queryParams.status"
<dict-selector
:type=
"DICT_TYPE.ORDER_STATUS"
v-model=
"queryParams.status"
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"报关方式"
prop=
"customsType"
>
...
...
@@ -70,15 +71,16 @@
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"是否齐货"
>
<!--// 字段存疑-->
<dict-selector
v-model=
"queryParams.isCargoControl"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
/>
</el-form-item>
<el-form-item
label=
"重货比"
prop=
"weightRatio"
>
<
!--
<
el-form-item
label=
"重货比"
prop=
"weightRatio"
>
<el-input
style=
"width: 100px;"
v-model=
"molecule"
placeholder=
""
clearable
@
change=
"moleculeChange"
@
keyup.enter.native=
"handleQuery"
/>
-
<el-input
style=
"width: 100px;"
v-model=
"denominator"
placeholder=
""
clearable
@
change=
"denominatorChange"
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
-->
<el-form-item
label=
"备案属性"
prop=
"productRecord"
>
<dict-selector
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
v-model=
"queryParams.productRecord"
clearable
@
keyup.enter.native=
"handleQuery"
/>
...
...
@@ -100,7 +102,7 @@
v-hasPermi=
"['ecw:order:create']"
>
新增
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
plain
icon=
"el-icon-setting"
size=
"mini"
@
click=
"handleEdit"
:disabled=
"
multiple
"
>
批量调仓
<el-button
type=
"primary"
plain
icon=
"el-icon-setting"
size=
"mini"
@
click=
"handleEdit"
:disabled=
"
!batchWarehouseAdjustment
"
>
批量调仓
</el-button>
<el-button
type=
"primary"
plain
icon=
"el-icon-setting"
size=
"mini"
@
click=
"showBatchPickup=true"
>
批量提货
</el-button>
...
...
@@ -167,7 +169,7 @@
<el-button
v-if=
"scope.row.status
<
5
"
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"oprateOrder(scope.row.orderId, 'cancelOrder')"
>
取消订单
</el-button>
<el-button
v-if=
"scope.row.status == 88"
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"oprateOrder(scope.row.orderId, 'recoveryOrder')"
>
恢复订单
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"
$router.push(`/order/fee-application/$
{scope.row.orderId}`)
">费用申请
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"
feeApplicationBol = true; orderId = scope.row.orderId
"
>
费用申请
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"orderId = scope.row.orderId;isShow = true"
>
特需
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"$router.push(`/order/associated-order/$
{scope.row.orderId}`)" >关联
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"$router.push(`/order/mutex-order/$
{scope.row.orderId}`)" >互斥
</el-button>
...
...
@@ -201,7 +203,7 @@
v-hasPermi=
"['ecw:order:update']"
>
入仓
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"show = true;orderId = scope.row.orderId; "
v-hasPermi=
"['ecw:order:update']"
>
退仓
</el-button>
<el-button
type=
"text"
v-if=
"scope.row.status === 5"
size=
"mini"
@
click=
"$router.push(
{path:'/order/batch-single-application',query:{list:scope.row.orderId}})"
>调仓
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"orderId = scope.row.orderId;warehouseBol=true;"
>
调仓
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"$router.push(
{path:'/order/transfer-warehousing/' + scope.row.orderId + '/' + 1 })" >调拨出仓
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"$router.push(
{path:'/order/transfer-to-warehouse/' + scope.row.orderId + '/' + 2 })" >调拨到仓
</el-button>
</div>
...
...
@@ -239,6 +241,8 @@
<print-lading-bill
v-if=
"printLadingBillInfo !== null"
v-bind=
"printLadingBillInfo"
@
close=
"printLadingBillInfo=null"
/>
<batch-pickup
v-if=
"showBatchPickup"
@
close=
"showBatchPickup=false"
/>
<withdrawal
v-if=
"show"
:dialog-visible=
"show"
:orderId=
"orderId"
></withdrawal>
<batch-single-application
:order-list=
"orderId"
:dialog-visible.sync=
"warehouseBol"
></batch-single-application>
<fee-application
:order-id=
"orderId"
:dialog-visible.sync=
"feeApplicationBol"
></fee-application>
</div>
</template>
...
...
@@ -267,9 +271,15 @@ import PrintWarehouseReceipt from './components/PrintWarehouseReceipt'
import
PrintLadingBill
from
'
./components/PrintLadingBill
'
import
BatchPickup
from
'
./components/BatchPickup
'
import
withdrawal
from
"
@/views/ecw/order/withdrawal
"
;
import
UserSelector
from
'
@/components/UserSelector
'
import
BatchSingleApplication
from
"
@/views/ecw/order/batchSingleApplication
"
;
import
FeeApplication
from
"
@/views/ecw/order/feeApplication
"
;
export
default
{
name
:
"
Order
"
,
components
:
{
UserSelector
,
FeeApplication
,
BatchSingleApplication
,
CustomerSelector
,
ProductSelector
,
Selector
,
specialNeeds
,
PrintTag
,
PrintWarehouseReceipt
,
PrintLadingBill
,
BatchPickup
,
withdrawal
},
props
:
{
...
...
@@ -351,7 +361,9 @@ export default {
getDictDatas */
adjustmentList
:[],
show
:
false
,
warehouseBol
:
false
,
//调仓申请
feeApplicationBol
:
false
,
//费用申请
multipleSelection
:[]
};
},
computed
:
{
...
...
@@ -368,7 +380,11 @@ export default {
timeParams
[
'
end
'
+
this
.
dateFilterType
]
=
this
.
dateFilter
[
1
]
}
return
Object
.
assign
({},
this
.
queryParams
,
timeParams
)
}
},
batchWarehouseAdjustment
(){
return
this
.
multipleSelection
.
length
>
0
&&
this
.
multipleSelection
.
every
(
e
=>
e
.
status
===
5
)
},
},
created
()
{
this
.
getList
();
...
...
@@ -456,15 +472,14 @@ export default {
},
// 表格多选
handleSelectionChange
(
selection
)
{
this
.
multipleSelection
=
selection
this
.
ids
=
selection
.
map
(
item
=>
item
.
orderId
)
this
.
single
=
selection
.
length
!==
1
this
.
multiple
=
!
selection
.
length
},
handleEdit
()
{
this
.
$router
.
push
({
path
:
'
/order/batch-single-application
'
,
query
:{
list
:
this
.
ids
.
join
(
'
,
'
)}
})
this
.
warehouseBol
=
true
this
.
orderId
=
this
.
ids
.
join
(
'
,
'
)
},
moleculeChange
()
{
},
denominatorChange
()
{
},
...
...
src/views/ecw/order/transferWarehousing.vue
View file @
b0b46e09
...
...
@@ -8,7 +8,7 @@
<el-divider
content-position=
"left"
>
货物信息
</el-divider>
<el-table
:data=
"
orderDetails.orderItemVOList
? orderDetails.orderItemVOList : [] "
>
<el-table
:data=
"
orderDetails.orderItemVOList && orderDetails.orderItemVOList.length > 0
? orderDetails.orderItemVOList : [] "
>
<el-table-column
type=
"index"
label=
"序号"
></el-table-column>
<el-table-column
label=
"品名"
>
<template
v-slot=
"
{row}">
...
...
@@ -31,16 +31,20 @@
<
template
v-slot=
"{row}"
>
<el-descriptions
size=
"mini"
:column=
"4"
>
<el-descriptions-item
label=
"品牌"
>
{{
row
.
brand
}}
</el-descriptions-item>
<el-descriptions-item
label=
"箱数"
>
{{
row
.
warehouseInInfoVO
.
cartonsNum
}}
</el-descriptions-item>
<el-descriptions-item
label=
"体积"
>
{{
row
.
warehouseInInfoVO
.
volume
}}
</el-descriptions-item>
<el-descriptions-item
label=
"重量"
>
{{
row
.
warehouseInInfoVO
.
weight
}}
</el-descriptions-item>
<el-descriptions-item
label=
"箱数"
>
{{
row
.
warehouseInInfoVO
?
row
.
warehouseInInfoVO
.
cartonsNum
:
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"体积"
>
{{
row
.
warehouseInInfoVO
?
row
.
warehouseInInfoVO
.
volume
:
''
}}
</el-descriptions-item>
<el-descriptions-item
label=
"重量"
>
{{
row
.
warehouseInInfoVO
?
row
.
warehouseInInfoVO
.
weight
:
''
}}
</el-descriptions-item>
</el-descriptions>
</
template
>
</el-table-column>
<el-table-column
label=
"最后操作时间"
></el-table-column>
<el-table-column
label=
"最后操作时间"
>
<
template
v-slot=
"{row}"
>
{{
parseTime
(
row
.
createTime
)
}}
</
template
>
</el-table-column>
<el-table-column
label=
"状态"
>
<
template
v-slot=
"{row}"
>
<dict-tag
:value=
"
row.warehouseInInfoVO.diffType
"
:type=
"DICT_TYPE.ORDER_WAREHOUSE_IN_STATUS"
/>
<dict-tag
:value=
"
row.warehouseInInfoVO ? row.warehouseInInfoVO.diffType :''
"
:type=
"DICT_TYPE.ORDER_WAREHOUSE_IN_STATUS"
/>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -49,12 +53,12 @@
</el-divider>
<el-table
:data=
"warehouseList"
v-if=
"type == 2"
>
<el-table-column
label=
"调仓编号"
prop=
"id"
></el-table-column>
<el-table-column
label=
"调出仓库"
prop=
"warehouseOut
Id
"
></el-table-column>
<el-table-column
label=
"调入仓库"
prop=
"warehouseIn
Id
"
></el-table-column>
<el-table-column
label=
"申请人"
></el-table-column>
<el-table-column
label=
"调出仓库"
prop=
"warehouseOut
Name
"
></el-table-column>
<el-table-column
label=
"调入仓库"
prop=
"warehouseIn
Name
"
></el-table-column>
<el-table-column
label=
"申请人"
prop=
"creator"
></el-table-column>
<el-table-column
label=
"申请时间"
>
<
template
v-slot=
"{row}"
>
{{
parseTime
(
row
.
createTime
)
}}
</
template
>
</el-table-column>
<el-table-column
label=
"状态"
>
...
...
@@ -72,7 +76,9 @@
</el-table>
<el-descriptions
style=
"margin-top: 20px"
:column=
"4"
border
>
<el-descriptions-item
label=
"集运仓库"
>
{{ warehouseDetails.warehouseOutName }}
</el-descriptions-item>
<el-descriptions-item
label=
"储位"
>
{{}}
</el-descriptions-item>
<el-descriptions-item
label=
"储位"
>
<div
v-for=
"item in storageSpaceList"
style=
"display: flex;"
><div>
{{item.warehouseName}}
</div><div>
{{item.regionName}} 区
</div></div>
</el-descriptions-item>
<el-descriptions-item
label=
"调拨目标仓"
>
{{ warehouseDetails.warehouseInName }}
</el-descriptions-item>
<el-descriptions-item
label=
"物流公司"
>
<el-select
v-model=
"params.logisticsCompany"
>
...
...
@@ -110,7 +116,7 @@
</el-form-item>
</el-form>
<div>
<el-button
v-if=
"type ==
=
1"
@
click=
"submit"
>
确认出仓
</el-button>
<el-button
v-if=
"type == 1"
@
click=
"submit"
>
确认出仓
</el-button>
<el-button
v-else
@
click=
"submit2"
>
确认到仓
</el-button>
<el-button
@
click=
"$router.back()"
>
返回
</el-button>
</div>
...
...
@@ -120,6 +126,7 @@
<
script
>
import
ordeDetailsForm
from
"
@/views/ecw/order/components/ordeDetailsForm
"
;
import
{
getAdjustInfo
,
getOrder
,
listByOrderId
,
orderWarehouseInGetAdjustInfo
,
orderWarehousePicturePage
,
warehouseAdjustArrived
,
warehouseAdjustPage
,
...
...
@@ -129,6 +136,7 @@ import Template from "@/views/cms/template";
import
{
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
ImageAndVideoUpload
from
"
@/components/ImageAndVideoUpload/index
"
;
import
{
getSupplierPage
}
from
"
@/api/ecw/supplier
"
;
import
{
getByWarehouseId
}
from
"
@/api/ecw/warehouseArea
"
;
let
STATUS
=
{
1
:
'
审核中
'
,
2
:
'
已通过
'
,
3
:
'
已拒绝
'
,
4
:
'
已出仓
'
,
5
:
'
已到仓
'
}
export
default
{
name
:
"
transferWarehousing
"
,
...
...
@@ -157,7 +165,8 @@ export default {
phone
:
""
,
urls
:
[]
},
expressList
:[]
expressList
:[],
storageSpaceList
:[],
}
},
created
()
{
...
...
@@ -171,14 +180,33 @@ export default {
}
})
if
(
this
.
type
==
2
){
warehouseAdjustPage
({
rows
:
100
,
orderId
:
this
.
orderId
}).
then
(
r
=>
{
this
.
warehouseList
=
r
.
data
.
list
getAdjustInfo
({
orderId
:
this
.
orderId
,
lang
:
0
}).
then
(
r
=>
{
this
.
warehouseList
=
r
.
data
})
}
orderWarehouseInGetAdjustInfo
({
orderId
:
this
.
orderId
,
lang
:
0
}).
then
(
r
=>
{
this
.
warehouseDetails
=
r
.
data
[
0
]
listByOrderId
({
orderId
:
this
.
orderId
}).
then
(
r
=>
{
console
.
log
(
r
,
'
r
'
)
listByOrderId
({
orderId
:
this
.
orderId
}).
then
(
res
=>
{
if
(
res
.
code
===
0
){
getByWarehouseId
().
then
(
r
=>
{
let
obj
=
[];
res
.
data
.
forEach
(
item
=>
{
r
.
data
.
forEach
(
itemm
=>
{
if
(
item
.
wareId
===
itemm
.
id
){
itemm
.
children
.
forEach
(
itemmm
=>
{
if
(
itemmm
.
id
===
item
.
areaId
){
obj
.
push
({
warehouseName
:
itemm
.
name
,
regionName
:
itemmm
.
name
})
}
})
}
})
})
this
.
storageSpaceList
=
obj
;
})
}
})
this
.
params
.
phone
=
this
.
warehouseDetails
.
phone
;
this
.
params
.
logisticsNo
=
this
.
warehouseDetails
.
logisticsNo
;
...
...
@@ -205,12 +233,10 @@ export default {
},
submit2
(){
warehouseAdjustArrived
(
this
.
params
).
then
(
r
=>
{
{
if
(
r
.
code
===
0
){
this
.
$message
.
success
(
'
调到仓成功
'
);
this
.
$router
.
back
();
}
}
})
}
},
...
...
src/views/ecw/order/warehousing/index.vue
View file @
b0b46e09
...
...
@@ -103,14 +103,16 @@
<div
style=
"text-align: center"
>
在完成入仓前,您还可以
</div>
<div
style=
"text-align: center;padding: 15px 0"
>
<el-button
type=
"info"
@
click=
"areaVisible = true"
>
选择储位
</el-button>
<el-button
type=
"info"
@
click=
"isShowPrint = true"
>
打印标签
</el-button>
<el-button
type=
"info"
@
click=
"isShowPrint
Tag
= true"
>
打印标签
</el-button>
</div>
<div
style=
"text-align: center"
>
<el-button
type=
"primary"
@
click=
"handleSubmit()"
>
确 定
</el-button>
</div>
</el-dialog>
<print-tag
v-if=
"isShowPrint"
:order-id=
"orderId"
@
close=
"isShowPrint = false"
></print-tag>
<print-tag
v-if=
"isShowPrintTag"
:order-id=
"orderId"
@
close=
"isShowPrintTag = false"
></print-tag>
<print-warehouse-receipt
v-if=
"isShowPrint"
:order-id=
"orderId"
@
close=
"isShowPrint = false"
/>
</div>
</template>
...
...
@@ -128,6 +130,7 @@ import WarehouseAreaDialog from '@/components/WarehouseAreaDialog'
import
editDialog
from
'
@/views/ecw/order/warehousing/components/editDialog
'
import
{
DICT_TYPE
}
from
"
@/utils/dict
"
import
PrintTag
from
"
@/views/ecw/order/components/PrintTag
"
import
PrintWarehouseReceipt
from
"
@/views/ecw/order/components/PrintWarehouseReceipt
"
export
default
{
name
:
"
Warehousing
"
,
...
...
@@ -136,7 +139,8 @@ export default {
orderBaseInfo
,
WarehouseAreaDialog
,
editDialog
,
PrintTag
PrintTag
,
PrintWarehouseReceipt
},
mounted
()
{
...
...
@@ -166,6 +170,7 @@ export default {
orderItemList
:
[],
specialList
:
[],
warehousing
:
undefined
,
isShowPrintTag
:
false
,
isShowPrint
:
false
}
},
...
...
@@ -182,10 +187,12 @@ export default {
'
该订单已成功入仓,是否打印?
'
,
'
货物已入仓
'
,
{
confirmButton
Class
:
'
是
'
,
confirmButton
Text
:
'
是
'
,
cancelButtonText
:
'
否
'
}
).
then
().
catch
(()
=>
{
).
then
(()
=>
{
this
.
isShowPrint
=
true
}).
catch
(()
=>
{
// this.$store.dispatch('tagsView/delVisitedView')
this
.
$message
.
success
(
'
入仓成功
'
)
})
...
...
src/views/ecw/productPrice/edit.vue
View file @
b0b46e09
...
...
@@ -55,20 +55,62 @@
<el-card
style=
"margin-bottom: 10px"
>
<div
slot=
"header"
style=
"font-size:20px;"
>
价格设置
<span>
<el-checkbox
label=
""
@
change=
"form.advanceStatus=$event ? 1 : 0"
>
预付
</el-checkbox>
<el-checkbox
label=
""
@
change=
"form.stepPrice=$event ? 1 : 0"
>
阶梯订单
</el-checkbox>
</span>
</div>
<el-form-item
label=
"单价模式"
prop=
"priceType"
>
<dict-selector
:type=
"DICT_TYPE.ECW_PRICE_TYPE"
v-model=
"form.priceType"
form-type=
"radio"
defaultable
/>
</el-form-item>
<!--阶梯订单-->
<
template
v-if=
"form.stepPrice==1"
>
<div
v-for=
"(item, index) in priceStepList"
:key=
"index"
>
<div
style=
"font-size:14px; margin:10px 0"
>
第
{{
index
+
1
}}
阶梯定价方案:
<template
v-if=
"index == priceStepList.length - 1"
>
<el-link
type=
"primary"
@
click.native=
"priceStepList.push(
{})">添加区间
</el-link>
<el-divider
direction=
"vertical"
></el-divider>
<el-link
type=
"danger"
@
click.native=
"priceStepList.splice(index, 1)"
>
删除
</el-link>
</
template
>
</div>
<el-form-item
:label=
"`第${index+1}阶梯`"
>
<el-input
v-model=
"item.startNum"
type=
"number"
placeholder=
""
class=
"w100"
></el-input>
-
<el-input
v-model=
"item.endNum"
type=
"number"
placeholder=
""
class=
"w100"
></el-input>
/
<selector
v-model=
"form.weightUnit"
:options=
"unitList"
label-field=
"titleZh"
value-field=
"id"
defaultable
class=
"w100"
/>
</el-form-item>
<el-form-item
label=
"默认运费"
v-if=
"form.priceType != 1"
>
<inputor
default=
"0"
v-model.number=
"item.transportPrice"
type=
"number"
placeholder=
"整数或者两位小数"
class=
"w100 mr10"
/>
<selector
v-model=
"item.transportPriceUnit"
:options=
"currencyList"
label-field=
"titleZh"
value-field=
"id"
defaultable
class=
"w100"
/>
/
<selector
v-model=
"item.transportVolumeUnit"
:options=
"unitList"
label-field=
"titleZh"
value-field=
"id"
defaultable
class=
"w100"
/>
</el-form-item>
<el-form-item
label=
"默认清关费"
v-if=
"form.priceType != 1"
>
<inputor
default=
"0"
v-model.number=
"item.clearancePrice"
type=
"number"
placeholder=
"整数或者两位小数"
class=
"w100 mr10"
/>
<selector
v-model=
"item.clearancePriceUnit"
:options=
"currencyList"
label-field=
"titleZh"
value-field=
"id"
defaultable
class=
"w100"
/>
/
<selector
v-model=
"item.clearanceVolumeUnit"
:options=
"unitList"
label-field=
"titleZh"
value-field=
"id"
defaultable
class=
"w100"
/>
</el-form-item>
<el-form-item
label=
"默认全包价"
v-if=
"form.priceType == 1"
>
<inputor
default=
"0"
v-model.number=
"item.allPrice"
type=
"number"
placeholder=
"整数或者两位小数"
class=
"w100 mr10"
/>
<selector
v-model=
"item.allPriceUnit"
:options=
"currencyList"
label-field=
"titleZh"
value-field=
"id"
defaultable
class=
"w100"
/>
/
<selector
v-model=
"item.allVolumeUnit"
:options=
"unitList"
label-field=
"titleZh"
value-field=
"id"
defaultable
class=
"w100"
/>
</el-form-item>
</div>
</template>
<
template
v-else
>
<el-form-item
label=
"默认运费"
prop=
"transportPrice"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"4"
>
<selector
v-model=
"form.transportPriceUnit"
:options=
"currencyList"
label-field=
"titleZh"
value-field=
"id"
defaultable
style=
"width:100px"
/>
</el-col>
<el-col
:span=
"6"
>
<inputor
default=
"0"
v-model.number=
"form.transportPrice"
type=
"number"
placeholder=
"整数或者两位小数"
/>
</el-col>
<el-col
:span=
"4"
>
/
<selector
v-model=
"form.transportVolumeUnit"
:options=
"unitList"
label-field=
"titleZh"
value-field=
"id"
defaultable
style=
"width:100px"
/>
/
<selector
v-model=
"form.transportVolumeUnit"
:options=
"unitList"
label-field=
"titleZh"
value-field=
"id"
defaultable
style=
"width:100px"
/>
</el-col>
</el-row>
</el-form-item>
...
...
@@ -126,11 +168,11 @@
</el-row>
</el-form-item>
</
template
>
</template>
<el-form-item
label=
"是否预付"
prop=
"advanceStatus"
>
<!-- <el-form-item label="是否预付" prop="advanceStatus">
<dict-selector form-type="radio" :type="DICT_TYPE.ADVANCE_STATUS" v-model="form.advanceStatus" />
</el-form-item>
</el-form-item>
-->
</el-card>
...
...
@@ -181,8 +223,12 @@ export default {
return
{
checkList
:
[],
selectedRoutes
:
[],
// 勾选的路线渠道
form
:
{},
form
:
{
stepPrice
:
0
,
advanceStatus
:
0
},
specialProducts
:
[],
priceStepList
:
[{},{}],
// 阶梯价格
// specialList:[], // 特殊需求,默认四个
rules
:
{
/* typeId: [{ required: true, message: "产品类型不能为空", trigger: "blur" }],
...
...
@@ -321,6 +367,9 @@ export default {
specialList
:
this
.
specialProducts
,
isAllProduct
:
0
})
if
(
this
.
form
.
stepPrice
==
1
){
data
.
priceStepList
=
this
.
priceStepList
}
// 修改的提交
if
(
this
.
$route
.
query
.
ids
)
{
...
...
@@ -348,7 +397,7 @@ export default {
data
.
productIdList
=
[
this
.
form
.
productId
]
batchUpdateProductPrice
(
data
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
$router
.
replace
(
'
/product/product-price
'
)
this
.
$router
.
replace
(
'
/product/product-price
?
'
+
(
new
URLSearchParams
(
this
.
$route
.
query
)).
toString
()
)
})
return
;
...
...
@@ -358,10 +407,18 @@ export default {
data
.
lineChannelList
=
this
.
selectedRoutes
createProductPrice
(
data
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
请求成功
"
);
this
.
$router
.
replace
(
'
/product/product-price
'
)
this
.
$router
.
replace
(
'
/product/product-price
?
'
+
(
new
URLSearchParams
(
this
.
$route
.
query
)).
toString
()
)
});
});
},
}
}
</
script
>
<
style
scoped
>
.w100
{
width
:
100px
;
}
.mr10
{
margin-right
:
10px
;
}
</
style
>
\ No newline at end of file
src/views/ecw/productPrice/index.vue
View file @
b0b46e09
This diff is collapsed.
Click to expand it.
src/views/system/needKnow/index.vue
0 → 100644
View file @
b0b46e09
This diff is collapsed.
Click to expand it.
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