fix:修改病害通知单生成
This commit is contained in:
parent
46360914af
commit
fb2e653074
@ -2,7 +2,7 @@
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2024-11-27 10:58:33
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2024-11-27 10:58:33
|
||||
* @LastEditTime: 2025-02-21 14:11:52
|
||||
* @FilePath: \znxjxt-ui\src\api\xj\document.js
|
||||
* @Description: 养护通知单相关接口
|
||||
*/
|
||||
@ -69,3 +69,138 @@ export function listDefect(query) {
|
||||
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,
|
||||
});
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2025-02-13 09:11:50
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-17 15:52:12
|
||||
* @LastEditTime: 2025-02-21 13:20:11
|
||||
* @FilePath: \znxjxt-ui\src\api\xj\hisense\inter-change.js
|
||||
* @Description: 海信-桥梁
|
||||
*/
|
||||
@ -43,7 +43,7 @@ export function delData(id) {
|
||||
});
|
||||
}
|
||||
|
||||
// 获取互通立交下拉数据
|
||||
// 获取桥梁下拉数据
|
||||
export function getDropDown(params) {
|
||||
return request({
|
||||
url: "/hxBridge/dropDown",
|
||||
|
||||
54
src/api/xj/hisense/route-section.js
Normal file
54
src/api/xj/hisense/route-section.js
Normal file
@ -0,0 +1,54 @@
|
||||
/*
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2025-02-13 09:11:50
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-21 13:26:37
|
||||
* @FilePath: \znxjxt-ui\src\api\xj\hisense\inter-change.js
|
||||
* @Description: 海信-路段
|
||||
*/
|
||||
import request from "@/utils/request";
|
||||
|
||||
// 获取列表数据
|
||||
export function getList(query) {
|
||||
return request({
|
||||
url: "/hxsection/page",
|
||||
method: "get",
|
||||
params: query,
|
||||
});
|
||||
}
|
||||
|
||||
// 新增数据
|
||||
export function add(data) {
|
||||
return request({
|
||||
url: "/hxsection",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
// 更新数据
|
||||
export function updata(data) {
|
||||
return request({
|
||||
url: "/hxsection",
|
||||
method: "put",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
// 删除数据
|
||||
export function delData(id) {
|
||||
return request({
|
||||
url: `/hxsection/${id}`,
|
||||
method: "delete",
|
||||
});
|
||||
}
|
||||
|
||||
// 获取路段下拉数据
|
||||
export function getDropDown(params) {
|
||||
return request({
|
||||
url: "/hxsection/dropDown",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2025-02-13 09:11:50
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-14 15:35:33
|
||||
* @LastEditTime: 2025-02-21 14:11:37
|
||||
* @FilePath: \znxjxt-ui\src\api\xj\hisense\inter-change.js
|
||||
* @Description: 海信-收费站
|
||||
*/
|
||||
@ -43,7 +43,7 @@ export function delData(id) {
|
||||
});
|
||||
}
|
||||
|
||||
// 获取互通立交下拉数据
|
||||
// 获取收费站下拉数据
|
||||
export function getDropDown(params) {
|
||||
return request({
|
||||
url: "/hxstation/dropDown",
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2025-02-13 09:11:50
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-17 14:25:08
|
||||
* @LastEditTime: 2025-02-21 13:15:19
|
||||
* @FilePath: \znxjxt-ui\src\api\xj\hisense\inter-change.js
|
||||
* @Description: 海信-工区
|
||||
*/
|
||||
@ -43,7 +43,7 @@ export function delData(id) {
|
||||
});
|
||||
}
|
||||
|
||||
// 获取互通立交下拉数据
|
||||
// 获取工区下拉数据
|
||||
export function getDropDown(params) {
|
||||
return request({
|
||||
url: "/hxtaskarea/dropDown",
|
||||
|
||||
@ -2,9 +2,9 @@
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2025-02-13 09:11:50
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-14 15:35:33
|
||||
* @LastEditTime: 2025-02-21 13:21:08
|
||||
* @FilePath: \znxjxt-ui\src\api\xj\hisense\inter-change.js
|
||||
* @Description: 海信-收费站
|
||||
* @Description: 海信-隧道
|
||||
*/
|
||||
import request from "@/utils/request";
|
||||
|
||||
@ -43,7 +43,7 @@ export function delData(id) {
|
||||
});
|
||||
}
|
||||
|
||||
// 获取互通立交下拉数据
|
||||
// 获取隧道下拉数据
|
||||
export function getDropDown(params) {
|
||||
return request({
|
||||
url: "/hxtunnel/dropDown",
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2025-02-13 09:11:50
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-14 15:35:33
|
||||
* @LastEditTime: 2025-02-21 13:15:57
|
||||
* @FilePath: \znxjxt-ui\src\api\xj\hisense\inter-change.js
|
||||
* @Description: 海信-工作站
|
||||
*/
|
||||
@ -43,7 +43,7 @@ export function delData(id) {
|
||||
});
|
||||
}
|
||||
|
||||
// 获取互通立交下拉数据
|
||||
// 获取工作站下拉数据
|
||||
export function getDropDown(params) {
|
||||
return request({
|
||||
url: "/hxworkstation/dropDown",
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2024-11-20 11:58:33
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-12 13:16:22
|
||||
* @LastEditTime: 2025-02-21 15:20:25
|
||||
* @FilePath: \znxjxt-ui\src\views\xj\document\maintenance-notice\components\edit-dialog.vue
|
||||
* @Description: 养护通知单编辑弹窗
|
||||
-->
|
||||
@ -11,127 +11,157 @@
|
||||
<el-form class="editForm" ref="editForm" :model="editForm" :rules="rules" label-width="7rem">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="病害成因:" prop="value2">
|
||||
<el-select v-model="editForm.value2" placeholder="请选择病害成因" clearable>
|
||||
<el-option v-for="item in value2List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-form-item label="路段类型:" prop="diseRoadPosiType">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="路段类型:" prop="value1">
|
||||
<el-select v-model="editForm.value1" placeholder="请选择路段类型" clearable>
|
||||
<el-option v-for="item in value1List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-form-item label="病害成因:" prop="diseCauses">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="工区:" prop="value3">
|
||||
<el-select v-model="editForm.value3" placeholder="请选择工区" clearable>
|
||||
<el-option v-for="item in value3List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="病害来源:" prop="value4">
|
||||
<el-select v-model="editForm.value4" placeholder="请选择病害来源" clearable>
|
||||
<!-- <el-col :span="6">
|
||||
<el-form-item label="病害来源:" prop="diseFrom">
|
||||
<el-select v-model="editForm.diseFrom" placeholder="请选择病害来源" clearable>
|
||||
<el-option v-for="item in value4List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
</el-col> -->
|
||||
<el-col :span="6">
|
||||
<el-form-item label="工作站:" prop="value5">
|
||||
<el-select v-model="editForm.value5" placeholder="请选择工作站" clearable>
|
||||
<el-option v-for="item in value5List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
<el-form-item label="所在路段:" prop="diseRoadPart">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="车道:" prop="value7">
|
||||
<el-select v-model="editForm.value7" placeholder="请选择车道" clearable>
|
||||
<el-option v-for="item in value7List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="桥梁:" prop="value8">
|
||||
<el-select v-model="editForm.value8" placeholder="请选择方向" clearable>
|
||||
<el-option v-for="item in value8List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="隧道:" prop="value9">
|
||||
<el-select v-model="editForm.value9" placeholder="请选择方向" clearable>
|
||||
<el-option v-for="item in value9List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-form-item label="病害类型:" prop="diseFirstType">
|
||||
<el-select v-model="editForm.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-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="道路名称:" prop="segmentId">
|
||||
<el-select v-model="editForm.segmentId" placeholder="请选择路段" clearable>
|
||||
<el-option v-for="item in segmentList" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-form-item label="病害二级类型:" prop="diseTypeDetailed">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="开始桩号:" prop="stakeStart">
|
||||
<el-input v-model="editForm.stakeStart" placeholder="K0000+000" />
|
||||
<el-form-item label="工区:" prop="matTaskAreaId">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="结束桩号:" prop="stakeEnd">
|
||||
<el-input v-model="editForm.stakeEnd" placeholder="K0000+000" />
|
||||
<el-form-item label="工作站:" prop="matTWorkStationId">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="方向:" prop="value6">
|
||||
<el-select v-model="editForm.value6" placeholder="请选择方向" clearable>
|
||||
<el-option v-for="item in value6List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
<el-form-item label="车道:" prop="diseRoadLine">
|
||||
<el-input v-model="editForm.diseRoadLine" placeholder="请填写车道" clearable>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="收费站:" prop="value10">
|
||||
<el-select v-model="editForm.value10" placeholder="请选择路段" clearable>
|
||||
<el-option v-for="item in value10List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-form-item label="桥梁:" prop="connBridge" v-if="editForm.diseRoadPosiType !== '1'">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="隧道:" prop="connTunnel" v-if="editForm.diseRoadPosiType !== '1'">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="收费站:" prop="stationCode" v-if="editForm.diseRoadPosiType === '1'">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="收费站位置:" prop="stationLocation" v-if="editForm.diseRoadPosiType === '1'">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="收费站位置:" prop="value11">
|
||||
<el-select v-model="editForm.value11" placeholder="请选择路段" clearable>
|
||||
<el-option v-for="item in value11List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-form-item label="方向:" prop="diseRoadDirec">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="匝道类型:" prop="value12">
|
||||
<el-select v-model="editForm.value12" placeholder="请选择匝道类型" clearable>
|
||||
<el-option v-for="item in value12List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-form-item label="开始桩号:" prop="diseStartStake">
|
||||
<el-input v-model="editForm.diseStartStake" placeholder="K0000+000" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="结束桩号:" prop="diseEndStake">
|
||||
<el-input v-model="editForm.diseEndStake" placeholder="K0000+000" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="匝道类型:" prop="rampType">
|
||||
<el-select v-model="editForm.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-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="匝道立交:" prop="value13">
|
||||
<el-select v-model="editForm.value13" placeholder="请选择匝道立交" clearable>
|
||||
<el-option v-for="item in value13List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
<el-form-item label="匝道立交:" prop="rampIntOrientation">
|
||||
<el-select v-model="editForm.rampIntOrientation" placeholder="请选择匝道立交" filterable remote clearable
|
||||
reserve-keyword :filter-method="handleRampIntOrientation" @change="changeRampIntOrientation">
|
||||
<el-option v-for="(item, index) in rampIntOrientationList" :key="`rampIntOrientation-name-${index}`"
|
||||
:label="item.label" :value="item.value"></el-option> </el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="匝道立交方向:" prop="value14">
|
||||
<el-select v-model="editForm.value14" placeholder="请选择匝道立交方向" clearable>
|
||||
<el-option v-for="item in value14List" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-form-item label="匝道立交方向:" prop="rampInterchangeCode">
|
||||
<el-select v-model="editForm.rampInterchangeCode" placeholder="请选择匝道立交方向" clearable>
|
||||
<el-option v-for="item in rampInterchangeCodeList" :key="item.value" :label="item.label"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24"><el-form-item label="详细说明:" prop="diseElaDecs">
|
||||
<el-input v-model="editForm.diseElaDecs" type="textarea" :rows="3" placeholder="请输入内容" resize="none">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<el-card shadow="never">
|
||||
<div slot="header" class="clearfix">
|
||||
@ -173,7 +203,7 @@
|
||||
<template slot-scope="scope">
|
||||
<span>{{
|
||||
scope.row.inspectDirection === "0" ? "上行" : "下行"
|
||||
}}</span>
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
@ -220,8 +250,19 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
addMaintenanceNotice,
|
||||
getDiseRoadPartDropDown,
|
||||
getDiseTypeDetailed,
|
||||
getTaskareaDropDown,
|
||||
getWorkstationDropDown,
|
||||
getBridgeDropDown,
|
||||
getTunnelDropDown,
|
||||
getStationDropDown,
|
||||
getCrossDropDown,
|
||||
getRampDropDown,
|
||||
} from "@/api/xj/document";
|
||||
import FssmScroll from "@/components/scroll/fssm-scroll.vue";
|
||||
import { addMaintenanceNotice } from "@/api/xj/document";
|
||||
import DiseaseDialog from "./disease-dialog.vue";
|
||||
import FssmMap from '@/components/map/fssm-map.vue';
|
||||
import { Feature } from "ol";
|
||||
@ -242,6 +283,36 @@ export default {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
},
|
||||
// 病害成因下拉数据
|
||||
causesList: {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
},
|
||||
// 病害类型下拉数据
|
||||
diseFirstType: {
|
||||
type: Array,
|
||||
default: () => []
|
||||
},
|
||||
// 路段类型下拉数据
|
||||
segmentTypeList: {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
},
|
||||
// 匝道类型下拉数据
|
||||
rampTypeList: {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
},
|
||||
// 道路方向下拉数据
|
||||
roadDirectionList: {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
},
|
||||
// 收费站位置下拉数据
|
||||
stationLocationList: {
|
||||
type: Array,
|
||||
default: () => []
|
||||
},
|
||||
segmentList: {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
@ -252,142 +323,72 @@ export default {
|
||||
// 编辑表单
|
||||
editForm: {
|
||||
// 病害成因
|
||||
value2: "",
|
||||
diseCauses: "",
|
||||
// 路段类型
|
||||
value1: "",
|
||||
diseRoadPosiType: "",
|
||||
// 病害类型
|
||||
diseFirstType: "",
|
||||
// 病害二级id
|
||||
diseTypeDetailed: "",
|
||||
// 工区id
|
||||
value3: "",
|
||||
matTaskAreaId: "",
|
||||
// 病害来源
|
||||
value4: "",
|
||||
diseFrom: "7",
|
||||
// 工作站id
|
||||
value5: "",
|
||||
matTWorkStationId: "",
|
||||
// 方向
|
||||
value6: "",
|
||||
diseRoadDirec: "",
|
||||
// 车道
|
||||
value7: "",
|
||||
diseRoadLine: "",
|
||||
// 桥梁
|
||||
value8: "",
|
||||
connBridge: "",
|
||||
// 隧道
|
||||
value9: "",
|
||||
connTunnel: "",
|
||||
// 收费站
|
||||
value10: "",
|
||||
stationCode: "",
|
||||
// 收费站位置
|
||||
value11: "",
|
||||
stationLocation: "",
|
||||
// 匝道类型
|
||||
value12: "",
|
||||
// 匝道立交
|
||||
value13: "",
|
||||
rampType: "",
|
||||
// 匝道立交方向
|
||||
value14: "",
|
||||
rampInterchangeCode: "",
|
||||
// 匝道立交
|
||||
rampIntOrientation: "",
|
||||
// 病害id
|
||||
defectId: "",
|
||||
// 道路名称
|
||||
segmentId: "",
|
||||
// 开始桩号
|
||||
stakeStart: "",
|
||||
diseStartStake: "",
|
||||
// 结束桩号
|
||||
stakeEnd: "",
|
||||
// 养护单位项目负责人
|
||||
receiver: "",
|
||||
// 养护内容
|
||||
// taskDescription: [""],
|
||||
diseEndStake: "",
|
||||
// 所在路段
|
||||
diseRoadPart: "",
|
||||
// 详细描述
|
||||
diseElaDecs: ""
|
||||
},
|
||||
// 病害成因下拉数据
|
||||
value2List: [],
|
||||
// 路段类型下拉数据
|
||||
value1List: [],
|
||||
// 病害类型二级下拉数据
|
||||
diseTypeDetailedList: [],
|
||||
// 工区下拉数据
|
||||
value3List: [],
|
||||
taskAreaList: [],
|
||||
// 病害来源下拉数据
|
||||
value4List: [],
|
||||
// 工作站下拉数据
|
||||
value5List: [],
|
||||
// 方向下拉
|
||||
value6List: [],
|
||||
matWorkStationList: [],
|
||||
// 车道下拉
|
||||
value7List: [],
|
||||
// 桥梁下拉
|
||||
value8List: [],
|
||||
connBridgeList: [],
|
||||
// 隧道下拉
|
||||
value9List: [],
|
||||
connTunnelList: [],
|
||||
// 收费站下拉
|
||||
value10List: [],
|
||||
// 收费站位置下拉
|
||||
value11List: [],
|
||||
// 匝道下拉
|
||||
value12List: [],
|
||||
// 匝道立交下拉
|
||||
value13List: [],
|
||||
stationCodeList: [],
|
||||
// 匝道立交方向下拉
|
||||
value14List: [],
|
||||
// 表单验证规则
|
||||
rules: {
|
||||
value2: [
|
||||
{
|
||||
required: true,
|
||||
message: "请选择病害成因",
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
value1: [
|
||||
{ required: true, message: "请选择路段类型", trigger: "change" },
|
||||
],
|
||||
value3: [{ required: true, message: "请选择工区", trigger: "change" }],
|
||||
value4: [
|
||||
{ required: true, message: "请选择病害来源", trigger: "change" },
|
||||
],
|
||||
value5: [
|
||||
{ required: true, message: "请选择工作站", trigger: "change" },
|
||||
],
|
||||
value6: [{ required: true, message: "请选择方向", trigger: "change" }],
|
||||
value7: [{ required: true, message: "请选择车道", trigger: "change" }],
|
||||
value8: [{ required: true, message: "请选择桥梁", trigger: "change" }],
|
||||
value9: [{ required: true, message: "请选择隧道", trigger: "change" }],
|
||||
value10: [
|
||||
{ required: true, message: "请选择收费站", trigger: "change" },
|
||||
],
|
||||
value11: [
|
||||
{ required: true, message: "请选择收费站位置", trigger: "change" },
|
||||
],
|
||||
value12: [{ required: true, message: "请选择匝道", trigger: "change" }],
|
||||
value13: [
|
||||
{ required: true, message: "请选择匝道立交", trigger: "change" },
|
||||
],
|
||||
value14: [
|
||||
{ required: true, message: "请选择匝道立交方向", trigger: "change" },
|
||||
],
|
||||
segmentId: [
|
||||
{ required: true, message: "请选择路段", trigger: "change" },
|
||||
],
|
||||
stakeStart: [
|
||||
{
|
||||
required: true,
|
||||
message: "请输入开始桩号",
|
||||
trigger: "blur",
|
||||
},
|
||||
{
|
||||
pattern: /^K\d{4}\+\d{3}$/,
|
||||
message: "请输入正确的桩号格式",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
stakeEnd: [
|
||||
{
|
||||
required: true,
|
||||
message: "请输入结束桩号",
|
||||
trigger: "blur",
|
||||
},
|
||||
{
|
||||
pattern: /^K\d{4}\+\d{3}$/,
|
||||
message: "请输入正确的桩号格式",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
receiver: [
|
||||
{ required: true, message: "请输入负责人名称", trigger: "blur" },
|
||||
],
|
||||
},
|
||||
|
||||
rampInterchangeCodeList: [],
|
||||
// 匝道立交下拉
|
||||
rampIntOrientationList: [],
|
||||
// 所在路段下拉
|
||||
roadPartList: [],
|
||||
// 表格是否显示控制
|
||||
mapTip: true,
|
||||
// 已选病害列表
|
||||
@ -408,16 +409,81 @@ export default {
|
||||
diseaseVisible: false,
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
rules() {
|
||||
return {
|
||||
diseCauses: [
|
||||
{
|
||||
required: true,
|
||||
message: "请选择病害成因",
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
diseRoadPosiType: [
|
||||
{ required: true, message: "请选择路段类型", trigger: "change" },
|
||||
],
|
||||
diseTypeDetailed: [{ required: true, message: "请选择病害二级类型", trigger: "change" }],
|
||||
matTaskAreaId: [{ required: true, message: "请选择工区", trigger: "change" }],
|
||||
diseFirstType: [
|
||||
{ required: true, message: "请选择病害类型", trigger: "change" },
|
||||
],
|
||||
matTWorkStationId: [
|
||||
{ required: true, message: "请选择工作站", trigger: "change" },
|
||||
],
|
||||
diseRoadDirec: [{ required: true, message: "请选择方向", trigger: "change" }],
|
||||
diseRoadLine: [{ required: true, message: "请选择车道", trigger: "blur" }],
|
||||
stationCode: [
|
||||
{ required: true, message: "请选择收费站", trigger: "change" },
|
||||
],
|
||||
stationLocation: [
|
||||
{ required: true, message: "请选择收费站位置", trigger: "change" },
|
||||
],
|
||||
rampType: [{ required: true, message: "请选择匝道", trigger: "change" }],
|
||||
rampInterchangeCode: [
|
||||
{ required: true, message: "请选择匝道立交方向", trigger: "change" },
|
||||
],
|
||||
rampIntOrientation: [
|
||||
{ required: true, message: "请选择匝道立交", trigger: "change" },
|
||||
],
|
||||
segmentId: [
|
||||
{ required: true, message: "请选择路段", trigger: "change" },
|
||||
],
|
||||
diseStartStake: [
|
||||
{
|
||||
required: this.isStakeStartRequired,
|
||||
message: "请输入开始桩号",
|
||||
trigger: "blur",
|
||||
},
|
||||
{
|
||||
pattern: /^K\d{4}\+\d{3}$/,
|
||||
message: "请输入正确的桩号格式",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
diseEndStake: [
|
||||
{
|
||||
required: this.isStakeStartRequired,
|
||||
message: "请输入结束桩号",
|
||||
trigger: "blur",
|
||||
},
|
||||
{
|
||||
pattern: /^K\d{4}\+\d{3}$/,
|
||||
message: "请输入正确的桩号格式",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
diseRoadPart: [
|
||||
{ required: true, message: "请选择所在路段", trigger: "change" },
|
||||
],
|
||||
}
|
||||
},
|
||||
isStakeStartRequired() {
|
||||
return this.editForm.diseRoadPosiType !== '2'
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
dialogItem: {
|
||||
handler(val) {
|
||||
// this.editForm = {
|
||||
// ...val,
|
||||
// segmentId: val.segmentId === "999999999" ? "" : val.segmentId,
|
||||
// id: null,
|
||||
// defectId: val.id,
|
||||
// createdTime: null,
|
||||
// };
|
||||
this.checkedDiseaseList = val
|
||||
},
|
||||
deep: true,
|
||||
@ -425,8 +491,214 @@ export default {
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.handleDiseRoadPart()
|
||||
this.handleMatTaskArea()
|
||||
this.handleMatWorkStation()
|
||||
this.handleConnBridge()
|
||||
this.handleConnTunnel()
|
||||
this.handleStationCode()
|
||||
this.handleRampIntOrientation()
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* @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: 获取工区下拉数据
|
||||
* @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: 获取互通立交下拉数据
|
||||
* @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.editForm.rampInterchangeCode = ""
|
||||
this.handleRampInterchangeCode()
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 获取匝道下拉数据
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
handleRampInterchangeCode() {
|
||||
getRampDropDown({ crossid: this.editForm.rampIntOrientation }).then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.rampInterchangeCodeList = data
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 病害类型一级修改事件
|
||||
* @param {*} row
|
||||
* @return {*}
|
||||
*/
|
||||
changeDetailed(value) {
|
||||
this.editForm.diseTypeDetailed = "";
|
||||
const [child] = this.diseFirstType.filter(item => item.value === value)
|
||||
getDiseTypeDetailed({ parentId: child.key }).then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.diseTypeDetailedList = data;
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 列表行绑定id
|
||||
* @param {*} row
|
||||
@ -456,9 +728,11 @@ export default {
|
||||
* @description: 提交表单
|
||||
*/
|
||||
submitForm() {
|
||||
|
||||
this.$refs.editForm.validate((valid) => {
|
||||
if (valid) {
|
||||
addMaintenanceNotice(this.editForm).then(({ code, data }) => {
|
||||
const defectId = this.checkedDiseaseList?.map(item => item.id)
|
||||
addMaintenanceNotice({ ...this.editForm, defectId }).then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.$message.success("生成成功");
|
||||
this.$emit("cancel");
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2024-11-20 11:58:33
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-11 17:12:32
|
||||
* @LastEditTime: 2025-02-21 11:43:04
|
||||
* @FilePath: \znxjxt-ui\src\views\xj\document\maintenance-notice\index.vue
|
||||
* @Description: 养护通知单
|
||||
-->
|
||||
@ -105,7 +105,7 @@
|
||||
<template slot-scope="scope">
|
||||
<span>{{
|
||||
scope.row.inspectDirection === "0" ? "上行" : "下行"
|
||||
}}</span>
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="是否紧急" align="center" prop="urgentFlag">
|
||||
@ -131,8 +131,10 @@
|
||||
<!-- 新增弹窗 -->
|
||||
<el-dialog title="生成表单" :visible.sync="addVisible" width="90%" append-to-body :close-on-click-modal="false"
|
||||
destroy-on-close @close="addCancel">
|
||||
<edit-dialog v-if="addVisible" :segmentList="segmentList" :tableDefect="tableDefect" :dialogItem="dialogItem"
|
||||
@cancel="addCancel" />
|
||||
<edit-dialog v-if="addVisible" :causesList="causesList" :rampTypeList="rampTypeList"
|
||||
:diseFirstType="diseFirstType" :stationLocationList="stationLocationList" :roadDirectionList="roadDirectionList"
|
||||
:segmentTypeList="segmentTypeList" :segmentList="segmentList" :tableDefect="tableDefect"
|
||||
:dialogItem="dialogItem" @cancel="addCancel" />
|
||||
</el-dialog>
|
||||
|
||||
<!-- 查看图片大图 -->
|
||||
@ -161,6 +163,12 @@ import {
|
||||
getSegment,
|
||||
getDefectList,
|
||||
getMaintenanceNoticeList,
|
||||
getCausesList,
|
||||
getSegmentTypeList,
|
||||
getRampTypeList,
|
||||
getRoadDirectionList,
|
||||
getStationLocation,
|
||||
getDiseFirstType,
|
||||
} from "@/api/xj/document";
|
||||
export default {
|
||||
name: "MaintenanceNotice",
|
||||
@ -255,6 +263,18 @@ export default {
|
||||
addVisible: false,
|
||||
// 查看弹窗显隐控制
|
||||
viewVisible: false,
|
||||
// 病害成因下拉数据
|
||||
causesList: [],
|
||||
// 路段类型下拉数据
|
||||
segmentTypeList: [],
|
||||
// 匝道类型下拉数据
|
||||
rampTypeList: [],
|
||||
// 道路下拉数据
|
||||
roadDirectionList: [],
|
||||
// 收费站位置下拉数据
|
||||
stationLocationList: [],
|
||||
// 病害类型下拉数据
|
||||
diseFirstType: [],
|
||||
|
||||
// 查看图片大图弹窗显隐控制
|
||||
showImageDialog: false,
|
||||
@ -268,6 +288,12 @@ export default {
|
||||
this.getList();
|
||||
this.getSegmentList();
|
||||
this.getDefectData();
|
||||
this.setCausesList();
|
||||
this.setSegmentTypeList()
|
||||
this.setRampTypeList()
|
||||
this.setRoadDirectionList()
|
||||
this.setStationLocation()
|
||||
this.setDiseFirstType()
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
@ -294,6 +320,78 @@ export default {
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 获取病害成因下拉列表数据
|
||||
* @return {*}
|
||||
*/
|
||||
setCausesList() {
|
||||
getCausesList().then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.causesList = data;
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 获取路段类型下拉列表数据
|
||||
* @return {*}
|
||||
*/
|
||||
setSegmentTypeList() {
|
||||
getSegmentTypeList().then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.segmentTypeList = data;
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 获取匝道类型下拉列表数据
|
||||
* @return {*}
|
||||
*/
|
||||
setRampTypeList() {
|
||||
getRampTypeList().then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.rampTypeList = data;
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 获取道路方向下拉列表数据
|
||||
* @return {*}
|
||||
*/
|
||||
setRoadDirectionList() {
|
||||
getRoadDirectionList().then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.roadDirectionList = data;
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 获取收费站位置下拉列表数据
|
||||
* @return {*}
|
||||
*/
|
||||
setStationLocation() {
|
||||
getStationLocation().then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.stationLocationList = data;
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 获取病害类型下拉列表数据
|
||||
* @return {*}
|
||||
*/
|
||||
setDiseFirstType() {
|
||||
getDiseFirstType().then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.diseFirstType = data;
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 点击查询
|
||||
* @param {*}
|
||||
@ -461,7 +559,7 @@ export default {
|
||||
*/
|
||||
addCancel() {
|
||||
this.addVisible = false;
|
||||
this.dialogItem = {};
|
||||
this.dialogItem = [];
|
||||
this.getList();
|
||||
},
|
||||
|
||||
@ -471,7 +569,7 @@ export default {
|
||||
* @return {*}
|
||||
*/
|
||||
viewCancel() {
|
||||
this.dialogItem = {};
|
||||
this.dialogItem = [];
|
||||
this.viewVisible = false;
|
||||
},
|
||||
|
||||
|
||||
155
src/views/xj/hisense/route-section/components/add-section.vue
Normal file
155
src/views/xj/hisense/route-section/components/add-section.vue
Normal file
@ -0,0 +1,155 @@
|
||||
<!--
|
||||
* @Author: SunTao 328867980@qq.com
|
||||
* @Date: 2025-02-12 16:44:44
|
||||
* @LastEditors: SunTao 328867980@qq.com
|
||||
* @LastEditTime: 2025-02-21 10:00:26
|
||||
* @FilePath: \znxjxt-ui\src\views\xj\hisense\inter-change\components\add-inter.vue
|
||||
* @Description: 海信-收费站-新增/编辑
|
||||
-->
|
||||
<template>
|
||||
<div class="dialog-content">
|
||||
<el-form class="addForm" ref="addInterForm" :model="addInterForm" :rules="rules" label-width="8rem">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="路段名称:" prop="name">
|
||||
<el-input v-model="addInterForm.name" placeholder="请填写名称" style="width: 100%" clearable>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="路段Id:" prop="sectionId">
|
||||
<el-input v-model="addInterForm.sectionId" placeholder="请填写id" style="width: 100%" clearable>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="开始桩号:" prop="startStake">
|
||||
<el-input v-model="addInterForm.startStake" placeholder="请填写开始桩号" style="width: 100%" clearable>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="结束桩号:" prop="endStake">
|
||||
<el-input v-model="addInterForm.endStake" placeholder="请填写结束桩号" style="width: 100%" clearable>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { add, updata } from '@/api/xj/hisense/route-section'
|
||||
|
||||
export default {
|
||||
name: "AddSection",
|
||||
props: {
|
||||
// 接收父组件传过来的数据
|
||||
dialogItem: {
|
||||
type: Object,
|
||||
default: () => { },
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
// 新增表单
|
||||
addInterForm: {
|
||||
name: "",
|
||||
sectionId: "",
|
||||
startStake: "",
|
||||
endStake: "",
|
||||
},
|
||||
// 表单校验规则
|
||||
rules: {
|
||||
name: [{ required: true, message: "请填写名称", trigger: "blur" }],
|
||||
sectionId: [{ required: true, message: "请填写id", trigger: "blur" }, {
|
||||
pattern: /^[1-9]\d*$/,
|
||||
message: "请输入正整数",
|
||||
}],
|
||||
startStake: [{ required: true, message: "请填写开始桩号", trigger: "blur" }, {
|
||||
pattern: /^(0|[1-9]\d*)(\.\d{1,3})?$/,
|
||||
message: "请输入非负数",
|
||||
}],
|
||||
endStake: [{ required: true, message: "请填写桩号", trigger: "blur" }, {
|
||||
pattern: /^(0|[1-9]\d*)(\.\d{1,3})?$/,
|
||||
message: "请输入非负数",
|
||||
},],
|
||||
}
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
dialogItem: {
|
||||
handler(val) {
|
||||
if (val) {
|
||||
this.addInterForm = JSON.parse(JSON.stringify(val))
|
||||
}
|
||||
}, immediate: true, deep: true
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* @description: 点击确定事件
|
||||
* @return {*}
|
||||
*/
|
||||
submitForm() {
|
||||
this.$refs.addInterForm.validate((valid) => {
|
||||
if (valid) {
|
||||
const data = {
|
||||
...this.addInterForm,
|
||||
};
|
||||
if (this.addInterForm.id) {
|
||||
updata(data).then(({ code }) => {
|
||||
if (code === 200) {
|
||||
this.$modal.msgSuccess("更新成功");
|
||||
this.$emit("cancel");
|
||||
}
|
||||
});
|
||||
} else {
|
||||
add(data).then(({ code }) => {
|
||||
if (code === 200) {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.$emit("cancel");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 点击取消事件
|
||||
* @return {*}
|
||||
*/
|
||||
cancel() {
|
||||
this.$emit("cancel");
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.dialog-content {
|
||||
width: 100%;
|
||||
// height: 20rem;
|
||||
}
|
||||
|
||||
/* 页脚 */
|
||||
.dialog-footer {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
</style>
|
||||
281
src/views/xj/hisense/route-section/index.vue
Normal file
281
src/views/xj/hisense/route-section/index.vue
Normal file
@ -0,0 +1,281 @@
|
||||
<template>
|
||||
<div class="content">
|
||||
<el-form :model="interForm" ref="interForm" size="small" :inline="true" label-width="7rem">
|
||||
<el-form-item label="路段名称" prop="name">
|
||||
<el-select v-model="interForm.name" placeholder="请输入路段名称" filterable remote clearable reserve-keyword
|
||||
:filter-method="handleRemoteMethod" @change="handleRemoteMethod">
|
||||
<el-option v-for="(item, index) in segmentList" :key="`enterprise-name-${index}`" :label="item.label"
|
||||
:value="item.label"></el-option> </el-select>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="病害类型" prop="defectType">
|
||||
<el-select v-model="interForm.defectType" placeholder="请选择病害" clearable>
|
||||
<el-option v-for="item in tableDefect" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item> -->
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd">新增
|
||||
</el-button>
|
||||
</el-col>
|
||||
<!-- <el-col :span="1.5">
|
||||
<el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple"
|
||||
@click="handleDelete(null)">删除
|
||||
</el-button>
|
||||
</el-col> -->
|
||||
</el-row>
|
||||
<!-- 表格 -->
|
||||
<el-table ref="setupTable" :data="interList" v-loading="loading" @selection-change="handleSelectionChange"
|
||||
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="name" />
|
||||
<el-table-column label="路段Id(海信)" align="center" prop="sectionId">
|
||||
</el-table-column>
|
||||
<el-table-column label="开始桩号" align="center" prop="startStake" />
|
||||
<el-table-column label="结束桩号" align="center" prop="endStake" />
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(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>
|
||||
<!-- 分页组件 -->
|
||||
<div class="pagination-part">
|
||||
<el-pagination background :current-page.sync="pagination.pageNum" @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="title" :visible.sync="addVisible" width="50rem" append-to-body :close-on-click-modal="false"
|
||||
destroy-on-close>
|
||||
<add-section v-if="addVisible" :segmentList="segmentList" :dialogItem="dialogItem"
|
||||
@cancel="addCancel"></add-section>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getList, getDropDown, delData } from "@/api/xj/hisense/route-section"
|
||||
import AddSection from "./components/add-section.vue"
|
||||
|
||||
export default {
|
||||
name: "RouteSection",
|
||||
components: {
|
||||
AddSection,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
// 搜索绑定菜单
|
||||
interForm: {
|
||||
name: "",
|
||||
},
|
||||
searchForm: {},
|
||||
// 路段下拉数据
|
||||
segmentList: [],
|
||||
|
||||
// 列表数据
|
||||
interList: [],
|
||||
// 列表加载状态
|
||||
loading: false,
|
||||
// 列表勾选框数据
|
||||
checkIds: [],
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 分页-列表总数
|
||||
tableTotal: 0,
|
||||
// 分页-页数页码
|
||||
pagination: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
},
|
||||
|
||||
// 弹窗标题
|
||||
title: "新增",
|
||||
// 新增弹窗显隐控制
|
||||
addVisible: false,
|
||||
// 传弹窗数据
|
||||
dialogItem: {},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getTableData()
|
||||
this.getDownList()
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* @description: 模糊搜索
|
||||
* @param {*} str 模糊搜索字段
|
||||
* @return {*}
|
||||
*/
|
||||
handleRemoteMethod(str) {
|
||||
this.interForm.name = str;
|
||||
this.getDownList();
|
||||
},
|
||||
/**
|
||||
* @description: 获取下拉数据
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
getDownList() {
|
||||
getDropDown({ name: this.interForm.name }).then(({ code, data }) => {
|
||||
if (code === 200) {
|
||||
this.segmentList = data
|
||||
}
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 点击搜索
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
handleQuery() {
|
||||
this.searchForm = JSON.parse(JSON.stringify(this.interForm));
|
||||
this.pagination.pageNum = 1;
|
||||
this.getTableData();
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 点击重置
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
resetQuery() {
|
||||
this.interForm = {
|
||||
name: "",
|
||||
defectType: "",
|
||||
}
|
||||
this.searchForm = {}
|
||||
this.getTableData();
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 点击新增事件
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
handleAdd() {
|
||||
this.addVisible = true;
|
||||
this.dialogItem = {};
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 获取列表数据
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
getTableData() {
|
||||
const dataItem = {
|
||||
...this.searchForm,
|
||||
...this.pagination,
|
||||
}
|
||||
getList(dataItem).then(({ rows, code, total }) => {
|
||||
if (code === 200) {
|
||||
this.interList = rows;
|
||||
this.tableTotal = total;
|
||||
}
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 列表选择改变事件
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
handleSelectionChange(selection) {
|
||||
this.checkIds = selection.map((item) => item.id);
|
||||
this.multiple = !selection.length;
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 点击编辑事件
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
handleUpdate(value) {
|
||||
this.addVisible = true;
|
||||
this.dialogItem = value;
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 点击删除事件
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
handleDelete(row) {
|
||||
// const checkIds = row ? row.id : this.checkIds;
|
||||
// if (!checkIds.length) {
|
||||
// this.$modal.msgWarning("请选择要删除的记录");
|
||||
// return;
|
||||
// }
|
||||
this.$modal
|
||||
.confirm(`是否确认删除选中的1条记录?`)
|
||||
.then(() => {
|
||||
return delData(row.id);
|
||||
})
|
||||
.then(() => {
|
||||
this.getTableData();
|
||||
// this.$refs.defectTable.clearSelection();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
})
|
||||
.catch(() => { });
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 切换分页
|
||||
* @param {*} arg
|
||||
* @return {*}
|
||||
*/
|
||||
handleCurrentChange(arg) {
|
||||
this.pagination.pageNum = arg;
|
||||
this.getTableData();
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 切换每条/页
|
||||
* @param {*} arg
|
||||
* @return {*}
|
||||
*/
|
||||
handleSizeChange(arg) {
|
||||
this.pagination.pageSize = arg;
|
||||
this.getTableData();
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: 关闭弹窗事件
|
||||
* @param {*}
|
||||
* @return {*}
|
||||
*/
|
||||
addCancel() {
|
||||
this.addVisible = false;
|
||||
this.dialogItem = {};
|
||||
this.getTableData();
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.content {
|
||||
width: 100%;
|
||||
height: calc(100vh - 5.4rem);
|
||||
padding: 1rem;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
/* 分页样式 */
|
||||
.pagination-part {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
padding-top: 1rem;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
</style>
|
||||
Loading…
x
Reference in New Issue
Block a user