|
@@ -1,266 +1,272 @@
|
|
|
<template>
|
|
|
<ContentWrap v-loading="formLoading">
|
|
|
- <el-form
|
|
|
- ref="formRef"
|
|
|
- :model="formData"
|
|
|
- :rules="formRules"
|
|
|
- v-loading="formLoading"
|
|
|
- style="margin-right: 4em; margin-left: 0.5em; margin-top: 1em"
|
|
|
- label-width="130px"
|
|
|
- >
|
|
|
- <div class="base-expandable-content">
|
|
|
- <el-row>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="设备" prop="deviceName">
|
|
|
- <el-select
|
|
|
- :disabled="formType === 'update'"
|
|
|
- v-model="formData.deviceName"
|
|
|
- :model-value="deviceLabel"
|
|
|
- placeholder="请选择设备"
|
|
|
- @click="openForm"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="维修类型" prop="type">
|
|
|
- <el-select v-model="formData.type" placeholder="请选择维修类型" clearable>
|
|
|
- <el-option
|
|
|
- v-for="dict in getStrDictOptions(DICT_TYPE.PMS_MAIN_TYPE)"
|
|
|
- :key="dict.value"
|
|
|
- :label="dict.label"
|
|
|
- :value="dict.value"
|
|
|
+ <ContentWrap>
|
|
|
+ <el-form
|
|
|
+ ref="formRef"
|
|
|
+ :model="formData"
|
|
|
+ :rules="formRules"
|
|
|
+ style="margin-right: 4em; margin-left: 0.5em; margin-top: 1em"
|
|
|
+ label-width="130px"
|
|
|
+ >
|
|
|
+ <div class="base-expandable-content">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="设备" prop="deviceName">
|
|
|
+ <el-select
|
|
|
+ :disabled="formType === 'update'"
|
|
|
+ v-model="formData.deviceName"
|
|
|
+ :model-value="deviceLabel"
|
|
|
+ placeholder="请选择设备"
|
|
|
+ @click="openForm"
|
|
|
/>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="是否停机" prop="ifStop">
|
|
|
- <el-select v-model="formData.ifStop" placeholder="请选择是否停机" clearable>
|
|
|
- <el-option
|
|
|
- v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
|
|
|
- :key="dict.value"
|
|
|
- :label="dict.label"
|
|
|
- :value="dict.value"
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="维修类型" prop="type">
|
|
|
+ <el-select v-model="formData.type" placeholder="请选择维修类型" clearable>
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getStrDictOptions(DICT_TYPE.PMS_MAIN_TYPE)"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="是否停机" prop="ifStop">
|
|
|
+ <el-select v-model="formData.ifStop" placeholder="请选择是否停机" clearable>
|
|
|
+ <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-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="维修开始时间" prop="maintainStartTime">
|
|
|
+ <el-date-picker
|
|
|
+ style="width: 150%"
|
|
|
+ v-model="formData.maintainStartTime"
|
|
|
+ type="datetime"
|
|
|
+ value-format="x"
|
|
|
+ placeholder="选择维修开始时间"
|
|
|
/>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="维修开始时间" prop="maintainStartTime">
|
|
|
- <el-date-picker
|
|
|
- style="width: 150%"
|
|
|
- v-model="formData.maintainStartTime"
|
|
|
- type="datetime"
|
|
|
- value-format="x"
|
|
|
- placeholder="选择维修开始时间"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="维修结束时间" prop="maintainEndTime">
|
|
|
- <el-date-picker
|
|
|
- @change="endTimeBlur"
|
|
|
- style="width: 150%"
|
|
|
- v-model="formData.maintainEndTime"
|
|
|
- type="datetime"
|
|
|
- value-format="x"
|
|
|
- placeholder="选择维修结束时间"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="维修负责人" prop="maintainPerson">
|
|
|
- <el-select v-model="formData.maintainPerson" filterable clearable style="width: 100%">
|
|
|
- <el-option
|
|
|
- v-for="item in deptUsers"
|
|
|
- :key="item.id"
|
|
|
- :label="item.nickname"
|
|
|
- :value="item.id"
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="维修结束时间" prop="maintainEndTime">
|
|
|
+ <el-date-picker
|
|
|
+ @change="endTimeBlur"
|
|
|
+ style="width: 150%"
|
|
|
+ v-model="formData.maintainEndTime"
|
|
|
+ type="datetime"
|
|
|
+ value-format="x"
|
|
|
+ placeholder="选择维修结束时间"
|
|
|
/>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="故障时间" prop="failureTime">
|
|
|
- <el-date-picker
|
|
|
- style="width: 150%"
|
|
|
- v-model="formData.failureTime"
|
|
|
- type="datetime"
|
|
|
- value-format="x"
|
|
|
- placeholder="选择故障时间"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="故障影响" prop="failureInfluence">
|
|
|
- <el-input v-model="formData.failureInfluence" placeholder="请输入故障影响" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="故障系统" prop="failureSystem">
|
|
|
- <el-input v-model="formData.failureSystem" placeholder="请输入故障系统" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="图片" prop="pic">
|
|
|
- <UploadImg v-model="formData.pic" height="55px" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8" v-if="formData.type === 'out'">
|
|
|
- <el-form-item label="供应商" prop="supplier" :rules="supplierRules">
|
|
|
- <el-select
|
|
|
- v-model="formData.supplier"
|
|
|
- placeholder="请输入供应商"
|
|
|
- :model-value="supplierLabel"
|
|
|
- @click="openCustomer('supplier')"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8" v-if="formData.type === 'out'">
|
|
|
- <el-form-item label="维修费用" prop="maintainFee" :rules="strictRules">
|
|
|
- <el-input-number
|
|
|
- v-model="formData.maintainFee"
|
|
|
- :min="0"
|
|
|
- :precision="2"
|
|
|
- :step="0.1"
|
|
|
- placeholder="请输入维修费用"
|
|
|
- style="width: 100%"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8" v-if="formData.type === 'out'">
|
|
|
- <el-form-item label="委外相关附件" prop="outFile">
|
|
|
- <UploadFile v-model="formData.outFile" class="min-w-80px" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="16">
|
|
|
- <el-form-item label="故障描述" prop="description">
|
|
|
- <el-input type="textarea" v-model="formData.description" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="12">
|
|
|
- <el-form-item label="维修描述" prop="maintainDescription">
|
|
|
- <el-input type="textarea" v-model="formData.maintainDescription" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="12">
|
|
|
- <el-form-item label="解决办法" prop="solution">
|
|
|
- <el-input type="textarea" v-model="formData.solution" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="24">
|
|
|
- <el-form-item label="备注" prop="remark">
|
|
|
- <el-input v-model="formData.remark" type="textarea" placeholder="请输入备注" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- </div>
|
|
|
- </el-form>
|
|
|
- </ContentWrap>
|
|
|
- <ContentWrap>
|
|
|
- <ContentWrap>
|
|
|
- <!-- 搜索工作栏 -->
|
|
|
- <el-form class="-mb-15px" ref="queryFormRef" :inline="true" label-width="68px">
|
|
|
- <el-form-item>
|
|
|
- <!-- <el-button @click="openMaterialForm" type="primary"-->
|
|
|
- <!-- ><Icon icon="ep:plus" class="mr-5px" /> 选择物料</el-button>-->
|
|
|
- <el-button @click="openMaintainForm" type="primary"
|
|
|
- ><Icon icon="ep:plus" class="mr-5px" /> 选择维修项</el-button
|
|
|
- >
|
|
|
- <el-button @click="openMaintainItem" type="warning"
|
|
|
- ><Icon icon="ep:plus" class="mr-5px" /> 新增维修项</el-button
|
|
|
- >
|
|
|
- <!-- <el-button @click="handleViewNew" type="warning"-->
|
|
|
- <!-- ><Icon icon="ep:plus" class="mr-5px" /> 新增物料</el-button>-->
|
|
|
- </el-form-item>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="维修负责人" prop="maintainPerson">
|
|
|
+ <el-select
|
|
|
+ v-model="formData.maintainPerson"
|
|
|
+ filterable
|
|
|
+ clearable
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in deptUsers"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.nickname"
|
|
|
+ :value="item.id"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="故障时间" prop="failureTime">
|
|
|
+ <el-date-picker
|
|
|
+ style="width: 150%"
|
|
|
+ v-model="formData.failureTime"
|
|
|
+ type="datetime"
|
|
|
+ value-format="x"
|
|
|
+ placeholder="选择故障时间"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="故障影响" prop="failureInfluence">
|
|
|
+ <el-input v-model="formData.failureInfluence" placeholder="请输入故障影响" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="故障系统" prop="failureSystem">
|
|
|
+ <el-input v-model="formData.failureSystem" placeholder="请输入故障系统" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="图片" prop="pic">
|
|
|
+ <UploadImg v-model="formData.pic" height="55px" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8" v-if="formData.type === 'out'">
|
|
|
+ <el-form-item label="供应商" prop="supplier" :rules="supplierRules">
|
|
|
+ <el-select
|
|
|
+ v-model="formData.supplier"
|
|
|
+ placeholder="请输入供应商"
|
|
|
+ :model-value="supplierLabel"
|
|
|
+ @click="openCustomer('supplier')"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8" v-if="formData.type === 'out'">
|
|
|
+ <el-form-item label="维修费用" prop="maintainFee" :rules="strictRules">
|
|
|
+ <el-input-number
|
|
|
+ v-model="formData.maintainFee"
|
|
|
+ :min="0"
|
|
|
+ :precision="2"
|
|
|
+ :step="0.1"
|
|
|
+ placeholder="请输入维修费用"
|
|
|
+ style="width: 100%"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8" v-if="formData.type === 'out'">
|
|
|
+ <el-form-item label="委外相关附件" prop="outFile">
|
|
|
+ <UploadFile v-model="formData.outFile" class="min-w-80px" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="16">
|
|
|
+ <el-form-item label="故障描述" prop="description">
|
|
|
+ <el-input type="textarea" v-model="formData.description" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="维修描述" prop="maintainDescription">
|
|
|
+ <el-input type="textarea" v-model="formData.maintainDescription" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="解决办法" prop="solution">
|
|
|
+ <el-input type="textarea" v-model="formData.solution" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="备注" prop="remark">
|
|
|
+ <el-input v-model="formData.remark" type="textarea" placeholder="请输入备注" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
</el-form>
|
|
|
</ContentWrap>
|
|
|
-
|
|
|
- <!-- 列表 -->
|
|
|
<ContentWrap>
|
|
|
- <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
|
|
|
- <el-table-column label="资产编码" align="center" prop="deviceCode" />
|
|
|
- <el-table-column label="设备名称" align="center" prop="deviceName" />
|
|
|
- <el-table-column label="维修项" align="center" prop="name" />
|
|
|
+ <ContentWrap>
|
|
|
+ <!-- 搜索工作栏 -->
|
|
|
+ <el-form class="-mb-15px" ref="queryFormRef" :inline="true" label-width="68px">
|
|
|
+ <el-form-item>
|
|
|
+ <!-- <el-button @click="openMaterialForm" type="primary"-->
|
|
|
+ <!-- ><Icon icon="ep:plus" class="mr-5px" /> 选择物料</el-button>-->
|
|
|
+ <el-button @click="openMaintainForm" type="primary"
|
|
|
+ ><Icon icon="ep:plus" class="mr-5px" /> 选择维修项</el-button
|
|
|
+ >
|
|
|
+ <el-button @click="openMaintainItem" type="warning"
|
|
|
+ ><Icon icon="ep:plus" class="mr-5px" /> 新增维修项</el-button
|
|
|
+ >
|
|
|
+ <!-- <el-button @click="handleViewNew" type="warning"-->
|
|
|
+ <!-- ><Icon icon="ep:plus" class="mr-5px" /> 新增物料</el-button>-->
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </ContentWrap>
|
|
|
|
|
|
- <el-table-column label="操作" align="center" min-width="120px">
|
|
|
- <template #default="scope">
|
|
|
- <div style="display: flex; justify-content: center; align-items: center; width: 100%">
|
|
|
- <div>
|
|
|
- <Icon style="vertical-align: middle; color: #ea3434" icon="ep:zoom-out" />
|
|
|
- <el-button
|
|
|
- style="vertical-align: middle"
|
|
|
- link
|
|
|
- type="danger"
|
|
|
- @click="handleDelete(scope.row.code)"
|
|
|
- >
|
|
|
- 移除
|
|
|
- </el-button>
|
|
|
- </div>
|
|
|
- <div style="margin-left: 12px">
|
|
|
- <el-button link type="primary" @click="openMaterialForm(scope.row)">
|
|
|
- 选择物料
|
|
|
- </el-button>
|
|
|
- </div>
|
|
|
- <div style="margin-left: 12px">
|
|
|
- <el-button link type="primary" @click="handleViewNew(scope.row.bomNodeId)">
|
|
|
- 物料详情
|
|
|
- </el-button>
|
|
|
+ <!-- 列表 -->
|
|
|
+ <ContentWrap>
|
|
|
+ <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
|
|
|
+ <el-table-column label="资产编码" align="center" prop="deviceCode" />
|
|
|
+ <el-table-column label="设备名称" align="center" prop="deviceName" />
|
|
|
+ <el-table-column label="维修项" align="center" prop="name" />
|
|
|
+
|
|
|
+ <el-table-column label="操作" align="center" min-width="120px">
|
|
|
+ <template #default="scope">
|
|
|
+ <div style="display: flex; justify-content: center; align-items: center; width: 100%">
|
|
|
+ <div>
|
|
|
+ <Icon style="vertical-align: middle; color: #ea3434" icon="ep:zoom-out" />
|
|
|
+ <el-button
|
|
|
+ style="vertical-align: middle"
|
|
|
+ link
|
|
|
+ type="danger"
|
|
|
+ @click="handleDelete(scope.row.code)"
|
|
|
+ >
|
|
|
+ 移除
|
|
|
+ </el-button>
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 12px">
|
|
|
+ <el-button link type="primary" @click="openMaterialForm(scope.row)">
|
|
|
+ 选择物料
|
|
|
+ </el-button>
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 12px">
|
|
|
+ <el-button link type="primary" @click="handleViewNew(scope.row.bomNodeId)">
|
|
|
+ 物料详情
|
|
|
+ </el-button>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </ContentWrap>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </ContentWrap>
|
|
|
|
|
|
- <!-- 表单弹窗:添加/修改 -->
|
|
|
- <WorkOrderMaterial ref="materialFormRef" @choose="selectChoose" />
|
|
|
- <ChooseMaintain ref="maintainFormRef" @choose="maintainChoose" />
|
|
|
- </ContentWrap>
|
|
|
- <ContentWrap>
|
|
|
- <el-form>
|
|
|
- <el-form-item style="float: right">
|
|
|
- <el-button @click="submitForm" type="primary" :disabled="formLoading">保 存</el-button>
|
|
|
- <el-button @click="close">取 消</el-button>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
+ <!-- 表单弹窗:添加/修改 -->
|
|
|
+ <WorkOrderMaterial ref="materialFormRef" @choose="selectChoose" />
|
|
|
+ <ChooseMaintain ref="maintainFormRef" @choose="maintainChoose" />
|
|
|
+ </ContentWrap>
|
|
|
+ <ContentWrap>
|
|
|
+ <el-form>
|
|
|
+ <el-form-item style="float: right">
|
|
|
+ <el-button @click="submitForm" type="primary" :disabled="formLoading">保 存</el-button>
|
|
|
+ <el-button @click="close">取 消</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </ContentWrap>
|
|
|
+ <DeviceList ref="deviceFormRef" @choose="deviceChoose" />
|
|
|
+ <CustomerList ref="customerFormRef" @choose="customerChoose" />
|
|
|
+ <MaterialListDrawer
|
|
|
+ :model-value="drawerVisible"
|
|
|
+ @update:model-value="(val) => (drawerVisible = val)"
|
|
|
+ :node-id="currentBomNodeId"
|
|
|
+ :materials="materialList.filter((item) => item.bomNodeId === currentBomNodeId)"
|
|
|
+ />
|
|
|
+ <Dialog title="维修项" v-model="addItemVisible" style="min-height: 300px">
|
|
|
+ <el-form
|
|
|
+ ref="addFormRef"
|
|
|
+ :model="addFormData"
|
|
|
+ :rules="addFormRules"
|
|
|
+ label-position="right"
|
|
|
+ label-width="68px"
|
|
|
+ >
|
|
|
+ <el-form-item label="BOM节点id" v-if="false" prop="deviceCode">
|
|
|
+ <el-input v-model="addFormData.bomNodeId" disabled />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="资产编码" prop="deviceCode">
|
|
|
+ <el-input v-model="addFormData.deviceCode" disabled />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="设备名称" prop="deviceName">
|
|
|
+ <el-input v-model="addFormData.deviceName" disabled />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="维修项" prop="name">
|
|
|
+ <el-input v-model="addFormData.name" placeholder="请输入维修项" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <el-form>
|
|
|
+ <el-form-item style="float: right">
|
|
|
+ <el-button @click="handleConfirm" type="primary">确 定</el-button>
|
|
|
+ <el-button @click="closeDialog">取 消</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </Dialog>
|
|
|
</ContentWrap>
|
|
|
- <DeviceList ref="deviceFormRef" @choose="deviceChoose" />
|
|
|
- <CustomerList ref="customerFormRef" @choose="customerChoose" />
|
|
|
- <MaterialListDrawer
|
|
|
- :model-value="drawerVisible"
|
|
|
- @update:model-value="(val) => (drawerVisible = val)"
|
|
|
- :node-id="currentBomNodeId"
|
|
|
- :materials="materialList.filter((item) => item.bomNodeId === currentBomNodeId)"
|
|
|
- />
|
|
|
- <Dialog title="维修项" v-model="addItemVisible" style="min-height: 300px">
|
|
|
- <el-form
|
|
|
- ref="addFormRef"
|
|
|
- :model="addFormData"
|
|
|
- :rules="addFormRules"
|
|
|
- label-position="right"
|
|
|
- label-width="68px"
|
|
|
- >
|
|
|
- <el-form-item label="BOM节点id" v-if="false" prop="deviceCode">
|
|
|
- <el-input v-model="addFormData.bomNodeId" disabled />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="资产编码" prop="deviceCode">
|
|
|
- <el-input v-model="addFormData.deviceCode" disabled />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="设备名称" prop="deviceName">
|
|
|
- <el-input v-model="addFormData.deviceName" disabled />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="维修项" prop="name">
|
|
|
- <el-input v-model="addFormData.name" placeholder="请输入维修项" />
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <el-form>
|
|
|
- <el-form-item style="float: right">
|
|
|
- <el-button @click="handleConfirm" type="primary">确 定</el-button>
|
|
|
- <el-button @click="closeDialog">取 消</el-button>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- </Dialog>
|
|
|
</template>
|
|
|
<script setup lang="ts">
|
|
|
import { IotMaintainApi } from '@/api/pms/maintain'
|
|
@@ -276,7 +282,8 @@ import CustomerList from '@/views/pms/device/CustomerList.vue'
|
|
|
import WorkOrderMaterial from '@/views/pms/iotmainworkorder/WorkOrderMaterial.vue'
|
|
|
import { IotMainWorkOrderBomMaterialVO } from '@/api/pms/iotmainworkorderbommaterial'
|
|
|
import MaterialListDrawer from '@/views/pms/iotmainworkorder/SelectedMaterialDrawer.vue'
|
|
|
-import ChooseMaintain from "@/views/pms/maintain/material/ChooseMaintain.vue";
|
|
|
+import ChooseMaintain from '@/views/pms/maintain/material/ChooseMaintain.vue'
|
|
|
+
|
|
|
/** 维修工单 表单 */
|
|
|
defineOptions({ name: 'MaintainAdd' })
|
|
|
const addItemVisible = ref(false) // 弹窗的是否展示
|
|
@@ -370,7 +377,7 @@ const outFormRules = reactive({
|
|
|
})
|
|
|
|
|
|
const handleConfirm = () => {
|
|
|
- addFormData.value.bomNodeId = Math.floor(100000 + Math.random() * 900000);
|
|
|
+ addFormData.value.bomNodeId = Math.floor(100000 + Math.random() * 900000)
|
|
|
list.value.push(addFormData.value)
|
|
|
addItemVisible.value = false
|
|
|
}
|
|
@@ -463,7 +470,7 @@ const selectChoose = (selectedMaterial) => {
|
|
|
})
|
|
|
list.value.forEach((item) => {
|
|
|
if (item.bomNodeId === bomNodeId.value) {
|
|
|
- item.materials = processedMaterials;
|
|
|
+ item.materials = processedMaterials
|
|
|
}
|
|
|
})
|
|
|
console.log('选择完成的数据:', JSON.stringify(selectedMaterial))
|