jinhui.wang

ver:1.7,新维度页面增加,增加货站 品名 航班页面,货物查询手动配舱增加航线,首页增加航线。。

import request from '@/utils/request'
//目的航班规则接口
//查询航班航线
//查询航线
/**
* @param fltNo 航班号
*/
export function queryRouteByFltNo(data) {
return request({
url: '/dictionary/queryRouteByFltNo',
method: 'post',
data: data
})
}
// 查询航班列表
export function findFlightNo(query) {
/**
* @param purposeOfFlightNo 航班号
* @param flightDate 航班日期
* @param status 状态
* @param start 开始位置 *
* @param limit 每页长度 *
*/
export function findFlightDimRuleByFlightNo(query) {
return request({
url: '/destinationFlight/findFlightNo',
url: '/destinationFlight/findFlightDimRuleByFlightNo',
method: 'post',
data: query
})
}
// id查询目的航班
export function findByFlightId(id) {
const data = {
id
}
// 获取航班下航线维度(维度修改)
/**
* @param purposeOfFlightNo 航班号
* @param flightDate 航班日期
* @param flightRoute 航线
*/
export function findDestinationFltRuleByFlightNo(query) {
return request({
url: '/destinationFlight/findByFlightId',
url: '/destinationFlight/findDestinationFltRuleByFlightNo',
method: 'post',
data: data
data: query
})
}
//航班号查航班
export function findDestinationFltRuleByActualFlight(actualFlight){
const data = {
actualFlight
}
//航班优先级修改
export function batchUpdateOrAddFlight(data) {
return request({
url:'/sourceFlight/findDestinationFltRuleByActualFlight',
method:'post',
data:data
url: '/destinationFlight/batchUpdateOrAddFlight',
method: 'post',
data: data
})
}
export function updateOrAddFlight(form){
//处理数据
form.typeOfGoods = form.typeOfGoods.join(';');
form.declarationCategory = form.declarationCategory.join(';');
form.serviceCode = form.serviceCode.join(';');
form.subCategory = form.subCategory.join(';');
form.handlingCode = form.handlingCode.join(';');
//新增修改规则设置
export function updateOrAddFlight(form) {
return request({
url:'/destinationFlight/updateOrAddFlight',
url: '/destinationFlight/updateOrAddFlight',
method: 'post',
data:form
data: form
})
}
//删除规则
export function delFlightId(id){
export function delFlightId(id) {
const data = {
id
}
......@@ -65,7 +74,7 @@ export function delFlightId(id){
}
//启用/停止规则
export function enableOrDisable(id, status){
export function enableOrDisable(id, status) {
//statsu 1-有效 3-停用
const data = {
id,
......@@ -78,43 +87,59 @@ export function enableOrDisable(id, status){
})
}
//申报类别
export function cargoTypeData(){
//获取全部字典
export function allDictData() {
return request({
url: '/destinationFlight/cargoTypeData',
url: '/destinationFlight/allDictData',
method: 'post'
})
}
//货物类型
export function cargoStatusData(){
//维度航线优先级查询
/**
* @param fltNo 航班号
* @param routeDate 航班日期
*/
export function allRouteQuery(data) {
return request({
url: '/destinationFlight/cargoStatusData',
method: 'post'
url: '/specifyDateRoute/query',
method: 'post',
data: data
})
}
//ServiceCode
export function serviceCodeData(){
//维度航线优先级修改
/**
* @param list 航线排序集合
*/
export function saveOrUpdateSpecifyDateRoute(data) {
return request({
url: '/destinationFlight/serviceCodeData',
method: 'post'
url: '/specifyDateRoute/saveOrUpdateSpecifyDateRoute',
method: 'post',
data: data
})
}
//SubCategory
export function subCategoryData(){
// id查询目的航班
export function findByFlightId(id) {
const data = {
id
}
return request({
url: '/destinationFlight/subCategoryData',
method: 'post'
url: '/destinationFlight/findByFlightId',
method: 'post',
data: data
})
}
//获取全部字典
export function allDictData(){
return request({
url: '/destinationFlight/allDictData',
method: 'post'
})
//航班号查航班
export function findDestinationFltRuleByActualFlight(actualFlight) {
// const data = {
// actualFlight
// }
// return request({
// url: '/sourceFlight/findDestinationFltRuleByActualFlight',
// method: 'post',
// data: data
// })
}
\ No newline at end of file
......
import request from '@/utils/request'
//批量导入
export function importGoods(file, type) {
let formData = new FormData();
formData.append("file", file);
formData.append("type", type);
return request({
url: '/goods/importGoods',
method: 'post',
data: formData
})
}
//批量添加品名货站
/**
* @param goodsStation * 货站名
* @param goodsList * 货品名list
*/
export function batchAddGoods(data) {
return request({
url: '/goods/batchAddGoods',
method: 'post',
data: data
})
}
//批量删除品名货站
/**
* @param idList * id集合
*/
export function batchDeleteGoods(data) {
return request({
url: '/goods/batchDeleteGoods',
method: 'post',
data: data
})
}
//查询品名
/**
* @param page * 页数
* @param size * 页长
* @param goodsStation 货站名
*/
export function searchGoods(data) {
return request({
url: '/goods/searchGoods',
method: 'post',
data: data
})
}
\ No newline at end of file
import request from '@/utils/request'
//查询货站航班
/**
* @param page * 页数
* @param size * 页长
* @param goodsStation 货站名称
*/
export function searchStationFlight(data) {
return request({
url: '/stationFlight/searchStationFlight',
method: 'post',
data: data
})
}
//批量添加货站航班
/**
* @param goodsStation * 货站名称
* @param flightList * 航班号集合
*/
export function batchAddStationFlight(data) {
return request({
url: '/stationFlight/batchAddStationFlight',
method: 'post',
data: data
})
}
//批量删除货站航班
/**
* @param id * id集合
*/
export function batchDeleteGoods(data) {
return request({
url: '/stationFlight/batchDeleteGoods',
method: 'post',
data: data
})
}
\ No newline at end of file
......@@ -86,7 +86,7 @@ let ductLabels = {
"2_2": "已处理(数据丢弃)",
"2_3": "已处理(数据丢弃)",
"2_4": "已处理(数据丢弃)",
"3_1": "已处理(异常处理)",
// "3_1": "已处理(异常处理)",
"3_2": "处理失败(系统异常)",
"3_3": "处理失败(系统异常)",
"3_4": "处理失败(系统异常)",
......
......@@ -32,7 +32,7 @@ let tableHeaders = {
},
{
columnChineseName: "已配体积(m³)",
columnName: "allocationVolumn",
columnName: "allocatedVolume",
columnWidth: "",
status: 1
},
......@@ -234,6 +234,13 @@ let tableHeaders = {
status: 1
},
{
columnChineseName: "终配航线",
columnName: "finalFlightRoute",
columnWidth: "140",
ext1: "sorTable",
status: 1,
},
{
columnChineseName: "二配航班号",
columnName: "twoMatchFlightNo",
columnWidth: "120",
......@@ -248,6 +255,13 @@ let tableHeaders = {
status: 1
},
{
columnChineseName: "二配航线",
columnName: "twoFlightRoute",
columnWidth: "140",
ext1: "sorTable",
status: 1,
},
{
columnChineseName: "预配航班号",
columnName: "preplanFlightNo",
columnWidth: "120",
......@@ -414,7 +428,7 @@ let tableHeaders = {
},
{
columnChineseName: "航线",
columnName: "router",
columnName: "flightRoute",
columnWidth: "140",
status: 1
},
......@@ -976,6 +990,7 @@ let tableHeaders = {
columnChineseName: "航班日期",
columnName: "ruleDate",
columnWidth: "150",
ext1: 'slot',
status: 1
},
{
......@@ -1135,7 +1150,7 @@ let tableHeaders = {
},
{
columnChineseName: "当前配载航线",
columnName: "flightRoute",
columnName: "currentFlightRoute",
columnWidth: "130",
status: 1
},
......@@ -1268,7 +1283,7 @@ let tableHeaders = {
{
columnChineseName: "申报类别",
columnName: "declarationCategory",
columnWidth: "100",
columnWidth: "80",
status: 1
},
{
......@@ -1280,13 +1295,13 @@ let tableHeaders = {
{
columnChineseName: "增加重量",
columnName: "increaseWeight",
columnWidth: "100",
columnWidth: "90",
status: 1
},
{
columnChineseName: "减轻重量",
columnName: "reduceWeight",
columnWidth: "100",
columnWidth: "90",
status: 1
},
{
......@@ -1385,6 +1400,185 @@ let tableHeaders = {
status: 1
},
],
//货站-品名
"goodsStation": [
{
columnChineseName: "口岸",
columnName: "portName",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "货站名称",
columnName: "goodsStation",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "品名",
columnName: "goodsName",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "操作人",
columnName: "updateUserName",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "操作时间",
columnName: "updateTime",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "创建日期",
columnName: "createTime",
columnWidth: "",
ext1: "",
status: 1
},
],
//货站-航班
"goodsStationFlight": [
{
columnChineseName: "口岸",
columnName: "portName",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "货站名称",
columnName: "goodsStation",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "航班号",
columnName: "fltNo",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "操作人",
columnName: "updateUserName",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "操作时间",
columnName: "updateTime",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "创建日期",
columnName: "createTime",
columnWidth: "",
ext1: "",
status: 1
},
],
//特殊配舱规则
"superAllocation": [
{
columnChineseName: "ShipperAccount",
columnName: "shipperAccount",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "原航班",
columnName: "accsFlightNo",
columnWidth: "150",
ext1: "",
status: 1
},
{
columnChineseName: "操作人",
columnName: "updateUserName",
columnWidth: "100",
ext1: "",
status: 1
},
{
columnChineseName: "操作时间",
columnName: "updateTime",
columnWidth: "200",
ext1: "",
status: 1
},
],
"newSuperAllocation": [
{
columnChineseName: "航班日期",
columnName: "",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "航班号",
columnName: "",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "航线",
columnName: "",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "URSA",
columnName: "",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "申报类型",
columnName: "",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "服务类型",
columnName: "",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "预留仓位",
columnName: "",
columnWidth: "",
ext1: "",
status: 1
},
{
columnChineseName: "已配仓位",
columnName: "",
columnWidth: "",
ext1: "",
status: 1
},
]
}
export default tableHeaders;
\ No newline at end of file
......
......@@ -294,6 +294,17 @@ body {
max-width: 300px;
}
.backgroundCollapse {
.el-collapse-item__header {
background-color: #d9ecff !important;
border-bottom: 1px solid #ccc;
}
}
.numberInput {
width: 100% !important;
}
.el-select-dropdown__wrap {
max-height: 350px !important;
}
\ No newline at end of file
......
<template>
<el-breadcrumb class="app-breadcrumb" separator="/">
<transition-group name="breadcrumb">
<el-breadcrumb-item v-for="(item,index) in levelList" :key="item.path">
<span v-if="item.redirect==='noRedirect'||index==levelList.length-1" class="no-redirect">{{ item.meta.title }}</span>
<el-breadcrumb-item v-for="(item, index) in levelList" :key="item.path">
<span v-if="item.redirect === 'noRedirect' || index == levelList.length - 1" class="no-redirect">{{ item.meta.title
}}</span>
<a v-else @click.prevent="handleLink(item)">{{ item.meta.title }}</a>
</el-breadcrumb-item>
</transition-group>
......@@ -35,7 +36,7 @@ export default {
const first = matched[0]
if (!this.isDashboard(first)) {
matched = [{ path: '/index', meta: { title: '首页' }}].concat(matched)
matched = [{ path: '/index', meta: { title: '首页' } }].concat(matched)
}
......@@ -46,7 +47,7 @@ export default {
if (!name) {
return false
}
return name.trim() === '首页'
return name.trim() === 'Index'
},
handleLink(item) {
const { redirect, path } = item
......
......@@ -19,7 +19,7 @@
export default {
name: 'Toolbar',
props: {
data: {
routes: {
type: Array,
default: null
},
......@@ -35,12 +35,12 @@ export default {
}
},
created() {
this.list = this.data
this.list = this.routes
},
watch: {
data(val) {
routes(val) {
if (val) {
this.list = this.data
this.list = val
}
}
},
......@@ -81,7 +81,7 @@ export default {
.container {
max-width: 350px;
min-height: 32px;
max-height: 150px;
// max-height: 150px;
overflow-y: scroll;
display: flex;
flex-direction: column;
......
......@@ -5,7 +5,7 @@
<i slot="suffix" class="el-icon-search el-input__icon" />
</el-input>
<div class="icon-list">
<div v-for="(item, index) in iconList" :key="index" @click="selectedIcon(item)">
<div :class="name == item?'selectIcon':''" v-for="(item, index) in iconList" :key="index" @click="selectedIcon(item)">
<svg-icon :icon-class="item" style="height: 30px;width: 16px;" />
<span>{{ item }}</span>
</div>
......@@ -31,6 +31,7 @@ export default {
}
},
selectedIcon(name) {
this.name = name
this.$emit('selected', name)
document.body.click()
},
......@@ -65,4 +66,7 @@ export default {
}
}
}
.selectIcon{
border:1px solid #ccc;
}
</style>
......
<template>
<div class="top-right-btn">
<el-row>
<el-tooltip class="item" effect="dark" :content="showSearch ? '隐藏搜索' : '显示搜索'" placement="top">
<el-button size="mini" circle icon="el-icon-search" @click="toggleSearch()" />
<el-tooltip
class="item"
effect="dark"
:content="showSearch ? '隐藏搜索' : '显示搜索'"
placement="top"
>
<el-button
:size="size"
circle
icon="el-icon-search"
@click="toggleSearch()"
/>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="刷新" placement="top">
<el-button size="mini" circle icon="el-icon-refresh" @click="refresh()" />
<el-button
:size="size"
circle
icon="el-icon-refresh"
@click="refresh()"
/>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="显隐列" placement="top" v-if="columns">
<el-button size="mini" circle icon="el-icon-menu" @click="showColumn()" />
<el-tooltip
class="item"
effect="dark"
content="显隐列"
placement="top"
v-if="columns"
>
<el-button
:size="size"
circle
icon="el-icon-menu"
@click="showColumn()"
/>
</el-tooltip>
</el-row>
<el-dialog :title="title" :visible.sync="open" append-to-body>
......@@ -42,6 +68,10 @@ export default {
columns: {
type: Array,
},
size: {
type: String,
default: "mini",
},
},
created() {
// 显隐列初始默认隐藏列
......
......@@ -6,9 +6,7 @@
:style="activeStyle(tag)" @click.middle.native="!isAffix(tag) ? closeSelectedTag(tag) : ''"
@contextmenu.prevent.native="openMenu(tag, $event)">
{{ tag.title }}
<span
v-if="tag.name != 'FlightAllocConfigAdd' && tag.name != 'FlightAllocConfigInfo' && tag.name != 'weatherTable' && !isAffix(tag)"
class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" />
<span v-if="!isAffix(tag)" class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" />
</router-link>
</scroll-pane>
<ul v-show="visible" :style="{ left: left + 'px', top: top + 'px' }" class="contextmenu">
......
......@@ -73,19 +73,13 @@ export const constantRoutes = [
hidden: true,
children: [
{
path: '/info/:handle/:id',
path: '/info/:handle/:fltNo-:fltDate',
component: (resolve) => require(['@/views/allocationConfig/flightAllocConfig/info'], resolve),
name: 'FlightAllocConfigInfo',
meta: { title: '航班配舱', icon: 'user' }
},
{
path: '/info/:handle',
component: (resolve) => require(['@/views/allocationConfig/flightAllocConfig/info'], resolve),
name: 'FlightAllocConfigAdd',
meta: { title: '新增配舱', icon: 'user' }
},
{
path: '/weatherTable',
path: '/weatherTable/:awbNbr',
component: (resolve) => require(['@/views/systemLog/dmLog/weatherTable'], resolve),
name: 'weatherTable',
meta: { title: '流水表', icon: 'user' }
......
......@@ -58,5 +58,5 @@ module.exports = {
/**
* 版本号
*/
version: 'version:1.6.0'
version: 'version:1.7.0'
}
......
......@@ -15,7 +15,7 @@
style="width: 400px; margin: 30px auto" :model="formData" :rules="rules">
<el-form-item label="航班号" prop="fltNo">
<el-input class="formItem" v-model="fltNo" size="medium" placeholder="请输入航班号" maxlength="10"
style="width: 350px"></el-input>
style="width: 350px" @change="dateChange"></el-input>
</el-form-item>
<el-form-item label="航班日期:" prop="fltDate">
<el-date-picker class="formItem" v-model="formData.fltDate" type="date" placeholder="选择日期"
......@@ -200,9 +200,12 @@ export default {
},
//日期选择变化
dateChange(val) {
this.routeList = []
if (this.formData.fltNo && this.formData.fltNo != null && this.formData.fltNo != '') {
if (this.formData.fltDate && this.formData.fltDate != null && this.formData.fltDate != '') {
let obj = {
fltNo: this.formData.fltNo,
fltDate: val
fltDate: this.formData.fltDate,
}
findFlightRoute(obj).then(res => {
if (res.code === 200) {
......@@ -217,6 +220,12 @@ export default {
}).catch(err => {
console.log(err)
})
} else {
this.msgWarning('航班日期不能为空')
}
} else {
this.msgWarning('航班号不能为空')
}
}
},
computed: {
......@@ -233,4 +242,5 @@ export default {
</script>
<style>
</style>
\ No newline at end of file
......
<template>
<div>
<el-dialog title="航线优先级排序" :visible.sync="open" width="25%" :close-on-click-modal="false" :show-close="false"
append-to-body center>
<el-form ref="routeOrder" label-width="auto" label-position="left" size="small" @submit.native.prevent>
<el-form-item label="航班号:" prop="fltNo">
<span>{{ fltNo }}</span>
</el-form-item>
<el-form-item label="航班日期:" prop="fltDate">
<span>{{ fltDate }}</span>
</el-form-item>
<el-form-item label="航线优先级" prop="route">
<Drag :routes="routeList" @drag="drag"></Drag>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" :loading="loading" @click="submit">确 定</el-button>
<el-button @click="close">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { allRouteQuery, saveOrUpdateSpecifyDateRoute } from "@/api/destinationFlight";
export default {
name: "",
props: {
open: {
type: Boolean,
default: false
},
fltData: {
type: Object,
default: null
}
},
data() {
return {
fltNo: '',
fltDate: '',
routeList: [],
submitData: [],
loading: false
}
},
watch: {
open(val) {
if (val) {
this.fltNo = this.fltData.fltNo
this.fltDate = this.fltData.fltDate
allRouteQuery({
fltNo: this.fltNo,
routeDate: this.fltDate
}).then(res => {
if (res.code === 200) {
this.routeList = res.data.list
this.submitData = res.data.list
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
console.log(err)
})
}
}
},
methods: {
submit() {
saveOrUpdateSpecifyDateRoute(this.submitData).then(res => {
if (res.code === 200) {
this.msgSuccess('保存成功')
this.close()
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
console.log(err)
})
},
close() {
this.$emit('close')
},
drag(val) {
val.forEach((item, index) => {
item.ordinal = index + 1
})
this.submitData = val
}
}
}
</script>
<style lang="scss" scoped>
</style>
\ No newline at end of file
<template>
<div>
<el-form ref="flightAllocForm" :inline="true" :model="queryParams" class="form-header" size="medium"
label-position="right" label-width="auto">
label-position="right" label-width="auto" @submit.native.prevent>
<el-form-item label="航班号">
<el-input v-model.trim="purposeOfFlightNo" placeholder="航班号" @keyup.enter.native="getList"></el-input>
</el-form-item>
<el-form-item label="航班日期">
<el-date-picker class="formItem" v-model="queryParams.flightDate" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd" clearable>
</el-date-picker>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="queryParams.status" placeholder="状态">
<el-option label="有效" value="1"></el-option>
......@@ -18,8 +23,8 @@
<el-button class="mb20" type="primary" icon="el-icon-plus" size="mini" v-hasPermi="['allocation:alloc:add']"
@click="
$router.push({
name: 'FlightAllocConfigAdd',
params: { handle: 'add' },
name: 'FlightAllocConfigInfo',
params: { handle: 'add', fltNo: 'new', fltDate: ' ',status:null },
})
">添加</el-button>
</div>
......@@ -28,47 +33,61 @@
:order="true" :totalCount="total" :loading="loading" :limitSize="queryParams.limit"
:limitStart="queryParams.start" :page="curPage" :pageSizes="[20]" :height="tableHeight"
@currentChange="currentChange">
<template v-slot:ruleDate="scope">
<el-link v-if="scope.row.ruleDate" type="primary" @click="toRouteOrder(scope.row)">
{{
scope.row.ruleDate
}}<i class="el-icon-link"></i> </el-link>
</template>
<template slot="optionColumn">
<el-table-column label="操作" prop="id" align="center">
<el-table-column label="操作" align="center" width="150">
<template slot-scope="scope">
<el-button type="text" size="mini" icon="el-icon-view" @click="handleClick(scope.row.id, 'detail')">查看
<el-button type="text" size="mini" icon="el-icon-view"
@click="handleClick(scope.row.purposeOfFlightNo, 'detail', scope.row.ruleDate, scope.row.status)">查看
</el-button>
<el-button type="text" size="mini" icon="el-icon-edit" v-hasPermi="['allocation:alloc:update']"
@click="handleClick(scope.row.id, 'update')">修改</el-button>
<el-button type="text" size="mini" icon="el-icon-delete" style="color:#ff4949"
@click="handleClick(scope.row.purposeOfFlightNo, 'update', scope.row.ruleDate, scope.row.status)">修改
</el-button>
<!-- <el-button type="text" size="mini" icon="el-icon-delete" style="color:#ff4949"
v-hasPermi="['allocation:alloc:delete']" @click="del(scope.row.id, scope.row.status)">删除</el-button>
<el-button type="text" size="mini" icon="el-icon-video-pause" v-hasPermi="['allocation:alloc:openClose']"
@click="changeStatus(scope.row.id, 3)" v-if="scope.row.status == '1'">停用</el-button>
<el-button type="text" size="mini" icon="el-icon-video-play" v-hasPermi="['allocation:alloc:openClose']"
@click="changeStatus(scope.row.id, 1)" v-else>启用</el-button>
@click="changeStatus(scope.row.id, 1)" v-else>启用</el-button> -->
</template>
</el-table-column>
</template>
</Tables>
<Dialog :fltData="colData" :open="open" @close="close"></Dialog>
</div>
</template>
<script>
import {
findFlightNo,
delFlightId,
enableOrDisable,
findFlightDimRuleByFlightNo
} from "@/api/destinationFlight";
import Dialog from './dialog.vue'
export default {
name: "FlightAllocConfig",
components: {
Dialog
},
data() {
return {
queryParams: {
purposeOfFlightNo: "",
purposeOfFlightNo: null,
flightDate: undefined,
status: "1",
start: 0,
limit: 20,
},
flyList: [],
colData: {},
curPage: 1,
total: 0,
tableHeight: null,
open: false,
loading: false,
};
},
......@@ -94,66 +113,36 @@ export default {
this.queryParams.start = 0;
}
this.loading = true;
findFlightNo(this.queryParams).then((response) => {
if (response.code != 200) {
this.msgWarning(response.msg)
return;
findFlightDimRuleByFlightNo(this.queryParams).then(res => {
this.loading = false
if (res.code === 200) {
this.flyList = res.data.list
this.total = res.data.totalCount
} else {
this.msgWarning(res.msg)
}
this.flyList = response.data.list;
this.total = response.data.totalCount;
this.loading = false;
});
}).catch(err => {
this.loading = false
console.log(err)
})
},
//跳转到查看,修改页面
handleClick(flightiId, handle) {
handleClick(fltNo, handle, fltDate, status) {
this.$router.push({
name: "FlightAllocConfigInfo",
params: { handle: handle, id: flightiId },
params: { handle: handle, fltNo: fltNo, fltDate: fltDate ? fltDate : null, status: status },
});
},
//删除规则
del(id, status) {
if (status == "1") {
this.$confirm("航班规则生效中,无法删除,请停用后再操作", "警告", {
confirmButtonText: "确定",
showCancelButton: false,
type: "warning",
});
} else {
this.$confirm("是否确认删除此航班规则?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
showCancelButton: true,
type: "warning",
}).then(() => {
delFlightId(id)
.then((res) => {
res.code === 200 ? this.msgSuccess(res.msg) : this.msgWarning(res.msg)
this.getList()
})
.catch(() => { });
});
//航班优先级修改
toRouteOrder(val) {
this.colData = {
fltNo: val.purposeOfFlightNo,
fltDate: val.ruleDate
}
this.open = true
},
//启用,停用
changeStatus(id, status) {
let tip = status === 1 ? "启用" : "停用";
this.$confirm("是否确认" + tip + "此航班规则?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
}).then(() => {
enableOrDisable(id, status)
.then((res) => {
if (res.code != 200) {
this.msgError(res.msg);
} else {
this.getList();
this.msgSuccess(tip + "成功");
}
})
.catch(() => { });
});
close() {
this.open = false
},
//翻页
currentChange(val) {
......
......@@ -768,8 +768,10 @@ export default {
let obj = {
handle: 'update',
fltNo: val.fltNo,
fltDate: val.fltDate,
status: 'flightInformationMaintenance'
fltDate: val.fltDate ? val.fltDate : null,
route: val.flightKindName != 'Purple Tail' ? val.route : '',
routeStatus: 'flightInformationMaintenance' + val.flightKindName,
status: '1'
}
this.$router.push({
name: 'FlightAllocConfigInfo',
......
......@@ -16,10 +16,10 @@
</el-col>
</el-row>
</el-form>
<Tables ref="cargoLog" ductName="cargoLog" :order="false" :data="data.tableData" :headerData="tableHeader"
tableAlign="center" :showOverflowTooltip="false" :height="tableHeight" :page="selectData.page"
:limitSize="selectData.size" :pageSizes="[100]" :pagination="false" :loading="loading"
@currentChange="currentChange">
<Tables ref="cargoLog" ductName="cargoLog" :order="false" :border='false' :data="data.tableData"
:headerData="tableHeader" tableAlign="center" :showOverflowTooltip="false" :height="tableHeight"
:page="selectData.page" :limitSize="selectData.size" :pageSizes="[100]" :pagination="false"
:loading="loading" @currentChange="currentChange">
</Tables>
<div slot="footer" class="dialog-footer">
<el-button @click="close">关 闭</el-button>
......@@ -93,4 +93,5 @@ export default {
</script>
<style scoped>
</style>
\ No newline at end of file
......
......@@ -49,7 +49,7 @@
<el-col :span="6">
<el-form-item label="配载航班号">
<el-input type="textarea" v-model="cargoPlaneNo" class="formItem" placeholder="AC001;AC002" :rows="4"
clearable></el-input>
clearable @change="planeNoChange"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
......@@ -129,6 +129,24 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item>
<template slot="label">
<div style="display:inline-block">配载航线
<el-tooltip class="item" effect="dark" content="选择航线需要先输入配载航班号,才能选择对应得航线" placement="top-start">
<span class="el-icon-warning" style="color:#1890ff;font-size:16px"></span>
</el-tooltip>
</div>
</template>
<el-select class="formItem" v-model="formData.cargoPlaneRoute" placeholder="不限"
:disabled="routeList.length == 0" clearable @change="routeSelectChange"
:key="formData.cargoPlaneRoute">
<el-option v-for="(item, index) in routeList" :label="item" :value="item" :key="item">
<Tooltips :content="item" :refName="item"></Tooltips>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-col>
</el-row>
......@@ -192,7 +210,7 @@
</template>
<script>
import { findConditionData, findCargoData, releaseCargo } from "@/api/cargoSelect";
import { findConditionData, findCargoData, releaseCargo, getFlightsRoutes } from "@/api/cargoSelect";
import { downLoadXlsx } from "@/utils/zipdownload";
import Dialog from "./dialog.vue";
......@@ -229,6 +247,7 @@ export default {
cargoPlaneNo: null,
cargoPlaneStart: null,
cargoPlaneEnd: null,
cargoPlaneRoute: null,
limitStart: 1,
limitSize: 100,
}, //表单数据
......@@ -286,8 +305,9 @@ export default {
findConditionData: {}, //货物查询条件
tableData: [], //表格数据
cargoLog: {},
allWeight: 0,
allQty: 0,
routeList: [],
allWeight: 0,//总重量
allQty: 0,//总件数
shiftKey: false,
valueFormat: "yyyy-MM-dd",
tableLoading: false,
......@@ -358,6 +378,8 @@ export default {
this.formData.cargoPlaneStart = this.$route.params.fltDate
this.formData.cargoPlaneEnd = this.$route.params.fltDate
this.formData.cargoPlaneNo = this.$route.params.fltNo
this.formData.cargoPlaneRoute = this.$route.params.route
this.planeNoChange(this.formData.cargoPlaneNo)
this.select(0)
} else {
//否则请求原页面缓存状态
......@@ -426,6 +448,8 @@ export default {
this.formData.cargoPlaneStart = from.params.fltDate
this.formData.cargoPlaneEnd = from.params.fltDate
this.formData.cargoPlaneNo = from.params.fltNo
this.formData.cargoPlaneRoute = from.params.route
this.planeNoChange(this.formData.cargoPlaneNo)
this.select(0)
}
}
......@@ -462,6 +486,7 @@ export default {
}
findCargoData(this.formData)
.then((res) => {
setTimeout(() => {
if (res.code == 200) {
this.tableData = res.data.list;
this.totalCount = res.data.totalCount;
......@@ -477,6 +502,7 @@ export default {
}
this.tableLoading = false;
})
})
.catch(() => {
this.tableLoading = false;
});
......@@ -604,6 +630,22 @@ export default {
this.page = val.page;
this.select();
},
//配载航班号获取航线
planeNoChange(val) {
getFlightsRoutes(val.split(';')).then(res => {
if (res.code === 200) {
this.routeList = res.data
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
console.log(err)
})
},
routeSelectChange(val) {
this.$forceUpdate()
// this.formData.cargoPlaneRoute = val
},
//排序
sortChange(val) {
let data = [];
......
......@@ -42,8 +42,8 @@
</el-form-item>
</el-form>
<el-row class="card2">
<el-col :span="1" v-for="item in tableData">
<div class="fltBox" @click="rowClick(item)"
<el-col :span="1" v-for="item in fltBox">
<div class="fltBox" @click="rowClick({ fltNo: item.fltNo, fltDate: item.fltDate, route: '' })"
:style="{ backgroundColor: (item.percentage * 100).toFixed(2) >= 100 ? '#13ce66' : (item.percentage * 100).toFixed(2) >= 75 ? '#ffba00' : '#ff4949' }">
<div class="fltName">{{ item.fltNo }}</div>
<div class="fltWeight">{{ (item.percentage == 0 ? 0 : ((item.percentage) * 100).toFixed(2)) + '%' }}
......@@ -88,6 +88,7 @@ export default {
page: 1,
size: 1
},//查询条件
fltBox: [],
tableData: [],//table数据
tableHeader: this.tableHeaders['index'],//表头
fltKindIdList: [],//航班类型
......@@ -126,10 +127,12 @@ export default {
},
//获取首页信息(日期查询)
async getFlight() {
this.fltBox = []
this.loading = true
getOneDayFlight(this.selectData).then(res => {
this.loading = false
if (res.code === 200) {
this.getfltBox(JSON.parse(JSON.stringify(res.data.list)))
this.tableData = res.data.list
this.percentage = res.data.percentage
this.totalWeight = res.data.totalWeight
......@@ -142,11 +145,30 @@ export default {
console.log(err)
})
},
getfltBox(val) {
val.forEach(flt => {
let status = 1
this.fltBox.forEach(item => {
if (item.fltNo == flt.fltNo) {
item.percentage = flt.percentage + item.percentage
status = 2
}
})
if (status == 1) {
this.fltBox.push(flt)
}
})
},
//某行被点击
rowClick(val) {
let obj = {}
obj.fltNo = val.fltNo
obj.fltDate = val.fltDate
if (val.flightKindName == 'Purple Tail') {
obj.route = ''
} else {
obj.route = val.route
}
this.$router.push({ name: 'QueryCargo', params: obj })
},
//翻页
......
......@@ -39,7 +39,7 @@
<el-input type="text" v-model="newDictionary.fltNo" disabled></el-input>
</el-form-item>
<el-form-item label="航线">
<Drag :data="routeList" @drag="drag"></Drag>
<Drag :routes="routeList" @drag="drag"></Drag>
</el-form-item>
</div>
</div>
......
<template>
<div>
<el-dialog title="新 增" :visible.sync="open" width="25%" :close-on-click-modal="false" :show-close="false"
append-to-body center>
<el-form class="form-header" :model="formData" size="small" ref="addForm" label-width="auto"
label-position="left" style="margin-bottom:10px" :rules="rules" @submit.native.prevent>
<el-form-item label="货站名称" prop="goodsStation">
<el-input type="text" v-model="formData.goodsStation" placeholder="请输入货站名称"></el-input>
</el-form-item>
<el-form-item label="品名" prop="goodsList">
<el-input type="textarea" v-model="formData.goodsList" rows="4" placeholder="请输入品名,多个用“;”隔开">
</el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" :loading="loading" @click="submit">确 定</el-button>
<el-button @click="close">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { batchAddGoods } from "@/api/goodsStation"
export default {
name: '',
props: {
open: {
type: Boolean,
default: false
},
},
data() {
return {
formData: {
goodsStation: null,
goodsList: null
},
rules: {
goodsStation: [
{
required: true,
message: "货站名称不能为空",
trigger: "blur",
},
],
goodsList: [
{
required: true,
message: "品名不能为空",
trigger: "blur",
},
],
},
loading: false,
}
},
watch: {
},
methods: {
//提交
submit() {
let obj = {}
obj.goodsStation = this.formData.goodsStation
if (this.formData.goodsList != null && this.formData.goodsList != '') {
obj.goodsList = this.formData.goodsList.split(';')
}
this.$refs['addForm'].validate(val => {
if (val) {
this.loading = true
batchAddGoods(obj).then(res => {
this.loading = false
if (res.code === 200) {
this.msgSuccess('添加成功')
this.close()
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
this.loading = false
console.log(err)
})
}
})
},
//取消
close() {
this.formData = {
goodsStation: null,
goodsList: null
}
this.$refs["addForm"].clearValidate();
this.$emit('close')
}
}
}
</script>
<style lang="scss" scoped>
</style>
\ No newline at end of file
<template>
<div>
<el-form class="form-header" ref="selectForm" label-width="auto" label-position="left"
style="margin-bottom:10px" @submit.native.prevent size="small">
<el-row>
<el-col :span="6">
<el-form-item label="货站名称">
<el-input v-model="selectionData.goodsStation" placeholder="请输入货站名称" maxlength="50" clearable />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div style="display:flex;padding:10px 20px">
<el-button icon="el-icon-search" type="primary" :loading="loading" size="small" @click="selection(1)">查 询
</el-button>
<el-button icon="el-icon-plus" type="primary" size="small" v-hasPermi="['system:goodsStation:add']"
@click="add">新 增
</el-button>
<el-button icon="el-icon-delete" type="danger" size="small" v-hasPermi="['system:goodsStation:delete']"
style="margin-left:10px" :disabled="checkData.length==0" @click="batchDel">
删 除
</el-button>
<el-button type="primary" icon="el-icon-download" size="small" style="margin-right:10px"
@click="downloadTempleate">下载模板
</el-button>
<el-upload action="/caPreReviewImport/importFlight" name="file" :http-request="uploadExcel"
:on-remove="handleRemove" :limit="1" :on-exceed="handleExceed" :file-list="fileList" accept=".xlsx"
class="upload-demo">
<el-button type="primary" icon="el-icon-upload2" size="small">导入Excel</el-button>
</el-upload>
</div>
<Tables ref="goodsStation" ductName="goodsStation" :data="tableData" :headerData="tableHeader" :selection="true"
:order="true" :selectFixed="false" :totalCount="totalCount" :loading="loading"
:limitSize="selectionData.size" :page="selectionData.page" layout="total,prev, pager, next, jumper, ->"
:pageSizes="[100]" :height="tableHeight" @tableSelect="tableSelect" @tableSelectAll="tableSelectAll"
@currentChange="currentChange">
<template slot="optionColumn">
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-delete" style="color:#ff4949"
v-hasPermi="['system:goodsStation:delete']" @click="del(scope.row)">删除</el-button>
</template>
</el-table-column>
</template>
</Tables>
<Dialog :open="open" @close="close" />
<UpDateResult :dialogVisible="resultOpen" :resultData="errorData" @close="resultClose" />
</div>
</template>
<script>
import { downLoadTemplate } from "@/api/flightInfoImport";
import { importGoods, batchDeleteGoods, searchGoods } from "@/api/goodsStation"
import Dialog from './dialog.vue'
import UpDateResult from './upDateResult.vue'
export default {
name: 'GoodsStation',
components: {
Dialog,
UpDateResult
},
data() {
return {
selectionData: {
goodsStation: '',
size: 20,
page: 1
},
tableData: [],
tableHeader: this.tableHeaders['goodsStation'],
checkData: [],
fileList: [],
errorData: [],
tableHeight: null,
totalCount: 0,
loading: false,
open: false,
resultOpen: false,
}
},
created() {
},
mounted() {
this.tableHeight = window.innerHeight - this.$refs.goodsStation.$el.offsetHeight - 200
this.selection(1)
},
watch: {
$route(to, from) {
if (to.name == 'GoodsStation') {
this.selection()
}
}
},
methods: {
//查询
selection(val) {
this.tableData = []
this.checkData = []
this.loading = true
if (val === 1) {
this.selectionData.page = 1
}
searchGoods(this.selectionData).then(res => {
this.loading = false
if (res.code === 200) {
this.tableData = res.data.list
this.totalCount = res.data.total
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
this.loading = false
console.log(err)
})
},
//新增
add() {
this.open = true
},
//删除
del(val) {
this.$confirm("是否要删除这条记录!", "注意!", {
confirmButtonText: "确定",
cancelButtonText: '取消',
type: "warning",
}).then(() => {
this.deleteGoods([val.id])
}).catch(() => {
})
},
//批量删除
batchDel() {
let arr = []
this.checkData.forEach(item => {
arr.push(item.id)
})
this.$confirm("是否要删除这些记录!", "注意!", {
confirmButtonText: "确定",
cancelButtonText: '取消',
type: "warning",
}).then(() => {
this.deleteGoods(arr)
}).catch(() => {
})
},
//删除请求
deleteGoods(val) {
batchDeleteGoods(val).then(res => {
if (res.code === 200) {
this.msgSuccess('删除成功!')
this.selection(1)
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
console.log(err)
})
},
//复选
tableSelect(val) {
this.checkData = val.selection
},
//全选
tableSelectAll(val) {
this.checkData = val
},
//分页
currentChange(val) {
this.selectionData.page = val.page
this.selection()
},
//上传excel
uploadExcel(option) {
const file = option.file;
this.loading = true;
importGoods(file, '').then((res) => {
this.loading = false;
if (res.code != 200) {
if (res.code == 603) {
this.$alert(res.msg, "提示", {
confirmButtonText: "确定",
type: "warning",
});
} else {
this.$message.warning(res.msg);
this.errorData = res.data;
if (this.errorData.length > 0) {
this.resultOpen = true
}
}
} else {
this.$message.success(res.msg);
this.errorData = res.data;
this.selection(1)
}
});
},
//下载模板
downloadTempleate() {
downLoadTemplate('goodsStation').then((res) => {
if (res) {
const blob = new Blob([res]);
const link = document.createElement("a"); //创建a标签
link.download = '货物品名模板.xlsx'; //a标签添加属性
link.style.display = "none";
link.href = URL.createObjectURL(blob);
document.body.appendChild(link);
link.click(); //执行下载
URL.revokeObjectURL(link.href); //释放url
document.body.removeChild(link); //释放标签
} else {
this.$message.error("下载失败");
}
})
},
handleRemove(file, fileList) {
//清掉上传的文件
this.errorData = [];
this.fileList = [];
},
handleExceed(files) {
//重复上传文件
let file = {};
file.file = files[0];
file.name = files[0].name;
this.fileList = [];
this.fileList.push(file);
this.uploadExcel(file);
},
close() {
this.open = false
this.selection(1)
},
resultClose() {
this.resultOpen = false
this.selection(1)
}
}
}
</script>
<style lang="scss" scoped>
.upload-demo {
display: flex;
.el-upload-list__item:first-child {
margin-top: 5px !important;
}
.el-upload-list {
display: inline-block;
margin-left: 10px;
}
}
</style>
\ No newline at end of file
<template>
<div>
<el-dialog title="新 增" :visible.sync="dialogVisible" width="50%" top="1vh" :close-on-click-modal="false"
:show-close="false" append-to-body center>
<el-table ref="filterTable" class="mt20" :data="resultData" size="small" border>
<el-table-column label="行号" prop="line" width="50" align="center">
</el-table-column>
<el-table-column label="错误信息" prop="errorMessage" width="200">
<template slot-scope="scope">
<div v-for="(m, key) in scope.row.errorMessage" :key="key">
{{ m }}
</div>
</template>
</el-table-column>
<el-table-column v-if="resultData.length == 0"></el-table-column>
<el-table-column v-for="(value, key) in this.resultData[0]" :key="key"
v-if="key != 'errorMessage' && key != 'line'" header-align="center" align="center" :label="key"
:prop="key"></el-table-column>
</el-table>
<div slot="footer" class="dialog-footer">
<el-button @click="close">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
name: 'UpDateResult',
props: {
dialogVisible: {
type: Boolean,
default: false
},
resultData: {
type: Array,
default: null
}
},
data() {
return {
}
},
wactch: {
dialogVisible(val) {
if (val) {
}
}
},
methods: {
close() {
this.$emit('close')
}
}
}
</script>
<style lang="scss" scoped>
</style>
\ No newline at end of file
<template>
<div>
<el-dialog title="新 增" :visible.sync="open" width="25%" :close-on-click-modal="false" :show-close="false"
append-to-body center>
<el-form class="form-header" :model="formData" size="small" ref="addForm" label-width="auto"
label-position="left" style="margin-bottom:10px" :rules="rules" @submit.native.prevent>
<el-form-item label="货站名称" prop="goodsStation">
<el-input type="text" v-model="formData.goodsStation" placeholder="请输入货站名称"></el-input>
</el-form-item>
<el-form-item label="航班" prop="flightList">
<el-input type="textarea" v-model="formData.flightList" rows="4" placeholder="请输入航班,多个用“;”隔开">
</el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" :loading="loading" @click="submit">确 定</el-button>
<el-button @click="close">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { batchAddStationFlight } from '@/api/goodsStationFlight'
export default {
name: '',
props: {
open: {
type: Boolean,
default: false
},
},
data() {
return {
formData: {
goodsStation: null,
flightList: null
},
rules: {
goodsStation: [
{
required: true,
message: "货站名称不能为空",
trigger: "blur",
},
],
flightList: [
{
required: true,
message: "航班号不能为空",
trigger: "blur",
},
],
},
loading: false,
}
},
watch: {
},
methods: {
//提交
submit() {
let obj = {}
obj.goodsStation = this.formData.goodsStation
if (this.formData.flightList != null && this.formData.flightList != '') {
obj.flightList = this.formData.flightList.split(';')
}
this.$refs['addForm'].validate(val => {
if (val) {
this.loading = true
batchAddStationFlight(obj).then(res => {
this.loading = false
if (res.code === 200) {
this.msgSuccess('添加成功!')
this.close()
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
this.loading = false
console.log(err)
})
}
})
},
//取消
close() {
this.$refs["addForm"].clearValidate();
this.$emit('close')
}
}
}
</script>
<style lang="scss" scoped>
</style>
\ No newline at end of file
<template>
<div>
<el-form class="form-header" ref="dictForm" label-width="auto" label-position="left" style="margin-bottom:10px"
@submit.native.prevent size="small">
<el-row>
<el-col :span="6">
<el-form-item label="货站名称">
<el-input v-model="selectionData.goodsStation" placeholder="请输入货站名称" maxlength="50" clearable />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div style="display:flex;padding:10px 20px">
<el-button icon="el-icon-search" :loading="loading" type="primary" size="small" @click="selection(1)">查 询
</el-button>
<el-button icon="el-icon-plus" type="primary" size="small" v-hasPermi="['system:goodsStationFlight:add']"
@click="add">新 增
</el-button>
<el-button icon="el-icon-delete" type="danger" size="small" style="margin:0 10px"
:disabled="checkData.length == 0" v-hasPermi="['system:goodsStationFlight:delete']" @click="batchDel">
删 除
</el-button>
</div>
<Tables ref="goodsStationFlight" ductName="goodsStationFlight" :data="tableData" :headerData="tableHeader"
:selection="true" :order="true" :selectFixed="false" :totalCount="totalCount" :loading="loading"
:limitSize="selectionData.size" :page="selectionData.page" layout="total,prev, pager, next, jumper, ->"
:pageSizes="[100]" :height="tableHeight" @tableSelect="tableSelect" @tableSelectAll="tableSelectAll"
@currentChange="currentChange">
<template slot="optionColumn">
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-delete" style="color:#ff4949"
v-hasPermi="['system:goodsStationFlight:delete']" @click="del(scope.row)">删除</el-button>
</template>
</el-table-column>
</template>
</Tables>
<Dialog :open="open" @close="close" />
</div>
</template>
<script>
import { searchStationFlight, batchDeleteGoods } from '@/api/goodsStationFlight'
import Dialog from './dialog.vue'
export default {
name: 'GoodsStationFlight',
components: {
Dialog
},
data() {
return {
selectionData: {
size: 20,
page: 1
},
tableData: [],
tableHeader: this.tableHeaders['goodsStationFlight'],
checkData: [],
tableHeight: null,
totalCount: 0,
loading: false,
open: false,
}
},
created() {
},
mounted() {
this.tableHeight = window.innerHeight - this.$refs.goodsStationFlight.$el.offsetHeight - 200
this.selection(1)
},
watch: {
$route(to, from) {
if (to.name == 'GoodsStationFlight') {
this.selection()
}
}
},
methods: {
//查询
selection(val) {
this.tableData = []
this.checkData = []
this.loading = true
if (val == 1) {
this.selectionData.page = 1
}
searchStationFlight(this.selectionData).then(res => {
this.loading = false
if (res.code === 200) {
this.tableData = res.data.list
this.totalCount = res.data.total
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
his.loading = false
console.log(err)
})
},
add() {
this.open = true
},
//删除
del(val) {
this.$confirm("是否要删除这条记录!", "注意!", {
confirmButtonText: "确定",
cancelButtonText: '取消',
type: "warning",
}).then(() => {
this.deleteGoods([val.id])
}).catch(() => { })
},
//批量删除
batchDel() {
let arr = []
this.checkData.forEach(item => {
arr.push(item.id)
})
this.$confirm("是否要删除这些记录!", "注意!", {
confirmButtonText: "确定",
cancelButtonText: '取消',
type: "warning",
}).then(() => {
this.deleteGoods(arr)
}).catch(() => {
})
},
//删除请求
deleteGoods(val) {
batchDeleteGoods(val).then(res => {
if (res.code === 200) {
this.msgSuccess('操作成功!')
this.selection(1)
} else {
this.msgWarning(res.msg)
}
}).catch(err => {
console.log(err)
})
},
//复选
tableSelect(val) {
this.checkData = val.selection
},
//全选
tableSelectAll(val) {
this.checkData = val
},
//分页
currentChange(val) {
this.selectionData.page = val.page
this.selection()
},
close() {
this.open = false
this.selection(1)
}
}
}
</script>
<style lang="scss" scoped>
</style>
......@@ -69,7 +69,7 @@
</template>
<template v-slot:flightFltNo="scope">
<el-link v-if="scope.row.allocDimId" type="primary"
@click="$router.push({ name: 'FlightAllocConfigInfo', params: { handle: 'DMdetail', id: scope.row.allocDimId } })">
@click="$router.push({ name: 'FlightAllocConfigInfo', params: { id: scope.row.allocDimId, handle: 'detail', fltNo: scope.row.flightFltNo, fltDate: scope.row.flightFltDate ? scope.row.flightFltDate : ' ', routeStatus: 'dmLog', route: scope.row.currentFlightRoute } })">
{{
scope.row.flightFltNo
}}<i class="el-icon-link"></i> </el-link>
......@@ -153,7 +153,7 @@ export default {
getDmFlowInformation('accsId=' + val.dmAccsId).then(res => {
if (res.code === 200) {
if (res.data.list.length > 0) {
this.$router.push({ name: 'weatherTable', params: { data: res.data.list } })
this.$router.push({ name: 'weatherTable', params: { data: res.data.list, awbNbr: val.awbNbr } })
} else {
this.msgWarning('未查询到该条数据的流水')
}
......
<template>
<div style="padding:10px">
<el-button class="ml20 mb20" size="small" icon="el-icon-back" @click="close">返 回</el-button>
<el-card header="流水信息">
<Tables ref="weatherTable" ductName="weatherTable" :order="true" :data="data" :headerData="tableHeader"
:showOverflowTooltip="false" :height="tableHeight" :page="selectData.page" :limitSize="selectData.size"
:pageSizes="[100]" :pagination="false" :loading="loading" @currentChange="currentChange">
<Tables ref="weatherTable" ductName="weatherTable" :order="true" :border="false" :data="data"
:headerData="tableHeader" :showOverflowTooltip="false" :height="tableHeight" :page="selectData.page"
:limitSize="selectData.size" :pageSizes="[100]" :pagination="false" :loading="loading"
@currentChange="currentChange">
</Tables>
<div class="ml20 mt20">
<el-button size="small" @click="close">返 回</el-button>
</div>
</el-card>
</div>
</template>
......@@ -70,7 +69,6 @@ export default {
(item) => item.path === this.$route.path
),
);
sessionStorage.removeItem('accsid')
this.$router.push({ name: 'DmLog' })
},
//翻页
......@@ -80,4 +78,5 @@ export default {
</script>
<style>
</style>
\ No newline at end of file
......