| | |
| | | <el-button :icon="Plus" type="primary" v-show="activeTab === 'equipmentRequisition'" @click="handleAdd" |
| | | >领用</el-button |
| | | > |
| | | <el-button :icon="Delete" type="danger" @click="handleDelete" |
| | | <el-button :icon="Delete" type="danger" v-show="activeTab === 'management'" @click="handleDelete" |
| | | >删除</el-button |
| | | > |
| | | </el-row> |
| | |
| | | </template> |
| | | |
| | | <script setup> |
| | | import { computed, onMounted, reactive, ref } from "vue"; |
| | | import { computed, onMounted, reactive, ref, nextTick } from "vue"; |
| | | import { ElMessage } from "element-plus"; |
| | | import { Delete, Plus } from "@element-plus/icons-vue"; |
| | | |
| | |
| | | prop: "equipmentStatus", |
| | | label: "使用状态", |
| | | minWidth: 100, |
| | | formatter: (row) => row.usageStatus == 1 ? "使用中" : "已归还" |
| | | formatter: (row) => row.equipmentStatus == "0" ? "使用中" : "已归还" |
| | | }, |
| | | { prop: "usageStartTime", label: "使用开始时间", minWidth: 100 }, |
| | | { prop: "usageEndTime", label: "使用结束时间", minWidth: 100 }, |
| | |
| | | |
| | | // 设备领用弹窗提交处理 |
| | | const onEquipmentRequisitionSubmit = (formData) => { |
| | | console.log("提交的领用数据:", formData); |
| | | ElMessage.success('设备领用成功'); |
| | | equipmentRequisitionDialog.value = false; |
| | | getList(); |
| | | nextTick(() => { |
| | | form.value = {}; |
| | | getList(); |
| | | }); |
| | | }; |
| | | |
| | | // 数据获取 |
| | |
| | | > |
| | | </el-form-item> |
| | | <el-form-item label="使用状态" prop="equipmentStatus"> |
| | | <!-- 编辑的时候自动匹配 --> |
| | | <el-select v-model="form.equipmentStatus" placeholder="请选择" :disabled="isViewMode"> |
| | | <el-option label="使用中" :value="1" /> |
| | | <el-option label="已归还" :value="0" /> |
| | | <el-option label="使用中" value="0" /> |
| | | <el-option label="已归还" value="1" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="使用开始时间" prop="usageStartTime"> |
| | |
| | | > |
| | | <el-row :gutter="20"> |
| | | <el-col :span="11"> |
| | | <el-form-item label="设备编号" prop="equipmentName"> |
| | | <el-form-item label="设备编号" prop="equipmentNo"> |
| | | <el-input |
| | | v-model="formData.equipmentName" |
| | | v-model="formData.equipmentNo" |
| | | placeholder="请输入设备编号" |
| | | :disabled="isViewMode" |
| | | style="width: 100%" |
| | |
| | | <script setup> |
| | | import { ref, watch, computed, reactive } from "vue"; |
| | | import { addOrEditEquipment } from "@/api/equipment/management/index.js"; |
| | | import { ElMessage } from "element-plus"; |
| | | |
| | | const props = defineProps({ |
| | | beforeClose: { |
| | |
| | | try { |
| | | const result = await addOrEditEquipment({ ...formData.value }); |
| | | const title = props.title.includes("新增") ? "新增" : "编辑"; |
| | | |
| | | console.log(result) |
| | | if (result.code === 200 && result.msg) { |
| | | ElMessage.success(`${title}成功:${result.msg}`); |
| | | emit("submit", { title, ...formData.value, result }); |
| | |
| | | } |
| | | } catch (error) { |
| | | console.error("提交失败:", error); |
| | | ElMessage.error("提交失败,请重试"); |
| | | } |
| | | }); |
| | | }; |
| | |
| | | closeDialog(); |
| | | }; |
| | | const rules = reactive({ |
| | | equipmentNo: [ |
| | | { required: true, message: "请输入供货商名称", trigger: "blur" }, |
| | | ], |
| | | equipmentName: [ |
| | | { required: true, message: "请输入供货商名称", trigger: "blur" }, |
| | | ], |