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
1d41fc06
Commit
1d41fc06
authored
Jul 31, 2022
by
huyf
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
cfe1ddcd
fd97dd05
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
593 additions
and
60 deletions
+593
-60
orderWarehouseIn.js
src/api/depository/orderWarehouseIn.js
+0
-0
batchSingleApplication.js
src/api/ecw/batchSingleApplication.js
+50
-0
customer.js
src/api/ecw/customer.js
+8
-0
order.js
src/api/ecw/order.js
+17
-1
index.js
src/router/index.js
+28
-14
addAssociatedOrder.vue
src/views/ecw/order/addAssociatedOrder.vue
+4
-2
associatedOrder.vue
src/views/ecw/order/associatedOrder.vue
+15
-1
batchSingleApplication.vue
src/views/ecw/order/batchSingleApplication.vue
+143
-21
ordeDetailsForm.vue
src/views/ecw/order/components/ordeDetailsForm.vue
+6
-6
warehouseDetails.vue
src/views/ecw/order/components/warehouseDetails.vue
+134
-0
feeApplication.vue
src/views/ecw/order/feeApplication.vue
+24
-4
index.vue
src/views/ecw/order/index.vue
+29
-11
transferWarehousing.vue
src/views/ecw/order/transferWarehousing.vue
+67
-0
withdrawal.vue
src/views/ecw/order/withdrawal.vue
+68
-0
No files found.
src/api/
depository/orderWarehouseIn.js
→
src/api/depository/orderWarehouseIn.js
View file @
1d41fc06
File moved
src/api/ecw/batchSingleApplication.js
0 → 100644
View file @
1d41fc06
import
request
from
"
@/utils/request
"
;
import
{
param
}
from
"
@/utils
"
;
//获得可用仓
export
function
warehouseAdjustmentList
(
params
){
return
request
({
url
:
'
/ecw/warehouse/adjustmentList
'
,
method
:
'
post
'
,
params
:
params
})
}
//发起调仓请求
export
function
orderWarehouseInAdjustApply
(
data
){
return
request
({
url
:
'
/order/order-warehouse-in/adjust-apply
'
,
method
:
'
put
'
,
data
:
data
,
})
}
//获取订单列表
export
function
ecwOrderList
(
params
){
return
request
({
url
:
'
/ecw/order/list
'
,
method
:
'
get
'
,
params
:
params
,
})
}
//申请退仓
export
function
orderWarehouseInDelete
(
data
){
return
request
({
url
:
'
/order/order-warehouse-in/rollback-apply
'
,
method
:
'
put
'
,
data
:
data
,
})
}
//通过bpmFormId 获得仓库审核单详情
export
function
warehouseApprovalGetByFormId
(
params
){
return
request
({
url
:
'
order/order-warehouse-approval/get-by-form-id
'
,
method
:
'
get
'
,
params
:
params
})
}
export
function
warehouseAreaPositionList
(
params
){
return
request
({
url
:
'
/ecw/warehouse/list
'
,
method
:
'
get
'
,
params
:
params
})
}
src/api/ecw/customer.js
View file @
1d41fc06
import
request
from
'
@/utils/request
'
import
request
from
'
@/utils/request
'
import
query
from
"
@/views/ecw/customer/query
"
;
import
query
from
"
@/views/ecw/customer/query
"
;
import
*
as
url
from
"
url
"
;
// 创建客户
// 创建客户
export
function
createCustomer
(
data
)
{
export
function
createCustomer
(
data
)
{
...
@@ -147,3 +148,10 @@ export function getMyCustomerService(query){
...
@@ -147,3 +148,10 @@ export function getMyCustomerService(query){
params
:
query
,
params
:
query
,
})
})
}
}
//获取会员列表
export
function
userMemberUserList
(){
return
request
({
url
:
'
/member/user/member-user-list
'
,
method
:
'
get
'
})
}
src/api/ecw/order.js
View file @
1d41fc06
...
@@ -129,6 +129,14 @@ export function getLadingBill(query){
...
@@ -129,6 +129,14 @@ export function getLadingBill(query){
params
:
query
,
params
:
query
,
})
})
}
}
//调仓申请
export
function
orderWarehouseInAdjustApply
(
data
){
return
request
({
url
:
'
/order/order-warehouse-in/adjust-apply
'
,
method
:
'
put
'
,
data
:
data
,
})
}
// 获得入仓货物详情
// 获得入仓货物详情
export
function
getOrderWarehouseIn
(
id
)
{
export
function
getOrderWarehouseIn
(
id
)
{
...
@@ -206,4 +214,12 @@ export function createOrderPickupSplitBatch(data){
...
@@ -206,4 +214,12 @@ export function createOrderPickupSplitBatch(data){
method
:
'
post
'
,
method
:
'
post
'
,
data
data
})
})
}
}
\ No newline at end of file
//根据流程ID获得订单信息
export
function
applicationGetOrderByProcessId
(
params
){
return
request
({
url
:
'
order/fee-application/getOrderByProcessId
'
,
method
:
'
get
'
,
params
})
}
src/router/index.js
View file @
1d41fc06
...
@@ -309,25 +309,15 @@ export const constantRoutes = [
...
@@ -309,25 +309,15 @@ export const constantRoutes = [
}
}
},
},
{
{
path
:
'
single-application/:orderId
'
,
path
:
'
batch-single-application
'
,
component
:(
resolve
)
=>
require
([
'
@/views/ecw/order/singleApplication
'
],
resolve
),
props
:
true
,
name
:
'
singleApplication
'
,
meta
:
{
title
:
'
调仓申请
'
,
icon
:
''
,
activeMenu
:
'
/order/singleApplication
'
}
},
{
path
:
'
batch-single-application/:orderId
'
,
component
:(
resolve
)
=>
require
([
'
@/views/ecw/order/batchSingleApplication
'
],
resolve
),
component
:(
resolve
)
=>
require
([
'
@/views/ecw/order/batchSingleApplication
'
],
resolve
),
name
:
'
batchSingleApplication
'
,
name
:
'
batchSingleApplication
'
,
props
:
route
=>
({
orderList
:
route
.
query
.
list
}),
meta
:
{
meta
:
{
title
:
'
批量调仓申请
'
,
title
:
'
批量调仓申请
'
,
icon
:
''
,
icon
:
''
,
activeMenu
:
'
/order/batchSingleApplication
'
activeMenu
:
'
/order/batchSingleApplication
'
,
noCache
:
true
}
}
},
},
{
{
...
@@ -364,6 +354,30 @@ export const constantRoutes = [
...
@@ -364,6 +354,30 @@ export const constantRoutes = [
activeMenu
:
'
/order/notMutexOrder
'
,
activeMenu
:
'
/order/notMutexOrder
'
,
noCache
:
true
,
noCache
:
true
,
}
}
},
{
path
:
'
withdrawal/:orderId
'
,
component
:()
=>
import
(
'
@/views/ecw/order/withdrawal
'
),
name
:
'
withdrawal
'
,
props
:
true
,
meta
:{
title
:
'
退仓
'
,
icon
:
''
,
activeMenu
:
'
order/withdrawal
'
,
noCache
:
true
,
}
},
{
path
:
'
transfer-warehousing/:orderId
'
,
component
:()
=>
import
(
'
@/views/ecw/order/transferWarehousing
'
),
name
:
'
transferWarehousing
'
,
props
:
true
,
meta
:{
title
:
'
调拨出仓
'
,
icon
:
''
,
activeMenu
:
'
order/transferWarehousing
'
,
noCache
:
true
,
}
}
}
],
],
},
},
...
...
src/views/ecw/order/addAssociatedOrder.vue
View file @
1d41fc06
...
@@ -24,8 +24,10 @@
...
@@ -24,8 +24,10 @@
<el-table-column
label=
"序号"
type=
"index"
></el-table-column>
<el-table-column
label=
"序号"
type=
"index"
></el-table-column>
<el-table-column
label=
"订单号"
prop=
"orderNo"
></el-table-column>
<el-table-column
label=
"订单号"
prop=
"orderNo"
></el-table-column>
<el-table-column
label=
"唛头"
prop=
"marks"
></el-table-column>
<el-table-column
label=
"唛头"
prop=
"marks"
></el-table-column>
<el-table-column
label=
"货物数据"
></el-table-column>
<el-table-column
label=
"货物数据"
>
<el-table-column
label=
"入仓时间"
prop=
"rucangtime"
></el-table-column>
</el-table-column>
<el-table-column
label=
"入仓时间"
prop=
"rucangTime"
></el-table-column>
<el-table-column
label=
"状态"
>
<el-table-column
label=
"状态"
>
<template
v-slot:default=
"scope"
>
<template
v-slot:default=
"scope"
>
<dict-tag
:value=
"scope.row.status"
:type=
"DICT_TYPE.ORDER_STATUS"
></dict-tag>
<dict-tag
:value=
"scope.row.status"
:type=
"DICT_TYPE.ORDER_STATUS"
></dict-tag>
...
...
src/views/ecw/order/associatedOrder.vue
View file @
1d41fc06
...
@@ -42,7 +42,11 @@
...
@@ -42,7 +42,11 @@
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"操作人"
></el-table-column>
<el-table-column
label=
"操作人"
></el-table-column>
<el-table-column
label=
"操作时间"
prop=
"createTime"
></el-table-column>
<el-table-column
label=
"操作时间"
>
<
template
v-slot=
"{row}"
>
{{
parseTime
(
row
.
createTime
)
}}
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
>
<el-table-column
label=
"操作"
>
<
template
v-slot:default=
'scope'
>
<
template
v-slot:default=
'scope'
>
<el-button
type=
"text"
@
click =
"guanlianOrderByOrderId(scope.row.orderId)"
>
<el-button
type=
"text"
@
click =
"guanlianOrderByOrderId(scope.row.orderId)"
>
...
@@ -72,6 +76,16 @@ export default {
...
@@ -72,6 +76,16 @@ export default {
components
:{
components
:{
ordeDetailsForm
ordeDetailsForm
},
},
computed
:{
check
(){
let
flag
=
true
;
if
(
this
.
list
.
length
===
1
&&
this
.
list
[
0
].
status
===
5
){
flag
=
false
}
else
{
}
}
},
data
(){
data
(){
return
{
return
{
orderDetails
:{},
orderDetails
:{},
...
...
src/views/ecw/order/batchSingleApplication.vue
View file @
1d41fc06
<
template
>
<
template
>
<div
class=
"batch-single-application"
>
<div
class=
"batch-single-application"
>
<h1
class=
"title"
>
批量调仓申请
</h1>
<h1
class=
"title"
>
调仓申请
</h1>
<el-table>
<el-table
:data=
"list"
>
<el-table-column
label=
"订单编号"
></el-table-column>
<el-table-column
label=
"订单编号"
prop=
"orderNo"
></el-table-column>
<el-table-column
label=
"唛头"
></el-table-column>
<el-table-column
label=
"唛头"
prop=
"marks"
></el-table-column>
<el-table-column
label=
"已到箱数/总箱数"
></el-table-column>
<el-table-column
label=
"已到箱数/总箱数"
>
<el-table-column
label=
"下单统计"
></el-table-column>
<template
v-slot =
{row}>
<el-table-column
label=
"入仓统计"
></el-table-column>
{{
row
.
sumQuantity
||
0
}}
/
{{
row
.
totalNum
}}
<el-table-column
label=
"运输方式"
></el-table-column>
</
template
>
<el-table-column
label=
"出货渠道"
></el-table-column>
</el-table-column>
<el-table-column
label=
"始发仓"
></el-table-column>
<el-table-column
label=
"下单统计"
>
<el-table-column
label=
"目的地"
></el-table-column>
<el-table-column
label=
"送货时间"
></el-table-column>
</el-table-column>
<el-table-column
label=
"入仓统计"
width=
"150"
>
<
template
v-slot=
"{row}"
>
<div>
总箱数:
{{
row
.
sumNum
||
0
}}
</div>
<div>
体积:
{{
row
.
sumVolume
||
0
}}
CBM
</div>
<div>
重量:
{{
row
.
sumWeight
||
0
}}
KG
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"入仓时间"
>
</el-table-column>
<el-table-column
label=
"运输方式"
>
<
template
v-slot =
{row}
>
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"row.transportId"
></dict-tag>
</
template
>
</el-table-column>
<el-table-column
label=
"出货渠道"
>
</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>
<p>
</p>
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"收货人"
>
<
template
v-slot=
"{row}"
>
<div>
<p>
{{
row
.
consigneeName
}}
</p>
<p>
{{
row
.
consigneePhone
}}
</p>
</div>
</
template
>
</el-table-column>
</el-table>
</el-table>
<div
style=
"display: flex;justify-content:center; margin-top: 20px"
>
<div
style=
"display: flex;justify-content:center; margin-top: 20px"
>
<div
style=
"width: 300px;height: 50px;border: 1px solid; margin: 0 10px"
></div>
<div
style=
"width: 200px; margin: 0 10px"
>
<div
style=
"width: 300px;height: 50px;border: 1px solid;"
></div>
{{list[0].startWarehouseName}}
</div>
<div
style=
"width: 200px;"
>
<el-select
v-model=
"params.warehouseInId"
>
<el-option
v-for=
"(item ,index) in availableWarehouse"
:value=
"item.id"
:label=
"item.titleZh"
:key=
"index"
></el-option>
</el-select>
</div>
</div>
</div>
<el-divider></el-divider>
<el-divider></el-divider>
<h1
class=
"title"
>
<h1
class=
"title"
>
审批流程
审批流程
</h1>
</h1>
<div
style=
"padding: 20px"
>
<my-process-viewer
key=
"designer"
v-model=
"bpmnXML"
v-bind=
"bpmnControlForm"
/>
</div>
<div
style=
"height: 100px"
></div>
<div
style=
"height: 100px"
></div>
<el-form
label-width=
"200px"
>
<!-- <el-form label-width="200px">--
>
<el-form-item
label=
"抄送"
></el-form-item
>
<!-- <el-form-item label="抄送"></el-form-item>--
>
<el-form-item
label=
"抄送人"
></el-form-item
>
<!-- <el-form-item label="抄送人"></el-form-item>--
>
</el-form
>
<!-- </el-form>--
>
<div
style=
"text-align: center"
>
<div
style=
"text-align: center"
>
<el-button
style=
"margin-right: 50px"
>
提交申请
</el-button>
<el-button
style=
"margin-right: 50px"
@
click=
"submit"
:disabled=
"isSubmit"
>
提交申请
</el-button>
<el-button>
取消
</el-button>
<el-button
@
click=
"$router.push('/order/order')"
>
取消
</el-button>
</div>
</div>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
DICT_TYPE
,
getDictDatas
}
from
"
@/utils/dict
"
;
import
{
ecwOrderList
,
orderWarehouseInAdjustApply
,
warehouseAdjustmentList
,
}
from
"
@/api/ecw/batchSingleApplication
"
;
import
{
getProcessDefinitionBpmnXMLByKey
}
from
"
@/api/bpm/definition
"
;
import
warehouseDetails
from
"
@/views/ecw/order/components/warehouseDetails
"
;
export
default
{
export
default
{
name
:
"
batchSingleApplication
"
name
:
"
batchSingleApplication
"
,
props
:{
orderList
:
String
,
},
components
:{
warehouseDetails
},
created
()
{
this
.
list
=
JSON
.
parse
(
this
.
orderList
);
warehouseAdjustmentList
({
id
:
this
.
list
[
0
].
startWarehouseId
}).
then
(
r
=>
this
.
availableWarehouse
=
r
.
data
)
getProcessDefinitionBpmnXMLByKey
(
"
warehouse_transfer
"
).
then
(
response
=>
{
this
.
bpmnXML
=
response
.
data
})
},
computed
:{
isSubmit
(){
let
flag
=
true
;
if
(
this
.
list
.
length
===
1
&&
this
.
list
[
0
].
status
===
5
){
flag
=
false
}
else
{
let
l
=
this
.
list
.
map
(
e
=>
e
.
startWarehouseId
)
if
(
this
.
list
.
every
(
e
=>
e
.
status
===
5
)
&&
[...
new
Set
(
l
)].
length
===
1
)
flag
=
false
}
return
flag
;
}
},
data
(){
return
{
list
:[],
availableWarehouse
:[],
DICT_TYPE
,
departureWarehouse
:
undefined
,
adjustment
:
undefined
,
params
:{
orderIds
:
undefined
,
warehouseInId
:
undefined
,
warehouseOutId
:
undefined
},
bpmnXML
:
null
,
bpmnControlForm
:
{
prefix
:
"
activiti
"
},
}
},
methods
:{
submit
(){
let
p
=
this
.
list
.
map
(
e
=>
e
.
orderId
).
join
(
'
,
'
);
this
.
params
.
orderIds
=
p
;
this
.
params
.
warehouseOutId
=
this
.
list
[
0
].
startWarehouseId
;
this
.
params
.
orderNo
=
this
.
list
[
0
].
orderNo
orderWarehouseInAdjustApply
(
this
.
params
).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
$message
.
success
(
'
调仓成功
'
);
}
})
}
}
}
}
</
script
>
</
script
>
...
@@ -45,6 +158,15 @@ export default {
...
@@ -45,6 +158,15 @@ export default {
box-sizing
:
border-box
;
box-sizing
:
border-box
;
.title
{
.title
{
font-weight
:
600
;
font-weight
:
600
;
text-align
:
left
;
}
}
}
}
.my-process-designer
{
height
:
calc
(
100vh
-
200px
);
}
.box-card
{
width
:
100%
;
margin-bottom
:
20px
;
}
</
style
>
</
style
>
src/views/ecw/order/components/ordeDetailsForm.vue
View file @
1d41fc06
...
@@ -2,24 +2,24 @@
...
@@ -2,24 +2,24 @@
<div>
<div>
<el-descriptions
class=
"margin-top"
border
:column=
"4"
>
<el-descriptions
class=
"margin-top"
border
:column=
"4"
>
<el-descriptions-item
label=
"唛头"
>
{{
details
.
marks
}}
</el-descriptions-item>
<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
.
sumQuantity
||
0
}}
/
{{
details
.
totalsumNum
||
0
}}
</el-descriptions-item>
<el-descriptions-item
label=
"订单状态"
>
<el-descriptions-item
label=
"订单状态"
>
<dict-tag
:type=
"DICT_TYPE.ORDER_ABNORMAL_STATE"
:value=
"details.status"
/>
<dict-tag
:type=
"DICT_TYPE.ORDER_ABNORMAL_STATE"
:value=
"details.status"
/>
</el-descriptions-item>
</el-descriptions-item>
<el-descriptions-item
label=
"送货日期"
>
{{}}
</el-descriptions-item>
<el-descriptions-item
label=
"送货日期"
></el-descriptions-item>
<el-descriptions-item
label=
"运输方式"
>
<el-descriptions-item
label=
"运输方式"
>
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"details.transportId"
></dict-tag>
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"details.transportId"
></dict-tag>
</el-descriptions-item>
</el-descriptions-item>
<el-descriptions-item
label=
"出货渠道"
>
<el-descriptions-item
label=
"出货渠道"
>
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"details.channelId"
></dict-tag>
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"details.channelId"
></dict-tag>
</el-descriptions-item>
</el-descriptions-item>
<el-descriptions-item
label=
"始发地"
>
{{
details
.
logisticsInfoDto
.
start
WarehouseId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"始发地"
>
{{
details
.
logisticsInfoDto
.
start
TitleZh
}}
</el-descriptions-item>
<el-descriptions-item
label=
"目的地"
>
{{
details
.
logisticsInfoDto
.
dest
WarehouseId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"目的地"
>
{{
details
.
logisticsInfoDto
.
dest
TitleZh
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人姓名"
>
{{
details
.
consignorVO
.
customerId
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人姓名"
>
{{
details
.
consignorVO
.
name
}}
</el-descriptions-item>
<el-descriptions-item
label=
"发货人公司"
>
{{
details
.
consignorVO
.
company
}}
</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
label=
"发货人电话"
>
{{
details
.
consignorVO
.
phone
}}
</el-descriptions-item>
<el-descriptions-item></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
.
name
}}
</el-descriptions-item>
<el-descriptions-item
label=
"收货人公司"
>
{{
details
.
consigneeVO
.
company
}}
</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
label=
"收货人电话"
>
{{
details
.
consigneeVO
.
phone
}}
</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
...
...
src/views/ecw/order/components/warehouseDetails.vue
0 → 100644
View file @
1d41fc06
<
template
>
<div>
<h1>
申请信息【订单信息】
</h1>
<el-table
v-if=
"type === 1"
>
<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-column
label=
"发货人"
>
</el-table-column>
<el-table-column
label=
"收货人"
>
</el-table-column>
</el-table>
<el-descriptions
v-else
:column=
"4"
border
>
<el-descriptions-item
label=
"订单号"
>
{{
FeeDetails
.
orderNo
}}
</el-descriptions-item>
<el-descriptions-item
label=
"运输方式"
>
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"FeeDetails.transportId"
></dict-tag>
</el-descriptions-item>
<el-descriptions-item
label=
"出货方式"
>
{{
selectChannel
(
FeeDetails
.
channelId
)
}}
</el-descriptions-item>
<el-descriptions-item
label=
"订单状态"
>
<dict-tag
:type=
"DICT_TYPE.ORDER_ABNORMAL_STATE"
:value=
"FeeDetails.abnormalState"
></dict-tag>
</el-descriptions-item>
<el-descriptions-item
label=
"唛头"
>
{{
FeeDetails
.
marks
}}
</el-descriptions-item>
<el-descriptions-item
label=
"始发仓"
>
{{
FeeDetails
.
startWarehouse
}}
</el-descriptions-item>
<el-descriptions-item
label=
"目的仓"
>
{{
FeeDetails
.
destWarehouse
}}
</el-descriptions-item>
</el-descriptions>
<div
v-if=
"type === 1"
>
<p>
申请说明
</p>
<div
>
从【
{{
selectWarehouse
(
FeeDetails
.
details
&&
FeeDetails
.
details
.
warehouseInId
?
FeeDetails
.
details
.
warehouseInId
:
''
)
}}
】 调到
【
{{
selectWarehouse
(
FeeDetails
.
details
&&
FeeDetails
.
details
.
warehouseOutId
?
FeeDetails
.
details
.
warehouseOutId
:
''
)
}}
】
</div>
</div>
<div
v-if=
"type === 2"
>
<p>
申请理由
</p>
<div>
{{
FeeDetails
.
remarks
}}
</div>
</div>
</div>
</
template
>
<
script
>
import
{
warehouseApprovalGetByFormId
,
warehouseAreaPositionList
}
from
"
@/api/ecw/batchSingleApplication
"
;
import
{
applicationGetOrderByProcessId
}
from
"
@/api/ecw/order
"
;
import
{
getChannelList
}
from
'
@/api/ecw/channel
'
;
export
default
{
props
:{
type
:{
type
:
Number
,
default
:
2
,
},
processId
:{
type
:[
Number
,
String
],
}
},
name
:
"
warehouseDetails
"
,
data
(){
return
{
FeeDetails
:{},
transfer
:{},
warehouseList
:[],
channelList
:[]
}
},
created
()
{
getChannelList
().
then
(
r
=>
this
.
channelList
=
r
.
data
);
warehouseAreaPositionList
().
then
(
r
=>
this
.
warehouseList
=
r
.
data
)
switch
(
this
.
type
){
case
1
:
warehouseApprovalGetByFormId
({
formId
:
this
.
processId
}).
then
(
r
=>
{
this
.
FeeDetails
=
r
.
data
this
.
FeeDetails
.
details
=
JSON
.
parse
(
r
.
data
.
details
)
});
break
;
case
2
:
applicationGetOrderByProcessId
({
processId
:
this
.
processId
}).
then
(
r
=>
this
.
FeeDetails
=
r
.
data
)
break
;
}
},
methods
:{
selectWarehouse
(
val
){
if
(
this
.
warehouseList
.
length
>
0
){
return
this
.
warehouseList
.
find
(
e
=>
e
.
id
===
val
).
titleZh
}
return
''
},
selectChannel
(
val
){
if
(
this
.
channelList
.
length
>
0
)
return
this
.
channelList
.
find
(
e
=>
e
.
channelId
===
val
).
nameEn
return
''
}
}
}
</
script
>
<
style
scoped
>
</
style
>
src/views/ecw/order/feeApplication.vue
View file @
1d41fc06
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
<el-table-column
label=
"序号"
type=
"index"
></el-table-column>
<el-table-column
label=
"序号"
type=
"index"
></el-table-column>
<el-table-column
label=
"费用类型"
>
<el-table-column
label=
"费用类型"
>
<template
v-slot:default =
"scope"
>
<template
v-slot:default =
"scope"
>
<dict-selector
:disabled=
"isModify[forbidden(scope.row)]"
:type=
"DICT_TYPE.FEE_TYPE"
v-model=
"scope.row.feeType"
/>
<dict-selector
:disabled=
"isModify[forbidden(scope.row)]"
:type=
"DICT_TYPE.FEE_TYPE"
v-model=
"scope.row.feeType"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"金额"
>
<el-table-column
label=
"金额"
>
...
@@ -59,6 +59,9 @@
...
@@ -59,6 +59,9 @@
<el-button
style=
"margin-right: 30px;"
@
click=
"submit"
>
提交
</el-button>
<el-button
style=
"margin-right: 30px;"
@
click=
"submit"
>
提交
</el-button>
<el-button>
取消
</el-button>
<el-button>
取消
</el-button>
</div>
</div>
<div
style=
"padding: 20px"
>
<my-process-viewer
key=
"designer"
v-model=
"bpmnXML"
v-bind=
"bpmnControlForm"
/>
</div>
</div>
</div>
</template>
</template>
...
@@ -66,6 +69,7 @@
...
@@ -66,6 +69,7 @@
import
{
getOrder
,
feeApplicationCreate
,
ApplicationListByOrderId
,
applicationUpdate
}
from
"
@/api/ecw/order
"
;
import
{
getOrder
,
feeApplicationCreate
,
ApplicationListByOrderId
,
applicationUpdate
}
from
"
@/api/ecw/order
"
;
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
Template
from
"
@/views/cms/template
"
;
import
Template
from
"
@/views/cms/template
"
;
import
{
getProcessDefinitionBpmnXMLByKey
}
from
"
@/api/bpm/definition
"
;
export
default
{
export
default
{
name
:
"
feeApplication
"
,
name
:
"
feeApplication
"
,
components
:
{
Template
},
components
:
{
Template
},
...
@@ -80,7 +84,11 @@ export default {
...
@@ -80,7 +84,11 @@ export default {
getDictDatas
,
getDictDatas
,
STATUS
:{},
STATUS
:{},
isModify
:[],
isModify
:[],
isModifyIf
:
false
isModifyIf
:
false
,
bpmnXML
:
null
,
bpmnControlForm
:
{
prefix
:
"
activiti
"
},
}
}
},
},
created
()
{
created
()
{
...
@@ -92,7 +100,10 @@ export default {
...
@@ -92,7 +100,10 @@ export default {
this
.
getOrderList
()
this
.
getOrderList
()
this
.
getDictDatas
(
this
.
DICT_TYPE
.
AUDIT_STATUS
).
forEach
(
e
=>
{
this
.
getDictDatas
(
this
.
DICT_TYPE
.
AUDIT_STATUS
).
forEach
(
e
=>
{
this
.
STATUS
[
e
.
value
]
=
e
.
label
this
.
STATUS
[
e
.
value
]
=
e
.
label
})
}),
getProcessDefinitionBpmnXMLByKey
(
"
free_apply
"
).
then
(
response
=>
{
this
.
bpmnXML
=
response
.
data
})
},
},
computed
:{
computed
:{
forbidden
(){
forbidden
(){
...
@@ -145,13 +156,14 @@ export default {
...
@@ -145,13 +156,14 @@ export default {
if
(
r
.
code
===
0
){
if
(
r
.
code
===
0
){
this
.
list
=
r
.
data
;
this
.
list
=
r
.
data
;
this
.
list
.
forEach
(()
=>
this
.
isModify
.
push
(
true
))
this
.
list
.
forEach
(()
=>
this
.
isModify
.
push
(
true
))
let
p
=
this
.
list
.
find
(
e
=>
e
.
status
===
1
)
}
}
})
})
},
},
modify
(
row
){
modify
(
row
){
this
.
isModifyIf
=
true
;
this
.
isModifyIf
=
true
;
this
.
$set
(
this
.
isModify
,
this
.
list
.
findIndex
(
e
=>
e
.
id
=
row
.
id
),
false
)
this
.
$set
(
this
.
isModify
,
this
.
list
.
findIndex
(
e
=>
e
.
id
=
row
.
id
),
false
)
}
}
,
}
}
}
}
</
script
>
</
script
>
...
@@ -167,4 +179,12 @@ export default {
...
@@ -167,4 +179,12 @@ export default {
width
:
200px
;
width
:
200px
;
}
}
}
}
.my-process-designer
{
height
:
calc
(
100vh
-
200px
);
}
.box-card
{
width
:
100%
;
margin-bottom
:
20px
;
}
</
style
>
</
style
>
src/views/ecw/order/index.vue
View file @
1d41fc06
...
@@ -166,7 +166,7 @@
...
@@ -166,7 +166,7 @@
v-hasPermi=
"['ecw:order:delete']"
>
删除
</el-button>
v-hasPermi=
"['ecw:order:delete']"
>
删除
</el-button>
<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
<
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
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=
"$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=
"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/associated-order/$
{scope.row.orderId}`)" >关联
</el-button>
...
@@ -176,9 +176,18 @@
...
@@ -176,9 +176,18 @@
<el-button
type=
"text"
size=
"mini"
@
click=
"$router.push(`/order/release?orderId=$
{scope.row.orderId}`)">确认放货
</el-button>
<el-button
type=
"text"
size=
"mini"
@
click=
"$router.push(`/order/release?orderId=$
{scope.row.orderId}`)">确认放货
</el-button>
</div>
</div>
</el-popover>
</el-popover>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['ecw:order:update']"
>
编辑
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
入仓
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['ecw:order:update']"
>
退仓
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"$router.push('/order/special?id=' + scope.row.orderId)"
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-popover
<el-popover
style=
"margin-left: 10px;"
style=
"margin-left: 10px;"
...
@@ -189,10 +198,11 @@
...
@@ -189,10 +198,11 @@
<div
style=
" display:flex; flex-direction:column"
>
<div
style=
" display:flex; flex-direction:column"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
入仓
</el-button>
v-hasPermi=
"['ecw:order:update']"
>
入仓
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row
)"
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"$router.push(`/order/withdrawal/$
{scope.row.orderId}`
)"
v-hasPermi="['ecw:order:update']">退仓
</el-button>
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:JSON.stringify([scope.row])}})" >调仓
</el-button>
</div>
</div>
</el-popover>
</el-popover>
<!--打印相关的-->
<!--打印相关的-->
...
@@ -208,7 +218,7 @@
...
@@ -208,7 +218,7 @@
</div>
</div>
<el-button
type=
"text"
slot=
"reference"
>
打印
</el-button>
<el-button
type=
"text"
slot=
"reference"
>
打印
</el-button>
</el-popover>
</el-popover>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -313,7 +323,7 @@ export default {
...
@@ -313,7 +323,7 @@ export default {
page
:
1
,
page
:
1
,
rows
:
10
rows
:
10
},
},
/* productRecordList: getDictDatas(DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE),
/* productRecordList: getDictDatas(DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE),
cargoControlStatusList: getDictDatas(DICT_TYPE.CONTROL_GOODS_STATUS),
cargoControlStatusList: getDictDatas(DICT_TYPE.CONTROL_GOODS_STATUS),
customsTypeList: getDictDatas(DICT_TYPE.ECW_CUSTOMS_TYPE),
customsTypeList: getDictDatas(DICT_TYPE.ECW_CUSTOMS_TYPE),
...
@@ -334,6 +344,7 @@ export default {
...
@@ -334,6 +344,7 @@ export default {
orderId
:
undefined
,
orderId
:
undefined
,
/* DICT_TYPE,
/* DICT_TYPE,
getDictDatas */
getDictDatas */
adjustmentList
:[]
};
};
},
},
computed
:
{
computed
:
{
...
@@ -385,6 +396,7 @@ export default {
...
@@ -385,6 +396,7 @@ export default {
this
.
getList
()
this
.
getList
()
})
})
},
},
/** 查询列表 */
/** 查询列表 */
getList
()
{
getList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
...
@@ -403,7 +415,7 @@ export default {
...
@@ -403,7 +415,7 @@ export default {
this
.
loading
=
false
;
this
.
loading
=
false
;
});
});
},
},
/** 搜索按钮操作 */
/** 搜索按钮操作 */
handleQuery
()
{
handleQuery
()
{
this
.
queryParams
.
pageNo
=
1
;
this
.
queryParams
.
pageNo
=
1
;
...
@@ -422,7 +434,7 @@ export default {
...
@@ -422,7 +434,7 @@ export default {
handleUpdate
(
row
)
{
handleUpdate
(
row
)
{
this
.
$router
.
push
(
'
edit?id=
'
+
row
.
orderId
)
this
.
$router
.
push
(
'
edit?id=
'
+
row
.
orderId
)
},
},
/** 导出按钮操作 */
/** 导出按钮操作 */
handleExport
()
{
handleExport
()
{
// 处理查询参数
// 处理查询参数
...
@@ -440,8 +452,14 @@ export default {
...
@@ -440,8 +452,14 @@ export default {
this
.
ids
=
selection
.
map
(
item
=>
item
.
orderId
)
this
.
ids
=
selection
.
map
(
item
=>
item
.
orderId
)
this
.
single
=
selection
.
length
!==
1
this
.
single
=
selection
.
length
!==
1
this
.
multiple
=
!
selection
.
length
this
.
multiple
=
!
selection
.
length
this
.
adjustmentList
=
selection
;
},
handleEdit
()
{
this
.
$router
.
push
({
path
:
'
/order/batch-single-application
'
,
query
:{
list
:
JSON
.
stringify
(
this
.
adjustmentList
)}
})
},
},
handleEdit
()
{
},
moleculeChange
()
{
},
moleculeChange
()
{
},
denominatorChange
()
{
},
denominatorChange
()
{
},
specialRendering
(
val
){
specialRendering
(
val
){
...
@@ -461,7 +479,7 @@ export default {
...
@@ -461,7 +479,7 @@ export default {
}
}
}
}
)
)
}
}
,
}
}
};
};
</
script
>
</
script
>
src/views/ecw/order/transferWarehousing.vue
0 → 100644
View file @
1d41fc06
<
template
>
<div
style=
"padding: 0 20px"
>
<h1>
调拨出仓
</h1>
<el-divider
content-position=
"left"
>
订单信息
</el-divider>
<ordeDetailsForm
:details=
"
{}">
</ordeDetailsForm>
<el-divider
content-position=
"left"
>
货物信息
</el-divider>
<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>
<el-divider
content-position=
"left"
>
调仓明细
</el-divider>
<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>
<el-descriptions
:column=
"4"
border
>
<el-descriptions-item
label=
"集运仓库"
>
kooriookami
</el-descriptions-item>
<el-descriptions-item
label=
"储位"
>
18100000000
</el-descriptions-item>
<el-descriptions-item
label=
"调拨目标仓"
>
苏州市
</el-descriptions-item>
<el-descriptions-item
label=
"物流公司"
></el-descriptions-item>
<el-descriptions-item
label=
"物流单号"
>
1188 号
</el-descriptions-item>
<el-descriptions-item
label=
"联系电话"
>
1188 号
</el-descriptions-item>
<el-descriptions-item
label=
"出仓日期"
>
1188 号
</el-descriptions-item>
<el-descriptions-item
label=
"到仓日期"
>
1188 号
</el-descriptions-item>
</el-descriptions>
<el-divider
content-position=
"left"
>
出仓影像
</el-divider>
<el-from>
<el-form-item
label=
"备注"
></el-form-item>
</el-from>
<div>
<el-button>
确认出仓
</el-button>
<el-button>
返回
</el-button>
</div>
</div>
</
template
>
<
script
>
import
ordeDetailsForm
from
"
@/views/ecw/order/components/ordeDetailsForm
"
;
export
default
{
name
:
"
transferWarehousing
"
,
components
:{
ordeDetailsForm
},
}
</
script
>
<
style
scoped
>
</
style
>
src/views/ecw/order/withdrawal.vue
0 → 100644
View file @
1d41fc06
<
template
>
<div
style=
"padding: 0 20px"
>
<h1>
申请退仓-
{{
orderDetails
.
orderNo
}}
</h1>
<el-divider></el-divider>
<el-form
label-width=
"150px"
>
<el-form-item
label=
"退仓原因"
>
<el-input
v-model=
"params.reason"
style=
"width:500px"
type=
"textarea"
></el-input>
</el-form-item>
</el-form>
<el-divider></el-divider>
<h2>
审批流程
</h2>
<div
style=
"padding: 20px"
>
<my-process-viewer
key=
"designer"
v-model=
"bpmnXML"
v-bind=
"bpmnControlForm"
/>
</div>
<div>
<el-button
@
click=
"submit"
type=
"primary"
style=
"margin-right: 20px;"
>
确定退仓
</el-button>
<el-button
@
click=
"$router.push('/order/order')"
>
不,再考虑考虑
</el-button>
</div>
</div>
</
template
>
<!--退仓-->
<
script
>
import
{
getOrder
}
from
"
@/api/ecw/order
"
;
import
{
orderWarehouseInDelete
}
from
"
@/api/ecw/batchSingleApplication
"
;
import
{
getProcessDefinitionBpmnXMLByKey
}
from
"
@/api/bpm/definition
"
;
export
default
{
name
:
"
withdrawal
"
,
props
:{
orderId
:
String
},
data
(){
return
{
orderDetails
:{},
bpmnXML
:
null
,
bpmnControlForm
:
{
prefix
:
"
activiti
"
},
params
:{
orderId
:
undefined
,
orderNo
:
undefined
,
reason
:
''
,
}
}
},
created
()
{
getOrder
(
this
.
orderId
).
then
(
r
=>
this
.
orderDetails
=
r
.
data
);
getProcessDefinitionBpmnXMLByKey
(
"
retired_warehouse
"
).
then
(
response
=>
{
this
.
bpmnXML
=
response
.
data
})
},
methods
:{
submit
(){
this
.
params
.
orderId
=
this
.
orderDetails
.
orderId
;
this
.
params
.
orderNo
=
this
.
orderDetails
.
orderNo
;
orderWarehouseInDelete
(
this
.
params
).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
$message
.
success
(
'
退仓成功
'
);
}
})
}
}
}
</
script
>
<
style
scoped
>
</
style
>
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