19 changed files with 1292 additions and 307 deletions
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<div>堤防确权划界</div> |
|||
</template> |
@ -0,0 +1,45 @@ |
|||
<template> |
|||
<div class="app-container"> |
|||
<!-- 面包屑 --> |
|||
<el-breadcrumb separator="/" style="margin-bottom: 20px"> |
|||
<el-breadcrumb-item |
|||
v-for="(item, index) in routeList" |
|||
:key="item + index" |
|||
:to="{ path: item.path }" |
|||
> |
|||
{{ item.routeName }} |
|||
</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
<reservoirResponsible v-if="selectTab == 0" /> |
|||
<sluiceResponsible v-if="selectTab == 1" /> |
|||
<dykeResponsible v-if="selectTab == 2" /> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import sluiceResponsible from "../confirmDelimitationManage/sluice/index.vue"; |
|||
import dykeResponsible from "../confirmDelimitationManage/dyke/index.vue"; |
|||
import reservoirResponsible from "../confirmDelimitationManage/reservoir/index.vue"; |
|||
export default { |
|||
components: { |
|||
sluiceResponsible, |
|||
dykeResponsible, |
|||
reservoirResponsible, |
|||
}, |
|||
computed: { |
|||
selectTab() { |
|||
return this.$store.state.topTab.selectTab; |
|||
}, |
|||
}, |
|||
data() { |
|||
return { |
|||
// 面包屑,路由信息 |
|||
routeList: [ |
|||
{ |
|||
path: "/safetyManage/confirmDelimitationManage", |
|||
routeName: "确权划界管理列表", |
|||
}, |
|||
], |
|||
}; |
|||
}, |
|||
}; |
|||
</script> |
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<div>水库</div> |
|||
</template> |
@ -0,0 +1,833 @@ |
|||
<template> |
|||
<div> |
|||
<el-form |
|||
:model="queryParams" |
|||
ref="queryForm" |
|||
:inline="true" |
|||
v-show="showSearch" |
|||
label-width="68px" |
|||
> |
|||
<el-form-item label="水闸名称" prop="wagaName"> |
|||
<el-input |
|||
v-model="queryParams.data.wagaName" |
|||
placeholder="请输入水闸名称" |
|||
clearable |
|||
size="small" |
|||
@keyup.enter.native="handleQuery" |
|||
> |
|||
<el-button |
|||
type="primary" |
|||
slot="append" |
|||
icon="el-icon-search" |
|||
size="small" |
|||
@click="handleQuery" |
|||
></el-button> |
|||
</el-input> |
|||
</el-form-item> |
|||
|
|||
<el-form-item label="水闸类型" prop="wagaType"> |
|||
<el-select |
|||
v-model="queryParams.data.wagaType" |
|||
placeholder="请选择水闸类型" |
|||
clearable |
|||
size="small" |
|||
@change="handleQuery" |
|||
> |
|||
<el-option |
|||
v-for="dict in sluiceTypeOptions" |
|||
:key="dict.dictValue" |
|||
:label="dict.dictLabel" |
|||
:value="dict.dictValue" |
|||
/> |
|||
</el-select> |
|||
</el-form-item> |
|||
|
|||
<el-form-item> |
|||
<!-- <el-button |
|||
type="cyan" |
|||
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" |
|||
icon="el-icon-plus" |
|||
size="mini" |
|||
@click="viewInfo" |
|||
v-hasPermi="['yg:qqhj:view']" |
|||
>查看</el-button |
|||
> |
|||
</el-col> --> |
|||
<el-col :span="1.5"> |
|||
<el-button |
|||
type="success" |
|||
icon="el-icon-edit" |
|||
size="mini" |
|||
@click="comfirm" |
|||
v-hasPermi="['yg:qqhj:comfirm']" |
|||
>确权划界</el-button |
|||
> |
|||
</el-col> |
|||
<!-- <el-col :span="1.5"> |
|||
<el-button |
|||
type="danger" |
|||
icon="el-icon-delete" |
|||
size="mini" |
|||
:disabled="multiple" |
|||
@click="handleDelete" |
|||
v-hasPermi="['yg:qqhj:remove']" |
|||
>删除</el-button |
|||
> |
|||
</el-col> --> |
|||
|
|||
<right-toolbar |
|||
:showSearch.sync="showSearch" |
|||
@queryTable="getList" |
|||
></right-toolbar> |
|||
</el-row> |
|||
|
|||
<el-table |
|||
v-loading="loading" |
|||
:data="jbxxList" |
|||
@selection-change="handleSelectionChange" |
|||
> |
|||
<el-table-column type="selection" width="55" align="center" fixed /> |
|||
<el-table-column |
|||
label="序号" |
|||
type="index" |
|||
width="50" |
|||
align="center" |
|||
fixed |
|||
/> |
|||
|
|||
<el-table-column |
|||
label="水闸名称" |
|||
align="center" |
|||
prop="wagaName" |
|||
min-width="120" |
|||
/> |
|||
<el-table-column |
|||
label="水闸代码" |
|||
align="center" |
|||
prop="wagaCode" |
|||
min-width="120" |
|||
/> |
|||
<el-table-column |
|||
label="行政区划" |
|||
align="center" |
|||
prop="adcd" |
|||
:formatter="formatAdcd" |
|||
min-width="120" |
|||
/> |
|||
<el-table-column |
|||
label="工程规模" |
|||
align="center" |
|||
prop="engScal" |
|||
:formatter="projectScaleFormat" |
|||
min-width="120" |
|||
/> |
|||
<el-table-column |
|||
label="水闸类型" |
|||
align="center" |
|||
prop="wagaType" |
|||
:formatter="sluiceTypeFormat" |
|||
min-width="120" |
|||
/> |
|||
<el-table-column |
|||
label="操作" |
|||
align="center" |
|||
class-name="small-padding fixed-width" |
|||
width="180" |
|||
fixed="right" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<el-button |
|||
size="mini" |
|||
type="text" |
|||
icon="el-icon-view" |
|||
@click="viewInfo(scope.row)" |
|||
v-hasPermi="['yg:qqhj:view']" |
|||
>查看</el-button |
|||
> |
|||
<el-button |
|||
size="mini" |
|||
type="text" |
|||
icon="el-icon-edit-outline" |
|||
@click="comfirm(scope.row)" |
|||
v-hasPermi="['yg:qqhj:comfirm']" |
|||
>确权划界</el-button |
|||
> |
|||
<!-- <el-button |
|||
size="mini" |
|||
type="text" |
|||
icon="el-icon-delete" |
|||
@click="handleDelete(scope.row)" |
|||
v-hasPermi="['yg:jbxx:remove']" |
|||
>删除</el-button |
|||
> --> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
|
|||
<pagination |
|||
v-show="total > 0" |
|||
:total="total" |
|||
:page.sync="queryParams.pageNum" |
|||
:limit.sync="queryParams.pageSize" |
|||
@pagination="getList" |
|||
/> |
|||
|
|||
<!-- 添加或修改确权划界信息对话框 --> |
|||
<el-dialog |
|||
:title="title" |
|||
:visible.sync="open" |
|||
width="1200px" |
|||
append-to-body |
|||
:close-on-click-modal="false" |
|||
> |
|||
<el-row :gutter="15"> |
|||
<el-form ref="form" :model="form" :rules="rules" label-width="84px"> |
|||
<!-- <el-form-item label="水闸id" prop="wagaId"> |
|||
<el-input v-model="form.wagaId" placeholder="请输入水闸id" /> |
|||
</el-form-item> --> |
|||
<el-form-item label="工程功能" prop="engineeringFunctions"> |
|||
<el-input |
|||
v-model="form.engineeringFunctions" |
|||
placeholder="请输入工程功能" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item label="土地用途" prop="landUse"> |
|||
<el-input v-model="form.landUse" placeholder="请输入土地用途" /> |
|||
</el-form-item> |
|||
<el-form-item label="限制条件" prop="limitations"> |
|||
<el-input v-model="form.limitations" placeholder="请输入限制条件" /> |
|||
</el-form-item> |
|||
<el-form-item label="产权所有者" prop="propertyOwner"> |
|||
<el-input |
|||
v-model="form.propertyOwner" |
|||
placeholder="请输入产权所有者" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item label="所有者权力及义务" prop="ownerRights"> |
|||
<el-input |
|||
v-model="form.ownerRights" |
|||
placeholder="请输入所有者权力及义务" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item label="有效期" prop="periodValidity"> |
|||
<el-date-picker |
|||
clearable |
|||
size="small" |
|||
style="width: 100%" |
|||
v-model="form.periodValidity" |
|||
type="date" |
|||
value-format="yyyy-MM-dd" |
|||
placeholder="选择有效期" |
|||
> |
|||
</el-date-picker> |
|||
</el-form-item> |
|||
<el-form-item label="产权证书" prop="certificateTitle"> |
|||
<!-- <el-input |
|||
v-model="form.certificateTitle" |
|||
placeholder="请输入产权证书" |
|||
/> --> |
|||
<el-upload |
|||
class="upload-demo" |
|||
action="thinking/common/upload" |
|||
:headers="headers" |
|||
:on-preview="handlePreview" |
|||
:on-remove="(file) => handleRemove(file, 'fileList')" |
|||
:before-remove="beforeRemove" |
|||
multiple |
|||
:on-exceed="handleExceed" |
|||
:on-success="(_, fileList) => submitUpload(fileList, 'fileList')" |
|||
:file-list="fileList" |
|||
> |
|||
<el-button size="small" type="primary" plain> |
|||
<i class="el-icon-upload el-icon--right"></i> |
|||
点击上传 |
|||
</el-button> |
|||
<div slot="tip" class="el-upload__tip"> |
|||
支持jpg/png文件等,不超过100M |
|||
</div> |
|||
</el-upload> |
|||
</el-form-item> |
|||
<el-form-item label="管理范围" prop="managementScope"> |
|||
<el-input |
|||
v-model="form.managementScope" |
|||
placeholder="请输入管理范围" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item label="保护范围" prop="protectScope"> |
|||
<el-input |
|||
v-model="form.protectScope" |
|||
placeholder="请输入保护范围" |
|||
/> |
|||
</el-form-item> |
|||
</el-form> |
|||
</el-row> |
|||
<div slot="footer" class="dialog-footer"> |
|||
<el-button type="primary" @click="submitForm">确 定</el-button> |
|||
<el-button @click="cancel">取 消</el-button> |
|||
</div> |
|||
</el-dialog> |
|||
|
|||
<el-dialog |
|||
:title="viewTitle" |
|||
:visible.sync="viewOpen" |
|||
width="1200px" |
|||
append-to-body |
|||
:close-on-click-modal="false" |
|||
@close="closeView" |
|||
> |
|||
<el-descriptions |
|||
class="margin-top" |
|||
:column="1" |
|||
border |
|||
:labelStyle="{ |
|||
'text-align': 'left', |
|||
width: '180px', |
|||
height: '50px', |
|||
}" |
|||
:contentStyle="{}" |
|||
> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 工程功能 </template> |
|||
{{ this.viewMsg.engineeringFunctions }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 土地用途 </template> |
|||
{{ this.viewMsg.landUse }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 限制条件 </template> |
|||
{{ this.viewMsg.limitations }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 产权所有者 </template> |
|||
{{ this.viewMsg.propertyOwner }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 所有者权力及义务 </template> |
|||
{{ this.viewMsg.ownerRights }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 有效期 </template> |
|||
{{ this.viewMsg.periodValidity }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 产权证书 </template> |
|||
<!-- {{ this.viewMsg.certificateTitle }} --> |
|||
<template v-if="this.viewMsg.certificateTitle"> |
|||
<div |
|||
v-for="(item, index) in JSON.parse(this.viewMsg.certificateTitle)" |
|||
:key="item + index" |
|||
> |
|||
{{ item.name }} |
|||
|
|||
<i |
|||
class="el-icon-download" |
|||
@click="downloadFile2(item, index)" |
|||
style="cursor: pointer" |
|||
></i> |
|||
</div> |
|||
</template> |
|||
</el-descriptions-item> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 管理范围 </template> |
|||
{{ this.viewMsg.managementScope }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item> |
|||
<template slot="label"> 保护范围 </template> |
|||
{{ this.viewMsg.protectScope }} |
|||
</el-descriptions-item> |
|||
</el-descriptions> |
|||
<div slot="footer" class="dialog-footer"> |
|||
<el-button type="primary" @click="viewOpen = false">确 定</el-button> |
|||
<!-- <el-button @click="cancel">取 消</el-button> --> |
|||
</div> |
|||
</el-dialog> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import { listJbxx, getJbxx, delJbxx, addJbxx, updateJbxx } from "@/api/yg/jbxx"; |
|||
import { |
|||
listQqhj, |
|||
getQqhj, |
|||
delQqhj, |
|||
addQqhj, |
|||
updateQqhj, |
|||
exportQqhj, |
|||
} from "@/api/yg/qqhj"; |
|||
|
|||
import { getAreasData } from "@/api/areas/index"; |
|||
import { regionData, codeToText, TextToCode } from "element-china-area-data"; |
|||
import { getToken } from "@/utils/auth"; |
|||
import { getFileStream } from "@/api/system/upload"; |
|||
|
|||
export default { |
|||
name: "qqhj", |
|||
data() { |
|||
return { |
|||
areasOptionProps: { |
|||
emitPath: false, |
|||
checkStrictly: true, //选择任意一级 |
|||
}, |
|||
areasOptions: [], |
|||
// 遮罩层 |
|||
loading: true, |
|||
// 选中数组 |
|||
ids: [], |
|||
// 非单个禁用 |
|||
single: true, |
|||
// 非多个禁用 |
|||
multiple: true, |
|||
// 显示搜索条件 |
|||
showSearch: true, |
|||
// 总条数 |
|||
total: 0, |
|||
// 水闸安全管理基本信息表格数据 |
|||
jbxxList: [], |
|||
// 弹出层标题 |
|||
title: "", |
|||
viewTitle: "", |
|||
// 是否显示弹出层 |
|||
open: false, |
|||
viewOpen: false, |
|||
// 工程规模字典 |
|||
projectScaleOptions: [], |
|||
// 水闸类型字典 |
|||
sluiceTypeOptions: [], |
|||
// 工程等别字典 |
|||
engineerLevelOptions: [], |
|||
// 主要建筑物级别字典 |
|||
majorStructureLevelOptions: [], |
|||
// 工程建设情况字典 |
|||
engineerConstructionSituationOptions: [], |
|||
// 是否为套闸工程字典 |
|||
isGateProjectOptions: [], |
|||
// 观测项目字典 |
|||
observationProjectOptions: [], |
|||
// 安全类别字典 |
|||
securityCategoryOptions: [], |
|||
// 安全鉴定状态字典 |
|||
securityStatusOptions: [], |
|||
// 查询参数 |
|||
queryParams: { |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
ids: null, |
|||
data: { |
|||
wagaName: null, |
|||
wagaCode: null, |
|||
engScal: null, |
|||
wagaStartLong: null, |
|||
wagaStartLat: null, |
|||
wagaEndLong: null, |
|||
wagaEndLat: null, |
|||
wagaLoc: null, |
|||
wagaType: null, |
|||
wagaUse: null, |
|||
engGrad: null, |
|||
mainBuildGrad: null, |
|||
desLockDisc: null, |
|||
gaorNum: null, |
|||
gaorTotNetWid: null, |
|||
engStat: null, |
|||
startDate: null, |
|||
compDate: null, |
|||
admDep: null, |
|||
isGateProject: null, |
|||
observationProject: null, |
|||
levelDatum: null, |
|||
sluiceOverview: null, |
|||
createUid: null, |
|||
updateUid: null, |
|||
owerDept: null, |
|||
relation: null, |
|||
status: null, |
|||
securityCategory: null, |
|||
securityStatus: null, |
|||
}, |
|||
// 排序方式 |
|||
params: { |
|||
// 按哪个字段排序 |
|||
orderBy: "create_time", |
|||
// desc降序,升序asc |
|||
sort: "desc", |
|||
}, |
|||
}, |
|||
// 表单参数 |
|||
form: {}, |
|||
// 表单校验 |
|||
rules: {}, |
|||
// 面包屑,路由信息 |
|||
routeList: [ |
|||
{ |
|||
path: "/safetyManage/declarationManage1", |
|||
routeName: "申报基础信息管理", |
|||
}, |
|||
], |
|||
djOpen: false, |
|||
baseMsg: {}, |
|||
viewMsg: {}, |
|||
// 请求头 |
|||
headers: { |
|||
shuili: "water " + getToken(), |
|||
}, |
|||
fileList: [], |
|||
}; |
|||
}, |
|||
created() { |
|||
this.getList(); |
|||
this.getTreeData(); |
|||
this.getDicts("engineering_scale").then((response) => { |
|||
this.projectScaleOptions = response.data; |
|||
}); |
|||
this.getDicts("sluice_type").then((response) => { |
|||
this.sluiceTypeOptions = response.data; |
|||
}); |
|||
this.getDicts("engineering_grade").then((response) => { |
|||
this.engineerLevelOptions = response.data; |
|||
}); |
|||
this.getDicts("building_level").then((response) => { |
|||
this.majorStructureLevelOptions = response.data; |
|||
}); |
|||
this.getDicts("engineering_construct_situation").then((response) => { |
|||
this.engineerConstructionSituationOptions = response.data; |
|||
}); |
|||
this.getDicts("whether").then((response) => { |
|||
this.isGateProjectOptions = response.data; |
|||
}); |
|||
this.getDicts("observation_project").then((response) => { |
|||
this.observationProjectOptions = response.data; |
|||
}); |
|||
this.getDicts("security_category").then((response) => { |
|||
this.securityCategoryOptions = response.data; |
|||
}); |
|||
this.getDicts("safety_evaluation_status").then((response) => { |
|||
this.securityStatusOptions = response.data; |
|||
}); |
|||
}, |
|||
methods: { |
|||
closeView() { |
|||
this.viewMsg = {}; |
|||
}, |
|||
viewInfo(row) { |
|||
const id = row.id; |
|||
listQqhj({ data: { wagaId: id } }).then((res) => { |
|||
// console.log(res); |
|||
if (res.records[0]) { |
|||
this.viewMsg = res.records[0]; |
|||
} |
|||
this.viewOpen = true; |
|||
this.viewTitle = "查看确权划界信息"; |
|||
}); |
|||
}, |
|||
comfirm(row) { |
|||
this.baseMsg = row; |
|||
const id = row.id; |
|||
listQqhj({ data: { wagaId: id } }).then((res) => { |
|||
// console.log(res); |
|||
if (res.records[0]) { |
|||
this.form = res.records[0]; |
|||
if (this.form.certificateTitle) { |
|||
this.fileList = JSON.parse(this.form.certificateTitle); |
|||
} |
|||
} |
|||
this.open = true; |
|||
this.title = "确权划界信息"; |
|||
}); |
|||
}, |
|||
|
|||
formatAdcd(row) { |
|||
if (row.adcd) { |
|||
let provinceCode = row.adcd.slice(0, 2); |
|||
let cityCode = row.adcd.slice(2, 4); |
|||
let areaCode = row.adcd.slice(4, 6); |
|||
if (areaCode != "00") { |
|||
return ( |
|||
codeToText[provinceCode] + |
|||
"-" + |
|||
codeToText[provinceCode + cityCode] + |
|||
"-" + |
|||
codeToText[provinceCode + cityCode + areaCode] |
|||
); |
|||
} else if (cityCode != "00") { |
|||
return ( |
|||
codeToText[provinceCode] + "-" + codeToText[provinceCode + cityCode] |
|||
); |
|||
} else { |
|||
return codeToText[provinceCode]; |
|||
} |
|||
} |
|||
}, |
|||
getTreeData() { |
|||
getAreasData().then((items) => { |
|||
// console.log("getAreasData", items.data); |
|||
let res = []; |
|||
let getChildren = (res, pid) => { |
|||
for (const i of items.data) { |
|||
if (i.parentid === pid) { |
|||
const newItem = { |
|||
label: i.name, |
|||
value: i.id, |
|||
}; |
|||
if (i.layer != 3) newItem.children = []; |
|||
res.push(newItem); |
|||
getChildren(newItem.children, newItem.value); |
|||
} |
|||
} |
|||
}; |
|||
getChildren(res, items.data[0].parentid); |
|||
// console.log(66666666666, res); |
|||
this.areasOptions = res; |
|||
// return res; |
|||
}); |
|||
}, |
|||
/** 查询水闸安全管理基本信息列表 */ |
|||
getList() { |
|||
this.loading = true; |
|||
listJbxx(this.queryParams).then((response) => { |
|||
this.jbxxList = response.records; |
|||
this.total = response.total; |
|||
this.loading = false; |
|||
}); |
|||
}, |
|||
// 工程规模字典翻译 |
|||
projectScaleFormat(row, column) { |
|||
return this.selectDictLabel(this.projectScaleOptions, row.engScal); |
|||
}, |
|||
// 水闸类型字典翻译 |
|||
sluiceTypeFormat(row, column) { |
|||
return this.selectDictLabel(this.sluiceTypeOptions, row.wagaType); |
|||
}, |
|||
// 工程等别字典翻译 |
|||
engineerLevelFormat(row, column) { |
|||
return this.selectDictLabel(this.engineerLevelOptions, row.engGrad); |
|||
}, |
|||
// 主要建筑物级别字典翻译 |
|||
majorStructureLevelFormat(row, column) { |
|||
return this.selectDictLabel( |
|||
this.majorStructureLevelOptions, |
|||
row.mainBuildGrad |
|||
); |
|||
}, |
|||
// 工程建设情况字典翻译 |
|||
engineerConstructionSituationFormat(row, column) { |
|||
return this.selectDictLabel( |
|||
this.engineerConstructionSituationOptions, |
|||
row.engStat |
|||
); |
|||
}, |
|||
// 是否为套闸工程字典翻译 |
|||
isGateProjectFormat(row, column) { |
|||
return this.selectDictLabel(this.isGateProjectOptions, row.isGateProject); |
|||
}, |
|||
// 观测项目字典翻译 |
|||
observationProjectFormat(row, column) { |
|||
return this.selectDictLabel( |
|||
this.observationProjectOptions, |
|||
row.observationProject |
|||
); |
|||
}, |
|||
// 安全类别字典翻译 |
|||
securityCategoryFormat(row, column) { |
|||
return this.selectDictLabel( |
|||
this.securityCategoryOptions, |
|||
row.securityCategory |
|||
); |
|||
}, |
|||
// 安全鉴定状态字典翻译 |
|||
securityStatusFormat(row, column) { |
|||
return this.selectDictLabel( |
|||
this.securityStatusOptions, |
|||
row.securityStatus |
|||
); |
|||
}, |
|||
// 取消按钮 |
|||
cancel() { |
|||
this.open = false; |
|||
this.reset(); |
|||
}, |
|||
// 表单重置 |
|||
reset() { |
|||
this.baseMsg = {}; |
|||
this.form = { |
|||
id: null, |
|||
sluiceId: null, |
|||
engineeringFunctions: null, |
|||
landUse: null, |
|||
limitations: null, |
|||
propertyOwner: null, |
|||
ownerRights: null, |
|||
periodValidity: null, |
|||
certificateTitle: null, |
|||
managementScope: null, |
|||
protectScope: null, |
|||
createUid: null, |
|||
updateUid: null, |
|||
createTime: null, |
|||
updateTime: null, |
|||
owerDept: null, |
|||
remark: null, |
|||
relation: null, |
|||
}; |
|||
this.resetForm("form"); |
|||
}, |
|||
// 查询表单重置 |
|||
resetQueryForm() { |
|||
this.queryParams = { |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
data: { |
|||
id: null, |
|||
wagaName: null, |
|||
wagaCode: null, |
|||
engScal: null, |
|||
wagaStartLong: null, |
|||
wagaStartLat: null, |
|||
wagaEndLong: null, |
|||
wagaEndLat: null, |
|||
wagaLoc: null, |
|||
wagaType: null, |
|||
wagaUse: null, |
|||
engGrad: null, |
|||
mainBuildGrad: null, |
|||
desLockDisc: null, |
|||
gaorNum: null, |
|||
gaorTotNetWid: null, |
|||
engStat: null, |
|||
startDate: null, |
|||
compDate: null, |
|||
admDep: null, |
|||
isGateProject: null, |
|||
observationProject: null, |
|||
levelDatum: null, |
|||
sluiceOverview: null, |
|||
createUid: null, |
|||
updateUid: null, |
|||
createTime: null, |
|||
updateTime: null, |
|||
owerDept: null, |
|||
remark: null, |
|||
relation: null, |
|||
status: "0", |
|||
securityCategory: null, |
|||
securityStatus: null, |
|||
}, |
|||
}; |
|||
this.resetForm("form"); |
|||
}, |
|||
/** 搜索按钮操作 */ |
|||
handleQuery() { |
|||
this.queryParams.pageNum = 1; |
|||
this.getList(); |
|||
}, |
|||
/** 重置按钮操作 */ |
|||
resetQuery() { |
|||
this.resetQueryForm(); |
|||
this.handleQuery(); |
|||
}, |
|||
// 多选框选中数据 |
|||
handleSelectionChange(selection) { |
|||
this.ids = selection.map((item) => item.id); |
|||
this.single = selection.length !== 1; |
|||
this.multiple = !selection.length; |
|||
}, |
|||
/** 提交按钮 */ |
|||
submitForm() { |
|||
this.$refs["form"].validate((valid) => { |
|||
if (valid) { |
|||
this.form.certificateTitle = JSON.stringify(this.fileList); |
|||
if (this.form.id != null) { |
|||
updateQqhj(this.form).then((response) => { |
|||
if (response.code === 200) { |
|||
this.msgSuccess("修改成功"); |
|||
this.open = false; |
|||
this.getList(); |
|||
} |
|||
}); |
|||
} else { |
|||
this.form.wagaId = this.baseMsg.id; |
|||
addQqhj(this.form).then((response) => { |
|||
if (response.code === 200) { |
|||
this.msgSuccess("新增成功"); |
|||
this.open = false; |
|||
this.getList(); |
|||
} |
|||
}); |
|||
} |
|||
} |
|||
}); |
|||
}, |
|||
// 上传意见附件 |
|||
submitUpload(fileList, name) { |
|||
console.log(name, fileList); |
|||
this[name].push({ |
|||
name: fileList.name, |
|||
fileName: fileList.response.fileName, |
|||
url: fileList.response.url, |
|||
uid: fileList.uid, |
|||
}); |
|||
console.log(name, this[name]); |
|||
}, |
|||
handleRemove(file, name) { |
|||
// console.log(file, fileList1); |
|||
let index = this[name].findIndex((item) => item.uid === file.uid); |
|||
// 删除文件 |
|||
this[name].splice(index, 1); |
|||
}, |
|||
downloadFile2(info, index) { |
|||
console.log(info); |
|||
this.handlePreview(info); |
|||
}, |
|||
// 点击预览的文件进行下载 |
|||
handlePreview(file) { |
|||
// console.log(file); |
|||
getFileStream({ fileName: file.fileName }).then((res) => { |
|||
const blob = new Blob([res], { |
|||
// type类型后端返回来的数据中会有,根据自己实际进行修改 |
|||
// 表格下载为 application/xlsx,压缩包为 application/zip等, |
|||
type: "application/xlsx", |
|||
}); //excel,pdf等 |
|||
const href = URL.createObjectURL(blob); //创建新的URL表示指定的blob对象 |
|||
const a = document.createElement("a"); //创建a标签 |
|||
a.style.display = "none"; |
|||
a.href = href; // 指定下载链接 |
|||
a.download = file.name; //指定下载文件名 |
|||
a.click(); //触发下载 |
|||
URL.revokeObjectURL(a.href); //释放URL对象 |
|||
}); |
|||
}, |
|||
handleExceed(files, fileList) { |
|||
this.$message.warning( |
|||
`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${ |
|||
files.length + fileList.length |
|||
} 个文件` |
|||
); |
|||
}, |
|||
beforeRemove(file, fileList) { |
|||
return this.$confirm(`确定移除 ${file.name}?`); |
|||
}, |
|||
}, |
|||
}; |
|||
</script> |
|||
<style lang="scss" scoped> |
|||
@import "@/assets/css/dialog.scss"; |
|||
::v-deep { |
|||
.el-dialog { |
|||
margin-top: 4vh !important; |
|||
} |
|||
} |
|||
</style> |
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<div>堤防防汛</div> |
|||
</template> |
@ -0,0 +1,45 @@ |
|||
<template> |
|||
<div class="app-container"> |
|||
<!-- 面包屑 --> |
|||
<el-breadcrumb separator="/" style="margin-bottom: 20px"> |
|||
<el-breadcrumb-item |
|||
v-for="(item, index) in routeList" |
|||
:key="item + index" |
|||
:to="{ path: item.path }" |
|||
> |
|||
{{ item.routeName }} |
|||
</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
<reservoirResponsible v-if="selectTab == 0" /> |
|||
<sluiceResponsible v-if="selectTab == 1" /> |
|||
<dykeResponsible v-if="selectTab == 2" /> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import sluiceResponsible from "./sluice/power.vue"; |
|||
import dykeResponsible from "./dyke/index.vue"; |
|||
import reservoirResponsible from "./reservoir/index.vue"; |
|||
export default { |
|||
components: { |
|||
sluiceResponsible, |
|||
dykeResponsible, |
|||
reservoirResponsible, |
|||
}, |
|||
computed: { |
|||
selectTab() { |
|||
return this.$store.state.topTab.selectTab; |
|||
}, |
|||
}, |
|||
data() { |
|||
return { |
|||
// 面包屑,路由信息 |
|||
routeList: [ |
|||
{ |
|||
path: "/safetyManage/floodControlManagement/power", |
|||
routeName: "防汛电源管理", |
|||
}, |
|||
], |
|||
}; |
|||
}, |
|||
}; |
|||
</script> |
@ -0,0 +1,45 @@ |
|||
<template> |
|||
<div class="app-container"> |
|||
<!-- 面包屑 --> |
|||
<el-breadcrumb separator="/" style="margin-bottom: 20px"> |
|||
<el-breadcrumb-item |
|||
v-for="(item, index) in routeList" |
|||
:key="item + index" |
|||
:to="{ path: item.path }" |
|||
> |
|||
{{ item.routeName }} |
|||
</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
<reservoirResponsible v-if="selectTab == 0" /> |
|||
<sluiceResponsible v-if="selectTab == 1" /> |
|||
<dykeResponsible v-if="selectTab == 2" /> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import sluiceResponsible from "./sluice/preplan.vue"; |
|||
import dykeResponsible from "./dyke/index.vue"; |
|||
import reservoirResponsible from "./reservoir/index.vue"; |
|||
export default { |
|||
components: { |
|||
sluiceResponsible, |
|||
dykeResponsible, |
|||
reservoirResponsible, |
|||
}, |
|||
computed: { |
|||
selectTab() { |
|||
return this.$store.state.topTab.selectTab; |
|||
}, |
|||
}, |
|||
data() { |
|||
return { |
|||
// 面包屑,路由信息 |
|||
routeList: [ |
|||
{ |
|||
path: "/safetyManage/floodControlManagement/preplan", |
|||
routeName: "防汛预案管理", |
|||
}, |
|||
], |
|||
}; |
|||
}, |
|||
}; |
|||
</script> |
@ -0,0 +1,45 @@ |
|||
<template> |
|||
<div class="app-container"> |
|||
<!-- 面包屑 --> |
|||
<el-breadcrumb separator="/" style="margin-bottom: 20px"> |
|||
<el-breadcrumb-item |
|||
v-for="(item, index) in routeList" |
|||
:key="item + index" |
|||
:to="{ path: item.path }" |
|||
> |
|||
{{ item.routeName }} |
|||
</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
<reservoirResponsible v-if="selectTab == 0" /> |
|||
<sluiceResponsible v-if="selectTab == 1" /> |
|||
<dykeResponsible v-if="selectTab == 2" /> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import sluiceResponsible from "./sluice/supplies.vue"; |
|||
import dykeResponsible from "./dyke/index.vue"; |
|||
import reservoirResponsible from "./reservoir/index.vue"; |
|||
export default { |
|||
components: { |
|||
sluiceResponsible, |
|||
dykeResponsible, |
|||
reservoirResponsible, |
|||
}, |
|||
computed: { |
|||
selectTab() { |
|||
return this.$store.state.topTab.selectTab; |
|||
}, |
|||
}, |
|||
data() { |
|||
return { |
|||
// 面包屑,路由信息 |
|||
routeList: [ |
|||
{ |
|||
path: "/safetyManage/floodControlManagement/supplies", |
|||
routeName: "防汛物资管理", |
|||
}, |
|||
], |
|||
}; |
|||
}, |
|||
}; |
|||
</script> |
@ -0,0 +1,45 @@ |
|||
<template> |
|||
<div class="app-container"> |
|||
<!-- 面包屑 --> |
|||
<el-breadcrumb separator="/" style="margin-bottom: 20px"> |
|||
<el-breadcrumb-item |
|||
v-for="(item, index) in routeList" |
|||
:key="item + index" |
|||
:to="{ path: item.path }" |
|||
> |
|||
{{ item.routeName }} |
|||
</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
<reservoirResponsible v-if="selectTab == 0" /> |
|||
<sluiceResponsible v-if="selectTab == 1" /> |
|||
<dykeResponsible v-if="selectTab == 2" /> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import sluiceResponsible from "./sluice/tissue.vue"; |
|||
import dykeResponsible from "./dyke/index.vue"; |
|||
import reservoirResponsible from "./reservoir/index.vue"; |
|||
export default { |
|||
components: { |
|||
sluiceResponsible, |
|||
dykeResponsible, |
|||
reservoirResponsible, |
|||
}, |
|||
computed: { |
|||
selectTab() { |
|||
return this.$store.state.topTab.selectTab; |
|||
}, |
|||
}, |
|||
data() { |
|||
return { |
|||
// 面包屑,路由信息 |
|||
routeList: [ |
|||
{ |
|||
path: "/safetyManage/floodControlManagement/tissue", |
|||
routeName: "防汛组织管理", |
|||
}, |
|||
], |
|||
}; |
|||
}, |
|||
}; |
|||
</script> |
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<router-view /> |
|||
</template> |
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<div>水库</div> |
|||
</template> |
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<div>电源</div> |
|||
</template> |
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<div>预案</div> |
|||
</template> |
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<div>物资</div> |
|||
</template> |
@ -0,0 +1,3 @@ |
|||
<template> |
|||
<div>组织</div> |
|||
</template> |
Loading…
Reference in new issue