|
|
@@ -32,6 +32,230 @@
|
|
|
<el-form-item label="备注" prop="remark">
|
|
|
<el-input type="textarea" v-model="formData.remark" placeholder="请输入备注" />
|
|
|
</el-form-item>
|
|
|
+
|
|
|
+ <el-divider>是否需要相关证书</el-divider>
|
|
|
+
|
|
|
+ <!-- <div class="flex flex-wrap items-center justify-between">
|
|
|
+ <el-form-item label="硫化氢证" prop="lsh">
|
|
|
+ <el-select v-model="formData.lsh" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="井控证" prop="jk">
|
|
|
+ <el-select v-model="formData.jk" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="HSE证" prop="hse">
|
|
|
+ <el-select v-model="formData.hse" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="司钻证" prop="sz">
|
|
|
+ <el-select v-model="formData.sz" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="高处作业证" prop="gczy">
|
|
|
+ <el-select v-model="formData.gczy" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="电工证" prop="dg">
|
|
|
+ <el-select v-model="formData.dg" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item
|
|
|
+ label="连续油管主操证"
|
|
|
+ prop="lxygzc"
|
|
|
+ label-width="auto"
|
|
|
+ style="margin-left: -5px">
|
|
|
+ <el-select v-model="formData.lxygzc" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="吊装证" prop="dz">
|
|
|
+ <el-select v-model="formData.dz" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="特种作业证" prop="tzzy">
|
|
|
+ <el-select v-model="formData.tzzy" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="安全管理证" prop="aqgl">
|
|
|
+ <el-select v-model="formData.aqgl" placeholder="请选择" clearable style="width: 150px">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </div> -->
|
|
|
+
|
|
|
+ <div class="flex flex-wrap items-center justify-between">
|
|
|
+ <el-form-item label="硫化氢证" prop="lsh">
|
|
|
+ <el-radio-group v-model="formData.lsh">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="井控证" prop="jk">
|
|
|
+ <el-radio-group v-model="formData.jk">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="HSE证" prop="hse">
|
|
|
+ <el-radio-group v-model="formData.hse">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="司钻证" prop="sz">
|
|
|
+ <el-radio-group v-model="formData.sz">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="高处作业证" prop="gczy">
|
|
|
+ <el-radio-group v-model="formData.gczy">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="电工证" prop="dg">
|
|
|
+ <el-radio-group v-model="formData.dg">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item
|
|
|
+ label="连续油管主操证"
|
|
|
+ prop="lxygzc"
|
|
|
+ label-width="auto"
|
|
|
+ style="margin-left: -5px">
|
|
|
+ <el-radio-group v-model="formData.lxygzc">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="吊装证" prop="dz">
|
|
|
+ <el-radio-group v-model="formData.dz">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="特种作业证" prop="tzzy">
|
|
|
+ <el-radio-group v-model="formData.tzzy">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="安全管理证" prop="aqgl">
|
|
|
+ <el-radio-group v-model="formData.aqgl">
|
|
|
+ <el-radio
|
|
|
+ v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
+ :key="dict.value"
|
|
|
+ :value="dict.value">
|
|
|
+ {{ dict.label }}
|
|
|
+ </el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
</el-form>
|
|
|
<template #footer>
|
|
|
<el-button @click="submitForm" type="primary" :disabled="formLoading">确 定</el-button>
|
|
|
@@ -45,6 +269,7 @@ import { handleTree, defaultProps } from '@/utils/tree'
|
|
|
import * as DeptApi from '@/api/system/dept'
|
|
|
import { useUserStore } from '@/store/modules/user'
|
|
|
import { ElMessageBox } from 'element-plus'
|
|
|
+import { DICT_TYPE, getBoolDictOptions } from '@/utils/dict'
|
|
|
/** SOC卡汇总 表单 */
|
|
|
defineOptions({ name: 'IotSocSummaryForm' })
|
|
|
|
|
|
@@ -65,13 +290,34 @@ const formData = ref({
|
|
|
|
|
|
remark: undefined,
|
|
|
deptId: undefined,
|
|
|
- deptName: undefined
|
|
|
+ deptName: undefined,
|
|
|
+ lsh: undefined,
|
|
|
+ jk: undefined,
|
|
|
+ hse: undefined,
|
|
|
+ sz: undefined,
|
|
|
+ gczy: undefined,
|
|
|
+ dg: undefined,
|
|
|
+ lxygzc: undefined,
|
|
|
+ dz: undefined,
|
|
|
+ tzzy: undefined,
|
|
|
+ aqgl: undefined
|
|
|
})
|
|
|
const formRules = reactive({
|
|
|
nickname: [{ required: true, message: '请输入姓名', trigger: 'blur' }],
|
|
|
deptId: [{ required: true, message: '请选择所属队伍', trigger: 'blur' }],
|
|
|
mobile: [{ required: true, message: '请输入手机号', trigger: 'blur' }],
|
|
|
- postName: [{ required: true, message: '请输入岗位名称', trigger: 'blur' }]
|
|
|
+ postName: [{ required: true, message: '请输入岗位名称', trigger: 'blur' }],
|
|
|
+
|
|
|
+ lsh: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ jk: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ hse: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ sz: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ gczy: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ dg: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ lxygzc: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ dz: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ tzzy: [{ required: true, message: '请选择', trigger: 'blur' }],
|
|
|
+ aqgl: [{ required: true, message: '请选择', trigger: 'blur' }]
|
|
|
})
|
|
|
const formRef = ref() // 表单 Ref
|
|
|
|