Commit 9e33fff9 authored by kaitly205422@163.com's avatar kaitly205422@163.com

添加异常处理

parent bb9a462e
...@@ -84,7 +84,7 @@ export default { ...@@ -84,7 +84,7 @@ export default {
"my-delay", "my-delay",
"risk-account", "risk-account",
"risk-confirme", "risk-confirme",
"my-delay", "my-delay"
], ],
// 'report-return', 'risk-return', 风险和隐患的上报退回不需要缓存 // 'report-return', 'risk-return', 风险和隐患的上报退回不需要缓存
}; };
...@@ -127,6 +127,7 @@ export default { ...@@ -127,6 +127,7 @@ export default {
this.cachePage.push(roterFromName); this.cachePage.push(roterFromName);
} }
} }
console.log(this.cachePage, 'cach')
}, },
}, },
watch: { watch: {
...@@ -147,6 +148,8 @@ export default { ...@@ -147,6 +148,8 @@ export default {
} else if (from.name == "risk-confirme" || to.name == "risk-confirme") { } else if (from.name == "risk-confirme" || to.name == "risk-confirme") {
// 风险确认页面缓存处理 // 风险确认页面缓存处理
this.handleCache("risk-confirme", to.name, "risk-affirm"); this.handleCache("risk-confirme", to.name, "risk-affirm");
} else if (to.name == 'taskLedger' || from.name == 'taskLedger') {
this.handleCache("riskTaskList", to.name, "taskLedger");
} }
// 列表页面动态添加缓存 // 列表页面动态添加缓存
...@@ -182,6 +185,7 @@ export default { ...@@ -182,6 +185,7 @@ export default {
body { body {
background-color: #f0f1f5; background-color: #f0f1f5;
} }
#app { #app {
font-family: "Avenir", Helvetica, Arial, sans-serif; font-family: "Avenir", Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
...@@ -196,6 +200,7 @@ body { ...@@ -196,6 +200,7 @@ body {
// background-color: #f0f1f5; // background-color: #f0f1f5;
// z-index:999999999999 // z-index:999999999999
} }
#app-content { #app-content {
box-sizing: border-box; box-sizing: border-box;
overflow: hidden; overflow: hidden;
...@@ -243,18 +248,22 @@ body { ...@@ -243,18 +248,22 @@ body {
position: absolute; position: absolute;
backface-visibility: hidden; backface-visibility: hidden;
} }
.slide-right-enter { .slide-right-enter {
opacity: 0; opacity: 0;
transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0);
} }
.slide-right-leave-active { .slide-right-leave-active {
opacity: 0; opacity: 0;
transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0);
} }
.slide-left-enter { .slide-left-enter {
opacity: 0; opacity: 0;
transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0);
} }
.slide-left-leave-active { .slide-left-leave-active {
opacity: 0; opacity: 0;
transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0);
......
...@@ -298,6 +298,11 @@ const routes = [ ...@@ -298,6 +298,11 @@ const routes = [
name: "patrolCreate", name: "patrolCreate",
component: () => import("../views/riskPatrol/patrolCancle/create.vue"), component: () => import("../views/riskPatrol/patrolCancle/create.vue"),
}, },
{
path: "/patrolCancle/detail",
name: "patrolDetail",
component: () => import("../views/riskPatrol/patrolCancle/detail.vue"),
},
// 风险巡查管理 -巡查记录 // 风险巡查管理 -巡查记录
{ {
path: "/patrolLog", path: "/patrolLog",
......
...@@ -39,5 +39,9 @@ export default { ...@@ -39,5 +39,9 @@ export default {
// 固有风险模板 // 固有风险模板
SET_INHERENT_TEMPLATE(state, data) { SET_INHERENT_TEMPLATE(state, data) {
state.inherentTemplate = data; state.inherentTemplate = data;
},
// 异常上报
SET_DANGER_DATA(state, data) {
state.danger = data;
} }
}; };
...@@ -14,5 +14,7 @@ export default { ...@@ -14,5 +14,7 @@ export default {
}, },
// 固有风险模板 // 固有风险模板
inherentTemplate: { inherentTemplate: {
} },
// 异常上报
danger: {}
}; };
<template> <template>
<div> <div>
<LHeader :text="$route.meta.title"> <LHeader :text="$route.meta.title">
<span slot="right" @click="() => this.$router.push('sign-recode')" <span slot="right" @click="() => this.$router.push('sign-recode')">签到记录</span>
>签到记录</span
>
</LHeader> </LHeader>
<van-form <van-form ref="signForm" label-width="4.5em" validate-trigger="onSubmit" :colon="true">
ref="signForm" <van-field readonly name="userName" :value="userName" label="用户名" placeholder="请输入"
label-width="4.5em" :rules="[{ required: true, message: '用户名不能为空' }]" />
validate-trigger="onSubmit" <van-field readonly name="userName" label="签定时间" placeholder="请输入" key="nowTime" :value="form.signTime">
:colon="true"
>
<van-field
readonly
name="userName"
:value="userName"
label="用户名"
placeholder="请输入"
:rules="[{ required: true, message: '用户名不能为空' }]"
/>
<van-field
readonly
name="userName"
label="签定时间"
placeholder="请输入"
key="nowTime"
:value="form.signTime"
>
<!-- <template #input> <!-- <template #input>
<div>{{ form.signTime }}</div> <div>{{ form.signTime }}</div>
</template> --> </template> -->
</van-field> </van-field>
<van-field <van-field required readonly name="projectName" :value="form.projectName" label="关联项目" placeholder="请选择"
required @click="showProject = true" :rules="[{ required: true, message: '关联项目不能为空' }]">
readonly
name="projectName"
:value="form.projectName"
label="关联项目"
placeholder="请选择"
@click="showProject = true"
:rules="[{ required: true, message: '关联项目不能为空' }]"
>
</van-field> </van-field>
<van-field <van-field required name="remark" v-model="form.remark" label="备注" placeholder="请输入" type="textarea"
required :rules="[{ required: true, message: '备注不能为空' }]">
name="remark"
v-model="form.remark"
label="备注"
placeholder="请输入"
type="textarea"
:rules="[{ required: true, message: '备注不能为空' }]"
>
</van-field> </van-field>
<van-field <van-field readonly required name="file" label="照片" :rules="[{ required: true, message: '照片不能为空' }]">
readonly
required
name="file"
label="照片"
:rules="[{ required: true, message: '照片不能为空' }]"
>
<template #input> <template #input>
<van-uploader v-model="form.file" :after-read="afterRead"> <van-uploader v-model="form.file" :after-read="afterRead">
</van-uploader> </van-uploader>
</template> </template>
</van-field> </van-field>
<div class="submit-btns"> <div class="submit-btns">
<van-button round block type="info" @click="toSign(true)" <van-button round block type="info" @click="toSign(true)">签到</van-button>
>签到</van-button <van-button round block type="warning" @click="toSign(false)">签退</van-button>
>
<van-button round block type="warning" @click="toSign(false)"
>签退</van-button
>
</div> </div>
</van-form> </van-form>
<van-popup <van-popup v-model="showProject" position="bottom" :style="{ height: '100%' }">
v-model="showProject"
position="bottom"
:style="{ height: '100%' }"
>
<selectPeople @onClose="onClose" @onSave="onSave"></selectPeople> <selectPeople @onClose="onClose" @onSave="onSave"></selectPeople>
</van-popup> </van-popup>
</div> </div>
...@@ -196,7 +147,8 @@ export default { ...@@ -196,7 +147,8 @@ export default {
.submit-btns { .submit-btns {
display: flex; display: flex;
padding: 20px 0 20px 20px; padding: 20px 0 20px 20px;
> .van-button {
>.van-button {
margin-right: 20px; margin-right: 20px;
} }
} }
......
<template>
<div class="wrap">
<LHeader :text="text"></LHeader>
<!-- 内容列表 -->
<div class="con-list">
<van-form>
<van-field v-model="form.reason" readonly label="申请原因:" name="applyReason" />
<van-field v-model="form.applyTime" readonly label="申请时间:" name="applyReason" />
<van-field v-model="form.holidayTime" readonly label="请假时间:" name="applyReason" />
</van-form>
</div>
</div>
</template>
<script type="text/ecmascript-6">
import LHeader from "@/components/header.vue";
import { getFun, postFun } from "@/service/table.js";
export default {
name: 'patrolCancle', //巡查取消
components: {
LHeader,
},
data() {
return {
id: '',
text: '巡查取消',
form: {
measures: '123',
createTime: '2022'
}
}
},
computed: {
},
watch: {
},
created() {
},
mounted() {
if (!this.$route.query.id) {
this.$toast
}
this.id = this.$route.query.id;
this.getData();
},
methods: {
getData() {
getFun('/risk/currentRiskHoliday/' + this.id).then(res => {
this.form = res.data;
})
}
},
}
</script>
<style scoped lang='less'>
.wrap {
height: 100vh;
width: 100vw;
}
.con-list {
padding-top: 20px;
background-color: #f0f1f5;
.van-cell-group--inset {
margin: 0;
margin-bottom: 0.26667rem;
padding: 0.25rem;
font-size: 0.4rem;
position: relative;
border-radius: 4%;
box-shadow: 0px 0px 10px 2px #f3f3f3;
width: 90%;
margin: 0.4rem auto;
.van-row {
font-size: 0.4rem;
line-height: 0.8rem;
margin-bottom: 0;
}
}
}
.operation-btn {
width: 95%;
margin: 20px 10px 10px;
position: fixed;
bottom: 50px;
right: 0;
left: 0;
}
</style>
...@@ -7,7 +7,12 @@ ...@@ -7,7 +7,12 @@
<van-pull-refresh @refresh="onRefresh" v-model="refreshing"> <van-pull-refresh @refresh="onRefresh" v-model="refreshing">
<van-list finished-text="没有更多了" @load="onLoad()"> <van-list finished-text="没有更多了" @load="onLoad()">
<van-cell v-for="(child) in group" :key="child.id" :title="child.applyTime" :value="child.reason" <van-cell v-for="(child) in group" :key="child.id" :title="child.applyTime" :value="child.reason"
label="" /> label="" @click="() => $router.push({
name: 'patrolDetail',
query: {
id: child.id
}
})" />
</van-list> </van-list>
</van-pull-refresh> </van-pull-refresh>
</div> </div>
...@@ -65,7 +70,8 @@ export default { ...@@ -65,7 +70,8 @@ export default {
this.getData() this.getData()
}, },
getData() { getData() {
getFun("risk/currentRiskHoliday/list", this.pages).then(res => { let userInfoData = JSON.parse(localStorage.getItem('LocalUserInfo'))
getFun("risk/currentRiskHoliday/list", { ...this.pages, userId: userInfoData.userId }).then(res => {
this.group = this.group.concat(res.rows); this.group = this.group.concat(res.rows);
this.refreshing = false; this.refreshing = false;
}) })
......
...@@ -6,12 +6,39 @@ ...@@ -6,12 +6,39 @@
<img src="@/assets/accidentIcon/bookmark.svg" alt="" class="title-img" /> <img src="@/assets/accidentIcon/bookmark.svg" alt="" class="title-img" />
巡查内容 巡查内容
</div> </div>
<div class="content">应建立地下有限空间作业安全生产责任制、安全生产规章制度和操作规程。</div> <div>
<van-field label="风险因素" required readonly>
<template #input>
<van-field readonly v-model="form.factor" label="" autosize placeholder="请输入" style="padding: 0" />
</template>
</van-field>
<van-field label="风险类型" readonly required>
<template #input>
<van-field readonly v-model="form.type" label="" autosize placeholder="请输入" style="padding: 0" />
</template>
</van-field>
<van-field label="风险等级" required>
<template #input>
<van-field readonly v-model="form.level" label="" autosize placeholder="请输入" style="padding: 0" />
</template>
</van-field>
<van-field label="管控措施" readonly required>
<template #input>
<van-field readonly v-model="form.measuresProject" label="" autosize placeholder="请输入"
style="padding: 0" />
</template>
</van-field>
</div>
<div class="title"> <div class="title">
<img src="@/assets/accidentIcon/bookmark.svg" alt="" class="title-img" /> <img src="@/assets/accidentIcon/bookmark.svg" alt="" class="title-img" />
巡查地点 巡查地点
</div> </div>
<div class="content">西南厂区一车间西北角</div> <van-field label="巡查地点" required>
<template #input>
<van-field v-model="form.riskLocation" name="abnormalDesc" label="" autosize placeholder="请输入"
style="padding: 0" />
</template>
</van-field>
<div class="list"> <div class="list">
<div class="title"> <div class="title">
...@@ -21,24 +48,17 @@ ...@@ -21,24 +48,17 @@
<van-field name="hdPicture1" label="异常照片"> <van-field name="hdPicture1" label="异常照片">
<template #input> <template #input>
<van-uploader @delete="deleteFile" multiple :max-count="5" upload-text="最多上传五个" <van-uploader @delete="deleteFile" multiple :max-count="5" upload-text="最多上传五个"
v-model="form.abnormalPics"> v-model="form.abnormalPics" :after-read="afterRead"></van-uploader>
<template slot="default">
<div class="content-upload">
<img src="@/assets/upload/pic.png" alt="" style="width: 0.64rem; height: 0.64rem" />
<span class="van-uploader__upload-text">最多上传五个</span>
</div>
</template>
</van-uploader>
</template> </template>
</van-field> </van-field>
<van-field label="异常说明"> <van-field label="异常说明" required>
<template #input> <template #input>
<van-field v-model="form.abnormalDesc" name="abnormalDesc" label="" type="textarea" rows="3" <van-field v-model="form.abnormalDesc" name="abnormalDesc" label="" type="textarea" rows="3"
autosize placeholder="请输入" style="padding-left: 0; padding-top: 0" /> autosize placeholder="请输入" style="padding-left: 0; padding-top: 0" />
</template> </template>
</van-field> </van-field>
<van-field readonly v-model="form.assessmentLevel" required name="assessmentLevel" label="风险等级" <van-field required readonly v-model="form.assessmentLevel" name="assessmentLevel" label="风险等级"
placeholder="请选择" @click="seletGrade" :rules="[{ required: true, message: '风险等级不能为空' }]" /> placeholder="请选择" @click="seletGrade" />
<div style="margin: 16px 16px 0"> <div style="margin: 16px 16px 0">
<van-button :loading="loadingStatus" loading-text="加载中..." round block type="info" <van-button :loading="loadingStatus" loading-text="加载中..." round block type="info"
native-type="submit">提交</van-button> native-type="submit">提交</van-button>
...@@ -61,17 +81,37 @@ export default { ...@@ -61,17 +81,37 @@ export default {
}, },
data() { data() {
return { return {
form: {}, form: {
abnormalPics: []
},
text: "异常上报" text: "异常上报"
}; };
}, },
// 退出前,将测评模型数据清空
beforeRouteLeave(to, _, next) {
if (to.name != 'assessModelStep1') {
this.$store.commit('SET_ASSESS_STEP2', "")
this.$store.commit('SET_ASSESS_STEP1', "")
this.$store.commit('SET_ASSESS_RESULT', {
level: "",
score: "",
})
this.$store.commit('SET_DANGER_DATA', {})
}
next()
},
mounted() { mounted() {
const formData = sessionStorage.getItem('addDanger'); const formData = this.$store.state.danger; //这里的数据是从”implement.vue“页面传递过来的
if (!formData.riskContent) { //不存在巡查地点返回
this.$router.go(-1)
}
if (formData) { if (formData) {
this.form = formData
}
const { level, score } = this.$store.state.assessModel.result const { level, score } = this.$store.state.assessModel.result
this.form = JSON.parse(formData); if (level) {
this.form.assessmentLevel = level; this.form.assessmentLevel = level;
sessionStorage.removeItem('addDanger')
} }
}, },
methods: { methods: {
...@@ -81,7 +121,7 @@ export default { ...@@ -81,7 +121,7 @@ export default {
this.$router.push('/assess/model/step1') this.$router.push('/assess/model/step1')
}, },
saveFormData() { saveFormData() {
sessionStorage.setItem("addDanger", JSON.stringify(this.form)); this.$store.commit('SET_DANGER_DATA', this.form)
}, },
jsonToFormData(config) { jsonToFormData(config) {
const formData = new FormData(); const formData = new FormData();
...@@ -89,7 +129,7 @@ export default { ...@@ -89,7 +129,7 @@ export default {
Object.keys(config).forEach((key) => { Object.keys(config).forEach((key) => {
if (key == 'abnormalPics') { if (key == 'abnormalPics') {
config[key].forEach(val => { config[key].forEach(val => {
formData.append('abnormalPics[]', val.file) formData.append('file[]', val.file)
}) })
} else { } else {
formData.append(key, config[key]); formData.append(key, config[key]);
...@@ -99,7 +139,12 @@ export default { ...@@ -99,7 +139,12 @@ export default {
}, },
onSubmit() { onSubmit() {
var formDataJson = this.jsonToFormData(this.form); var formDataJson = this.jsonToFormData(this.form);
postFun('/risk/currentRiskAbnormal/save', formDataJson) postFun('/risk/currentRiskAbnormal/save', formDataJson).then(res => {
this.cancel()
})
},
cancel() {
this.$router.go(-1)
} }
}, },
}; };
......
...@@ -41,17 +41,18 @@ export default { ...@@ -41,17 +41,18 @@ export default {
return { return {
text: '巡查执行', text: '巡查执行',
nowTime: "", nowTime: "",
projectId: '',
contentList: [ contentList: [
], ],
contentLists: [ contentLists: [
{ {
title: "1", title: "0",
imgUrl: require("@/assets/dangerPatrol/day_list.png"), imgUrl: require("@/assets/dangerPatrol/day_list.png"),
content: "日查清单" content: "日查清单"
}, },
{ {
title: "2", title: "1",
imgUrl: require("@/assets/dangerPatrol/week_list.png"), imgUrl: require("@/assets/dangerPatrol/week_list.png"),
content: "周查清单" content: "周查清单"
}, },
...@@ -61,12 +62,12 @@ export default { ...@@ -61,12 +62,12 @@ export default {
content: "半月查清单" content: "半月查清单"
}, },
{ {
title: "4", title: "2",
imgUrl: require("@/assets/dangerPatrol/month_list.png"), imgUrl: require("@/assets/dangerPatrol/month_list.png"),
content: "月查清单" content: "月查清单"
}, },
{ {
title: "5", title: "3",
imgUrl: require("@/assets/dangerPatrol/quarter_list.png"), imgUrl: require("@/assets/dangerPatrol/quarter_list.png"),
content: "季查清单" content: "季查清单"
}, },
...@@ -76,7 +77,7 @@ export default { ...@@ -76,7 +77,7 @@ export default {
content: "半年查清单" content: "半年查清单"
}, },
{ {
title: "7", title: "4",
imgUrl: require("@/assets/dangerPatrol/year_list.png"), imgUrl: require("@/assets/dangerPatrol/year_list.png"),
content: "年查清单" content: "年查清单"
} }
...@@ -89,14 +90,13 @@ export default { ...@@ -89,14 +90,13 @@ export default {
mounted() { mounted() {
this.nowTime = timestampToTime(new Date(), "DT7", true); this.nowTime = timestampToTime(new Date(), "DT7", true);
this.getProjectId() this.getProjectId()
// this.loading()
}, },
methods: { methods: {
loading() { loading() {
let userInfoData = JSON.parse(localStorage.getItem('LocalUserInfo')) let userInfoData = JSON.parse(localStorage.getItem('LocalUserInfo'))
console.log('userInfoData==>>', userInfoData.userId)
let params = { let params = {
// userId: userInfoData.userId, userId: userInfoData.userId,
projectId: this.projectId,
status: '0' status: '0'
} }
getFun("risk/riskUserPatrol/list", params).then((res) => { getFun("risk/riskUserPatrol/list", params).then((res) => {
...@@ -109,7 +109,6 @@ export default { ...@@ -109,7 +109,6 @@ export default {
} }
}) })
}) })
console.log(this.contentList)
// this.contentList.forEach((x)=>{ // this.contentList.forEach((x)=>{
// res.data.forEach((y)=>{ // res.data.forEach((y)=>{
// if(x.title==y.cycle){ // if(x.title==y.cycle){
...@@ -120,19 +119,20 @@ export default { ...@@ -120,19 +119,20 @@ export default {
}) })
}, },
onClick(val) { onClick(val) {
console.log(val)
sessionStorage.removeItem('type') sessionStorage.removeItem('type')
this.$router.push({ this.$router.push({
name: "implement", name: "implement",
query: { query: {
id: val.title, id: this.projectId,
content: val.content content: val.content
} }
}); });
}, },
getProjectId() { getProjectId() {
getFun('/risk/riskUserPatrol/getPatrolProjectList').then(res => { getFun('/risk/riskUserPatrol/getPatrolProjectList').then(res => {
const project = res.data.length && res.data[0]
this.projectId = project.id;
this.loading()
}) })
} }
}, },
......
...@@ -5,21 +5,24 @@ ...@@ -5,21 +5,24 @@
</van-sticky> </van-sticky>
<div class="con-list"> <div class="con-list">
<van-pull-refresh @refresh="onRefresh"> <van-pull-refresh v-model="refreshing" @refresh="onRefresh">
<van-list finished-text="没有更多了" @load="onLoad()"> <van-list v-model="loading" :finished="finished" @load="onLoad">
<div v-for="(child, index) in group" :key="index"> <div v-for="(child, index) in group" :key="index">
<van-row gutter class="con_tip"> <van-row gutter class="con_tip">
<van-col span="12" class="con_type"> <van-col span="12" class="con_type">
{{ child.time }} {{ child.startTime }}
</van-col> </van-col>
<van-col span="12" class="cont-end">已执行</van-col> <van-col span="12" class="cont-end">已执行</van-col>
</van-row> </van-row>
<van-cell-group inset v-for="item in child.list" :key="item.job"> <van-cell-group inset>
<van-row gutter> <van-row gutter type="flex" justify="center" align="center">
<van-col span="24">&nbsp;位:{{ item.job }}</van-col> <van-col span="18">
<van-row><van-col span="18">巡查频次:{{ item.time }}</van-col><van-col span="6" class="con_right" <van-col>项目名称:{{ child.projectName }}</van-col>
@click="() => $router.push('/patrolLog/logDetail')">查看详情</van-col></van-row> <van-col span="24">&nbsp;位:{{ child.riskPostName }}</van-col>
<van-col span="24">上报异常:{{ item.count }}</van-col> <van-col span="24">巡查类型:{{ patrolTypeList[child.patrolType] }}</van-col>
<van-col span="24" v-if="child.exceptStatus == 1">上报异常:1</van-col>
</van-col><van-col span="6" class="con_right"
@click="() => $router.push({ path: '/patrolLog/logDetail', query: { id: child.id } })">查看详情</van-col>
</van-row> </van-row>
</van-cell-group> </van-cell-group>
</div> </div>
...@@ -31,6 +34,7 @@ ...@@ -31,6 +34,7 @@
<script type="text/ecmascript-6"> <script type="text/ecmascript-6">
import LHeader from "@/components/header.vue"; import LHeader from "@/components/header.vue";
import { getFun, postFun } from "@/service/table.js";
export default { export default {
name: 'patrolLog', //巡查记录 name: 'patrolLog', //巡查记录
components: { components: {
...@@ -42,37 +46,15 @@ export default { ...@@ -42,37 +46,15 @@ export default {
data() { data() {
return { return {
text: '巡查记录', text: '巡查记录',
group: [ loading: false,
{ finished: false,
time: '2023年7月8日', patrolTypeList: ['日查', '周查', '月查', '年查'],
list: [{ group: [],
name: '电工', pages: {
job: '专职巡查人员', current: 0
time: '日查', },
count: 1 refreshing: false,
}, { total: 0
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
},]
}
]
} }
}, },
computed: { computed: {
...@@ -85,10 +67,36 @@ export default { ...@@ -85,10 +67,36 @@ export default {
}, },
mounted() { mounted() {
}, },
methods: { methods: {
onRefresh() {
this.pages.current = 1;
this.group = []
this.getData()
},
//上拉页面加载数据
onLoad() {
if (this.total <= this.group.length) {
this.finished = true
}
this.pages.current += 1;
setTimeout(() => {
this.getData();
}, 1000)
},
getData() {
this.loading = true;
let userInfoData = JSON.parse(localStorage.getItem('LocalUserInfo'))
getFun('/risk/riskUserPatrol/list', {
userId: userInfoData.userId,
...this.pages
}).then(res => {
this.group = this.group.concat(res.rows);
this.refreshing = false;
this.loading = false;
this.total = !this.total && res.total;
})
}
}, },
} }
</script> </script>
......
<template> <template>
<div class="wrap"> <div>
<van-sticky offset-top="0">
<LHeader :text="text"></LHeader> <LHeader :text="text"></LHeader>
</van-sticky> <van-form @submit="onSubmit" :scroll-to-error="true" :show-error="false" validate-trigger="onSubmit">
<div class="con-list"> <div class="title">
<van-pull-refresh @refresh="onRefresh"> <img src="@/assets/accidentIcon/bookmark.svg" alt="" class="title-img" />
<van-list finished-text="没有更多了" @load="onLoad()"> 基本信息
<van-cell-group inset v-for="item in list" :key="item.job">
<van-row gutter>
<van-col span="24">&nbsp;位:{{ item.job }}</van-col>
<van-col span="24">巡查频次:{{ item.time }}</van-col>
<van-col span="24">上报异常:{{ item.count }}</van-col>
</van-row>
</van-cell-group>
</van-list>
</van-pull-refresh>
</div> </div>
<div>
<van-field label="项目名称">
<template #input>
<van-field readonly v-model="form.projectName" label="" autosize placeholder="请输入"
style="padding: 0" />
</template>
</van-field>
<van-field label="风险因素">
<template #input>
<van-field readonly v-model="form.factor" label="" autosize placeholder="请输入" style="padding: 0" />
</template>
</van-field>
<van-field label="风险类型">
<template #input>
<van-field readonly v-model="form.type" label="" autosize placeholder="请输入" style="padding: 0" />
</template>
</van-field>
<van-field label="风险等级">
<template #input>
<van-field readonly v-model="form.level" label="" autosize placeholder="请输入" style="padding: 0" />
</template>
</van-field>
<van-field label="管控措施">
<template #input>
<van-field readonly v-model="form.measuresProject" label="" autosize placeholder="请输入"
style="padding: 0" />
</template>
</van-field>
<van-field label="岗位">
<template #input>
<van-field readonly v-model="form.riskPostName" label="" autosize placeholder="请输入"
style="padding: 0" />
</template>
</van-field>
<van-field label="巡查类型">
<template #input>
<van-field readonly :value="patrolTypeList[form.patrolType]" label="" autosize placeholder="请输入"
style="padding: 0" />
</template>
</van-field>
</div>
<div class="title" v-if="form.exceptStatus == 1">
<img src="@/assets/accidentIcon/bookmark.svg" alt="" class="title-img" />
巡查地点
</div>
<van-field label="巡查地点">
<template #input>
<van-field v-model="form.currentailAbnormal.riskLocation" name="abnormalDesc" label="" autosize
placeholder="请输入" style="padding: 0" />
</template>
</van-field>
<div class="list" v-if="form.exceptStatus == 1">
<div class="title">
<img src="@/assets/accidentIcon/bookmark.svg" alt="" class="title-img" />
异常上报
</div>
<van-field name="hdPicture1" label="异常照片">
<template #input>
<div>
<img v-for="item in form.currentailAbnormal.abnormalPics" :src="item.filePath"
:key="item.fileId" alt="">
</div>
</template>
</van-field>
<van-field label="异常说明">
<template #input>
<van-field readonly v-model="form.currentailAbnormal.abnormalDesc" name="abnormalDesc" label=""
type="textarea" rows="3" autosize placeholder="请输入" style="padding-left: 0; padding-top: 0" />
</template>
</van-field>
<van-field readonly v-model="form.currentailAbnormal.assessmentLevel" name="assessmentLevel" label="风险等级"
placeholder="请选择" @click="seletGrade" />
</div>
</van-form>
</div> </div>
</template> </template>
<script type="text/ecmascript-6"> <script>
import LHeader from "@/components/header.vue"; import LHeader from "@/components/header.vue";
import { getFun, postFun } from "@/service/table.js";
export default { export default {
name: 'patrolLog', //巡查记录 name: "logDetail",
components: { components: {
LHeader, LHeader,
},
props: {
}, },
data() { data() {
return { return {
text: '记录详情', form: {
list: [{
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
},]
}
},
computed: {
}, },
watch: { text: "巡查详情",
id: '',
}, patrolTypeList: ['日查', '周查', '月查', '年查'],
created() { };
}, },
mounted() { mounted() {
if (!this.$route.query.id) {
this.$router.go(-1)
}
this.id = this.$route.query.id;
this.getData()
}, },
methods: { methods: {
getData() {
getFun('/risk/riskUserPatrol/patrolInfoDetail/' + this.id).then(res => {
this.form = res.data
})
}
}, },
} };
</script> </script>
<style lang="less" scoped>
.title {
height: 1rem;
font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';
font-weight: 700;
line-height: 1rem;
.title-img {
position: relative;
top: 32%;
transform: translateY(-50%)
}
}
.content {
background: #fff;
padding: 14px 20px;
line-height: 21px;
font-size: 14px;
}
.content-upload {
width: 2.13333rem;
height: 2.13333rem;
background: #f7f8fa;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
<style scoped lang='less'>
.wrap {
height: 100vh;
width: 100vw;
} }
/* @import url(); 引入css类 */
.con-list { .con-list {
padding: 0;
background-color: #f0f1f5; background-color: #f0f1f5;
padding: 0.2rem 0.4rem;
.van-cell-group--inset { .van-cell-group--inset {
margin: 0; margin: 0;
...@@ -94,20 +161,15 @@ export default { ...@@ -94,20 +161,15 @@ export default {
padding: 0.25rem; padding: 0.25rem;
font-size: 0.4rem; font-size: 0.4rem;
position: relative; position: relative;
border-radius: 10px; border-radius: 4%;
box-shadow: 0px 0px 10px 2px #f3f3f3; box-shadow: 0px 0px 10px 2px #f3f3f3;
margin: 0 auto 0.4rem; width: 90%;
margin: 0.4rem auto;
&>.van-row { .van-row {
font-size: 0.4rem; font-size: 0.4rem;
line-height: 0.8rem; line-height: 0.8rem;
margin-bottom: 0; margin-bottom: 0;
padding: 0 0.2rem;
.con_right {
display: flex;
justify-content: flex-end;
color: #05a7f0;
} }
.van-overlay { .van-overlay {
...@@ -121,24 +183,12 @@ export default { ...@@ -121,24 +183,12 @@ export default {
} }
} }
} }
} }
.con_tip {
font-size: 0.4rem;
margin-bottom: 0.2rem;
padding: 0 0.3rem;
.con_type {
color: #a1a1a1;
padding-right: 10px;
}
.cont-end { .dialogContain {
display: flex; width: 100%;
justify-content: flex-end; height: 100%;
color: #a1a1a1; padding: 10px;
padding-right: 0; box-sizing: border-box;
}
}
} }
</style> </style>
<template>
<div class="wrap">
<van-sticky offset-top="0">
<LHeader :text="text"></LHeader>
</van-sticky>
<div class="con-list">
<van-pull-refresh @refresh="onRefresh">
<van-list finished-text="没有更多了" @load="onLoad()">
<van-cell-group inset v-for="item in list" :key="item.job">
<van-row gutter>
<van-col span="24">&nbsp;位:{{ item.job }}</van-col>
<van-col span="24">巡查频次:{{ item.time }}</van-col>
<van-col span="24">上报异常:{{ item.count }}</van-col>
</van-row>
</van-cell-group>
</van-list>
</van-pull-refresh>
</div>
</div>
</template>
<script type="text/ecmascript-6">
import LHeader from "@/components/header.vue";
export default {
name: 'patrolLog', //巡查记录
components: {
LHeader,
},
props: {
},
data() {
return {
text: '记录详情',
list: [{
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
}, {
name: '电工',
job: '专职巡查人员',
time: '日查',
count: 1
},]
}
},
computed: {
},
watch: {
},
created() {
},
mounted() {
},
methods: {
},
}
</script>
<style scoped lang='less'>
.wrap {
height: 100vh;
width: 100vw;
}
.con-list {
background-color: #f0f1f5;
padding: 0.2rem 0.4rem;
.van-cell-group--inset {
margin: 0;
margin-bottom: 0.26667rem;
padding: 0.25rem;
font-size: 0.4rem;
position: relative;
border-radius: 10px;
box-shadow: 0px 0px 10px 2px #f3f3f3;
margin: 0 auto 0.4rem;
&>.van-row {
font-size: 0.4rem;
line-height: 0.8rem;
margin-bottom: 0;
padding: 0 0.2rem;
.con_right {
display: flex;
justify-content: flex-end;
color: #05a7f0;
}
.van-overlay {
position: absolute;
.wrapper {
display: flex;
align-items: center;
justify-content: space-evenly;
height: 100%;
}
}
}
}
.con_tip {
font-size: 0.4rem;
margin-bottom: 0.2rem;
padding: 0 0.3rem;
.con_type {
color: #a1a1a1;
padding-right: 10px;
}
.cont-end {
display: flex;
justify-content: flex-end;
color: #a1a1a1;
padding-right: 0;
}
}
}
</style>
...@@ -395,7 +395,7 @@ import LHeader from "@/components/header.vue"; ...@@ -395,7 +395,7 @@ import LHeader from "@/components/header.vue";
import { timestampToTime, generateId } from "@/utils/format"; import { timestampToTime, generateId } from "@/utils/format";
import { getFun, postFun } from "@/service/table.js"; import { getFun, postFun } from "@/service/table.js";
export default { export default {
name: "risk-confirme", name: "riskTaskList",
components: { components: {
LHeader LHeader
}, },
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment