一般隐患管理修改, 较大/重大隐患管理修改

dev-3.0
Shan Ao 2025-07-14 18:00:24 +08:00
parent ab745d190f
commit 78cc3a5efb
12 changed files with 465 additions and 466 deletions

View File

@ -64,12 +64,12 @@ export const getRiskUnitCustomizedList = (params) => post("/risk/point/app/page"
export const getRiskPostInfo = (params) => post(`/risk/point/${params.id}`, params) //获取公司风险点列表 export const getRiskPostInfo = (params) => post(`/risk/point/${params.id}`, params) //获取公司风险点列表
export const getGeneralCountByCorpInfo = (params) => post("/hidden/statistics/general/page", params) //获取一般隐患公司列表 export const getGeneralCountByCorpInfo = (params) => post("/hidden/statistics/general/page", params) //获取一般隐患公司列表
export const getGeneralHiddenList = (params) => post("/hidden/query/page", params) //获取一般隐患列表 export const getGeneralHiddenList = (params) => post("/hidden/query/page", params) //获取一般隐患列表
export const getSpecialCountByCorpInfo = (params) => post("/app/hidden/speciallist", params) //获取特殊隐患列表 export const getSpecialCountByCorpInfo = (params) => post("/hidden/statistics/special/handling/page", params) //获取特殊隐患列表
export const getSpecialHiddenList = (params) => post("/app/hidden/specialByCorpInfoId", params) //获取特殊隐患列表 export const getSpecialHiddenList = (params) => post("/hidden/query/exa/page/app", params) //获取特殊隐患列表
export const getRiskFourColorMapList = (params) => post("/app/riskwarning/list", params) //获取风险四色图列表 export const getRiskFourColorMapList = (params) => post("/app/riskwarning/list", params) //获取风险四色图列表
export const getMajorCountByCorpInfo = (params) => post("/app/corpinfo/corpinfoList", params) //获取重大/较大隐患公司列表 export const getMajorCountByCorpInfo = (params) => post("/hidden/statistics/major/page", params) //获取重大隐患公司列表
export const getMajorHiddenList = (params) => post("/app/hidden/majorhiddenList", params) //获取重大/较大隐患列表 export const getLargerCountByCorpInfo = (params) => post("/hidden/statistics/larger/page", params) //获取较大隐患公司列表
export const getMoreHiddenList = (params) => post("/app/hidden/morehiddenList", params) //较大隐患列表 export const getMajorHiddenList = (params) => post("/hidden/query/major/info/page", params) //获取重大/较大隐患列表//较大隐患列表
export const getVersion = (params) => post("/versionmanager/reg/getVersion", params) //版本更新 export const getVersion = (params) => post("/versionmanager/reg/getVersion", params) //版本更新
export const setFeedbackUpload = (params) => upload("/app/feedback/upload", params) //反馈问题附件 export const setFeedbackUpload = (params) => upload("/app/feedback/upload", params) //反馈问题附件
export const setFeedbackAdd = (params) => post("/app/feedback/add", params) //反馈问题提交 export const setFeedbackAdd = (params) => post("/app/feedback/add", params) //反馈问题提交

View File

@ -123,8 +123,8 @@ export default {
data() { data() {
return { return {
hiddendescr: '', hiddendescr: '',
pageSize: 10, limit: 10,
currentPage: 1, curPage: 1,
totalPage: 0, totalPage: 0,
list: [{}], list: [{}],
companyId: '', companyId: '',
@ -172,7 +172,7 @@ export default {
}, },
async getData() { async getData() {
this.popupShow = false this.popupShow = false
let { varList, page } = await getGeneralHiddenList({ let { page } = await getGeneralHiddenList({
companyId: this.companyId, companyId: this.companyId,
dates: this.startData != null && this.startData !== '' && this.endData != null && this.endData !== '' ? [this.startData, this.endData] : null, dates: this.startData != null && this.startData !== '' && this.endData != null && this.endData !== '' ? [this.startData, this.endData] : null,
creatorName: this.creatorName, creatorName: this.creatorName,
@ -180,16 +180,16 @@ export default {
state: this.state, state: this.state,
hiddenlevel: this.hiddenlevel, hiddenlevel: this.hiddenlevel,
hiddendescr: this.hiddendescr, hiddendescr: this.hiddendescr,
showCount: this.pageSize, limit: this.limit,
currentPage: this.currentPage, curPage: this.curPage,
hiddenVueType: "regulatory" hiddenVueType: "regulatory"
}); });
this.list = [ ...this.list, ...varList ]; this.list = [ ...this.list, ...page.list ];
this.totalPage = page.totalPage; this.totalPage = page.totalPage;
}, },
resetList() { resetList() {
this.pageSize = 10 this.limit = 10
this.currentPage = 1 this.curPage = 1
this.list = [] this.list = []
this.getData() this.getData()
}, },
@ -202,8 +202,8 @@ export default {
}) })
}, },
scrolltolower() { scrolltolower() {
this.currentPage++; this.curPage++;
if (this.totalPage >= this.currentPage) this.getData(); if (this.totalPage >= this.curPage) this.getData();
}, },
startDataConfirm(e) { startDataConfirm(e) {
this.startData = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM') this.startData = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM')

View File

@ -304,11 +304,11 @@
<u-cell> <u-cell>
<view slot="title" class="title">整改方案</view> <view slot="title" class="title">整改方案</view>
<view slot="value"> <view slot="value">
<template v-if="form.havescheme == 0"></template> <template v-if="form.havescheme === 0"></template>
<template v-else-if="form.havescheme == 1"></template> <template v-else-if="form.havescheme === 1"></template>
</view> </view>
</u-cell> </u-cell>
<template v-if="hs && form.havescheme==1"> <template v-if="hs && form.havescheme === 1">
<u-cell> <u-cell>
<view slot="title" class="title">排查日期</view> <view slot="title" class="title">排查日期</view>
<view slot="value">{{ hs.screeningdate }}</view> <view slot="value">{{ hs.screeningdate }}</view>

View File

@ -6,7 +6,7 @@
prefixIcon="search" prefixIcon="search"
placeholder="请输入关键字" placeholder="请输入关键字"
border="surround" border="surround"
v-model="keyword" v-model="hiddendescr"
clearable clearable
shape="circle" shape="circle"
></u--input> ></u--input>
@ -20,7 +20,7 @@
<view class="pl-10 pr-10"> <view class="pl-10 pr-10">
<u--form labelPosition="left"> <u--form labelPosition="left">
<u-form-item label="隐患发现开始时间" borderBottom> <u-form-item label="隐患发现开始时间" borderBottom>
<u--text :text="START_DATA || '请选择'" <u--text :text="start || '请选择'"
@click="startDataShow = true"></u--text> @click="startDataShow = true"></u--text>
<u-datetime-picker :show="startDataShow" <u-datetime-picker :show="startDataShow"
mode="datetime" mode="datetime"
@ -29,7 +29,7 @@
@confirm="startDataConfirm"></u-datetime-picker> @confirm="startDataConfirm"></u-datetime-picker>
</u-form-item> </u-form-item>
<u-form-item label="隐患发现结束时间" borderBottom> <u-form-item label="隐患发现结束时间" borderBottom>
<u--text :text="END_DATA || '请选择'" <u--text :text="end || '请选择'"
@click="endDataShow = true"></u--text> @click="endDataShow = true"></u--text>
<u-datetime-picker :show="endDataShow" <u-datetime-picker :show="endDataShow"
mode="datetime" mode="datetime"
@ -42,7 +42,7 @@
inputAlign="right" inputAlign="right"
placeholder="请输入发现人" placeholder="请输入发现人"
border="none" border="none"
v-model="FIND_PEOPLE" v-model="creatorName"
clearable clearable
></u--input> ></u--input>
</u-form-item> </u-form-item>
@ -51,18 +51,18 @@
inputAlign="right" inputAlign="right"
placeholder="请输入确认人" placeholder="请输入确认人"
border="none" border="none"
v-model="CONFIRMOR" v-model="keyConfirmUser"
clearable clearable
></u--input> ></u--input>
</u-form-item> </u-form-item>
<u-form-item label="隐患状态" borderBottom> <u-form-item label="隐患状态" borderBottom>
<u--text :text="HIDDEN_STATUS_NAME || '请选择'" @click="hiddenStatusShow = true"></u--text> <u--text :text="stateName || '请选择'" @click="hiddenStatusShow = true"></u--text>
<u-picker :show="hiddenStatusShow" :columns="hiddenStatusList" keyName="NAME" <u-picker :show="hiddenStatusShow" :columns="hiddenStatusList" keyName="NAME"
@cancel="hiddenStatusShow = false" @cancel="hiddenStatusShow = false"
@confirm="pickerConfirm($event,'hiddenStatus')"></u-picker> @confirm="pickerConfirm($event,'hiddenStatus')"></u-picker>
</u-form-item> </u-form-item>
<u-form-item label="隐患级别" borderBottom> <u-form-item label="隐患级别" borderBottom>
<u--text :text="HIDDEN_LEVEL_NAME || '请选择'" @click="showTree"></u--text> <u--text :text="hiddenlevelName || '请选择'" @click="showTree"></u--text>
<tki-tree ref="tkitree" :range="hiddenLevelList" rangeKey="name" selectParent children-name="nodes" <tki-tree ref="tkitree" :range="hiddenLevelList" rangeKey="name" selectParent children-name="nodes"
@confirm="confirmTree"/> @confirm="confirmTree"/>
</u-form-item> </u-form-item>
@ -82,30 +82,23 @@
<u-list-item v-for="(item, index) in list" :key="index"> <u-list-item v-for="(item, index) in list" :key="index">
<view> <view>
<view class="flex-between main-title"> <view class="flex-between main-title">
<text>{{ item.HIDDENDESCR }}</text> <text>{{ item.hiddendescr }}</text>
<u-tag :text="item.NAME" type="warning"></u-tag> <u-tag :text="item.hiddenlevelName" type="warning"></u-tag>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text> <text>来源{{ item.source }}</text>
来源
<template v-if="item.SOURCE == 1"></template>
<template v-if="item.SOURCE == 2 || item.SOURCE == 3"></template>
<template v-if="item.SOURCE == 4">()</template>
<template v-if="item.SOURCE == 5">()</template>
<template v-if="item.SOURCE == 6"></template>
</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>隐患发现人{{ item.findUserNames }}</text> <text>隐患发现人{{ item.hiddenDiscoverer }}</text>
<text>隐患发现时间{{ item.DISCOVERYTIME }}</text> <text>隐患发现时间{{ item.discoverytime }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>隐患确认人{{ item.CONFIRM_USER }}</text> <text>隐患确认人{{ item.confirmUserName }}</text>
</view> </view>
<view class="see_btn"> <view class="see_btn">
<u-button type="primary" text="查看" size="mini" <u-button type="primary" text="查看" size="mini"
@click="fnNavigatorDetail(item.HIDDEN_ID)"></u-button> @click="fnNavigatorDetail(item.hiddenId)"></u-button>
</view> </view>
</view> </view>
</u-list-item> </u-list-item>
@ -116,83 +109,71 @@
</template> </template>
<script> <script>
import {getDept, getSpecialHiddenList, getHiddenLevel} from "../../../api"; import {getDept, getSpecialHiddenList} from "@/api";
import FabButton from "@/components/fab_button/index.vue"; import FabButton from "@/components/fab_button/index.vue";
export default { export default {
components: {FabButton}, components: {FabButton},
data() { data() {
return { return {
keyword: '', hiddendescr: '',
pageSize: 10, pageSize: 10,
currentPage: 1, currentPage: 1,
totalPage: 0, totalPage: 0,
list: [{}], list: [{}],
CORPINFO_ID: '', companyId: '',
popupShow: false, popupShow: false,
startDataShow: false, startDataShow: false,
endDataShow: false, endDataShow: false,
deptRange: [], deptRange: [],
START_DATA: '', start: '',
END_DATA: '', end: '',
FIND_PEOPLE: '', creatorName: '',
CONFIRMOR: '', keyConfirmUser: '',
HIDDEN_LEVEL_NAME: '', hiddenlevelName: '',
HIDDEN_LEVEL_ID: '', hiddenlevel: '',
hiddenLevelList: [ hiddenLevelList: [
{id: 'hiddenLevel1004', name: '轻微隐患'}, {id: 'hiddenLevel1004', name: '轻微隐患'},
{id: 'hiddenLevel1002', name: '一般隐患'}, {id: 'hiddenLevel1002', name: '一般隐患'},
], ],
HIDDEN_STATUS_NAME: '', stateName: '',
HIDDEN_STATUS_ID: '', state: '',
hiddenStatusShow: false, hiddenStatusShow: false,
hiddenStatusList: [ hiddenStatusList: [
[ [
// {NAME: '', ID: 1},
// {NAME: '', ID: 2},
{NAME: '待处置审核', ID: 3}, {NAME: '待处置审核', ID: 3},
{NAME: '已处置', ID: 4}, {NAME: '已处置', ID: 4},
// {NAME: '', ID: 5},
// {NAME: '', ID: 6},
// {NAME: '', ID: 7},
// {NAME: '', ID: 8},
// {NAME: '', ID: 9}
] ]
], ],
} }
}, },
onLoad(event) { onLoad(event) {
this.CORPINFO_ID = event.CORPINFO_ID; this.companyId = event.companyId;
this.resetList() this.resetList()
this.fnGetDept() this.fnGetDept()
// this.fnGetHiddenLevel()
}, },
methods: { methods: {
async fnGetDept() { async fnGetDept() {
let resData = await getDept({'DEPARTMENT_ID': '0'}); let resData = await getDept({'DEPARTMENT_ID': '0'});
this.deptRange = JSON.parse(resData.zTreeNodes) this.deptRange = JSON.parse(resData.zTreeNodes)
}, },
async fnGetHiddenLevel() {
let resData = await getHiddenLevel();
this.hiddenLevelList = JSON.parse(resData.zTreeNodes)
},
async getData() { async getData() {
this.popupShow = false this.popupShow = false
let resData = await getSpecialHiddenList({ let { varList, page } = await getSpecialHiddenList({
CORPINFO_ID: this.CORPINFO_ID, companyId: this.companyId,
SPECIALSTATE: '0', specialState: '0',
startTime: this.START_DATA, startTime: this.start,
endTime: this.END_DATA, endTime: this.end,
HIDDENFIND_NAME: this.FIND_PEOPLE, creatorName: this.creatorName,
CONFIRM_USER: this.CONFIRMOR, keyConfirmUser: this.keyConfirmUser,
HIDDEN_STATUS: this.HIDDEN_STATUS_ID, state: this.state,
HIDDENLEVEL: this.HIDDEN_LEVEL_ID, hiddenlevel: this.hiddenlevel,
KEYWORDS: this.keyword, hiddendescr: this.hiddendescr,
showCount: this.pageSize, showCount: this.pageSize,
currentPage: this.currentPage, currentPage: this.currentPage,
}); });
this.list = [...this.list, ...resData.varList]; this.list = [...this.list, ...varList];
this.totalPage = resData.page.totalPage; this.totalPage = page.totalPage;
}, },
resetList() { resetList() {
this.pageSize = 10 this.pageSize = 10
@ -200,11 +181,11 @@ export default {
this.list = [] this.list = []
this.getData() this.getData()
}, },
fnNavigatorDetail(HIDDEN_ID) { fnNavigatorDetail(hiddenId) {
uni.$u.route({ uni.$u.route({
url: '/pages/general-hidden-management/special-hidden/detail', url: '/pages/general-hidden-management/special-hidden/detail',
params: { params: {
HIDDEN_ID, hiddenId,
} }
}) })
}, },
@ -213,17 +194,17 @@ export default {
if (this.totalPage >= this.currentPage) this.getData(); if (this.totalPage >= this.currentPage) this.getData();
}, },
startDataConfirm(e) { startDataConfirm(e) {
this.START_DATA = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM') this.start = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM')
this.startDataShow = false this.startDataShow = false
}, },
endDataConfirm(e) { endDataConfirm(e) {
this.END_DATA = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM') this.end = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM')
this.endDataShow = false this.endDataShow = false
}, },
pickerConfirm(e, type) { pickerConfirm(e, type) {
if (type === 'hiddenStatus') { if (type === 'hiddenStatus') {
this.HIDDEN_STATUS_ID = e.value[0].ID this.state = e.value[0].ID
this.HIDDEN_STATUS_NAME = e.value[0].NAME this.stateName = e.value[0].NAME
this.hiddenStatusShow = false; this.hiddenStatusShow = false;
} }
}, },
@ -231,20 +212,20 @@ export default {
this.$refs.tkitree._show() this.$refs.tkitree._show()
}, },
confirmTree(e) { confirmTree(e) {
this.HIDDEN_LEVEL_ID = e[0].id this.hiddenlevel = e[0].id
this.HIDDEN_LEVEL_NAME = e[0].name this.hiddenlevelName = e[0].name
}, },
reset() { reset() {
this.popupShow = false this.popupShow = false
this.keyword = '' this.hiddendescr = ''
this.START_DATA = '' this.start = ''
this.END_DATA = '' this.end = ''
this.FIND_PEOPLE = '' this.creatorName = ''
this.CONFIRMOR = '' this.keyConfirmUser = ''
this.HIDDEN_STATUS_ID = '' this.state = ''
this.HIDDEN_STATUS_NAME = '' this.stateName = ''
this.HIDDEN_LEVEL_ID = '' this.hiddenlevel = ''
this.HIDDEN_LEVEL_NAME = '' this.hiddenlevelName = ''
this.resetList() this.resetList()
} }
} }

View File

@ -8,89 +8,89 @@
<u-cell> <u-cell>
<view slot="title" class="title">隐患来源</view> <view slot="title" class="title">隐患来源</view>
<view slot="value"> <view slot="value">
<template v-if="form.SOURCE=='1'"> <template v-if="form.source === '1'">
隐患快报 隐患快报
</template> </template>
<template v-else-if="form.SOURCE=='2'"> <template v-else-if="form.source === '2'">
清单排查 清单排查
</template> </template>
<template v-else-if="form.SOURCE=='3'"> <template v-else-if="form.source === '3'">
清单排查 清单排查
</template> </template>
<template v-else-if="form.SOURCE=='4'"> <template v-else-if="form.source === '4'">
安全环保检查(监管端) 安全环保检查(监管端)
</template> </template>
<template v-else-if="form.SOURCE=='5'"> <template v-else-if="form.source === '5'">
安全环保检查(企业端) 安全环保检查(企业端)
</template> </template>
<template v-else-if="form.SOURCE=='6'"> <template v-else-if="form.source === '6'">
消防检查 消防检查
</template> </template>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患描述</view> <view slot="title" class="title">隐患描述</view>
<view slot="label" class="mt-10">{{ form.HIDDENDESCR }}</view> <view slot="label" class="mt-10">{{ form.hiddendescr }}</view>
</u-cell> </u-cell>
<template v-if="form.SOURCE=='2'"> <template v-if="form.source === '2'">
<u-cell> <u-cell>
<view slot="title" class="title">风险点单元</view> <view slot="title" class="title">风险点单元</view>
<view slot="value">{{ form.RISK_UNIT }}</view> <view slot="value">{{ form.riskUnit }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">辨识部位</view> <view slot="title" class="title">辨识部位</view>
<view slot="value">{{ form.IDENTIFICATION }}</view> <view slot="value">{{ form.identification }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">存在风险</view> <view slot="title" class="title">存在风险</view>
<view slot="value">{{ form.RISK_DESCR }}</view> <view slot="value">{{ form.riskDescr }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">风险分级</view> <view slot="title" class="title">风险分级</view>
<view slot="value">{{ form.LEVEL }}</view> <view slot="value">{{ form.level }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">检查内容</view> <view slot="title" class="title">检查内容</view>
<view slot="value">{{ form.CHECK_CONTENT }}</view> <view slot="value">{{ form.checkContent }}</view>
</u-cell> </u-cell>
</template> </template>
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.editLevelName ? form.editLevelName : '' }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患状态</view> <view slot="title" class="title">隐患状态</view>
<view slot="value"> <view slot="value">
<template v-if="form.STATE=='1'"></template> <template v-if="form.state ==='1'"></template>
<template v-else-if="form.STATE=='2'">已整改</template> <template v-else-if="form.state === '2'">已整改</template>
<template v-else-if="form.STATE=='3'">已整改</template> <template v-else-if="form.state === '3'">已整改</template>
<template v-else-if="form.STATE=='4'">已验收</template> <template v-else-if="form.state === '4'">已验收</template>
<template v-else-if="form.STATE=='5'">忽略隐患</template> <template v-else-if="form.state === '5'">忽略隐患</template>
<template v-else-if="form.STATE=='6'">重大隐患</template> <template v-else-if="form.state === '6'">重大隐患</template>
<template v-else-if="form.STATE=='7'">待处理的特殊隐患</template> <template v-else-if="form.state === '7'">待处理的特殊隐患</template>
<template v-else-if="form.STATE=='8'">已处理的特殊隐患</template> <template v-else-if="form.state === '8'">已处理的特殊隐患</template>
<template v-else-if="form.STATE=='-1'">已超期</template> <template v-else-if="form.state === '-1'">已超期</template>
<template v-else-if="form.STATE=='-2'">待确认</template> <template v-else-if="form.state === '-2'">待确认</template>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患类型</view> <view slot="title" class="title">隐患类型</view>
<view slot="value">{{ form.HIDDENTYPENAME }}</view> <view slot="value">{{ form.hiddenTypeName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患部位</view> <view slot="title" class="title">隐患部位</view>
<view slot="value">{{ form.hregionName ? form.hregionName : form.HIDDENPART }}</view> <view slot="value">{{ form.hiddenpartStr ? form.hiddenpartStr : form.hiddenpart }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患上报位置</view> <view slot="title" class="title">隐患上报位置</view>
<view slot="label" class="mt-10"> <view slot="label" class="mt-10">
<view>经度:{{ form.LONGITUDE }}</view> <view>经度:{{ form.longitude }}</view>
<view>纬度:{{ form.LATITUDE }}</view> <view>纬度:{{ form.latitude }}</view>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患位置描述</view> <view slot="title" class="title">隐患位置描述</view>
<view slot="label" class="mt-10">{{ form.POSITIONDESC }}</view> <view slot="label" class="mt-10">{{ form.positiondesc }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患照片</view> <view slot="title" class="title">隐患照片</view>
@ -116,32 +116,32 @@
</u-modal> </u-modal>
<u-cell v-for="(item,index) in hiddenFindPeople" :key="index"> <u-cell v-for="(item,index) in hiddenFindPeople" :key="index">
<view slot="title" class="title">隐患发现人</view> <view slot="title" class="title">隐患发现人</view>
<view slot="value">{{ item.NAME }}</view> <view slot="value">{{ item.userName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患发现时间</view> <view slot="title" class="title">隐患发现时间</view>
<view slot="value">{{ form.DISCOVERYTIME }}</view> <view slot="value">{{ form.discoverytime }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">整改类型</view> <view slot="title" class="title">整改类型</view>
<view slot="value"> <view slot="value">
<template v-if="form.RECTIFICATIONTYPE=='1'"></template> <template v-if="form.rectificationtype === '1'"></template>
<template v-else-if="form.RECTIFICATIONTYPE=='2'">限期整改</template> <template v-else-if="form.rectificationtype === '2'">限期整改</template>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="form.RECTIFICATIONTYPE=='1'"> <u-cell v-if="form.rectificationtype === '1'">
<view slot="title" class="title">整改描述</view> <view slot="title" class="title">整改描述</view>
<view slot="value">{{ form.RECTIFYDESCR }}</view> <view slot="value">{{ form.rectifydescr }}</view>
</u-cell> </u-cell>
<u-cell v-if="form.SOURCE != '4'"> <u-cell v-if="form.SOURCE != '4'">
<view slot="title" class="title">整改负责部门</view> <view slot="title" class="title">整改负责部门</view>
<view slot="value">{{ form.editDeptName || form.RECTIFICATIONDEPTNAME }}</view> <view slot="value">{{ form.editDeptName || form.rectificationDeptName }}</view>
</u-cell> </u-cell>
<u-cell v-if="form.SOURCE != '4'"> <u-cell v-if="form.SOURCE != '4'">
<view slot="title" class="title">整改负责人</view> <view slot="title" class="title">整改负责人</view>
<view slot="value">{{ form.editUserName || form.RECTIFICATIONORNAME }}</view> <view slot="value">{{ form.editUserName || form.rectificationName }}</view>
</u-cell> </u-cell>
<u-cell v-if="form.RECTIFICATIONTYPE=='1'"> <u-cell v-if="form.rectificationtype === '1'">
<view slot="title" class="title">整改后图片</view> <view slot="title" class="title">整改后图片</view>
<view slot="label" class="mt-10"> <view slot="label" class="mt-10">
<view style="display: flex;flex-wrap: wrap"> <view style="display: flex;flex-wrap: wrap">
@ -154,29 +154,29 @@
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">整改完成期限</view> <view slot="title" class="title">整改完成期限</view>
<view slot="value">{{ form.editRectificationDeadline }}</view> <view slot="value">{{ form.rectificationdeadline }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">是否相关方</view> <view slot="title" class="title">是否相关方</view>
<view slot="value">{{ form.ISRELEVANT == '1' ? '是' : '否' }}</view> <view slot="value">{{ form.isrelevant === '1' ? '是' : '否' }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
<view class="card" v-for="(item,index) in hiddenExamineList" :key="index"> <view class="card" v-for="(item,index) in hiddenExamineList" :key="index">
<view class="view-title"> <view class="view-title">
<u--text text="确认信息" bold v-if="item.TYPE === 4"></u--text> <u--text text="确认信息" bold v-if="item.type === 4"></u--text>
<u--text text="延期信息" bold v-else-if="item.TYPE === 2"></u--text> <u--text text="延期信息" bold v-else-if="item.type === 2"></u--text>
<u--text text="特殊处理审核信息" bold v-else-if="item.TYPE === 1"></u--text> <u--text text="特殊处理审核信息" bold v-else-if="item.type === 1"></u--text>
</view> </view>
<view class="mt-10"> <view class="mt-10">
<u-cell-group :border="false" v-if="item.TYPE === 4"> <u-cell-group :border="false" v-if="item.type === 4">
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ item.editLevelName }}</view> <view slot="value">{{ item.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">整改负责人</view> <view slot="title" class="title">整改负责人</view>
<view slot="value">{{ item.editUserName }}</view> <view slot="value">{{ item.spare2Name }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">整改完成期限</view> <view slot="title" class="title">整改完成期限</view>
@ -184,11 +184,11 @@
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患确认人</view> <view slot="title" class="title">隐患确认人</view>
<view slot="value">{{ form.conUserName }}</view> <view slot="value">{{ form.confirmUserName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患确认时间</view> <view slot="title" class="title">隐患确认时间</view>
<view slot="value">{{ form.CONFIRM_TIME }}</view> <view slot="value">{{ form.confirmTime }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
@ -196,43 +196,43 @@
<u-cell-group :border="false" v-if="item.TYPE === 2"> <u-cell-group :border="false" v-if="item.TYPE === 2">
<u-cell> <u-cell>
<view slot="title" class="title">申请延期日期</view> <view slot="title" class="title">申请延期日期</view>
<view slot="value">{{ item.CREATTIME }}</view> <view slot="value">{{ item.creattime }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">审核人</view> <view slot="title" class="title">审核人</view>
<view slot="value">{{ form.conUserName }}</view> <view slot="value">{{ form.confirmUserName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">延期日期</view> <view slot="title" class="title">延期日期</view>
<view slot="value">{{ item.DELAY_TIME }}</view> <view slot="value">{{ item.DELAY_TIME }}</view>
</u-cell> </u-cell>
<u-cell v-if="item.DISPOSAL_PLAN"> <u-cell v-if="item.disposalPlan">
<view slot="title" class="title">处置方案</view> <view slot="title" class="title">处置方案</view>
<view slot="value">{{ item.DISPOSAL_PLAN }}</view> <view slot="value">{{ item.disposalPlan }}</view>
</u-cell> </u-cell>
<u-cell v-if="item.DISPOSAL_FILE"> <u-cell v-if="item.disposalFile">
<view slot="title" class="title">方案附件</view> <view slot="title" class="title">方案附件</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(item.DISPOSAL_FILE)"></u-button> @click="downloadAppendix(item.disposalFile)"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">延期审核状态</view> <view slot="title" class="title">延期审核状态</view>
<view slot="value"> <view slot="value">
<template v-if="item.STATE === -1"></template> <template v-if="item.state === -1"></template>
<template v-else-if="item.STATE === 1">通过</template> <template v-else-if="item.state === 1">通过</template>
<template v-else-if="item.STATE === 2">未通过</template> <template v-else-if="item.state === 2">未通过</template>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="item.STATE === 1"> <u-cell v-if="item.state === 1">
<view slot="title" class="title">审核时间</view> <view slot="title" class="title">审核时间</view>
<view slot="value">{{ item.OPERATTIME }}</view> <view slot="value">{{ item.operattime }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
<view class="mt-10"> <view class="mt-10">
<u-cell-group :border="false" v-if="item.TYPE === 1"> <u-cell-group :border="false" v-if="item.type === 1">
<u-cell> <u-cell>
<view slot="title" class="title">无法整改原因</view> <view slot="title" class="title">无法整改原因</view>
<view slot="value">{{ item.EXAMINE }}</view> <view slot="value">{{ item.EXAMINE }}</view>
@ -240,24 +240,24 @@
<u-cell> <u-cell>
<view slot="title" class="title">特殊处置审核状态</view> <view slot="title" class="title">特殊处置审核状态</view>
<view slot="value"> <view slot="value">
<template v-if="item.STATE === -1"></template> <template v-if="item.state === -1"></template>
<template v-else-if="item.STATE === 2">通过</template> <template v-else-if="item.state === 2">通过</template>
<template v-else-if="item.STATE === 1">未通过</template> <template v-else-if="item.state === 1">未通过</template>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="item.STATE!==-1"> <u-cell v-if="item.state!==-1">
<view slot="title" class="title">审核时间</view> <view slot="title" class="title">审核时间</view>
<view slot="value">{{ item.OPERATTIME }}</view> <view slot="value">{{ item.operattime }}</view>
</u-cell> </u-cell>
<u-cell v-if="item.EXAMINE"> <u-cell v-if="item.EXAMINE">
<view slot="title" class="title">处置方案</view> <view slot="title" class="title">处置方案</view>
<view slot="value">{{ item.DISPOSAL_PLAN }}</view> <view slot="value">{{ item.disposalPlan }}</view>
</u-cell> </u-cell>
<u-cell v-if="item.DISPOSAL_FILE"> <u-cell v-if="item.disposalFile">
<view slot="title" class="title">方案附件</view> <view slot="title" class="title">方案附件</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(item.DISPOSAL_FILE)"></u-button> @click="downloadAppendix(item.disposalFile)"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="item.STATE!==-1"> <u-cell v-if="item.STATE!==-1">
@ -266,7 +266,7 @@
</u-cell> </u-cell>
<u-cell v-if="item.spare2"> <u-cell v-if="item.spare2">
<view slot="title" class="title">更换整改负责人姓名</view> <view slot="title" class="title">更换整改负责人姓名</view>
<view slot="value">{{ form.editUserName || form.RECTIFICATIONORNAME }}</view> <view slot="value">{{ form.editUserName || form.newRectificationor }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
@ -275,12 +275,12 @@
</template> </template>
<script> <script>
import {getHiddenGoEdit} from "../../../api"; import {getHiddenGoEdit} from "@/api";
export default { export default {
data() { data() {
return { return {
HIDDEN_ID: '', hiddenId: '',
form: {}, form: {},
hImgs: [], hImgs: [],
rImgs: [], rImgs: [],
@ -291,33 +291,28 @@ export default {
} }
}, },
onLoad(event) { onLoad(event) {
this.HIDDEN_ID = event.HIDDEN_ID; this.hiddenId = event.hiddenId;
this.getData() this.getData()
}, },
methods: { methods: {
async getData() { async getData() {
let resData = await getHiddenGoEdit({HIDDEN_ID: this.HIDDEN_ID}); let { data } = await getHiddenGoEdit({id: this.hiddenId});
console.log(resData); this.form = data;
this.form = resData.pd; this.hiddenFindPeople = data?.acceptor;
this.hiddenFindPeople = resData.hiddenFindPeople; this.hiddenExamineList = data?.examines;
this.hiddenExamineList = resData.hiddenExa this.hImgs = this.findAPicture(resData.data?.files, 3);
for (let i = 0; i < resData.hImgs.length; i++) { this.rImgs = this.findAPicture(resData.data?.files, 4);
this.hImgs.push(this.$store.state.filePath + resData.hImgs[i].FILEPATH) if (resData.hiddenVideo.length > 0) this.videoUrl = this.findAPicture(resData.data?.files, 102)?.[0];
} // if (resData.hiddenExa.length > 0) {
for (let i = 0; i < resData.rImgs.length; i++) { // resData.hiddenExa.forEach(item => {
this.rImgs.push(this.$store.state.filePath + resData.rImgs[i].FILEPATH) // if (item.TYPE == 4) {
} // this.form.editUserName = item.editUserName
if (resData.hiddenVideo.length > 0) this.videoUrl = this.$store.state.filePath + resData.hiddenVideo[0].FILEPATH // this.form.editDeptName = item.editDeptName
if (resData.hiddenExa.length > 0) { // this.form.editLevelName = item.editLevelName
resData.hiddenExa.forEach(item => { // this.form.editRectificationDeadline = item.spare3
if (item.TYPE == 4) { // }
this.form.editUserName = item.editUserName // })
this.form.editDeptName = item.editDeptName // }
this.form.editLevelName = item.editLevelName
this.form.editRectificationDeadline = item.spare3
}
})
}
}, },
previewImage(list, current) { previewImage(list, current) {
@ -336,6 +331,15 @@ export default {
}, },
}); });
}, },
findAPicture(files, type) {
const result = [];
files?.forEach((item) => {
if (item?.type === type) {
result.push(this.$store.state.filePath + item.filepath);
}
});
return result.length > 0 ? result : null;
}
}, },
} }
</script> </script>

View File

@ -5,7 +5,7 @@
prefixIcon="search" prefixIcon="search"
placeholder="请输入关键字" placeholder="请输入关键字"
border="surround" border="surround"
v-model="KEYWORDS" v-model="companyName"
clearable clearable
shape="circle" shape="circle"
></u--input> ></u--input>
@ -18,21 +18,21 @@
<u-list-item v-for="(item, index) in list" :key="index"> <u-list-item v-for="(item, index) in list" :key="index">
<view> <view>
<view class="flex-between main-title"> <view class="flex-between main-title">
<text>{{ item.CORP_NAME }}</text> <text>{{ item.companyName }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text> <text>
属地 属地
<template v-if="item.CITY_NAME">{{ item.CITY_NAME }}</template> <template v-if="item.companyCity">{{ item.companyCity }}</template>
<template v-if="item.COUNTRY_NAME"> --{{ item.COUNTRY_NAME }}</template> <template v-if="item.companyArea"> --{{ item.companyArea }}</template>
</text> </text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>特殊处置隐患数{{ item.qwCount + item.xwCount }}</text> <text>特殊处置隐患数{{ item.minorHiddenCount + item.generalHiddenCount }}</text>
</view> </view>
<view class="see_btn"> <view class="see_btn">
<u-button type="primary" text="查看" size="mini" @click="fnNavigatorDetail(item.CORPINFO_ID)"></u-button> <u-button type="primary" text="查看" size="mini" @click="fnNavigatorDetail(item.companyId)"></u-button>
</view> </view>
</view> </view>
</u-list-item> </u-list-item>
@ -42,14 +42,14 @@
</template> </template>
<script> <script>
import {getSpecialCountByCorpInfo} from "../../../api"; import {getSpecialCountByCorpInfo} from "@/api";
export default { export default {
data() { data() {
return { return {
KEYWORDS: '', companyName: '',
pageSize: 10, limit: 10,
currentPage: 1, curPage: 1,
totalPage: 0, totalPage: 0,
list: [{}], list: [{}],
} }
@ -59,31 +59,31 @@ export default {
}, },
methods:{ methods:{
async getData(){ async getData(){
let resData = await getSpecialCountByCorpInfo({ let { page } = await getSpecialCountByCorpInfo({
KEYWORDS: this.KEYWORDS, companyName: this.companyName,
showCount: this.pageSize, limit: this.limit,
currentPage: this.currentPage, curPage: this.curPage,
}); });
this.list = [...this.list,...resData.varList]; this.list = [ ...this.list, ...page.list ];
this.totalPage = resData.page.totalPage; this.totalPage = page.totalPage;
}, },
resetList() { resetList() {
this.pageSize= 10 this.limit= 10
this.currentPage= 1 this.curPage= 1
this.list = [] this.list = []
this.getData() this.getData()
}, },
fnNavigatorDetail(CORPINFO_ID){ fnNavigatorDetail(companyId){
uni.$u.route({ uni.$u.route({
url: '/pages/general-hidden-management/special-hidden/detail-list', url: '/pages/general-hidden-management/special-hidden/detail-list',
params: { params: {
CORPINFO_ID, companyId,
} }
}) })
}, },
scrolltolower() { scrolltolower() {
this.currentPage++; this.curPage++;
if(this.totalPage >= this.currentPage) this.getData(); if(this.totalPage >= this.curPage) this.getData();
}, },
} }
} }

View File

@ -5,7 +5,7 @@
prefixIcon="search" prefixIcon="search"
placeholder="请输入关键字" placeholder="请输入关键字"
border="surround" border="surround"
v-model="keyword" v-model="hiddendescr"
clearable clearable
shape="circle" shape="circle"
></u--input> ></u--input>
@ -16,25 +16,25 @@
<u-list-item v-for="(item, index) in list" :key="index"> <u-list-item v-for="(item, index) in list" :key="index">
<view> <view>
<view class="flex-between main-title"> <view class="flex-between main-title">
<text>{{ item.HIDDENDESCR }}</text> <text>{{ item.hiddendescr }}</text>
<text>发现人{{ item.CREATORNAME }}</text> <text>发现人{{ item.discoverPeople }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>分公司部门领导小组长{{item.CONFIRM_USER_NAME}}</text> <text>分公司部门领导小组长{{item.confirmUserName}}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>分公司安委会办公室主任{{item.CHECKER}}</text> <text>分公司安委会办公室主任{{item.verifyUser}}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>港股公司安委会办公室副主任{{item.APPROVED}}</text> <text>港股公司安委会办公室副主任{{item.verifyUserHK}}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>隐患级别{{item.NAME}}</text> <text>隐患级别{{item.hiddenlevelName}}</text>
</view> </view>
<view class="see_btn"> <view class="see_btn">
<u-button type="primary" text="查看" size="mini" <u-button type="primary" text="查看" size="mini"
@click="fnNavigatorDetail(item.HIDDEN_ID)"></u-button> @click="fnNavigatorDetail(item.hiddenId)"></u-button>
</view> </view>
</view> </view>
</u-list-item> </u-list-item>
@ -44,54 +44,54 @@
</template> </template>
<script> <script>
import {getDept, getHiddenType, getMajorHiddenList, getMoreHiddenList} from "../../../api"; import {getMajorHiddenList} from "@/api";
import tkiTree from "@/components/tki-tree/tki-tree.vue" import tkiTree from "@/components/tki-tree/tki-tree.vue"
export default { export default {
components: {tkiTree}, components: {tkiTree},
data() { data() {
return { return {
keyword: '', hiddendescr: '',
pageSize: 10, limit: 10,
currentPage: 1, curPage: 1,
totalPage: 0, totalPage: 0,
list: [], list: [],
CORPINFO_ID: '', companyId: '',
} }
}, },
onLoad(event) { onLoad(event) {
this.CORPINFO_ID = event.CORPINFO_ID; this.companyId = event.companyId;
this.resetList() this.resetList()
}, },
methods: { methods: {
async getData() { async getData() {
let resData = await getMoreHiddenList({ let { page } = await getMajorHiddenList({
CORPINFO_ID: this.CORPINFO_ID, companyId: this.companyId,
HIDDENLEVEL: 'jdyh001', hiddenlevel: 'hiddenLevel2002',
KEYWORDS: this.keyword, hiddendescr: this.hiddendescr,
showCount: this.pageSize, limit: this.limit,
currentPage: this.currentPage, curPage: this.curPage,
}); });
this.list = [...this.list, ...resData.varList]; this.list = [...this.list, ...page.list];
this.totalPage = resData.page.totalPage; this.totalPage = page.totalPage;
}, },
resetList() { resetList() {
this.pageSize = 10 this.limit = 10
this.currentPage = 1 this.curPage = 1
this.list = [] this.list = []
this.getData() this.getData()
}, },
fnNavigatorDetail(HIDDEN_ID) { fnNavigatorDetail(hiddenId) {
uni.$u.route({ uni.$u.route({
url: '/pages/larger-major-hidden-management/larger-hidden-management/detail', url: '/pages/larger-major-hidden-management/larger-hidden-management/detail',
params: { params: {
HIDDEN_ID, hiddenId,
} }
}) })
}, },
scrolltolower() { scrolltolower() {
this.currentPage++; this.curPage++;
if (this.totalPage >= this.currentPage) this.getData(); if (this.totalPage >= this.curPage) this.getData();
}, },
} }
} }

View File

@ -8,80 +8,80 @@
<u-cell> <u-cell>
<view slot="title" class="title">隐患来源</view> <view slot="title" class="title">隐患来源</view>
<view slot="value"> <view slot="value">
<template v-if="form.SOURCE=='1'"> <template v-if="form.source === '1'">
隐患快报 隐患快报
</template> </template>
<template v-else-if="form.SOURCE=='2'"> <template v-else-if="form.source === '2'">
清单排查 清单排查
</template> </template>
<template v-else-if="form.SOURCE=='3'"> <template v-else-if="form.source === '3'">
清单排查 清单排查
</template> </template>
<template v-else-if="form.SOURCE=='8'"> <template v-else-if="form.source === '8'">
点检隐患 点检隐患
</template> </template>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患描述</view> <view slot="title" class="title">隐患描述</view>
<view slot="label" class="mt-10">{{ form.HIDDENDESCR }}</view> <view slot="label" class="mt-10">{{ form.hiddendescr }}</view>
</u-cell> </u-cell>
<template v-if="form.SOURCE=='2'"> <template v-if="form.source === '2'">
<u-cell> <u-cell>
<view slot="title" class="title">风险点单元</view> <view slot="title" class="title">风险点单元</view>
<view slot="value">{{ form.RISK_UNIT }}</view> <view slot="value">{{ form.riskUnit }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">辨识部位</view> <view slot="title" class="title">辨识部位</view>
<view slot="value">{{ form.IDENTIFICATION }}</view> <view slot="value">{{ form.identification }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">存在风险</view> <view slot="title" class="title">存在风险</view>
<view slot="value">{{ form.RISK_DESCR }}</view> <view slot="value">{{ form.riskDescr }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">风险分级</view> <view slot="title" class="title">风险分级</view>
<view slot="value">{{ form.LEVEL }}</view> <view slot="value">{{ form.level }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">检查内容</view> <view slot="title" class="title">检查内容</view>
<view slot="value">{{ form.CHECK_CONTENT }}</view> <view slot="value">{{ form.checkContent }}</view>
</u-cell> </u-cell>
</template> </template>
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.HIDDENLEVELNAME }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患状态</view> <view slot="title" class="title">隐患状态</view>
<view slot="value"> <view slot="value">
<template v-if="form.STATE=='13'"></template> <template v-if="form.state === '13'"></template>
<template v-else-if="form.STATE=='14'">待验收</template> <template v-else-if="form.state === '14'">待验收</template>
<template v-else-if="form.STATE=='15'">已归档</template> <template v-else-if="form.state === '15'">已归档</template>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患类型</view> <view slot="title" class="title">隐患类型</view>
<view slot="value">{{ form.HIDDENTYPENAME }}</view> <view slot="value">{{ form.hiddenTypeName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患部位</view> <view slot="title" class="title">隐患部位</view>
<view slot="value">{{ form.hregionName }}</view> <view slot="value">{{ form.hiddenpartStr || info.hiddenpart }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患上报位置</view> <view slot="title" class="title">隐患上报位置</view>
<view slot="label" class="mt-10"> <view slot="label" class="mt-10">
<view> <view>
经度:{{ form.LONGITUDE }} 经度:{{ form.longitude }}
</view> </view>
<view> <view>
纬度:{{ form.LATITUDE }} 纬度:{{ form.latitude }}
</view> </view>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患位置描述</view> <view slot="title" class="title">隐患位置描述</view>
<view slot="value">{{ form.POSITIONDESC }}</view> <view slot="value">{{ form.positiondesc }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患照片</view> <view slot="title" class="title">隐患照片</view>
@ -106,15 +106,22 @@
</u-modal> </u-modal>
<u-cell> <u-cell>
<view slot="title" class="title">是否相关方</view> <view slot="title" class="title">是否相关方</view>
<view slot="value">{{ form.ISRELEVANT == '1' ? '是' : '否' }}</view> <view slot="value">{{ form.isrelevant === '1' ? '是' : '否' }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患发现人</view> <view slot="title" class="title">隐患发现人</view>
<view slot="value">{{ form.CREATORNAME }}</view> <view slot="value">
{{
hiddenFindPeople
.map((item) => item.userName)
.filter(Boolean)
.join("、") || info.creatorName
}}
</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患发现时间</view> <view slot="title" class="title">隐患发现时间</view>
<view slot="value">{{ form.DISCOVERYTIME }}</view> <view slot="value">{{ form.discoverytime }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
@ -125,29 +132,29 @@
<u-cell-group :border="false"> <u-cell-group :border="false">
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.HIDDENLEVELNAME }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell v-if="majorinforPdf"> <u-cell v-if="majorinforPdf?.[0]">
<view slot="title" class="title">临时处置信息</view> <view slot="title" class="title">临时处置信息</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(majorinforPdf.FILEPATH)"></u-button> @click="downloadAppendix(majorinforPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="supplementPdf"> <u-cell v-if="supplementPdf?.[0]">
<view slot="title" class="title">补充重大隐患信息</view> <view slot="title" class="title">补充重大隐患信息</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(supplementPdf.FILEPATH)"></u-button> @click="downloadAppendix(supplementPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患确认人</view> <view slot="title" class="title">隐患确认人</view>
<view slot="value">{{ form.conUserName }}</view> <view slot="value">{{ form.confirmUserName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患确认时间</view> <view slot="title" class="title">隐患确认时间</view>
<view slot="value">{{ form.CONFIRM_TIME }}</view> <view slot="value">{{ form.confirmTime }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
@ -158,33 +165,33 @@
<u-cell-group :border="false"> <u-cell-group :border="false">
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.HIDDENLEVELNAME }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell v-if="safetyofficePdf"> <u-cell v-if="safetyofficePdf?.[0]">
<view slot="title" class="title">安委会办公室会议记录</view> <view slot="title" class="title">安委会办公室会议记录</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(safetyofficePdf.FILEPATH)"></u-button> @click="downloadAppendix(safetyofficePdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="majorapprovedPdf"> <u-cell v-if="majorapprovedPdf?.[0]">
<view slot="title" class="title">整改建议及方案</view> <view slot="title" class="title">整改建议及方案</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(majorapprovedPdf.FILEPATH)"></u-button> @click="downloadAppendix(majorapprovedPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核对结果</view> <view slot="title" class="title">核对结果</view>
<view slot="value">{{ resultslist.CHECKRESULTS == 2 ? '核对确定' : '' }}</view> <view slot="value">{{ resultslist.checkresults === '2' ? '核对确定' : '' }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核实人</view> <view slot="title" class="title">核实人</view>
<view slot="value">{{ resultslist.CHECKER }}</view> <view slot="value">{{ resultslist.checker }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核实时间</view> <view slot="title" class="title">核实时间</view>
<view slot="value">{{ resultslist.CHECK_TIME }}</view> <view slot="value">{{ resultslist.checkTime }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
@ -195,63 +202,63 @@
<u-cell-group :border="false"> <u-cell-group :border="false">
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.HIDDENLEVELNAME }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核定人</view> <view slot="title" class="title">核定人</view>
<view slot="value">{{ resultslist.APPROVED }}</view> <view slot="value">{{ resultslist.approved || resultslist.checker }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核定时间</view> <view slot="title" class="title">核定时间</view>
<view slot="value">{{ resultslist.APPROVED_TIME }}</view> <view slot="value">{{ resultslist.approvedTime }}</view>
</u-cell> </u-cell>
<u-cell v-if="reportPdf"> <u-cell v-if="reportPdf?.[0]">
<view slot="title" class="title">隐患调查报告</view> <view slot="title" class="title">隐患调查报告</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(reportPdf.FILEPATH)"></u-button> @click="downloadAppendix(reportPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="resolutionPdf"> <u-cell v-if="resolutionPdf?.[0]">
<view slot="title" class="title">安委会或党委会决议记录</view> <view slot="title" class="title">安委会或党委会决议记录</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(resolutionPdf.FILEPATH)"></u-button> @click="downloadAppendix(resolutionPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
<view class="card" v-if="form.STATE >='14'"> <view class="card" v-if="form.state >='14'">
<view class="view-title"> <view class="view-title">
<u--text text="整改信息" bold></u--text> <u--text text="整改信息" bold></u--text>
</view> </view>
<u-cell-group :border="false"> <u-cell-group :border="false">
<u-cell> <u-cell>
<view slot="title" class="title">整改部门</view> <view slot="title" class="title">整改部门</view>
<view slot="value">{{ form.RECTIFICATIONDEPTNAME }}</view> <view slot="value">{{ form.rectificationDeptName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">验收时间</view> <view slot="title" class="title">整改人</view>
<view slot="value">{{ form.RECTIFICATIONORNAME }}</view> <view slot="value">{{ form.rectificationName }}</view>
</u-cell> </u-cell>
<u-cell v-if="rectificationPdf"> <u-cell v-if="rectificationPdf?.[0]">
<view slot="title" class="title">临时处置措施与隐患整改方案</view> <view slot="title" class="title">临时处置措施与隐患整改方案</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(rectificationPdf.FILEPATH)"></u-button> @click="downloadAppendix(rectificationPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="processPdf"> <u-cell v-if="processPdf?.[0]">
<view slot="title" class="title">隐患整改过程记录</view> <view slot="title" class="title">隐患整改过程记录</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(processPdf.FILEPATH)"></u-button> @click="downloadAppendix(processPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
<view class="card" v-if="form.STATE =='15'"> <view class="card" v-if="form.state === '15'">
<view class="view-title"> <view class="view-title">
<u--text text="验收信息" bold></u--text> <u--text text="验收信息" bold></u--text>
</view> </view>
@ -274,12 +281,12 @@
</template> </template>
<script> <script>
import {getHiddenGoEdit} from "../../../api"; import {getHiddenGoEdit} from "@/api";
export default { export default {
data() { data() {
return { return {
HIDDEN_ID: '', hiddenId: '',
form: {}, form: {},
hImgs: [], hImgs: [],
videoUrl: '', videoUrl: '',
@ -293,38 +300,29 @@ export default {
resolutionPdf:{}, resolutionPdf:{},
rectificationPdf:{}, rectificationPdf:{},
processPdf:{}, processPdf:{},
hiddenFindPeople: [],
} }
}, },
onLoad(event) { onLoad(event) {
this.HIDDEN_ID = event.HIDDEN_ID; this.hiddenId = event.hiddenId;
this.getData() this.getData()
}, },
methods: { methods: {
async getData() { async getData() {
let resData = await getHiddenGoEdit({HIDDEN_ID: this.HIDDEN_ID}); let resData = await getHiddenGoEdit({ id: this.hiddenId });
this.form = resData.pd; this.form = resData.data;
this.resultslist = resData.resultslist this.hiddenFindPeople = resData.data?.acceptor;
this.majorinforPdf = resData.majorinforPdf && resData.majorinforPdf[0] this.resultslist = resData.data?.major?.[0] || {};
this.majorapprovedPdf = resData.majorapprovedPdf && resData.majorapprovedPdf[0] this.majorinforPdf = this.findAPicture(resData.data?.files, 106);
this.resolutionPdf = resData.resolutionPdf && resData.resolutionPdf[0] this.majorapprovedPdf = this.findAPicture(resData.data?.files, 107);
this.rectificationPdf = resData.rectificationPdf && resData.rectificationPdf[0] this.resolutionPdf = this.findAPicture(resData.data?.files, 109);
this.processPdf = resData.processPdf && resData.processPdf[0] this.rectificationPdf = this.findAPicture(resData.data?.files, 110);
this.reportPdf = resData.reportPdf && resData.reportPdf[0] this.processPdf = this.findAPicture(resData.data?.files, 111);
this.supplementPdf = resData.supplementPdf && resData.supplementPdf[0] this.reportPdf = this.findAPicture(resData.data?.files, 108);
this.safetyofficePdf = resData.safetyofficePdf && resData.safetyofficePdf[0] this.supplementPdf = this.findAPicture(resData.data?.files, 112);
console.log(this.safetyofficePdf) this.safetyofficePdf = this.findAPicture(resData.data?.files, 113);
for (let i = 0; i < resData.hImgs.length; i++) { this.hImgs = this.findAPicture(resData.data?.files, 3);
this.hImgs.push(this.$store.state.filePath + resData.hImgs[i].FILEPATH) this.videoUrl = this.findAPicture(resData.data?.files, 102)?.[0];
}
this.videoUrl = this.$store.state.filePath + resData.hiddenVideo[0].FILEPATH
resData.hiddenExa && resData.hiddenExa.forEach(item => {
if (item.TYPE == 0) {
this.form.oldUserName = item.editUserName
this.form.oldDeptName = item.editDeptName
this.form.oldLevelName = item.editLevelName
this.form.oldRectificationDeadline = item.spare3
}
})
}, },
previewImage(list,current) { previewImage(list,current) {
uni.previewImage({ uni.previewImage({
@ -342,6 +340,15 @@ export default {
}, },
}); });
}, },
findAPicture(files, type) {
const result = [];
files?.forEach((item) => {
if (item?.type === type) {
result.push(this.$store.state.filePath + item.filepath);
}
});
return result.length > 0 ? result : null;
}
}, },
} }
</script> </script>

View File

@ -5,7 +5,7 @@
prefixIcon="search" prefixIcon="search"
placeholder="请输入关键字" placeholder="请输入关键字"
border="surround" border="surround"
v-model="KEYWORDS" v-model="companyName"
clearable clearable
shape="circle" shape="circle"
></u--input> ></u--input>
@ -18,21 +18,21 @@
<u-list-item v-for="(item, index) in list" :key="index"> <u-list-item v-for="(item, index) in list" :key="index">
<view> <view>
<view class="flex-between main-title"> <view class="flex-between main-title">
<text>{{ item.CORP_NAME }}</text> <text>{{ item.companyName }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text> <text>
属地 属地
<template v-if="item.CITY_NAME">{{ item.CITY_NAME }}</template> <template v-if="item.companyCity">{{ item.companyCity }}</template>
<template v-if="item.COUNTRY_NAME"> --{{ item.COUNTRY_NAME }}</template> <template v-if="item.companyArea"> --{{ item.companyArea }}</template>
</text> </text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>较大隐患数{{item.jdCount}}</text> <text>较大隐患数{{item.majorHiddenNum}}</text>
</view> </view>
<view class="see_btn"> <view class="see_btn">
<u-button type="primary" text="查看" size="mini" @click="fnNavigatorDetail(item.CORPINFO_ID)"></u-button> <u-button type="primary" text="查看" size="mini" @click="fnNavigatorDetail(item.companyId)"></u-button>
</view> </view>
</view> </view>
</u-list-item> </u-list-item>
@ -42,14 +42,14 @@
</template> </template>
<script> <script>
import {getMajorCountByCorpInfo} from "../../../api"; import {getLargerCountByCorpInfo} from "@/api";
export default { export default {
data() { data() {
return { return {
KEYWORDS: '', companyName: '',
pageSize: 10, limit: 10,
currentPage: 1, curPage: 1,
totalPage: 0, totalPage: 0,
list: [], list: [],
} }
@ -59,31 +59,31 @@ export default {
}, },
methods:{ methods:{
async getData(){ async getData(){
let resData = await getMajorCountByCorpInfo({ let { page } = await getLargerCountByCorpInfo({
KEYWORDS: this.KEYWORDS, companyName: this.companyName,
showCount: this.pageSize, limit: this.limit,
currentPage: this.currentPage, curPage: this.curPage,
}); });
this.list = [...this.list,...resData.varList]; this.list = [...this.list,...page.list];
this.totalPage = resData.page.totalPage; this.totalPage = page.totalPage;
}, },
resetList() { resetList() {
this.pageSize= 10 this.limit= 10
this.currentPage= 1 this.curPage= 1
this.list = [] this.list = []
this.getData() this.getData()
}, },
fnNavigatorDetail(CORPINFO_ID){ fnNavigatorDetail(companyId){
uni.$u.route({ uni.$u.route({
url: '/pages/larger-major-hidden-management/larger-hidden-management/detail-list', url: '/pages/larger-major-hidden-management/larger-hidden-management/detail-list',
params: { params: {
CORPINFO_ID, companyId,
} }
}) })
}, },
scrolltolower() { scrolltolower() {
this.currentPage++; this.curPage++;
if(this.totalPage >= this.currentPage) this.getData(); if(this.totalPage >= this.curPage) this.getData();
}, },
} }
} }

View File

@ -5,7 +5,7 @@
prefixIcon="search" prefixIcon="search"
placeholder="请输入关键字" placeholder="请输入关键字"
border="surround" border="surround"
v-model="keyword" v-model="hiddendescr"
clearable clearable
shape="circle" shape="circle"
></u--input> ></u--input>
@ -17,25 +17,25 @@
<u-list-item v-for="(item, index) in list" :key="index"> <u-list-item v-for="(item, index) in list" :key="index">
<view> <view>
<view class="flex-between main-title"> <view class="flex-between main-title">
<text>{{ item.HIDDENDESCR }}</text> <text>{{ item.hiddendescr }}</text>
<text>发现人{{ item.CREATORNAME }}</text> <text>发现人{{ item.discoverPeople }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>分公司部门领导小组长{{ item.CONFIRM_USER_NAME }}</text> <text>分公司部门领导小组长{{ item.confirmUserName }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>分公司安委会办公室主任{{ item.CHECKER }}</text> <text>分公司安委会办公室主任{{ item.verifyUser }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>港股公司安委会办公室副主任{{ item.APPROVED }}</text> <text>港股公司安委会办公室副主任{{ item.verifyUserHK }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>隐患级别{{ item.NAME }}</text> <text>隐患级别{{ item.hiddenlevelName }}</text>
</view> </view>
<view class="see_btn"> <view class="see_btn">
<u-button type="primary" text="查看" size="mini" <u-button type="primary" text="查看" size="mini"
@click="fnNavigatorDetail(item.HIDDEN_ID)"></u-button> @click="fnNavigatorDetail(item.hiddenId)"></u-button>
</view> </view>
</view> </view>
</u-list-item> </u-list-item>
@ -45,54 +45,54 @@
</template> </template>
<script> <script>
import {getDept, getHiddenType, getMajorHiddenList} from "../../../api"; import {getMajorHiddenList} from "@/api";
import tkiTree from "@/components/tki-tree/tki-tree.vue" import tkiTree from "@/components/tki-tree/tki-tree.vue"
export default { export default {
components: {tkiTree}, components: {tkiTree},
data() { data() {
return { return {
keyword: '', hiddendescr: '',
pageSize: 10, limit: 10,
currentPage: 1, curPage: 1,
totalPage: 0, totalPage: 0,
list: [], list: [],
CORPINFO_ID: '', companyId: '',
} }
}, },
onLoad(event) { onLoad(event) {
this.CORPINFO_ID = event.CORPINFO_ID; this.companyId = event.companyId;
this.resetList() this.resetList()
}, },
methods: { methods: {
async getData() { async getData() {
let resData = await getMajorHiddenList({ let { page } = await getMajorHiddenList({
CORPINFO_ID: this.CORPINFO_ID, companyId: this.companyId,
HIDDENLEVEL: 'hiddenLevel2002', hiddenlevel: 'hiddenLevel2002',
KEYWORDS: this.keyword, hiddendescr: this.hiddendescr,
showCount: this.pageSize, limit: this.limit,
currentPage: this.currentPage, curPage: this.curPage,
}); });
this.list = [...this.list, ...resData.varList]; this.list = [...this.list, ...page.list];
this.totalPage = resData.page.totalPage; this.totalPage = page.totalPage;
}, },
resetList() { resetList() {
this.pageSize = 10 this.limit = 10
this.currentPage = 1 this.curPage = 1
this.list = [] this.list = []
this.getData() this.getData()
}, },
fnNavigatorDetail(HIDDEN_ID) { fnNavigatorDetail(hiddenId) {
uni.$u.route({ uni.$u.route({
url: '/pages/larger-major-hidden-management/major-hidden-management/detail', url: '/pages/larger-major-hidden-management/major-hidden-management/detail',
params: { params: {
HIDDEN_ID, hiddenId,
} }
}) })
}, },
scrolltolower() { scrolltolower() {
this.currentPage++; this.curPage++;
if (this.totalPage >= this.currentPage) this.getData(); if (this.totalPage >= this.curPage) this.getData();
}, },
} }
} }

View File

@ -8,49 +8,49 @@
<u-cell> <u-cell>
<view slot="title" class="title">隐患来源</view> <view slot="title" class="title">隐患来源</view>
<view slot="value"> <view slot="value">
<template v-if="form.SOURCE=='1'"> <template v-if="form.source === '1'">
隐患快报 隐患快报
</template> </template>
<template v-else-if="form.SOURCE=='2'"> <template v-else-if="form.source === '2'">
清单排查 清单排查
</template> </template>
<template v-else-if="form.SOURCE=='3'"> <template v-else-if="form.source === '3'">
清单排查 清单排查
</template> </template>
<template v-else-if="form.SOURCE=='8'"> <template v-else-if="form.source === '8'">
点检隐患 点检隐患
</template> </template>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患描述</view> <view slot="title" class="title">隐患描述</view>
<view slot="label" class="mt-10">{{ form.HIDDENDESCR }}</view> <view slot="label" class="mt-10">{{ form.hiddendescr }}</view>
</u-cell> </u-cell>
<template v-if="form.SOURCE=='2'"> <template v-if="form.source === '2'">
<u-cell> <u-cell>
<view slot="title" class="title">风险点单元</view> <view slot="title" class="title">风险点单元</view>
<view slot="value">{{ form.RISK_UNIT }}</view> <view slot="value">{{ form.riskUnit }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">辨识部位</view> <view slot="title" class="title">辨识部位</view>
<view slot="value">{{ form.IDENTIFICATION }}</view> <view slot="value">{{ form.identification }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">存在风险</view> <view slot="title" class="title">存在风险</view>
<view slot="value">{{ form.RISK_DESCR }}</view> <view slot="value">{{ form.riskDescr }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">风险分级</view> <view slot="title" class="title">风险分级</view>
<view slot="value">{{ form.LEVEL }}</view> <view slot="value">{{ form.level }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">检查内容</view> <view slot="title" class="title">检查内容</view>
<view slot="value">{{ form.CHECK_CONTENT }}</view> <view slot="value">{{ form.checkContent }}</view>
</u-cell> </u-cell>
</template> </template>
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.HIDDENLEVELNAME }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患状态</view> <view slot="title" class="title">隐患状态</view>
@ -60,25 +60,25 @@
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患类型</view> <view slot="title" class="title">隐患类型</view>
<view slot="value">{{ form.HIDDENTYPENAME }}</view> <view slot="value">{{ form.hiddenTypeName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患部位</view> <view slot="title" class="title">隐患部位</view>
<view slot="value">{{ form.hregionName }}</view> <view slot="value">{{ form.hiddenpartStr || info.hiddenpart }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">是否是相关方</view> <view slot="title" class="title">是否是相关方</view>
<view slot="value">{{ form.ISRELEVANT==='1'?'是':'否' }}</view> <view slot="value">{{ form.isrelevant === '1'?'是':'否' }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患位置描述</view> <view slot="title" class="title">隐患位置描述</view>
<view slot="value">{{ form.POSITIONDESC }}</view> <view slot="value">{{ form.positiondesc }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患上报位置</view> <view slot="title" class="title">隐患上报位置</view>
<view slot="label" class="mt-10"> <view slot="label" class="mt-10">
<view>经度:{{ form.LONGITUDE }}</view> <view>经度:{{ form.longitude }}</view>
<view>纬度:{{ form.LATITUDE }}</view> <view>纬度:{{ form.latitude }}</view>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
@ -105,11 +105,18 @@
</u-modal> </u-modal>
<u-cell> <u-cell>
<view slot="title" class="title">隐患发现人</view> <view slot="title" class="title">隐患发现人</view>
<view slot="value">{{ form.CREATORNAME }}</view> <view slot="value">
{{
hiddenFindPeople
.map((item) => item.userName)
.filter(Boolean)
.join("、") || info.creatorName
}}
</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患发现时间</view> <view slot="title" class="title">隐患发现时间</view>
<view slot="value">{{ form.DISCOVERYTIME }}</view> <view slot="value">{{ form.discoverytime }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
@ -120,29 +127,29 @@
<u-cell-group :border="false"> <u-cell-group :border="false">
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.HIDDENLEVELNAME }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell v-if="majorinforPdf"> <u-cell v-if="majorinforPdf?.[0]">
<view slot="title" class="title">临时处置信息</view> <view slot="title" class="title">临时处置信息</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(majorinforPdf.FILEPATH)"></u-button> @click="downloadAppendix(majorinforPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="supplementPdf"> <u-cell v-if="supplementPdf?.[0]">
<view slot="title" class="title">补充重大隐患信息</view> <view slot="title" class="title">补充重大隐患信息</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(supplementPdf.FILEPATH)"></u-button> @click="downloadAppendix(supplementPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患确认人</view> <view slot="title" class="title">隐患确认人</view>
<view slot="value">{{ form.conUserName }}</view> <view slot="value">{{ form.confirmUserName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">隐患确认时间</view> <view slot="title" class="title">隐患确认时间</view>
<view slot="value">{{ form.CONFIRM_TIME }}</view> <view slot="value">{{ form.confirmTime }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
@ -153,33 +160,33 @@
<u-cell-group :border="false"> <u-cell-group :border="false">
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.HIDDENLEVELNAME }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell v-if="safetyofficePdf"> <u-cell v-if="safetyofficePdf?.[0]">
<view slot="title" class="title">安委会办公室会议记录</view> <view slot="title" class="title">安委会办公室会议记录</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(safetyofficePdf.FILEPATH)"></u-button> @click="downloadAppendix(safetyofficePdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="majorapprovedPdf"> <u-cell v-if="majorapprovedPdf?.[0]">
<view slot="title" class="title">临时处置信息</view> <view slot="title" class="title">临时处置信息</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(majorapprovedPdf.FILEPATH)"></u-button> @click="downloadAppendix(majorapprovedPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核对结果</view> <view slot="title" class="title">核对结果</view>
<view slot="value">{{ resultslist.CHECKRESULTS == 2 ? '核对确定' : '' }}</view> <view slot="value">{{ resultslist.checkresults === '2' ? '核对确定' : '' }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核实人</view> <view slot="title" class="title">核实人</view>
<view slot="value">{{ resultslist.CHECKER }}</view> <view slot="value">{{ resultslist.checker }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核实时间</view> <view slot="title" class="title">核实时间</view>
<view slot="value">{{ resultslist.CHECK_TIME }}</view> <view slot="value">{{ resultslist.checkTime }}</view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
@ -190,57 +197,57 @@
<u-cell-group :border="false"> <u-cell-group :border="false">
<u-cell> <u-cell>
<view slot="title" class="title">隐患级别</view> <view slot="title" class="title">隐患级别</view>
<view slot="value">{{ form.HIDDENLEVELNAME }}</view> <view slot="value">{{ form.hiddenlevelName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核定人</view> <view slot="title" class="title">核定人</view>
<view slot="value">{{ resultslist.APPROVED }}</view> <view slot="value">{{ resultslist.approved || resultslist.checker }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">核定时间</view> <view slot="title" class="title">核定时间</view>
<view slot="value">{{ resultslist.APPROVED_TIME }}</view> <view slot="value">{{ resultslist.approvedTime }}</view>
</u-cell> </u-cell>
<u-cell v-if="reportPdf"> <u-cell v-if="reportPdf?.[0]">
<view slot="title" class="title">隐患调查报告</view> <view slot="title" class="title">隐患调查报告</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(reportPdf.FILEPATH)"></u-button> @click="downloadAppendix(reportPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="resolutionPdf"> <u-cell v-if="resolutionPdf?.[0]">
<view slot="title" class="title">安委会或党委会决议记录</view> <view slot="title" class="title">安委会或党委会决议记录</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(resolutionPdf.FILEPATH)"></u-button> @click="downloadAppendix(resolutionPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
</view> </view>
<view class="card" v-if="form.RECTIFICATIONORNAME"> <view class="card" v-if="form.rectificationName">
<view class="view-title"> <view class="view-title">
<u--text text="较大隐患整改" bold></u--text> <u--text text="较大隐患整改" bold></u--text>
</view> </view>
<u-cell-group :border="false"> <u-cell-group :border="false">
<u-cell> <u-cell>
<view slot="title" class="title">整改部门</view> <view slot="title" class="title">整改部门</view>
<view slot="value">{{ form.RECTIFICATIONDEPTNAME }}</view> <view slot="value">{{ form.rectificationDeptName }}</view>
</u-cell> </u-cell>
<u-cell> <u-cell>
<view slot="title" class="title">整改人</view> <view slot="title" class="title">整改人</view>
<view slot="value">{{ form.RECTIFICATIONORNAME }}</view> <view slot="value">{{ form.rectificationName }}</view>
</u-cell> </u-cell>
<u-cell v-if="rectificationPdf"> <u-cell v-if="rectificationPdf?.[0]">
<view slot="title" class="title">隐患调查报告</view> <view slot="title" class="title">隐患调查报告</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(rectificationPdf.FILEPATH)"></u-button> @click="downloadAppendix(rectificationPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
<u-cell v-if="processPdf"> <u-cell v-if="processPdf?.[0]">
<view slot="title" class="title">安委会或党委会决议记录</view> <view slot="title" class="title">安委会或党委会决议记录</view>
<view slot="value"> <view slot="value">
<u-button type="primary" text="下载" size="mini" <u-button type="primary" text="下载" size="mini"
@click="downloadAppendix(processPdf.FILEPATH)"></u-button> @click="downloadAppendix(processPdf?.[0])"></u-button>
</view> </view>
</u-cell> </u-cell>
</u-cell-group> </u-cell-group>
@ -249,12 +256,12 @@
</template> </template>
<script> <script>
import {getHiddenGoEdit} from "../../../api"; import {getHiddenGoEdit} from "@/api";
export default { export default {
data() { data() {
return { return {
HIDDEN_ID: '', hiddenId: '',
form: {}, form: {},
hImgs: [], hImgs: [],
videoUrl: '', videoUrl: '',
@ -268,38 +275,29 @@ export default {
resolutionPdf: {}, resolutionPdf: {},
rectificationPdf: {}, rectificationPdf: {},
processPdf: {}, processPdf: {},
hiddenFindPeople: [],
} }
}, },
onLoad(event) { onLoad(event) {
this.HIDDEN_ID = event.HIDDEN_ID; this.hiddenId = event.hiddenId;
this.getData() this.getData()
}, },
methods: { methods: {
async getData() { async getData() {
let resData = await getHiddenGoEdit({HIDDEN_ID: this.HIDDEN_ID}); let resData = await getHiddenGoEdit({ id: this.hiddenId });
this.form = resData.pd; this.form = resData.data;
this.resultslist = resData.resultslist this.hiddenFindPeople = resData.data?.acceptor;
this.majorinforPdf = resData.majorinforPdf && resData.majorinforPdf[0] this.resultslist = resData.data?.major?.[0] || {};
this.majorapprovedPdf = resData.majorapprovedPdf && resData.majorapprovedPdf[0] this.majorinforPdf = this.findAPicture(resData.data?.files, 106);
this.resolutionPdf = resData.resolutionPdf && resData.resolutionPdf[0] this.majorapprovedPdf = this.findAPicture(resData.data?.files, 107);
this.reportPdf = resData.reportPdf && resData.reportPdf[0] this.resolutionPdf = this.findAPicture(resData.data?.files, 109);
this.rectificationPdf = resData.rectificationPdf && resData.rectificationPdf[0] this.reportPdf = this.findAPicture(resData.data?.files, 108);
this.processPdf = resData.processPdf && resData.processPdf[0] this.rectificationPdf = this.findAPicture(resData.data?.files, 110);
this.supplementPdf = resData.supplementPdf && resData.supplementPdf[0] this.processPdf = this.findAPicture(resData.data?.files, 111);
this.safetyofficePdf = resData.safetyofficePdf && resData.safetyofficePdf[0] this.supplementPdf = this.findAPicture(resData.data?.files, 112);
this.hiddenFindPeople = resData.hiddenFindPeople this.safetyofficePdf = this.findAPicture(resData.data?.files, 113);
for (let i = 0; i < resData.hImgs.length; i++) { this.hImgs = this.findAPicture(resData.data?.files, 3);
this.hImgs.push(this.$store.state.filePath + resData.hImgs[i].FILEPATH) this.videoUrl = this.findAPicture(resData.data?.files, 102)?.[0];
}
this.videoUrl = this.$store.state.filePath + resData.hiddenVideo[0].FILEPATH
resData.hiddenExa && resData.hiddenExa.forEach(item => {
if (item.TYPE == 0) {
this.form.oldUserName = item.editUserName
this.form.oldDeptName = item.editDeptName
this.form.oldLevelName = item.editLevelName
this.form.oldRectificationDeadline = item.spare3
}
})
}, },
previewImage(list, current) { previewImage(list, current) {
uni.previewImage({ uni.previewImage({
@ -317,6 +315,15 @@ export default {
}, },
}); });
}, },
findAPicture(files, type) {
const result = [];
files?.forEach((item) => {
if (item?.type === type) {
result.push(this.$store.state.filePath + item.filepath);
}
});
return result.length > 0 ? result : null;
}
}, },
} }
</script> </script>

View File

@ -5,7 +5,7 @@
prefixIcon="search" prefixIcon="search"
placeholder="请输入关键字" placeholder="请输入关键字"
border="surround" border="surround"
v-model="KEYWORDS" v-model="companyName"
clearable clearable
shape="circle" shape="circle"
></u--input> ></u--input>
@ -18,21 +18,21 @@
<u-list-item v-for="(item, index) in list" :key="index"> <u-list-item v-for="(item, index) in list" :key="index">
<view> <view>
<view class="flex-between main-title"> <view class="flex-between main-title">
<text>{{ item.CORP_NAME }}</text> <text>{{ item.companyName }}</text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text> <text>
属地 属地
<template v-if="item.CITY_NAME">{{ item.CITY_NAME }}</template> <template v-if="item.companyCity">{{ item.companyCity }}</template>
<template v-if="item.COUNTRY_NAME"> --{{ item.COUNTRY_NAME }}</template> <template v-if="item.companyArea"> --{{ item.companyArea }}</template>
</text> </text>
</view> </view>
<view class="flex-between mt-10 subtitle"> <view class="flex-between mt-10 subtitle">
<text>重大隐患数{{item.zdCount}}</text> <text>重大隐患数{{item.majorHiddenNum}}</text>
</view> </view>
<view class="see_btn"> <view class="see_btn">
<u-button type="primary" text="查看" size="mini" @click="fnNavigatorDetail(item.CORPINFO_ID)"></u-button> <u-button type="primary" text="查看" size="mini" @click="fnNavigatorDetail(item.companyId)"></u-button>
</view> </view>
</view> </view>
</u-list-item> </u-list-item>
@ -42,14 +42,14 @@
</template> </template>
<script> <script>
import {getMajorCountByCorpInfo} from "../../../api"; import {getMajorCountByCorpInfo} from "@/api";
export default { export default {
data() { data() {
return { return {
KEYWORDS: '', companyName: '',
pageSize: 10, limit: 10,
currentPage: 1, curPage: 1,
totalPage: 0, totalPage: 0,
list: [], list: [],
} }
@ -59,31 +59,31 @@ export default {
}, },
methods:{ methods:{
async getData(){ async getData(){
let resData = await getMajorCountByCorpInfo({ let { page } = await getMajorCountByCorpInfo({
KEYWORDS: this.KEYWORDS, companyName: this.companyName,
showCount: this.pageSize, limit: this.limit,
currentPage: this.currentPage, curPage: this.curPage,
}); });
this.list = [...this.list,...resData.varList]; this.list = [...this.list,...page.list];
this.totalPage = resData.page.totalPage; this.totalPage = page.totalPage;
}, },
resetList() { resetList() {
this.pageSize= 10 this.limit= 10
this.currentPage= 1 this.curPage= 1
this.list = [] this.list = []
this.getData() this.getData()
}, },
fnNavigatorDetail(CORPINFO_ID){ fnNavigatorDetail(companyId){
uni.$u.route({ uni.$u.route({
url: '/pages/larger-major-hidden-management/major-hidden-management/detail-list', url: '/pages/larger-major-hidden-management/major-hidden-management/detail-list',
params: { params: {
CORPINFO_ID, companyId,
} }
}) })
}, },
scrolltolower() { scrolltolower() {
this.currentPage++; this.curPage++;
if(this.totalPage >= this.currentPage) this.getData(); if(this.totalPage >= this.curPage) this.getData();
}, },
} }
} }