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
b3e2bdb5
Commit
b3e2bdb5
authored
Jul 27, 2022
by
huhaiqing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
海运出货修改
parent
bd6a558e
Changes
24
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
475 additions
and
351 deletions
+475
-351
constant.js
src/views/ecw/box/shippingSea/constant.js
+380
-0
agent.vue
src/views/ecw/box/shippingSea/nodePage/agent.vue
+2
-1
arrival.vue
src/views/ecw/box/shippingSea/nodePage/arrival.vue
+1
-0
barge.vue
src/views/ecw/box/shippingSea/nodePage/barge.vue
+2
-1
blCopy.vue
src/views/ecw/box/shippingSea/nodePage/blCopy.vue
+1
-0
booking.vue
src/views/ecw/box/shippingSea/nodePage/booking.vue
+10
-9
index.vue
src/views/ecw/box/shippingSea/nodePage/cabinet/index.vue
+1
-0
clrDocument.vue
src/views/ecw/box/shippingSea/nodePage/clrDocument.vue
+1
-0
dockSelect.vue
src/views/ecw/box/shippingSea/nodePage/common/dockSelect.vue
+3
-1
supplierSelect.vue
...ws/ecw/box/shippingSea/nodePage/common/supplierSelect.vue
+3
-2
userSelect.vue
src/views/ecw/box/shippingSea/nodePage/common/userSelect.vue
+3
-1
cusClearance.vue
src/views/ecw/box/shippingSea/nodePage/cusClearance.vue
+1
-0
cusDeclaration.vue
src/views/ecw/box/shippingSea/nodePage/cusDeclaration.vue
+1
-0
departure.vue
src/views/ecw/box/shippingSea/nodePage/departure.vue
+1
-0
preinstall.vue
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
+2
-1
regError.vue
src/views/ecw/box/shippingSea/nodePage/regError.vue
+1
-0
settlement.vue
src/views/ecw/box/shippingSea/nodePage/settlement.vue
+1
-0
ship.vue
src/views/ecw/box/shippingSea/nodePage/ship.vue
+1
-0
subMaterial.vue
src/views/ecw/box/shippingSea/nodePage/subMaterial.vue
+8
-7
trailer.vue
src/views/ecw/box/shippingSea/nodePage/trailer.vue
+2
-1
index.vue
src/views/ecw/box/shippingSea/nodePage/unloading/index.vue
+1
-0
seaProcess.vue
src/views/ecw/box/shippingSea/seaProcess.vue
+34
-6
seaStepDetail.vue
src/views/ecw/box/shippingSea/seaStepDetail.vue
+2
-0
shippingSea.vue
src/views/ecw/box/shippingSea/shippingSea.vue
+13
-321
No files found.
src/views/ecw/box/shippingSea/constant.js
0 → 100644
View file @
b3e2bdb5
const
statusName
=
new
Map
();
statusName
.
set
(
11
,
"
未订舱
"
);
statusName
.
set
(
12
,
"
已订舱
"
);
statusName
.
set
(
21
,
"
未预装
"
);
statusName
.
set
(
22
,
"
预装审核中
"
);
statusName
.
set
(
23
,
"
预装审核失败
"
);
statusName
.
set
(
24
,
"
预装审核成功
"
);
statusName
.
set
(
31
,
"
未派车
"
);
statusName
.
set
(
32
,
"
已派车
"
);
statusName
.
set
(
41
,
"
未装柜
"
);
statusName
.
set
(
42
,
"
装柜中
"
);
statusName
.
set
(
43
,
"
已装柜、待封柜
"
);
statusName
.
set
(
44
,
"
封柜审核中
"
);
statusName
.
set
(
45
,
"
封柜审核失败
"
);
statusName
.
set
(
46
,
"
封柜审核成功
"
);
statusName
.
set
(
51
,
"
未报关
"
);
statusName
.
set
(
52
,
"
报关中
"
);
statusName
.
set
(
53
,
"
已报关
"
);
statusName
.
set
(
61
,
"
未配船
"
);
statusName
.
set
(
62
,
"
已配船
"
);
statusName
.
set
(
71
,
"
未提单补料
"
);
statusName
.
set
(
72
,
"
已提单补料
"
);
statusName
.
set
(
81
,
"
未驳船
"
);
statusName
.
set
(
82
,
"
已驳船
"
);
statusName
.
set
(
91
,
"
未起运
"
);
statusName
.
set
(
92
,
"
已起运
"
);
statusName
.
set
(
101
,
"
未上传
"
);
statusName
.
set
(
102
,
"
已上传
"
);
statusName
.
set
(
111
,
"
未清关文件
"
);
statusName
.
set
(
112
,
"
已清关文件
"
);
statusName
.
set
(
121
,
"
未到港
"
);
statusName
.
set
(
122
,
"
已到港
"
);
statusName
.
set
(
131
,
"
未清关
"
);
statusName
.
set
(
132
,
"
已清关
"
);
statusName
.
set
(
141
,
"
未卸柜
"
);
statusName
.
set
(
142
,
"
卸柜中
"
);
statusName
.
set
(
143
,
"
卸柜审核中
"
);
statusName
.
set
(
144
,
"
卸柜审核失败
"
);
statusName
.
set
(
145
,
"
卸柜审核成功
"
);
statusName
.
set
(
146
,
"
已卸柜
"
);
statusName
.
set
(
151
,
"
未结算
"
);
statusName
.
set
(
152
,
"
结算中
"
);
statusName
.
set
(
153
,
"
已结算
"
);
const
seaBaseData
=
[
[
{
title
:
"
订舱
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/dc-start.png
"
),
end
:
require
(
"
@/assets/images/shipping/dc-end.png
"
),
},
type
:
"
booking
"
,
// 类型
/**
* 订舱状态:11、未订舱;12、已订舱
*/
voName
:
"
bookSeaInfo
"
,
// 订舱对象vo
keyName
:
"
bkStatus
"
,
status
:
{
start
:
[
11
],
wait
:
[],
end
:
[
12
],
},
},
],
[
{
title
:
"
预装
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/yz-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/yz-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/yz-end.png
"
),
},
type
:
"
preinstall
"
,
/**
* 预装状态:21、未预装;22、预装审核中;23、预装审核失败;24、预装审核成功
*/
voName
:
"
preInstallInfo
"
,
keyName
:
"
prStatus
"
,
status
:
{
start
:
[
21
],
wait
:
[
22
,
23
],
end
:
[
24
],
},
},
{
title
:
"
拖车
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/tc-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/tc-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/tc-end.png
"
),
},
type
:
"
trailer
"
,
/**
* 拖车状态:31、未派车;32、已派车
*/
voName
:
"
trailerInfo
"
,
keyName
:
"
tlStatus
"
,
status
:
{
start
:
[
31
],
wait
:
[],
end
:
[
32
],
},
},
{
title
:
"
AGENT
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/agent-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/agent-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/agent-end.png
"
),
},
type
:
"
agent
"
,
voName
:
"
agentInfo
"
,
currStatus
:
"
start
"
,
},
],
[
{
title
:
"
装柜
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/zg-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/zg-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/zg-end.png
"
),
},
type
:
"
cabinet
"
,
/**
* 装柜状态:41、未装柜;42、装柜中;43、已装柜、待封柜;44、封柜审核中;45、封柜审核失败;46、封柜审核成功
*/
voName
:
"
cabinetInfo
"
,
keyName
:
"
ldStatus
"
,
status
:
{
start
:
[
41
],
wait
:
[
42
,
43
,
44
,
45
],
end
:
[
46
],
},
},
],
[
{
title
:
"
报关
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/bg-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/bg-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/bg-end.png
"
),
},
type
:
"
cusDeclaration
"
,
voName
:
"
customsInfo
"
,
/**
*报关状态:51、未报关;52、报关中;53、已报关
*/
keyName
:
"
dcStatus
"
,
status
:
{
start
:
[
51
],
wait
:
[
52
],
end
:
[
53
],
},
},
{
title
:
"
配船
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/pc-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/pc-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/pc-end.png
"
),
},
type
:
"
ship
"
,
/**
* 配船状态:61、未配船;62、已配船
*/
voName
:
"
shipConfigInfo
"
,
keyName
:
"
saStatus
"
,
status
:
{
start
:
[
61
],
wait
:
[],
end
:
[
62
],
},
},
{
title
:
"
提单补料
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/tdcl-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/tdcl-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/tdcl-end.png
"
),
},
type
:
"
subMaterial
"
,
/**
* 提单补料状态:71、未提单补料;72、已提单补料
*/
voName
:
"
ladingBillInfo
"
,
keyName
:
"
blStatus
"
,
status
:
{
start
:
[
71
],
wait
:
[],
end
:
[
72
],
},
},
],
[
{
title
:
"
驳船
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/bc-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/bc-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/bc-end.png
"
),
},
type
:
"
barge
"
,
/**
* 驳船状态:81、未驳船;82、已驳船
*/
voName
:
"
bargeInfo
"
,
keyName
:
"
bgStatus
"
,
status
:
{
start
:
[
81
],
wait
:
[],
end
:
[
82
],
},
},
],
[
{
title
:
"
起运
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/qy-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/qy-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/qy-end.png
"
),
},
type
:
"
departure
"
,
/**
* 起运状态:91、未起运;92、已起运
*/
voName
:
"
shippingInfo
"
,
keyName
:
"
dtStatus
"
,
status
:
{
start
:
[
91
],
wait
:
[],
end
:
[
92
],
},
},
],
[
{
title
:
"
提单Copy
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/tdcopy-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/tdcopy-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/tdcopy-end.png
"
),
},
type
:
"
blCopy
"
,
/**
* 提单COPY状态:101、未上传;102、已上传
*/
voName
:
"
ladingCopyInfo
"
,
keyName
:
"
cpStatus
"
,
status
:
{
start
:
[
101
],
wait
:
[],
end
:
[
102
],
},
},
{
type
:
"
clrDocument
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/qg-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/qg-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/qg-end.png
"
),
},
title
:
"
清关文件
"
,
/**
* 清关文件状态:111、未清关文件;112、已清关文件
*/
voName
:
"
clearanceDocInfo
"
,
keyName
:
"
cdStatus
"
,
status
:
{
start
:
[
111
],
wait
:
[],
end
:
[
112
],
},
},
],
[
{
title
:
"
到港
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/dg-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/dg-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/dg-end.png
"
),
},
type
:
"
arrival
"
,
/**
* 到港状态:121、未到港;112、已到港
*/
voName
:
"
arrivalInfo
"
,
keyName
:
"
apStatus
"
,
status
:
{
start
:
[
121
],
wait
:
[],
end
:
[
122
],
},
},
],
[
{
title
:
"
清关
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/qg-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/qg-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/qg-end.png
"
),
},
type
:
"
cusClearance
"
,
/**
* 清关状态:131、未清关;132、已清关
*/
voName
:
"
clearanceInfo
"
,
keyName
:
"
clStatus
"
,
status
:
{
start
:
[
131
],
wait
:
[],
end
:
[
132
],
},
},
],
[
{
title
:
"
卸柜
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/xg-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/xg-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/xg-end.png
"
),
},
type
:
"
unloading
"
,
/**
* 卸柜状态:141、未卸柜;142、卸柜中;143、卸柜审核中;144、卸柜审核失败;145、卸柜审核成功;146、已卸柜
*/
voName
:
"
cabinetUnloadInfo
"
,
keyName
:
"
ulStatus
"
,
status
:
{
start
:
[
141
],
wait
:
[
142
,
143
,
144
,
145
],
end
:
[
146
],
},
},
],
[
{
title
:
"
结算
"
,
imgSrc
:
{
start
:
require
(
"
@/assets/images/shipping/js-start.png
"
),
wait
:
require
(
"
@/assets/images/shipping/js-wait.png
"
),
end
:
require
(
"
@/assets/images/shipping/js-end.png
"
),
},
type
:
"
settlement
"
,
/**
* 结算状态:151、未结算;152、结算中;153、已结算
*/
voName
:
"
settlementInfo
"
,
keyName
:
"
slStatus
"
,
status
:
{
start
:
[
151
],
wait
:
[
152
],
end
:
[
153
],
},
},
],
];
export
{
statusName
,
seaBaseData
};
src/views/ecw/box/shippingSea/nodePage/agent.vue
View file @
b3e2bdb5
...
...
@@ -2,7 +2,7 @@
<div>
<el-form
ref=
"agentForm"
:model=
"agentObj"
:rules=
"rules"
label-width=
"120px"
>
<el-form-item
label=
"代理商Agent"
prop=
"agentId"
>
<supplierSelect
v-model=
"agentObj.agentId"
placeholder=
"请选择代理商"
v-bind=
"$attrs
"
/>
<supplierSelect
v-model=
"agentObj.agentId"
placeholder=
"请选择代理商"
:allSupplier=
"this.$attrs.allSupplier
"
/>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
...
...
@@ -20,6 +20,7 @@ import supplierSelect from "./common/supplierSelect.vue";
*/
export
default
{
name
:
"
agent
"
,
inheritAttrs
:
false
,
components
:
{
supplierSelect
},
data
()
{
return
{
...
...
src/views/ecw/box/shippingSea/nodePage/arrival.vue
View file @
b3e2bdb5
...
...
@@ -39,6 +39,7 @@ import { arrivalCreate, serviceMsg } from "@/api/ecw/boxSea";
*/
export
default
{
name
:
"
arrival
"
,
inheritAttrs
:
false
,
components
:
{
regError
,
},
...
...
src/views/ecw/box/shippingSea/nodePage/barge.vue
View file @
b3e2bdb5
...
...
@@ -16,7 +16,7 @@
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"通知人"
label-width=
"80px"
>
<userSelect
v-model=
"bargeObj.notifyUser"
placeholder=
"请选择通知人"
v-bind=
"$att
rs"
/>
<userSelect
v-model=
"bargeObj.notifyUser"
placeholder=
"请选择通知人"
:allUsers=
"this.$attrs.allUse
rs"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -43,6 +43,7 @@ import userSelect from "./common/userSelect.vue";
*/
export
default
{
name
:
"
barge
"
,
inheritAttrs
:
false
,
components
:
{
userSelect
},
data
()
{
return
{
...
...
src/views/ecw/box/shippingSea/nodePage/blCopy.vue
View file @
b3e2bdb5
...
...
@@ -22,6 +22,7 @@ import { ladingCopyCreate, serviceMsg } from "@/api/ecw/boxSea";
*/
export
default
{
name
:
"
blCopy
"
,
inheritAttrs
:
false
,
data
()
{
return
{
// 提单copy对象
...
...
src/views/ecw/box/shippingSea/nodePage/booking.vue
View file @
b3e2bdb5
...
...
@@ -5,19 +5,19 @@
<el-input
v-model=
"bookingObj.sono"
placeholder=
"请输入SO NO."
></el-input>
</el-form-item>
<el-form-item
label=
"船公司类型"
>
<supplierSelect
v-model=
"bookingObj.shipCompanyType"
:companyType=
"'9'"
placeholder=
"请选择船公司类型"
v-bind=
"$attrs
"
/>
<supplierSelect
v-model=
"bookingObj.shipCompanyType"
:companyType=
"'9'"
placeholder=
"请选择船公司类型"
:allSupplier=
"this.$attrs.allSupplier
"
/>
</el-form-item>
<el-form-item
label=
"驳船港"
>
<dockSelect
v-model=
"bookingObj.bargePort"
placeholder=
"请选择驳船港"
v-bind=
"$attr
s"
/>
<dockSelect
v-model=
"bookingObj.bargePort"
placeholder=
"请选择驳船港"
:allDocks=
"this.$attrs.allDock
s"
/>
</el-form-item>
<el-form-item
label=
"大船港"
>
<dockSelect
v-model=
"bookingObj.bigPort"
placeholder=
"请选择大船港"
v-bind=
"$attr
s"
/>
<dockSelect
v-model=
"bookingObj.bigPort"
placeholder=
"请选择大船港"
:allDocks=
"this.$attrs.allDock
s"
/>
</el-form-item>
<el-form-item
label=
"目的港"
>
<dockSelect
v-model=
"bookingObj.destPort"
placeholder=
"请选择目的港"
v-bind=
"$attr
s"
/>
<dockSelect
v-model=
"bookingObj.destPort"
placeholder=
"请选择目的港"
:allDocks=
"this.$attrs.allDock
s"
/>
</el-form-item>
<el-form-item
label=
"订舱公司"
>
<supplierSelect
v-model=
"bookingObj.spaceCompany"
:companyType=
"'1'"
placeholder=
"请选择订舱公司"
v-bind=
"$attrs
"
/>
<supplierSelect
v-model=
"bookingObj.spaceCompany"
:companyType=
"'1'"
placeholder=
"请选择订舱公司"
:allSupplier=
"this.$attrs.allSupplier
"
/>
</el-form-item>
<el-form-item
label=
"预计驳船时间"
prop=
"bargeTime"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
value-format=
"yyyy-MM-dd"
v-model=
"bookingObj.bargeTime"
></el-date-picker>
...
...
@@ -31,7 +31,7 @@
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"通知人"
label-width=
"80px"
>
<userSelect
v-model=
"bookingObj.feedTimePerson1"
placeholder=
"请选择通知人"
v-bind=
"$att
rs"
/>
<userSelect
v-model=
"bookingObj.feedTimePerson1"
placeholder=
"请选择通知人"
:allUsers=
"this.$attrs.allUse
rs"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -44,7 +44,7 @@
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"通知人"
label-width=
"80px"
>
<userSelect
v-model=
"bookingObj.feedTimePerson2"
placeholder=
"请选择通知人"
v-bind=
"$att
rs"
/>
<userSelect
v-model=
"bookingObj.feedTimePerson2"
placeholder=
"请选择通知人"
:allUsers=
"this.$attrs.allUse
rs"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -57,7 +57,7 @@
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"通知人"
label-width=
"80px"
>
<userSelect
v-model=
"bookingObj.feedTimePerson3"
placeholder=
"请选择通知人"
v-bind=
"$att
rs"
/>
<userSelect
v-model=
"bookingObj.feedTimePerson3"
placeholder=
"请选择通知人"
:allUsers=
"this.$attrs.allUse
rs"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -70,7 +70,7 @@
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"通知人"
label-width=
"80px"
>
<userSelect
v-model=
"bookingObj.feedTimePerson4"
placeholder=
"请选择通知人"
v-bind=
"$att
rs"
/>
<userSelect
v-model=
"bookingObj.feedTimePerson4"
placeholder=
"请选择通知人"
:allUsers=
"this.$attrs.allUse
rs"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -94,6 +94,7 @@ import userSelect from "./common/userSelect.vue";
*/
export
default
{
name
:
"
booking
"
,
inheritAttrs
:
false
,
components
:
{
supplierSelect
,
dockSelect
,
...
...
src/views/ecw/box/shippingSea/nodePage/cabinet/index.vue
View file @
b3e2bdb5
...
...
@@ -44,6 +44,7 @@ import startPacking from "./startPacking.vue";
*/
export
default
{
name
:
"
cabinet
"
,
inheritAttrs
:
false
,
components
:
{
startPacking
},
props
:
{
boxId
:
String
,
...
...
src/views/ecw/box/shippingSea/nodePage/clrDocument.vue
View file @
b3e2bdb5
...
...
@@ -77,6 +77,7 @@ import { clearanceDocCreate, serviceMsg } from "@/api/ecw/boxSea";
*/
export
default
{
name
:
"
clrDocument
"
,
inheritAttrs
:
false
,
data
()
{
return
{
// 清关文件对象
...
...
src/views/ecw/box/shippingSea/nodePage/common/dockSelect.vue
View file @
b3e2bdb5
...
...
@@ -10,8 +10,10 @@
*/
export
default
{
name
:
"
dockSelect
"
,
inheritAttrs
:
false
,
props
:
{
value
:
Number
,
allDocks
:
Array
,
},
model
:
{
prop
:
"
value
"
,
...
...
@@ -24,7 +26,7 @@ export default {
},
computed
:
{
getDock
()
{
return
this
.
$attrs
.
allDocks
;
return
this
.
allDocks
;
},
},
methods
:
{
...
...
src/views/ecw/box/shippingSea/nodePage/common/supplierSelect.vue
View file @
b3e2bdb5
...
...
@@ -13,6 +13,7 @@ export default {
props
:
{
companyType
:
String
,
value
:
Number
,
allSupplier
:
Array
,
},
model
:
{
prop
:
"
value
"
,
...
...
@@ -25,8 +26,8 @@ export default {
},
computed
:
{
getSuppliers
()
{
if
(
!
this
.
companyType
)
return
this
.
$attrs
.
allSupplier
;
return
this
.
$attrs
.
allSupplier
.
filter
((
item
)
=>
if
(
!
this
.
companyType
)
return
this
.
allSupplier
;
return
this
.
allSupplier
.
filter
((
item
)
=>
item
.
companyTypes
.
includes
(
this
.
companyType
)
);
},
...
...
src/views/ecw/box/shippingSea/nodePage/common/userSelect.vue
View file @
b3e2bdb5
...
...
@@ -10,8 +10,10 @@
*/
export
default
{
name
:
"
userSelect
"
,
inheritAttrs
:
false
,
props
:
{
value
:
Number
,
allUsers
:
Array
,
},
model
:
{
prop
:
"
value
"
,
...
...
@@ -24,7 +26,7 @@ export default {
},
computed
:
{
getUser
()
{
return
this
.
$attrs
.
allUsers
;
return
this
.
allUsers
;
},
},
methods
:
{
...
...
src/views/ecw/box/shippingSea/nodePage/cusClearance.vue
View file @
b3e2bdb5
...
...
@@ -35,6 +35,7 @@ import { clearanceCreate, serviceMsg } from "@/api/ecw/boxSea";
*/
export
default
{
name
:
"
cusClearance
"
,
inheritAttrs
:
false
,
components
:
{
regError
,
},
...
...
src/views/ecw/box/shippingSea/nodePage/cusDeclaration.vue
View file @
b3e2bdb5
...
...
@@ -136,6 +136,7 @@
*/
export
default
{
name
:
"
cusDeclaration
"
,
inheritAttrs
:
false
,
data
()
{
return
{
// 报关方式
...
...
src/views/ecw/box/shippingSea/nodePage/departure.vue
View file @
b3e2bdb5
...
...
@@ -37,6 +37,7 @@ import { shippingCreate, serviceMsg } from "@/api/ecw/boxSea";
*/
export
default
{
name
:
"
departure
"
,
inheritAttrs
:
false
,
components
:
{
regError
},
data
()
{
return
{
...
...
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
View file @
b3e2bdb5
...
...
@@ -248,7 +248,7 @@
<el-row>
<el-form
ref=
"operatorForm"
:model=
"operatorData"
size=
"small"
:inline=
"true"
label-width=
"120px"
:rules=
"rules"
>
<el-form-item
label=
"目的地操作员"
prop=
"operator"
>
<userSelect
v-model=
"operatorData.operator"
placeholder=
"请选择目的地操作员"
v-bind=
"$att
rs"
size=
"small"
/>
<userSelect
v-model=
"operatorData.operator"
placeholder=
"请选择目的地操作员"
:allUsers=
"this.$attrs.allUse
rs"
size=
"small"
/>
</el-form-item>
</el-form>
</el-row>
...
...
@@ -278,6 +278,7 @@ import userSelect from "./common/userSelect.vue";
*/
export
default
{
name
:
"
preinstall
"
,
inheritAttrs
:
false
,
components
:
{
userSelect
},
data
()
{
return
{
...
...
src/views/ecw/box/shippingSea/nodePage/regError.vue
View file @
b3e2bdb5
...
...
@@ -42,6 +42,7 @@
*/
export
default
{
name
:
"
regError
"
,
inheritAttrs
:
false
,
data
()
{
return
{
// 异常对象
...
...
src/views/ecw/box/shippingSea/nodePage/settlement.vue
View file @
b3e2bdb5
...
...
@@ -24,6 +24,7 @@ import { settlementCreate, serviceMsg } from "@/api/ecw/boxSea";
*/
export
default
{
name
:
"
settlement
"
,
inheritAttrs
:
false
,
data
()
{
return
{
// 结算对象
...
...
src/views/ecw/box/shippingSea/nodePage/ship.vue
View file @
b3e2bdb5
...
...
@@ -26,6 +26,7 @@ import { shipConfigure, serviceMsg } from "@/api/ecw/boxSea";
*/
export
default
{
name
:
"
ship
"
,
inheritAttrs
:
false
,
props
:
{
shipmentObj
:
Object
,
},
...
...
src/views/ecw/box/shippingSea/nodePage/subMaterial.vue
View file @
b3e2bdb5
...
...
@@ -2,7 +2,7 @@
<div>
<el-form
ref=
"subMaterialForm"
:model=
"subMaterialObj"
label-width=
"140px"
>
<el-form-item
label=
"代理商AGENT"
>
<supplierSelect
v-model=
"subMaterialObj.agentId"
placeholder=
"请选择供应商"
v-bind=
"$attrs
"
/>
<supplierSelect
v-model=
"subMaterialObj.agentId"
placeholder=
"请选择供应商"
:allSupplier=
"this.$attrs.allSupplier
"
/>
</el-form-item>
<el-form-item
label=
"提单号M/BL NO."
class=
"two-element"
>
<el-input
v-model=
"subMaterialObj.blMblNo"
placeholder=
"请输入提单号"
></el-input>
...
...
@@ -12,22 +12,22 @@
<el-input
v-model=
"subMaterialObj.soNo"
placeholder=
"请输入SO NO"
></el-input>
</el-form-item>
<el-form-item
label=
"装货港"
>
<dockSelect
v-model=
"subMaterialObj.startPortId"
placeholder=
"请选择装货港"
v-bind=
"$attr
s"
/>
<dockSelect
v-model=
"subMaterialObj.startPortId"
placeholder=
"请选择装货港"
:allDocks=
"this.$attrs.allDock
s"
/>
</el-form-item>
<el-form-item
label=
"目的港"
>
<dockSelect
v-model=
"subMaterialObj.destPortId"
placeholder=
"请选择目的港"
v-bind=
"$attr
s"
/>
<dockSelect
v-model=
"subMaterialObj.destPortId"
placeholder=
"请选择目的港"
:allDocks=
"this.$attrs.allDock
s"
/>
</el-form-item>
<el-form-item
label=
"船公司"
>
<supplierSelect
v-model=
"subMaterialObj.shipCompanyId"
:companyType=
"'9'"
placeholder=
"请选择船公司"
v-bind=
"$attrs
"
/>
<supplierSelect
v-model=
"subMaterialObj.shipCompanyId"
:companyType=
"'9'"
placeholder=
"请选择船公司"
:allSupplier=
"this.$attrs.allSupplier
"
/>
</el-form-item>
<el-form-item
label=
"托运人"
>
<userSelect
v-model=
"subMaterialObj.shipperId"
placeholder=
"请选择托运人"
v-bind=
"$att
rs"
/>
<userSelect
v-model=
"subMaterialObj.shipperId"
placeholder=
"请选择托运人"
:allUsers=
"this.$attrs.allUse
rs"
/>
</el-form-item>
<el-form-item
label=
"收货人"
>
<userSelect
v-model=
"subMaterialObj.consigneeId"
placeholder=
"请选择收货人"
v-bind=
"$att
rs"
/>
<userSelect
v-model=
"subMaterialObj.consigneeId"
placeholder=
"请选择收货人"
:allUsers=
"this.$attrs.allUse
rs"
/>
</el-form-item>
<el-form-item
label=
"通知方"
>
<userSelect
v-model=
"subMaterialObj.notifyingId"
placeholder=
"请选择通知方"
v-bind=
"$att
rs"
/>
<userSelect
v-model=
"subMaterialObj.notifyingId"
placeholder=
"请选择通知方"
:allUsers=
"this.$attrs.allUse
rs"
/>
</el-form-item>
<el-form-item
label=
"Mark & No."
>
<el-input
v-model=
"subMaterialObj.markNo"
></el-input>
...
...
@@ -83,6 +83,7 @@ import { billCreate, serviceMsg } from "@/api/ecw/boxSea";
*/
export
default
{
name
:
"
subMaterial
"
,
inheritAttrs
:
false
,
components
:
{
supplierSelect
,
dockSelect
,
userSelect
},
props
:
{
shipmentObj
:
Object
,
...
...
src/views/ecw/box/shippingSea/nodePage/trailer.vue
View file @
b3e2bdb5
...
...
@@ -7,7 +7,7 @@
</el-select>
</el-form-item>
<el-form-item
label=
"拖车公司"
>
<supplierSelect
v-model=
"trailerObj.tlCompanyId"
:companyType=
"'4'"
placeholder=
"请选择拖车公司"
v-bind=
"$attrs
"
/>
<supplierSelect
v-model=
"trailerObj.tlCompanyId"
:companyType=
"'4'"
placeholder=
"请选择拖车公司"
:allSupplier=
"this.$attrs.allSupplier
"
/>
</el-form-item>
<el-form-item
label=
"拖车时间"
prop=
"tlTime"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
value-format=
"yyyy-MM-dd"
v-model=
"trailerObj.tlTime"
></el-date-picker>
...
...
@@ -43,6 +43,7 @@ import supplierSelect from "./common/supplierSelect.vue";
* 拖车
*/
export
default
{
inheritAttrs
:
false
,
name
:
"
trailer
"
,
components
:
{
supplierSelect
},
data
()
{
...
...
src/views/ecw/box/shippingSea/nodePage/unloading/index.vue
View file @
b3e2bdb5
...
...
@@ -35,6 +35,7 @@ import startUnloading from "./startUnloading.vue";
*/
export
default
{
name
:
"
unloading
"
,
inheritAttrs
:
false
,
components
:
{
startUnloading
},
data
()
{
return
{
...
...
src/views/ecw/box/shippingSea/seaProcess.vue
View file @
b3e2bdb5
...
...
@@ -4,18 +4,19 @@
<el-scrollbar
:vertical=
"true"
viewClass=
"shipping-chart"
>
<div
v-for=
"(nodes,index) in seaBaseData"
:key=
"index"
class=
"chart-nodes"
>
<div
class=
"node-area"
>
<div
v-for=
"node in nodes"
:key=
"node.title"
@
click=
"nodeClick(node)"
class=
"node-div"
>
<div
v-for=
"node in nodes"
:key=
"node.title"
@
click=
"nodeClick(
index,
node)"
class=
"node-div"
>
<template
v-if=
"!node.unNode"
>
<img
:src=
"getImgSrc(node)"
alt=
""
>
<p>
{{
node
.
title
}}
</p>
</
template
>
<
template
v-else-if=
"node.unNode"
>
<el-button
type=
"primary"
@
click=
"nodeClick(node)"
style=
"width:100px;"
>
{{
node
.
title
}}
</el-button>
<el-button
type=
"primary"
@
click=
"nodeClick(
index,
node)"
style=
"width:100px;"
>
{{
node
.
title
}}
</el-button>
</
template
>
</div>
</div>
<div
class=
"arrow-area"
v-if=
"index !== (seaBaseData.length-1)"
>
<img
src=
"@/assets/images/shipping/jt-start.png"
alt=
""
>
<img
src=
"@/assets/images/shipping/jt-start.png"
alt=
""
v-if=
"index >= currIndex"
>
<img
src=
"@/assets/images/shipping/jt-end.png"
alt=
""
v-if=
"index < currIndex"
>
</div>
</div>
</el-scrollbar>
...
...
@@ -50,6 +51,7 @@ import settlementWidget from "./nodePage/settlement.vue";
*/
export
default
{
name
:
"
shippingChart
"
,
inheritAttrs
:
false
,
components
:
{
bookingWidget
,
trailerWidget
,
...
...
@@ -83,6 +85,10 @@ export default {
},
// 当前组件
currentComponent
:
""
,
// 当前步骤节点坐标
currIndex
:
0
,
// 当前步骤节点状态
currNodeStatus
:
""
,
};
},
created
()
{},
...
...
@@ -92,7 +98,11 @@ export default {
this
.
$set
(
this
.
dialogConfig
,
"
dialogVisible
"
,
false
);
},
/** 节点点击 */
nodeClick
(
node
)
{
nodeClick
(
currIndex
,
node
)
{
if
(
currIndex
>
this
.
currIndex
)
{
this
.
$message
.
error
(
"
请先完成上一步
"
);
return
;
}
this
.
currentComponent
=
`
${
node
.
type
}
Widget`
;
this
.
$set
(
this
.
dialogConfig
,
"
width
"
,
"
500px
"
);
this
.
$set
(
this
.
dialogConfig
,
"
title
"
,
node
.
title
);
...
...
@@ -124,10 +134,14 @@ export default {
},
},
watch
:
{
/* 监听发货对象 */
shipmentObj
(
val
)
{
// 迭代每个节点
for
(
const
nodes
of
this
.
seaBaseData
)
{
for
(
const
node
of
nodes
)
{
for
(
let
i
=
0
;
i
<
this
.
seaBaseData
.
length
;
i
++
)
{
const
nodes
=
this
.
seaBaseData
[
i
];
let
nodeIndex
=
0
;
for
(
let
j
=
0
;
j
<
nodes
.
length
;
j
++
)
{
const
node
=
nodes
[
j
];
const
{
keyName
,
voName
,
status
}
=
node
;
if
(
!
keyName
)
continue
;
const
{
start
,
wait
,
end
}
=
status
;
...
...
@@ -138,18 +152,32 @@ export default {
if
(
start
.
includes
(
val
[
keyName
])
&&
val
[
voName
])
{
node
.
currStatus
=
"
wait
"
;
this
.
currNodeStatus
=
val
[
keyName
];
}
if
(
wait
.
includes
(
val
[
keyName
]))
{
node
.
currStatus
=
"
wait
"
;
this
.
currNodeStatus
=
val
[
keyName
];
}
if
(
end
.
includes
(
val
[
keyName
]))
{
node
.
currStatus
=
"
end
"
;
this
.
currNodeStatus
=
val
[
keyName
];
// 已完成节点个数
++
nodeIndex
;
}
}
// 如果相等标识改步骤已完成
if
(
nodeIndex
===
nodes
.
length
)
{
// 加1表示为已完成步骤后一步
this
.
currIndex
=
i
+
1
;
}
}
},
/* 监听当前状态 */
currNodeStatus
(
val
)
{
this
.
$emit
(
"
setStatus
"
,
val
);
},
},
};
</
script
>
...
...
src/views/ecw/box/shippingSea/seaStepDetail.vue
View file @
b3e2bdb5
...
...
@@ -21,6 +21,7 @@ import dayjs from "dayjs";
export
default
{
name
:
"
seaStepDetail
"
,
inheritAttrs
:
false
,
props
:
{
shipmentObj
:
Object
,
seaBaseData
:
Array
,
...
...
@@ -101,6 +102,7 @@ export default {
{
title
:
"
拖车时间
"
,
key
:
"
tlTime
"
,
type
:
"
date
"
,
},
{
title
:
"
车牌
"
,
...
...
src/views/ecw/box/shippingSea/shippingSea.vue
View file @
b3e2bdb5
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