forked from integrated_whb/integrated_whb_vue
Merge remote-tracking branch 'origin/dev' into dev
commit
dd91ce3a28
|
@ -28,19 +28,19 @@
|
||||||
</template>
|
</template>
|
||||||
<template v-if="data.info.SOURCE === '2' && listType === '2'">
|
<template v-if="data.info.SOURCE === '2' && listType === '2'">
|
||||||
<el-descriptions-item label="检查类别">
|
<el-descriptions-item label="检查类别">
|
||||||
{{ data.info.BR_CHECK_CATEGORY_NAME }}
|
{{ data.info.CHECK_CATEGORY_NAME }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="检查项目">
|
<el-descriptions-item label="检查项目">
|
||||||
{{ data.info.BR_CHECK_ITEM_NAME }}
|
{{ data.info.CHECK_ITEM_NAME }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="检查内容">
|
<el-descriptions-item label="检查内容">
|
||||||
{{ data.info.BR_CHECK_CONTENT }}
|
{{ data.info.CHECK_CONTENT }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="检查标准">
|
<el-descriptions-item label="检查标准">
|
||||||
{{ data.info.BR_CHECK_STANDARD }}
|
{{ data.info.CHECK_STANDARD }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="参考依据">
|
<el-descriptions-item label="参考依据">
|
||||||
{{ data.info.BR_REFERENCE_BASIS }}
|
{{ data.info.REFERENCE_BASIS }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</template>
|
</template>
|
||||||
<el-descriptions-item label="隐患级别">
|
<el-descriptions-item label="隐患级别">
|
||||||
|
|
|
@ -86,6 +86,15 @@
|
||||||
>
|
>
|
||||||
添加监控
|
添加监控
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-if="entrance === 'archive' && row.NEXT_STEP_ID === 99"
|
||||||
|
type="primary"
|
||||||
|
text
|
||||||
|
link
|
||||||
|
@click="fnPreviewVideo(row.VIDEO_PATH)"
|
||||||
|
>
|
||||||
|
查看验收视频
|
||||||
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
text
|
text
|
||||||
|
@ -119,6 +128,11 @@
|
||||||
v-model:visible="data.flowChartDialog.visible"
|
v-model:visible="data.flowChartDialog.visible"
|
||||||
:flow-list="data.flowChartDialog.flowList"
|
:flow-list="data.flowChartDialog.flowList"
|
||||||
/>
|
/>
|
||||||
|
<layout-video
|
||||||
|
:src="data.videoDialog.src"
|
||||||
|
v-model:visible="data.videoDialog.visible"
|
||||||
|
append-to-body
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -133,6 +147,7 @@ import {
|
||||||
getTaskSetps,
|
getTaskSetps,
|
||||||
getConfinedSpaceList,
|
getConfinedSpaceList,
|
||||||
} from "@/request/eight_work.js";
|
} from "@/request/eight_work.js";
|
||||||
|
import LayoutVideo from "@/components/video/index.vue";
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
entrance: {
|
entrance: {
|
||||||
|
@ -153,6 +168,11 @@ const getStepList = async () => {
|
||||||
};
|
};
|
||||||
getStepList();
|
getStepList();
|
||||||
|
|
||||||
|
const fnPreviewVideo = (VIDEO_PATH) => {
|
||||||
|
data.videoDialog.visible = true;
|
||||||
|
data.videoDialog.src = VIDEO_PATH;
|
||||||
|
};
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
||||||
useListData(getConfinedSpaceList, {
|
useListData(getConfinedSpaceList, {
|
||||||
|
@ -163,6 +183,10 @@ const data = reactive({
|
||||||
visible: false,
|
visible: false,
|
||||||
flowList: {},
|
flowList: {},
|
||||||
},
|
},
|
||||||
|
videoDialog: {
|
||||||
|
visible: false,
|
||||||
|
src: "",
|
||||||
|
},
|
||||||
});
|
});
|
||||||
const fnFlowChart = async (CONFINEDSPACE_ID) => {
|
const fnFlowChart = async (CONFINEDSPACE_ID) => {
|
||||||
const { flowList } = await getConfinedSpaceFlow({ CONFINEDSPACE_ID });
|
const { flowList } = await getConfinedSpaceFlow({ CONFINEDSPACE_ID });
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="10" style="border: none">
|
<td colspan="11" style="border: none">
|
||||||
<el-divider content-position="left">
|
<el-divider content-position="left">
|
||||||
受限空间安全作业票
|
受限空间安全作业票
|
||||||
</el-divider>
|
</el-divider>
|
||||||
|
@ -15,32 +15,32 @@
|
||||||
<td class="title">作业申请单位</td>
|
<td class="title">作业申请单位</td>
|
||||||
<td colspan="5">{{ data.info.APPLY_DEPARTMENT_NAME }}</td>
|
<td colspan="5">{{ data.info.APPLY_DEPARTMENT_NAME }}</td>
|
||||||
<td class="title">作业申请时间</td>
|
<td class="title">作业申请时间</td>
|
||||||
<td colspan="3">{{ data.info.CREATTIME }}</td>
|
<td colspan="4">{{ data.info.CREATTIME }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="title">受限空间名称</td>
|
<td class="title">受限空间名称</td>
|
||||||
<td colspan="5">{{ data.info.LIMITSPACE_NAME }}</td>
|
<td colspan="5">{{ data.info.LIMITSPACE_NAME }}</td>
|
||||||
<td class="title">受限空间内原有介质名称</td>
|
<td class="title">受限空间内原有介质名称</td>
|
||||||
<td colspan="3">{{ data.info.MEDIUM_NAME }}</td>
|
<td colspan="4">{{ data.info.MEDIUM_NAME }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="title">作业内容</td>
|
<td class="title">作业内容</td>
|
||||||
<td colspan="9">{{ data.info.WORK_CONTENT }}</td>
|
<td colspan="10">{{ data.info.WORK_CONTENT }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="title">作业单位</td>
|
<td class="title">作业单位</td>
|
||||||
<td colspan="5">{{ data.info.CONFIRM_DEPARTMENT_NAME }}</td>
|
<td colspan="5">{{ data.info.CONFIRM_DEPARTMENT_NAME }}</td>
|
||||||
<td class="title">作业负责人</td>
|
<td class="title">作业负责人</td>
|
||||||
<td colspan="3">{{ data.info.CONFIRM_USER_NAME }}</td>
|
<td colspan="4">{{ data.info.CONFIRM_USER_NAME }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="title">关联的其他特殊作业及安全作业票编号</td>
|
<td class="title">关联的其他特殊作业及安全作业票编号</td>
|
||||||
<td colspan="9">{{ data.info.SPECIAL_WORK }}</td>
|
<td colspan="10">{{ data.info.SPECIAL_WORK }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="title">风险辨识结果</td>
|
<td class="title">风险辨识结果</td>
|
||||||
<td colspan="9">{{ data.info.RISK_IDENTIFICATION }}</td>
|
<td colspan="10">{{ data.info.RISK_IDENTIFICATION }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td :rowspan="3 + data.gasList.length" class="title">气体分析</td>
|
<td :rowspan="3 + data.gasList.length" class="title">气体分析</td>
|
||||||
|
@ -50,6 +50,7 @@
|
||||||
<td class="title" rowspan="2">氧气含量</td>
|
<td class="title" rowspan="2">氧气含量</td>
|
||||||
<td class="title" rowspan="3">取样分析时间</td>
|
<td class="title" rowspan="3">取样分析时间</td>
|
||||||
<td class="title" rowspan="3">分析部位</td>
|
<td class="title" rowspan="3">分析部位</td>
|
||||||
|
<td class="title" rowspan="3">分析地点</td>
|
||||||
<td class="title" rowspan="3">分析人</td>
|
<td class="title" rowspan="3">分析人</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -92,17 +93,18 @@
|
||||||
</td>
|
</td>
|
||||||
<td>{{ item.OXYGEN_CONTENT }}</td>
|
<td>{{ item.OXYGEN_CONTENT }}</td>
|
||||||
<td>{{ item.ANALYZE_TIME }}</td>
|
<td>{{ item.ANALYZE_TIME }}</td>
|
||||||
|
<td>{{ item.ANALYZE_PART }}</td>
|
||||||
<td>{{ item.ANALYZE_PLACE }}</td>
|
<td>{{ item.ANALYZE_PLACE }}</td>
|
||||||
<td>{{ item.ANALYZE_USER }}</td>
|
<td>{{ item.ANALYZE_USER }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="title">作业实施时间</td>
|
<td class="title">作业实施时间</td>
|
||||||
<td colspan="9">
|
<td colspan="10">
|
||||||
{{ data.info.WORK_START_DATE }}至{{ data.info.WORK_END_DATE }}止
|
{{ data.info.WORK_START_DATE }}至{{ data.info.WORK_END_DATE }}止
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="10">
|
<td colspan="11">
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="width: 80px">序号</td>
|
<td style="width: 80px">序号</td>
|
||||||
|
@ -168,7 +170,7 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr v-if="data.signs.GUARDIAN">
|
<tr v-if="data.signs.GUARDIAN">
|
||||||
<td colspan="10">
|
<td colspan="11">
|
||||||
<div>监护人:</div>
|
<div>监护人:</div>
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in data.signs.GUARDIAN[0].SIGN_TIME"
|
v-for="(item, index) in data.signs.GUARDIAN[0].SIGN_TIME"
|
||||||
|
@ -188,7 +190,7 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr v-if="data.signs.CONFESS">
|
<tr v-if="data.signs.CONFESS">
|
||||||
<td colspan="10">
|
<td colspan="11">
|
||||||
<div>
|
<div>
|
||||||
安全交底人:
|
安全交底人:
|
||||||
<div v-if="data.signs.CONFESS[0].IMG_PATH">
|
<div v-if="data.signs.CONFESS[0].IMG_PATH">
|
||||||
|
@ -224,7 +226,7 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr v-if="data.signs.ACCEPT_CONFESS">
|
<tr v-if="data.signs.ACCEPT_CONFESS">
|
||||||
<td colspan="10">
|
<td colspan="11">
|
||||||
<div>接受交底人:</div>
|
<div>接受交底人:</div>
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in data.signs.ACCEPT_CONFESS[0].SIGN_TIME"
|
v-for="(item, index) in data.signs.ACCEPT_CONFESS[0].SIGN_TIME"
|
||||||
|
@ -245,28 +247,8 @@
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr v-if="data.signs.CONFIRM">
|
|
||||||
<td colspan="10">
|
|
||||||
<div>作业负责人意见:{{ data.signs.CONFIRM[0].DESCR }}</div>
|
|
||||||
<div
|
|
||||||
v-for="(item, index) in data.signs.CONFIRM[0].SIGN_TIME"
|
|
||||||
:key="index"
|
|
||||||
class="tr"
|
|
||||||
>
|
|
||||||
<span>签字:</span>
|
|
||||||
<img
|
|
||||||
v-viewer
|
|
||||||
:src="VITE_FILE_URL + data.signs.CONFIRM[0].SIGN_PATH[index]"
|
|
||||||
alt=""
|
|
||||||
width="100"
|
|
||||||
height="100"
|
|
||||||
/>
|
|
||||||
<span>{{ data.signs.CONFIRM[0].SIGN_TIME[index] }}</span>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr v-if="data.signs.WORK_USER">
|
<tr v-if="data.signs.WORK_USER">
|
||||||
<td colspan="10">
|
<td colspan="11">
|
||||||
<div>作业人:</div>
|
<div>作业人:</div>
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in data.signs.WORK_USER[0].SIGN_TIME"
|
v-for="(item, index) in data.signs.WORK_USER[0].SIGN_TIME"
|
||||||
|
@ -285,9 +267,29 @@
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr v-if="data.signs.CONFIRM">
|
||||||
|
<td colspan="11">
|
||||||
|
<div>作业负责人意见:{{ data.signs.CONFIRM[0].DESCR }}</div>
|
||||||
|
<div
|
||||||
|
v-for="(item, index) in data.signs.CONFIRM[0].SIGN_TIME"
|
||||||
|
:key="index"
|
||||||
|
class="tr"
|
||||||
|
>
|
||||||
|
<span>签字:</span>
|
||||||
|
<img
|
||||||
|
v-viewer
|
||||||
|
:src="VITE_FILE_URL + data.signs.CONFIRM[0].SIGN_PATH[index]"
|
||||||
|
alt=""
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
/>
|
||||||
|
<span>{{ data.signs.CONFIRM[0].SIGN_TIME[index] }}</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
<tr v-if="data.signs.LEADER">
|
<tr v-if="data.signs.LEADER">
|
||||||
<td colspan="10">
|
<td colspan="11">
|
||||||
<div>所在单位意见:{{ data.signs.LEADER[0].DESCR }}</div>
|
<div>所在单位意见:{{ data.signs.LEADER[0].DESCR }}</div>
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in data.signs.LEADER[0].SIGN_TIME"
|
v-for="(item, index) in data.signs.LEADER[0].SIGN_TIME"
|
||||||
|
@ -308,7 +310,7 @@
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr v-if="data.signs.ACCEPT">
|
<tr v-if="data.signs.ACCEPT">
|
||||||
<td colspan="10">
|
<td colspan="11">
|
||||||
<div>完工验收:{{ data.signs.ACCEPT[0].DESCR }}</div>
|
<div>完工验收:{{ data.signs.ACCEPT[0].DESCR }}</div>
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in data.signs.ACCEPT[0].SIGN_TIME"
|
v-for="(item, index) in data.signs.ACCEPT[0].SIGN_TIME"
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<el-divider content-position="left">清单信息</el-divider>
|
<el-divider content-position="left">{{
|
||||||
|
listType === "1" ? "风险管控清单信息" : "隐患排查清单信息"
|
||||||
|
}}</el-divider>
|
||||||
<el-descriptions border :column="2">
|
<el-descriptions border :column="2">
|
||||||
<el-descriptions-item label="清单名称">
|
<el-descriptions-item label="清单名称">
|
||||||
{{ info.LIST_NAME ? info.LIST_NAME : info.CUSTOM_NAME }}
|
{{ info.LIST_NAME ? info.LIST_NAME : info.CUSTOM_NAME }}
|
||||||
|
|
|
@ -183,7 +183,7 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="TYPENAME" label="清单类型" width="90" />
|
<el-table-column prop="TYPENAME" label="清单类型" width="90" />
|
||||||
<el-table-column
|
<el-table-column
|
||||||
v-if="SPECIAL_ENTERPRISES.includes(CORPINFO_ID)"
|
v-if="data.WHETHER_HAZARDS === 1"
|
||||||
label="是否包保责任人任务"
|
label="是否包保责任人任务"
|
||||||
width="90"
|
width="90"
|
||||||
>
|
>
|
||||||
|
@ -234,20 +234,28 @@ import {
|
||||||
layoutFnGetInventoryType,
|
layoutFnGetInventoryType,
|
||||||
layoutFnGetTroubleshootingCycle,
|
layoutFnGetTroubleshootingCycle,
|
||||||
} from "@/assets/js/data_dictionary.js";
|
} from "@/assets/js/data_dictionary.js";
|
||||||
import { getRiskStandardStatusList } from "@/request/hazard_investigation.js";
|
import {
|
||||||
|
getCorpinfo,
|
||||||
|
getRiskStandardStatusList,
|
||||||
|
} from "@/request/hazard_investigation.js";
|
||||||
import { useRouter } from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
import { SPECIAL_ENTERPRISES } from "@/assets/js/constant.js";
|
|
||||||
import { useUserStore } from "@/pinia/user.js";
|
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
import { reactive } from "vue";
|
||||||
|
|
||||||
|
const data = reactive({
|
||||||
|
WHETHER_HAZARDS: "",
|
||||||
|
});
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const userStore = useUserStore();
|
|
||||||
const CORPINFO_ID = userStore.getUserInfo.CORPINFO_ID;
|
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
||||||
useListData(getRiskStandardStatusList);
|
useListData(getRiskStandardStatusList);
|
||||||
const troubleshootingCycleList = await layoutFnGetTroubleshootingCycle();
|
const troubleshootingCycleList = await layoutFnGetTroubleshootingCycle();
|
||||||
const inventoryLevelList = await layoutFnGetInventoryLevel();
|
const inventoryLevelList = await layoutFnGetInventoryLevel();
|
||||||
const inventoryTypeList = await layoutFnGetInventoryType();
|
const inventoryTypeList = await layoutFnGetInventoryType();
|
||||||
|
const fnGetCorpinfo = async () => {
|
||||||
|
const resData = await getCorpinfo();
|
||||||
|
data.WHETHER_HAZARDS = resData.pd.WHETHER_HAZARDS;
|
||||||
|
};
|
||||||
|
fnGetCorpinfo();
|
||||||
const fnGetDataTransfer = () => {
|
const fnGetDataTransfer = () => {
|
||||||
fnGetData({
|
fnGetData({
|
||||||
DEPTIDS: searchForm.value.DEPTIDS?.join(","),
|
DEPTIDS: searchForm.value.DEPTIDS?.join(","),
|
||||||
|
|
|
@ -122,7 +122,7 @@
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
/>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
v-if="SPECIAL_ENTERPRISES.includes(CORPINFO_ID)"
|
v-if="data.WHETHER_HAZARDS === 1"
|
||||||
prop="TASK_TYPE_NAME"
|
prop="TASK_TYPE_NAME"
|
||||||
label="任务类型"
|
label="任务类型"
|
||||||
width="100"
|
width="100"
|
||||||
|
@ -141,11 +141,17 @@
|
||||||
name === 'risk'
|
name === 'risk'
|
||||||
? router.push({
|
? router.push({
|
||||||
path: '/hazard_investigation/delete_inventory_management/view',
|
path: '/hazard_investigation/delete_inventory_management/view',
|
||||||
query: { LISTMANAGER_ID: row.LISTMANAGER_ID },
|
query: {
|
||||||
|
LISTMANAGER_ID: row.LISTMANAGER_ID,
|
||||||
|
WHETHER_HAZARDS: data.WHETHER_HAZARDS,
|
||||||
|
},
|
||||||
})
|
})
|
||||||
: router.push({
|
: router.push({
|
||||||
path: '/hazard_investigation/delete_inventory_management/view_custom',
|
path: '/hazard_investigation/delete_inventory_management/view_custom',
|
||||||
query: { CUSTOM_ID: row.CUSTOM_ID },
|
query: {
|
||||||
|
CUSTOM_ID: row.CUSTOM_ID,
|
||||||
|
WHETHER_HAZARDS: data.WHETHER_HAZARDS,
|
||||||
|
},
|
||||||
})
|
})
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
|
@ -190,9 +196,8 @@ import {
|
||||||
layoutFnGetInventoryType,
|
layoutFnGetInventoryType,
|
||||||
layoutFnGetTroubleshootingType,
|
layoutFnGetTroubleshootingType,
|
||||||
} from "@/assets/js/data_dictionary.js";
|
} from "@/assets/js/data_dictionary.js";
|
||||||
import { SPECIAL_ENTERPRISES } from "@/assets/js/constant.js";
|
|
||||||
import { useUserStore } from "@/pinia/user.js";
|
|
||||||
import {
|
import {
|
||||||
|
getCorpinfo,
|
||||||
getDeleteCustomList,
|
getDeleteCustomList,
|
||||||
getDeleteInventoryManagementList,
|
getDeleteInventoryManagementList,
|
||||||
setCustomBatchDelete,
|
setCustomBatchDelete,
|
||||||
|
@ -201,6 +206,7 @@ import {
|
||||||
setInventoryManagementBatchDelete,
|
setInventoryManagementBatchDelete,
|
||||||
} from "@/request/hazard_investigation.js";
|
} from "@/request/hazard_investigation.js";
|
||||||
import { useRouter } from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
|
import { reactive } from "vue";
|
||||||
|
|
||||||
const tabName = defineProps({
|
const tabName = defineProps({
|
||||||
name: {
|
name: {
|
||||||
|
@ -209,19 +215,24 @@ const tabName = defineProps({
|
||||||
default: "",
|
default: "",
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
const data = reactive({
|
||||||
|
WHETHER_HAZARDS: "",
|
||||||
|
});
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
||||||
tabName.name === "risk"
|
tabName.name === "risk"
|
||||||
? useListData(getDeleteInventoryManagementList)
|
? useListData(getDeleteInventoryManagementList)
|
||||||
: useListData(getDeleteCustomList);
|
: useListData(getDeleteCustomList);
|
||||||
|
|
||||||
const userStore = useUserStore();
|
|
||||||
const CORPINFO_ID = userStore.getUserInfo.CORPINFO_ID;
|
|
||||||
const buttonJurisdiction = await useButtonJurisdiction("stoplistmanager");
|
const buttonJurisdiction = await useButtonJurisdiction("stoplistmanager");
|
||||||
const inventoryTypeList = await layoutFnGetInventoryType();
|
const inventoryTypeList = await layoutFnGetInventoryType();
|
||||||
const troubleshootingTypeList = await layoutFnGetTroubleshootingType();
|
const troubleshootingTypeList = await layoutFnGetTroubleshootingType();
|
||||||
const inventoryLevelList = await layoutFnGetInventoryLevel();
|
const inventoryLevelList = await layoutFnGetInventoryLevel();
|
||||||
|
const fnGetCorpinfo = async () => {
|
||||||
|
const resData = await getCorpinfo();
|
||||||
|
data.WHETHER_HAZARDS = resData.pd.WHETHER_HAZARDS;
|
||||||
|
};
|
||||||
|
fnGetCorpinfo();
|
||||||
const fnGetDataTransfer = () => {
|
const fnGetDataTransfer = () => {
|
||||||
fnGetData({
|
fnGetData({
|
||||||
DEPTIDS: searchForm.value.DEPTIDS?.join(","),
|
DEPTIDS: searchForm.value.DEPTIDS?.join(","),
|
||||||
|
|
|
@ -5,7 +5,10 @@
|
||||||
<el-descriptions-item label="清单名称">
|
<el-descriptions-item label="清单名称">
|
||||||
{{ info.NAME }}
|
{{ info.NAME }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="是否包保责任人任务">
|
<el-descriptions-item
|
||||||
|
label="是否包保责任人任务"
|
||||||
|
v-if="WHETHER_HAZARDS === '1'"
|
||||||
|
>
|
||||||
<span v-if="info.BAO_BAO_TYPE === '0'">否</span>
|
<span v-if="info.BAO_BAO_TYPE === '0'">否</span>
|
||||||
<span v-if="info.BAO_BAO_TYPE === '1'">是</span>
|
<span v-if="info.BAO_BAO_TYPE === '1'">是</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
@ -57,7 +60,7 @@ import { getInventoryManagementView } from "@/request/hazard_investigation.js";
|
||||||
import { ref } from "vue";
|
import { ref } from "vue";
|
||||||
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
const { LISTMANAGER_ID } = route.query;
|
const { LISTMANAGER_ID, WHETHER_HAZARDS } = route.query;
|
||||||
const info = ref({});
|
const info = ref({});
|
||||||
const { list } = useListData(getInventoryManagementView, {
|
const { list } = useListData(getInventoryManagementView, {
|
||||||
otherParams: { LISTMANAGER_ID },
|
otherParams: { LISTMANAGER_ID },
|
||||||
|
|
|
@ -5,7 +5,10 @@
|
||||||
<el-descriptions-item label="清单名称">
|
<el-descriptions-item label="清单名称">
|
||||||
{{ info.NAME }}
|
{{ info.NAME }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="是否包保责任人任务">
|
<el-descriptions-item
|
||||||
|
label="是否包保责任人任务"
|
||||||
|
v-if="WHETHER_HAZARDS === '1'"
|
||||||
|
>
|
||||||
<span v-if="info.BAO_BAO_TYPE === '0'">否</span>
|
<span v-if="info.BAO_BAO_TYPE === '0'">否</span>
|
||||||
<span v-if="info.BAO_BAO_TYPE === '1'">是</span>
|
<span v-if="info.BAO_BAO_TYPE === '1'">是</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
@ -72,7 +75,7 @@ import { getCustomStopView } from "@/request/hazard_investigation.js";
|
||||||
import { ref } from "vue";
|
import { ref } from "vue";
|
||||||
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
const { CUSTOM_ID } = route.query;
|
const { CUSTOM_ID, WHETHER_HAZARDS } = route.query;
|
||||||
const info = ref({});
|
const info = ref({});
|
||||||
const { list } = useListData(getCustomStopView, {
|
const { list } = useListData(getCustomStopView, {
|
||||||
otherParams: { CUSTOM_ID },
|
otherParams: { CUSTOM_ID },
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<el-form ref="formRef" :rules="rules" :model="form" label-width="240px">
|
<el-form ref="formRef" :rules="rules" :model="form" label-width="240px">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item label="检查类别" prop="CHECK_CATEGORY">
|
<el-form-item label="检查类别" prop="CHECK_CATEGORY_NAME">
|
||||||
<layout-select-create
|
<layout-select-create
|
||||||
v-if="type === 'add'"
|
v-if="type === 'add'"
|
||||||
:list="categoryData"
|
:list="categoryData"
|
||||||
|
@ -22,7 +22,7 @@
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item label="检查项目" prop="CHECK_ITEM">
|
<el-form-item label="检查项目" prop="CHECK_ITEM_NAME">
|
||||||
<layout-select-create
|
<layout-select-create
|
||||||
v-if="type === 'add'"
|
v-if="type === 'add'"
|
||||||
:list="data.itemData"
|
:list="data.itemData"
|
||||||
|
|
|
@ -124,7 +124,12 @@ const fnSubmit = debounce(
|
||||||
RECORDITEM_ID: props.info.RECORDITEM_ID,
|
RECORDITEM_ID: props.info.RECORDITEM_ID,
|
||||||
RISKITEM_ID: props.info.LISTCHECKITEM_ID,
|
RISKITEM_ID: props.info.LISTCHECKITEM_ID,
|
||||||
LONGITUDE: props.longitude,
|
LONGITUDE: props.longitude,
|
||||||
LATITUDE: props.latitude,
|
CHECK_CATEGORY: props.info.CHECK_CATEGORY,
|
||||||
|
CHECK_CATEGORY_NAME: props.info.CHECK_CATEGORY_NAME,
|
||||||
|
CHECK_ITEM: props.info.CHECK_ITEM,
|
||||||
|
CHECK_ITEM_NAME: props.info.CHECK_ITEM_NAME,
|
||||||
|
CHECK_STANDARD: props.info.CHECK_STANDARD,
|
||||||
|
REFERENCE_BASIS: props.info.REFERENCE_BASIS,
|
||||||
};
|
};
|
||||||
const resData =
|
const resData =
|
||||||
props.listType === 1
|
props.listType === 1
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<layout-card>
|
<layout-card>
|
||||||
<el-divider content-position="left">清单信息</el-divider>
|
<el-divider content-position="left">风险管控清单信息</el-divider>
|
||||||
<el-descriptions :column="2" border>
|
<el-descriptions :column="2" border>
|
||||||
<el-descriptions-item label="清单名称">
|
<el-descriptions-item label="清单名称">
|
||||||
{{ info.NAME }}
|
{{ info.NAME }}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<layout-card>
|
<layout-card>
|
||||||
<el-divider content-position="left">清单信息</el-divider>
|
<el-divider content-position="left">隐患排查清单信息</el-divider>
|
||||||
<el-descriptions :column="2" border>
|
<el-descriptions :column="2" border>
|
||||||
<el-descriptions-item label="清单名称">
|
<el-descriptions-item label="清单名称">
|
||||||
{{ info.NAME }}
|
{{ info.NAME }}
|
||||||
|
|
|
@ -102,6 +102,15 @@
|
||||||
>
|
>
|
||||||
添加监控
|
添加监控
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-if="entrance === 'archive' && row.NEXT_STEP_ID === 99"
|
||||||
|
type="primary"
|
||||||
|
text
|
||||||
|
link
|
||||||
|
@click="fnPreviewVideo(row.VIDEO_PATH)"
|
||||||
|
>
|
||||||
|
查看验收视频
|
||||||
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
text
|
text
|
||||||
|
@ -135,6 +144,11 @@
|
||||||
v-model:visible="data.flowChartDialog.visible"
|
v-model:visible="data.flowChartDialog.visible"
|
||||||
:flow-list="data.flowChartDialog.flowList"
|
:flow-list="data.flowChartDialog.flowList"
|
||||||
/>
|
/>
|
||||||
|
<layout-video
|
||||||
|
:src="data.videoDialog.src"
|
||||||
|
v-model:visible="data.videoDialog.visible"
|
||||||
|
append-to-body
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -149,6 +163,7 @@ import {
|
||||||
getHighWorkList,
|
getHighWorkList,
|
||||||
getTaskSetps,
|
getTaskSetps,
|
||||||
} from "@/request/eight_work.js";
|
} from "@/request/eight_work.js";
|
||||||
|
import LayoutVideo from "@/components/video/index.vue";
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
entrance: {
|
entrance: {
|
||||||
|
@ -166,6 +181,11 @@ const getStepList = async () => {
|
||||||
{ STEP_NAME: "验收归档", STEP_ID: "99" },
|
{ STEP_NAME: "验收归档", STEP_ID: "99" },
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
const fnPreviewVideo = (VIDEO_PATH) => {
|
||||||
|
data.videoDialog.visible = true;
|
||||||
|
data.videoDialog.src = VIDEO_PATH;
|
||||||
|
};
|
||||||
|
|
||||||
getStepList();
|
getStepList();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
||||||
|
@ -177,6 +197,10 @@ const data = reactive({
|
||||||
visible: false,
|
visible: false,
|
||||||
flowList: {},
|
flowList: {},
|
||||||
},
|
},
|
||||||
|
videoDialog: {
|
||||||
|
visible: false,
|
||||||
|
src: "",
|
||||||
|
},
|
||||||
});
|
});
|
||||||
const fnFlowChart = async (HIGHWORK_ID) => {
|
const fnFlowChart = async (HIGHWORK_ID) => {
|
||||||
const { flowList } = await getHighWorkFlow({ HIGHWORK_ID });
|
const { flowList } = await getHighWorkFlow({ HIGHWORK_ID });
|
||||||
|
|
|
@ -197,26 +197,6 @@
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr v-if="data.signs.CONFIRM">
|
|
||||||
<td colspan="10">
|
|
||||||
<div>作业负责人意见:{{ data.signs.CONFIRM[0].DESCR }}</div>
|
|
||||||
<div
|
|
||||||
v-for="(item, index) in data.signs.CONFIRM[0].SIGN_TIME"
|
|
||||||
:key="index"
|
|
||||||
class="tr"
|
|
||||||
>
|
|
||||||
<span>签字:</span>
|
|
||||||
<img
|
|
||||||
v-viewer
|
|
||||||
:src="VITE_FILE_URL + data.signs.CONFIRM[0].SIGN_PATH[index]"
|
|
||||||
alt=""
|
|
||||||
width="100"
|
|
||||||
height="100"
|
|
||||||
/>
|
|
||||||
<span>{{ data.signs.CONFIRM[0].SIGN_TIME[index] }}</span>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr v-if="data.signs.WORK_USER">
|
<tr v-if="data.signs.WORK_USER">
|
||||||
<td colspan="10">
|
<td colspan="10">
|
||||||
<div>作业人:</div>
|
<div>作业人:</div>
|
||||||
|
@ -237,6 +217,26 @@
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr v-if="data.signs.CONFIRM">
|
||||||
|
<td colspan="10">
|
||||||
|
<div>作业负责人意见:{{ data.signs.CONFIRM[0].DESCR }}</div>
|
||||||
|
<div
|
||||||
|
v-for="(item, index) in data.signs.CONFIRM[0].SIGN_TIME"
|
||||||
|
:key="index"
|
||||||
|
class="tr"
|
||||||
|
>
|
||||||
|
<span>签字:</span>
|
||||||
|
<img
|
||||||
|
v-viewer
|
||||||
|
:src="VITE_FILE_URL + data.signs.CONFIRM[0].SIGN_PATH[index]"
|
||||||
|
alt=""
|
||||||
|
width="100"
|
||||||
|
height="100"
|
||||||
|
/>
|
||||||
|
<span>{{ data.signs.CONFIRM[0].SIGN_TIME[index] }}</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
<tr v-if="data.signs.LEADER">
|
<tr v-if="data.signs.LEADER">
|
||||||
<td colspan="10">
|
<td colspan="10">
|
||||||
|
|
|
@ -108,6 +108,15 @@
|
||||||
>
|
>
|
||||||
流程图
|
流程图
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-if="entrance === 'archive' && row.NEXT_STEP_ID === 99"
|
||||||
|
type="primary"
|
||||||
|
text
|
||||||
|
link
|
||||||
|
@click="fnPreviewVideo(row.VIDEO_PATH)"
|
||||||
|
>
|
||||||
|
查看验收视频
|
||||||
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
text
|
text
|
||||||
|
@ -132,6 +141,11 @@
|
||||||
v-model:visible="data.flowChartDialog.visible"
|
v-model:visible="data.flowChartDialog.visible"
|
||||||
:flow-list="data.flowChartDialog.flowList"
|
:flow-list="data.flowChartDialog.flowList"
|
||||||
/>
|
/>
|
||||||
|
<layout-video
|
||||||
|
:src="data.videoDialog.src"
|
||||||
|
v-model:visible="data.videoDialog.visible"
|
||||||
|
append-to-body
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -141,6 +155,7 @@ import { useRouter } from "vue-router";
|
||||||
import useListData from "@/assets/js/useListData.js";
|
import useListData from "@/assets/js/useListData.js";
|
||||||
import { reactive, ref } from "vue";
|
import { reactive, ref } from "vue";
|
||||||
import FlowChart from "./components/flow_chart.vue";
|
import FlowChart from "./components/flow_chart.vue";
|
||||||
|
import LayoutVideo from "@/components/video/index.vue";
|
||||||
import {
|
import {
|
||||||
getHotWorkList,
|
getHotWorkList,
|
||||||
getTaskSetps,
|
getTaskSetps,
|
||||||
|
@ -166,6 +181,11 @@ const getStepList = async () => {
|
||||||
};
|
};
|
||||||
getStepList();
|
getStepList();
|
||||||
|
|
||||||
|
const fnPreviewVideo = (VIDEO_PATH) => {
|
||||||
|
data.videoDialog.visible = true;
|
||||||
|
data.videoDialog.src = VIDEO_PATH;
|
||||||
|
};
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
||||||
useListData(getHotWorkList, {
|
useListData(getHotWorkList, {
|
||||||
|
@ -176,6 +196,10 @@ const data = reactive({
|
||||||
visible: false,
|
visible: false,
|
||||||
flowList: {},
|
flowList: {},
|
||||||
},
|
},
|
||||||
|
videoDialog: {
|
||||||
|
visible: false,
|
||||||
|
src: "",
|
||||||
|
},
|
||||||
});
|
});
|
||||||
const fnFlowChart = async (HOTWORK_ID) => {
|
const fnFlowChart = async (HOTWORK_ID) => {
|
||||||
const { flowList } = await getHotWorkFlow({ HOTWORK_ID });
|
const { flowList } = await getHotWorkFlow({ HOTWORK_ID });
|
||||||
|
|
|
@ -42,7 +42,7 @@
|
||||||
<td class="title">气体取样分析时间</td>
|
<td class="title">气体取样分析时间</td>
|
||||||
<td>{{ item.ANALYZE_TIME }}</td>
|
<td>{{ item.ANALYZE_TIME }}</td>
|
||||||
<td class="title">代表性气体</td>
|
<td class="title">代表性气体</td>
|
||||||
<td>{{ item.ANALYZE_PLACE }}</td>
|
<td>{{ item.ANALYZE_GAS }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="title">分析结果/%</td>
|
<td class="title">分析结果/%</td>
|
||||||
|
@ -50,6 +50,10 @@
|
||||||
<td class="title">分析人</td>
|
<td class="title">分析人</td>
|
||||||
<td>{{ item.ANALYZE_USER }}</td>
|
<td>{{ item.ANALYZE_USER }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr v-if="item.ANALYZE_PLACE">
|
||||||
|
<td class="title">分析地点</td>
|
||||||
|
<td colspan="3">{{ item.ANALYZE_PLACE }}</td>
|
||||||
|
</tr>
|
||||||
</template>
|
</template>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="title">关联的其他特殊作业及安全作业票编号</td>
|
<td class="title">关联的其他特殊作业及安全作业票编号</td>
|
||||||
|
|
Loading…
Reference in New Issue