装备录入编辑
This commit is contained in:
parent
2ddea71248
commit
d5310f9c5a
|
|
@ -124,7 +124,7 @@ export const addInterDevice = (data = {}) => {
|
||||||
// 修改装备 新接口
|
// 修改装备 新接口
|
||||||
export const equipmentEditApiNew = (data = {}) => {
|
export const equipmentEditApiNew = (data = {}) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/material-mall/order/editDevice',
|
url: '/material-mall/order/updateDevice',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,15 @@
|
||||||
<template>
|
<template>
|
||||||
<!-- 弹窗内容区域 -->
|
<!-- 弹窗内容区域 -->
|
||||||
<div class="app-container" style="height: calc(100vh - 84px);overflow-y:unset">
|
<div class="app-container" style="height: calc(100vh - 84px); overflow-y: unset">
|
||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<div>
|
<div>
|
||||||
<i class="el-icon-arrow-left goBack-btn" @click="goBack"
|
<i
|
||||||
style="border-color: transparent;color: #00a288;background: transparent;padding-left: 0;padding-right: 0;"
|
class="el-icon-arrow-left goBack-btn"
|
||||||
>返回</i>
|
@click="goBack"
|
||||||
<span class="page-title">新增装备</span>
|
style="border-color: transparent; color: #00a288; background: transparent; padding-left: 0; padding-right: 0"
|
||||||
|
>返回</i
|
||||||
|
>
|
||||||
|
<span class="page-title">{{ pageTitle }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="dialog-footer" style="float: right">
|
<div class="dialog-footer" style="float: right">
|
||||||
<el-button size="medium" @click="goBack">取消</el-button>
|
<el-button size="medium" @click="goBack">取消</el-button>
|
||||||
|
|
@ -17,60 +20,57 @@
|
||||||
<el-form
|
<el-form
|
||||||
label-width="110px"
|
label-width="110px"
|
||||||
ref="formRef"
|
ref="formRef"
|
||||||
style="padding: 12px;overflow-y: auto;height: calc(100vh - 180px);width: 100%"
|
style="padding: 12px; overflow-y: auto; height: calc(100vh - 180px); width: 100%"
|
||||||
label-position="right"
|
label-position="right"
|
||||||
:model="form"
|
:model="form"
|
||||||
:rules="equipRules"
|
:rules="equipRules"
|
||||||
>
|
>
|
||||||
<div style="display:flex;padding-bottom: 5px">
|
<div style="display: flex; padding-bottom: 5px">
|
||||||
<div style="width: 5px;background-color: #00a288;margin-right: 10px"></div>
|
<div style="width: 5px; background-color: #00a288; margin-right: 10px"></div>
|
||||||
基础信息
|
基础信息
|
||||||
</div>
|
</div>
|
||||||
<el-row :gutter="24" style="padding-top: 10px">
|
<el-row :gutter="24" style="padding-top: 10px">
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="专业" prop="major">
|
<el-form-item label="专业" prop="major">
|
||||||
<el-select v-model="form.major" placeholder="请选择专业" @change="majorChange" style="width: 100%"
|
<el-select
|
||||||
clearable
|
v-model="form.major"
|
||||||
|
placeholder="请选择专业"
|
||||||
|
@change="majorChange"
|
||||||
|
style="width: 100%"
|
||||||
|
clearable
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option v-for="item in majorList" :key="item.value" :label="item.label" :value="item.value">
|
||||||
v-for="item in majorList"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="工序" prop="process">
|
<el-form-item label="工序" prop="process">
|
||||||
<el-cascader style="width: 100%" clearable
|
<el-cascader
|
||||||
v-model="form.process"
|
style="width: 100%"
|
||||||
placeholder="请选择工序"
|
clearable
|
||||||
:options="processList"
|
v-model="form.process"
|
||||||
@change="processChange"
|
placeholder="请选择工序"
|
||||||
|
:options="processList"
|
||||||
|
@change="processChange"
|
||||||
></el-cascader>
|
></el-cascader>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="装备类目" prop="category">
|
<el-form-item label="装备类目" prop="category">
|
||||||
<el-cascader style="width: 100%" clearable
|
<el-cascader
|
||||||
v-model="form.category"
|
style="width: 100%"
|
||||||
:options="categoryList"
|
clearable
|
||||||
placeholder="请选择装备类目"
|
v-model="form.category"
|
||||||
@change="categoryChange"
|
:options="categoryList"
|
||||||
|
placeholder="请选择装备类目"
|
||||||
|
@change="categoryChange"
|
||||||
></el-cascader>
|
></el-cascader>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="装备名称" prop="name">
|
<el-form-item label="装备名称" prop="name">
|
||||||
<el-input
|
<el-input autocomplete="off" maxlength="30" placeholder="请输入装备名称" v-model="form.name" clearable />
|
||||||
autocomplete="off"
|
|
||||||
maxlength="30"
|
|
||||||
placeholder="请输入装备名称"
|
|
||||||
v-model="form.name"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
@ -100,18 +100,8 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="生产厂家" prop="manufacturerId">
|
<el-form-item label="生产厂家" prop="manufacturerId">
|
||||||
<el-select
|
<el-select v-model="form.manufacturerId" placeholder="请选择生产厂家" clearable style="width: 100%">
|
||||||
v-model="form.manufacturerId"
|
<el-option v-for="item in manufacturerList" :key="item.id" :label="item.label" :value="item.id" />
|
||||||
placeholder="请选择生产厂家"
|
|
||||||
clearable
|
|
||||||
style="width: 100%"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in manufacturerList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
@ -126,7 +116,7 @@
|
||||||
:picker-options="{
|
:picker-options="{
|
||||||
disabledDate(time) {
|
disabledDate(time) {
|
||||||
return time.getTime() > Date.now()
|
return time.getTime() > Date.now()
|
||||||
}
|
},
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
|
|
@ -148,12 +138,7 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="装备原始编码" prop="originalCode">
|
<el-form-item label="装备原始编码" prop="originalCode">
|
||||||
<el-input
|
<el-input clearable maxlength="20" placeholder="请输入装备原始编码" v-model="form.originalCode" />
|
||||||
clearable
|
|
||||||
maxlength="20"
|
|
||||||
placeholder="请输入装备原始编码"
|
|
||||||
v-model="form.originalCode"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
|
|
@ -180,8 +165,8 @@
|
||||||
@change="deviceTypeChange"
|
@change="deviceTypeChange"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
>
|
>
|
||||||
<el-option label="编码" :value="0"/>
|
<el-option label="编码" value="0" />
|
||||||
<el-option label="数量" :value="1"/>
|
<el-option label="数量" value="1" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
@ -197,18 +182,13 @@
|
||||||
:precision="0"
|
:precision="0"
|
||||||
:controls="false"
|
:controls="false"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
:disabled="form.manageType === 0"
|
:disabled="form.manageType == 0"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="计数单位" prop="unit">
|
<el-form-item label="计数单位" prop="unit">
|
||||||
<el-input
|
<el-input v-model="form.unit" placeholder="请输入计数单位" clearable maxlength="11" />
|
||||||
v-model="form.unit"
|
|
||||||
placeholder="请输入计数单位"
|
|
||||||
clearable
|
|
||||||
maxlength="11"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
|
|
@ -222,7 +202,7 @@
|
||||||
:picker-options="{
|
:picker-options="{
|
||||||
disabledDate(time) {
|
disabledDate(time) {
|
||||||
return time.getTime() > Date.now()
|
return time.getTime() > Date.now()
|
||||||
}
|
},
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
|
|
@ -230,45 +210,30 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<div style="display:flex;padding-bottom: 10px">
|
<div style="display: flex; padding-bottom: 10px">
|
||||||
<div style="width: 5px;background-color: #00a288;margin-right: 10px"></div>
|
<div style="width: 5px; background-color: #00a288; margin-right: 10px"></div>
|
||||||
特征属性
|
特征属性
|
||||||
</div>
|
</div>
|
||||||
<el-row :gutter="24" style="padding-top: 10px">
|
<el-row :gutter="24" style="padding-top: 10px">
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="专业特征" prop="specialtyFeature">
|
<el-form-item label="专业特征" prop="specialtyFeature">
|
||||||
<el-input
|
<el-input autocomplete="off" maxlength="30" v-model="form.specialtyFeature" clearable />
|
||||||
autocomplete="off"
|
|
||||||
maxlength="30"
|
|
||||||
v-model="form.specialtyFeature"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="工序特征" prop="processFeature">
|
<el-form-item label="工序特征" prop="processFeature">
|
||||||
<el-input
|
<el-input autocomplete="off" maxlength="30" v-model="form.processFeature" clearable />
|
||||||
autocomplete="off"
|
|
||||||
maxlength="30"
|
|
||||||
v-model="form.processFeature"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="类目特征" prop="categoryFeature">
|
<el-form-item label="类目特征" prop="categoryFeature">
|
||||||
<el-input
|
<el-input autocomplete="off" maxlength="30" v-model="form.categoryFeature" clearable />
|
||||||
autocomplete="off"
|
|
||||||
maxlength="30"
|
|
||||||
v-model="form.categoryFeature"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<div style="display:flex;padding-bottom: 10px">
|
<div style="display: flex; padding-bottom: 10px">
|
||||||
<div style="width: 5px;background-color: #00a288;margin-right: 10px"></div>
|
<div style="width: 5px; background-color: #00a288; margin-right: 10px"></div>
|
||||||
装备图片
|
装备图片
|
||||||
</div>
|
</div>
|
||||||
<el-row :gutter="24" style="padding-top: 10px">
|
<el-row :gutter="24" style="padding-top: 10px">
|
||||||
|
|
@ -284,8 +249,8 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<div style="display:flex;padding-bottom: 10px">
|
<div style="display: flex; padding-bottom: 10px">
|
||||||
<div style="width: 5px;background-color: #00a288;margin-right: 10px"></div>
|
<div style="width: 5px; background-color: #00a288; margin-right: 10px"></div>
|
||||||
相关证书
|
相关证书
|
||||||
</div>
|
</div>
|
||||||
<el-row :gutter="24" style="padding-top: 10px">
|
<el-row :gutter="24" style="padding-top: 10px">
|
||||||
|
|
@ -296,7 +261,7 @@
|
||||||
:value="form.certificateList"
|
:value="form.certificateList"
|
||||||
:limit="3"
|
:limit="3"
|
||||||
:fileSize="10"
|
:fileSize="10"
|
||||||
:fileType="['doc','docx', 'ppt','pdf']"
|
:fileType="['doc', 'docx', 'ppt', 'pdf']"
|
||||||
@change="handleCertificateChange"
|
@change="handleCertificateChange"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
@ -307,11 +272,11 @@
|
||||||
:value="form.inspectionList"
|
:value="form.inspectionList"
|
||||||
:limit="3"
|
:limit="3"
|
||||||
:fileSize="10"
|
:fileSize="10"
|
||||||
:fileType="['doc','docx', 'ppt','pdf']"
|
:fileType="['doc', 'docx', 'ppt', 'pdf']"
|
||||||
@change="handleInspectionChange"
|
@change="handleInspectionChange"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="采购发票" prop="purchaseInvoices">
|
<el-form-item label="采购发票" prop="purchaseInvoices">
|
||||||
<FileUpload
|
<FileUpload
|
||||||
v-model="form.purchaseInvoices"
|
v-model="form.purchaseInvoices"
|
||||||
|
|
@ -324,7 +289,6 @@
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -335,7 +299,9 @@ import {
|
||||||
getEquipmentAddIdApi,
|
getEquipmentAddIdApi,
|
||||||
firstLevel,
|
firstLevel,
|
||||||
secondAndThirdLevel,
|
secondAndThirdLevel,
|
||||||
fourthToSixthLevel
|
fourthToSixthLevel,
|
||||||
|
getDeviceApi,
|
||||||
|
equipmentEditApiNew,
|
||||||
} from '@/api/EquipmentEntryApply'
|
} from '@/api/EquipmentEntryApply'
|
||||||
import { getManufacturerSelectApi } from '@/api/EquipmentLedger/index.js'
|
import { getManufacturerSelectApi } from '@/api/EquipmentLedger/index.js'
|
||||||
import ImageUpload from '@/components/ImageUpload'
|
import ImageUpload from '@/components/ImageUpload'
|
||||||
|
|
@ -346,6 +312,9 @@ export default {
|
||||||
emits: ['update:isVisible', 'submit', 'getOrderId'], // 声明事件
|
emits: ['update:isVisible', 'submit', 'getOrderId'], // 声明事件
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
isSubmit: false,
|
||||||
|
query: {},
|
||||||
|
pageTitle: '新增装备',
|
||||||
// 下拉列表数据
|
// 下拉列表数据
|
||||||
majorList: [],
|
majorList: [],
|
||||||
processList: [],
|
processList: [],
|
||||||
|
|
@ -353,8 +322,8 @@ export default {
|
||||||
manufacturerList: [],
|
manufacturerList: [],
|
||||||
form: {
|
form: {
|
||||||
major: '', // 专业
|
major: '', // 专业
|
||||||
process: '', // 工序
|
process: [], // 工序
|
||||||
category: '', // 类目
|
category: [], // 类目
|
||||||
name: '', // 装备名称
|
name: '', // 装备名称
|
||||||
specificationModel: '', // 规格型号
|
specificationModel: '', // 规格型号
|
||||||
originalValue: '', // 资产原值
|
originalValue: '', // 资产原值
|
||||||
|
|
@ -373,73 +342,72 @@ export default {
|
||||||
// deviceTypeList: [], // 装备类型列表
|
// deviceTypeList: [], // 装备类型列表
|
||||||
mainFileList: [], // 展示图
|
mainFileList: [], // 展示图
|
||||||
certificateList: [], // 合格证
|
certificateList: [], // 合格证
|
||||||
inspectionList: [] // 检测证书
|
inspectionList: [], // 检测证书
|
||||||
},
|
},
|
||||||
// 表单校验规则(所有字段均为必填)
|
// 表单校验规则(所有字段均为必填)
|
||||||
equipRules: {
|
equipRules: {
|
||||||
major: [
|
major: [{ required: true, message: '请选择专业', trigger: 'change' }],
|
||||||
{ required: true, message: '请选择专业', trigger: 'change' }
|
process: [{ required: true, message: '请选择工序', trigger: 'change' }],
|
||||||
],
|
category: [{ required: true, message: '请选择装备类目', trigger: 'change' }],
|
||||||
process: [
|
name: [{ required: true, message: '请输入装备名称', trigger: 'blur' }],
|
||||||
{ required: true, message: '请选择工序', trigger: 'change' }
|
specificationModel: [{ required: true, message: '请输入规格型号', trigger: 'blur' }],
|
||||||
],
|
originalValue: [{ required: true, message: '请输入资产原值', trigger: 'blur' }],
|
||||||
category: [
|
productionDate: [{ required: true, message: '请选择出厂日期', trigger: 'change' }],
|
||||||
{ required: true, message: '请选择装备类目', trigger: 'change' }
|
manufacturerId: [{ required: true, message: '请输入生产厂家', trigger: 'blur' }],
|
||||||
],
|
originalCode: [{ required: true, message: '请输入装备原始编码', trigger: 'blur' }],
|
||||||
name: [
|
nextMaintenanceDate: [{ required: true, message: '请选择下次维保日期', trigger: 'change' }],
|
||||||
{ required: true, message: '请输入装备名称', trigger: 'blur' }
|
maxServiceLifeYears: [{ required: true, message: '请输入装备寿命', trigger: 'blur' }],
|
||||||
],
|
manageType: [{ required: true, message: '请选择管理方式', trigger: 'change' }],
|
||||||
specificationModel: [
|
count: [{ required: true, message: '请输入装备数量', trigger: 'blur' }],
|
||||||
{ required: true, message: '请输入规格型号', trigger: 'blur' }
|
unit: [{ required: true, message: '请输入计数单位', trigger: 'blur' }],
|
||||||
],
|
purchaseDate: [{ required: true, message: '请选择采购日期', trigger: 'change' }],
|
||||||
originalValue: [
|
},
|
||||||
{ required: true, message: '请输入资产原值', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
productionDate: [
|
|
||||||
{ required: true, message: '请选择出厂日期', trigger: 'change' }
|
|
||||||
],
|
|
||||||
manufacturerId: [
|
|
||||||
{ required: true, message: '请输入生产厂家', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
originalCode: [
|
|
||||||
{ required: true, message: '请输入装备原始编码', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
nextMaintenanceDate: [
|
|
||||||
{ required: true, message: '请选择下次维保日期', trigger: 'change' }
|
|
||||||
],
|
|
||||||
maxServiceLifeYears: [
|
|
||||||
{ required: true, message: '请输入装备寿命', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
manageType: [
|
|
||||||
{ required: true, message: '请选择管理方式', trigger: 'change' }
|
|
||||||
],
|
|
||||||
count: [
|
|
||||||
{ required: true, message: '请输入装备数量', trigger: 'blur' }
|
|
||||||
|
|
||||||
],
|
|
||||||
unit: [
|
|
||||||
{ required: true, message: '请输入计数单位', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
purchaseDate: [
|
|
||||||
{ required: true, message: '请选择采购日期', trigger: 'change' }
|
|
||||||
],
|
|
||||||
// deviceTypeList: [
|
|
||||||
// { required: true, message: '请选择装备类型', trigger: 'change' }
|
|
||||||
// ],
|
|
||||||
/* certificateList: [
|
|
||||||
{ required: true, message: '请上传合格证', trigger: 'change' }
|
|
||||||
],
|
|
||||||
inspectionList: [
|
|
||||||
{ required: true, message: '请上传检测证书', trigger: 'change' }
|
|
||||||
] */
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.firstLevel()
|
this.firstLevel()
|
||||||
this.getManufacturerSelectList()
|
this.getManufacturerSelectList()
|
||||||
|
this.query = this.$route.query
|
||||||
|
if (this.query && this.query.maId) {
|
||||||
|
this.pageTitle = '编辑装备'
|
||||||
|
this.orderId = this.query.orderId
|
||||||
|
this.getInfo()
|
||||||
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 获取详情
|
||||||
|
async getInfo() {
|
||||||
|
try {
|
||||||
|
const res = await getDeviceApi(this.query.maId)
|
||||||
|
console.log('🚀 ~ getInfo ~ res:', res)
|
||||||
|
this.form = res.data
|
||||||
|
this.form.mainFileList = res.data.appearanceImages
|
||||||
|
? res.data.appearanceImages.map((item) => item.fileUrl).join(',')
|
||||||
|
: []
|
||||||
|
this.form.certificateList = res.data.certificates
|
||||||
|
? res.data.certificates.map((item) => item.fileUrl).join(',')
|
||||||
|
: []
|
||||||
|
this.form.inspectionList = res.data.inspectionReports
|
||||||
|
? res.data.inspectionReports.map((item) => item.fileUrl).join(',')
|
||||||
|
: []
|
||||||
|
this.form.purchaseInvoices = res.data.purchaseInvoices
|
||||||
|
? res.data.purchaseInvoices.map((item) => item.fileUrl).join(',')
|
||||||
|
: []
|
||||||
|
this.form.process = [String(res.data.mainProcessId), String(res.data.subProcessId)].filter(Boolean)
|
||||||
|
console.log('🚀 ~ getInfo ~ this.form.process:', this.form.process)
|
||||||
|
this.form.category = [
|
||||||
|
String(res.data.mainCategoryId),
|
||||||
|
String(res.data.subCategoryId),
|
||||||
|
String(res.data.branchId),
|
||||||
|
].filter(Boolean)
|
||||||
|
const res2 = await secondAndThirdLevel({ firstLevelId: this.form.majorId })
|
||||||
|
this.processList = this.convertToSubTree(res2.data)
|
||||||
|
const res3 = await fourthToSixthLevel({ thirdLevelId: this.form.subProcessId })
|
||||||
|
this.categoryList = this.convertToSubTree(res3.data)
|
||||||
|
} catch (error) {
|
||||||
|
console.log('🚀 ~ getInfo ~ error:', error)
|
||||||
|
}
|
||||||
|
},
|
||||||
// 获取厂家
|
// 获取厂家
|
||||||
getManufacturerSelectList() {
|
getManufacturerSelectList() {
|
||||||
getManufacturerSelectApi().then((res) => {
|
getManufacturerSelectApi().then((res) => {
|
||||||
|
|
@ -453,7 +421,7 @@ export default {
|
||||||
* 获取一级类型
|
* 获取一级类型
|
||||||
*/
|
*/
|
||||||
firstLevel() {
|
firstLevel() {
|
||||||
firstLevel().then(res => {
|
firstLevel().then((res) => {
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
this.majorList = res.data
|
this.majorList = res.data
|
||||||
}
|
}
|
||||||
|
|
@ -462,9 +430,9 @@ export default {
|
||||||
majorChange(item) {
|
majorChange(item) {
|
||||||
if (!item) {
|
if (!item) {
|
||||||
this.processList = []
|
this.processList = []
|
||||||
this.form.process = ''
|
this.form.process = []
|
||||||
} else {
|
} else {
|
||||||
secondAndThirdLevel({ firstLevelId: item }).then(res => {
|
secondAndThirdLevel({ firstLevelId: item }).then((res) => {
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
this.processList = this.convertToSubTree(res.data)
|
this.processList = this.convertToSubTree(res.data)
|
||||||
}
|
}
|
||||||
|
|
@ -472,24 +440,23 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
processChange(item) {
|
processChange(item) {
|
||||||
|
console.log('🚀 ~ processChange ~ item:', item)
|
||||||
if (item.length === 0) {
|
if (item.length === 0) {
|
||||||
this.categoryList = []
|
this.categoryList = []
|
||||||
this.form.category = ''
|
this.form.category = []
|
||||||
} else {
|
} else {
|
||||||
fourthToSixthLevel({ thirdLevelId: item[item.length - 1] }).then(res => {
|
fourthToSixthLevel({ thirdLevelId: item[item.length - 1] }).then((res) => {
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
this.categoryList = this.convertToSubTree(res.data)
|
this.categoryList = this.convertToSubTree(res.data)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
categoryChange(item) {
|
categoryChange(item) {},
|
||||||
|
|
||||||
},
|
|
||||||
// 返回上一页
|
// 返回上一页
|
||||||
goBack() {
|
goBack() {
|
||||||
// this.$router.go(-1)
|
this.$router.go(-1)
|
||||||
this.$router.push({ path: '/equipment/equipment-input/index' })
|
// this.$router.push({ path: '/equipment/equipment-input/index' })
|
||||||
},
|
},
|
||||||
deviceTypeChange(val) {
|
deviceTypeChange(val) {
|
||||||
if (val === 0) {
|
if (val === 0) {
|
||||||
|
|
@ -525,11 +492,17 @@ export default {
|
||||||
*/
|
*/
|
||||||
async handleSubmit() {
|
async handleSubmit() {
|
||||||
console.log('🚀 ~ handleSubmit ~ this.form:', this.form)
|
console.log('🚀 ~ handleSubmit ~ this.form:', this.form)
|
||||||
this.$refs['formRef'].validate(async valid => {
|
this.$refs['formRef'].validate(async (valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
const result = await getEquipmentAddIdApi()
|
if (this.isSubmit) return
|
||||||
this.orderId = result.data.id
|
this.isSubmit = true
|
||||||
this.form.orderId = this.orderId
|
const loading = this.$loading()
|
||||||
|
try {
|
||||||
|
if (!this.query.maId) {
|
||||||
|
const result = await getEquipmentAddIdApi()
|
||||||
|
this.orderId = result.data.id
|
||||||
|
this.form.orderId = this.orderId
|
||||||
|
}
|
||||||
// 获取数组最后一个元素(最末级分类ID)
|
// 获取数组最后一个元素(最末级分类ID)
|
||||||
// this.form.typeId = this.form.deviceTypeList[this.form.deviceTypeList.length - 1]
|
// this.form.typeId = this.form.deviceTypeList[this.form.deviceTypeList.length - 1]
|
||||||
// 获取类目的最后一个值
|
// 获取类目的最后一个值
|
||||||
|
|
@ -541,22 +514,22 @@ export default {
|
||||||
if (this.form.mainFileList) {
|
if (this.form.mainFileList) {
|
||||||
const arr = this.form.mainFileList.split(',')
|
const arr = this.form.mainFileList.split(',')
|
||||||
console.log('🚀 ~ 提交 ~ arr:', arr)
|
console.log('🚀 ~ 提交 ~ arr:', arr)
|
||||||
appearanceImages = arr.map(item => {
|
appearanceImages = arr.map((item) => {
|
||||||
const parts = item.split('/')
|
const parts = item.split('/')
|
||||||
return {
|
return {
|
||||||
fileName: parts[parts.length - 1],
|
fileName: parts[parts.length - 1],
|
||||||
fileUrl: item
|
fileUrl: item,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
console.log('🚀 ~ handleSubmit ~ appearanceImages:', appearanceImages)
|
console.log('🚀 ~ handleSubmit ~ appearanceImages:', appearanceImages)
|
||||||
}
|
}
|
||||||
if (this.form.certificateList) {
|
if (this.form.certificateList) {
|
||||||
const arr = this.form.certificateList.split(',')
|
const arr = this.form.certificateList.split(',')
|
||||||
certificates = arr.map(item => {
|
certificates = arr.map((item) => {
|
||||||
const parts = item.split('/')
|
const parts = item.split('/')
|
||||||
return {
|
return {
|
||||||
fileName: parts[parts.length - 1],
|
fileName: parts[parts.length - 1],
|
||||||
fileUrl: item
|
fileUrl: item,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
console.log('🚀 ~ handleSubmit ~ certificates:', certificates)
|
console.log('🚀 ~ handleSubmit ~ certificates:', certificates)
|
||||||
|
|
@ -567,11 +540,11 @@ export default {
|
||||||
}
|
}
|
||||||
if (this.form.inspectionList) {
|
if (this.form.inspectionList) {
|
||||||
const arr = this.form.inspectionList.split(',')
|
const arr = this.form.inspectionList.split(',')
|
||||||
inspectionReports = arr.map(item => {
|
inspectionReports = arr.map((item) => {
|
||||||
const parts = item.split('/')
|
const parts = item.split('/')
|
||||||
return {
|
return {
|
||||||
fileName: parts[parts.length - 1],
|
fileName: parts[parts.length - 1],
|
||||||
fileUrl: item
|
fileUrl: item,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
console.log('🚀 ~ handleSubmit ~ inspectionReports:', inspectionReports)
|
console.log('🚀 ~ handleSubmit ~ inspectionReports:', inspectionReports)
|
||||||
|
|
@ -582,17 +555,24 @@ export default {
|
||||||
}
|
}
|
||||||
if (this.form.purchaseInvoices) {
|
if (this.form.purchaseInvoices) {
|
||||||
const arr = this.form.purchaseInvoices.split(',')
|
const arr = this.form.purchaseInvoices.split(',')
|
||||||
purchaseInvoices = arr.map(item => {
|
purchaseInvoices = arr.map((item) => {
|
||||||
const parts = item.split('/')
|
const parts = item.split('/')
|
||||||
return {
|
return {
|
||||||
fileName: parts[parts.length - 1],
|
fileName: parts[parts.length - 1],
|
||||||
fileUrl: item
|
fileUrl: item,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
console.log('🚀 ~ handleSubmit ~ purchaseInvoices:', purchaseInvoices)
|
console.log('🚀 ~ handleSubmit ~ purchaseInvoices:', purchaseInvoices)
|
||||||
}
|
}
|
||||||
|
|
||||||
const res = await addInterDevice({ ...this.form, appearanceImages, certificates, inspectionReports, purchaseInvoices })
|
let res = null
|
||||||
|
const params = { ...this.form, appearanceImages, certificates, inspectionReports, purchaseInvoices }
|
||||||
|
if (this.query && this.query.maId) {
|
||||||
|
params.maId = this.query.maId
|
||||||
|
res = await equipmentEditApiNew(params)
|
||||||
|
} else {
|
||||||
|
res = await addInterDevice(params)
|
||||||
|
}
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
// this.goBack()
|
// this.goBack()
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
|
|
@ -600,13 +580,18 @@ export default {
|
||||||
query: {
|
query: {
|
||||||
orderId: this.orderId,
|
orderId: this.orderId,
|
||||||
isAddVisible: false,
|
isAddVisible: false,
|
||||||
isApprovalVisible: false
|
isApprovalVisible: false,
|
||||||
}
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log('🚀 ~ handleSubmit ~ error:', error)
|
||||||
|
} finally {
|
||||||
|
this.isSubmit = false
|
||||||
|
loading.close()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
})
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
* 转换类型数据为树形结构(适用于级联选择器)
|
* 转换类型数据为树形结构(适用于级联选择器)
|
||||||
|
|
@ -616,15 +601,15 @@ export default {
|
||||||
const tree = []
|
const tree = []
|
||||||
|
|
||||||
// 构建节点映射
|
// 构建节点映射
|
||||||
list.forEach(item => {
|
list.forEach((item) => {
|
||||||
map[item.value] = {
|
map[item.value] = {
|
||||||
value: item.value.toString(),
|
value: item.value.toString(),
|
||||||
label: item.label
|
label: item.label,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
// 构建树形关系
|
// 构建树形关系
|
||||||
list.forEach(item => {
|
list.forEach((item) => {
|
||||||
const current = map[item.value]
|
const current = map[item.value]
|
||||||
const parent = map[item.parentId]
|
const parent = map[item.parentId]
|
||||||
|
|
||||||
|
|
@ -639,8 +624,8 @@ export default {
|
||||||
})
|
})
|
||||||
|
|
||||||
return tree
|
return tree
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -254,13 +254,13 @@
|
||||||
<el-button type="text" @click="handleViewDetail(row)">
|
<el-button type="text" @click="handleViewDetail(row)">
|
||||||
<i class="el-icon-view"></i> 查看
|
<i class="el-icon-view"></i> 查看
|
||||||
</el-button>
|
</el-button>
|
||||||
<!-- <el-button
|
<el-button
|
||||||
type="text"
|
type="text"
|
||||||
@click="editRowInfo(row.maId)"
|
@click="editRowInfo(row)"
|
||||||
v-if="row.orderStatus == '3' && !isAddVisible"
|
v-if="row.orderStatus == '3' && !isAddVisible"
|
||||||
>
|
>
|
||||||
<i class="el-icon-edit"></i> 编辑
|
<i class="el-icon-edit"></i> 编辑
|
||||||
</el-button> -->
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
type="text"
|
type="text"
|
||||||
@click="deleteRowInfo(row)"
|
@click="deleteRowInfo(row)"
|
||||||
|
|
@ -341,6 +341,7 @@ export default {
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
isSubmit: false,
|
||||||
isAddVisible: false,
|
isAddVisible: false,
|
||||||
isApprovalVisible: false,
|
isApprovalVisible: false,
|
||||||
isEditVisible: false,
|
isEditVisible: false,
|
||||||
|
|
@ -506,6 +507,9 @@ export default {
|
||||||
* 处理表单提交
|
* 处理表单提交
|
||||||
*/
|
*/
|
||||||
handleSubmit() {
|
handleSubmit() {
|
||||||
|
if(this.isSubmit) return
|
||||||
|
this.isSubmit = true
|
||||||
|
const loading = this.$loading()
|
||||||
equipmentSubmitApiNew({ id: this.orderId, status: 0 }).then(res => {
|
equipmentSubmitApiNew({ id: this.orderId, status: 0 }).then(res => {
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
this.$message({
|
this.$message({
|
||||||
|
|
@ -515,6 +519,9 @@ export default {
|
||||||
// this.goBack()
|
// this.goBack()
|
||||||
this.$router.push({ path: '/equipment/equipmentEntry/equipment-entry-apply' })
|
this.$router.push({ path: '/equipment/equipmentEntry/equipment-entry-apply' })
|
||||||
}
|
}
|
||||||
|
}).finally(() => {
|
||||||
|
this.isSubmit = false
|
||||||
|
loading.close()
|
||||||
})
|
})
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
@ -559,10 +566,17 @@ export default {
|
||||||
},
|
},
|
||||||
|
|
||||||
//编辑
|
//编辑
|
||||||
editRowInfo(orderId) {
|
editRowInfo(row) {
|
||||||
this.orderId = orderId.toString()
|
// this.orderId = orderId.toString()
|
||||||
this.isViewMode = false // 编辑模式
|
// this.isViewMode = false // 编辑模式
|
||||||
this.isEditVisible = true
|
// this.isEditVisible = true
|
||||||
|
this.$router.push({
|
||||||
|
path: '/equipment/equipment-input/add',
|
||||||
|
query: {
|
||||||
|
maId: row.maId,
|
||||||
|
orderId: this.orderId
|
||||||
|
}
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
// 修改查看方法
|
// 修改查看方法
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue