| | |
| | | <template> |
| | | <el-dialog :fullscreen="full" v-model="dialogVisible" :title="titles" width="50%" draggable> |
| | | <el-dialog :fullscreen="full" v-model="dialogVisible" @close="resetForms(ruleFormRefs)" :title="titles" width="50%" draggable> |
| | | <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> |
| | | <el-form :model="form" :disabled="disabled" label-width="120px"> |
| | | <el-form :model="form" ref="ruleFormRefs" :rules="rules" :disabled="disabled" label-width="120px"> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="保养情况" size="default"> |
| | | <el-form-item label="保养情况" size="default" prop="takecareMemo"> |
| | | <el-input v-model="form.takecareMemo" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"> |
| | | <el-form-item label="保养负责人" size="default"> |
| | | <el-input v-model="form.leadingPersonId"> |
| | | <el-form-item label="保养负责人" size="default" prop="leadingPersonName"> |
| | | <el-input v-model="form.leadingPersonName"> |
| | | <template #append> <el-button :icon="Search" @click="openUser" /> </template |
| | | ></el-input> |
| | | </el-form-item> |
| | |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="保养日期" size="default"> |
| | | <el-form-item label="保养日期" size="default" prop="takecareDate"> |
| | | <el-date-picker v-model="form.takecareDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" style="width: 100%" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"> |
| | | <el-form-item label="保养负责人单位" size="default"> |
| | | <el-select v-model="form.leadingPersonDepartmentId" style="width: 100%"> |
| | | <el-option label="xxx单位1" value="1" /> |
| | | <el-option label="xxx单位2" value="2" /> |
| | | </el-select> |
| | | <el-form-item label="保养负责人单位" size="default" prop="leadingPersonDepartmentId"> |
| | | <el-tree-select v-model="form.leadingPersonDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <!-- <el-button type="primary" @click="dialogVisible = false" size="default">继续添加</el-button> --> |
| | | <el-button @click="resetForm" size="default">关闭</el-button> |
| | | <el-button type="primary" @click="submitForm" size="default">确定</el-button> |
| | | <el-button @click="resetForms(ruleFormRefs)" size="default">关闭</el-button> |
| | | <el-button type="primary" @click="submitForms(ruleFormRefs)" size="default">确定</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | |
| | | </template> |
| | | <script lang="ts"> |
| | | import { defineComponent, ref, reactive } from 'vue'; |
| | | import { ElMessage, ElMessageBox} from 'element-plus'; |
| | | import { Search, FullScreen } from '@element-plus/icons-vue'; |
| | | import type { FormInstance, FormRules } from 'element-plus'; |
| | | import DailogSearchUser from '/@/components/DailogSearchUser/index.vue'; |
| | | import { goalManagementApi } from '/@/api/goalManagement'; |
| | | export default defineComponent({ |
| | | components: { DailogSearchUser }, |
| | | setup(props, { emit }) { |
| | | const ruleFormRefs = ref<FormInstance>(); |
| | | const form = ref({ |
| | | takecareMemo: '', |
| | | leadingPersonId: '', |
| | | leadingPersonName: '', |
| | | takecareDate: '', |
| | | leadingPersonDepartmentId: '', |
| | | }); |
| | | // 开启弹窗 |
| | | const titles=ref() |
| | | const disabled=ref(false) |
| | | const titles = ref(); |
| | | const disabled = ref(false); |
| | | const dialogVisible = ref(false); |
| | | const openDailog = (title:string,data:any) => { |
| | | department() |
| | | dialogVisible.value = true; |
| | | titles.value=`${title}仪器仪表` |
| | | titles.value = `${title}仪器仪表`; |
| | | if(title=='查看'){ |
| | | disabled.value=true |
| | | form.value=data |
| | | disabled.value = true; |
| | | form.value = data; |
| | | }else if(title == '修改'){ |
| | | disabled.value=false |
| | | form.value=data |
| | | disabled.value = false; |
| | | form.value = data; |
| | | } |
| | | }; |
| | | const rules = reactive<FormRules>({ |
| | | takecareMemo: [ |
| | | // { |
| | | // required: true, |
| | | // message: '保养情况不能为空', |
| | | // trigger: 'change', |
| | | // }, |
| | | ], |
| | | leadingPersonName: [ |
| | | // { |
| | | // required: true, |
| | | // message: '保养负责人不能为空', |
| | | // trigger: 'change', |
| | | // }, |
| | | ], |
| | | takecareDate: [ |
| | | // { |
| | | // required: true, |
| | | // message: '保养日期不能为空', |
| | | // trigger: 'change', |
| | | // }, |
| | | ], |
| | | leadingPersonDepartmentId: [ |
| | | // { |
| | | // required: true, |
| | | // message: '保养负责人单位不能为空', |
| | | // trigger: 'change', |
| | | // }, |
| | | ], |
| | | }); |
| | | // 开启用户弹窗 |
| | | const Show = ref(); |
| | | const openUser = () => { |
| | |
| | | }; |
| | | const User = (val: any) => { |
| | | form.value.leadingPersonId = val.uid; |
| | | form.value.leadingPersonName = val.realName; |
| | | }; |
| | | // 提交 |
| | | const submitForm = () => { |
| | | const submitForms = async (formEl: FormInstance | undefined) => { |
| | | if (!formEl) return; |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | dialogVisible.value = false; |
| | | emit('onMain', form.value); |
| | | } else { |
| | | console.log('error submit!', fields); |
| | | } |
| | | }); |
| | | form.value = { |
| | | takecareMemo: '', |
| | | leadingPersonId: '', |
| | | leadingPersonName: '', |
| | | takecareDate: '', |
| | | leadingPersonDepartmentId: '', |
| | | }; |
| | | disabled.value = false; |
| | | // formEl.resetFields(); |
| | | }; |
| | | // 取消 |
| | | const resetForm = () => { |
| | | dialogVisible.value = false; |
| | | const resetForms = (formEl: FormInstance | undefined) => { |
| | | if (!formEl) return; |
| | | form.value = { |
| | | takecareMemo: '', |
| | | leadingPersonId: '', |
| | | leadingPersonName: '', |
| | | takecareDate: '', |
| | | leadingPersonDepartmentId: '', |
| | | }; |
| | | // formEl.resetFields(); |
| | | dialogVisible.value = false; |
| | | disabled.value = false; |
| | | }; |
| | | //全屏 |
| | | const full = ref(false); |
| | |
| | | full.value = false; |
| | | } |
| | | }; |
| | | //部门树 |
| | | const department = () => { |
| | | goalManagementApi() |
| | | .getTreedepartment() |
| | | .then((res) => { |
| | | if (res.data.code == 200) { |
| | | data.value = res.data.data; |
| | | } else { |
| | | ElMessage.error(res.data.msg); |
| | | } |
| | | }); |
| | | }; |
| | | const propse = { |
| | | label: 'depName', |
| | | children: 'children', |
| | | value: 'depId', |
| | | }; |
| | | const data = ref(); |
| | | return { |
| | | department, |
| | | propse, |
| | | data, |
| | | disabled, |
| | | rules, |
| | | titles, |
| | | submitForm, |
| | | resetForm, |
| | | submitForms, |
| | | resetForms, |
| | | form, |
| | | User, |
| | | dialogVisible, |
| | | openDailog, |
| | | ruleFormRefs, |
| | | Show, |
| | | openUser, |
| | | Search, |