From e2cad5345678266960d40f1ba5e3ffac4d5c85e8 Mon Sep 17 00:00:00 2001 From: Your Name <123456> Date: 星期三, 13 七月 2022 09:19:05 +0800 Subject: [PATCH] Merge branch 'master' of https://sinanoaq.cn:8888/r/gtqt --- src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue | 111 +++++++++++++++++++++++-------------------------------- 1 files changed, 46 insertions(+), 65 deletions(-) diff --git a/src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue b/src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue index 42b3dff..7b0a1e0 100644 --- a/src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue +++ b/src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue @@ -2,60 +2,15 @@ <div class="home-container"> <el-scrollbar height="100%"> <el-form :model="form" label-width="150px" :rules="applyRules" ref="ruleFormRef2"> -<!-- <blind-panel-form></blind-panel-form>--> - <div class="homeCard"> - <el-row> - <el-col :span="8"> - <el-form-item label="申请部门"> - <el-select v-model="form.department" placeholder="请选择部门"> - <el-option label="机修班" value="机修班" /> - <el-option label="火工班" value="火工班" /> - </el-select> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="申请人"> - <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> - <el-row> - <el-col :span="8"> - <el-form-item label="作业等级"> - <el-select v-model="form.level" placeholder="请选择"> - <el-option label="一" value="一" /> - <el-option label="二" value="二" /> - </el-select> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="危害辨识"> - <el-select v-model="form.riskIdentify" placeholder="请选择"> - <el-option label="辨识一" value="辨识一" /> - <el-option label="辨识二" value="辨识二" /> - </el-select> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="8"> - <el-form-item label="动火方式"> - <el-select v-model="form.workWay" placeholder="请选择"> - <el-option label="方式一" value="方式一" /> - <el-option label="方式二" value="方式二" /> - </el-select> - </el-form-item> - </el-col> - </el-row> - </div> + <blind-panel-form :bpForm="form.addForm" ref="additionalForm"></blind-panel-form> +<!-- <cut-line-form :clForm="form.addForm" ref="additionalForm"></cut-line-form>--> +<!-- <dirt-work-form :dwForm="form.addForm" ref="additionalForm"></dirt-work-form>--> +<!-- <fire-work-form :fwForm="form.addForm" ref="additionalForm"></fire-work-form>--> +<!-- <hang-load-form :hlForm="form.addForm" ref="additionalForm"></hang-load-form>--> +<!-- <high-work-form :hwForm="form.addForm" ref="additionalForm"></high-work-form>--> +<!-- <limited-space-form :lsForm="form.addForm" ref="additionalForm"></limited-space-form>--> +<!-- <temp-elect-form :teForm="form.addForm" ref="additionalForm"></temp-elect-form>--> + <div> <div class="homeCard"> <el-row> <el-col :span="3"><el-button type="primary" size="default" @click="dialogAddWorker = true">添加作业人</el-button></el-col> @@ -261,7 +216,8 @@ </el-col> </el-row> </div> - <div class="homeCard applyBtn"> + </div> + <div class="applyBtn"> <el-row> <el-col :span="24" class="submitBtn"> <el-button type="primary" size="large" plain @click="handleApply(ruleFormRef2)">发起申请</el-button> @@ -327,7 +283,7 @@ </el-input> </el-form-item> <el-form-item> - <el-button type="primary" @click="onSubmitAddForm" size="default">确认</el-button> + <el-button type="primary" @click="onSubmitAddForm(ruleFormRef3)" size="default">确认</el-button> <el-button size="default" @click="cancleAdd">取消</el-button> </el-form-item> </el-form> @@ -396,6 +352,7 @@ import {useUserInfo} from "/@/stores/userInfo"; import { Session } from '/@/utils/storage'; import { Search } from '@element-plus/icons-vue' + import { ElMessage } from 'element-plus' import type { FormInstance, FormRules } from 'element-plus' let global: any = { homeChartOne: null, @@ -429,11 +386,7 @@ homeOne:[{id:1,name:'基础数据权限管理系统'},{id:2,name:'双重预防系统'},{id:3,name:'系统2'},{id:4,name:'系统3'},{id:5,name:'系统4'}], }); const form = reactive({ - department: '', - applyName: '', - level: '', - riskIdentify: '', - workWay: '', + addForm: {}, workerList: [], workLocation: '', workTimeLine: '', @@ -532,6 +485,7 @@ const ruleFormRef2 = ref<FormInstance>() const ruleFormRef3 = ref<FormInstance>() const applyRules = reactive<FormRules>({ + extraForm: [{type: 'object', required: true,message: '此处不能为空'}], workLocation: [{required: true,message: '此处不能为空'}], workTimeLine: [{required: true,message: '此处不能为空'}], workContent: [{required: true,message: '此处不能为空'}], @@ -542,7 +496,7 @@ monitorStation: [{required: true,message: '此处不能为空'}], workhouseLeader: [{required: true,message: '此处不能为空'}], applyDate: [{required: true,message: '此处不能为空'}], - otherSpecialWorks: [{required: true,message: '此处不能为空'}], + otherSpecialWorks: [{type: 'array', required: true,message: '此处不能为空'}], protections: [{required: true,message: '此处不能为空'}], safetyMan: [{required: true,message: '此处不能为空'}], educated: [{required: true,message: '此处不能为空'}] @@ -601,15 +555,31 @@ const deleteRow = (index) =>{ form.workerList.splice( index,1) } + const isValid = ref(false) + const additionalForm = ref(null) const handleApply = async (formEl: FormInstance | undefined) =>{ if (!formEl) return + const flag = additionalForm.value.validateForm() + await flag.then((res)=>{ + isValid.value = res + }) await formEl.validate((valid, fields) => { - if (valid) { - console.log('submit!') + console.log(valid,'and',isValid.value) + if (valid && isValid.value) { + console.log('submit',form,fields) + ElMessage({ + message: '提交成功!', + type: 'success', + }) } else { - console.log('error submit!', fields) + // console.log('error submit!',form,fields) + ElMessage({ + message: '表单未填写完整', + type: 'error', + }) } }) + } // 折线图 const renderMenu = async (value: string) => { @@ -630,9 +600,11 @@ ruleFormRef, ruleFormRef2, ruleFormRef3, + additionalForm, addWorkerRules, saftyFileRules, applyRules, + isValid, handleApply, cancleAddFile, deleteRow, @@ -658,11 +630,20 @@ background: #fff; border-radius: 4px; margin-bottom: 20px; + + &:last-of-type{ + margin-bottom: 100px; + } } .applyBtn{ position: absolute; + width: 100%; + padding: 20px; + background: #fff; bottom: 0; left: 0; + height: 80px; + z-index: 999; margin-bottom: 0; border-radius: 0; box-shadow: 0 -3px 8px rgba(150,150,150,.1); -- Gitblit v1.9.2