Commit 1ed4c62c authored by 王李辉's avatar 王李辉

隐患上报部分接口对接

parent c27c1d32
......@@ -9,3 +9,61 @@ export function dangerReturn(url,data) {
data
})
}
// 请求新增表单数据信息的
export function getFormList(url,params) {
return request({
url: url,
method: 'get',
params
})
}
// 隐患类型
export function postHdTyp(url,data) {
return request({
url: url,
method: 'post',
data
})
}
// 隐患项目名称
export function postHdName(url,data) {
return request({
url: url,
method: 'post',
data
})
}
// 隐患项目编号和隐患级别
export function postHdInventories(url,data) {
return request({
url: url,
method: 'post',
data
})
}
// 风险源带出来的字段
export function postHdRiskSource(url,data) {
return request({
url: url,
method: 'post',
data
})
}
// 隐患整改人接口
export function postHdShowPeople(url,data) {
return request({
url: url,
method: 'post',
data
})
}
// 隐患上报保存接口
export function postHdReportAdd(url,data) {
return request({
url: url,
method: 'post',
data
})
}
......@@ -2,7 +2,6 @@
<div>
<LHeader :text="text"></LHeader>
<van-form
@submit="onSubmit"
:scroll-to-error="true"
......@@ -16,14 +15,13 @@
rows="1"
autosize=""
label="退回原因"
name="退回原因"
type="textarea"
/>
<van-field
readonly
clickable
name="所属工程名称"
name="proId"
:value="projectName"
label="所属工程名称"
placeholder="请选择"
......@@ -33,6 +31,7 @@
<van-popup v-model="showProjectName" position="bottom">
<van-picker
show-toolbar
value-key="projectName"
:columns="columnsProjectName"
@confirm="onConProjectName"
@cancel="showProjectName = false"
......@@ -42,7 +41,7 @@
<van-field
readonly
clickable
name="适用范围"
name="hdRange"
:value="range"
label="适用范围"
placeholder="请选择"
......@@ -52,6 +51,7 @@
<van-popup v-model="showRange" position="bottom">
<van-picker
show-toolbar
value-key="hdRange"
:columns="columnsRange"
@confirm="onConRange"
@cancel="showRange = false"
......@@ -61,7 +61,7 @@
<van-field
readonly
clickable
name="隐患类型"
name="hdType"
:value="type"
label="隐患类型"
placeholder="请选择"
......@@ -71,6 +71,7 @@
<van-popup v-model="showType" position="bottom">
<van-picker
show-toolbar
value-key="hdType"
:columns="columnsType"
@confirm="onConType"
@cancel="showType = false"
......@@ -80,7 +81,7 @@
<van-field
readonly
clickable
name="隐患项目名称"
name="hdProjectName"
:value="dangerName"
label="隐患项目名称"
placeholder="请选择"
......@@ -90,6 +91,7 @@
<van-popup v-model="showDangerName" position="bottom">
<van-picker
show-toolbar
value-key="hdName"
:columns="columnsDangerName"
@confirm="onConDangerName"
@cancel="showDangerName = false"
......@@ -99,7 +101,7 @@
<van-field
v-model="dangerNum"
readonly
name="隐患项目编号"
name="hdProjectId"
label="隐患项目编号"
placeholder="请选择"
:rules="[{ required: true, message: '隐患项目编号不能为空' }]"
......@@ -107,7 +109,7 @@
<van-field
v-model="dangerLevel"
readonly
name="隐患级别"
name="hdLev"
label="隐患级别"
placeholder="请选择"
:rules="[{ required: true, message: '隐患级别不能为空' }]"
......@@ -116,7 +118,7 @@
<van-field
readonly
clickable
name="隐患发现时间"
name="hdDiscoveryTime"
:value="findTime"
label="隐患发现时间"
placeholder="点击选择日期"
......@@ -134,7 +136,7 @@
<van-field
readonly
clickable
name="风险源"
name="dangerId"
:value="source"
label="风险源"
placeholder="请选择"
......@@ -144,6 +146,7 @@
<van-popup v-model="showSource" position="bottom">
<van-picker
show-toolbar
value-key="factor"
:columns="columnsSource"
@confirm="onConSource"
@cancel="showSource = false"
......@@ -153,7 +156,7 @@
<van-field
readonly
clickable
name="风险源"
name="dangerSource"
:value="source1"
label=" "
placeholder="请选择"
......@@ -163,6 +166,7 @@
<van-popup v-model="showSource1" position="bottom">
<van-picker
show-toolbar
value-key="riskSource"
:columns="columnsSource1"
@confirm="onConSource1"
@cancel="showSource1 = false"
......@@ -171,7 +175,7 @@
<van-field
v-model="location"
name="检查部位"
name="hdPosition"
label="检查部位"
placeholder="请输入"
:rules="[{ required: true, message: '检查部位不能为空' }]"
......@@ -181,14 +185,14 @@
v-model="describe"
rows="3"
label="隐患描述"
name="隐患描述"
name="hdDescribe"
type="textarea"
placeholder="请输入"
:rules="[{ required: true, message: '隐患描述不能为空' }]"
/>
<van-field
name="uploader"
name="hdPicture1"
label="隐患照片"
:rules="[{ required: true, message: '请上传图像' }]"
>
......@@ -197,7 +201,7 @@
</template>
</van-field>
<van-field name="uploader2" label="隐患视频">
<van-field name="hdVideo1" label="隐患视频">
<template #input>
<van-uploader v-model="uploaderVideo" />
</template>
......@@ -205,7 +209,7 @@
<van-field
readonly
clickable
name="隐患到期时间"
name="hdExpirationTime"
:value="expireTime"
label="隐患到期时间"
placeholder="点击选择日期"
......@@ -222,7 +226,7 @@
<van-field
readonly
clickable
name="隐患整改人"
name="rectificationUser"
:value="recPeople"
label="隐患整改人"
placeholder="请选择"
......@@ -231,6 +235,7 @@
<van-popup v-model="showRecPeople" position="bottom">
<van-picker
show-toolbar
value-key="userName"
:columns="columnsRecPeople"
@confirm="onConRecPeople"
@cancel="showRecPeople = false"
......@@ -254,84 +259,168 @@
<script>
import LHeader from "@/components/header.vue";
import { timestampToTime } from "@/utils/format";
import {
getFormList,
postHdTyp,
postHdName,
postHdInventories,
postHdRiskSource,
postHdShowPeople,
postHdReportAdd
} from "@/service/danger";
export default {
components: {
LHeader
},
created() {
if (this.$route.params.status) {
this.isShowreturnCause = true;
this.text = "隐患上报退回";
}
this.getList();
},
data() {
return {
text: "新增隐患",
projectName: "", // 所属工程
projectId: "", // 所属工程
projectName: "",
showProjectName: false,
columnsProjectName: ["工程1", "工程2", "工程3", "工程4"],
columnsProjectName: [],
range: "", //适用范围
showRange: false,
columnsRange: ["适用范围1", "适用范围2", "适用范围3", "适用范围4"],
columnsRange: [],
type: "", //隐患类型
showType: false,
columnsType: ["隐患类型1", "隐患类型2", "隐患类型3", "隐患类型4"],
columnsType: [],
dangerName: "", //隐患项目名称
showDangerName: false,
columnsDangerName: [
"隐患项目名称1",
"隐患项目名称2",
"隐患项目名称3",
"隐患项目名称4"
],
columnsDangerName: [],
dangerNum: "", //隐患项目编号
dangerLevel: "", //隐患项目级别
findTime: "", //隐患发现时间
showFindTime: false,
source: "", // 风险源
showSource: false,
columnsSource: ["人的因素", "物的因素", "环境因素", "管理因素"],
columnsSource: [],
source1: "", // 风险源第二个字段
showSource1: false,
columnsSource1: ["人的因素", "物的因素", "环境因素", "管理因素"],
columnsSource1: [],
location: "", // 检查部位
describe: "", // 隐患描述
uploaderImg: [], //图像上传
uploaderVideo: [], //视频上传
expireTime: "", // 隐患到期时间
showExpireTime: false,
recPeople: "",
showRecPeople: false,
columnsRecPeople: ["张三", "李四", "王五"],
returnCause: "你这不行啊", // 退回原因
isShowreturnCause: false
columnsRecPeople: [],
isShowreturnCause: false,
returnCause: "你这不行啊" // 退回原因
};
},
created() {
if (this.$route.query.status) {
this.isShowreturnCause = true;
this.text = "隐患上报退回"
}
},
methods: {
onSubmit(values) {
console.log("submit", values);
let formdata = new FormData()
formdata.append("proId", this.projectId)
formdata.append("hdRange", values.hdRange)
formdata.append("hdType", values.hdType)
formdata.append("hdProjectName", values.hdProjectName)
formdata.append("hdProjectId", values.hdProjectId)
formdata.append("hdLev", values.hdLev)
formdata.append("hdDiscoveryTime", values.hdDiscoveryTime)
formdata.append("dangerId", values.dangerId)
formdata.append("dangerSource", values.dangerSource)
formdata.append("hdPosition", values.hdPosition)
formdata.append("hdDescribe", values.hdDescribe)
formdata.append("hdPicture1", values.hdPicture1)
formdata.append("hdVideo1", values.hdVideo1)
formdata.append("hdExpirationTime", values.hdExpirationTime)
formdata.append("rectificationUser", values.rectificationUser)
this.$toast.loading({
message: "提交中...",
forbidClick: true,
loadingType: "spinner",
duration: 0
});
postHdReportAdd("/hdreport/add", formdata)
.then(res => {
this.$toast.clear();
this.$toast.success({
message: "提交成功",
duration: 2000
});
history.go(-1);
})
.catch(() => {
this.$toast.clear();
this.$toast.fail("提交失败,请稍后再试");
});
},
// 请求表单数据
getList() {
this.$toast.loading({
message: "加载中...",
forbidClick: true,
loadingType: "spinner",
duration: 0
});
getFormList("/hdreport/add")
.then(res => {
this.$toast.clear();
this.columnsProjectName = res.data.projectInformations;
this.columnsRange = res.data.hdInventories;
this.columnsSource = res.data.factors;
})
.catch(() => {
this.$toast.clear();
this.$toast.fail("加载失败,请稍后再试");
});
},
// 所属工程名称
onConProjectName(value) {
this.projectName = value;
this.projectId = value.id;
this.projectName = value.projectName;
this.showProjectName = false;
// 这里请求隐患整改人接口
postHdShowPeople(`/hdreport/showPeople/${this.projectId}`).then(res => {
this.columnsRecPeople = res.data;
});
},
// 适用范围
onConRange(value) {
this.range = value;
this.range = value.hdRange;
this.showRange = false;
// 去请求隐患类型的数据
postHdTyp(`/hdreport/showHdType/${this.range}`).then(res => {
this.columnsType = res.data;
});
},
// 隐患类型
onConType(value) {
this.type = value;
this.type = value.hdType;
this.showType = false;
// 请求隐患项目名称的数据
console.log(this.range);
postHdName(`/hdreport/showHdName/${this.range}/${this.type}`).then(
res => {
this.columnsDangerName = res.data;
}
);
},
// 隐患项目名称
onConDangerName(value) {
this.dangerName = value;
this.dangerName = value.hdName;
this.showDangerName = false;
// 请求隐患项目编号和隐患级别
postHdInventories(
`/hdreport/showHdInventories/${this.range}/${this.type}/${this.dangerName}`
).then(res => {
this.dangerNum = res.data[0].hdId;
this.dangerLevel = res.data[0].hdLev;
});
},
// 隐患发现时间
onConFindTime(date) {
......@@ -340,12 +429,18 @@ export default {
},
// 风险源
onConSource(value) {
this.source = value;
this.source = value.factor;
this.showSource = false;
// 请求风险源第二个字段
let formdata = new FormData();
formdata.append("factor", this.source);
postHdRiskSource("/riskSource/list", formdata).then(res => {
this.columnsSource1 = res.data;
});
},
// 风险源第二个字段
onConSource1(value) {
this.source1 = value;
this.source1 = value.riskSource;
this.showSource1 = false;
},
// 隐患到期时间
......@@ -355,8 +450,8 @@ export default {
},
// 隐患整改人
onConRecPeople(value) {
this.zhenggairen = value;
this.showPickerzhenggai = false;
this.recPeople = value.userName;
this.showRecPeople = false;
},
cancel() {
......
......@@ -83,8 +83,8 @@ export default {
goDetail(data) {
console.log(data);
this.$router.push({
path: '/add-danger',
query: {status: "退回"}
name: 'add-danger',
params: {status: "退回"}
});
this.showIndex = null;
},
......
......@@ -324,7 +324,9 @@ export default {
};
},
created() {
if (this.$route.query.status) {
console.log(this.$route.params);
if (this.$route.params.status) {
this.isShowreturnCause = true;
this.text = "风险上报退回"
}
......
......@@ -83,8 +83,8 @@ export default {
goDetail(data) {
console.log(data);
this.$router.push({
path: '/risk-add',
query: {status: "退回"}
name: 'risk-add',
params: {status: "退回"}
});
this.showIndex = null;
},
......
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