|
@@ -4,26 +4,50 @@
|
|
|
<div class="flex-wrap interfaceLog_head_time">
|
|
|
<div class="manageTitle">高级查询</div>
|
|
|
<div class="interfaceLog_head_time_start mr10">
|
|
|
- <el-date-picker v-model="timeStart" size="small" type="datetime" placeholder="选择开始日期时间" default-time="00:00:00">
|
|
|
+ <el-date-picker v-model="timeStart" size="small" type="date" placeholder="选择开始日期时间">
|
|
|
</el-date-picker>
|
|
|
</div>
|
|
|
<div class="interfaceLog_head_time_end">
|
|
|
- <el-date-picker v-model="timeEnd" size="small" type="datetime" placeholder="选择结束日期时间" default-time="00:00:00">
|
|
|
+ <el-date-picker v-model="timeEnd" size="small" type="date" placeholder="选择结束日期时间">
|
|
|
</el-date-picker>
|
|
|
</div>
|
|
|
</div>
|
|
|
<Search @getSearchData="getSearchData" @clearSearchData="clearSearchData" :isTitle="false" :isSlot="true">
|
|
|
<div class="flex-wrap">
|
|
|
- <button class="btnAn">高级查询</button>
|
|
|
+ <button @click="gjFlag = true" class="btnAn">高级查询</button>
|
|
|
<div @click="show" class="setting"></div>
|
|
|
</div>
|
|
|
</Search>
|
|
|
</div>
|
|
|
<!--表格-->
|
|
|
<div v-loading="loading" element-loading-text="拼命加载中" element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.8)" class="advance__table">
|
|
|
- <el-table ref="table" max-height="100%" show-summary class="table" :data="tableData" border stripe height="calc(100vh - 155px)" style="width: 100%">
|
|
|
+ <!-- <el-table ref="table" max-height="100%" show-summary class="table" :data="tableData" border stripe height="calc(100vh - 155px)" style="width: 100%">
|
|
|
<el-table-column v-for="(item, index) in tableColsCopy" :prop="item.statCode" :label="item.statName" :key="index">
|
|
|
</el-table-column>
|
|
|
+ </el-table> -->
|
|
|
+ <el-table ref="table" max-height="100%" show-summary class="table" :data="tableData" border stripe height="calc(100vh - 155px)" style="width: 100%">
|
|
|
+ <el-table-column prop="FlightNO" label="航班号"></el-table-column>
|
|
|
+ <el-table-column prop="FlightDate" label="航班日期"></el-table-column>
|
|
|
+ <el-table-column prop="SourceAirport" label="起飞站"></el-table-column>
|
|
|
+ <el-table-column prop="TargetAirport" label="目的地"></el-table-column>
|
|
|
+ <el-table-column prop="PassengerNameUpcase" label="旅客姓名"></el-table-column>
|
|
|
+ <el-table-column prop="BagSN" label="行李牌号"></el-table-column>
|
|
|
+ <el-table-column prop="SpecialType" label="特殊行李类型"></el-table-column>
|
|
|
+ <el-table-column prop="checkIn" label="值机"></el-table-column>
|
|
|
+ <el-table-column label="删除">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>{{scope.row.deleted == 'DEL' ? 1: 0}}</div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="激活">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>{{scope.row.activated == 'I' ? 0 : 1}}</div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="BagWeight" label="重量"></el-table-column>
|
|
|
+ <el-table-column prop="latestStatus" label="最新状态"></el-table-column>
|
|
|
+ <el-table-column prop="bagLocation" label="最新位置"></el-table-column>
|
|
|
+ <el-table-column prop="TransferFlightNO" label="中转进航班"></el-table-column>
|
|
|
</el-table>
|
|
|
</div>
|
|
|
<!--列设置-->
|
|
@@ -45,13 +69,92 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</Dialog>
|
|
|
+ <!--高级查询-->
|
|
|
+ <Dialog width="852px" :flag="gjFlag">
|
|
|
+ <div class="rowDialog">
|
|
|
+ <div class="title">高级查询</div>
|
|
|
+ <div class="content">
|
|
|
+ <el-form ref="form" :model="form" label-width="100px">
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span="16">
|
|
|
+ <el-form-item label="航班日期">
|
|
|
+ <el-date-picker v-model="form.time" size="small" type="daterange" value-format="yyyy-MM-dd" start-placeholder="开始日期" end-placeholder="结束日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="当前状态">
|
|
|
+ <el-input size="small" v-model="form.status"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="航班号">
|
|
|
+ <el-input size="small" v-model="form.flightNumber"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="起飞站">
|
|
|
+ <el-input size="small" v-model="form.station"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="目的地">
|
|
|
+ <el-input size="small" v-model="form.destination"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="行李牌号">
|
|
|
+ <el-input size="small" v-model="form.grade"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="特殊行李类型">
|
|
|
+ <el-input size="small" v-model="form.type"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="容器编号">
|
|
|
+ <el-input disabled size="small" v-model="form.container"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="旅客姓名">
|
|
|
+ <el-input size="small" v-model="form.name"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="PNR">
|
|
|
+ <el-input size="small" v-model="form.pnr"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="值机序号">
|
|
|
+ <el-input size="small" v-model="form.check"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+ <div class="foot right t30">
|
|
|
+ <el-button size="medium" class="r24" @click="onCheckGj" type="primary">确定</el-button>
|
|
|
+ <el-button size="medium" @click="gjFlag = false">取消</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </Dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import Search from '@/layout/components/Search';
|
|
|
import Dialog from "@/layout/components/Dialog";
|
|
|
-import { IntegratedQuery, StatItemsQueryByStatMain } from '@/api/flight';
|
|
|
+import { advancedInquiry, getQuery } from '@/api/flight';
|
|
|
+import { parseTime } from '@/utils/index';
|
|
|
export default {
|
|
|
name: 'Advance',
|
|
|
components: { Search, Dialog },
|
|
@@ -59,17 +162,54 @@ export default {
|
|
|
return {
|
|
|
loading: false,
|
|
|
rowFlag: false,
|
|
|
- tableData: [],
|
|
|
+ gjFlag: false,
|
|
|
+ tableData: [
|
|
|
+ {
|
|
|
+ FlightNO: 'CA1200',
|
|
|
+ FlightDate: '2022-04-24',
|
|
|
+ SourceAirport: 'PEK',
|
|
|
+ TargetAirport: 'CTU',
|
|
|
+ PassengerNameUpcase: 'ZHANGSAN',
|
|
|
+ BagSN: '39923234',
|
|
|
+ SpecialType: 'VIP行李',
|
|
|
+ checkIn: '是',
|
|
|
+ deleted: '否',
|
|
|
+ activated: '否',
|
|
|
+ BagWeight: '120KG',
|
|
|
+ latestStatus: '分拣',
|
|
|
+ bagLocation: '四层直接导入',
|
|
|
+ TransferFlightNO: ''
|
|
|
+ }
|
|
|
+ ],
|
|
|
tableColsCopy: [],
|
|
|
checkList: [],
|
|
|
tableCols: [],
|
|
|
- timeStart: '',
|
|
|
- timeEnd: ''
|
|
|
+ timeStart: parseTime(new Date(), '{y}-{m}-{d}'),
|
|
|
+ timeEnd: parseTime(new Date(), '{y}-{m}-{d}'),
|
|
|
+ form: {
|
|
|
+ time: '',
|
|
|
+ status: '',
|
|
|
+ flightNumber: '',
|
|
|
+ destination: '',
|
|
|
+ station: '',
|
|
|
+ grade: '',
|
|
|
+ type: '',
|
|
|
+ container: '',
|
|
|
+ name: '',
|
|
|
+ pnr: '',
|
|
|
+ check: ''
|
|
|
+ },
|
|
|
+ dataContent: []
|
|
|
}
|
|
|
},
|
|
|
created () {
|
|
|
+ //参数顺序 【航班开始日期,航班结束日期,航班号,航班号,行李牌号,行李牌号,起飞站,起飞站,目的站,目的站,特殊行李类型,特殊 行李类型,旅客姓名大写拼音,旅客姓名大写拼音,pnr,pnr,值机号,值机号】
|
|
|
+ const dataContent = [this.timeStart, this.timeEnd];
|
|
|
+ for (let i = 0; i < 18; i++) {
|
|
|
+ dataContent.push(null)
|
|
|
+ }
|
|
|
// this.integratedQuery();
|
|
|
- // this.statItemsQueryByStatMain();
|
|
|
+ this.statItemsQueryByStatMain(dataContent);
|
|
|
},
|
|
|
mounted () {
|
|
|
document.querySelector('.interfaceLog_head_time_start .el-input__prefix i').remove()
|
|
@@ -111,14 +251,46 @@ export default {
|
|
|
this.checkList = this.tableCopy;
|
|
|
this.tableColsCopy = _.cloneDeep(this.checkList);
|
|
|
},
|
|
|
+ //高级查询-确定
|
|
|
+ onCheckGj () {
|
|
|
+ //参数顺序 【航班开始日期,航班结束日期,航班号,航班号,行李牌号,行李牌号,起飞站,起飞站,目的站,目的站,特殊行李类型,特殊 行李类型,旅客姓名大写拼音,旅客姓名大写拼音,pnr,pnr,值机号,值机号】
|
|
|
+ this.dataContent = [];
|
|
|
+ const { time, status, flightNumber, destination, station, grade, type, container, name, pnr, check } = this.form
|
|
|
+ if (time && time.length) {
|
|
|
+ this.dataContent.push(time[0]);
|
|
|
+ this.dataContent.push(time[1]);
|
|
|
+ } else {
|
|
|
+ this.dataContent.push(null);
|
|
|
+ this.dataContent.push(null);
|
|
|
+ }
|
|
|
+ this.setDataContent(status);
|
|
|
+ this.setDataContent(flightNumber);
|
|
|
+ this.setDataContent(grade);
|
|
|
+ this.setDataContent(station);
|
|
|
+ this.setDataContent(destination);
|
|
|
+ this.setDataContent(type);
|
|
|
+ this.setDataContent(name);
|
|
|
+ this.setDataContent(pnr);
|
|
|
+ this.setDataContent(check);
|
|
|
+ this.statItemsQueryByStatMain(this.dataContent);
|
|
|
+ this.gjFlag = false;
|
|
|
+ },
|
|
|
+ setDataContent (target) {
|
|
|
+ if (target) {
|
|
|
+ this.dataContent.push(target);
|
|
|
+ this.dataContent.push(target);
|
|
|
+ } else {
|
|
|
+ this.dataContent.push(null);
|
|
|
+ this.dataContent.push(null);
|
|
|
+ }
|
|
|
+ },
|
|
|
//综合查询
|
|
|
async integratedQuery (obj = {}) {
|
|
|
try {
|
|
|
this.loading = true
|
|
|
- const res = await IntegratedQuery(obj)
|
|
|
+ const res = await advancedInquiry(obj)
|
|
|
if (res.code === 0) {
|
|
|
- this.tableData = res.returnData
|
|
|
- this.loading = false
|
|
|
+ console.log(res)
|
|
|
} else {
|
|
|
this.$message.error(res.message)
|
|
|
this.loading = false
|
|
@@ -129,16 +301,14 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
//表头数据查询
|
|
|
- async statItemsQueryByStatMain (obj = {}) {
|
|
|
+ async statItemsQueryByStatMain (dataContent) {
|
|
|
try {
|
|
|
- const res = await StatItemsQueryByStatMain({
|
|
|
- mainId: 1
|
|
|
+ const res = await getQuery({
|
|
|
+ id: 30,
|
|
|
+ dataContent
|
|
|
})
|
|
|
- if (res.code === 0) {
|
|
|
- const datas = _.sortBy(res.returnData, (o) => o.showOrder);
|
|
|
- this.tableCols = datas
|
|
|
- this.tableColsCopy = _.cloneDeep(this.tableCols)
|
|
|
- this.checkList = this.tableCols
|
|
|
+ if (res.code == 0) {
|
|
|
+ this.tableData = res.returnData
|
|
|
} else {
|
|
|
this.$message.error(res.message)
|
|
|
}
|