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
e6eff34c
Commit
e6eff34c
authored
Jul 20, 2022
by
dcy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
订单特殊,订单费用申请,订单关联
parent
7a487e7e
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
282 additions
and
100 deletions
+282
-100
order.js
src/api/ecw/order.js
+24
-0
index.js
src/router/index.js
+1
-0
dict.js
src/utils/dict.js
+5
-0
associatedOrder.vue
src/views/ecw/order/associatedOrder.vue
+19
-3
ordeDetailsForm.vue
src/views/ecw/order/components/ordeDetailsForm.vue
+32
-58
specialNeeds.vue
src/views/ecw/order/components/specialNeeds.vue
+65
-13
feeApplication.vue
src/views/ecw/order/feeApplication.vue
+107
-18
index.vue
src/views/ecw/order/index.vue
+9
-1
singleApplication.vue
src/views/ecw/order/singleApplication.vue
+19
-6
index.vue
src/views/member/user/index.vue
+1
-1
No files found.
src/api/ecw/order.js
View file @
e6eff34c
...
...
@@ -52,3 +52,27 @@ export function exportOrderExcel(query) {
responseType
:
'
blob
'
})
}
//根据订单号获得订单费用申请列表
export
function
feeApplicationListByOrderId
(
query
){
return
request
({
url
:
'
/order/fee-application/listByOrderId
'
,
method
:
'
get
'
,
params
:
query
,
})
}
//费用申请提交
export
function
feeApplicationCreate
(
data
){
return
request
({
url
:
'
order/fee-application/create
'
,
method
:
'
post
'
,
data
:
data
,
})
}
// 创建特殊
export
function
specialNeedCreate
(
data
){
return
request
({
url
:
'
ecw/order-special-need/create
'
,
method
:
'
post
'
,
data
:
data
,
})
}
src/router/index.js
View file @
e6eff34c
...
...
@@ -333,6 +333,7 @@ export const constantRoutes = [
path
:
'
fee-application/:orderId
'
,
component
:()
=>
import
(
'
@/views/ecw/order/feeApplication
'
),
name
:
'
feeApplication
'
,
props
:
true
,
meta
:
{
title
:
'
费用申请
'
,
icon
:
''
,
...
...
src/utils/dict.js
View file @
e6eff34c
...
...
@@ -143,6 +143,11 @@ export const DICT_TYPE = {
ORDER_ERROR_TYPE
:
'
order_error_type
'
,
//订单异常类型
ORDER_EXCEPTION_STATUS
:
'
order_exception_status
'
,
//异常订单状态
ECASH_INIT
:
'
ecash_init
'
,
//e-cash
FEE_TYPE
:
'
fee_type
'
,
PAY_TYPE
:
'
pay_type
'
,
RECEIVE_FLAG
:
'
receive_flag
'
,
COMDINED_VALUE_ADDED_FEE
:
'
combined_value_added_fee
'
,
ORDER_SPECIAL_NEEDS
:
'
order_special_needs
'
}
/**
...
...
src/views/ecw/order/associatedOrder.vue
View file @
e6eff34c
<
template
>
<div
class=
"associated-order"
>
<h1
class=
"title"
>
关联订单-
ECP0013123N
关联订单-
{{
orderDetails
.
orderNo
}}
</h1>
<el-divider></el-divider>
<orde-details-form></orde-details-form>
<orde-details-form
:details =
"orderDetails"
></orde-details-form>
<el-divider></el-divider>
<el-form
inline
label-width=
"100px"
>
<el-form-item
label=
"订单号"
><div
class=
"content"
>
...
...
@@ -75,12 +75,28 @@
<
script
>
//关联订单
import
ordeDetailsForm
from
"
@/views/ecw/order/components/ordeDetailsForm
"
;
import
{
getOrder
}
from
"
@/api/ecw/order
"
;
export
default
{
name
:
"
associatedOrder
"
,
props
:{
orderId
:[
String
,
Boolean
]
},
components
:{
ordeDetailsForm
}
},
data
(){
return
{
orderDetails
:{}
}
},
created
()
{
getOrder
(
this
.
orderId
).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
orderDetails
=
r
.
data
;
}
})
},
}
</
script
>
...
...
src/views/ecw/order/components/ordeDetailsForm.vue
View file @
e6eff34c
<
template
functional
>
<
template
>
<div>
<el-form
inline
label-width=
"120px"
label-position=
"left"
>
<el-row>
<el-col
:span=
"6"
>
<el-form-item
label=
"唛头"
><div
class=
"content"
></div></el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"已到箱数/总箱数"
><div
class=
"content"
></div></el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"订单状态"
><div
class=
"content"
></div></el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"送货日期"
><div
class=
"content"
></div></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"6"
><el-form-item
label=
"运输方式"
><div
class=
"content"
></div></el-form-item></el-col>
<el-col
:span=
"6"
><el-form-item
label=
"出货渠道"
><div
class=
"content"
></div></el-form-item></el-col>
<el-col
:span=
"6"
><el-form-item
label=
"始发地"
><div
class=
"content"
></div></el-form-item></el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"目的地"
><div
class=
"content"
></div></el-form-item></el-col>
</el-row>
<el-row>
<el-col
span=
"6"
><el-form-item
label=
"发货人姓名"
><div
class=
"content"
></div></el-form-item></el-col>
<el-col
span=
"6"
><el-form-item
label=
"发货人公司"
><div
class=
"content"
></div></el-form-item></el-col>
<el-col
span=
"6"
>
<el-form-item
label=
"发货人电话"
><div
class=
"content"
></div></el-form-item></el-col>
</el-row>
<el-row>
<el-col
:span=
"6"
>
<el-form-item
label=
"收货人姓名"
><div
class=
"content"
></div></el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"收货人电话"
><div
class=
"content"
></div></el-form-item>
</el-col>
<el-col
span=
"6"
>
<el-form-item
label=
"货人电话"
><div
class=
"content"
></div></el-form-item>
</el-col>
</el-row>
</el-form>
<el-descriptions
class=
"margin-top"
border
:column=
"4"
>
<el-descriptions-item
label=
"唛头"
>
{{
details
.
marks
}}
</el-descriptions-item>
<el-descriptions-item
label=
"已到箱数/总箱数"
>
{{
details
.
sumQuantity
}}
/
{{
details
.
sumNum
}}
</el-descriptions-item>
<el-descriptions-item
label=
"订单状态"
>
{{
details
.
status
}}
</el-descriptions-item>
<el-descriptions-item
label=
"送货日期"
>
{{}}
</el-descriptions-item>
<el-descriptions-item
label=
"运输方式"
>
{{
details
.
transportId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"出货渠道"
>
{{
details
.
channelId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"始发地"
>
{{
details
.
logisticsInfoDto
.
startWarehouseId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"目的地"
>
{{
details
.
logisticsInfoDto
.
destWarehouseId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人姓名"
>
{{
details
.
consignorVO
.
customerId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人公司"
>
{{
details
.
consignorVO
.
company
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人电话"
>
{{
details
.
consignorVO
.
phone
}}
</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item
label=
"收货人姓名"
>
{{
details
.
consigneeVO
.
customerId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人公司"
>
{{
details
.
consigneeVO
.
company
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人电话"
>
{{
details
.
consigneeVO
.
phone
}}
</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
</el-descriptions>
</div>
</
template
>
<
script
>
export
default
{
name
:
"
ordeDetailsForm
"
}
</
script
>
<
style
scoped
lang=
"scss"
>
v-deep
div
{
.el-form
{
.el-form-item
{
.el-form-item__label
{
font-size
:
12px
;
color
:
red
;
props
:{
details
:{
type
:
Object
,
default
:()
=>
{
return
{
logisticsInfoDto
:
undefined
,
consignorVO
:
undefined
,
consigneeVO
:
undefined
,
}
}
}
}
},
},
name
:
"
ordeDetailsForm
"
,
}
</
script
>
.content
{
width
:
150px
;
height
:
30px
;
border
:
1px
solid
;
}
</
style
>
src/views/ecw/order/components/specialNeeds.vue
View file @
e6eff34c
<
template
>
<div>
<el-dialog
center
width=
"50%"
:visible=
"show"
>
<el-dialog
:before-close=
"()=>
{
clearFrom();$emit('update:show',false)
}" center width="80%" :visible.sync="show">
<div
class=
"content"
>
<el-form
label-width=
"180px"
label-position=
"left"
>
<el-form-item
label=
"特殊要求"
></el-form-item>
<el-form-item
label=
"特殊要求备注"
><el-input></el-input></el-form-item>
<el-form-item
label=
"内陆运费垫付预计金额"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"6"
><el-input></el-input></el-col>
<el-col
:span=
"3"
><el-input></el-input></el-col>
</el-row></el-form-item>
<el-form-item
label=
"付款类型"
>
<el-input></el-input>
<el-form-item
label=
"特殊要求"
>
<dict-selector
v-model=
"form.advanceType"
formType=
"radio"
:type=
"DICT_TYPE.ORDER_SPECIAL_NEEDS"
></dict-selector>
</el-form-item>
<el-form-item
label=
"特殊要求备注"
><el-input
type=
"textarea"
style=
"width: 300px;"
v-model=
"form.todoDetail"
></el-input></el-form-item>
<el-form-item
label=
"内陆运费垫付预计金额"
v-if=
"form.advanceType == 6"
>
<el-input
style=
"width: 300px;"
v-model=
"form.transFee"
>
<div
style=
"width: 100px;"
slot=
"append"
>
<dict-selector
v-model=
"form.transCurrency"
:type=
"DICT_TYPE.COMMISSION_CURRENCY_TYPE"
></dict-selector>
</div>
</el-input>
</el-form-item>
<el-form-item
label=
"付款类型"
v-if=
"form.advanceType == 6"
>
<div
style=
"width: 300px;"
>
<dict-selector
v-model=
"form.payType"
:type=
"DICT_TYPE.PAY_TYPE"
></dict-selector>
</div>
</el-form-item>
</el-form>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button>
提交
</el-button>
<el-button>
取消
</el-button>
<el-button
@
click=
"submit"
>
提交
</el-button>
<el-button
@
click=
"clearFrom();$emit('update:show',false)"
>
取消
</el-button>
</div>
</el-dialog>
</div>
</
template
>
<
script
>
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
{
specialNeedCreate
}
from
"
@/api/ecw/order
"
;
export
default
{
name
:
"
specialNeeds
"
,
created
()
{
this
.
clearFrom
()
},
props
:{
orderId
:{
type
:[
String
,
Number
],
},
show
:
Boolean
,
},
data
(){
return
{
show
:
true
,
getDictDatas
,
DICT_TYPE
,
form
:{},
}
},
methods
:{
clearFrom
(){
this
.
form
=
{
advanceType
:
undefined
,
advanceWho
:
undefined
,
payType
:
undefined
,
todoDetail
:
undefined
,
transCurrency
:
undefined
,
transFee
:
undefined
}
},
submit
(){
specialNeedCreate
(
this
.
form
).
then
(
r
=>
{
console
.
log
(
r
)
if
(
r
.
code
===
0
){
this
.
clearFrom
();
this
.
$emit
(
'
update:show
'
,
false
)
}
})
},
},
watch
:{
orderId
(
val
){
this
.
form
.
orderId
=
val
;
},
'
form.advanceType
'
(
val
){
this
.
form
.
transFee
=
undefined
;
this
.
form
.
transCurrency
=
undefined
;
this
.
form
.
payType
=
undefined
;
}
}
}
...
...
src/views/ecw/order/feeApplication.vue
View file @
e6eff34c
<
template
>
<div
class=
"fee-application"
>
<h1>
费用申请-
NC1231231
<h1>
费用申请-
{{
orderDetails
.
orderNo
}}
</h1>
<el-divider></el-divider>
<el-form
label-width=
"100px"
inline
>
<el-form-item
label=
"订单号:"
><div
class=
"content"
></div></el-form-item>
<el-form-item
label=
"发货人:"
><div
class=
"content"
></div></el-form-item>
<el-form-item
label=
"唛头"
><div
class=
"content"
></div></el-form-item>
<el-form-item>
<el-button>
添加申请
</el-button></el-form-item>
<el-form-item
label=
"订单号:"
><div
class=
"content"
>
{{
orderDetails
.
orderNo
}}
</div></el-form-item>
<el-form-item
label=
"发货人:"
><div
class=
"content"
>
{{
orderDetails
.
consignorVO
.
name
}}
</div></el-form-item>
<el-form-item
label=
"唛头"
><div
class=
"content"
>
{{
orderDetails
.
marks
}}
</div></el-form-item>
<el-form-item>
<el-button
@
click=
"addCost"
>
添加申请
</el-button></el-form-item>
</el-form>
<el-table>
<el-table-column
label=
"序号"
></el-table-column>
<el-table-column
label=
"费用类型"
></el-table-column>
<el-table-column
label=
"金额"
></el-table-column>
<el-table-column
label=
"货币类型"
></el-table-column>
<el-table-column
label=
"付款类型"
></el-table-column>
<el-table-column
label=
"备注"
></el-table-column>
<el-table-column
label=
"确认收款"
></el-table-column>
<el-table-column
label=
"申请人"
></el-table-column>
<el-table-column
label=
"审核人"
></el-table-column>
<el-table-column
label=
"操作"
></el-table-column>
<el-table
:data=
"list"
>
<el-table-column
label=
"序号"
type=
"index"
></el-table-column>
<el-table-column
label=
"费用类型"
>
<template
v-slot:default=
"scope"
>
<dict-selector
:type=
"DICT_TYPE.FEE_TYPE"
v-model=
"scope.row.feeType"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"金额"
>
<
template
v-slot:default =
'scope'
>
<el-input
v-model=
"scope.row.applicationFee"
></el-input>
</
template
>
</el-table-column>
<el-table-column
label=
"货币类型"
>
<
template
v-slot:default =
'scope'
>
<dict-selector
:type=
"DICT_TYPE.COMMISSION_CURRENCY_TYPE"
v-model=
"scope.row.applicationFeeCurrency"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"付款类型"
>
<
template
v-slot:default =
'scope'
>
<dict-selector
:type=
"DICT_TYPE.PAY_TYPE"
v-model=
"scope.row.payType"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"备注"
>
<
template
v-slot:default=
"scope"
>
<el-input
v-model=
"scope.row.remarks"
type=
"textarea"
></el-input>
</
template
>
</el-table-column>
<el-table-column
label=
"确认收款"
>
<
template
v-slot:default =
"scope"
>
<dict-tag
:type=
"DICT_TYPE.RECEIVE_FLAG"
:value=
"scope.row.receiveFlag"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"申请人"
>
<
template
v-slot:default =
"scope"
>
{{
scope
.
row
.
status
==
0
?
'
未提交
'
:
scope
.
row
.
applicationAuthor
}}
</
template
>
</el-table-column>
<el-table-column
label=
"审核人"
>
<
template
v-slot:default =
"scope"
>
{{
scope
.
row
.
status
==
0
?
'
未提交
'
:
scope
.
row
.
shenhe
}}
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
>
<
template
v-slot:default =
'scope'
>
<el-button
type=
"text"
v-if=
"scope.row.status !== 0"
>
{{
status
[
scope
.
row
.
status
]
}}
</el-button>
<el-button
type=
"text"
v-if=
"scope.row.status === 2"
>
修改
</el-button>
</
template
>
</el-table-column>
</el-table>
<div
style=
"text-align: center;margin-top: 20px;"
>
<el-button
style=
"margin-right: 30px;"
>
提交
</el-button>
<el-button
style=
"margin-right: 30px;"
@
click=
"submit"
>
提交
</el-button>
<el-button>
取消
</el-button>
</div>
</div>
</template>
<
script
>
import
{
getOrder
,
feeApplicationListByOrderId
,
feeApplicationCreate
}
from
"
@/api/ecw/order
"
;
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
Template
from
"
@/views/cms/template
"
;
let
status
=
{
0
:
'
未提交
'
,
1
:
'
审核中
'
,
2
:
'
审核通过
'
,
3
:
'
审核不通
'
}
export
default
{
name
:
"
feeApplication
"
name
:
"
feeApplication
"
,
components
:
{
Template
},
props
:{
orderId
:[
Number
,
String
],
},
data
(){
return
{
orderDetails
:{},
list
:[],
DICT_TYPE
,
getDictDatas
,
status
}
},
created
()
{
getOrder
(
this
.
orderId
).
then
(
r
=>
{
this
.
orderDetails
=
r
.
data
})
this
.
feeApplicationFn
();
},
methods
:{
feeApplicationFn
(){
feeApplicationListByOrderId
({
orderId
:
this
.
orderId
}).
then
(
r
=>
{
console
.
log
(
r
)
})
},
addCost
(){
this
.
list
.
push
(
{
orderId
:
this
.
orderId
,
feeType
:
undefined
,
//费用申请类型
applicationFee
:
undefined
,
//金额
applicationFeeCurrency
:
undefined
,
// 费用申请货币类型
remarks
:
undefined
,
receiveFlag
:
0
,
applicationAuthor
:
undefined
,
shenhe
:
undefined
,
status
:
0
,
}
)
},
submit
(){
feeApplicationCreate
(
this
.
list
[
0
]).
then
(
r
=>
{
console
.
log
(
r
);
})
}
}
}
</
script
>
...
...
src/views/ecw/order/index.vue
View file @
e6eff34c
...
...
@@ -147,6 +147,9 @@
v-hasPermi=
"['ecw:order:update']"
>
退仓
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['ecw:order:delete']"
>
删除
</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=
"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>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -185,6 +188,7 @@
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
<special-needs
:show.sync=
"isShow"
:order-id=
"orderId"
></special-needs>
</div>
</template>
...
...
@@ -193,13 +197,15 @@ 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
{
createOrder
,
updateOrder
,
deleteOrder
,
getOrder
,
getOrderPage
,
exportOrderExcel
}
from
"
@/api/ecw/order
"
;
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
export
default
{
name
:
"
Order
"
,
components
:
{
CustomerSelector
,
ProductSelector
,
Selector
CustomerSelector
,
ProductSelector
,
Selector
,
specialNeeds
,
},
filters
:
{
cargoControlStatusFilter
(
e
,
cargoControlStatusList
)
{
...
...
@@ -327,6 +333,8 @@ export default {
denominator
:
''
,
//重货比分母
dateFilterType
:
''
,
//日期筛选类别
dateFilter
:
[],
//筛选日期
isShow
:
false
,
//特殊显示
orderId
:
undefined
,
};
},
computed
:
{
...
...
src/views/ecw/order/singleApplication.vue
View file @
e6eff34c
...
...
@@ -10,12 +10,25 @@
<h1>
货物信息
</h1>
<el-table
border
>
<el-table-column
label=
"序号"
></el-table-column>
<el-table-column
label=
"品名"
></el-table-column>
<el-table-column
label=
"填单货物属性"
></el-table-column>
<el-table-column
label=
"入库货物属性"
></el-table-column>
<el-table-column
label=
"入库统计"
></el-table-column>
<el-table-column
label=
"收款货物属性"
></el-table-column>
<el-table-column
label=
"最后操作时间"
></el-table-column>
<el-table-column
label=
"品名"
>
<template
v-slot:default =
"scope"
>
</
template
>
</el-table-column>
<el-table-column
label=
"填单货物属性"
>
<
template
v-slot:default =
"scope"
></
template
>
</el-table-column>
<el-table-column
label=
"入库货物属性"
>
<
template
v-slot:default =
"scope"
></
template
>
</el-table-column>
<el-table-column
label=
"入库统计"
>
<
template
v-slot:default =
"scope"
></
template
>
</el-table-column>
<el-table-column
label=
"收款货物属性"
>
<
template
v-slot:default =
"scope"
></
template
>
</el-table-column>
<el-table-column
label=
"最后操作时间"
>
<
template
v-slot:default =
"scope"
></
template
>
</el-table-column>
<el-table-column
label=
"状态"
></el-table-column>
</el-table>
<el-row
style=
"margin-top: 20px;line-height: 3;"
type=
"flex"
justify=
"center"
align=
"center"
>
...
...
src/views/member/user/index.vue
View file @
e6eff34c
...
...
@@ -434,7 +434,7 @@ export default {
seTupdateBackletter
({
userId
:
this
.
publicObj
.
id
,
backLetter
:
this
.
guaranteeUrl
}).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
guaranteeShow
=
false
;
this
.
guaranteeUrl
=
true
;
this
.
guaranteeUrl
=
''
;
this
.
$message
.
success
(
'
保存成功
'
);
}
})
...
...
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