forked from integrated_whb/integrated_whb_vue
init
parent
c91e38adb9
commit
2da5e720d3
|
@ -33,6 +33,7 @@
|
||||||
"relation-graph": "^2.1.24",
|
"relation-graph": "^2.1.24",
|
||||||
"throttle-debounce": "^5.0.0",
|
"throttle-debounce": "^5.0.0",
|
||||||
"v-viewer": "^3.0.11",
|
"v-viewer": "^3.0.11",
|
||||||
|
"vant": "^4.8.4",
|
||||||
"vue": "^3.4.3",
|
"vue": "^3.4.3",
|
||||||
"vue-countup-v3": "^1.4.1",
|
"vue-countup-v3": "^1.4.1",
|
||||||
"vue-draggable-plus": "^0.3.4",
|
"vue-draggable-plus": "^0.3.4",
|
||||||
|
@ -1421,6 +1422,19 @@
|
||||||
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
|
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@vant/popperjs": {
|
||||||
|
"version": "1.3.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/@vant/popperjs/-/popperjs-1.3.0.tgz",
|
||||||
|
"integrity": "sha512-hB+czUG+aHtjhaEmCJDuXOep0YTZjdlRR+4MSmIFnkCQIxJaXLQdSsR90XWvAI2yvKUI7TCGqR8pQg2RtvkMHw=="
|
||||||
|
},
|
||||||
|
"node_modules/@vant/use": {
|
||||||
|
"version": "1.6.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/@vant/use/-/use-1.6.0.tgz",
|
||||||
|
"integrity": "sha512-PHHxeAASgiOpSmMjceweIrv2AxDZIkWXyaczksMoWvKV2YAYEhoizRuk/xFnKF+emUIi46TsQ+rvlm/t2BBCfA==",
|
||||||
|
"peerDependencies": {
|
||||||
|
"vue": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@vitejs/plugin-basic-ssl": {
|
"node_modules/@vitejs/plugin-basic-ssl": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.1.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.1.0.tgz",
|
||||||
|
@ -5695,6 +5709,19 @@
|
||||||
"vue": "^3.0.0"
|
"vue": "^3.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/vant": {
|
||||||
|
"version": "4.8.4",
|
||||||
|
"resolved": "https://registry.npmmirror.com/vant/-/vant-4.8.4.tgz",
|
||||||
|
"integrity": "sha512-2ompmogS76pFWUDrQGYNXAENWxisJXqv0+eIqt7mGo1TJJXcUikQ5sfRjX8W3HTkTe1FxV7lzuI3QrW01i043g==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vant/popperjs": "^1.3.0",
|
||||||
|
"@vant/use": "^1.6.0",
|
||||||
|
"@vue/shared": "^3.0.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"vue": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/viewerjs": {
|
"node_modules/viewerjs": {
|
||||||
"version": "1.11.6",
|
"version": "1.11.6",
|
||||||
"resolved": "https://registry.npmmirror.com/viewerjs/-/viewerjs-1.11.6.tgz",
|
"resolved": "https://registry.npmmirror.com/viewerjs/-/viewerjs-1.11.6.tgz",
|
||||||
|
|
|
@ -35,6 +35,7 @@
|
||||||
"relation-graph": "^2.1.24",
|
"relation-graph": "^2.1.24",
|
||||||
"throttle-debounce": "^5.0.0",
|
"throttle-debounce": "^5.0.0",
|
||||||
"v-viewer": "^3.0.11",
|
"v-viewer": "^3.0.11",
|
||||||
|
"vant": "^4.8.4",
|
||||||
"vue": "^3.4.3",
|
"vue": "^3.4.3",
|
||||||
"vue-countup-v3": "^1.4.1",
|
"vue-countup-v3": "^1.4.1",
|
||||||
"vue-draggable-plus": "^0.3.4",
|
"vue-draggable-plus": "^0.3.4",
|
||||||
|
|
|
@ -316,3 +316,9 @@ div::-webkit-scrollbar-track {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mobile {
|
||||||
|
padding: 10px;
|
||||||
|
background-color: #fafafa;
|
||||||
|
min-height: 100vh;
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,216 @@
|
||||||
|
<template>
|
||||||
|
<div class="mobile">
|
||||||
|
<van-cell-group>
|
||||||
|
<van-cell title="隐患来源">
|
||||||
|
<template #value>
|
||||||
|
<span v-if="data.info.SOURCE === '1'"> 隐患快报 </span>
|
||||||
|
<span v-else-if="data.info.SOURCE === '2'"> 隐患排查 </span>
|
||||||
|
<span v-else-if="data.info.SOURCE === '3'"> 隐患排查 </span>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<template v-if="data.info.SOURCE === '2'">
|
||||||
|
<van-cell title="风险点(单元)" :value="data.info.RISK_UNIT" />
|
||||||
|
<van-cell title="辨识部位" :value="data.info.IDENTIFICATION" />
|
||||||
|
<van-cell title="存在风险" :label="data.info.RISK_DESCR" />
|
||||||
|
<van-cell title="风险分级" :value="data.info.LEVEL" />
|
||||||
|
<van-cell title="检查内容" :label="data.info.CHECK_CONTENT" />
|
||||||
|
</template>
|
||||||
|
<van-cell title="隐患级别" :value="data.info.HIDDENLEVELNAME" />
|
||||||
|
<van-cell title="隐患状态">
|
||||||
|
<template #value>
|
||||||
|
<span v-if="data.info.STATE === '1'"> 未整改 </span>
|
||||||
|
<span v-else-if="data.info.STATE === '2'"> 已整改 </span>
|
||||||
|
<span v-else-if="data.info.STATE === '3'"> 已验收 </span>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="隐患描述" :label="data.info.HIDDENDESCR" />
|
||||||
|
<van-cell title="隐患部位" :value="data.info.HIDDENPART" />
|
||||||
|
<van-cell title="隐患发现部门" :value="data.info.HIDDENFINDDEPTNAME" />
|
||||||
|
<van-cell title="发现人" :value="data.info.CREATORNAME" />
|
||||||
|
<van-cell title="发现时间" :value="data.info.CREATTIME" />
|
||||||
|
<van-cell title="隐患处置">
|
||||||
|
<template #value>
|
||||||
|
<span v-if="data.info.RECTIFICATIONTYPE === '1'"> 立即整改 </span>
|
||||||
|
<span v-else-if="data.info.RECTIFICATIONTYPE === '2'">
|
||||||
|
限期整改
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell
|
||||||
|
v-if="data.info.RECTIFICATIONTYPE === '2'"
|
||||||
|
title="整改期限"
|
||||||
|
:value="data.info.RECTIFICATIONDEADLINE"
|
||||||
|
/>
|
||||||
|
<van-cell title="隐患图片">
|
||||||
|
<template #label>
|
||||||
|
<img
|
||||||
|
v-for="(item, index) in data.hImgs"
|
||||||
|
:key="item"
|
||||||
|
:src="item"
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
class="ml-10"
|
||||||
|
@click="fnImagePreview(data.hImgs, index)"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<template v-if="data.info.STATE >= 3">
|
||||||
|
<van-cell title="整改描述" :value="data.info.RECTIFYDESCR" />
|
||||||
|
<van-cell title="整改部门" :value="data.info.RECTIFICATIONDEPTNAME" />
|
||||||
|
<van-cell title="整改人" :value="data.info.RECTIFICATIONORNAME" />
|
||||||
|
<van-cell title="整改时间" :value="data.info.RECTIFICATIONTIME" />
|
||||||
|
<van-cell title="整改后图片">
|
||||||
|
<template #label>
|
||||||
|
<img
|
||||||
|
v-for="(item, index) in data.rImgs"
|
||||||
|
:key="item"
|
||||||
|
:src="item"
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
class="ml-10"
|
||||||
|
@click="fnImagePreview(data.rImgs, index)"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="整改计划">
|
||||||
|
<template #value>
|
||||||
|
{{ data.info.HAVEPLAN === "0" ? "无" : "" }}
|
||||||
|
{{ data.info.HAVEPLAN === "1" ? "有" : "" }}
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="计划图片" v-if="data.info.HAVEPLAN === '1'">
|
||||||
|
<template #label>
|
||||||
|
<img
|
||||||
|
v-for="(item, index) in data.pImgs"
|
||||||
|
:key="item"
|
||||||
|
:src="item"
|
||||||
|
alt=""
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
class="ml-10"
|
||||||
|
@click="fnImagePreview(data.pImgs, index)"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="整改方案" v-if="data.info.RECTIFICATIONTYPE === '2'">
|
||||||
|
<template #value>
|
||||||
|
{{ data.info.HAVESCHEME === "0" ? "无" : "" }}
|
||||||
|
{{ data.info.HAVESCHEME === "1" ? "有" : "" }}
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<template v-if="data.hs && data.info.HAVESCHEME === '1'">
|
||||||
|
<van-cell title="排查日期" :value="data.hs.SCREENINGDATE" />
|
||||||
|
<van-cell title="隐患清单" :value="data.hs.LISTNAME" />
|
||||||
|
<van-cell title="治理标准要求" :value="data.hs.GOVERNSTANDARDS" />
|
||||||
|
<van-cell title="治理方法" :value="data.hs.GOVERNMETHOD" />
|
||||||
|
<van-cell title="经费和物资的落实" :value="data.hs.EXPENDITURE" />
|
||||||
|
<van-cell title="负责治理人员" :value="data.hs.PRINCIPAL" />
|
||||||
|
<van-cell title="工时安排" :value="data.hs.PROGRAMMING" />
|
||||||
|
<van-cell title="时限要求" :value="data.hs.TIMELIMITFOR" />
|
||||||
|
<van-cell title="工作要求" :value="data.hs.JOBREQUIREMENT" />
|
||||||
|
<van-cell title="其他事项" :value="data.hs.OTHERBUSINESS" />
|
||||||
|
<van-cell title="方案图片">
|
||||||
|
<template #label>
|
||||||
|
<img
|
||||||
|
v-for="(item, index) in data.sImgs"
|
||||||
|
:key="item"
|
||||||
|
:src="item"
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
class="ml-10"
|
||||||
|
@click="fnImagePreview(data.sImgs, index)"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
</template>
|
||||||
|
</template>
|
||||||
|
<template
|
||||||
|
v-if="data.info.STATE >= 4 && data.info.RECTIFICATIONTYPE === '2'"
|
||||||
|
>
|
||||||
|
<template v-for="(item, index) in data.checkList" :key="index">
|
||||||
|
<van-cell title="验收描述" :value="item.CHECKDESCR" />
|
||||||
|
<van-cell title="是否合格">
|
||||||
|
<template #value>
|
||||||
|
<span v-if="item.STATUS === '1'"> 是 </span>
|
||||||
|
<span v-else-if="item.STATUS === '0'"> 否 </span>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="验收部门" :value="item.CHECKDEPTNAME" />
|
||||||
|
<van-cell title="验收人" :value="item.CHECKORNAME" />
|
||||||
|
<van-cell title="验收时间" :value="item.CHECK_TIME" />
|
||||||
|
<van-cell title="验收图片">
|
||||||
|
<template #label>
|
||||||
|
<img
|
||||||
|
v-for="(item1, index1) in item.cImgs"
|
||||||
|
:key="index1"
|
||||||
|
:src="item1"
|
||||||
|
alt=""
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
class="ml-10"
|
||||||
|
@click="fnImagePreview(item.cImgs, index1)"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
</template>
|
||||||
|
</template>
|
||||||
|
</van-cell-group>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { reactive } from "vue";
|
||||||
|
import { showImagePreview } from "vant";
|
||||||
|
import "vant/es/image-preview/style";
|
||||||
|
import { geHiddenDangerView } from "@/request/mobile.js";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
import { getFileSuffix } from "@/assets/js/utils.js";
|
||||||
|
|
||||||
|
const route = useRoute();
|
||||||
|
const { HIDDEN_ID } = route.query;
|
||||||
|
const FILE_URL = import.meta.env.VITE_FILE_URL;
|
||||||
|
const data = reactive({
|
||||||
|
info: {},
|
||||||
|
hImgs: [],
|
||||||
|
rImgs: [],
|
||||||
|
pImgs: [],
|
||||||
|
sImgs: [],
|
||||||
|
});
|
||||||
|
const fnGetData = async () => {
|
||||||
|
const resData = await geHiddenDangerView({
|
||||||
|
HIDDEN_ID,
|
||||||
|
});
|
||||||
|
data.info = resData.pd;
|
||||||
|
data.hs = resData.hs;
|
||||||
|
data.checkList = resData.checkList;
|
||||||
|
for (let i = 0; i < resData.hImgs.length; i++) {
|
||||||
|
if (getFileSuffix(resData.hImgs[i].FILEPATH) !== "mp4") {
|
||||||
|
data.hImgs.push(FILE_URL + resData.hImgs[i].FILEPATH);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (let i = 0; i < resData.rImgs.length; i++) {
|
||||||
|
data.rImgs.push(FILE_URL + resData.rImgs[i].FILEPATH);
|
||||||
|
}
|
||||||
|
for (let i = 0; i < resData.sImgs.length; i++) {
|
||||||
|
data.sImgs.push(FILE_URL + resData.sImgs[i].FILEPATH);
|
||||||
|
}
|
||||||
|
for (let i = 0; i < resData.pImgs.length; i++) {
|
||||||
|
data.pImgs.push(FILE_URL + resData.pImgs[i].FILEPATH);
|
||||||
|
}
|
||||||
|
for (let i = 0; i < resData.checkList.length; i++) {
|
||||||
|
for (let j = 0; j < resData.checkList[i].cImgs.length; j++) {
|
||||||
|
resData.checkList[i].cImgs[j] =
|
||||||
|
FILE_URL + resData.checkList[i].cImgs[j].FILEPATH;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
fnGetData();
|
||||||
|
const fnImagePreview = (images, startPosition) => {
|
||||||
|
showImagePreview({
|
||||||
|
images,
|
||||||
|
startPosition,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss"></style>
|
|
@ -0,0 +1,117 @@
|
||||||
|
<template>
|
||||||
|
<div class="mobile">
|
||||||
|
<van-tabs v-model:active="tabsActive" sticky>
|
||||||
|
<van-tab title="检查记录" name="1">
|
||||||
|
<van-search
|
||||||
|
v-model="searchForm.KEYWORDS"
|
||||||
|
show-action
|
||||||
|
:clearable="false"
|
||||||
|
placeholder="请输入搜索关键词"
|
||||||
|
@search="fnGetIdentifyingPartsInspectionRecordList"
|
||||||
|
>
|
||||||
|
<template #action>
|
||||||
|
<div @click="fnGetIdentifyingPartsInspectionRecordList">搜索</div>
|
||||||
|
</template>
|
||||||
|
</van-search>
|
||||||
|
<van-cell-group
|
||||||
|
v-for="(item, index) in inspectionRecordList"
|
||||||
|
:key="index"
|
||||||
|
class="mt-10"
|
||||||
|
@click="
|
||||||
|
$router.push({
|
||||||
|
path: '/mobile/identifying_parts/inspection_record',
|
||||||
|
query: {
|
||||||
|
CHECKRECORD_ID: item.CHECKRECORD_ID,
|
||||||
|
IDENTIFICATIONPARTS_ID,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<van-cell title="检查清单" :value="item.LISTMANAGERNAME" />
|
||||||
|
<van-cell title="检查时间" :value="item.CHECK_TIME" />
|
||||||
|
<van-cell title="检查人" :value="item.USERNAME" />
|
||||||
|
</van-cell-group>
|
||||||
|
</van-tab>
|
||||||
|
<van-tab title="风险分布" name="2">
|
||||||
|
<van-cell-group>
|
||||||
|
<van-cell :title="info.RISKUNITNAME" :value="info.PARTSNAME" />
|
||||||
|
<van-cell title="存在风险">
|
||||||
|
<template #label>
|
||||||
|
<div v-for="(item, index) in infoList" :key="index" class="mt-10">
|
||||||
|
{{ index + 1 }}. {{ item.RISK_DESCR }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="主要管控措施">
|
||||||
|
<template #label>
|
||||||
|
<div v-for="(item, index) in infoList" :key="index" class="mt-10">
|
||||||
|
{{ index + 1 }}. {{ item.MEASURES }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="管控部门" :value="info.DEPTNAME" />
|
||||||
|
<van-cell title="事故类型" :label="info.ACCIDENTS_NAME" />
|
||||||
|
<van-cell title="风险等级">
|
||||||
|
<template #value>
|
||||||
|
<span v-if="LEVELID === 'levelD'" class="text-blue">
|
||||||
|
低风险/D级
|
||||||
|
</span>
|
||||||
|
<span v-else-if="LEVELID === 'levelC'" class="text-yellow">
|
||||||
|
一般风险/C级
|
||||||
|
</span>
|
||||||
|
<span v-else-if="LEVELID === 'levelB'" class="text-orange">
|
||||||
|
较大风险/B级
|
||||||
|
</span>
|
||||||
|
<span v-else-if="LEVELID === 'levelA'" class="text-red">
|
||||||
|
重大风险/A级
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
</van-cell-group>
|
||||||
|
</van-tab>
|
||||||
|
</van-tabs>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref } from "vue";
|
||||||
|
import {
|
||||||
|
getIdentifyingPartsInfo,
|
||||||
|
getIdentifyingPartsInfoList,
|
||||||
|
getIdentifyingPartsInspectionRecordList,
|
||||||
|
} from "@/request/mobile.js";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
import useListData from "@/assets/js/useListData.js";
|
||||||
|
|
||||||
|
const route = useRoute();
|
||||||
|
const { IDENTIFICATIONPARTS_ID, LEVELID } = route.query;
|
||||||
|
const tabsActive = ref("1");
|
||||||
|
const info = ref({});
|
||||||
|
const { list: infoList } = useListData(getIdentifyingPartsInfoList, {
|
||||||
|
otherParams: { CHECK_IDENTIFICATION_ID: IDENTIFICATIONPARTS_ID },
|
||||||
|
usePagination: false,
|
||||||
|
});
|
||||||
|
const {
|
||||||
|
list: inspectionRecordList,
|
||||||
|
searchForm,
|
||||||
|
fnGetData: fnGetIdentifyingPartsInspectionRecordList,
|
||||||
|
} = useListData(getIdentifyingPartsInspectionRecordList, {
|
||||||
|
otherParams: { IDENTIFICATIONPARTS_ID },
|
||||||
|
usePagination: false,
|
||||||
|
});
|
||||||
|
const fnGetData = async () => {
|
||||||
|
const resData = await getIdentifyingPartsInfo({
|
||||||
|
IDENTIFICATIONPARTS_ID,
|
||||||
|
});
|
||||||
|
info.value = resData.pd;
|
||||||
|
};
|
||||||
|
fnGetData();
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.mt-10 {
|
||||||
|
&:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,133 @@
|
||||||
|
<template>
|
||||||
|
<div class="mobile">
|
||||||
|
<van-cell-group v-for="(item, index) in list" :key="index" class="mt-10">
|
||||||
|
<van-cell title="存在风险" :label="item.RISK_DESCR" />
|
||||||
|
<van-cell title="检查内容">
|
||||||
|
<template #label>
|
||||||
|
{{ item.CHECK_CONTENT }}
|
||||||
|
<van-checkbox-group
|
||||||
|
:model-value="item.ISNORMAL"
|
||||||
|
direction="horizontal"
|
||||||
|
>
|
||||||
|
<van-checkbox :name="0">合格</van-checkbox>
|
||||||
|
<van-checkbox :name="1" checked-color="red"> 不合格 </van-checkbox>
|
||||||
|
<van-icon
|
||||||
|
name="info-o"
|
||||||
|
color="blue"
|
||||||
|
v-if="item.ISNORMAL.includes(1)"
|
||||||
|
@click="
|
||||||
|
$router.push({
|
||||||
|
path,
|
||||||
|
query: { HIDDEN_ID: item.HIDDEN_ID },
|
||||||
|
})
|
||||||
|
"
|
||||||
|
/>
|
||||||
|
</van-checkbox-group>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
</van-cell-group>
|
||||||
|
<div id="map_container" style="width: 100%; height: 500px" />
|
||||||
|
<van-cell-group>
|
||||||
|
<van-cell title="检查人" :value="info.USERS" />
|
||||||
|
<van-cell title="检查部位" :value="info.PARTSNAME" />
|
||||||
|
<van-cell title="检查时间" :value="info.CHECK_TIME" />
|
||||||
|
</van-cell-group>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { onBeforeUnmount, onMounted, ref } from "vue";
|
||||||
|
import {
|
||||||
|
getInspectionRecordInfo,
|
||||||
|
getInspectionRecordMapInfo,
|
||||||
|
} from "@/request/mobile.js";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
|
||||||
|
defineProps({
|
||||||
|
path: {
|
||||||
|
type: String,
|
||||||
|
default: "/mobile/identifying_parts/hidden_danger_view",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
const _50 = new URL("/src/assets/images/map/50.png", import.meta.url).href;
|
||||||
|
const _h = new URL("/src/assets/images/map/h.png", import.meta.url).href;
|
||||||
|
let mapInstance;
|
||||||
|
const route = useRoute();
|
||||||
|
const { CHECKRECORD_ID, IDENTIFICATIONPARTS_ID } = route.query;
|
||||||
|
const info = ref({});
|
||||||
|
const list = ref([]);
|
||||||
|
const fnGetData = async () => {
|
||||||
|
const resData = await getInspectionRecordInfo({
|
||||||
|
IDENTIFICATIONPARTS_ID,
|
||||||
|
CHECKRECORD_ID,
|
||||||
|
});
|
||||||
|
for (let i = 0; i < resData.varList.length; i++) {
|
||||||
|
resData.varList[i].ISNORMAL = [resData.varList[i].ISNORMAL];
|
||||||
|
}
|
||||||
|
resData.pd.PARTSNAME = resData.idData?.PARTSNAME;
|
||||||
|
info.value = resData.pd;
|
||||||
|
list.value = resData.varList;
|
||||||
|
};
|
||||||
|
const fnGetDataMap = async () => {
|
||||||
|
const resData = await getInspectionRecordMapInfo({
|
||||||
|
CHECKRECORD_ID,
|
||||||
|
loading: false,
|
||||||
|
});
|
||||||
|
fnMapInit(resData.cinfo.LONGITUDE, resData.cinfo.LATITUDE, resData);
|
||||||
|
};
|
||||||
|
const fnMapInit = (LONGITUDE, LATITUDE, resData) => {
|
||||||
|
mapInstance = new window.BMapGL.Map("map_container");
|
||||||
|
mapInstance.centerAndZoom(
|
||||||
|
new window.BMapGL.Point(
|
||||||
|
LONGITUDE || "116.3972282409668",
|
||||||
|
LATITUDE || "39.90960456049752"
|
||||||
|
),
|
||||||
|
3
|
||||||
|
);
|
||||||
|
mapInstance.enableScrollWheelZoom(true);
|
||||||
|
fnAddPoint(resData);
|
||||||
|
};
|
||||||
|
onMounted(async () => {
|
||||||
|
await fnGetData();
|
||||||
|
await fnGetDataMap();
|
||||||
|
});
|
||||||
|
const fnAddPoint = (resData) => {
|
||||||
|
for (let i = 0; i < resData.varList.length; i++) {
|
||||||
|
const myIcon = new window.BMapGL.Icon(_50, new window.BMapGL.Size(23, 25));
|
||||||
|
const pt = new window.BMapGL.Point(
|
||||||
|
resData.varList[i].LONGITUDE,
|
||||||
|
resData.varList[i].LATITUDE
|
||||||
|
);
|
||||||
|
const marker = new window.BMapGL.Marker(pt, {
|
||||||
|
icon: myIcon,
|
||||||
|
});
|
||||||
|
mapInstance.addOverlay(marker);
|
||||||
|
}
|
||||||
|
for (let i = 0; i < resData.hdList.length; i++) {
|
||||||
|
const myIcon = new window.BMapGL.Icon(_h, new window.BMapGL.Size(23, 25));
|
||||||
|
const pt = new window.BMapGL.Point(
|
||||||
|
resData.hdList[i].LONGITUDE,
|
||||||
|
resData.hdList[i].LATITUDE
|
||||||
|
);
|
||||||
|
const marker = new window.BMapGL.Marker(pt, {
|
||||||
|
icon: myIcon,
|
||||||
|
});
|
||||||
|
mapInstance.addOverlay(marker);
|
||||||
|
}
|
||||||
|
const myIcon4 = new window.BMapGL.Icon(_50, new window.BMapGL.Size(23, 25));
|
||||||
|
const pt4 = new window.BMapGL.Point(
|
||||||
|
resData.checkrecord.LONGITUDE,
|
||||||
|
resData.checkrecord.LATITUDE
|
||||||
|
);
|
||||||
|
const marker4 = new window.BMapGL.Marker(pt4, {
|
||||||
|
icon: myIcon4,
|
||||||
|
});
|
||||||
|
mapInstance.addOverlay(marker4);
|
||||||
|
};
|
||||||
|
onBeforeUnmount(() => {
|
||||||
|
mapInstance && mapInstance.destroy();
|
||||||
|
mapInstance = null;
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped></style>
|
|
@ -0,0 +1,246 @@
|
||||||
|
<template>
|
||||||
|
<div class="mobile">
|
||||||
|
<van-collapse v-model="activeName" accordion>
|
||||||
|
<van-collapse-item title="基本信息" name="1">
|
||||||
|
<van-cell-group>
|
||||||
|
<van-cell title="企业名称" :value="info.CORP_NAME" />
|
||||||
|
<van-cell title="邮政编码" :value="info.POSTAL_CODE" />
|
||||||
|
<van-cell title="统一社会信用代码" :value="info.CODE" />
|
||||||
|
<van-cell title="属地" :value="info.COMPANY_AREA" />
|
||||||
|
<van-cell title="经济类型" :value="info.ECO_TYPE_NAME" />
|
||||||
|
<van-cell title="所属行业" :value="info.CORP_TYPE_NAME" />
|
||||||
|
<van-cell title="企业状态" :value="info.CORP_STATE_NAME" />
|
||||||
|
<van-cell title="经度" :value="info.LONGITUDE" />
|
||||||
|
<van-cell title="纬度" :value="info.LATITUDE" />
|
||||||
|
<van-cell title="主要负责人" :value="info.CONTACTS" />
|
||||||
|
<van-cell title="主要负责人电话" :value="info.CONTACTS_PHONE" />
|
||||||
|
<van-cell title="法定代表人" :value="info.LR_NAME" />
|
||||||
|
<van-cell title="法人手机号" :value="info.LR_PHONE" />
|
||||||
|
<van-cell title="占地面积(㎡)" :value="info.AREA_COVERED" />
|
||||||
|
<van-cell title="职工人数(人)" :value="info.EMPLOYEES" />
|
||||||
|
<van-cell title="成立时间" :value="info.CREATE_DATE" />
|
||||||
|
<van-cell title="注册资金(万元)" :value="info.REGCAPITAL" />
|
||||||
|
<van-cell title="资产总额(万元)" :value="info.TOTALASSETS" />
|
||||||
|
<van-cell title="隶属关系" :value="info.SUBORDINATIONNAME" />
|
||||||
|
<van-cell title="企业类型">
|
||||||
|
<template>
|
||||||
|
{{ info.CORP_OF_TYPE_NAME ? info.CORP_OF_TYPE_NAME : "" }}
|
||||||
|
{{ info.CORP_OF_TYPE_NAME && info.CORP_OF_TYPE_NAME2 ? "/" : "" }}
|
||||||
|
{{ info.CORP_OF_TYPE_NAME2 ? info.CORP_OF_TYPE_NAME2 : "" }}
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell
|
||||||
|
title="市行业监管部门"
|
||||||
|
:value="info.INDUSTRY_DEPARTMENTName"
|
||||||
|
/>
|
||||||
|
<van-cell title="规模" :value="info.SCALE_NAME" />
|
||||||
|
<van-cell title="是否规模以上">
|
||||||
|
<template>
|
||||||
|
{{ info.SCALE_TYPE === "0" ? "否" : "" }}
|
||||||
|
{{ info.SCALE_TYPE === "1" ? "是" : "" }}
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="培训行业类型" :value="info.TRAINTYPE_NAME" />
|
||||||
|
<van-cell title="企业可新建用户数量" :value="info.USERS_NUM" />
|
||||||
|
<van-cell title="单位经营地址" :value="info.ADDRESS_BUSINESS" />
|
||||||
|
<van-cell title="四色图" v-if="info.FOURTYPE === '1'">
|
||||||
|
<template #label>
|
||||||
|
<van-image
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
v-for="(item, index) in four_images"
|
||||||
|
:src="item"
|
||||||
|
:key="item"
|
||||||
|
@click="fnImagePreview(four_images, index)"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="营业执照">
|
||||||
|
<template #label>
|
||||||
|
<van-image
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
v-for="(item, index) in bus_images"
|
||||||
|
:src="item"
|
||||||
|
:key="item"
|
||||||
|
@click="fnImagePreview(bus_images, index)"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
</van-cell-group>
|
||||||
|
</van-collapse-item>
|
||||||
|
<van-collapse-item title="安全负责人信息" name="2">
|
||||||
|
<van-cell-group inset>
|
||||||
|
<van-cell title="姓名" :value="info.SAFETY_NAME" />
|
||||||
|
<van-cell title="职务" :value="info.SAFETY_POST" />
|
||||||
|
<van-cell title="单位电话" :value="info.SAFETY_NUMBER" />
|
||||||
|
<van-cell title="手机号码" :value="info.SAFETY_PHONE" />
|
||||||
|
</van-cell-group>
|
||||||
|
</van-collapse-item>
|
||||||
|
<van-collapse-item title="企业相关属性" name="4">
|
||||||
|
<van-cell-group inset>
|
||||||
|
<van-cell title="有无职业卫生信息">
|
||||||
|
{{
|
||||||
|
info.WHETHER_HYGIENE === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_HYGIENE === 0
|
||||||
|
? "无"
|
||||||
|
: "有"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="有无重大危险源">
|
||||||
|
{{
|
||||||
|
info.WHETHER_HAZARDS === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_HAZARDS === 0
|
||||||
|
? "无"
|
||||||
|
: "有"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否有稀缺大型应急物资">
|
||||||
|
{{
|
||||||
|
info.WHETHER_SCARCE === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_SCARCE === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否涉及危化品">
|
||||||
|
{{
|
||||||
|
info.WHETHER_CHEMICALS === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_CHEMICALS === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="有无特种设备">
|
||||||
|
{{
|
||||||
|
info.WHETHER_SPECIALEQUIPMENT === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_SPECIALEQUIPMENT === 0
|
||||||
|
? "无"
|
||||||
|
: "有"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="有无特种作业人员">
|
||||||
|
{{
|
||||||
|
info.WHETHER_SPECIALPEOPLE === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_SPECIALPEOPLE === 0
|
||||||
|
? "无"
|
||||||
|
: "有"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否涉及煤气">
|
||||||
|
{{
|
||||||
|
info.WHETHER_COALGAS === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_COALGAS === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否属于消防重点单位">
|
||||||
|
{{
|
||||||
|
info.WHETHER_FIRE === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_FIRE === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否在受限空间作业">
|
||||||
|
{{
|
||||||
|
info.WHETHER_CONFINED === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_CONFINED === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否存在涉爆粉尘作业">
|
||||||
|
{{
|
||||||
|
info.WHETHER_POWDER === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_POWDER === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否涉及防雷防静电">
|
||||||
|
{{
|
||||||
|
info.WHETHER_LIGHTNING === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_LIGHTNING === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否持有放射源">
|
||||||
|
{{
|
||||||
|
info.WHETHER_ACTINOGEN === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_ACTINOGEN === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否涉及液氨制冷">
|
||||||
|
{{
|
||||||
|
info.WHETHER_LIQUIDAMMONIA === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_LIQUIDAMMONIA === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="是否涉及危化品管道">
|
||||||
|
{{
|
||||||
|
info.WHETHER_PIPELINE === undefined
|
||||||
|
? ""
|
||||||
|
: info.WHETHER_PIPELINE === 0
|
||||||
|
? "否"
|
||||||
|
: "是"
|
||||||
|
}}
|
||||||
|
</van-cell>
|
||||||
|
</van-cell-group>
|
||||||
|
</van-collapse-item>
|
||||||
|
</van-collapse>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref } from "vue";
|
||||||
|
import { getInformationView } from "@/request/mobile.js";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
import { showImagePreview } from "vant";
|
||||||
|
|
||||||
|
const route = useRoute();
|
||||||
|
const { CORPINFO_ID } = route.query;
|
||||||
|
const VITE_FILE_URL = import.meta.env.VITE_FILE_URL;
|
||||||
|
const activeName = ref("1");
|
||||||
|
const info = ref({});
|
||||||
|
const bus_images = ref([]);
|
||||||
|
const four_images = ref([]);
|
||||||
|
const fnGetData = async () => {
|
||||||
|
const resData = await getInformationView({ CORPINFO_ID });
|
||||||
|
for (let i = 0; i < resData.fourImgs.length; i++) {
|
||||||
|
four_images.value.push(VITE_FILE_URL + resData.fourImgs[i].FILEPATH);
|
||||||
|
}
|
||||||
|
for (let i = 0; i < resData.busImgs.length; i++) {
|
||||||
|
bus_images.value.push(VITE_FILE_URL + resData.busImgs[i].FILEPATH);
|
||||||
|
}
|
||||||
|
info.value = resData.pd;
|
||||||
|
};
|
||||||
|
fnGetData();
|
||||||
|
const fnImagePreview = (images, startPosition) => {
|
||||||
|
showImagePreview({
|
||||||
|
images,
|
||||||
|
startPosition,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss"></style>
|
|
@ -0,0 +1,53 @@
|
||||||
|
<template>
|
||||||
|
<div class="mobile">
|
||||||
|
<van-search
|
||||||
|
v-model="searchForm.KEYWORDS"
|
||||||
|
show-action
|
||||||
|
:clearable="false"
|
||||||
|
placeholder="请输入搜索关键词"
|
||||||
|
@search="fnGetData"
|
||||||
|
>
|
||||||
|
<template #action>
|
||||||
|
<div @click="fnGetData">搜索</div>
|
||||||
|
</template>
|
||||||
|
</van-search>
|
||||||
|
<van-cell-group
|
||||||
|
v-for="(item, index) in list"
|
||||||
|
:key="index"
|
||||||
|
class="mt-10"
|
||||||
|
@click="
|
||||||
|
$router.push({
|
||||||
|
path: '/mobile/risk_point/inspection_record',
|
||||||
|
query: {
|
||||||
|
CHECKRECORD_ID: item.CHECKRECORD_ID,
|
||||||
|
IDENTIFICATIONPARTS_ID,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<van-cell title="检查清单" :value="item.LISTMANAGERNAME" />
|
||||||
|
<van-cell title="检查时间" :value="item.CHECK_TIME" />
|
||||||
|
<van-cell title="检查人" :value="item.USERNAME" />
|
||||||
|
</van-cell-group>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { getRiskPointCheckList } from "@/request/mobile.js";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
import useListData from "@/assets/js/useListData.js";
|
||||||
|
|
||||||
|
const route = useRoute();
|
||||||
|
const { IDENTIFICATIONPARTS_ID } = route.query;
|
||||||
|
const { list, searchForm, fnGetData } = useListData(getRiskPointCheckList, {
|
||||||
|
otherParams: { IDENTIFICATIONPARTS_ID },
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.mt-10 {
|
||||||
|
&:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,9 @@
|
||||||
|
<template>
|
||||||
|
<hidden-danger-view />
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import HiddenDangerView from "../identifying_parts/hidden_danger_view.vue";
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped></style>
|
|
@ -0,0 +1,74 @@
|
||||||
|
<template>
|
||||||
|
<div class="mobile">
|
||||||
|
<van-search
|
||||||
|
v-model="searchForm.KEYWORDS"
|
||||||
|
show-action
|
||||||
|
:clearable="false"
|
||||||
|
placeholder="请输入搜索关键词"
|
||||||
|
@search="fnGetData"
|
||||||
|
>
|
||||||
|
<template #action>
|
||||||
|
<div @click="fnGetData">搜索</div>
|
||||||
|
</template>
|
||||||
|
</van-search>
|
||||||
|
<van-cell-group
|
||||||
|
v-for="(item, index) in list"
|
||||||
|
:key="index"
|
||||||
|
class="mt-10"
|
||||||
|
@click="
|
||||||
|
$router.push({
|
||||||
|
path: '/mobile/risk_point/checklist',
|
||||||
|
query: {
|
||||||
|
IDENTIFICATIONPARTS_ID: item.IDENTIFICATIONPARTS_ID,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<van-cell title="部位名称" :value="item.PARTSNAME" />
|
||||||
|
<van-cell title="风险等级">
|
||||||
|
<template #value>
|
||||||
|
<span v-if="item.LEVELID === 'levelD'" class="text-blue">
|
||||||
|
低风险/D级
|
||||||
|
</span>
|
||||||
|
<span v-else-if="item.LEVELID === 'levelC'" class="text-yellow">
|
||||||
|
一般风险/C级
|
||||||
|
</span>
|
||||||
|
<span v-else-if="item.LEVELID === 'levelB'" class="text-orange">
|
||||||
|
较大风险/B级
|
||||||
|
</span>
|
||||||
|
<span v-else-if="item.LEVELID === 'levelA'" class="text-red">
|
||||||
|
重大风险/A级
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
</van-cell>
|
||||||
|
<van-cell title="风险点(单元)" :value="item.RISKUNITNAME" />
|
||||||
|
<van-cell title="管控部门" :value="item.DEPT_NAME" />
|
||||||
|
</van-cell-group>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { getRiskPointList } from "@/request/mobile.js";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
import useListData from "@/assets/js/useListData.js";
|
||||||
|
|
||||||
|
const route = useRoute();
|
||||||
|
const { RISKUNIT_ID } = route.query;
|
||||||
|
const { list, fnGetData, searchForm } = useListData(getRiskPointList, {
|
||||||
|
otherParams: {
|
||||||
|
RISK_UNIT_ID: RISKUNIT_ID,
|
||||||
|
IS_APP: 1,
|
||||||
|
showCount: 1000,
|
||||||
|
currentPage: 1,
|
||||||
|
},
|
||||||
|
usePagination: false,
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.mt-10 {
|
||||||
|
&:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,9 @@
|
||||||
|
<template>
|
||||||
|
<inspection-record path="/mobile/risk_point/hidden_danger_view" />
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import InspectionRecord from "../identifying_parts/inspection_record.vue";
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped></style>
|
|
@ -0,0 +1,19 @@
|
||||||
|
import { post } from "@/request/axios.js";
|
||||||
|
|
||||||
|
export const getInformationView = (params) =>
|
||||||
|
post("/app/corpinfo/goEdit", params); // 企业信息
|
||||||
|
export const getIdentifyingPartsInfo = (params) =>
|
||||||
|
post("/app/identificationparts/goEdit", params); // 辨识部位详情
|
||||||
|
export const getIdentifyingPartsInspectionRecordList = (params) =>
|
||||||
|
post("/app/checkrecord/recordByIde", params); // 辨识部位检查记录列表
|
||||||
|
export const getIdentifyingPartsInfoList = (params) =>
|
||||||
|
post("/app/riskpoint/getForIdentification", params); // 辨识部位存在风险、主要管控措施列表
|
||||||
|
export const getInspectionRecordInfo = (params) =>
|
||||||
|
post("/app/checkrecord/goEditWeui", params); // 检查记录详情
|
||||||
|
export const getInspectionRecordMapInfo = (params) =>
|
||||||
|
post("/app/checkrecord/goMapWeui", params); // 检查记录地图
|
||||||
|
export const geHiddenDangerView = (params) =>
|
||||||
|
post("/app/hidden/goEditWeui", params); // 隐患详情
|
||||||
|
export const getRiskPointList = (params) => post("/app/riskpoint/list", params); // 风险点单元列表
|
||||||
|
export const getRiskPointCheckList = (params) =>
|
||||||
|
post("/app/checkrecord/recordByIde", params); // 风险点单元检查清单列表
|
|
@ -1,6 +1,6 @@
|
||||||
import { createRouter, createWebHashHistory } from "vue-router";
|
import { createRouter, createWebHashHistory } from "vue-router";
|
||||||
import layout from "../layout/index.vue";
|
import layout from "../layout/index.vue";
|
||||||
// import children from "../components/children/index.vue";
|
import children from "../components/children/index.vue";
|
||||||
|
|
||||||
const routes = [
|
const routes = [
|
||||||
{
|
{
|
||||||
|
@ -35,6 +35,61 @@ const routes = [
|
||||||
meta: { title: "BI", isBreadcrumb: false, isMenu: false },
|
meta: { title: "BI", isBreadcrumb: false, isMenu: false },
|
||||||
component: () => import("@/views/BI/index"),
|
component: () => import("@/views/BI/index"),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: "/mobile",
|
||||||
|
meta: { isBreadcrumb: false, isMenu: false, isLogin: false },
|
||||||
|
component: children,
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "information",
|
||||||
|
component: () => import("@/mobile/information/index"),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "identifying_parts",
|
||||||
|
component: children,
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "index",
|
||||||
|
component: () => import("@/mobile/identifying_parts/index.vue"),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "inspection_record",
|
||||||
|
component: () =>
|
||||||
|
import("@/mobile/identifying_parts/inspection_record.vue"),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "hidden_danger_view",
|
||||||
|
component: () =>
|
||||||
|
import("@/mobile/identifying_parts/hidden_danger_view.vue"),
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "risk_point",
|
||||||
|
component: children,
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "index",
|
||||||
|
component: () => import("@/mobile/risk_point/index.vue"),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "checklist",
|
||||||
|
component: () => import("@/mobile/risk_point/checklist.vue"),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "inspection_record",
|
||||||
|
component: () =>
|
||||||
|
import("@/mobile/risk_point/inspection_record.vue"),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "hidden_danger_view",
|
||||||
|
component: () =>
|
||||||
|
import("@/mobile/risk_point/hidden_danger_view.vue"),
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: "/404",
|
path: "/404",
|
||||||
name: "/404",
|
name: "/404",
|
||||||
|
|
|
@ -4,8 +4,13 @@
|
||||||
<div class="tc mt-20">
|
<div class="tc mt-20">
|
||||||
<h1>{{ info.CORP_NAME }}</h1>
|
<h1>{{ info.CORP_NAME }}</h1>
|
||||||
</div>
|
</div>
|
||||||
<!-- TODO-->
|
<layout-qr-code
|
||||||
<layout-qr-code :src="info.CORPINFO_ID" />
|
:src="
|
||||||
|
locationOrigin +
|
||||||
|
'/#/mobile/information?CORPINFO_ID=' +
|
||||||
|
info.CORPINFO_ID
|
||||||
|
"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<el-button @click="visible = false">关闭</el-button>
|
<el-button @click="visible = false">关闭</el-button>
|
||||||
|
@ -32,6 +37,7 @@ const props = defineProps({
|
||||||
});
|
});
|
||||||
const emits = defineEmits(["update:visible"]);
|
const emits = defineEmits(["update:visible"]);
|
||||||
const visible = useVModel(props, "visible", emits);
|
const visible = useVModel(props, "visible", emits);
|
||||||
|
const locationOrigin = window.location.origin;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss"></style>
|
<style scoped lang="scss"></style>
|
||||||
|
|
|
@ -18,8 +18,15 @@
|
||||||
{{ item.DEPT_NAME }}
|
{{ item.DEPT_NAME }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<!-- TODO-->
|
<layout-qr-code
|
||||||
<layout-qr-code :src="item.IDENTIFICATIONPARTS_ID + item.LEVELID" />
|
:src="
|
||||||
|
locationOrigin +
|
||||||
|
'/#/mobile/identifying_parts/index?IDENTIFICATIONPARTS_ID=' +
|
||||||
|
item.IDENTIFICATIONPARTS_ID +
|
||||||
|
'&LEVELID=' +
|
||||||
|
item.LEVELID
|
||||||
|
"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
|
@ -47,6 +54,7 @@ const props = defineProps({
|
||||||
});
|
});
|
||||||
const emits = defineEmits(["update:visible"]);
|
const emits = defineEmits(["update:visible"]);
|
||||||
const visible = useVModel(props, "visible", emits);
|
const visible = useVModel(props, "visible", emits);
|
||||||
|
const locationOrigin = window.location.origin;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss"></style>
|
<style scoped lang="scss"></style>
|
||||||
|
|
|
@ -17,8 +17,13 @@
|
||||||
{{ item.HEADMAN }}
|
{{ item.HEADMAN }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<!-- TODO-->
|
<layout-qr-code
|
||||||
<layout-qr-code :src="item.RISKUNIT_ID" />
|
:src="
|
||||||
|
locationOrigin +
|
||||||
|
'/#/mobile/risk_point/index?RISKUNIT_ID=' +
|
||||||
|
item.RISKUNIT_ID
|
||||||
|
"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
|
@ -46,6 +51,7 @@ const props = defineProps({
|
||||||
});
|
});
|
||||||
const emits = defineEmits(["update:visible"]);
|
const emits = defineEmits(["update:visible"]);
|
||||||
const visible = useVModel(props, "visible", emits);
|
const visible = useVModel(props, "visible", emits);
|
||||||
|
const locationOrigin = window.location.origin;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss"></style>
|
<style scoped lang="scss"></style>
|
||||||
|
|
Loading…
Reference in New Issue