From 364ad41d844696b80b1de0a33d8c2d1e8c101031 Mon Sep 17 00:00:00 2001 From: Admin <978517621@qq.com> Date: 星期一, 04 七月 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