Your Name
2022-07-13 e2cad5345678266960d40f1ba5e3ffac4d5c85e8
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);