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
8814f70d
Commit
8814f70d
authored
Jul 18, 2022
by
dcy
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
09410acb
42517cb1
Changes
19
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
1099 additions
and
109 deletions
+1099
-109
index.js
src/router/index.js
+1
-1
dict.js
src/utils/dict.js
+1
-1
agent.vue
src/views/ecw/box/shippingSea/nodePage/agent.vue
+6
-5
barge.vue
src/views/ecw/box/shippingSea/nodePage/barge.vue
+79
-0
blCopy.vue
src/views/ecw/box/shippingSea/nodePage/blCopy.vue
+50
-0
booking.vue
src/views/ecw/box/shippingSea/nodePage/booking.vue
+3
-3
index.vue
src/views/ecw/box/shippingSea/nodePage/cabinet/index.vue
+3
-3
startPacking.vue
...ews/ecw/box/shippingSea/nodePage/cabinet/startPacking.vue
+0
-0
supplementOrder.vue
.../ecw/box/shippingSea/nodePage/cabinet/supplementOrder.vue
+0
-0
clearanceDocument.vue
src/views/ecw/box/shippingSea/nodePage/clearanceDocument.vue
+126
-0
customsClearance.vue
src/views/ecw/box/shippingSea/nodePage/customsClearance.vue
+254
-0
departure.vue
src/views/ecw/box/shippingSea/nodePage/departure.vue
+146
-0
preinstall.vue
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
+0
-0
ship.vue
src/views/ecw/box/shippingSea/nodePage/ship.vue
+63
-0
subMaterial.vue
src/views/ecw/box/shippingSea/nodePage/subMaterial.vue
+123
-0
trailer.vue
src/views/ecw/box/shippingSea/nodePage/trailer.vue
+8
-7
seaProcess.vue
src/views/ecw/box/shippingSea/seaProcess.vue
+58
-11
shippingSea.vue
src/views/ecw/box/shippingSea/shippingSea.vue
+9
-1
index.vue
src/views/ecw/currencyEcash/index.vue
+169
-77
No files found.
src/router/index.js
View file @
8814f70d
...
...
@@ -358,7 +358,7 @@ export const constantRoutes = [
}, */
{
path
:
'
shippingSea/:boxId(
\\
d+)
'
,
component
:
(
resolve
)
=>
import
(
'
@/views/ecw/box/shipping/shippingSea
'
),
component
:
(
resolve
)
=>
import
(
'
@/views/ecw/box/shipping
Sea
/shippingSea
'
),
props
:
true
,
name
:
'
shippingSea
'
,
meta
:
{
title
:
'
海运出货操作
'
,
icon
:
''
,
activeMenu
:
'
/shipment/boxSea
'
}
...
...
src/utils/dict.js
View file @
8814f70d
...
...
@@ -140,7 +140,7 @@ export const DICT_TYPE = {
BEGINTIME_TYPE_ENDTIME
:
'
begintime_type_endtime
'
,
//订单日期筛选类别
ORDER_ERROR_TYPE
:
'
order_error_type
'
,
//订单异常类型
ORDER_EXCEPTION_STATUS
:
'
order_exception_status
'
,
//异常订单状态
ECASH_INIT
:
'
ecash_init
'
,
//e-cash
}
/**
...
...
src/views/ecw/box/shipping/agent.vue
→
src/views/ecw/box/shipping
Sea/nodePage
/agent.vue
View file @
8814f70d
<
template
>
<div>
<el-form
ref=
"agentForm"
:rules=
"rules"
:model=
"agent"
label-width=
"120px"
>
<el-form
ref=
"agentForm"
:rules=
"rules"
:model=
"agent
Obj
"
label-width=
"120px"
>
<el-form-item
label=
"代理商Agent"
>
<el-select
v-model=
"agent.agent"
placeholder=
"请选择代理商"
>
<el-select
v-model=
"agent
Obj
.agent"
placeholder=
"请选择代理商"
>
</el-select>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
保存
</el-button>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
</el-row>
</div>
</
template
>
...
...
@@ -22,7 +23,7 @@ export default {
data
()
{
return
{
// agent对象
agent
:
{},
agent
Obj
:
{},
};
},
methods
:
{
...
...
src/views/ecw/box/shippingSea/nodePage/barge.vue
0 → 100644
View file @
8814f70d
<
template
>
<div>
<el-form
ref=
"bargeForm"
:model=
"bargeObj"
label-width=
"80px"
>
<el-form-item
label=
"驳船"
>
<el-radio-group
v-model=
"bargeObj.status"
>
<el-radio
v-for=
"item in bargeStatus"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
<div
v-show=
"bargeObj.status === '2'"
>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"驳船预计开船时间"
label-width=
"130px"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"bargeObj.expectedTime"
></el-date-picker>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"通知人"
label-width=
"80px"
>
<el-select
v-model=
"bargeObj.feedTimePerson"
placeholder=
"请选择通知人"
>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-form-item
label=
"驳船实际开船时间"
label-width=
"130px"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"bargeObj.actualTime"
></el-date-picker>
</el-form-item>
</div>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
</el-row>
</div>
</
template
>
<
script
>
/**
* 驳船
*/
export
default
{
name
:
"
barge
"
,
data
()
{
return
{
// 驳船对象
bargeObj
:
{},
// 驳船
bargeStatus
:
[
{
value
:
"
1
"
,
label
:
"
无驳船
"
,
},
{
value
:
"
2
"
,
label
:
"
有驳船
"
,
},
],
};
},
methods
:
{
/** 提交 */
onSubmit
()
{
this
.
$refs
[
"
bargeForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
"
submit!
"
);
}
});
},
/** 取消 */
cancel
()
{
this
.
$emit
(
"
closeDialog
"
);
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
</
style
>
src/views/ecw/box/shippingSea/nodePage/blCopy.vue
0 → 100644
View file @
8814f70d
<
template
>
<div>
<el-form
ref=
"blCopyForm"
:model=
"blCopyObj"
label-width=
"120px"
>
<el-form-item
label=
"提单Copy"
>
<el-upload
action=
""
:file-list=
"blCopyObj.fileList"
>
<el-button
size=
"small"
type=
"primary"
>
选择文件
</el-button>
</el-upload>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
</el-row>
</div>
</
template
>
<
script
>
/**
* 提单copy
*/
export
default
{
name
:
"
blCopy
"
,
data
()
{
return
{
// 提单copy对象
blCopyObj
:
{
fileList
:
[],
},
};
},
methods
:
{
/** 提交 */
onSubmit
()
{
this
.
$refs
[
"
blCopyForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
"
submit!
"
);
}
});
},
/** 取消 */
cancel
()
{
this
.
$emit
(
"
closeDialog
"
);
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
</
style
>
src/views/ecw/box/shipping/booking.vue
→
src/views/ecw/box/shipping
Sea/nodePage
/booking.vue
View file @
8814f70d
<
template
>
<div>
<el-form
ref=
"bookingForm"
:rules=
"rules"
:model=
"booking"
label-width=
"140px"
class=
"booking-form"
>
<el-form
ref=
"bookingForm"
:rules=
"rules"
:model=
"booking"
label-width=
"140px"
>
<el-form-item
label=
"SO NO"
>
<el-input
v-model=
"booking.soNo"
></el-input>
<el-input
v-model=
"booking.soNo"
placeholder=
"请输入SO NO"
></el-input>
</el-form-item>
<el-form-item
label=
"船公司类型"
>
<el-select
v-model=
"booking.type"
placeholder=
"请选择船公司类型"
>
...
...
@@ -92,7 +92,7 @@
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
取消
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
</el-row>
</div>
...
...
src/views/ecw/box/shipping/cabinet/index.vue
→
src/views/ecw/box/shipping
Sea/nodePage
/cabinet/index.vue
View file @
8814f70d
...
...
@@ -15,8 +15,8 @@
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"cabinet.outTime"
></el-date-picker>
</el-form-item>
<el-form-item
label=
"装柜图片"
>
<el-upload
class=
"upload-demo"
action=
""
:limit=
"1"
:file-list=
"cabinet.fileList"
>
<el-button
size=
"small"
type=
"primary"
>
点击上传
</el-button>
<el-upload
action=
""
:limit=
"1"
:file-list=
"cabinet.fileList"
>
<el-button
size=
"small"
type=
"primary"
>
选择文件
</el-button>
</el-upload>
</el-form-item>
</el-form>
...
...
@@ -30,7 +30,7 @@
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
保存
</el-button>
<el-button
type=
"success"
>
封柜
</el-button>
<el-button
@
click=
"cancel"
>
取消
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
<el-button
type=
"danger"
@
click=
"startCabinet"
>
开始装柜
</el-button>
</el-row>
</div>
...
...
src/views/ecw/box/shipping/cabinet/startPacking.vue
→
src/views/ecw/box/shipping
Sea/nodePage
/cabinet/startPacking.vue
View file @
8814f70d
File moved
src/views/ecw/box/shipping/cabinet/supplementOrder.vue
→
src/views/ecw/box/shipping
Sea/nodePage
/cabinet/supplementOrder.vue
View file @
8814f70d
File moved
src/views/ecw/box/shippingSea/nodePage/clearanceDocument.vue
0 → 100644
View file @
8814f70d
<
template
>
<div>
<el-form
ref=
"cDocForm"
:model=
"cDocObj"
label-width=
"100px"
>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"出单方式"
>
<el-select
v-model=
"cDocObj.method"
placeholder=
"请选择出单方式"
>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"电放时间"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"cDocObj.dischargeTime"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"寄送时间"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"cDocObj.deliveryTime"
></el-date-picker>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"快递单号"
>
<el-input
v-model=
"cDocObj.courierNumber"
placeholder=
"请输入快递单号"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-form-item
label=
"电放凭证附件"
>
<el-upload
action=
""
:file-list=
"cDocObj.fileList"
>
<el-button
size=
"small"
type=
"primary"
>
选择文件
</el-button>
</el-upload>
</el-form-item>
<el-form-item
label=
"agent list"
>
<el-radio-group
v-model=
"cDocObj.agent"
>
<el-radio
v-for=
"item in status"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"cDocObj.agenTime"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-upload
action=
""
:file-list=
"cDocObj.agentFileList"
>
<el-button
size=
"small"
type=
"primary"
>
选择文件
</el-button>
</el-upload>
</el-form-item>
<el-form-item
label=
"soncap"
>
<el-radio-group
v-model=
"cDocObj.soncap"
>
<el-radio
v-for=
"item in status"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"cDocObj.soncapTime"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-upload
action=
""
:file-list=
"cDocObj.soncapFileList"
>
<el-button
size=
"small"
type=
"primary"
>
选择文件
</el-button>
</el-upload>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
</el-row>
</div>
</
template
>
<
script
>
/**
* 清关文件
*/
export
default
{
name
:
"
clearanceDocument
"
,
data
()
{
return
{
// 清关文件对象
cDocObj
:
{
fileList
:
[],
},
// 出单方式
method
:
[
{
value
:
"
1
"
,
label
:
"
正本
"
,
},
{
value
:
"
2
"
,
label
:
"
电放
"
,
},
],
// 选项
status
:
[
{
value
:
"
1
"
,
label
:
"
无需
"
,
},
{
value
:
"
2
"
,
label
:
"
已做
"
,
},
],
};
},
methods
:
{
/** 提交 */
onSubmit
()
{
this
.
$refs
[
"
cDocForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
"
submit!
"
);
}
});
},
/** 取消 */
cancel
()
{
this
.
$emit
(
"
closeDialog
"
);
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
</
style
>
src/views/ecw/box/shippingSea/nodePage/customsClearance.vue
0 → 100644
View file @
8814f70d
<
template
>
<div>
<el-form
ref=
"cusClearanceForm"
:rules=
"rules"
:model=
"cusClearance"
label-width=
"120px"
>
<el-form-item
label=
"单证要求"
>
我司全代
<el-button
type=
"primary"
style=
"margin-left:10px;"
@
click=
"downloadVGM"
>
VGM声明
</el-button>
</el-form-item>
<el-form-item
label=
"柜重"
prop=
"cabinetWeight"
>
<el-input
v-model=
"cusClearance.cabinetWeight"
placeholder=
"请输入柜重"
clearable
/>
</el-form-item>
<el-form-item
label=
"货重"
prop=
"cargoWeight"
>
<el-input
v-model=
"cusClearance.cargoWeight"
placeholder=
"请输入货重"
clearable
/>
</el-form-item>
<el-form-item
label=
"VGM重量(柜重+货重)"
>
<el-input
v-model=
"cusClearance.vgmWeight"
placeholder=
"请输入VGM重量"
clearable
/>
</el-form-item>
<el-form-item
label=
"报关方式"
prop=
"method"
>
<el-select
v-model=
"cusClearance.method"
placeholder=
"请选择报关方式"
>
<el-option
v-for=
"item in methods"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"正常报关订单"
>
</el-form-item>
<el-form-item
label=
"报关公司名称"
>
<el-select
v-model=
"cusClearance.companyName"
placeholder=
"请选择报关公司名称"
>
</el-select>
</el-form-item>
<el-form-item
label=
"截关时间"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"cusClearance.cutTime"
></el-date-picker>
</el-form-item>
<el-form-item
label=
"状态"
>
<el-radio-group
v-model=
"cusClearance.status"
>
<el-radio
v-for=
"item in status"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 查验 -->
<div
v-show=
"cusClearance.status === '3'"
>
<el-form-item
label=
"查验"
>
<el-radio-group
v-model=
"cusClearance.check"
>
<el-radio
v-for=
"item in checkItems"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
</div>
<!-- 退场 -->
<div
v-show=
"cusClearance.check === '1' || cusClearance.check === '2'"
>
<el-form-item
label=
"查验时间"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"cusClearance.checkTime"
></el-date-picker>
</el-form-item>
<el-form-item
label=
"查验前图片"
>
<el-upload
action=
""
:limit=
"1"
:file-list=
"cusClearance.checkFile"
>
<el-button
size=
"small"
type=
"primary"
>
选择文件
</el-button>
</el-upload>
</el-form-item>
<el-form-item
label=
"新封条"
>
<el-input
v-model=
"cusClearance.newSeal"
placeholder=
"请输入新封条"
clearable
/>
</el-form-item>
</div>
<!-- 放行 -->
<el-form-item
label=
"放行时间"
v-show=
"cusClearance.status === '2' || cusClearance.check === '2'"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"cusClearance.releaseTime"
></el-date-picker>
</el-form-item>
<el-form-item
label=
"装箱单"
>
<el-button
type=
"primary"
>
下载装箱单
</el-button>
</el-form-item>
<el-form-item
label=
"报关单"
>
<el-button
type=
"primary"
>
下载所有报关单
</el-button>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
<el-button
type=
"primary"
@
click=
"extraCost"
>
额外费用
</el-button>
</el-row>
<!-- 对话框 -->
<el-dialog
custom-class=
"shipping-dialog customsClearance"
:title=
"dialogConfig.title"
:visible.sync=
"dialogConfig.dialogVisible"
width=
"700px"
:modal-append-to-body=
false
append-to-body
destroy-on-close
>
<el-row>
<el-row>
<el-form
label-width=
"100px"
>
<el-form-item
label=
"订单号"
class=
"two-element"
>
<el-input
v-model=
"orderNo"
placeholder=
"请输入订单号"
clearable
/>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
></el-button>
</el-form-item>
</el-form>
</el-row>
<el-row>
<el-table
:data=
"[
{}]">
<el-table-column
label=
"订单号"
align=
"center"
prop=
"selfNo"
/>
<el-table-column
label=
"报关费用"
align=
"center"
prop=
"orderFees"
>
<template
slot-scope=
"scope"
>
<el-input
v-model=
"scope.row.orderFees"
placeholder=
"请输入内容"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"primary"
size=
"small"
>
确定
</el-button>
</
template
>
</el-table-column>
</el-table>
</el-row>
<el-row
class=
"cost-title"
>
<div>
额外费用订单
</div>
<div>
<el-button
size=
"small"
>
重置
</el-button>
</div>
</el-row>
<el-row>
<el-table
:data=
"[{}]"
>
<el-table-column
type=
"selection"
width=
"55"
/>
<el-table-column
label=
"订单号"
align=
"center"
prop=
"selfNo"
/>
<el-table-column
label=
"报关费用"
align=
"center"
prop=
"customsFees"
>
<
template
slot-scope=
"scope"
>
<el-input
v-model=
"scope.row.customsFees"
placeholder=
"请输入内容"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"primary"
size=
"small"
>
修改
</el-button>
<el-button
size=
"small"
>
重置
</el-button>
</
template
>
</el-table-column>
</el-table>
</el-row>
</el-row>
</el-dialog>
</div>
</template>
<
script
>
/**
* 报关
*/
export
default
{
name
:
"
customsClearance
"
,
data
()
{
return
{
// 报关方式
methods
:
[
{
value
:
"
1
"
,
label
:
"
整柜买单报关
"
,
},
{
value
:
"
2
"
,
label
:
"
整柜正常报关
"
,
},
{
value
:
"
3
"
,
label
:
"
买单报关+正常报关
"
,
},
],
// 状态
status
:
[
{
value
:
"
1
"
,
label
:
"
报关中
"
,
},
{
value
:
"
2
"
,
label
:
"
放行
"
,
},
{
value
:
"
3
"
,
label
:
"
查验
"
,
},
],
// check
checkItems
:
[
{
value
:
"
1
"
,
label
:
"
退场
"
,
},
{
value
:
"
2
"
,
label
:
"
部分退场
"
,
},
{
value
:
"
3
"
,
label
:
"
查验后放行
"
,
},
],
// 报关对象
cusClearance
:
{},
// 校验
rules
:
{
cabinetWeight
:
[{
required
:
true
,
message
:
"
必填
"
,
trigger
:
"
change
"
}],
cargoWeight
:
[{
required
:
true
,
message
:
"
必填
"
,
trigger
:
"
change
"
}],
method
:
[{
required
:
true
,
message
:
"
必填
"
,
trigger
:
"
change
"
}],
},
// 弹窗配置
dialogConfig
:
{
title
:
""
,
dialogVisible
:
false
,
},
// 订单号
orderNo
:
""
,
};
},
watch
:
{
"
cusClearance.status
"
(
val
)
{
if
(
val
!==
"
3
"
)
{
this
.
$set
(
this
.
cusClearance
,
"
check
"
,
""
);
}
},
},
methods
:
{
/** 提交 */
onSubmit
()
{
this
.
$refs
[
"
cusClearanceForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
"
submit!
"
);
}
});
},
/** 取消 */
cancel
()
{
this
.
$emit
(
"
closeDialog
"
);
},
// 下载VGM
downloadVGM
()
{
window
.
open
(
"
http://pdatest.groupage.cn//apivue/boxTrack/vgmExport?token=930b11a41d9ca06f306d157f336a5dcb&id=1752
"
);
},
// 额外费用
extraCost
()
{
this
.
$set
(
this
.
dialogConfig
,
"
title
"
,
"
自编号
"
);
this
.
$set
(
this
.
dialogConfig
,
"
dialogVisible
"
,
true
);
},
},
};
</
script
>
<
style
lang=
"scss"
>
.customsClearance
{
.cost-title
{
display
:
flex
;
align-items
:
center
;
margin
:
20px
0
;
border-left
:
5px
solid
gray
;
>
div
:first-child
{
margin-left
:
10px
;
}
>
div
:last-child
{
flex
:
1
;
text-align
:
right
;
}
}
}
</
style
>
src/views/ecw/box/shippingSea/nodePage/departure.vue
0 → 100644
View file @
8814f70d
<
template
>
<div
class=
"app-departure"
>
<el-form
ref=
"departureForm"
:rules=
"rules"
:model=
"departureObj"
label-width=
"120px"
>
<el-form-item
label=
"预计开船时间"
>
</el-form-item>
<el-form-item
label=
"实际开船时间"
>
<el-date-picker
type=
"datetime"
placeholder=
"请选择日期"
v-model=
"departureObj.actualTime"
></el-date-picker>
<p
class=
"message-area"
>
订单状态与短信通知,将到指定时间更新与发送
</p>
<p
class=
"message-area"
v-show=
"showMsg"
>
实际开船实际与预计时间不符
</p>
</el-form-item>
<el-form-item
label=
"预期到港时间"
prop=
"arrivalTime"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"departureObj.arrivalTime"
>
</el-date-picker>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit('departureForm')"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
<el-button
type=
"primary"
@
click=
"exceptionReg"
:disabled=
"!showMsg"
>
异常登记
</el-button>
</el-row>
<!-- 对话框 -->
<el-dialog
custom-class=
"shipping-dialog departure"
title=
"票异常"
:visible.sync=
"dialogVisible"
width=
"700px"
:modal-append-to-body=
false
append-to-body
destroy-on-close
>
<el-form
ref=
"errorForm"
:model=
"errorObj"
label-width=
"140px"
>
<el-form-item
label=
"操作步骤"
>
<el-select
v-model=
"errorObj.step"
placeholder=
"请选择操作步骤"
>
</el-select>
</el-form-item>
<el-form-item
label=
"票异常"
>
<el-select
v-model=
"errorObj.ticketError"
placeholder=
"请选择票异常"
>
</el-select>
</el-form-item>
<el-form-item
label=
"异常情况"
>
<el-input
v-model=
"errorObj.description"
type=
"textarea"
rows=
"2"
placeholder=
"请输入异常情况"
></el-input>
</el-form-item>
<el-form-item
label=
"异常时间"
prop=
"arrivalTime"
class=
"two-element"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"errorObj.errorStart"
></el-date-picker>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"errorObj.errorend"
></el-date-picker>
</el-form-item>
<el-form-item
label=
"是否更新订单状态"
>
<el-radio-group
v-model=
"errorObj.updateOrder"
>
<el-radio
v-for=
"item in status"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"中文内容"
>
<el-input
v-model=
"errorObj.chContent"
type=
"textarea"
rows=
"2"
placeholder=
"请输入中文内容"
></el-input>
</el-form-item>
<el-form-item
label=
"英文内容"
>
<el-input
v-model=
"errorObj.enContent"
type=
"textarea"
rows=
"2"
placeholder=
"请输入英文内容"
></el-input>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"success"
@
click=
"onSubmit('errorForm')"
>
提交
</el-button>
<el-button
@
click=
"dialogVisible = false;"
>
关闭
</el-button>
</el-row>
</el-dialog>
</div>
</
template
>
<
script
>
/**
* 起运
*/
export
default
{
name
:
"
departure
"
,
data
()
{
return
{
// 起运对象
departureObj
:
{},
// 异常对象
errorObj
:
{},
// 校验
rules
:
{
arrivalTime
:
[{
required
:
true
,
message
:
"
必填
"
,
trigger
:
"
change
"
}],
},
// 弹窗配置
dialogVisible
:
false
,
// 提示消息
showMsg
:
false
,
// 是否更新订单动态
status
:
[
{
value
:
"
1
"
,
label
:
"
是
"
,
},
{
value
:
"
2
"
,
label
:
"
否
"
,
},
],
};
},
watch
:
{
// 实际开船时间
"
departureObj.actualTime
"
(
val
)
{
this
.
compareDate
(
val
,
this
.
departureObj
.
arrivalTime
);
},
// 预计到港时间
"
departureObj.arrivalTime
"
(
val
)
{
this
.
compareDate
(
this
.
departureObj
.
actualTime
,
val
);
},
},
methods
:
{
// 时间比较
compareDate
(
actualTime
,
arrivalTime
)
{
this
.
showMsg
=
false
;
let
date1
=
null
,
date2
=
null
;
if
(
actualTime
)
date1
=
new
Date
(
actualTime
);
if
(
arrivalTime
)
date2
=
new
Date
(
arrivalTime
);
if
(
date1
&&
date2
&&
date1
>
date2
)
{
this
.
showMsg
=
true
;
}
},
// 异常登记
exceptionReg
()
{
this
.
dialogVisible
=
true
;
},
/** 提交 */
onSubmit
(
formName
)
{
this
.
$refs
[
formName
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
"
submit!
"
);
}
});
},
/** 取消 */
cancel
()
{
this
.
$emit
(
"
closeDialog
"
);
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.app-departure
{
.message-area
{
margin
:
0
;
color
:
red
;
}
}
</
style
>
src/views/ecw/box/shipping/preinstall.vue
→
src/views/ecw/box/shipping
Sea/nodePage
/preinstall.vue
View file @
8814f70d
File moved
src/views/ecw/box/shippingSea/nodePage/ship.vue
0 → 100644
View file @
8814f70d
<
template
>
<div>
<el-form
ref=
"shipForm"
:model=
"shipObj"
label-width=
"80px"
>
<el-form-item
label=
"状态"
>
<el-radio-group
v-model=
"shipObj.status"
>
<el-radio
v-for=
"item in status"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"配船时间"
v-show=
"shipObj.status === '2'"
>
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"shipObj.shipTime"
></el-date-picker>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
</el-row>
</div>
</
template
>
<
script
>
/**
* 配船
*/
export
default
{
name
:
"
ship
"
,
data
()
{
return
{
// 配船对象
shipObj
:
{},
// 状态
status
:
[
{
value
:
"
1
"
,
label
:
"
免配
"
,
},
{
value
:
"
2
"
,
label
:
"
已配
"
,
},
],
};
},
methods
:
{
/** 提交 */
onSubmit
()
{
this
.
$refs
[
"
shipForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
"
submit!
"
);
}
});
},
/** 取消 */
cancel
()
{
this
.
$emit
(
"
closeDialog
"
);
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
</
style
>
src/views/ecw/box/shippingSea/nodePage/subMaterial.vue
0 → 100644
View file @
8814f70d
<
template
>
<div>
<el-form
ref=
"subMaterialForm"
:model=
"subMaterialObj"
label-width=
"140px"
>
<el-form-item
label=
"代理商AGENT"
>
<el-select
v-model=
"subMaterialObj.agent"
placeholder=
"请选择供应商"
>
</el-select>
</el-form-item>
<el-form-item
label=
"提单号M/BL NO."
class=
"two-element"
>
<el-input
v-model=
"subMaterialObj.billNo"
placeholder=
"请输入提单号"
></el-input>
<el-button
type=
"primary"
>
提单确认邮件
</el-button>
</el-form-item>
<el-form-item
label=
"SO NO."
>
<el-input
v-model=
"subMaterialObj.soNo"
placeholder=
"请输入SO NO"
></el-input>
</el-form-item>
<el-form-item
label=
"装货港"
>
<el-select
v-model=
"subMaterialObj.loadingPort"
placeholder=
"请选择装货港"
>
</el-select>
</el-form-item>
<el-form-item
label=
"目的港"
>
<el-select
v-model=
"subMaterialObj.destination"
placeholder=
"请选择目的港"
>
</el-select>
</el-form-item>
<el-form-item
label=
"船公司"
>
<el-select
v-model=
"subMaterialObj.shippingCompany"
placeholder=
"请选择船公司"
>
</el-select>
</el-form-item>
<el-form-item
label=
"托运人"
>
<el-select
v-model=
"subMaterialObj.shipper"
placeholder=
"请选择托运人"
>
</el-select>
</el-form-item>
<el-form-item
label=
"收货人"
>
<el-select
v-model=
"subMaterialObj.consignee"
placeholder=
"请选择收货人"
>
</el-select>
</el-form-item>
<el-form-item
label=
"通知方"
>
<el-select
v-model=
"subMaterialObj.notifyParty"
placeholder=
"请选择通知方"
>
</el-select>
</el-form-item>
<el-form-item
label=
"Mark & No."
>
<el-input
v-model=
"subMaterialObj.markNo"
></el-input>
</el-form-item>
<el-form-item
label=
"包装数量与单位"
class=
"two-element"
>
<el-input
v-model=
"subMaterialObj.quantity"
placeholder=
"请输入包装数量"
></el-input>
<el-select
v-model=
"subMaterialObj.unit"
placeholder=
"请选择单位"
>
</el-select>
</el-form-item>
<el-form-item
label=
"毛重(KGS)"
>
<el-input
v-model=
"subMaterialObj.grossWeight"
placeholder=
"请输入毛重(KGS)"
></el-input>
</el-form-item>
<el-form-item
label=
"立方数(CBM)"
>
<el-input
v-model=
"subMaterialObj.mesaurement"
placeholder=
"请输入立方数(CBM)"
></el-input>
</el-form-item>
<el-form-item
label=
"货物描述"
>
<el-input
v-model=
"subMaterialObj.description"
placeholder=
"请输入货物描述"
></el-input>
</el-form-item>
<el-form-item
label=
"柜号/封条"
>
<el-input
v-model=
"subMaterialObj.container"
placeholder=
"请输入柜号/封条"
></el-input>
</el-form-item>
<el-form-item
label=
"柜型"
>
111
</el-form-item>
<el-form-item
label=
"出单方式"
>
<el-radio-group
v-model=
"subMaterialObj.billingMethod"
>
<el-radio
v-for=
"item in method"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"备注"
>
<el-input
v-model=
"subMaterialObj.remark"
type=
"textarea"
rows=
"2"
placeholder=
"请输入备注"
></el-input>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
</el-row>
</div>
</
template
>
<
script
>
/**
* 提单补料
*/
export
default
{
name
:
"
subMaterial
"
,
data
()
{
return
{
// 提单补料对象
subMaterialObj
:
{
markNo
:
"
N/M
"
,
},
// 出单方式
method
:
[
{
value
:
"
1
"
,
label
:
"
正本
"
,
},
{
value
:
"
2
"
,
label
:
"
电放
"
,
},
],
};
},
methods
:
{
/** 提交 */
onSubmit
()
{
this
.
$refs
[
"
subMaterialForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
"
submit!
"
);
}
});
},
/** 取消 */
cancel
()
{
this
.
$emit
(
"
closeDialog
"
);
},
},
};
</
script
>
<
style
lang=
"scss"
>
</
style
>
src/views/ecw/box/shipping/trailer.vue
→
src/views/ecw/box/shipping
Sea/nodePage
/trailer.vue
View file @
8814f70d
...
...
@@ -15,24 +15,25 @@
<el-date-picker
type=
"date"
placeholder=
"请选择日期"
v-model=
"trailer.trailerTime"
></el-date-picker>
</el-form-item>
<el-form-item
label=
"车牌"
>
<el-input
v-model=
"trailer.licensePlate"
></el-input>
<el-input
v-model=
"trailer.licensePlate"
placeholder=
"请输入车牌"
></el-input>
</el-form-item>
<el-form-item
label=
"司机"
>
<el-input
v-model=
"trailer.driver"
></el-input>
<el-input
v-model=
"trailer.driver"
placeholder=
"请输入司机"
></el-input>
</el-form-item>
<el-form-item
label=
"司机联系方式"
>
<el-input
v-model=
"trailer.telephone"
></el-input>
<el-input
v-model=
"trailer.telephone"
placeholder=
"请输入司机联系方式"
></el-input>
</el-form-item>
<el-form-item
label=
"货柜号"
>
<el-input
v-model=
"trailer.containerNumber"
></el-input>
<el-input
v-model=
"trailer.containerNumber"
placeholder=
"请输入货柜号"
></el-input>
</el-form-item>
<el-form-item
label=
"封条"
>
<el-input
v-model=
"trailer.seal"
></el-input>
<el-input
v-model=
"trailer.seal"
placeholder=
"请输入封条"
></el-input>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
保存
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"cancel"
>
关闭
</el-button>
</el-row>
</div>
</
template
>
...
...
src/views/ecw/box/shipping
/shippingChart
.vue
→
src/views/ecw/box/shipping
Sea/seaProcess
.vue
View file @
8814f70d
...
...
@@ -10,7 +10,7 @@
<p>
{{
node
.
title
}}
</p>
</
template
>
<
template
v-else-if=
"node.unNode"
>
<el-button
type=
"primary"
@
click=
"nodeClick(node)"
>
AGENT
</el-button>
<el-button
type=
"primary"
@
click=
"nodeClick(node)"
>
{{
node
.
title
}}
</el-button>
</
template
>
</div>
</div>
...
...
@@ -32,17 +32,37 @@
<agentWidget
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'agent'"
/>
<!-- 装柜 -->
<cabinetWidget
:boxId=
"boxId"
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'cabinet'"
/>
<!-- 报关 -->
<customsClearanceWidget
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'customsDeclaration'"
/>
<!-- 配船 -->
<shipWidget
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'ship'"
/>
<!-- 提单材料 -->
<subMaterialWidget
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'subMaterial'"
/>
<!-- 驳船 -->
<bargeWidget
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'barge'"
/>
<!-- 起运 -->
<departureWidget
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'departure'"
/>
<!-- 提单copy -->
<blCopyWidget
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'blCopy'"
/>
<!-- 清关文件 -->
<clearanceDocumentWidget
@
closeDialog=
"closeDialog"
v-if=
"dialogConfig.type === 'clearanceDocument'"
/>
</el-dialog>
</div>
</template>
<
script
>
import
bookingWidget
from
"
./booking
"
;
import
trailerWidget
from
"
./trailer
"
;
import
preinstallWidget
from
"
./preinstall
"
;
import
agentWidget
from
"
./agent
"
;
import
cabinetWidget
from
"
./cabinet
"
;
import
bookingWidget
from
"
./nodePage/booking
"
;
import
trailerWidget
from
"
./nodePage/trailer
"
;
import
preinstallWidget
from
"
./nodePage/preinstall
"
;
import
agentWidget
from
"
./nodePage/agent
"
;
import
cabinetWidget
from
"
./nodePage/cabinet
"
;
import
customsClearanceWidget
from
"
./nodePage/customsClearance
"
;
import
shipWidget
from
"
./nodePage/ship
"
;
import
subMaterialWidget
from
"
./nodePage/subMaterial
"
;
import
bargeWidget
from
"
./nodePage/barge
"
;
import
departureWidget
from
"
./nodePage/departure
"
;
import
blCopyWidget
from
"
./nodePage/blCopy
"
;
import
clearanceDocumentWidget
from
"
./nodePage/clearanceDocument
"
;
/**
* 海运流程图
...
...
@@ -55,6 +75,13 @@ export default {
preinstallWidget
,
agentWidget
,
cabinetWidget
,
customsClearanceWidget
,
shipWidget
,
subMaterialWidget
,
bargeWidget
,
departureWidget
,
blCopyWidget
,
clearanceDocumentWidget
,
},
props
:
{
shippingType
:
String
,
...
...
@@ -94,7 +121,7 @@ export default {
{
unNode
:
true
,
type
:
"
agent
"
,
title
:
"
代理商设置
"
,
title
:
"
AGENT
"
,
},
],
[
...
...
@@ -136,10 +163,20 @@ export default {
},
],
[
{
/*
{
title: "清关文件",
imgSrc: require("@/assets/images/shipping/qg-start.png"),
type: "clearanceDocument",
}, */
{
unNode
:
true
,
type
:
"
blCopy
"
,
title
:
"
提单Copy
"
,
},
{
unNode
:
true
,
type
:
"
clearanceDocument
"
,
title
:
"
清关文件
"
,
},
],
[
...
...
@@ -185,15 +222,25 @@ export default {
switch
(
node
.
type
)
{
// 订舱
case
"
booking
"
:
// 驳船
case
"
barge
"
:
// 清关文件
case
"
clearanceDocumentWidget
"
:
this
.
$set
(
this
.
dialogConfig
,
"
width
"
,
"
700px
"
);
this
.
$set
(
this
.
dialogConfig
,
"
fullscreen
"
,
false
);
break
;
// 拖车
case
"
trailer
"
:
// AGENT
case
"
agent
"
:
this
.
$set
(
this
.
dialogConfig
,
"
title
"
,
"
代理商设置
"
);
break
;
// 拖车
case
"
trailer
"
:
// 装柜
case
"
cabinet
"
:
// 报关
case
"
customsDeclaration
"
:
// 起运
case
"
departure
"
:
this
.
$set
(
this
.
dialogConfig
,
"
width
"
,
"
500px
"
);
this
.
$set
(
this
.
dialogConfig
,
"
fullscreen
"
,
false
);
break
;
...
...
src/views/ecw/box/shipping/shippingSea.vue
→
src/views/ecw/box/shipping
Sea
/shippingSea.vue
View file @
8814f70d
...
...
@@ -27,7 +27,7 @@
</
template
>
<
script
>
import
shippingChart
from
"
.
/shippingChart
"
;
import
shippingChart
from
"
.
./shippingSea/seaProcess
"
;
/**
* 海运操作主页面
*/
...
...
@@ -57,5 +57,13 @@ export default {
.operate-button
{
text-align
:
center
;
}
.two-element
{
.el-form-item__content
{
display
:
flex
;
>
:last-child
{
margin-left
:
10px
;
}
}
}
}
</
style
>
src/views/ecw/currencyEcash/index.vue
View file @
8814f70d
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