Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Fedex
/
imac-vue
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
Elements-SY
2023-09-26 14:19:08 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
2d69a11c404437642cd4f6a95fbe19f4a41a977f
2d69a11c
1 parent
e656ba18
modify
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
711 additions
and
1699 deletions
src/components/YlDraggable/index.vue
src/views/allocationConfig/flightAllocConfig/components/routeInfo.vue
src/views/allocationConfig/flightAllocConfig/formConfig.js
src/views/allocationConfig/flightAllocConfig/routeData.js
src/views/allocationConfig/flightAllocConfig/routeInfo.vue
src/components/YlDraggable/index.vue
View file @
2d69a11
...
...
@@ -2,13 +2,12 @@
<
el
-
card
>
<
div
class
=
"row"
>
<
div
class
=
"col-6"
>
<
draggable
class
=
"list-group"
tag
=
"ul"
v
-
model
=
"list"
v
-
bind
=
"dragOptions"
@start
=
"drag = true"
@end
=
"drag = false"
>
<
draggable
class
=
"list-group"
tag
=
"ul"
v
-
model
=
"routeList"
v
-
bind
=
"dragOptions"
@start
=
"dragStart"
@end
=
"dragEnd"
>
<
transition
-
group
type
=
"transition"
:
name
=
"!drag ? 'flip-list' : null"
>
<
li
class
=
"list-group-item"
v
-
for
=
"
element in list"
:
key
=
"element.order
"
>
<
i
:
class
=
"
element
.fixed ? 'fa fa-anchor' : 'glyphicon glyphicon-pushpin'
"
@click
=
"
element.fixed = !element
.fixed"
aria
-
hidden
=
"true"
></
i
>
{{
element
.
nam
e
}}
<
li
class
=
"list-group-item"
v
-
for
=
"
item in routeList"
:
key
=
"item.routePriority
"
>
<
i
:
class
=
"
item
.fixed ? 'fa fa-anchor' : 'glyphicon glyphicon-pushpin'
"
@click
=
"
item.fixed = !item
.fixed"
aria
-
hidden
=
"true"
></
i
>
{{
item
.
rout
e
}}
</
li
>
</
transition
-
group
>
</
draggable
>
...
...
@@ -19,53 +18,56 @@
<
script
>
import
draggable
from
"vuedraggable"
;
const
message
=
[
"vue.draggable"
,
"draggable"
,
"component"
,
"for"
,
"vue.js 2.0"
,
"based"
,
"on"
,
"Sortablejs"
];
export
default
{
name
:
"transition-example-2"
,
display
:
"Transitions"
,
order
:
7
,
name
:
"YlDraggable"
,
props
:
{
routeList
:
{
// 航线
type:
Array
,
default
:
()
=>
[],
},
dragOptions
:
{
// 拖拽配置
type:
Object
,
default
:
()
=>
{
return
{
animation
:
200
,
group
:
"description"
,
disabled
:
false
,
ghostClass
:
"ghost"
}
},
},
},
components
:
{
draggable
},
data
()
{
return
{
list
:
message
.
map
((
name
,
index
)
=>
{
return
{
name
,
order
:
index
+
1
};
}),
drag
:
false
};
return
{};
},
created
()
{},
methods
:
{
// 排序
sort
()
{
this
.
list
=
this
.
list
.
sort
((
a
,
b
)
=>
a
.
order
-
b
.
order
);
}
this
.
routeList
=
this
.
routeList
.
sort
((
a
,
b
)
=>
a
.
routePriority
-
b
.
routePriority
);
},
// 开始拖拽
dragStart
()
{
},
// 结束拖拽
dragEnd
()
{
this
.
$
emit
(
"dragEnd"
,
this
.
routeList
);
},
},
computed
:
{
dragOptions
()
{
return
{
animation
:
200
,
group
:
"description"
,
disabled
:
false
,
ghostClass
:
"ghost"
};
}
}
};
</
script
>
<
style
lang
=
"scss"
>
.
el
-
card__body
{
padding
:
15
px
10
px
0
px
10
px
!
important
;
padding
:
15
px
10
px
0
px
10
px
!
important
;
}
.
list
-
group
{
min
-
height
:
20
px
;
max
-
height
:
150
px
;
...
...
src/views/allocationConfig/flightAllocConfig/components/routeInfo.vue
View file @
2d69a11
<template>
<div ref="routeInfo" class="route-container">
<el-collapse accordion v-model="routesInfo" @change="collapseChange">
<el-collapse-item v-for="(item, index) in routesInfo" :key="item.route">
<el-collapse
value="1"
accordion
v-model="activeNames"
@change="collapseChange"
>
<el-collapse-item
v-for="(item, index) in routesInfo"
:key="item.route"
:name="index"
>
<!-- 航线名 -->
<template slot="title">
<strong>{{ item.route }}</strong>
...
...
@@ -10,186 +19,376 @@
<div class="route-info info-item">
<el-card class="route-info-card">
<!-- 有数据时 -->
<section v-if="item.
data
">
<section v-if="item.
config
">
<div slot="header" class="route-config-header">
<el-button type="primary" round size="small" :disabled="item.disabled"
:loading="item.loading">保存</el-button>
<el-button
type="primary"
size="mini"
:disabled="item.status == '3'"
:loading="item.loading"
v-if="item.status == '1'"
>保 存</el-button
>
<el-button
type="primary"
size="mini"
icon="el-icon-video-pause"
:disabled="item.status == '3'"
:loading="item.loading"
v-if="item.status == '1' && item.ruleDate"
>{{ item.status == '1' ? '停 用' : item.status == '3' ? '启 用' : '停 用'}}</el-button
>
<el-button
type="danger"
size="mini"
icon="el-icon-delete"
:disabled="item.disabled"
:loading="item.loading"
v-if="item.status == '1' && item.ruleDate"
>删 除</el-button
>
<span class="flight-route-title">普通规则</span>
</div>
<el-divider></el-divider>
<div class="route-config-info">
<el-col :span="24">
<el-form-item label="始发站">
<el-col :span="4">
<el-radio-group v-model="item.location" @change="changeLocation">
<el-radio label="1">包含始发站</el-radio>
<el-radio label="2">不包含始发站</el-radio>
</el-radio-group>
<el-form label-position="right" label-width="120px">
<el-row>
<el-col :span="24">
<el-form-item label="始发站">
<el-col :span="2">
<el-radio-group
v-model="item.isLocation"
@change="changeLocation"
>
<el-radio label="1">包含始发站</el-radio>
<el-radio label="2">不包含始发站</el-radio>
</el-radio-group>
</el-col>
<el-col :span="10">
<el-input
v-if="item.isLocation == '1'"
type="textarea"
v-model="item.location"
:rows="4"
placeholder="始发站之间用回车符分隔"
style="width: 500px"
>
</el-input>
<el-input
v-else
type="textarea"
v-model="item.notLocation"
:rows="4"
placeholder="始发站之间用回车符分隔"
style="width: 500px"
>
</el-input>
</el-col>
</el-form-item>
</el-col>
<el-col :span="10">
<el-input type="textarea" v-model="item.location" :rows="4" placeholder="始发站之间用回车符分隔"
style="width: 500px">
</el-input>
<el-col :span="24">
<el-form-item label="目的站">
<el-col :span="2">
<el-radio-group
v-model="item.isDestinationSite"
@change="changeDestinationSite"
>
<el-radio label="1">包含目的站</el-radio>
<el-radio label="2">不包含目的站</el-radio>
</el-radio-group>
</el-col>
<el-col :span="10">
<el-input
v-if="item.isDestinationSite == '1'"
type="textarea"
v-model="item.destinationSite"
:rows="4"
placeholder="目的站之间用回车符分隔"
style="width: 500px"
>
</el-input>
<el-input
v-else
type="textarea"
v-model="item.notDestinationSite"
:rows="4"
placeholder="目的站之间用回车符分隔"
style="width: 500px"
>
</el-input>
</el-col>
</el-form-item>
</el-col>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="目的站">
<el-col :span="4">
<el-radio-group v-model="isDestinationSite" @change="changeDestinationSite">
<el-radio label="1">包含目的站</el-radio>
<el-radio label="2">不包含目的站</el-radio>
</el-radio-group>
</el-col>
<el-col :span="10">
<el-input type="textarea" v-model="item.destinationSite" :rows="4" placeholder="目的站之间用回车符分隔"
style="width: 500px">
</el-input>
</el-col>
</el-form-item>
</el-col>
<el-col :span="24">
<el-col :span="12">
<el-form-item label="URSA包含">
<el-input type="textarea" v-model="item.includeUrsa" :rows="4" placeholder="URSA之间用分号分隔,例:F2;F3;P_">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="URSA不包含">
<el-input type="textarea" v-model="item.notIncludeUrsa" :rows="4"
placeholder="URSA之间用分号分隔,例:F2;F3;P_">
</el-input>
</el-form-item>
</el-col>
</el-col>
<el-col :span="24">
<el-col :span="9">
<el-form-item label="件数">
<el-col :span="10">
<el-input class="numberInput" v-model.trim="item.minNumOfPieces">
</el-input>
<span ref="minNumOfPieces" class="el-form-item__error"></span>
</el-col>
<el-col style="text-align: center" :span="1">-</el-col>
<el-col :span="10">
<el-input class="numberInput" v-model.trim="item.maxNumOfPieces">
</el-input>
</el-col>
</el-form-item>
</el-col>
<el-col :span="9">
<el-form-item label="重量(KG)">
<el-col :span="24">
<el-col :span="10">
<el-input class="numberInput" v-model.trim="item.minWeight">
</el-input>
<span ref="minWeight" class="el-form-item__error"></span>
<el-form-item label="URSA包含">
<el-input
type="textarea"
v-model="item.includeUrsa"
:rows="4"
placeholder="URSA之间用分号分隔,例:F2;F3;P_"
>
</el-input>
</el-form-item>
</el-col>
<el-col style="text-align: center" :span="1">-</el-col>
<el-col :span="10">
<el-input class="numberInput" v-model.trim="item.maxWeight">
</el-input>
<el-form-item label="URSA不包含">
<el-input
type="textarea"
v-model="item.notIncludeUrsa"
:rows="4"
placeholder="URSA之间用分号分隔,例:F2;F3;P_"
>
</el-input>
</el-form-item>
</el-col>
</el-form-item>
</el-col>
</el-col>
<el-col :span="24">
<el-form-item label="申报类别">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group v-model="item.typeOfGoods" @change="changeCargoType">
<el-row>
<el-col v-for="item in cargoType" :span="2" :key="item.id">
<el-checkbox :label="item.chineseName" :name="item.chineseName" :key="item.code">
<Tooltips :content="item.chineseName" :refName="item.code">
</Tooltips>
</el-checkbox>
</el-col>
<el-col :span="24">
<el-col :span="9">
<el-form-item label="件数">
<el-col :span="10">
<el-input
class="numberInput"
v-model.trim="item.minNumOfPieces"
>
</el-input>
<span
ref="minNumOfPieces"
class="el-form-item__error"
></span>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="货物类型">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group v-model="item.cargoType" @change="changeCargoStatus">
<el-row>
<el-col :span="3" v-for="item in cargoStatus" :key="item.id">
<el-checkbox :label="item.chineseName" :name="item.chineseName" :key="item.code" disabled>
<Tooltips :content="item.chineseName" :refName="item.code">
</Tooltips>
</el-checkbox>
<el-col style="text-align: center" :span="1"
>-</el-col
>
<el-col :span="10">
<el-input
class="numberInput"
v-model.trim="item.maxNumOfPieces"
>
</el-input>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="取件扫描号">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group v-model="item.puporpuxCode" @change="changePuporpux">
<el-row>
<el-col :span="2" v-for="item in puporpux" :key="item.id">
<el-checkbox :label="item.chineseName" :name="item.chineseName" :key="item.code">
<Tooltips :content="item.chineseName" :refName="item.code">
</Tooltips>
</el-checkbox>
</el-form-item>
</el-col>
<el-col :span="9">
<el-form-item label="重量(KG)">
<el-col :span="10">
<el-input
class="numberInput"
v-model.trim="item.minWeight"
>
</el-input>
<span
ref="minWeight"
class="el-form-item__error"
></span>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="Service Code">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group v-model="item.serviceCode" @change="changeServiceCode">
<el-row>
<el-col :span="2" v-for="item in serviceCode" :key="item.id">
<el-checkbox :label="item.chineseName" :name="item.chineseName" :key="item.code">
<Tooltips :content="item.chineseName" :refName="item.code">
</Tooltips>
</el-checkbox>
<el-col style="text-align: center" :span="1"
>-</el-col
>
<el-col :span="10">
<el-input
class="numberInput"
v-model.trim="item.maxWeight"
>
</el-input>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="Handling Code">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group v-model="item.handlingCode" @change="changeHandlingCode">
<div class="checkboxItem" v-for="item in handlingCode" :key="item.id">
<el-checkbox :label="item.chineseName" :name="item.chineseName" :key="item.code">
<Tooltips :content="item.chineseName" :refName="item.code">
</Tooltips>
</el-checkbox>
</div>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="Sub Category">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group v-model="item.subCategory" @change="changeSubCategory">
<div class="checkboxItem" v-for="item in subCategory" :key="item.id">
<el-checkbox :label="item.chineseName" :name="item.chineseName" :key="item.code">
<Tooltips :content="item.chineseName" :refName="item.code">
</Tooltips>
</el-checkbox>
</div>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
</el-form-item>
</el-col>
</el-col>
<el-col :span="24">
<el-form-item label="申报类别">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group
v-model="item.typeOfGoods"
@change="changeCargoType"
>
<el-row>
<el-col
v-for="item in cargoType"
:span="2"
:key="item.id"
>
<el-checkbox
:label="item.chineseName"
:name="item.chineseName"
:key="item.code"
>
<Tooltips
:content="item.chineseName"
:refName="item.code"
>
</Tooltips>
</el-checkbox>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="货物类型">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group
v-model="item.cargoType"
@change="changeCargoStatus"
>
<el-row>
<el-col
:span="3"
v-for="item in cargoStatus"
:key="item.id"
>
<el-checkbox
:label="item.chineseName"
:name="item.chineseName"
:key="item.code"
disabled
>
<Tooltips
:content="item.chineseName"
:refName="item.code"
>
</Tooltips>
</el-checkbox>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="取件扫描号">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group
v-model="item.puporpuxCode"
@change="changePuporpux"
>
<el-row>
<el-col
:span="2"
v-for="item in puporpux"
:key="item.id"
>
<el-checkbox
:label="item.chineseName"
:name="item.chineseName"
:key="item.code"
>
<Tooltips
:content="item.chineseName"
:refName="item.code"
>
</Tooltips>
</el-checkbox>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="Service Code">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group
v-model="item.serviceCode"
@change="changeServiceCode"
>
<el-row>
<el-col
:span="2"
v-for="item in serviceCode"
:key="item.id"
>
<el-checkbox
:label="item.chineseName"
:name="item.chineseName"
:key="item.code"
>
<Tooltips
:content="item.chineseName"
:refName="item.code"
>
</Tooltips>
</el-checkbox>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="Handling Code">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group
v-model="item.handlingCode"
@change="changeHandlingCode"
>
<el-row>
<el-col
:span="2"
v-for="item in handlingCode"
:key="item.id"
>
<el-checkbox
:label="item.chineseName"
:name="item.chineseName"
:key="item.code"
>
<Tooltips
:content="item.chineseName"
:refName="item.code"
>
</Tooltips>
</el-checkbox>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="Sub Category">
<el-card shadow="never" style="width: 95%">
<el-checkbox-group
v-model="item.subCategory"
@change="changeSubCategory"
>
<el-row>
<el-col
:span="2"
v-for="item in subCategory"
:key="item.id"
>
<el-checkbox
:label="item.chineseName"
:name="item.chineseName"
:key="item.code"
>
<Tooltips
:content="item.chineseName"
:refName="item.code"
>
</Tooltips>
</el-checkbox>
</el-col>
</el-row>
</el-checkbox-group>
</el-card>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</section>
<!-- 没有数据时 -->
<div class="no-data" v-else>
<el-empty description="未设置规则!">
<el-button type="primary" size="small" @click="addRouteRule(index)">新增规则</el-button>
<el-button
type="primary"
size="small"
@click="addRouteRule(index)"
>新增规则</el-button
>
</el-empty>
</div>
</el-card>
...
...
@@ -202,41 +401,50 @@
export default {
name: "routeInfo",
props: {
routesInfo: { // 航线规则信息
routesInfo: {
// 航线规则信息
type: Array,
default: () => []
default: () => []
,
},
cargoType: { // 申报类别
cargoType: {
// 申报类别
type: Array,
default: () => []
default: () => []
,
},
cargoStatus: { // 货物类型
cargoStatus: {
// 货物类型
type: Array,
default: () => []
default: () => []
,
},
puporpux: { // 取件扫描号
puporpux: {
// 取件扫描号
type: Array,
default: () => []
default: () => []
,
},
serviceCode: { // Service Code
serviceCode: {
// Service Code
type: Array,
default: () => []
default: () => []
,
},
handlingCode: { // Handling Code
handlingCode: {
// Handling Code
type: Array,
default: () => []
default: () => []
,
},
subCategory: { // Sub Category
subCategory: {
// Sub Category
type: Array,
default: () => []
default: () => []
,
},
},
data() {
return {};
return {
activeNames: [0], // 展开指定项
};
},
computed: {},
created() {
},
mounted() {
},
created() {},
mounted() {},
methods: {
// 当前激活面板改变时触发
collapseChange(name) {
...
...
@@ -277,19 +485,36 @@ export default {
// 新增规则
addRouteRule(index) {
this.$emit("addRlue", index);
}
}
,
},
};
</script>
<style lang='scss'>
<style lang="scss">
.el-collapse-item__header {
background-color: #d9ecff !important;
border-bottom: 1px solid #ccc;
padding-left: 40px;
}
.route-container {
strong {
font-size: 14px;
}
.route-info {
.route-info-card {
.route-config-header {
.flight-route-title {}
section {
padding: 12px 70px;
.route-config-header {
.flight-route-title {
margin-left: 8px;
}
}
}
.route-config-info {}
.route-config-info {
}
}
}
}
...
...
src/views/allocationConfig/flightAllocConfig/formConfig.js
View file @
2d69a11
...
...
@@ -2,8 +2,8 @@ export const formConfig = [
{
label
:
"航班号"
,
type
:
"Input"
,
name
:
"
fl
tNo"
,
prop
:
"
fl
tNo"
,
name
:
"
purposeOfFligh
tNo"
,
prop
:
"
purposeOfFligh
tNo"
,
placeholder
:
"请输入航班号"
,
span
:
5
,
trigger
:
"blur"
,
...
...
@@ -12,8 +12,8 @@ export const formConfig = [
{
label
:
"航班日期"
,
type
:
"Date"
,
name
:
"
startTim
e"
,
prop
:
"
startTim
e"
,
name
:
"
flightDat
e"
,
prop
:
"
flightDat
e"
,
placeholder
:
"请选择航班日期"
,
format
:
"yyyy-MM-dd"
,
colWidth
:
"23%"
,
...
...
@@ -22,8 +22,8 @@ export const formConfig = [
{
label
:
"航线"
,
type
:
"Input"
,
name
:
"
r
oute"
,
prop
:
"
r
oute"
,
name
:
"
flightR
oute"
,
prop
:
"
flightR
oute"
,
placeholder
:
""
,
span
:
5
,
labelWidth
:
"40px"
,
...
...
@@ -42,21 +42,22 @@ export const formConfig = [
];
// 航线规则表单
export
const
routeRuleForm
=
{
config
:
true
,
flightRoute
:
""
,
// 飞行航线
location
:
""
,
// 包含始发站
notLocation
:
""
,
// 不包含始发站
destinationSite
:
""
,
// 包含目的站
notDestinationSite
:
""
,
// 不包含目的站
location
:
null
,
// 包含始发站
notLocation
:
null
,
// 不包含始发站
destinationSite
:
null
,
// 包含目的站
notDestinationSite
:
null
,
// 不包含目的站
includeUrsa
:
""
,
// URSA包含
notIncludeUrsa
:
""
,
// URSA不包含
minNumOfPieces
:
""
,
// 最小件数
maxNumOfPieces
:
""
,
// 最大件数
minWeight
:
""
,
// 最小重量
maxWeight
:
""
,
// 最大重量
typeOfGoods
:
""
,
// 申报类别
cargoType
:
""
,
// 货物类型
puporpuxCode
:
""
,
// 取件扫描号
serviceCode
:
""
,
// Service Code
handlingCode
:
""
,
// Handling Code
subCategory
:
""
,
// Sub Category
}
typeOfGoods
:
[]
,
// 申报类别
cargoType
:
[]
,
// 货物类型
puporpuxCode
:
[]
,
// 取件扫描号
serviceCode
:
[]
,
// Service Code
handlingCode
:
[]
,
// Handling Code
subCategory
:
[]
,
// Sub Category
}
;
...
...
src/views/allocationConfig/flightAllocConfig/routeData.js
View file @
2d69a11
export
const
routeData
=
{
export
const
routeData
1
=
{
code
:
200
,
msg
:
"操作成功"
,
data
:
{
list
:
[
{
id
:
3022
,
createTime
:
"2023-09-14 16:00:18"
,
createUserId
:
"5750"
,
createUserName
:
"ysy"
,
updateTime
:
"2023-09-20 18:24:47"
,
updateUserName
:
"ysy"
,
purposeOfFlightNo
:
"LK001"
,
location
:
"AAE;AB5;AB4;AB1"
,
includeUrsa
:
"P_"
,
notIncludeUrsa
:
"P4;P5;P6"
,
minNumOfPieces
:
null
,
maxNumOfPieces
:
10
,
minWeight
:
6
,
maxWeight
:
25
,
serviceCode
:
"FICP;FO;IED;IPE;IPF"
,
declarationCategory
:
null
,
typeOfGoods
:
"D;C"
,
subCategory
:
"Blank;Bond;BSO"
,
status
:
"1"
,
whetherHistory
:
"0"
,
historyId
:
null
,
updateUserId
:
5750
,
notLocation
:
null
,
handlingCode
:
"BLANK;ABC;CHM;DG"
,
portName
:
"PVG"
,
puporpuxCode
:
"PUP;BLANK;PUX46"
,
flightRoute
:
"SZX"
,
routePriority
:
"2"
,
ruleDate
:
null
,
routeSpecifyDateSeq
:
"TSN;SZX;CAN;CAN-PVG"
,
destinationSite
:
null
,
notDestinationSite
:
"91A;84A;ZWO;ZYIA"
,
},
{
id
:
3267
,
createTime
:
"2023-09-19 15:23:53"
,
createUserId
:
"5750"
,
createUserName
:
"ysy"
,
updateTime
:
"2023-09-20 18:24:47"
,
updateUserName
:
"ysy"
,
purposeOfFlightNo
:
"LK001"
,
id
:
3337
,
createTime
:
"2023-09-21 09:50:01"
,
createUserId
:
"5749"
,
createUserName
:
"wjh"
,
updateTime
:
null
,
updateUserName
:
null
,
purposeOfFlightNo
:
"JC001"
,
location
:
null
,
includeUrsa
:
"P_"
,
notIncludeUrsa
:
"P5;P6;P7"
,
minNumOfPieces
:
3
,
notIncludeUrsa
:
null
,
minNumOfPieces
:
null
,
maxNumOfPieces
:
null
,
minWeight
:
null
,
maxWeight
:
null
,
serviceCode
:
"ces0193;FICP;FO;IE;IED"
,
serviceCode
:
null
,
declarationCategory
:
null
,
typeOfGoods
:
"D"
,
subCategory
:
"Blank;Bond;BSO"
,
typeOfGoods
:
null
,
subCategory
:
null
,
status
:
"1"
,
whetherHistory
:
"0"
,
historyId
:
"3266"
,
updateUserId
:
5750
,
historyId
:
null
,
updateUserId
:
null
,
notLocation
:
null
,
handlingCode
:
"BLANK;ABC;BON;CHM"
,
handlingCode
:
null
,
portName
:
"PVG"
,
puporpuxCode
:
"POM01;POM03;PUP;POM02;PUX46"
,
flightRoute
:
"
CAN
"
,
routePriority
:
"
3
"
,
ruleDate
:
null
,
routeSpecifyDateSeq
:
"
TSN;SZX;CAN;CAN-PVG
"
,
puporpuxCode
:
null
,
flightRoute
:
"
USA
"
,
routePriority
:
"
1
"
,
ruleDate
:
"2023-09-21"
,
routeSpecifyDateSeq
:
"
USA;SEYB
"
,
destinationSite
:
null
,
notDestinationSite
:
null
,
},
{
id
:
3
023
,
createTime
:
"2023-09-
14 16:05:56
"
,
createUserId
:
"57
50
"
,
createUserName
:
"
ysy
"
,
updateTime
:
"2023-09-20 18:24:47"
,
updateUserName
:
"ysy"
,
purposeOfFlightNo
:
"
LK
001"
,
id
:
3
338
,
createTime
:
"2023-09-
21 09:50:03
"
,
createUserId
:
"57
49
"
,
createUserName
:
"
wjh
"
,
updateTime
:
null
,
updateUserName
:
null
,
purposeOfFlightNo
:
"
JC
001"
,
location
:
null
,
includeUrsa
:
"P_
;W_
"
,
notIncludeUrsa
:
"P1;P7;P6"
,
minNumOfPieces
:
5
,
includeUrsa
:
"P_"
,
notIncludeUrsa
:
null
,
minNumOfPieces
:
null
,
maxNumOfPieces
:
null
,
minWeight
:
10
,
maxWeight
:
30
,
serviceCode
:
"FO;IE"
,
minWeight
:
null
,
maxWeight
:
null
,
serviceCode
:
null
,
declarationCategory
:
null
,
typeOfGoods
:
null
,
subCategory
:
null
,
status
:
"1"
,
whetherHistory
:
"0"
,
historyId
:
null
,
updateUserId
:
5750
,
notLocation
:
"SHAA;KCAA"
,
handlingCode
:
"ABC;BON;KMW1"
,
updateUserId
:
null
,
notLocation
:
null
,
handlingCode
:
null
,
portName
:
"PVG"
,
puporpuxCode
:
"POM01;POM03;PUP;PUX46;PUX79"
,
flightRoute
:
"
TSN
"
,
routePriority
:
"
1
"
,
ruleDate
:
null
,
routeSpecifyDateSeq
:
"
TSN;SZX;CAN;CAN-PVG
"
,
puporpuxCode
:
null
,
flightRoute
:
"
SEYB
"
,
routePriority
:
"
2
"
,
ruleDate
:
"2023-09-21"
,
routeSpecifyDateSeq
:
"
USA;SEYB
"
,
destinationSite
:
null
,
notDestinationSite
:
"PEK;PVG"
,
notDestinationSite
:
null
,
},
],
routeList
:
[
{
fltNo
:
"
LK
001"
,
route
:
"
TSN
"
,
fltNo
:
"
JC
001"
,
route
:
"
USA
"
,
routePriority
:
"1"
,
},
{
fltNo
:
"
LK
001"
,
route
:
"S
ZX
"
,
fltNo
:
"
JC
001"
,
route
:
"S
EYB
"
,
routePriority
:
"2"
,
},
{
fltNo
:
"LK001"
,
route
:
"CAN"
,
routePriority
:
"3"
,
},
{
fltNo
:
"LK001"
,
route
:
"CAN-PVG"
,
routePriority
:
"4"
,
},
],
},
};
export
const
route
Info
=
{
export
const
route
Data2
=
{
code
:
200
,
msg
:
"操作成功"
,
data
:
{
cargoType
:
[
{
id
:
83944
,
code
:
"cargoType10"
,
chineseName
:
"A"
,
englishName
:
"A"
,
description
:
"A"
,
status
:
1
,
dictId
:
50125
,
dictCode
:
"cargoType"
,
parentId
:
null
,
ext1
:
84010
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
10
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
83945
,
code
:
"cargoType20"
,
chineseName
:
"B"
,
englishName
:
"B"
,
description
:
"B"
,
status
:
1
,
dictId
:
50125
,
dictCode
:
"cargoType"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
20
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
83946
,
code
:
"cargoType30"
,
chineseName
:
"C"
,
englishName
:
"C"
,
description
:
"C"
,
status
:
1
,
dictId
:
50125
,
dictCode
:
"cargoType"
,
parentId
:
null
,
ext1
:
84011
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
30
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
83947
,
code
:
"cargoType40"
,
chineseName
:
"D"
,
englishName
:
"D"
,
description
:
"D"
,
status
:
1
,
dictId
:
50125
,
dictCode
:
"cargoType"
,
parentId
:
null
,
ext1
:
84009
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
40
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
],
subCategory
:
[
{
id
:
107980
,
code
:
"subCategory40"
,
chineseName
:
"Blank"
,
englishName
:
"Blank"
,
description
:
"blank"
,
status
:
1
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
1
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108696
,
code
:
"subCategory60"
,
chineseName
:
"98563"
,
englishName
:
null
,
description
:
null
,
status
:
0
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
2
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107978
,
code
:
"subCategory20"
,
chineseName
:
"Bond"
,
englishName
:
"Bond"
,
description
:
"bond"
,
status
:
1
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
3
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107977
,
code
:
"subCategory10"
,
chineseName
:
"BSO"
,
englishName
:
"BSO"
,
description
:
"BSO"
,
status
:
1
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
4
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108735
,
code
:
"subCategory70"
,
chineseName
:
"cecececececececececec"
,
englishName
:
"cecececececececececec"
,
description
:
null
,
status
:
1
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
5
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107979
,
code
:
"subCategory30"
,
chineseName
:
"Ecommerce"
,
englishName
:
"Ecommerce"
,
description
:
"ecommerce"
,
status
:
1
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
6
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108290
,
code
:
"subCategory50"
,
chineseName
:
"KMW5"
,
englishName
:
"KMW5"
,
description
:
"KMW5"
,
status
:
0
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
7
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108858
,
code
:
"subCategory100"
,
chineseName
:
"TEsT"
,
englishName
:
"TEsT"
,
description
:
null
,
status
:
1
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
8
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108808
,
code
:
"subCategory90"
,
chineseName
:
"testtesttest"
,
englishName
:
"testtesttest"
,
description
:
null
,
status
:
1
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
9
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108807
,
code
:
"subCategory80"
,
chineseName
:
"testtesttesttesttesttesttesttesttesttesttesttestte"
,
englishName
:
"testtesttesttesttesttesttesttesttesttesttesttestte"
,
description
:
null
,
status
:
1
,
dictId
:
60230
,
dictCode
:
"subCategory"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
10
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
],
cargoStatus
:
[
{
id
:
107776
,
code
:
"cargoStatus200"
,
chineseName
:
"海关查验货"
,
englishName
:
"海关查验货"
,
description
:
"海关查验货"
,
status
:
1
,
dictId
:
50127
,
dictCode
:
"cargoStatus"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
21
,
ext4
:
1
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107777
,
code
:
"cargoStatus210"
,
chineseName
:
"海关退单货"
,
englishName
:
"海关退单货"
,
description
:
"海关退单货"
,
status
:
1
,
dictId
:
50127
,
dictCode
:
"cargoStatus"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
22
,
ext4
:
1
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107778
,
code
:
"cargoStatus220"
,
chineseName
:
"退回货"
,
englishName
:
"退回货"
,
description
:
"退回货"
,
status
:
1
,
dictId
:
50127
,
dictCode
:
"cargoStatus"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
23
,
ext4
:
1
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107779
,
code
:
"cargoStatus230"
,
chineseName
:
"扣关货"
,
englishName
:
"扣关货"
,
description
:
"扣关货"
,
status
:
1
,
dictId
:
50127
,
dictCode
:
"cargoStatus"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
24
,
ext4
:
1
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107780
,
code
:
"cargoStatus240"
,
chineseName
:
"报关货"
,
englishName
:
"报关货"
,
description
:
"报关货"
,
status
:
1
,
dictId
:
50127
,
dictCode
:
"cargoStatus"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
25
,
ext4
:
1
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107781
,
code
:
"cargoStatus250"
,
chineseName
:
"爆仓货"
,
englishName
:
"爆仓货"
,
description
:
"爆仓货"
,
status
:
1
,
dictId
:
50127
,
dictCode
:
"cargoStatus"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
26
,
ext4
:
1
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107782
,
code
:
"cargoStatus260"
,
chineseName
:
"新鲜货"
,
englishName
:
"新鲜货"
,
description
:
"新鲜货"
,
status
:
1
,
dictId
:
50127
,
dictCode
:
"cargoStatus"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
27
,
ext4
:
1
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
107964
,
code
:
"cargoStatus280"
,
chineseName
:
"海关放行"
,
englishName
:
"海关放行"
,
description
:
"海关放行"
,
status
:
1
,
dictId
:
50127
,
dictCode
:
"cargoStatus"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
29
,
ext4
:
1
,
ext5
:
null
,
ext6
:
null
,
},
],
serviceCode
:
[
{
id
:
108298
,
code
:
"serviceCode12"
,
chineseName
:
"CESHI"
,
englishName
:
"CESHI"
,
description
:
"CESHI"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
4
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108289
,
code
:
"serviceCode10"
,
chineseName
:
"CHESHI"
,
englishName
:
"CHESHI"
,
description
:
"测试"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
6
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108198
,
code
:
"serviceCode8"
,
chineseName
:
"FICP"
,
englishName
:
"FICP"
,
description
:
"FICP"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
7
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108195
,
code
:
"serviceCode5"
,
chineseName
:
"FO"
,
englishName
:
"FO"
,
description
:
"FO"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
8
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108196
,
code
:
"serviceCode6"
,
chineseName
:
"IE"
,
englishName
:
"IE"
,
description
:
"IE"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
9
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108191
,
code
:
"serviceCode1"
,
chineseName
:
"IED"
,
englishName
:
"IED"
,
description
:
"IED"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
10
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108194
,
code
:
"serviceCode4"
,
chineseName
:
"IEF"
,
englishName
:
"IEF"
,
description
:
"IEF"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
11
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108197
,
code
:
"serviceCode7"
,
chineseName
:
"IP"
,
englishName
:
"IP"
,
description
:
"IP"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
12
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108192
,
code
:
"serviceCode2"
,
chineseName
:
"IPD"
,
englishName
:
"IPD"
,
description
:
"IPD"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
13
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108199
,
code
:
"serviceCode9"
,
chineseName
:
"IPE"
,
englishName
:
"IPE"
,
description
:
"IPE"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
14
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108193
,
code
:
"serviceCode3"
,
chineseName
:
"IPF"
,
englishName
:
"IPF"
,
description
:
"IPF"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
15
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108368
,
code
:
"serviceCode14"
,
chineseName
:
"ce321"
,
englishName
:
"ce321"
,
description
:
null
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
1
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108369
,
code
:
"serviceCode15"
,
chineseName
:
"ces0193"
,
englishName
:
"ces0193"
,
description
:
"ces0193"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
2
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108367
,
code
:
"serviceCode13"
,
chineseName
:
"ces1234"
,
englishName
:
"ces1234"
,
description
:
"ces1234"
,
status
:
1
,
dictId
:
60189
,
dictCode
:
"serviceCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
3
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
],
handlingCode
:
[
{
id
:
108091
,
code
:
"handlingCode40"
,
chineseName
:
"ABC"
,
englishName
:
"ABC"
,
description
:
"ABC"
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
2
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108093
,
code
:
"handlingCode60"
,
chineseName
:
"BLANK"
,
englishName
:
"BLANK"
,
description
:
"BLANK"
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
1
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108090
,
code
:
"handlingCode30"
,
chineseName
:
"BON"
,
englishName
:
"BON"
,
description
:
"BON"
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
3
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108656
,
code
:
"handlingCode100"
,
chineseName
:
"CES01;CES02"
,
englishName
:
"CES01;CES02"
,
description
:
"CES01;CES02"
,
status
:
0
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
5
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108657
,
code
:
"handlingCode110"
,
chineseName
:
"CES03"
,
englishName
:
"CES03"
,
description
:
"123"
,
status
:
0
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
6
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108088
,
code
:
"handlingCode10"
,
chineseName
:
"CHM"
,
englishName
:
"CHM"
,
description
:
"CHM"
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
11
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108092
,
code
:
"handlingCode50"
,
chineseName
:
"DG"
,
englishName
:
"DG"
,
description
:
"DG"
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
12
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108286
,
code
:
"handlingCode70"
,
chineseName
:
"KMW1"
,
englishName
:
"KMW1"
,
description
:
"测试"
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
13
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108089
,
code
:
"handlingCode20"
,
chineseName
:
"O50"
,
englishName
:
"O50"
,
description
:
"O50"
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
14
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108324
,
code
:
"handlingCode90"
,
chineseName
:
"TEsT"
,
englishName
:
"TEST"
,
description
:
null
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
15
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108876
,
code
:
"handlingCode150"
,
chineseName
:
"ces"
,
englishName
:
"ces"
,
description
:
null
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
4
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108976
,
code
:
"handlingCode160"
,
chineseName
:
"ces4444"
,
englishName
:
"ces4444"
,
description
:
null
,
status
:
0
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
7
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108977
,
code
:
"handlingCode170"
,
chineseName
:
"cess"
,
englishName
:
"cess"
,
description
:
"cess"
,
status
:
0
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
8
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108978
,
code
:
"handlingCode180"
,
chineseName
:
"cesss"
,
englishName
:
"cesss"
,
description
:
"cesss"
,
status
:
0
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
9
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108979
,
code
:
"handlingCode190"
,
chineseName
:
"cessss"
,
englishName
:
"cessss"
,
description
:
"cessss"
,
status
:
0
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
10
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108806
,
code
:
"handlingCode140"
,
chineseName
:
"testtesttest"
,
englishName
:
"testtesttest"
,
description
:
null
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
16
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108805
,
code
:
"handlingCode130"
,
chineseName
:
"testtesttesttesttesttesttesttesttesttesttesttestte"
,
englishName
:
"testtesttesttesttesttesttesttesttesttesttesttestte"
,
description
:
null
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
17
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108981
,
code
:
"handlingCode210"
,
chineseName
:
"~PJ200"
,
englishName
:
null
,
description
:
null
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
18
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108982
,
code
:
"handlingCode220"
,
chineseName
:
"~PJ222"
,
englishName
:
null
,
description
:
null
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
19
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
list
:
[
{
id
:
108980
,
code
:
"handlingCode200"
,
chineseName
:
"~PJ223"
,
englishName
:
null
,
description
:
null
,
status
:
1
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
20
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
id
:
3335
,
createTime
:
"2023-09-21 09:49:40"
,
createUserId
:
"5749"
,
createUserName
:
"wjh"
,
updateTime
:
"2023-09-21 09:56:12"
,
updateUserName
:
"wjh"
,
purposeOfFlightNo
:
"JC001"
,
location
:
null
,
includeUrsa
:
"P_"
,
notIncludeUrsa
:
null
,
minNumOfPieces
:
null
,
maxNumOfPieces
:
null
,
minWeight
:
null
,
maxWeight
:
null
,
serviceCode
:
null
,
declarationCategory
:
null
,
typeOfGoods
:
null
,
subCategory
:
null
,
status
:
"1"
,
whetherHistory
:
"0"
,
historyId
:
null
,
updateUserId
:
5749
,
notLocation
:
null
,
handlingCode
:
null
,
portName
:
"PVG"
,
puporpuxCode
:
null
,
flightRoute
:
"USA"
,
routePriority
:
"1"
,
ruleDate
:
null
,
routeSpecifyDateSeq
:
"USA;SEYB;LKE"
,
destinationSite
:
null
,
notDestinationSite
:
null
,
},
{
id
:
108695
,
code
:
"handlingCode120"
,
chineseName
:
"测试321"
,
englishName
:
null
,
description
:
null
,
status
:
0
,
dictId
:
60349
,
dictCode
:
"handlingCode"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
21
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
id
:
3336
,
createTime
:
"2023-09-21 09:49:46"
,
createUserId
:
"5749"
,
createUserName
:
"wjh"
,
updateTime
:
"2023-09-21 09:56:12"
,
updateUserName
:
"wjh"
,
purposeOfFlightNo
:
"JC001"
,
location
:
null
,
includeUrsa
:
"P_"
,
notIncludeUrsa
:
null
,
minNumOfPieces
:
null
,
maxNumOfPieces
:
null
,
minWeight
:
null
,
maxWeight
:
null
,
serviceCode
:
null
,
declarationCategory
:
null
,
typeOfGoods
:
null
,
subCategory
:
null
,
status
:
"1"
,
whetherHistory
:
"0"
,
historyId
:
null
,
updateUserId
:
5749
,
notLocation
:
null
,
handlingCode
:
null
,
portName
:
"PVG"
,
puporpuxCode
:
null
,
flightRoute
:
"SEYB"
,
routePriority
:
"2"
,
ruleDate
:
null
,
routeSpecifyDateSeq
:
"USA;SEYB;LKE"
,
destinationSite
:
null
,
notDestinationSite
:
null
,
},
],
puporpux
:
[
{
id
:
108575
,
code
:
"PUPORPUX11"
,
chineseName
:
"POM01"
,
englishName
:
"POM01"
,
description
:
"POM01"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
4
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108576
,
code
:
"PUPORPUX12"
,
chineseName
:
"POM03"
,
englishName
:
"POM03"
,
description
:
"POM03"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
6
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108498
,
code
:
"PUPORPUX10"
,
chineseName
:
"QIA33"
,
englishName
:
"QIA33"
,
description
:
"测试"
,
status
:
0
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
14
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108418
,
code
:
"PUPORPUX7"
,
chineseName
:
"PUP"
,
englishName
:
"PUP"
,
description
:
"PUP"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
7
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108878
,
code
:
"PUPORPUX16"
,
chineseName
:
"aAAXXX"
,
englishName
:
"aAAXXX"
,
description
:
null
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
2
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108405
,
code
:
"PUPORPUX1"
,
chineseName
:
"BLANK"
,
englishName
:
"BLANK"
,
description
:
"BLANK"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
1
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108497
,
code
:
"PUPORPUX9"
,
chineseName
:
"POM02"
,
englishName
:
"POM02"
,
description
:
"测试用"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
5
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108855
,
code
:
"PUPORPUX15"
,
chineseName
:
"TEsT"
,
englishName
:
"TEsT"
,
description
:
null
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
15
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108496
,
code
:
"PUPORPUX8"
,
chineseName
:
"POL21"
,
englishName
:
"POL21"
,
description
:
"测试用"
,
status
:
0
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
3
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108615
,
code
:
"PUPORPUX13"
,
chineseName
:
"QIA1"
,
englishName
:
"QIA1"
,
description
:
null
,
status
:
0
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
13
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108815
,
code
:
"PUPORPUX14"
,
chineseName
:
"测试0731"
,
englishName
:
"测试0731"
,
description
:
null
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
16
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108412
,
code
:
"PUPORPUX2"
,
chineseName
:
"PUX46"
,
englishName
:
"PUX46"
,
description
:
"PUX46"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
10
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
{
id
:
108413
,
code
:
"PUPORPUX3"
,
chineseName
:
"PUX79"
,
englishName
:
"PUX79"
,
description
:
"PUX79"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
11
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
},
routeList
:
[
{
id
:
108414
,
code
:
"PUPORPUX4"
,
chineseName
:
"PUX23"
,
englishName
:
"PUX23"
,
description
:
"PUX23"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
9
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
fltNo
:
"JC001"
,
route
:
"USA"
,
routePriority
:
"1"
,
},
{
id
:
108415
,
code
:
"PUPORPUX5"
,
chineseName
:
"PUX17"
,
englishName
:
"PUX17"
,
description
:
"PUX17"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
8
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
fltNo
:
"JC001"
,
route
:
"SEYB"
,
routePriority
:
"2"
,
},
{
id
:
108416
,
code
:
"PUPORPUX6"
,
chineseName
:
"PUX86"
,
englishName
:
"PUX86"
,
description
:
"PUX86"
,
status
:
1
,
dictId
:
60389
,
dictCode
:
"PUPORPUX"
,
parentId
:
null
,
ext1
:
null
,
ext2
:
null
,
ext3
:
null
,
ordinal
:
12
,
ext4
:
null
,
ext5
:
null
,
ext6
:
null
,
fltNo
:
"JC001"
,
route
:
"LKE"
,
routePriority
:
"3"
,
},
],
},
...
...
src/views/allocationConfig/flightAllocConfig/routeInfo.vue
View file @
2d69a11
...
...
@@ -5,7 +5,7 @@
<el-col>
<yl-form ref="ruleForm" :formConfig="formConfig" :queryForm="queryForm" :inline="false" formWidth="auto"
@blur="blurEvent">
<yl-draggable></yl-draggable>
<yl-draggable
:routeList="routeList" :dragOptions="dragOptions"
></yl-draggable>
</yl-form>
</el-col>
</el-row>
...
...
@@ -30,7 +30,7 @@ import YlForm from "@/components/YlForm";
import RouteInfo from "./components/routeInfo";
import YlDraggable from "@/components/YlDraggable";
import { formConfig, routeRuleForm } from "./formConfig";
import { removeDuplicates, filterRepeat } from "@/utils"
import { removeDuplicates, filterRepeat } from "@/utils"
;
import {
allDictData, // 获取全部字典
findDestinationFltRuleByFlightNo, // 航线维度设置详情
...
...
@@ -50,10 +50,17 @@ export default {
},
data() {
return {
dragOptions: { // 航线优先级拖拽配置
animation: 200,
group: "description",
disabled: false, // 是否禁止拖拽
ghostClass: "ghost"
},
formConfig: formConfig, // 表单配置项
queryForm: {
// 表单参数
},
routeList: [], // 航线
routesInfo: [], // 航线规则信息
cargoType: [], // 申报类别
cargoStatus: [], // 货物类型
...
...
@@ -66,7 +73,9 @@ export default {
computed: {},
created() {
this.getAllDictData(); // 获取全部字典
// 查询 & 修改时
if (this.$route.query.name == "view" || this.$route.query.name == "edit") {
this.queryForm = this.$route.query;
let parmas = {
flightDate: this.$route.query.flightDate, // 航班日期
flightRoute: "", // 航线
...
...
@@ -76,13 +85,12 @@ export default {
};
// 日期级别
if (this.$route.query.flightDate) {
delete parmas.flightRouteListStr
this.getFlightRouteConfigInfoDetail(parmas)
// delete parmas.flightRouteListStr;
this.getFlightRouteConfigInfoDetail(parmas)
;
} else {
// 普通级别
this.getFlightRouteConfigInfoDetail(parmas)
this.getFlightRouteConfigInfoDetail(parmas)
;
}
console.log(this.$route.query);
}
},
mounted() { },
...
...
@@ -116,65 +124,119 @@ export default {
return;
}
let routeList1 = data.routeList; // 航班航线基本信息
this.routeList = data.routeList;
let { flightDate } = parmas;
// 如果是日期级别的再做一次没有日期的查询
/*
如果是日期级别的再做一次没有日期的查询
日期级别规则:航线取自己的,但是航线数据如果有取自己的,没有则去拿普通规则的;
*/
if (flightDate) {
parmas.flightDate = "";
parmas.flightRouteListStr = "",
findDestinationFltRuleByFlightNo(parmas).then(response => {
if (response.code != 200) {
this.msgError(response.msg);
return;
}
let routeList2 = response.data.routeList; // 航班航线基本信息
/*
日期级别;
日期级别只拿日期级别的航线,但是日期级别的航线没有数据则去查询没有日期的航班信息,
然后拿没有日期的航班维度信息;
*/
// 日期级别航班航线维度规则详情
const dataList1 = removeDuplicates(data.list, {
duplicate: "flightRoute", // 去重字段
sort: false, // 是否要排序
sortType: "Number", // 排序类型
sortAttr: "routePriority", // 排序字段
});
// 普通级别航班航线维度规则详情
const dataList2 = removeDuplicates(response.data.list, {
duplicate: "flightRoute", // 去重字段
sort: false, // 是否要排序
sortType: "Number", // 排序类型
sortAttr: "routePriority", // 排序字段
});
// 先把日期级别的数据合并,然后再对遍历普通级别的dataList2;
// 看看
// console.log(dataList1)
// console.log(dataList2)
const newRouteList1 = routeList1.filter((item, index, array) => {
if(item.route == dataList1.unique[index].flightRoute){
console.log(array)
findDestinationFltRuleByFlightNo(parmas)
.then((response) => {
if (response.code != 200) {
this.msgError(response.msg);
return;
}
});
console.log(newRouteList1)
}).catch(() => { });
let routeList2 = response.data.routeList; // 航班航线基本信息
// 日期级别航班航线维度规则详情
const dataList1 = removeDuplicates(data.list, {
duplicate: "flightRoute", // 去重字段
sort: false, // 是否要排序
sortType: "Number", // 排序类型
sortAttr: "routePriority", // 排序字段
});
// 普通级别航班航线维度规则详情
const dataList2 = removeDuplicates(response.data.list, {
duplicate: "flightRoute", // 去重字段
sort: false, // 是否要排序
sortType: "Number", // 排序类型
sortAttr: "routePriority", // 排序字段
});
// 【日期规则】
const dateFlightRoute = routeList1.map((item1) => {
const item2 = dataList1.unique.find((item2) => {
if (item2.flightRoute === item1.route) {
item2.config = true;
return item2;
}
}); // 返回当前相等的一条数据
if (item2) {
// 有数据的合并对象,
return { ...item1, ...item2 };
} else {
// 没有数据的去普通航线里查找
const item = dataList2.unique.find((item) => {
if (item.flightRoute === item1.route) {
item.config = true;
return item;
}
});
if (item) {
return { ...item1, ...item }; // 有数据的合并对象,
} else {
item1.config = false;
return item1; // 没有的返回当前的
}
}
});
// 处理属性
dateFlightRoute.map((item) => {
if (item.config) {
this.hasOwnProperty(item, "typeOfGoods");
this.hasOwnProperty(item, "puporpuxCode");
this.hasOwnProperty(item, "serviceCode");
this.hasOwnProperty(item, "handlingCode");
this.hasOwnProperty(item, "subCategory");
this.setattrVal(item) // 设置属性值
}
});
this.routesInfo = dateFlightRoute;
})
.catch(() => { });
}
// console.log(routeList2);
// 如果当前航班号的航线下没有数据给这个航线在list里面追加一个data属性,值设置为false
// 当点击新增规则按钮往这个routesInfo push数据并且把data属性值设置为true
})
.catch(() => { });
},
// 判断对象是否存在某个属性,并且把这个属性值使用分号分隔
hasOwnProperty(item, key) {
if (item.hasOwnProperty(key)) {
item[key] = item[key].split(";");
}
},
// 设置属性值
setattrVal(item) {
if (item.location) {
// 始发站
item.isLocation = "1";
}
if (item.notLocation) {
item.isLocation = "2";
}
if (item.location == null && item.notLocation == null) {
item.isLocation = "1";
}
if (item.destinationSite) {
// 目的站
item.isDestinationSite = "1";
}
if (item.notDestinationSite) {
item.isDestinationSite = "2";
}
if (
item.destinationSite == null &&
item.notDestinationSite == null
) {
item.isDestinationSite = "1";
}
},
// 失焦事件
blurEvent({ originOfFlightNo }) {
this.queryForm.originOfFlightNo = this.upCase(originOfFlightNo);
},
// 当前激活面板改变时触发
collapseChange(name) {
console.log(name);
//
console.log(name);
},
// 始发站
changeLocation(val) {
...
...
@@ -211,8 +273,13 @@ export default {
// 新增规则
addRlue(index) {
// 如果当前航班号的航线下没有数据给
this.routesInfo.push(routeRuleForm); // 给新增规则赋上默认数据
console.log("新增规则:", index);
this.setattrVal(routeRuleForm)
const mergeObj = {
...this.routesInfo[index],
...routeRuleForm
};
this.$set(this.routesInfo, index, mergeObj) // 给新增规则赋上默认数据
console.log("新增规则:", this.routesInfo);
},
},
};
...
...
Please
register
or
login
to post a comment