fix:修改养护通知单查看通知单

This commit is contained in:
SunTao 2025-02-24 16:10:24 +08:00
parent 42882582bb
commit 18283da3cd
3 changed files with 1863 additions and 84 deletions

215
src/api/xj/document-view.js Normal file
View File

@ -0,0 +1,215 @@
/*
* @Author: SunTao 328867980@qq.com
* @Date: 2024-11-27 10:58:33
* @LastEditors: SunTao 328867980@qq.com
* @LastEditTime: 2025-02-21 17:22:46
* @FilePath: \znxjxt-ui\src\api\xj\document.js
* @Description: 查看养护通知单相关接口
*/
import request from "@/utils/request";
// 路段下拉数据
export function getSegment() {
return request({
url: "/api/v2/segment/selectList",
method: "post",
});
}
// 查询列表病害类型
export function getDefectList(params) {
return request({
url: "/bigscreen/v2/getDefectTypesDrowDown",
method: "get",
params,
});
}
// 病害状态下拉类型
export function getDefectStatus() {
return request({
url: "/metadata/defectState",
method: "get",
});
}
// 获取养护通知单列表
export function getNoticeList(data) {
return request({
url: "/maintenance-notice/noticeList",
method: "post",
data,
});
}
// 生成养护通知单
export function addMaintenanceNotice(data) {
return request({
url: "/maintenance-notice/create",
method: "post",
data,
});
}
// 根据id查询养护通知单
export function getMaintenanceNoticeById(params) {
return request({
url: `/maintenance-notice/getNoticeByDefectId`,
method: "get",
params,
});
}
// 查询病害列表
export function listDefect(query) {
return request({
url: "/xj/defect/list",
method: "get",
params: query,
});
}
// 查询病害成因下拉列表
export function getCausesList(params) {
return request({
url: "/hxDic/diseCauses",
method: "get",
params,
});
}
// 获取路段类型下拉列表
export function getSegmentTypeList(params) {
return request({
url: "/hxDic/roadPosiType",
method: "get",
params,
});
}
// 获取匝道类型下拉数据
export function getRampTypeList(params) {
return request({
url: "/hxDic/rampType",
method: "get",
params,
});
}
// 获取道路方向下拉数据
export function getRoadDirectionList(params) {
return request({
url: "/hxDic/roadDirection",
method: "get",
params,
});
}
//获取收费站位置下拉数据
export function getStationLocation(params) {
return request({
url: "/hxDic/stationLocation",
method: "get",
params,
});
}
// 获取一级病害类型下拉列表
export function getDiseFirstType(params) {
return request({
url: "/hxDic/diseFirstType",
method: "get",
params,
});
}
// 获取病害详细类型下拉数据
export function getDiseTypeDetailed(params) {
return request({
url: "/hxDic/diseTypeDetailed",
method: "get",
params,
});
}
// 获取海信路段下拉数据
export function getDiseRoadPartDropDown(params) {
return request({
url: "/hxsection/dropDown",
method: "get",
params,
});
}
// 获取工区下拉数据
export function getTaskareaDropDown(params) {
return request({
url: "/hxtaskarea/dropDown",
method: "get",
params,
});
}
// 获取工作站下拉数据
export function getWorkstationDropDown(params) {
return request({
url: "/hxworkstation/dropDown",
method: "get",
params,
});
}
// 获取桥梁下拉数据
export function getBridgeDropDown(params) {
return request({
url: "/hxBridge/dropDown",
method: "get",
params,
});
}
// 获取隧道下拉数据
export function getTunnelDropDown(params) {
return request({
url: "/hxtunnel/dropDown",
method: "get",
params,
});
}
// 获取收费站下拉数据
export function getStationDropDown(params) {
return request({
url: "/hxstation/dropDown",
method: "get",
params,
});
}
// 获取匝道下拉数据
export function getRampDropDown(params) {
return request({
url: "/hxramp/dropDown",
method: "get",
params,
});
}
// 获取互通立交下拉数据
export function getCrossDropDown(params) {
return request({
url: "/hxCross/dropDown",
method: "get",
params,
});
}
// 获取通知单详情数据
export function getnoticeDetail(params) {
return request({
url: "/maintenance-notice/detail",
method: "get",
params,
});
}

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@
* @Author: SunTao 328867980@qq.com
* @Date: 2025-02-10 11:02:50
* @LastEditors: SunTao 328867980@qq.com
* @LastEditTime: 2025-02-10 11:35:21
* @LastEditTime: 2025-02-24 15:57:34
* @FilePath: \znxjxt-ui\src\views\xj\document\view-notification\index.vue
* @Description: 单据-查看通知单页面
-->
@ -10,26 +10,99 @@
<template>
<div class="content">
<el-form :model="noticeForm" ref="noticeForm" size="small" :inline="true" label-width="5rem">
<el-form-item label="道路名称" prop="segmentId">
<el-select v-model="noticeForm.segmentId" placeholder="请选择路段" clearable filterable>
<el-option v-for="item in segmentList" :key="item.value" :label="item.label" :value="item.value" />
<el-form-item label="路段类型:">
<el-select v-model="noticeForm.diseRoadPosiType" placeholder="请选择路段类型" clearable>
<el-option v-for="item in segmentTypeList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="采集时间" prop="dateTime">
<el-date-picker v-model="dateTime" type="daterange" start-placeholder="开始日期" end-placeholder="结束日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" clearable />
<el-form-item label="病害成因:">
<el-select v-model="noticeForm.diseCauses" placeholder="请选择病害成因" clearable>
<el-option v-for="item in causesList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="病害类型" prop="paramsDefectType">
<el-cascader v-model="paramsDefectType" :options="tableDefect" :props="{
checkStrictly: true,
emitPath: true,
children: 'subTypes',
}" clearable></el-cascader>
<el-form-item label="所在路段:">
<el-select v-model="noticeForm.diseRoadPart" placeholder="请选择所在路段" filterable remote clearable reserve-keyword
:filter-method="handleDiseRoadPart" @change="changeDiseRoadPart">
<el-option v-for="(item, index) in roadPartList" :key="`diseRoadPart-name-${index}`" :label="item.label"
:value="item.value"></el-option> </el-select>
</el-form-item>
<el-form-item label="上下行" prop="inspectDirection">
<el-select v-model="noticeForm.inspectDirection" placeholder="请选择" clearable>
<el-option label="上行" value="0" />
<el-option label="下行" value="1" />
<el-form-item label="病害类型:">
<el-select v-model="noticeForm.diseFirstType" placeholder="请选择病害类型" clearable @change="changeDetailed">
<el-option v-for="item in diseFirstType" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="病害二级类型:" label-width="8rem">
<el-select v-model="noticeForm.diseTypeDetailed" placeholder="请选择病害二级类型" filterable clearable>
<el-option v-for="item in diseTypeDetailedList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="工区:">
<el-select v-model="noticeForm.matTaskAreaId" placeholder="请选择工区" filterable remote clearable reserve-keyword
:filter-method="handleMatTaskArea" @change="changeMatTaskArea">
<el-option v-for="(item, index) in taskAreaList" :key="`taskAreaList-name-${index}`" :label="item.label"
:value="item.value"></el-option> </el-select>
</el-form-item>
<el-form-item label="工作站:">
<el-select v-model="noticeForm.matTWorkStationId" placeholder="请选择工作站" filterable remote clearable
reserve-keyword :filter-method="handleMatWorkStation" @change="changeMatWorkStation">
<el-option v-for="(item, index) in matWorkStationList" :key="`WorkStationId-name-${index}`"
:label="item.label" :value="item.value"></el-option> </el-select>
</el-form-item>
<el-form-item label="车道:">
<el-input v-model="noticeForm.diseRoadLine" placeholder="请填写车道" clearable>
</el-input>
</el-form-item>
<el-form-item label="桥梁:" v-if="noticeForm.diseRoadPosiType !== '1'">
<el-select v-model="noticeForm.connBridge" placeholder="请选择桥梁" filterable remote clearable reserve-keyword
:filter-method="handleConnBridge" @change="changeConnBridge">
<el-option v-for="(item, index) in connBridgeList" :key="`connBridge-name-${index}`" :label="item.label"
:value="item.value"></el-option> </el-select>
</el-form-item>
<el-form-item label="隧道:" v-if="noticeForm.diseRoadPosiType !== '1'">
<el-select v-model="noticeForm.connTunnel" placeholder="请选择隧道" filterable remote clearable reserve-keyword
:filter-method="handleConnTunnel" @change="changeConnTunnel">
<el-option v-for="(item, index) in connTunnelList" :key="`connTunnel-name-${index}`" :label="item.label"
:value="item.value"></el-option> </el-select>
</el-form-item>
<el-form-item label="收费站:" v-if="noticeForm.diseRoadPosiType === '1'">
<el-select v-model="noticeForm.stationCode" placeholder="请选择收费站" filterable remote clearable reserve-keyword
:filter-method="handleStationCode" @change="changeStationCode">
<el-option v-for="(item, index) in stationCodeList" :key="`stationCode-name-${index}`" :label="item.label"
:value="item.value"></el-option> </el-select>
</el-form-item>
<el-form-item label="收费站位置:" v-if="noticeForm.diseRoadPosiType === '1'" label-width="8rem">
<el-select v-model="noticeForm.stationLocation" placeholder="请选择收费站位置" clearable>
<el-option v-for="item in stationLocationList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="方向:">
<el-select v-model="noticeForm.diseRoadDirec" placeholder="请选择方向" clearable>
<el-option v-for="item in roadDirectionList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="公里桩">
<el-input v-model="noticeForm.stakeStart" placeholder="起始公里桩" style="width: 10rem" clearable />
<span style="margin: 0 5px">-</span>
<el-input v-model="noticeForm.stakeEnd" placeholder="终止公里桩" style="width: 10rem" clearable />
<el-tooltip class="item" effect="dark" content="格式为K0000+000" placement="top">
<i class="el-icon-info"></i>
</el-tooltip>
</el-form-item>
<el-form-item label="匝道类型:">
<el-select v-model="noticeForm.rampType" placeholder="请选择匝道类型" clearable>
<el-option v-for="item in rampTypeList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="匝道立交:">
<el-select v-model="noticeForm.rampInterchangeCode" placeholder="请选择匝道立交" filterable remote clearable
reserve-keyword :filter-method="handleRampIntOrientation" @change="changeRampIntOrientation">
<el-option v-for="(item, index) in rampIntOrientationList" :key="`rampInterchangeCode-name-${index}`"
:label="item.label" :value="item.value"></el-option> </el-select>
</el-form-item>
<el-form-item label="匝道立交方向:" label-width="8rem">
<el-select v-model="noticeForm.rampIntOrientation" placeholder="请选择匝道立交方向" clearable>
<el-option v-for="item in rampInterchangeCodeList" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="是否紧急" prop="urgentFlag">
@ -38,29 +111,6 @@
<el-option label="不紧急" value="2" />
</el-select>
</el-form-item>
<el-form-item label="公里桩" prop="stakeRange">
<el-input v-model="noticeForm.stakeStart" placeholder="起始公里桩" style="width: 10rem" clearable />
<span style="margin: 0 5px">-</span>
<el-input v-model="noticeForm.stakeEnd" placeholder="终止公里桩" style="width: 10rem" clearable />
<el-tooltip class="item" effect="dark" content="格式为K0000+000" placement="top">
<i class="el-icon-info"></i>
</el-tooltip>
</el-form-item>
<el-form-item label="病害长度" prop="lengthRange">
<el-input-number v-model="noticeForm.minLen" controls-position="right" placeholder="最小长度"
:min="0"></el-input-number>
<span style="margin: 0 5px">-</span>
<el-input-number v-model="noticeForm.maxLen" controls-position="right" placeholder="最大长度"
:min="0"></el-input-number>
</el-form-item>
<el-form-item label="病害面积" prop="areaRange">
<el-input-number v-model="noticeForm.minArea" controls-position="right" placeholder="最小面积"
:min="0"></el-input-number>
<span style="margin: 0 5px">-</span>
<el-input-number v-model="noticeForm.maxArea" controls-position="right" placeholder="最大面积"
:min="0"></el-input-number>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
@ -68,38 +118,43 @@
</el-form-item>
</el-form>
<!-- 导航栏 -->
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tabs v-model="activeName" @tab-click="getList">
<el-tab-pane v-for="(item, index) in viewTableTabs" :key="`tabs-${index}`" :label="item.title" :name="item.name">
<!-- 表格 -->
<el-table class="notice-table" ref="noticeTable" :data="noticeList" @selection-change="handleSelectionChange"
v-loading="loading" style="width: 100%">
<el-table-column type="selection" width="55" align="center" />
<el-table-column type="index" label="序号"> </el-table-column>
<el-table-column label="路段名称" align="center" prop="segmentName" />
<el-table-column label="采集时间" align="center" prop="createdTimeLocal">
<el-table-column fixed type="index" label="序号"> </el-table-column>
<el-table-column fixed label="所在路段" width="200" show-overflow-tooltip align="center"
prop="diseRoadPartName" />
<el-table-column label="路段类型" align="center" prop="diseRoadPosiTypeName">
</el-table-column>
<el-table-column label="病害类型" align="center" prop="defectTypeName">
<el-table-column label="病害成因" align="center" prop="diseCausesName">
</el-table-column>
<el-table-column label="开始桩号" align="center" prop="stakeStart" />
<el-table-column label="结束桩号" align="center" prop="stakeEnd" />
<el-table-column label="病害图片" align="center" prop="media">
<template slot-scope="scope">
<img @click="showScreenImg(scope.row)" height="50" :src="scope.row.mediaUrl" />
</template>
<el-table-column label="工区" width="150" show-overflow-tooltip align="center" prop="matTaskAreaName" />
<el-table-column label="病害类型" align="center" prop="diseFirstTypeName" />
<el-table-column label="病害详细类型" width="150" show-overflow-tooltip align="center" prop="diseTypeDetailedName">
</el-table-column>
<el-table-column label="病害长度" align="center" prop="targetLen">
<template slot-scope="scope">
{{ scope.row.targetLen * 1 <= 0 ? "" : `${scope.row.targetLen}` }} </template>
<el-table-column label="工作站" align="center" prop="matTWorkStationName">
</el-table-column>
<el-table-column label="病害面积" align="center" prop="targetArea" />
<el-table-column label="状态" align="center" prop="noticeStatus" />
<el-table-column label="是否紧急" align="center" prop="urgentFlag">
<el-table-column label="方向" align="center" prop="diseRoadDirecName" />
<el-table-column label="开始桩号" width="100" show-overflow-tooltip align="center" prop="diseStartStake" />
<el-table-column label="终止桩号" width="100" show-overflow-tooltip align="center" prop="diseEndStake" />
<el-table-column label="桥梁" width="150" show-overflow-tooltip align="center" prop="connBridgeName" />
<el-table-column label="隧道" width="150" show-overflow-tooltip align="center" prop="connTunnelName" />
<el-table-column label="收费站" align="center" prop="stationName" />
<el-table-column label="收费站位置" width="100" show-overflow-tooltip align="center" prop="stationLocationName" />
<el-table-column label="匝道类型" width="100" show-overflow-tooltip align="center" prop="rampTypeName" />
<el-table-column label="匝道立交" width="200" show-overflow-tooltip align="center" prop="rampInterchangeName" />
<el-table-column label="匝道立交方向" width="200" show-overflow-tooltip align="center"
prop="rampIntOrientationName" />
<!-- <el-table-column label="是否紧急" align="center" prop="urgentFlag">
<template slot-scope="scope">
<el-button v-if="scope.row.urgentFlag === 1" type="danger" plain disabled>紧急</el-button>
<el-button v-if="scope.row.urgentFlag === 2" type="warning" plain disabled>不紧急</el-button>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
</el-table-column> -->
<el-table-column fixed="right" label="操作" width="100" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)">查看
</el-button>
@ -110,8 +165,8 @@
@click="handleUpdate(scope.row)"
>生成通知单
</el-button> -->
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除
</el-button>
<!-- <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除
</el-button> -->
</template>
</el-table-column>
</el-table>
@ -119,35 +174,102 @@
</el-tabs>
<!-- 分页组件 -->
<div class="pagination-part">
<el-pagination background :current-page.sync="pagination.page" @current-change="handleCurrentChange"
:page-sizes="[10, 20, 30, 40]" :page-size.sync="pagination.size" @size-change="handleSizeChange"
<el-pagination background :current-page.sync="pagination.pageNo" @current-change="handleCurrentChange"
:page-sizes="[10, 20, 30, 40]" :page-size.sync="pagination.pageSize" @size-change="handleSizeChange"
layout="total, sizes, prev, pager, next, jumper" :total="tableTotal">
</el-pagination>
</div>
<!-- 详情弹窗 -->
<el-dialog title="生成表单" :visible.sync="dialogVisible" width="90%" append-to-body :close-on-click-modal="false"
destroy-on-close @close="viewCancel">
<view-dialog v-if="dialogVisible" :causesList="causesList" :rampTypeList="rampTypeList"
:diseFirstType="diseFirstType" :stationLocationList="stationLocationList" :roadDirectionList="roadDirectionList"
:segmentTypeList="segmentTypeList" :dialogItem="dialogItem" @cancel="viewCancel" />
</el-dialog>
</div>
</template>
<script>
import {
getSegmentTypeList,
getCausesList,
getDiseRoadPartDropDown,
getDiseFirstType,
getDiseTypeDetailed,
getTaskareaDropDown,
getWorkstationDropDown,
getBridgeDropDown,
getTunnelDropDown,
getStationDropDown,
getStationLocation,
getRoadDirectionList,
getRampTypeList,
getCrossDropDown,
getRampDropDown,
} from "@/api/xj/document";
import { getNoticeList } from "@/api/xj/document-view"
import ViewDialog from "./components/view-dialog.vue";
export default {
name: "MaintenanceNotice",
components: {},
components: { ViewDialog },
data() {
return {
//
searchForm: {},
//
noticeForm: {},
//
dateTime: [],
//
paramsDefectType: [],
//
segmentList: [],
noticeForm: {
diseRoadPosiType: "",
diseCauses: "",
diseRoadPart: "",
diseFirstType: "",
diseTypeDetailed: "",
matTaskAreaId: "",
matTWorkStationId: "",
diseRoadLine: "",
connBridge: "",
connTunnel: "",
stationCode: "",
stationLocation: "",
diseRoadDirec: "",
rampType: "",
rampInterchangeCode: "",
rampIntOrientation: "",
},
//
segmentTypeList: [],
//
causesList: [],
//
roadPartList: [],
//
tableDefect: [],
diseFirstType: [],
//
diseTypeDetailedList: [],
//
taskAreaList: [],
//
matWorkStationList: [],
//
connBridgeList: [],
//
connTunnelList: [],
//
stationCodeList: [],
//
stationLocationList: [],
//
roadDirectionList: [],
//
rampTypeList: [],
//
rampIntOrientationList: [],
//
rampInterchangeCodeList: [],
//
activeName: "未完成",
activeName: "已生成",
//
viewTableTabs: [{ title: "未完成", name: "未完成" }, { title: "已完成", name: "已完成" }],
viewTableTabs: [{ title: "已生成", name: "已生成" }, { title: "已开工", name: "已开工" }, { title: "已完成", name: "已完成" },],
//
noticeList: [],
//
@ -156,24 +278,312 @@ export default {
checkIds: [],
//
pagination: {
page: 1,
size: 10,
pageNo: 1,
pageSize: 10,
},
//
tableTotal: 0,
//
dialogVisible: false,
// id
dialogItem: {},
}
},
mounted() {
this.setSegmentTypeList()
this.setCausesList()
this.handleDiseRoadPart()
this.setDiseFirstType()
this.handleMatTaskArea()
this.handleMatWorkStation()
this.handleConnBridge()
this.handleConnTunnel()
this.handleStationCode()
this.setStationLocation()
this.setRoadDirectionList()
this.setRampTypeList()
this.handleRampIntOrientation()
this.getList()
},
methods: {
/**
* @description: 获取路段类型下拉列表数据
* @return {*}
*/
setSegmentTypeList() {
getSegmentTypeList().then(({ code, data }) => {
if (code === 200) {
this.segmentTypeList = data;
}
})
},
/**
* @description: 获取病害成因下拉列表数据
* @return {*}
*/
setCausesList() {
getCausesList().then(({ code, data }) => {
if (code === 200) {
this.causesList = data;
}
})
},
/**
* @description: 获取所在路段下拉数据
* @param {*}
* @return {*}
*/
handleDiseRoadPart(str) {
getDiseRoadPartDropDown({ name: str }).then(({ code, data }) => {
if (code === 200) {
this.roadPartList = data
}
})
},
/**
* @description: 修改所在路段事件
* @param {*}
* @return {*}
*/
changeDiseRoadPart(value) {
if (!value) {
this.handleDiseRoadPart()
}
},
/**
* @description: 获取病害类型下拉列表数据
* @return {*}
*/
setDiseFirstType() {
getDiseFirstType().then(({ code, data }) => {
if (code === 200) {
this.diseFirstType = data;
}
})
},
/**
* @description: 病害类型一级修改事件
* @param {*} row
* @return {*}
*/
changeDetailed(value) {
this.noticeForm.diseTypeDetailed = "";
const [child] = this.diseFirstType.filter(item => item.value === value)
getDiseTypeDetailed({ parentId: child.key }).then(({ code, data }) => {
if (code === 200) {
this.diseTypeDetailedList = data;
}
})
},
/**
* @description: 获取工区下拉数据
* @param {*}
* @return {*}
*/
handleMatTaskArea(str) {
getTaskareaDropDown({ name: str }).then(({ code, data }) => {
if (code === 200) {
this.taskAreaList = data
}
})
},
/**
* @description: 修改工区事件
* @param {*}
* @return {*}
*/
changeMatTaskArea(value) {
if (!value) {
this.handleMatTaskArea()
}
},
/**
* @description: 获取工作站下拉数据
* @param {*}
* @return {*}
*/
handleMatWorkStation(str) {
getWorkstationDropDown({ name: str }).then(({ code, data }) => {
if (code === 200) {
this.matWorkStationList = data
}
})
},
/**
* @description: 工作站修改事件
* @param {*}
* @return {*}
*/
changeMatWorkStation(value) {
if (!value) {
this.handleMatWorkStation()
}
},
/**
* @description: 获取桥梁下拉数据
* @param {*}
* @return {*}
*/
handleConnBridge(str) {
getBridgeDropDown({ name: str }).then(({ code, data }) => {
if (code === 200) {
this.connBridgeList = data
}
})
},
/**
* @description: 桥梁修改事件
* @param {*}
* @return {*}
*/
changeConnBridge(value) {
if (!value) {
this.handleConnBridge()
}
},
/**
* @description: 获取隧道下拉数据
* @param {*}
* @return {*}
*/
handleConnTunnel(str) {
getTunnelDropDown({ name: str }).then(({ code, data }) => {
if (code === 200) {
this.connTunnelList = data
}
})
},
/**
* @description: 隧道修改事件
* @param {*}
* @return {*}
*/
changeConnTunnel(value) {
if (!value) {
this.handleConnTunnel()
}
},
/**
* @description: 获取收费站下拉数据
* @param {*}
* @return {*}
*/
handleStationCode(str) {
getStationDropDown({ name: str }).then(({ code, data }) => {
if (code === 200) {
this.stationCodeList = data
}
})
},
/**
* @description: 收费站修改事件
* @param {*}
* @return {*}
*/
changeStationCode(value) {
if (!value) {
this.handleStationCode()
}
},
/**
* @description: 获取收费站位置下拉列表数据
* @return {*}
*/
setStationLocation() {
getStationLocation().then(({ code, data }) => {
if (code === 200) {
this.stationLocationList = data;
}
})
},
/**
* @description: 获取道路方向下拉列表数据
* @return {*}
*/
setRoadDirectionList() {
getRoadDirectionList().then(({ code, data }) => {
if (code === 200) {
this.roadDirectionList = data;
}
})
},
/**
* @description: 获取匝道类型下拉列表数据
* @return {*}
*/
setRampTypeList() {
getRampTypeList().then(({ code, data }) => {
if (code === 200) {
this.rampTypeList = data;
}
})
},
/**
* @description: 获取互通立交下拉数据
* @param {*}
* @return {*}
*/
handleRampIntOrientation(str) {
getCrossDropDown({ name: str }).then(({ code, data }) => {
if (code === 200) {
this.rampIntOrientationList = data
}
})
},
/**
* @description: 互通立交修改事件
* @param {*}
* @return {*}
*/
changeRampIntOrientation(value) {
if (!value) {
this.handleRampIntOrientation()
}
this.noticeForm.rampIntOrientation = ""
this.handleRampInterchangeCode()
},
/**
* @description: 获取匝道下拉数据
* @param {*}
* @return {*}
*/
handleRampInterchangeCode() {
getRampDropDown({ crossid: this.noticeForm.rampInterchangeCode }).then(({ code, data }) => {
if (code === 200) {
this.rampInterchangeCodeList = data
}
})
},
/**
* @description: 点击查询事件
* @param {*}
* @return {*}
*/
handleQuery() {
this.searchForm = JSON.parse(JSON.stringify(this.noticeForm))
this.pagination.pageNo = 1;
this.getList();
},
/**
@ -182,16 +592,62 @@ export default {
* @return {*}
*/
resetQuery() {
this.searchForm = {}
this.noticeForm = {
diseRoadPosiType: "",
diseCauses: "",
diseRoadPart: "",
diseFirstType: "",
diseTypeDetailed: "",
matTaskAreaId: "",
matTWorkStationId: "",
diseRoadLine: "",
connBridge: "",
connTunnel: "",
stationCode: "",
stationLocation: "",
diseRoadDirec: "",
rampType: "",
rampInterchangeCode: "",
rampIntOrientation: "",
},
this.pagination.pageNo = 1;
this.getList();
},
/**
* @description: 导航栏点击事件
* @description: 获取列表数据
* @param {*}
* @return {*}
*/
handleClick() {
getList() {
this.noticeList = [];
this.loading = true;
const dataItem = {
...this.searchForm,
...this.pagination,
maintenanceStatus: this.activeName
};
getNoticeList(dataItem)
.then(({ code, rows, total }) => {
if (code === 200) {
this.noticeList = rows;
this.tableTotal = total;
}
})
.finally(() => {
this.loading = false;
});
},
/**
* @description: 点击列表查看事件
* @param {*}
* @return {*}
*/
handleView(item) {
this.dialogVisible = true
this.dialogItem = item
},
/**
@ -209,7 +665,7 @@ export default {
* @return {*}
*/
handleCurrentChange(arg) {
this.pagination.page = arg;
this.pagination.pageNo = arg;
this.getList();
},
@ -219,9 +675,19 @@ export default {
* @return {*}
*/
handleSizeChange(arg) {
this.pagination.size = arg;
this.pagination.pageSize = arg;
this.getList();
},
/**
* @description: 关闭弹窗方法
* @param {*}
* @return {*}
*/
viewCancel() {
this.dialogVisible = false;
this.dialogItem = {}
}
},
}