|
|
<!-- 稽核数据查看-->
|
|
|
|
|
|
<template>
|
|
|
<div id="contain_update" style="width:100%;height: 100%;position: inherit">
|
|
|
<div style="height:5%;width:100%;position:relative">
|
|
|
<el-form :inline="true" :label-position="right" style="width:100%;height: 100%">
|
|
|
<el-form-item label="日期:" class="s_el_row">
|
|
|
<el-date-picker
|
|
|
v-model="rpTime"
|
|
|
type="date"
|
|
|
placeholder="选择日期"
|
|
|
value-format="YYYY-MM-DD"
|
|
|
format="YYYY-MM-DD">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="PASSID:" style="width:13%" >
|
|
|
<el-input v-model="passid" clearable></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="车牌号:" style="width:13%" >
|
|
|
<el-input v-model="vehicleId" clearable></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="" style="width:8%;margin-right:5px" class="s_el_row">
|
|
|
<div style="display:flex;text-align: left; height:100%; position: relative;margin:0;padding:0">
|
|
|
<el-button type="primary" style="margin-top: 0px;" @click="searchSolveMatch" class="query_button" size="default" :icon="searchSolveButton">查询</el-button>
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</div>
|
|
|
<div style="height:95%;width:100%;position:relative">
|
|
|
<div style="height: 94%;width: 100%">
|
|
|
<el-table :data="tableData" width="100%" id="table_el" :header-cell-style="{background:'#e9ecee',align:'center'}" border
|
|
|
v-loading="tableLoading"
|
|
|
:row-style="rowStyle"
|
|
|
@row-dblclick="showSolveMatchDetail"
|
|
|
>
|
|
|
<el-table-column type="index" label="序号" :index="indexmethod" width="100px" align="center"/>
|
|
|
<el-table-column prop="classdate" label="日期" :show-overflow-tooltip="true" :formatter="dateFormatter" width="150px" resizable align="center" />
|
|
|
<el-table-column prop="id" label="PASSID" :show-overflow-tooltip="true" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="matchId" label="匹配数据PASSID" :show-overflow-tooltip="true" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="vehicleid" label="车牌号" :show-overflow-tooltip="true" width="220px" resizable align="center" />
|
|
|
<el-table-column prop="vehicleidColor" label="车牌颜色" :show-overflow-tooltip="true" width="220px" resizable align="center" />
|
|
|
<el-table-column prop="gpaFee" label="计费金额(元)" width="250px" resizable align="center" />
|
|
|
<el-table-column prop="divFee" label="拆分金额(元)" width="250px" resizable align="center" />
|
|
|
<el-table-column prop="vehicletype" label="车型" :show-overflow-tooltip="true" width="250px" resizable align="center" />
|
|
|
<el-table-column prop="vehicleclass" label="车种" :show-overflow-tooltip="true" width="100px" resizable align="center" />
|
|
|
<el-table-column prop="datatype" label="数据类型" :show-overflow-tooltip="true" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="maname" label="稽核人员" :show-overflow-tooltip="true" width="180px" resizable align="center" />
|
|
|
<el-table-column prop="createTime" label="稽核时间" :show-overflow-tooltip="true" :formatter="dateFormatterSSS" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="checkStatus" label="稽核结果" :show-overflow-tooltip="true" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="solvemaname" label="处理人员" :show-overflow-tooltip="true" width="180px" resizable align="center" />
|
|
|
<el-table-column prop="solvetime" label="处理时间" :show-overflow-tooltip="true" :formatter="dateFormatterSSS" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="solvestatus" label="处理结果" :show-overflow-tooltip="true" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="solveremark" label="处理结果描述" :show-overflow-tooltip="true" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="divTollintervalid" label="计费单元组id" v-if="tableDisable" align="center" />
|
|
|
<el-table-column prop="datatype" label="数据类型" v-if="tableDisable" align="center" />
|
|
|
<el-table-column prop="divFeegroup" label="计费金额(元)" v-if="tableDisable" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="vehicleclassname" label="车种" v-if="tableDisable" :show-overflow-tooltip="true" width="100px" resizable align="center" />
|
|
|
<el-table-column prop="vehicleclass" label="车种" v-if="tableDisable" :show-overflow-tooltip="true" width="100px" resizable align="center" />
|
|
|
<el-table-column prop="divEntollstationname" label="入口计费单元名称" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="divExtollstationname" label="出口计费单元名称" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="divEnpointid" label="入口计费单元id" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="divExpointid" label="出口计费单元id" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="bak1" label="本省/跨省" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="divEntime" label="开始日期" width="200px" :formatter="dateFormatterSSS" v-if="tableDisable" align="center" />
|
|
|
<el-table-column prop="divExtime" label="结束日期" width="200px" :formatter="dateFormatterSSS" v-if="tableDisable" align="center" />
|
|
|
<el-table-column prop="gpaTollintervalid" label="计费单元组id" v-if="tableDisable" align="center" />
|
|
|
<el-table-column prop="gpaFeegroup" label="计费金额(元)" v-if="tableDisable" width="200px" resizable align="center" />
|
|
|
<el-table-column prop="gpaEntollstationname" label="入口计费单元名称" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="gpaExtollstationname" label="出口计费单元名称" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="gpaEnpointid" label="入口计费单元id" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="gpaExpointid" label="出口计费单元id" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="gpaFeeOld" label="计费金额" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="vehicletype" label="车型" v-if="tableDisable" width="400px" resizable align="center" />
|
|
|
<el-table-column prop="gpaEntime" label="开始日期" :formatter="dateFormatterSSS" v-if="tableDisable" width="200px" align="center" />
|
|
|
<el-table-column prop="gpaExtime" label="结束日期" :formatter="dateFormatterSSS" v-if="tableDisable" width="200px" align="center" />
|
|
|
<el-table-column label="操作" v-slot="slot" fixed="right" align="center" width="200px">
|
|
|
<el-button type="primary" @click="solveDataOper(slot.row)" style="background-color: #67c23a">处理结果</el-button>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
</div>
|
|
|
<div>
|
|
|
<!-- 分页 -->
|
|
|
<el-pagination
|
|
|
@size-change="handleSizeChange"
|
|
|
@current-change="handleCurrentChange"
|
|
|
:current-page="currentPage"
|
|
|
:page-sizes="[20, 30,50,100]"
|
|
|
:page-size="pageSize"
|
|
|
:total="totalCount"
|
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
|
style="width: 90%;height:5%;padding: 0;position:relative;margin-top:10px;bottom: 0;font-size: x-small">
|
|
|
</el-pagination>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<el-dialog id="detail_dialog_fee_match" v-model="isShowFeeDetailMatch" draggable :close-on-click-modal="closeD">
|
|
|
<querySolveDataFee ref="querySolveDataFee" ></querySolveDataFee>
|
|
|
</el-dialog>
|
|
|
<el-dialog id="detail_dialog_div_match" v-model="isShowDivDetailMatch" draggable :close-on-click-modal="closeD">
|
|
|
<querySolveDataDiv ref="querySolveDataDiv" ></querySolveDataDiv>
|
|
|
</el-dialog>
|
|
|
<el-dialog id="solve_match_dialog_div" v-model="isShowSolve" title="" style="width: 40%;height:50% !important;" :close-on-click-modal="closeD" :show-close="closeD">
|
|
|
<el-form style="width:100%;height:100%">
|
|
|
<el-form-item label="处理结果:" style="width:100%;height: 10%">
|
|
|
<el-radio-group v-model="solvestatus">
|
|
|
<el-radio :label="2">已完成</el-radio>
|
|
|
<el-radio :label="3">不处理</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="处理内容描述:" style="width:100%;height: 10%">
|
|
|
<el-input type="textarea" v-model="solveremark"/>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="" style="width:100%;height: 80%">
|
|
|
<el-button @click="cancelMain">取消</el-button>
|
|
|
<el-button @click="saveMain">保存</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</el-dialog>
|
|
|
</template>
|
|
|
|
|
|
<style >
|
|
|
#table_el{
|
|
|
height: 100% ;
|
|
|
width: 100%;
|
|
|
}
|
|
|
#detail_dialog_fee_match{
|
|
|
height: 78% !important;
|
|
|
padding: 0 !important;
|
|
|
width: 80%;
|
|
|
}
|
|
|
#detail_dialog_div_match{
|
|
|
height: 78% !important;
|
|
|
width: 80%;
|
|
|
}
|
|
|
</style>
|
|
|
<script >
|
|
|
|
|
|
import { ref} from "vue";
|
|
|
import {
|
|
|
Search
|
|
|
} from '@element-plus/icons-vue'
|
|
|
import { getMatchListByPage,updateMatchData} from "@/util/api/api";
|
|
|
import tool from "@/util/tool";
|
|
|
import querySolveDataDiv from "@/views/dev/detail/nodivandnofee/querySolveDataDiv.vue";
|
|
|
import querySolveDataFee from "@/views/dev/detail/nodivandnofee/querySolveDataFee.vue";
|
|
|
var _this;
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
rpTime:"",
|
|
|
passid:"",
|
|
|
vehicleId:"",
|
|
|
checkStatus:10,
|
|
|
currentPage: 1,
|
|
|
pageSize: 15,
|
|
|
totalCount: 0,
|
|
|
tableData: ref([]),
|
|
|
tableLoading: false,
|
|
|
params:{},
|
|
|
tableDisable:false,
|
|
|
isShowFeeDetailMatch:false,
|
|
|
isShowDivDetailMatch:false,
|
|
|
closeD:false,
|
|
|
doubleclikIndex:"-1",
|
|
|
isShowSolve:false,
|
|
|
solveremark:"",
|
|
|
solvestatus:"",
|
|
|
paramsUpdate:{},
|
|
|
searchSolveButton:Search
|
|
|
|
|
|
}
|
|
|
},
|
|
|
//props: ['params'],
|
|
|
methods: {
|
|
|
searchSolveMatch(){
|
|
|
if(!this.rpTime){
|
|
|
alert("请选择日期");
|
|
|
return ;
|
|
|
}
|
|
|
let paramAll={};
|
|
|
paramAll.queryStartTime=this.rpTime+" 00:00:00";
|
|
|
paramAll.queryEndTime=this.rpTime+" 00:00:00";
|
|
|
paramAll.passid=this.passid;
|
|
|
paramAll.vehicleId=this.vehicleId;
|
|
|
paramAll.checkStatus=this.checkStatus;
|
|
|
getQueryMatchDataLists(paramAll);
|
|
|
}, handleSizeChange(val) {
|
|
|
if(!this.rpTime){
|
|
|
alert("请选择日期");
|
|
|
return ;
|
|
|
}
|
|
|
this.pageSize = val;
|
|
|
this.isLoding = true;
|
|
|
let paramAll={};
|
|
|
paramAll.queryStartTime=this.rpTime+" 00:00:00";
|
|
|
paramAll.queryEndTime=this.rpTime+" 00:00:00";
|
|
|
paramAll.checkStatus=this.checkStatus;
|
|
|
paramAll.passid=this.passid;
|
|
|
paramAll.vehicleId=this.vehicleId;
|
|
|
getQueryMatchDataLists(paramAll);
|
|
|
},handleCurrentChange(val) {
|
|
|
if(!this.rpTime){
|
|
|
alert("请选择日期");
|
|
|
return ;
|
|
|
}
|
|
|
this.isLoding = true;
|
|
|
this.currentPage = val;
|
|
|
let paramAll={};
|
|
|
paramAll.queryStartTime=this.rpTime+" 00:00:00";
|
|
|
paramAll.queryEndTime=this.rpTime+" 00:00:00";
|
|
|
paramAll.passid=this.passid;
|
|
|
paramAll.checkStatus=this.checkStatus;
|
|
|
paramAll.vehicleId=this.vehicleId;
|
|
|
getQueryMatchDataLists(paramAll);
|
|
|
},indexmethod(index){
|
|
|
return index + this.pageSize * (this.currentPage -1)+1;
|
|
|
},showSolveMatchDetail(row,column,e){
|
|
|
this.doubleclikIndex=row.id;//序号值
|
|
|
let _params={
|
|
|
"divTollintervalid": row.divTollintervalid,
|
|
|
"classdate": this.dateFormatter(null,null,row.classdate),
|
|
|
"divEntime": this.dateFormatterSSS(null,null,row.divEntime),
|
|
|
"divExtime": this.dateFormatterSSS(null,null,row.divExtime),
|
|
|
"passid": row.id,
|
|
|
"vehicleid": row.vehicleid,
|
|
|
"vehicleidColor": row.vehicleidColor,
|
|
|
"divFeeGroup": row.divFeegroup,
|
|
|
"divFee": row.divFee,
|
|
|
"divFeeOld": row.divFeeOld,
|
|
|
"feeStatus": 4,
|
|
|
"vehicleclass": row.vehicleclass,
|
|
|
"startTime": tool.DayDec(row.classdate,0),
|
|
|
"endTime": tool.DayDec(row.classdate,-10),
|
|
|
"divEntollstationname": row.divEntollstationname ,
|
|
|
"divExtollstationname": row.divExtollstationname ,
|
|
|
"divEnpointid": row.divEnpointid ,
|
|
|
"bak1": row.bak1 ,
|
|
|
"divExpointid": row.divExpointid,
|
|
|
"gpaTollintervalid": row.gpaTollintervalid,
|
|
|
"gpaEntime": this.dateFormatterSSS(null,null,row.gpaEntime),
|
|
|
"gpaExtime": this.dateFormatterSSS(null,null,row.gpaExtime),
|
|
|
"gpaFeeGroup": row.gpaFeegroup,
|
|
|
"gpaFee": row.gpaFee,
|
|
|
"gpaFeeOld": row.gpaFeeOld,
|
|
|
"vehicletype": row.vehicletype,
|
|
|
"gpaEntollstationname": row.gpaEntollstationname ,
|
|
|
"gpaExtollstationname": row.gpaExtollstationname ,
|
|
|
"gpaEnpointid": row.gpaEnpointid ,
|
|
|
"gpaExpointid": row.gpaExpointid,
|
|
|
"checkStatus": row.checkStatus,
|
|
|
"datatype": row.datatype
|
|
|
|
|
|
}
|
|
|
if(row.datatype ==='未拆分(有计费数据)'){
|
|
|
this.isShowFeeDetailMatch=true;
|
|
|
this.isShowDivDetailMatch=false;
|
|
|
}else if(row.datatype ==='未计费(有拆分数据)'){
|
|
|
this.isShowFeeDetailMatch=false;
|
|
|
this.isShowDivDetailMatch=true;
|
|
|
}
|
|
|
this.$nextTick(() => {
|
|
|
if(row.datatype ==='未拆分(有计费数据)'){
|
|
|
this.$refs["querySolveDataFee"].refreshDataMatchFee(_params);
|
|
|
}else if(row.datatype ==='未计费(有拆分数据)'){
|
|
|
this.$refs["querySolveDataDiv"].refreshDataMatchDiv(_params);
|
|
|
}
|
|
|
})
|
|
|
}, dateFormatter(row, column, cellValue) {
|
|
|
if (cellValue == null || cellValue == "" || cellValue == undefined) {
|
|
|
return "";
|
|
|
}
|
|
|
return formatDate(cellValue, "YYYY-MM-DD");
|
|
|
}, dateFormatterSSS(row, column, cellValue) {
|
|
|
if (cellValue == null || cellValue == "" || cellValue == undefined) {
|
|
|
return "";
|
|
|
}
|
|
|
return formatDate(cellValue, "YYYY-MM-DD HH:MM:SS");
|
|
|
}, rowStyle(row, rowIndex) {
|
|
|
if (this.doubleclikIndex === row.row.id) {
|
|
|
return {
|
|
|
"background-color": "lightcyan",
|
|
|
"cursor": "pointer"
|
|
|
}
|
|
|
}
|
|
|
return {
|
|
|
"cursor": "pointer"
|
|
|
}
|
|
|
},solveDataOper(row){
|
|
|
this.paramsUpdate.passid=row.id;
|
|
|
this.isShowSolve=true;
|
|
|
},saveMain(){
|
|
|
this.paramsUpdate.solvestatus=this.solvestatus;
|
|
|
this.paramsUpdate.solveremark=this.solveremark;
|
|
|
this.paramsUpdate.solvemano="0101001";
|
|
|
this.paramsUpdate.solvemaname="测试人员";
|
|
|
updateMatchData(this.paramsUpdate).then(res=>{
|
|
|
if(res.code<=0){
|
|
|
alert("处理失败");
|
|
|
}else{
|
|
|
alert("处理成功");
|
|
|
this.paramsUpdate={};
|
|
|
this.isShowSolve=false;
|
|
|
this.solveremark="";
|
|
|
this.solvestatus=""
|
|
|
this.searchSolveMatch();
|
|
|
}
|
|
|
})
|
|
|
},cancelMain(){
|
|
|
this.paramsUpdate={};
|
|
|
this.solveremark="";
|
|
|
this.solvestatus=""
|
|
|
this.isShowSolve=false;
|
|
|
}
|
|
|
|
|
|
}, components: {
|
|
|
querySolveDataFee,
|
|
|
querySolveDataDiv
|
|
|
},
|
|
|
mounted() {
|
|
|
_this = this;
|
|
|
}
|
|
|
}
|
|
|
function getQueryMatchDataLists(paramsData){
|
|
|
_this.tableLoading=true;
|
|
|
paramsData.pageNum=_this.currentPage;
|
|
|
paramsData.pageSize=_this.pageSize;
|
|
|
paramsData.status="";
|
|
|
getMatchListByPage(paramsData).then(res=>{
|
|
|
_this.tableLoading=false;
|
|
|
if(res.code<=0){
|
|
|
return false;
|
|
|
}else{
|
|
|
debugger
|
|
|
_this.totalCount=res.total;
|
|
|
_this.tableData=res.records;
|
|
|
_this.isLoding=false;
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
|
|
|
//日期格式修改
|
|
|
|
|
|
function formatDate(dateString,format) {
|
|
|
const date = new Date(dateString);
|
|
|
const year = date.getFullYear();
|
|
|
const month = (date.getMonth() + 1).toString().padStart(2, '0');
|
|
|
const day = date.getDate().toString().padStart(2, '0');
|
|
|
|
|
|
let hour=date.getHours();
|
|
|
let minute=date.getMinutes();
|
|
|
let second=date.getSeconds();
|
|
|
if(hour<10){
|
|
|
hour ="0"+hour;
|
|
|
}
|
|
|
if(minute<10){
|
|
|
minute ="0"+minute;
|
|
|
}
|
|
|
if(second<10){
|
|
|
second ="0"+second;
|
|
|
}
|
|
|
const milSecond=date.getMilliseconds();
|
|
|
if(format=="YYYY-MM-DD"){
|
|
|
return `${year}-${month}-${day}`;
|
|
|
}else if(format=="YYYY-MM-DD HH:MM:SS"){
|
|
|
return `${year}-${month}-${day} ${hour}:${minute}:${second}`;
|
|
|
}else if(format=="YYYY-MM-DD HH:MM:SS:SSS"){
|
|
|
return `${year}-${month}-${day} ${hour}:${minute}:${second}:${milSecond}`;
|
|
|
}else if(format=="HH:MM:SS"){
|
|
|
return `${hour}:${minute}:${second}:${milSecond}`;
|
|
|
}
|
|
|
return "";
|
|
|
}
|
|
|
|
|
|
</script> |