From fcc1ea2bf3ce3efe1f927bd087e4cd6cf2116c32 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期三, 30 三月 2022 16:21:36 +0800
Subject: [PATCH] Merge remote-tracking branch 'remotes/origin/shf' into master
---
src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue | 68 ++-
src/views/majorHazardSourceMonitoring/productionEquipment/index.vue | 99 ++++-
src/views/safetyproduction/checklistself.vue | 174 +++++----
src/views/safetyproduction/reviewXG.vue | 3
index.html | 1
src/views/majorHazardSourceMonitoring/instrumentData/index.vue | 89 +++-
src/api/safetySelfInspection.js | 109 ++++++
src/router/index.js | 7
src/views/safetyproduction/new.vue | 409 +++++++++++++----------
src/views/contingencyplan/index.vue | 46 +-
src/views/safetyproduction/checklist.vue | 2
11 files changed, 662 insertions(+), 345 deletions(-)
diff --git a/index.html b/index.html
index d8edb25..e0ff05f 100644
--- a/index.html
+++ b/index.html
@@ -22,6 +22,7 @@
#app {
margin: 0;
padding: 0;
+ overflow: hidden;
height: 100%;
}
diff --git a/src/api/safetySelfInspection.js b/src/api/safetySelfInspection.js
new file mode 100644
index 0000000..1d19e81
--- /dev/null
+++ b/src/api/safetySelfInspection.js
@@ -0,0 +1,109 @@
+import {getToken} from "../utils/auth";
+import request from '@/utils/request'
+
+export function safetySelfInspectionList(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/safetySelfInspection/page',
+ method: 'post',
+ data
+ })
+}
+
+export function safetySelfInspectionInfo(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/safetySelfInspection/info',
+ method: 'post',
+ data
+ })
+}
+
+export function safetySelfInspectionItemInfo(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/safetySelfInspection/itemInfo',
+ method: 'post',
+ data
+ })
+}
+
+export function safetySelfInspectionModItemInfo(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/safetySelfInspection/modItemInfo',
+ method: 'post',
+ data
+ })
+}
+
+export function safetySelfInspectionAdd(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/safetySelfInspection/add',
+ method: 'post',
+ data
+ })
+}
+
+export function safetySelfInspectionMod(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/safetySelfInspection/mod',
+ method: 'post',
+ data
+ })
+}
+
+export function safetySelfInspectionDel(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/safetySelfInspection/del',
+ method: 'post',
+ data
+ })
+}
+export function safetyInspectionItemTreeA(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/elementManagement/getElementTree',
+ method: 'post',
+ data
+ })
+}
+export function safetyInspectionItemName(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/getUserList',
+ method: 'post',
+ data
+ })
+}
+export function safetyInspectionItemTreeB(data) {
+ return request({
+ headers:{
+ 'Authorization': getToken()
+ },
+ url: process.env.BASE_API+'/safetyInspectionItem/infoElementA',
+ method: 'post',
+ data
+ })
+}
\ No newline at end of file
diff --git a/src/router/index.js b/src/router/index.js
index 739eea2..9dd394d 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -150,12 +150,11 @@
meta: { title: '自查清单_去评审', icon: '' }
},
{
- id: 2,
- parentId: 0,
path: '/new',
- name: '自查清单_新增|修改',
+ // name: '自查清单_新增|修改',
component: () => import('@/views/safetyproduction/new'),
- meta: { title: '自查清单_新增|修改', icon: '' }
+ // meta: { title: '自查清单_新增|修改', icon: '' }
+ hidden: true
},
{
id: 2,
diff --git a/src/views/contingencyplan/index.vue b/src/views/contingencyplan/index.vue
index 621c963..9e07de8 100644
--- a/src/views/contingencyplan/index.vue
+++ b/src/views/contingencyplan/index.vue
@@ -62,16 +62,16 @@
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="文件类型">
- <el-radio-group v-model="form.fileType">
+ <el-radio-group v-model="form.fileType" @change="changeFileType">
<el-radio :label=0 >图片</el-radio>
<el-radio :label=1 >文件</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item v-if="form.fileType==0" label="图片上传">
- <upload-img v-bind:imgList="form.fileList" @uploadImgSuccess="uploadImgSuccess" @removeImgSuccess="removeImgSuccess"></upload-img>
+ <upload-img :imgList="fileList" @uploadImgSuccess="uploadImgSuccess" @removeImgSuccess="removeImgSuccess"></upload-img>
</el-form-item>
<el-form-item label="文件链接" v-if="form.fileType==1">
- <upload-file v-bind:url="fileUrl" v-bind:name="fileName" @uploadFileSuccess="uploadFileSuccess" ></upload-file>
+ <upload-file v-bind:url="fileUrl" v-bind:name="fileName" @uploadFileSuccess="uploadFileSuccess" ></upload-file>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" :rows="5" type="textarea"></el-input>
@@ -97,9 +97,7 @@
components: { uploadImg , uploadFile},
data() {
return {
- name:"111",
- url:"222",
- path:"emergencyPlan",
+ uploadDisabled:false,
dialogVisible: false,
title: "",
@@ -121,6 +119,7 @@
},
fileName:"",
fileUrl:"",
+ fileList:[],
list: [],
rules: {
name: [
@@ -136,17 +135,15 @@
this.emergencyPlan();
},
methods: {
+ changeFileType(){
+ this.fileUrl=""
+ this.fileName=""
+ this.fileList=[]
+ },
uploadFileSuccess(res){
this.fileName=res.fileName
this.fileUrl=res.fileUrl
- if (this.fileName=="" || this.fileUrl==""){
- this.form.fileList=[]
- }
- this.form.fileList=[{
- fileName: this.fileName,
- fileUrl:this.fileUrl
- }]
},
uploadImgSuccess(res){
@@ -154,11 +151,11 @@
fileUrl : res.fileUrl,
fileName : res.fileName
}
- this.form.fileList.push(file)
+ this.fileList.push(file)
},
removeImgSuccess(res){
- this.form.fileList=res.fileList
+ this.fileList=res.fileList
},
async emergencyPlan() {
@@ -186,14 +183,27 @@
} else {
this.title = "编辑";
this.form = value;
- this.fileUrl=value.fileList[0].fileUrl;
- this.fileName=value.fileList[0].fileName
+ if (this.form.fileType==0){
+ this.fileList=value.fileList
+ } else{
+ this.fileUrl=value.fileList[0].fileUrl;
+ this.fileName=value.fileList[0].fileName
+ }
}
},
addemergencyPlan() {
this.$refs["form"].validate((valid) => {
if (valid) {
- console.log(132,this.form)
+ if (this.form.fileType==0){
+ this.form.fileList=this.fileList
+ }
+ if (this.form.fileType==1){
+ let file={
+ fileUrl:this.fileUrl,
+ fileName:this.fileName
+ }
+ this.form.fileList=[file]
+ }
if (this.title === "新增") {
emergencyPlanAdd(this.form).then((res) => {
if (res.data.code === "200") {
diff --git a/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue b/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
index 95cf9d6..8b80821 100644
--- a/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
+++ b/src/views/majorHazardSourceMonitoring/equipmentAlarm/index.vue
@@ -4,17 +4,17 @@
<el-row>
<el-col :span="5">
<el-form-item label="设备名称">
- <el-input v-model="listQuery.filter.equipmentName"></el-input>
+ <el-input v-model="listQuery.filter.equipmentName" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
- <el-form-item label="状态">
- <el-select v-model="listQuery.filter.status" placeholder="请选择状态">
+ <el-form-item label="设备状态">
+ <el-select v-model="listQuery.filter.status" placeholder="请选择状态" clearable>
<el-option v-for="item in unitIdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
</el-col>
- <el-col :span="4" style="text-align: center">
+ <el-col :span="6" style="text-align: center">
<el-button type="primary" icon="el-icon-search" @click="find()" class="btns"
>搜索</el-button
>
@@ -24,6 +24,9 @@
class="btns"
@click="handleClick('', '新增')"
>新增</el-button
+ >
+ <el-button type="primary" icon="el-icon-refresh" @click="reset()" class="btns"
+ >重置</el-button
>
</el-col>
</el-row>
@@ -120,8 +123,9 @@
<el-col :span="12">
<el-form-item label="报警时间" prop="alarmTime">
<el-date-picker
+ type="datetime"
v-model="form.alarmTime"
- value-format="yyyy-MM-dd"
+ value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择日期时间"
style="width: 100%;">
</el-date-picker>
@@ -131,7 +135,7 @@
<el-row>
<el-col :span="24">
<el-form-item label="报警信息" prop="alarmInfo">
- <el-input v-model="form.alarmInfo" maxlength="50"></el-input>
+ <el-input type="textarea" v-model="form.alarmInfo" placeholder="请输入报警信息" maxlength="50"></el-input>
</el-form-item>
</el-col>
</el-row>
@@ -180,13 +184,17 @@
listQuery: {
filter: {
equipmentName: "",
+ // status:"",
},
pageIndex: 1,
pageSize: 10,
},
type:'',
rules: {
-
+ equipmentId: { required: true, message: "请选择设备名称", trigger: "change"},
+ status: { required: true, message: "请选择设备状态", trigger: "change"},
+ alarmTime: { required: true, message: "请选择报警时间", trigger: "change"},
+ alarmInfo: { required: true, message: "请输入报警信息", trigger: "change"},
},
equipmentName:[],
unitIdOptions:[{label:"已处理",value:0},{label:"未处理",value:1}]
@@ -194,8 +202,15 @@
},
created() {
this.elementManagementL();
+ this.alarmMajorEquipmentErt();
},
methods: {
+ alarmMajorEquipmentErt(){
+ majorEquipmentErt().then(res=>{
+ console.log(res)
+ this.equipmentName=res.data.result
+ })
+ },
async elementManagementL() {
var res = await majorEquipmentList(this.listQuery);
console.log(res);
@@ -211,10 +226,6 @@
this.$nextTick(() => {
this.$refs["form"].clearValidate();
});
- majorEquipmentErt().then(res=>{
- console.log(res)
- this.equipmentName=res.data.result
- })
if (type == "新增") {
this.title = "新增";
this.form = {
@@ -273,21 +284,34 @@
});
},
deleteById(val) {
- majorEquipmentDel({id:val}).then((res) => {
- if (res.data.code == 200) {
- this.elementManagementL();
- this.$notify({
- title: "成功",
- message: "删除成功",
- type: "success",
- duration: 2000,
- });
- }
- });
+ this.$confirm('确认删除吗','提示', {
+ confirmButtonText: '确认',
+ cancelButtonText: '取消',
+ type: 'warning'
+ })
+ .then(()=>{
+ majorEquipmentDel({id:val}).then((res) => {
+ if (res.data.code == 200) {
+ this.elementManagementL();
+ this.$notify({
+ title: "成功",
+ message: "删除成功",
+ type: "success",
+ duration: 2000,
+ });
+ }
+ })
+ })
+ .catch(error =>{
+ });
},
find(){
this.elementManagementL();
},
+ reset(){
+ this.listQuery.filter={}
+ this.elementManagementL();
+ },
handleSizeChange(val){
this.listQuery.pageSize = val
this.elementManagementL();
diff --git a/src/views/majorHazardSourceMonitoring/instrumentData/index.vue b/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
index fd06609..9123e8b 100644
--- a/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
+++ b/src/views/majorHazardSourceMonitoring/instrumentData/index.vue
@@ -4,7 +4,7 @@
<el-row>
<el-col :span="5">
<el-form-item label="设备名称">
- <el-input v-model="listQuery.filter.equipmentName"></el-input>
+ <el-input v-model="listQuery.filter.equipmentName" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="8" style="text-align: center">
@@ -25,7 +25,9 @@
@click="importData()"
>导入</el-button
>
-
+ <el-button type="primary" icon="el-icon-refresh" @click="reset()" class="btns"
+ >重置</el-button
+ >
</el-col>
</el-row>
</el-form>
@@ -45,6 +47,8 @@
<el-table-column prop="lowLiquidAlarm" label="低液位报警值" align="center">
</el-table-column>
<el-table-column prop="lowLowLiquidAlarm" label="低低液位报警值" align="center">
+ </el-table-column>
+ <el-table-column prop="monitoringTime" label="检测时间" align="center">
</el-table-column>
<el-table-column align="center" label="操作">
<template slot-scope="scope">
@@ -104,8 +108,9 @@
<el-col :span="12">
<el-form-item label="检测时间" prop="monitoringTime">
<el-date-picker
+ type="datetime"
v-model="form.monitoringTime"
- value-format="yyyy-MM-dd"
+ value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择日期时间"
style="width: 100%;">
</el-date-picker>
@@ -131,19 +136,19 @@
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="高液位报警值" prop="alarmInfo">
+ <el-form-item label="高液位报警值" prop="highLiquidAlarm">
<el-input v-model.number="form.highLiquidAlarm" maxlength="50"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
- <el-form-item label="低液位报警值" prop="alarmInfo">
+ <el-form-item label="低液位报警值" prop="lowLiquidAlarm">
<el-input v-model.number="form.lowLiquidAlarm" maxlength="50"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="低低液位报警值" prop="alarmInfo">
+ <el-form-item label="低低液位报警值" prop="lowLowLiquidAlarm">
<el-input v-model.number="form.lowLowLiquidAlarm" maxlength="50"></el-input>
</el-form-item>
</el-col>
@@ -191,19 +196,40 @@
listQuery: {
filter: {
equipmentId: "",
- status:'',
},
pageIndex: 1,
pageSize: 10,
},
// type:'',
rules: {
- rangeLowerLimit:{ type: 'number', message: '仪表量程下限必须为数字值'},
- rangeUpperLimit:{ type: 'number', message: '仪表量程上限必须为数字值'},
- highHighLiquidAlarm:{ type: 'number', message: '高高液位报警值必须为数字值'},
- highLiquidAlarm:{ type: 'number', message: '高液位报警值必须为数字值'},
- lowLiquidAlarm:{ type: 'number', message: '低液位报警值必须为数字值'},
- lowLowLiquidAlarm:{ type: 'number', message: '低低液位报警值必须为数字值'},
+ equipmentId:
+ { required: true, message: "请选择设备名称", trigger: "change" },
+ monitoringTime:
+ { required: true, message: "请选择检测时间", trigger: "change"},
+ rangeLowerLimit:[
+ { required: true, message: "仪表量程下限不能为空", trigger: "change"},
+ { type: 'number', message: '仪表量程下限必须为数字值'}
+ ],
+ rangeUpperLimit:[
+ { required: true, message: "仪表量程上限不能为空", trigger: "change"},
+ { type: 'number', message: '仪表量程上限必须为数字值'}
+ ],
+ highHighLiquidAlarm:[
+ { required: true, message: "高高液位报警值不能为空", trigger: "change"},
+ { type: 'number', message: '高高液位报警值必须为数字值'}
+ ],
+ highLiquidAlarm:[
+ { required: true, message: "高液位报警值不能为空", trigger: "change"},
+ { type: 'number', message: '高液位报警值必须为数字值'}
+ ],
+ lowLiquidAlarm:[
+ { required: true, message: "低液位报警值不能为空", trigger: "change"},
+ { type: 'number', message: '低液位报警值必须为数字值'}
+ ],
+ lowLowLiquidAlarm:[
+ { required: true, message: "低低液位报警值不能为空", trigger: "change"},
+ { type: 'number', message: '低低液位报警值必须为数字值'},
+ ],
},
equipmentName:[],
unitIdOptions:[{label:"已处理",value:0},{label:"未处理",value:1}]
@@ -421,6 +447,8 @@
} else {
this.title = "编辑";
this.form = value;
+ console.log(123,this.form)
+ console.log(222,this.equipmentName)
}
},
AddelementManagement() {
@@ -467,21 +495,34 @@
});
},
deleteById(val) {
- majorEquipmentDel({id:val}).then((res) => {
- if (res.data.code == 200) {
- this.elementManagementL();
- this.$notify({
- title: "成功",
- message: "删除成功",
- type: "success",
- duration: 2000,
- });
- }
- });
+ this.$confirm('确认删除吗','提示', {
+ confirmButtonText: '确认',
+ cancelButtonText: '取消',
+ type: 'warning'
+ })
+ .then(()=>{
+ majorEquipmentDel({id:val}).then((res) => {
+ if (res.data.code == 200) {
+ this.elementManagementL();
+ this.$notify({
+ title: "成功",
+ message: "删除成功",
+ type: "success",
+ duration: 2000,
+ });
+ }
+ });
+ })
+ .catch(error =>{
+ });
},
find(){
this.elementManagementL();
},
+ reset(){
+ this.listQuery.filter.equipmentName = "";
+ this.elementManagementL();
+ },
handleSizeChange(val){
this.listQuery.pageSize = val
this.elementManagementL();
diff --git a/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue b/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
index d8f78df..ede80cb 100644
--- a/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
+++ b/src/views/majorHazardSourceMonitoring/productionEquipment/index.vue
@@ -4,17 +4,17 @@
<el-row>
<el-col :span="5">
<el-form-item label="设备名称">
- <el-input v-model="listQuery.filter.name"></el-input>
+ <el-input v-model="listQuery.filter.name" placeholder="请输入设备名称" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="设备状态">
- <el-select v-model="listQuery.filter.status" placeholder="请选择设备状态">
+ <el-select v-model="listQuery.filter.status" placeholder="请选择设备状态" clearable>
<el-option v-for="item in unitIdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
</el-col>
- <el-col :span="4" style="text-align: center">
+ <el-col :span="6" style="text-align: center">
<el-button type="primary" icon="el-icon-search" @click="find()" class="btns"
>搜索</el-button
>
@@ -24,6 +24,9 @@
class="btns"
@click="handleClick('', '新增')"
>新增</el-button
+ >
+ <el-button type="primary" icon="el-icon-refresh" @click="reset()" class="btns"
+ >重置</el-button
>
</el-col>
</el-row>
@@ -41,7 +44,7 @@
</el-table-column>
<el-table-column prop="volume" label="容积" align="center">
</el-table-column>
- <el-table-column prop="userId" label="负责人" align="center">
+ <el-table-column prop="userName" label="负责人" align="center">
</el-table-column>
<el-table-column align="center" label="操作">
<template slot-scope="scope">
@@ -83,12 +86,12 @@
<el-row>
<el-col :span="12">
<el-form-item label="设备编号" prop="serialNumber">
- <el-input v-model.number="form.serialNumber" maxlength="50"></el-input>
+ <el-input v-model="form.serialNumber" maxlength="50" placeholder="请输入设备编号"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="设备名称" prop="name">
- <el-input v-model="form.name" maxlength="50"></el-input>
+ <el-input v-model="form.name" maxlength="50" placeholder="请输入设备名称"></el-input>
</el-form-item>
</el-col>
</el-row>
@@ -112,14 +115,28 @@
</el-col>
<el-col :span="12">
<el-form-item label="容积" prop="volume">
- <el-input v-model.number="form.volume" maxlength="50"></el-input>
+ <el-input v-model="form.volume" maxlength="50"
+ placeholder="请输入容积"
+ ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="负责人" prop="userId">
- <el-input v-model="form.userId" maxlength="50"></el-input>
+ <el-select
+ v-model="form.userId"
+ placeholder="请选择负责人"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in personInCharge"
+ :key="item.id"
+ :label="item.realname"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
</el-row>
@@ -139,6 +156,7 @@
majorEquipmentAdd,
majorEquipmentMod,
majorEquipmentDel,
+ majorEquipmentLis
} from "@/api/majorEquipment.js";
export default {
data() {
@@ -150,6 +168,7 @@
status: "",
volume: "",
serialNumber:"",
+ userId:"",
},
pageSize: 10,
recordTotal: 0,
@@ -158,28 +177,44 @@
listQuery: {
filter: {
name: "",
+ // status:"",
},
pageIndex: 1,
pageSize: 10,
},
type:'',
rules: {
- serialNumber:{ required: true, message: '容积必须为数字值'},
- volume:{ type: 'number', message: '负责人必须为数字值'},
- name: [
- { required: true, message: "预案名称不能为空", trigger: "change" },
+ serialNumber:[
+ { required: true, message: "设备编号不能为空", trigger: "change"},
+ // { type:'number', message: '设备编号必须为数字值'}
],
+ volume:[
+ { required: true, message: "容积不能为空", trigger: "change"},
+ // { type:'number', message: "容积必须为数字值", trigger: "change"},
+ { pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入数字格式,可保留两位小数' }
+ ],
+ name:{ required: true, message: "设备名称不能为空", trigger: "change" },
+ status:{ required: true, message: "状态不能为空", trigger: "change" },
+ userId:{ required: true, message: "负责人不能为空", trigger: "change" },
},
- unitIdOptions:[{label:"在用",value:0},{label:"停用",value:1}]
+ unitIdOptions:[{label:"在用",value:0},{label:"停用",value:1}],
+ personInCharge:[],
};
},
created() {
this.elementManagementL();
+ this.productionMajorEquipmentErt();
},
methods: {
+ productionMajorEquipmentErt(){
+ majorEquipmentLis().then(res=>{
+ if (res.data.code ==200){
+ this.personInCharge=res.data.result
+ }
+ })
+ },
async elementManagementL() {
var res = await majorEquipmentList(this.listQuery);
- console.log(res);
if (res.data.code == 200) {
this.list = res.data.result.records;
this.recordTotal = res.data.result.total
@@ -192,6 +227,7 @@
this.$nextTick(() => {
this.$refs["form"].clearValidate();
});
+
if (type == "新增") {
this.title = "新增";
this.form = {
@@ -250,21 +286,34 @@
});
},
deleteById(val) {
- majorEquipmentDel({id:val}).then((res) => {
- if (res.data.code == 200) {
- this.elementManagementL();
- this.$notify({
- title: "成功",
- message: "删除成功",
- type: "success",
- duration: 2000,
- });
- }
- });
+ this.$confirm('确认删除吗','提示', {
+ confirmButtonText: '确认',
+ cancelButtonText: '取消',
+ type: 'warning'
+ })
+ .then(()=>{
+ majorEquipmentDel({id:val}).then((res) => {
+ if (res.data.code == 200) {
+ this.elementManagementL();
+ this.$notify({
+ title: "成功",
+ message: "删除成功",
+ type: "success",
+ duration: 2000,
+ });
+ }
+ });
+ })
+ .catch(error =>{
+ });
},
find(){
this.elementManagementL();
},
+ reset(){
+ this.listQuery.filter={}
+ this.elementManagementL();
+ },
handleSizeChange(val){
this.listQuery.pageSize = val
this.elementManagementL();
diff --git a/src/views/safetyproduction/checklist.vue b/src/views/safetyproduction/checklist.vue
index 31bad5e..d2b83ca 100644
--- a/src/views/safetyproduction/checklist.vue
+++ b/src/views/safetyproduction/checklist.vue
@@ -16,7 +16,7 @@
</el-col>
<el-col :span="11" :offset="1" style="white-space: nowrap">
<el-form-item size="mini">
- <el-button type="primary" class="btns" @click="find" size="mini"
+ <el-button type="primary" class="btns" size="mini"
>搜索</el-button
>
<el-button
diff --git a/src/views/safetyproduction/checklistself.vue b/src/views/safetyproduction/checklistself.vue
index b2b9231..9c95d1e 100644
--- a/src/views/safetyproduction/checklistself.vue
+++ b/src/views/safetyproduction/checklistself.vue
@@ -1,125 +1,151 @@
<template>
<div class="app-container">
- <el-form ref="form" :model="form" label-width="80px">
+ <el-form ref="form" :model="listQuery" label-width="80px">
<el-row>
<el-col :span="5">
<el-form-item label="自查任务">
- <el-input v-model="form.name"></el-input>
+ <el-input v-model="listQuery.filter.inspectionName"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="检查时间">
- <el-date-picker v-model="form.value1" type="date" placeholder="选择日期">
+ <el-date-picker
+ v-model="listQuery.filter.inspectionStartTime"
+ type="date"
+ format="yyyy 年 MM 月 dd 日"
+ placeholder="选择日期"
+ >
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="检查人员">
- <el-input v-model="form.name"></el-input>
+ <el-input v-model="listQuery.filter.inspectorName"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" style="text-align: center">
- <el-button type="primary" icon="el-icon-search" class="btns"
+ <el-button
+ type="primary"
+ icon="el-icon-search"
+ class="btns"
+ @click="find()"
>搜索</el-button
>
<el-button
type="primary"
icon="el-icon-plus"
class="btns"
- @click="dialogVisible = true"
+ @click="jump()"
>新增</el-button
>
</el-col>
</el-row>
</el-form>
- <el-table :data="tableData" border style="width: 100%">
- <el-table-column prop="date" label="自查任务">
+ <el-table :data="list" border style="width: 100%">
+ <el-table-column align="center" prop="inspectionName" label="自查任务">
</el-table-column>
- <el-table-column prop="name" label="检查时间"> </el-table-column>
- <el-table-column prop="name" label="检查人员"> </el-table-column>
- <el-table-column prop="province" label="状态"> </el-table-column>
- <el-table-column prop="address" label="更新时间"> </el-table-column>
+ <el-table-column align="center" prop="createTime" label="检查时间">
+ </el-table-column>
+ <el-table-column align="center" prop="inspectorName" label="检查人员">
+ </el-table-column>
+ <el-table-column align="center" label="状态">
+ <template slot-scope="scope">
+ <span v-if="scope.row.status == -1">暂存</span>
+ <span v-if="scope.row.status == 0">评审中</span>
+ <span v-if="scope.row.status == 1">已评审</span>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" prop="updateTime" label="更新时间">
+ </el-table-column>
<el-table-column align="center" label="操作">
<template slot-scope="scope">
- <el-button @click="handleClick(scope.row)" type="text" size="small"
+ <el-button v-if="scope.row.status==-1" @click="handleClick(scope.row)" type="text" size="small"
>编辑</el-button
>
- <el-button type="text" size="small" style="color: red"
+ <el-button v-if="scope.row.status==0" @click="handleClick(scope.row)" type="text" size="small"
+ >去评审</el-button
+ >
+ <el-button v-if="scope.row.status==1" @click="handleClick(scope.row)" type="text" size="small"
+ >查看</el-button
+ >
+ <el-button v-if="scope.row.status==1?false:true" type="text" size="small" style="color: red"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
+ <div style="text-align: right">
+ <el-pagination
+ v-show="recordTotal > 0"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ :current-page="currentPage"
+ :page-sizes="[10, 20, 30, 50]"
+ :page-size="pageSize"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="recordTotal"
+ >
+ </el-pagination>
+ </div>
</div>
</template>
<script>
+import { safetySelfInspectionList } from "@/api/safetySelfInspection.js";
export default {
data() {
return {
dialogVisible: false,
- form: {
- name: "",
- value1:"",
+ form: {},
+ listQuery: {
+ filter: {
+ inspectionName: "",
+ inspectorName: "",
+ inspectionStartTime: "",
+ inspectionEndTime: "",
+ status: "",
+ },
+ pageIndex: 1,
+ pageSize: 5,
},
- tableData: [
- {
- date: "2016-05-02",
- name: "王小虎",
- province: "上海",
- city: "普陀区",
- address: "上海市普陀区金沙江路 1518 弄",
- zip: 200333,
- },
- {
- date: "2016-05-04",
- name: "王小虎",
- province: "上海",
- city: "普陀区",
- address: "上海市普陀区金沙江路 1517 弄",
- zip: 200333,
- },
- {
- date: "2016-05-01",
- name: "王小虎",
- province: "上海",
- city: "普陀区",
- address: "上海市普陀区金沙江路 1519 弄",
- zip: 200333,
- },
- {
- date: "2016-05-03",
- name: "王小虎",
- province: "上海",
- city: "普陀区",
- address: "上海市普陀区金沙江路 1516 弄",
- zip: 200333,
- },
- ],
- options: [
- {
- value: "选项1",
- label: "黄金糕",
- },
- {
- value: "选项2",
- label: "双皮奶",
- },
- {
- value: "选项3",
- label: "蚵仔煎",
- },
- {
- value: "选项4",
- label: "龙须面",
- },
- {
- value: "选项5",
- label: "北京烤鸭",
- },
- ],
- value: "",
+ list: [],
+ pageSize: 10,
+ recordTotal: 0,
+ currentPage: 1,
};
},
+ created() {
+ this.safetySelfInspectionL();
+ },
+ methods: {
+ async safetySelfInspectionL() {
+ var res = await safetySelfInspectionList(this.listQuery).then((res) => {
+ if (res.data.code == 200) {
+ console.log(res.data);
+ this.list = res.data.result.records;
+ this.recordTotal = res.data.result.total;
+ this.pageSize = res.data.result.size;
+ this.currentPage = res.data.result.current;
+ }
+ });
+ },
+ handleClick(index) {},
+ find() {
+ this.safetySelfInspectionL();
+ },
+ handleSizeChange(val) {
+ this.listQuery.pageSize = val;
+ this.safetySelfInspectionL();
+ },
+ handleCurrentChange(val) {
+ this.listQuery.pageIndex = val;
+ this.safetySelfInspectionL();
+ },
+ jump(){
+ this.$router.push({
+ path:"/new"
+ })
+ }
+ },
};
</script>
<style scoped>
diff --git a/src/views/safetyproduction/new.vue b/src/views/safetyproduction/new.vue
index 66d9aa7..ca2005c 100644
--- a/src/views/safetyproduction/new.vue
+++ b/src/views/safetyproduction/new.vue
@@ -4,104 +4,142 @@
<div class="box-left">
<Titlename title="检查项树"></Titlename>
<div class="box-left-content">
- <!-- <el-form ref="form" :model="form" style="font-size: 12px" size="mini">
- <el-row>
- <el-col :span="12">
- <el-form-item size="mini">
- <el-input
- v-model="form.name"
- placeholder="请输入检查项名称"
- ></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="11" :offset="1" style="white-space: nowrap">
- <el-form-item size="mini">
- <el-button type="primary" class="btns" size="mini">搜索</el-button>
- <el-button
- type="primary"
- style="margin: 0px"
- class="btns"
- icon="el-icon-plus"
- size="mini"
- ></el-button>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form> -->
<el-tree
- :data="data"
- :props="defaultProps"
+ :data="tree"
+ node-key="id"
+ @check="treeClick"
+ show-checkbox
></el-tree>
</div>
</div>
- <div class="box-right" v-if="show">
- <div class="title">A级要素:<span>A级要素2</span></div>
- <div v-for="(item,index) in 2" :key="index">
+ <div class="box-right" v-if="list == '' ? false : true">
+ <el-button type="primary" @click="open()" class="btns">添加</el-button>
+ <div v-for="(item, i) in lists" :key="i">
+ <div class="title">
+ A级要素:<span>{{ item.nameA }}</span>
+ </div>
+ <div v-for="(item, index) in item.child" :key="index">
<el-row class="titles">
- <el-col :span="6" :offset="1"><p><span>B级要素:</span>法律、法规和标准的识别和获取</p></el-col>
- <el-col :span="6" :offset="4"><p><span>得分:</span>50</p></el-col>
+ <el-col :span="6" :offset="1"
+ ><p><span>B级要素:</span>{{ item.elementBName }}</p></el-col
+ >
+ <el-col :span="6" :offset="4"
+ ><p><span>得分:</span>50</p></el-col
+ >
</el-row>
<el-row>
- <el-col :span="22" :offset="1">
- <el-table
- border
- :data="tableData"
+ <el-col :span="22" :offset="1">
+ <el-table border :data="item.child">
+ <el-table-column
+ prop="standardizationRequirements"
+ align="center"
+ label="标准化要求"
+ >
+ </el-table-column>
+ <el-table-column
+ prop="enterpriseStandard"
+ align="center"
+ label="企业达标标准"
+ ></el-table-column>
+ <el-table-column
+ prop="reviewMethod"
+ align="center"
+ label="评审方法"
+ ></el-table-column>
+ <el-table-column prop="name" align="center" label="评审标准">
+ <el-table-column
+ prop="veto"
+ align="center"
+ label="否决项"
+ ></el-table-column>
+ <el-table-column
+ align="center"
+ width="80px"
+ type="expand"
+ label="扣分项"
>
- <el-table-column
- prop="date"
- align="center"
- label="标准化要求"
- >
- </el-table-column>
- <el-table-column
- prop="name"
- align="center"
- label="企业达标标准"
- ></el-table-column>
- <el-table-column
- prop="name"
- align="center"
- label="评审方法"
- ></el-table-column>
+ <el-table :data="item.child.deductionList">
<el-table-column
- prop="name"
- align="center"
- label="评审标准"
+ prop="name"
+ align="center"
+ label="扣分项"
+ >
+ </el-table-column>
+ <el-table-column prop="date" align="center" label="扣分">
+ </el-table-column>
+ <el-table-column
+ prop="date"
+ align="center"
+ label="扣分备注"
+ >
+ </el-table-column>
+ </el-table>
+ </el-table-column>
+ </el-table-column>
+ <el-table-column align="center" label="操作" width="200px">
+ <template slot-scope="scope">
+ <el-button
+ @click="handleClick(scope.row)"
+ type="text"
+ size="small"
+ >修改</el-button
>
- <el-table-column
- prop="name"
- align="center"
- label="否决项"
- ></el-table-column>
- <el-table-column
- prop="name"
- align="center"
- label="扣分项"
- ></el-table-column>
- </el-table-column>
- <el-table-column align="center" label="操作" width="200px">
- <template slot-scope="scope">
- <el-button
- @click="handleClick(scope.row)"
- type="text"
- size="small"
- >修改</el-button
- >
- <!-- <el-button type="text" size="small" style="color: red"
+ <!-- <el-button type="text" size="small" style="color: red"
>删除</el-button
> -->
- </template>
- </el-table-column>
- </el-table>
- </el-col>
- </el-row>
+ </template>
+ </el-table-column>
+ </el-table>
+ </el-col>
+ </el-row>
</div>
</div>
</div>
+ </div>
+ <el-dialog
+ title="添加"
+ :visible.sync="dialogVisible"
+ width="30%"
+>
+ <el-form ref="form" :model="form" label-width="100px">
+ <el-form-item label="自查清单名称">
+ <el-input v-model="form.inspectionName"></el-input>
+ </el-form-item>
+ <el-form-item label="检查人名称">
+ <el-select v-model="form.inspector" placeholder="请选择">
+ <el-option
+ v-for="item in nameList"
+ :key="item.id"
+ :label="item.realname"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="时间">
+ <el-col :span="11">
+ <el-date-picker type="date" format="yyyy 年 MM 月 dd 日" placeholder="开始时间" v-model="form.inspectionTime" style="width: 100%;"></el-date-picker>
+ </el-col>
+ <!-- <el-col style="text-align:center" :span="2">-</el-col>
+ <el-col :span="11">
+ <el-date-picker type="date" format="yyyy 年 MM 月 dd 日" placeholder="结束时间" v-model="form.inspectionEndTime" style="width: 100%;"></el-date-picker>
+ </el-col> -->
+ </el-form-item>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="dialogVisible = false">取 消</el-button>
+ <el-button type="primary" @click="addC">确 定</el-button>
+ </span>
+</el-dialog>
</div>
</template>
<script>
import Titlename from "../../components/Titlename/index.vue";
+import {
+ safetyInspectionItemTreeA,
+ safetyInspectionItemTreeB,
+ safetySelfInspectionAdd,
+ safetyInspectionItemName,
+} from "@/api/safetySelfInspection.js";
export default {
components: { Titlename },
data() {
@@ -109,110 +147,121 @@
dialogVisible: false,
show: true,
form: {
- name: "",
+ inspectionName:"",
+ inspector:"",
+ inspectionTime:"",
+ status:"",
+ itemList:[]
},
formInline: {
user: "",
region: "",
},
- tableData: [
- {
- date: "2016-05-02",
- name: "王小虎",
- province: "上海",
- city: "普陀区",
- address: "上海市普陀区金沙江路 1518 弄",
- zip: 200333,
- },
- {
- date: "2016-05-04",
- name: "王小虎",
- province: "上海",
- city: "普陀区",
- address: "上海市普陀区金沙江路 1517 弄",
- zip: 200333,
- },
- {
- date: "2016-05-01",
- name: "王小虎",
- province: "上海",
- city: "普陀区",
- address: "上海市普陀区金沙江路 1519 弄",
- zip: 200333,
- },
- {
- date: "2016-05-03",
- name: "王小虎",
- province: "上海",
- city: "普陀区",
- address: "上海市普陀区金沙江路 1516 弄",
- zip: 200333,
- },
- ],
- data: [
- {
- label: "一级 1",
- children: [
- {
- label: "二级 1-1",
- children: [
- {
- label: "三级 1-1-1",
- },
- ],
- },
- ],
- },
- {
- label: "一级 2",
- children: [
- {
- label: "二级 2-1",
- children: [
- {
- label: "三级 2-1-1",
- },
- ],
- },
- {
- label: "二级 2-2",
- children: [
- {
- label: "三级 2-2-1",
- },
- ],
- },
- ],
- },
- {
- label: "一级 3",
- children: [
- {
- label: "二级 3-1",
- children: [
- {
- label: "三级 3-1-1",
- },
- ],
- },
- {
- label: "二级 3-2",
- children: [
- {
- label: "三级 3-2-1",
- },
- ],
- },
- ],
- },
- ],
- defaultProps: {
- children: "children",
- label: "label",
- },
+ list: [],
+ lists:[],
+ nameList:[],
+ tree: [],
+ id: "",
+ nameA: "",
+ arr:[]
};
},
+ created() {
+ this.TreeA();
+ },
methods: {
+ TreeA() {
+ safetyInspectionItemTreeA().then((res) => {
+ if (res.data.code == 200) {
+ // console.log(res.data)
+ this.tree = res.data.result;
+ }
+ });
+ },
+ TreeB(id) {
+ safetyInspectionItemTreeB({ id: id }).then((res) => {
+ this.list=[]
+ if (res.data.code == 200) {
+ this.list = res.data.result;
+ console.log(this.list)
+ var capA={nameA:'',id:[],child:[]}
+ var atte=[]
+ capA.nameA = this.list[0].elementAName;
+ for(var i=0;i<this.list.length;i++){
+ var capB={safetySelfInspectionId:"",safetyInspectionItemId:""}
+ capB.safetyInspectionItemId=this.list[i].id
+ atte.push(capB)
+ }
+ capA.id=atte
+ capA.child= this.checkSameData(this.list);
+ if(this.lists.findIndex(item=>item.nameA===capA.nameA)==-1){
+ this.lists.push(capA)
+
+ }else{
+ var i=this.lists.findIndex(item=>item.nameA===capA.nameA)
+ this.lists.splice(i,1)
+ }
+ }
+ console.log(this.lists)
+ });
+ },
+ checkSameData(resData) {
+ let dataInfo = {};
+ resData.forEach((item, index) => {
+ let { elementBName } = item;
+ if (!dataInfo[elementBName]) {
+ dataInfo[elementBName] = {
+ elementBName,
+ child: [],
+ };
+ }
+ dataInfo[elementBName].child.push(item);
+ });
+ let list = Object.values(dataInfo); // list 转换成功的数据
+ return list;
+ },
+ treeClick(currentObj) {
+ this.TreeB(currentObj.value);
+ },
+ handleClick(data) {
+ this.$router.push({
+ path: "/reviewXG",
+ query: {
+ id: data,
+ },
+ });
+ },
+ open(){
+ var arr=[]
+ for(var i=0;i<this.lists.length;i++){
+ this.lists[i].id
+ for(var j=0;j<this.lists[i].id.length;j++){
+ arr.push(this.lists[i].id[j])
+ }
+ }
+ this.form.itemList=arr
+ this.dialogVisible = true
+ safetyInspectionItemName().then(res=>{
+ // console.log(res)
+ if(res.data.code==200){
+ this.nameList=res.data.result
+ }
+ })
+ },
+ addC(){
+ safetySelfInspectionAdd(this.form).then(res=>{
+ if(res.data.code==200){
+ this.dialogVisible=false
+ this.$notify({
+ type: "success",
+ duration: 2000,
+ message: "新增成功",
+ title: "成功",
+ });
+ }
+
+ })
+ },
btnsQX() {
this.show = true;
},
@@ -239,16 +288,22 @@
padding: 10px;
}
.box-right {
+ position: relative;
width: 79%;
background-color: white;
border-radius: 5px;
}
-.title{
+.title {
font-size: 16px;
padding: 10px 20px;
font-weight: bold;
}
-.titles{
+.titles {
font-size: 14px;
}
+.btns{
+ position: absolute;
+ top: 10px;
+ right: 50px;
+}
</style>
\ No newline at end of file
diff --git a/src/views/safetyproduction/reviewXG.vue b/src/views/safetyproduction/reviewXG.vue
index 9ba6b88..b0a1349 100644
--- a/src/views/safetyproduction/reviewXG.vue
+++ b/src/views/safetyproduction/reviewXG.vue
@@ -221,6 +221,9 @@
},
};
},
+ created(){
+ console.log(this.$route.query.id)
+ },
methods: {
handleClick() {
this.dialogVisible = true;
--
Gitblit v1.9.2