| | |
| | | type="date" |
| | | value-format="x" |
| | | placeholder="选择采购日期" |
| | | :readonly="formType === 'devState'" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="设备编号" prop="devId"> |
| | | <el-input v-model="formData.devId" placeholder="请输入设备编号" /> |
| | | <el-form-item label="设备固有编号" prop="devId"> |
| | | <el-input v-model="formData.devCodeIntrinsic" :readonly="formType === 'devState'" placeholder="请输入设备固有编号" /> |
| | | </el-form-item> |
| | | <el-form-item label="设备医院编号" prop="devId"> |
| | | <el-input v-model="formData.devCodeHosp" :readonly="formType === 'devState'" placeholder="请输入设备医院编号" /> |
| | | </el-form-item> |
| | | <el-form-item label="设备科室编号" prop="devId"> |
| | | <el-input v-model="formData.devCodeDept" :readonly="formType === 'devState'" placeholder="请输入设备科室编号" /> |
| | | </el-form-item> |
| | | <el-form-item label="分类名" prop="category"> |
| | | <el-select v-model="formData.category" placeholder="请选择分类名" @change="categoryChanged"> |
| | | <el-select v-model="formData.category" placeholder="请选择分类名" @change="categoryChanged" :disabled="formType === 'devState'"> |
| | | <el-option |
| | | v-for="dict in categoryOptions" |
| | | :key="dict.value as string" |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="品牌" prop="brand"> |
| | | <el-select v-model="formData.brand" placeholder="请选择品牌" @change="brandChanged"> |
| | | <el-select v-model="formData.brand" placeholder="请选择品牌" @change="brandChanged" :disabled="formType === 'devState'"> |
| | | <el-option |
| | | v-for="dict in brandOptions" |
| | | :key="dict.value" |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="型号" prop="model"> |
| | | <el-select v-model="formData.model" placeholder="请选择型号"> |
| | | <el-select v-model="formData.model" placeholder="请选择型号" :disabled="formType === 'devState'"> |
| | | <el-option |
| | | v-for="dict in modelOptions" |
| | | :key="dict.value" |
| | |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="遗失标记" prop="lost"> |
| | | <el-checkbox v-model="formData.lost" :true-label=1 :false-label=0> |
| | | 遗失 |
| | | </el-checkbox> |
| | | |
| | | <el-form-item v-if="formType !== 'create'" label="状态" prop="state"> |
| | | <el-radio-group v-if="formType === 'devState'" v-model="formData.state"> |
| | | <el-radio key="0" :value="0"> 空闲中 </el-radio> |
| | | <el-radio key="5" :value="5"> 已领取 </el-radio> |
| | | <el-radio key="10" :value="10"> 已装机 </el-radio> |
| | | <el-radio key="20" :value="20"> 已遗失 </el-radio> |
| | | <el-radio key="30" :value="30"> 待维修 </el-radio> |
| | | <el-radio key="30" :value="40"> 维修中 </el-radio> |
| | | <el-radio key="40" :value="50"> 已报废 </el-radio> |
| | | </el-radio-group> |
| | | <span v-else>{{tranlateDevState(formData.state)}}</span> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="备注" prop="devId"> |
| | | <el-input v-model="formData.comment" placeholder="请输入设备备注" /> |
| | | </el-form-item> |
| | | |
| | | </el-form> |
| | | <template #footer> |
| | | <el-button @click="submitForm" type="primary" :disabled="formLoading">确 定</el-button> |
| | |
| | | <script setup lang="ts"> |
| | | import {getStrDictOptions, DICT_TYPE, DictDataType} from '@/utils/dict' |
| | | import {DeviceApi, DeviceVO, DevModelApi, OptionsVO} from '@/api/ecg/devmanage' |
| | | import {tranlateDevState} from "@/utils/statusFormatter"; |
| | | |
| | | /** 设备 表单 */ |
| | | defineOptions({ name: 'DeviceForm' }) |
| | |
| | | const formType = ref('') // 表单的类型:create - 新增;update - 修改 |
| | | const formData = ref<DeviceVO>({ |
| | | id: 0, |
| | | purchaseDate: new Date().getTime(), |
| | | devId: '', |
| | | purchaseDate: new Date().getTime(), |
| | | devCodeIntrinsic: '', |
| | | devCodeHosp: '', |
| | | devCodeDept: '', |
| | | category: '', |
| | | brand: '', |
| | | model: '', |
| | | lost: 0, |
| | | comment: '', |
| | | state: 0, |
| | | }) |
| | | |
| | | const formRules = reactive({ |
| | | }) |
| | | const formRef = ref() // 表单 Ref |
| | |
| | | if (formType.value === 'create') { |
| | | await DeviceApi.createDevice(data) |
| | | message.success(t('common.createSuccess')) |
| | | } else { |
| | | } else if (formType.value === 'update') { |
| | | await DeviceApi.updateDevice(data) |
| | | message.success(t('common.updateSuccess')) |
| | | } else { |
| | | await DeviceApi.updateDeviceState(data) |
| | | message.success(t('common.updateStateSuccess')) |
| | | } |
| | | dialogVisible.value = false |
| | | // 发送操作成功的事件 |
| | |
| | | const resetForm = () => { |
| | | formData.value = { |
| | | id: 0, |
| | | purchaseDate: new Date().getTime(), |
| | | devId: '', |
| | | purchaseDate: new Date().getTime(), |
| | | devCodeIntrinsic: '', |
| | | devCodeHosp: '', |
| | | devCodeDept: '', |
| | | category: '', |
| | | brand: '', |
| | | model: '' |
| | | model: '', |
| | | comment: '', |
| | | state: 0, |
| | | } |
| | | formRef.value?.resetFields() |
| | | } |
| | | |
| | | const categoryOptions = ref<DictDataType[]>([]) |
| | | const brandOptions = ref<OptionsVO[]>([]) |
| | | const modelOptions = ref<OptionsVO[]>([]) |
| | | |
| | |
| | | formData.value.model = modelOptions.value.length === 0 ? "" : modelOptions.value[0].value |
| | | } |
| | | |
| | | const categoryOptions = ref<DictDataType[]>([]) |
| | | |
| | | onMounted( async () => { |
| | | console.info("onMount DeviceForm...") |
| | | const data = await getStrDictOptions(DICT_TYPE.ECG_DEV_CATEGORY) |
| | | categoryOptions.value = data |
| | | }) |
| | | |
| | | </script> |
| | | </script> |