From 364ad41d844696b80b1de0a33d8c2d1e8c101031 Mon Sep 17 00:00:00 2001
From: Admin <978517621@qq.com>
Date: Mon, 04 Jul 2022 18:17:21 +0800
Subject: [PATCH] 添加修改页面
---
src/views/specialWorkSystem/workApplyManagement/workApply/index.vue | 496 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 483 insertions(+), 13 deletions(-)
diff --git a/src/views/specialWorkSystem/workApplyManagement/workApply/index.vue b/src/views/specialWorkSystem/workApplyManagement/workApply/index.vue
index 9bde059..834c558 100644
--- a/src/views/specialWorkSystem/workApplyManagement/workApply/index.vue
+++ b/src/views/specialWorkSystem/workApplyManagement/workApply/index.vue
@@ -1,6 +1,7 @@
<template>
<div class="home-container">
- <el-form :model="form" label-width="120px">
+ <el-scrollbar height="100%">
+ <el-form :model="form" label-width="150px">
<el-row>
<el-col :span="8">
<el-form-item label="申请部门">
@@ -12,10 +13,15 @@
</el-col>
<el-col :span="8">
<el-form-item label="申请人">
- <el-select v-model="form.applyName" placeholder="请选择">
- <el-option label="胡海涛" value="胡海涛" />
- <el-option label="其他人" value="其他人" />
- </el-select>
+ <el-input
+ v-model="form.applyName"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
</el-form-item>
</el-col>
</el-row>
@@ -48,11 +54,326 @@
</el-col>
</el-row>
<el-row>
- <el-col :span="8">
- <el-button type="primary" size="default">添加作业人</el-button>
+ <el-col :span="3"><el-button type="primary" size="default" @click="dialogAddWorker = true">添加作业人</el-button></el-col>
+ <el-col :span="21">
+ <el-table :data="form.workerList" style="width: 100%">
+ <el-table-column type="index" label="序号" width="100"/>
+ <el-table-column prop="worker" label="作业人"/>
+ <el-table-column prop="role" label="作业人角色" width="180" />
+ <el-table-column prop="unit" label="所属单位" width="180" />
+ <el-table-column prop="certificate" label="证书名称" width="180" />
+ <el-table-column prop="certificateId" label="证书号" />
+ <el-table-column fixed="right" label="操作">
+ <template #default="scope">
+ <el-button link type="danger" size="small" @click="deleteRow(scope.$index)">删除</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="作业地点">
+ <el-input
+ v-model="form.workLocation"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="作业期限">
+ <el-date-picker
+ v-model="form.workTimeLine"
+ type="daterange"
+ unlink-panels
+ range-separator="至"
+ start-placeholder="开始日期"
+ end-placeholder="结束日期"
+ :shortcuts="shortcuts"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="作业内容">
+ <el-input
+ v-model="form.workContent"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="作业单位">
+ <el-input
+ v-model="form.workUnit"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>选择作业单位</template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="作业负责人">
+ <el-input
+ v-model="form.responser"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="监护人">
+ <el-input
+ v-model="form.monitor"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="监护人岗位">
+ <el-input
+ v-model="form.monitorStation"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="生产车间负责人">
+ <el-input
+ v-model="form.workhouseLeader"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="申请日期">
+ <el-date-picker
+ size="large"
+ v-model="form.applyDate"
+ type="date"
+ placeholder="请选择"
+ style="width: 100%"
+ ></el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-divider />
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="涉及的其他特殊作业">
+ <el-checkbox-group v-model="form.otherSpecialWorks">
+ <el-checkbox label="动火作业" />
+ <el-checkbox label="受限空间" />
+ <el-checkbox label="高处作业" />
+ <el-checkbox label="吊装作业" />
+ <el-checkbox label="临时用电" />
+ <el-checkbox label="设备检修" />
+ <el-checkbox label="盲板抽堵" />
+ <el-checkbox label="断路作业" />
+ <el-checkbox label="动土作业" />
+ </el-checkbox-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col>
+ <el-form-item label="防护用品">
+ <el-cascader
+ v-model="form.protections"
+ :options="protectOption"
+ :props="{expandTrigger: 'hover'}"
+ @change="protectionsChange"
+ placeholder="请选择"
+ style="width: 100%"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6"><el-button type="primary" size="default" @click="dialogAddFile = true">点击添加安全交底和风险告知书</el-button></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="实施安全教育人">
+ <el-input
+ v-model="form.safetyMan"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="被教育人">
+ <el-input
+ v-model="form.educated"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-divider />
+ <el-row>
+ <el-col :span="24" class="submitBtn">
+ <el-button type="primary" size="large" plain>发起申请</el-button>
</el-col>
</el-row>
</el-form>
+ <el-dialog v-model="dialogAddWorker" title="添加作业人">
+ <el-form :model="addWorkerForm" label-width="120px">
+ <el-form-item label="作业人">
+ <el-input
+ v-model="addWorkerForm.worker"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ <el-form-item label="作业人角色">
+ <el-input
+ v-model="addWorkerForm.role"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ <el-form-item label="作业人角色">
+ <el-input
+ v-model="addWorkerForm.unit"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ <el-form-item label="证书名称">
+ <el-input
+ v-model="addWorkerForm.certificate"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ <el-form-item label="证书号">
+ <el-input
+ v-model="addWorkerForm.certificateId"
+ placeholder="请输入"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :icon="Search" />
+ </template>
+ </el-input>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" @click="onSubmitAddForm" size="default">确认</el-button>
+ <el-button size="default" @click="cancleAdd">取消</el-button>
+ </el-form-item>
+ </el-form>
+ </el-dialog>
+ <el-dialog v-model="dialogAddFile" title="安全交底和风险告知">
+ <el-form :model="form.saftyFile" label-width="120px">
+ <el-form-item label="作业许可范围及作业环境:">
+ <el-input
+ v-model="form.saftyFile.surrounding"
+ :rows="2"
+ type="textarea"
+ placeholder="请输入"
+ />
+ </el-form-item>
+ <el-form-item label="作业风险:">
+ <el-input
+ v-model="form.saftyFile.risk"
+ :rows="2"
+ type="textarea"
+ placeholder="请输入"
+ />
+ </el-form-item>
+ <el-form-item label="防范措施(工艺、设备、个体防护等)">
+ <el-input
+ v-model="form.saftyFile.protection"
+ :rows="2"
+ type="textarea"
+ placeholder="请输入"
+ />
+ </el-form-item>
+ <el-form-item label="应急措施">
+ <el-input
+ v-model="form.saftyFile.emergency"
+ :rows="2"
+ type="textarea"
+ placeholder="请输入"
+ />
+ </el-form-item>
+ <el-form-item label="其他注意事项">
+ <el-input
+ v-model="form.saftyFile.otherStuff"
+ :rows="2"
+ type="textarea"
+ placeholder="请输入"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" @click="onSubmitAddFile" size="default">确认</el-button>
+ <el-button size="default" @click="cancleAddFile">取消</el-button>
+ </el-form-item>
+ </el-form>
+ </el-dialog>
+ </el-scrollbar>
</div>
</template>
@@ -62,6 +383,7 @@
import { initBackEndControlRoutes } from '/@/router/backEnd';
import {useUserInfo} from "/@/stores/userInfo";
import { Session } from '/@/utils/storage';
+ import { Search } from '@element-plus/icons-vue'
let global: any = {
homeChartOne: null,
homeChartTwo: null,
@@ -88,11 +410,132 @@
applyName: '',
level: '',
riskIdentify: '',
- workWay: ''
+ workWay: '',
+ workerList: [],
+ workLocation: '',
+ workTimeLine: '',
+ workContent: '',
+ workUnit: '',
+ responser: '',
+ monitor: '',
+ workMonitor: '',
+ monitorStation: '',
+ workhouseLeader: '',
+ applyDate: '',
+ otherSpecialWorks: [],
+ protections: '',
+ saftyFile: {},
+ safetyMan: '',
+ educated: ''
})
+ const dialogAddWorker = ref(false)
+ const dialogAddFile = ref(false)
+ const addWorkerForm = ref({
+ worker: '',
+ role: '',
+ unit: '',
+ certificate: '',
+ certificateId: ''
+ })
+ const shortcuts = [
+ {
+ text: 'Last week',
+ value: () => {
+ const end = new Date()
+ const start = new Date()
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
+ return [start, end]
+ },
+ },
+ {
+ text: 'Last month',
+ value: () => {
+ const end = new Date()
+ const start = new Date()
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
+ return [start, end]
+ },
+ },
+ {
+ text: 'Last 3 months',
+ value: () => {
+ const end = new Date()
+ const start = new Date()
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
+ return [start, end]
+ },
+ },
+ ]
+ const protectOption = [
+ {
+ value: 'guide',
+ label: 'Guide',
+ children: [
+ {
+ value: 'disciplines',
+ label: 'Disciplines',
+ children: [
+ {
+ value: 'consistency',
+ label: 'Consistency',
+ },
+ {
+ value: 'feedback',
+ label: 'Feedback',
+ }
+ ],
+ },
+ {
+ value: 'navigation',
+ label: 'Navigation',
+ children: [
+ {
+ value: 'side nav',
+ label: 'Side Navigation',
+ }
+ ],
+ },
+ ],
+ }
+ ]
+ const protectionsChange = (value) => {
+ console.log(value)
+ }
- const onSubmit = () => {
- console.log('submit!')
+ const onSubmitAddForm = () => {
+ form.workerList.push(addWorkerForm.value)
+ addWorkerForm.value = {
+ worker: '',
+ role: '',
+ unit: '',
+ certificate: '',
+ certificateId: ''
+ }
+ dialogAddWorker.value = false
+ }
+ const onSubmitAddFile = () =>{
+
+ }
+ const cancleAdd = ()=> {
+ addWorkerForm.value = {
+ worker: '',
+ role: '',
+ unit: '',
+ certificate: '',
+ certificateId: ''
+ }
+ dialogAddWorker.value = false
+ }
+ const cancleAddFile = ()=>{
+
+ }
+ const deleteRow = (index) =>{
+ console.log(index)
+ form.workerList.splice( index,1)
+ dialogAddWorker.value = false
+ }
+ const addSaftyFile = () =>{
+
}
// 折线图
const renderMenu = async (value: string) => {
@@ -103,7 +546,19 @@
return {
renderMenu,
form,
- onSubmit,
+ Search,
+ shortcuts,
+ protectOption,
+ dialogAddWorker,
+ dialogAddFile,
+ addWorkerForm,
+ cancleAddFile,
+ deleteRow,
+ cancleAdd,
+ addSaftyFile,
+ onSubmitAddForm,
+ onSubmitAddFile,
+ protectionsChange,
...toRefs(state),
};
},
@@ -111,8 +566,8 @@
</script>
<style scoped lang="scss">
- $homeNavLengh: 8;
.home-container {
+ height: 100%;
overflow: hidden;
padding: 40px;
.el-row{
@@ -122,9 +577,24 @@
margin-bottom: 0;
}
.el-col{
- display: flex;
align-items: center;
margin-bottom: 10px;
}
+ .el-input{
+ width: 100% !important;
+ }
+ .el-date-editor::v-deep{
+ width: 100%;
+ }
+ .el-select{
+ width: 100%;
+ }
+ .el-cascader{
+ width: 100% !important;
+ }
+ .submitBtn{
+ display: flex;
+ justify-content: center;
+ }
}
</style>
--
Gitblit v1.9.2