From a29ed519245c178cbc3c2db6f9a47451add87257 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期四, 03 四月 2025 16:21:30 +0800
Subject: [PATCH] 对象零件号绑定修改
---
src/views/structural/capabilityAndLaboratory/capability/index.vue | 563 +++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 392 insertions(+), 171 deletions(-)
diff --git a/src/views/structural/capabilityAndLaboratory/capability/index.vue b/src/views/structural/capabilityAndLaboratory/capability/index.vue
index 9916b1e..5fe1d9b 100644
--- a/src/views/structural/capabilityAndLaboratory/capability/index.vue
+++ b/src/views/structural/capabilityAndLaboratory/capability/index.vue
@@ -3,17 +3,15 @@
<div>
<el-row class="title">
<el-col :span="12" style="text-align: left">
- <el-radio-group v-model="radio" size="medium" fill="#409EFF">
+ <el-radio-group v-model="radio" size="medium" fill="#409EFF" @change="refreshTable">
<el-radio-button :label="0">妫�楠岄」鐩弬鏁�</el-radio-button>
<el-radio-button :label="1">妫�楠屽璞�</el-radio-button>
</el-radio-group>
</el-col>
<el-col :span="12" style="text-align: right;">
- <el-upload v-if="radio === 0" ref='upload1'
- style="display: inline;margin-right: 8px"
- :action="uploadAction1"
- :before-upload="beforeUpload1" :headers="token" :on-error="onError1"
- :on-success="handleSuccessUp" :show-file-list="false" accept='.doc,.docx,.xls,.xlsx'>
+ <el-upload v-if="radio === 0" ref='upload1' style="display: inline;margin-right: 8px" :action="uploadAction1"
+ :before-upload="beforeUpload1" :headers="token" :on-error="onError1" :on-success="handleSuccessUp1"
+ :show-file-list="false" accept='.doc,.docx,.xls,.xlsx'>
<el-button size="small" type="primary">瀵煎叆</el-button>
</el-upload>
<el-button size="small" type="primary" v-if="radio === 1" @click="uploadDia = true">瀵煎叆</el-button>
@@ -23,19 +21,19 @@
</div>
<div>
<el-form :model="itemParameterForm" ref="itemParameterForm" size="small" :inline="true">
- <el-form-item label="妫�楠岄」" prop="inspectionItem" v-if="radio===0">
- <el-input size="small" placeholder="璇疯緭鍏�" clearable
- v-model="itemParameterForm.inspectionItem" @keyup.enter.native="refreshTable()">
+ <el-form-item label="妫�楠岄」" prop="inspectionItem" v-if="radio === 0">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="itemParameterForm.inspectionItem"
+ @keyup.enter.native="refreshTable()">
</el-input>
</el-form-item>
- <el-form-item label="妫�楠屽瓙椤�" prop="inspectionItemSubclass" v-if="radio===0">
- <el-input size="small" placeholder="璇疯緭鍏�" clearable
- v-model="itemParameterForm.inspectionItemSubclass" @keyup.enter.native="refreshTable()">
+ <el-form-item label="妫�楠屽瓙椤�" prop="inspectionItemSubclass" v-if="radio === 0">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="itemParameterForm.inspectionItemSubclass"
+ @keyup.enter.native="refreshTable()">
</el-input>
</el-form-item>
<el-form-item label="妫�楠屽璞�" prop="sample">
- <el-input size="small" placeholder="璇疯緭鍏�" clearable
- v-model="itemParameterForm.sample" @keyup.enter.native="refreshTable()">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="itemParameterForm.sample"
+ @keyup.enter.native="refreshTable()">
</el-input>
</el-form-item>
<el-form-item>
@@ -43,29 +41,31 @@
<el-button icon="el-icon-refresh" size="mini" @click="refresh">閲� 缃�</el-button>
</el-form-item>
</el-form>
- <div class="table" v-if="radio===0">
- <lims-table :tableData="tableData" :column="column"
- :page="page" :tableLoading="tableLoading"></lims-table>
+ <!-- 妫�楠岄」鐩弬鏁拌〃鏍�-->
+ <div class="table" v-if="radio === 0">
+ <lims-table :tableData="tableData" :column="column" key="tableData" @pagination="pagination"
+ :height="'calc(100vh - 290px)'" :page="page" :tableLoading="tableLoading"></lims-table>
</div>
- <div class="table" v-if="radio===1">
- <lims-table :tableData="testObjectTableData" :column="testObjectColumn"
- :page="testObjectPage" :tableLoading="tableLoading"></lims-table>
+ <!-- 妫�楠屽璞¤〃鏍�-->
+ <div class="table" v-if="radio === 1">
+ <lims-table :tableData="testObjectTableData" :column="testObjectColumn" key="testObjectTableData"
+ @pagination="pagination" :height="'calc(100vh - 290px)'" :page="testObjectPage"
+ :tableLoading="tableLoading"></lims-table>
</div>
</div>
<!--浜у搧缁存姢寮规-->
- <el-dialog title="浜у搧缁存姢" :visible.sync="diaProduct" width="600px">
- <div class="body" v-if="diaProduct" style="height: 350px;overflow-y: auto;padding: 5px 0;">
- <lims-table :tableData="productData" :column="productColumn"
- :page="productPage" :tableLoading="productableLoading"></lims-table>
- </div>
+ <el-dialog title="浜у搧缁存姢" :visible.sync="diaProduct" width="900px">
+ <lims-table :tableData="productData" :column="productColumn" height="460" @pagination="productPagination"
+ :page="productPage" :tableLoading="productableLoading"></lims-table>
<span slot="footer" class="dialog-footer">
<el-button @click="diaProduct = false">鍙� 娑�</el-button>
<el-button type="primary" @click="editProduct('add')" :loading="productLoad">鏂� 澧�</el-button>
</span>
</el-dialog>
<!--浜у搧缁存姢缂栬緫-->
- <el-dialog title="缂栬緫浜у搧缁存姢" :visible.sync="productEditDia" width="400px">
- <el-form :model="productEditForm" ref="productEditForm" :rules="productRules">
+ <el-dialog title="鎿嶄綔浜у搧缁存姢" :visible.sync="productEditDia" width="400px">
+ <el-form :model="productEditForm" ref="productEditForm" :rules="productRules" label-position="right"
+ label-width="100px">
<el-form-item label="浜у搧鍚嶇О" prop="name">
<el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="productEditForm.name"></el-input>
</el-form-item>
@@ -81,11 +81,9 @@
</el-dialog>
<el-dialog :visible.sync="uploadDia" title="鏁版嵁瀵煎叆" width="500px">
<div style="margin: 0 auto;">
- <el-upload ref="upload" :action="uploadAction"
- :auto-upload="false" :file-list="fileList"
- :headers="token" :limit="1"
- :on-change="beforeUpload" :on-error="onError" :on-success="onSuccess" accept=".xlsx" drag
- name="file">
+ <el-upload ref="upload" :action="uploadAction" :auto-upload="false" :file-list="fileList" :headers="token"
+ :limit="1" :on-change="beforeUpload" :on-error="onError" :on-success="onSuccess" accept=".xlsx" drag
+ name="file">
<i class="el-icon-upload"></i>
<div class="el-upload__text">灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em></div>
</el-upload>
@@ -96,61 +94,79 @@
</span>
</el-dialog>
<!--妫�楠岄」鐩弬鏁�-缂栬緫寮规-->
- <EditForm ref="editForm" @refreshTable="refreshTable"></EditForm>
- <testObjectEditForm ref="testObjectEditForm"></testObjectEditForm>
- <BindPartDialog v-if="bindPartDialog" :bindPartDialog="bindPartDialog"
- :currentRow="currentRow"
- :type="type"
- @closeBindPartDialog="closeBindPartDialog"></BindPartDialog>
- <BindSupplierDensityDialog v-if="bindSupplierDensityDialog"
- :bindSupplierDensityDialog="bindSupplierDensityDialog"
- :currentRow="currentSupplierDensityRow"
- @closeBindPartDialog="closeBindSupplierDensityDialog"></BindSupplierDensityDialog>
+ <EditForm ref="editForm" @refreshList="refreshList1"></EditForm>
+ <testObjectEditForm ref="testObjectEditForm" @refreshList="refreshList"></testObjectEditForm>
+ <BindPartDialog v-if="bindPartDialog" :bindPartDialog="bindPartDialog" :currentRow="currentRow" :type="type"
+ @closeBindPartDialog="closeBindPartDialog" :currentObj="currentObj">
+ </BindPartDialog>
+ <BindSupplierDensityDialog v-if="bindSupplierDensityDialog" :bindSupplierDensityDialog="bindSupplierDensityDialog"
+ :currentRow="currentSupplierDensityRow" @closeBindPartDialog="closeBindSupplierDensityDialog">
+ </BindSupplierDensityDialog>
+ <el-dialog title="杞﹂棿缁戝畾" :visible.sync="workshopVisible" width="400px">
+ <el-form :model="workshopForm" ref="workshopForm" :rules="workshopRules" label-position="right"
+ label-width="100px">
+ <el-form-item label="杞﹂棿鍚嶇О" prop="workShopId">
+ <el-select v-model="workshopForm.workShopId" placeholder="璇烽�夋嫨" size="small">
+ <el-option v-for="item in workshopList" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="workshopVisible = false">鍙� 娑�</el-button>
+ <el-button :loading="uploading" type="primary" @click="submitWorkshop">纭� 璁�</el-button>
+ </span>
+ </el-dialog>
</div>
</template>
<script>
-import BindPartDialog from "@/components/capability/bindPartDialog.vue"
-import BindSupplierDensityDialog from "@/components/capability/bindSupplierDensityDialog.vue"
+import BindPartDialog from "@/views/structural/capabilityAndLaboratory/capabilityComponents/bindPartDialog.vue"
+import BindSupplierDensityDialog from "@/views/structural/capabilityAndLaboratory/capabilityComponents/bindSupplierDensityDialog.vue"
import {
+ addProduct,
delItemParameter, delProduct, delTestObject, selectItemParameterList, selectProductListByObjectId,
- selectTestObjectList,
+ selectTestObjectList, upProduct, updateWorkShop, updateObjectWorkShop
} from "@/api/structural/capability";
import limsTable from "@/components/Table/lims-table.vue";
-import EditForm from "@/components/capability/EditForm.vue";
-import testObjectEditForm from "@/components/capability/testObjectEditForm.vue";
-import {getToken} from "@/utils/auth";
-
+import EditForm from "@/views/structural/capabilityAndLaboratory/capabilityComponents/EditForm.vue";
+import testObjectEditForm from "@/views/structural/capabilityAndLaboratory/capabilityComponents/testObjectEditForm.vue";
+import { getToken } from "@/utils/auth";
+import { obtainItemParameterList } from '@/api/structural/laboratoryScope'
+import { selectWorkShop } from "@/api/structural/workshop.js"
export default {
- components: {limsTable, EditForm, testObjectEditForm, BindPartDialog, BindSupplierDensityDialog},
+ name: 'Capability',
+ components: { limsTable, EditForm, testObjectEditForm, BindPartDialog, BindSupplierDensityDialog },
data() {
return {
uploadAction: process.env.VUE_APP_BASE_API + '/capacityScope/importExcel',
uploadAction1: process.env.VUE_APP_BASE_API + '/capacityScope/importEquipData',
tableData: [],
+ tableLoading: false,
column: [
- {label: '妫�楠岄」', prop: 'inspectionItem'},
- {label: '妫�楠岄」EN', prop: 'inspectionItemEn'},
- {label: '妫�楠屽瓙椤�', prop: 'inspectionItemSubclass'},
- {label: '妫�楠屽瓙椤笶N', prop: 'inspectionItemSubclassEn'},
- {label: '妫�楠岄」鍒嗙被', prop: 'inspectionItemClass'},
- {label: '妫�楠岄」鍒嗙被EN', prop: 'inspectionItemClassEn'},
- {label: '妫�楠屽璞�', prop: 'sample'},
- {label: '鍗曚环(鍏�)', prop: 'price'},
- {label: '璇曢獙瀹�', prop: 'sonLaboratory'},
- {label: '瑕佹眰鎻忚堪', prop: 'askTell'},
- {label: '瑕佹眰鍊�', prop: 'ask'},
- {label: '璁¢噺鍗曚綅', prop: 'unit'},
- {label: '宸ユ椂(H)', prop: 'manHour'},
- {label: '棰勮鏃堕棿(H)', prop: 'manDay'},
- {label: '宸ユ椂鍒嗙粍', prop: 'manHourGroup'},
- {label: '鍒涘缓鏃堕棿', prop: 'createTime'},
- {label: '淇敼鏃堕棿', prop: 'updateTime'},
- {label: '鏉′欢', prop: 'radiusList'},
+ { label: '妫�楠岄」', prop: 'inspectionItem' },
+ { label: '妫�楠岄」EN', prop: 'inspectionItemEn' },
+ { label: '妫�楠屽瓙椤�', prop: 'inspectionItemSubclass' },
+ { label: '妫�楠屽瓙椤笶N', prop: 'inspectionItemSubclassEn' },
+ { label: '妫�楠岄」鍒嗙被', prop: 'inspectionItemClass' },
+ { label: '妫�楠岄」鍒嗙被EN', prop: 'inspectionItemClassEn' },
+ { label: '妫�楠屽璞�', prop: 'sample' },
+ { label: '鍗曚环(鍏�)', prop: 'price' },
+ { label: '璇曢獙瀹�', prop: 'sonLaboratory' },
+ { label: '瑕佹眰鎻忚堪', prop: 'askTell' },
+ { label: '瑕佹眰鍊�', prop: 'ask' },
+ // { label: '璇曢獙鏉′欢', prop: 'radiusList' },
+ { label: '璁¢噺鍗曚綅', prop: 'unit' },
+ { label: '宸ユ椂(H)', prop: 'manHour' },
+ { label: '棰勮鏃堕棿(H)', prop: 'manDay' },
+ { label: '宸ユ椂鍒嗙粍', prop: 'manHourGroup' },
+ { label: '鍒涘缓鏃堕棿', prop: 'createTime' },
+ { label: '淇敼鏃堕棿', prop: 'updateTime' },
{
dataType: 'action',
fixed: 'right',
label: '鎿嶄綔',
+ width: '140px',
operation: [
{
name: '缂栬緫',
@@ -170,9 +186,9 @@
}
],
page: {
- total:0,
- size:10,
- current:0
+ total: 0,
+ size: 10,
+ current: 1
},
testObjectTableData: [],
testObjectColumn: [
@@ -182,17 +198,23 @@
prop: 'laboratoryId',
minWidth: '130',
formatData: (params) => {
- if (params == 1) {
- return '瑁呭鐢电紗璇曢獙瀹�'
- } else if (params == 5) {
- return '閫氫俊浜у搧瀹為獙瀹�'
- } else if (params == 6) {
- return '鐢靛姏浜у搧瀹為獙瀹�'
- } else if (params == 8) {
- return '鍌ㄨ兘浜у搧瀹為獙瀹�'
+ let index = this.laboratoryList.findIndex(item => item.value == params)
+ if (index > -1) {
+ return this.laboratoryList[index].label
} else {
- return '灏勯绾跨紗瀹為獙瀹�'
+ return null
}
+ // if (params == 1) {
+ // return '瑁呭鐢电紗璇曢獙瀹�'
+ // } else if (params == 5) {
+ // return '閫氫俊浜у搧瀹為獙瀹�'
+ // } else if (params == 6) {
+ // return '鐢靛姏浜у搧瀹為獙瀹�'
+ // } else if (params == 8) {
+ // return '鍌ㄨ兘浜у搧瀹為獙瀹�'
+ // } else {
+ // return '灏勯绾跨紗瀹為獙瀹�'
+ // }
},
formatType: (params) => {
if (params == 1) {
@@ -204,42 +226,34 @@
} else if (params == 8) {
return 'danger'
} else {
- return ''
+ return null
}
}
},
- {label: '妫�楠屽璞�', prop: 'specimenName'},
- {label: '妫�楠屽璞N', prop: 'specimenNameEn'},
- {label: '浜у搧', prop: 'product'},
- {label: '瀵硅薄浠e彿', prop: 'code'},
- {label: '瀵硅薄绫诲瀷', prop: 'objectType',
+ { label: '妫�楠屽璞�', prop: 'specimenName' },
+ { label: '妫�楠屽璞N', prop: 'specimenNameEn' },
+ { label: '浜у搧', prop: 'product' },
+ // { label: '瀵硅薄浠e彿', prop: 'code' },
+ {
+ label: '瀵硅薄绫诲瀷', prop: 'objectType',
dataType: 'tag',
formatData: (params) => {
- if (params == 1) {
- return '鍘熸潗鏂�'
- } else if (params == 2) {
- return '鎴愬搧'
- } else {
- return '杈呮潗'
+ let obj = this.productClassification.find(m => params == m.value)
+ if (obj) {
+ return obj.label
}
},
- formatType: (params) => {
- if (params == 1) {
- return 'success'
- } else if (params == 2) {
- return 'info'
- } else {
- return 'warning'
- }
- }},
- {label: '鍒涘缓浜�', prop: 'createUserName'},
- {label: '鏇存柊浜�', prop: 'updateUserName'},
- {label: '鍒涘缓鏃堕棿', prop: 'createTime'},
- {label: '鏇存柊鏃堕棿', prop: 'updateTime'},
+ },
+ { label: '杞﹂棿鍚嶇О', prop: 'workShopName' },
+ { label: '鍒涘缓浜�', prop: 'createUserName' },
+ { label: '鏇存柊浜�', prop: 'updateUserName' },
+ { label: '鍒涘缓鏃堕棿', prop: 'createTime' },
+ { label: '鏇存柊鏃堕棿', prop: 'updateTime' },
{
dataType: 'action',
fixed: 'right',
label: '鎿嶄綔',
+ width: '240px',
operation: [
{
name: '缂栬緫',
@@ -269,15 +283,24 @@
this.bindPartFirst(row);
},
},
+ {
+ name: '杞﹂棿缁戝畾',
+ type: 'text',
+ clickFun: (row) => {
+ this.bindWokshop1(row);
+ },
+ disabled: (row) => {
+ return row.objectType != '鍘熻緟鏉�' && row.objectType != '鍖呮潗'
+ }
+ },
]
}
],
testObjectPage: {
- total:0,
- size:10,
- current:0
+ total: 0,
+ size: 10,
+ current: 0
},
- tableLoading: false,
addOrUpdate: '',
tree: null,
loading: true,
@@ -290,11 +313,11 @@
productLoad: false,
diaProduct: false,
productColumn: [
- {label: '浜у搧鍚嶇О', prop: 'name'},
- {label: '浜у搧鍚嶇ОEN', prop: 'nameEn'},
+ { label: '浜у搧鍚嶇О', prop: 'name' },
+ { label: '浜у搧鍚嶇ОEN', prop: 'nameEn' },
+ // { label: '杞﹂棿鍚嶇О', prop: 'workShopName' },
{
dataType: 'action',
- fixed: 'right',
label: '鎿嶄綔',
operation: [
{
@@ -318,45 +341,79 @@
this.bindPartSecond(row);
},
},
- {
- name: '鍘傚瀵嗗害缁戝畾',
- type: 'text',
- clickFun: (row) => {
- this.bindSupplierDensitySecond(row);
- },
- },
+ // {
+ // name: '杞﹂棿缁戝畾',
+ // type: 'text',
+ // clickFun: (row) => {
+ // this.bindWokshop(row);
+ // },
+ // showHide: (row) => {
+ // if (this.currentObj.objectType != '鍘熻緟鏉�' && row.objectType != '鍖呮潗') {
+ // return false
+ // } else {
+ // return true
+ // }
+ // }
+ // },
+ // {
+ // name: '鍘傚瀵嗗害缁戝畾',
+ // type: 'text',
+ // clickFun: (row) => {
+ // this.bindSupplierDensitySecond(row);
+ // },
+ // },
]
}
],
productData: [],
productPage: {
- total:0,
- size:10,
- current:0
+ total: 0,
+ size: 10,
+ current: 1,
+ layout: 'total, prev, pager, next'
},
productableLoading: false,
productEditDia: false,
+ operationType: '',
productEditForm: {
+ objectId: '',
+ id: '',
name: '',
nameEn: ''
},
+ objectId: '',
productRules: {
name: [{ required: true, message: '璇峰~鍐欎骇鍝佸悕绉�', trigger: 'blur' }],
nameEn: [{ required: true, message: '璇峰~鍐欎骇鍝佸悕绉癊N', trigger: 'blur' }]
},
uploadDia: false,
fileList: [],
- token: {Authorization: "Bearer " + getToken()},
+ token: { Authorization: "Bearer " + getToken() },
uploading: false,
currentRow: {}, // 閫夋嫨闆朵欢缁戝畾鏈潯鏁版嵁鐨勪俊鎭�
currentSupplierDensityRow: {}, // 閫夋嫨闆朵欢缁戝畾鏈潯鏁版嵁鐨勪俊鎭�
bindSupplierDensityDialog: false,
bindPartDialog: false,
- type: null, // 闆朵欢缁戝畾鐨勭被鍨�--0锛氭楠屽璞★紝1锛氫骇鍝佺淮鎶�
+ type: null, // 闆朵欢缁戝畾鐨勭被鍨�--0锛氭楠屽璞★紝1锛氫骇鍝佺淮鎶�,
+ laboratoryList: [],
+ productClassification: [],//浜у搧绫诲瀷
+ currentObj: {},//褰撳墠瀵硅薄
+ currentProduct: {},//褰撳墠浜у搧
+ workshopVisible: false,
+ workshopForm: {},
+ workshopRules: {
+ workShopId: [{ required: true, message: '璇烽�夋嫨杞﹂棿', trigger: 'change' }]
+ },
+ workshopList: [],//杞﹂棿鍒楄〃
}
},
- mounted() {
+ created() {
+ this.getItemParameterList()
this.refreshTable()
+ this.getDicts("product_classification").then((response) => {
+ this.productClassification = this.dictToValue(response.data);
+ });
+ this.selectWorkShop()
},
computed: {
title() {
@@ -364,8 +421,13 @@
}
},
methods: {
+ selectWorkShop() {
+ selectWorkShop({ size: -1, current: -1 }).then(res => {
+ this.workshopList = res.data.records
+ })
+ },
submitUpload() {
- if (this.$refs.upload.uploadFiles.length == 0) {
+ if (this.$refs.upload.uploadFiles.length === 0) {
this.$message.error('鏈�夋嫨鏂囦欢')
return
}
@@ -376,8 +438,8 @@
this.$refs.upload.clearFiles()
this.uploadDia = false
this.uploading = false
- if (response.code == 201) {
- this.$message.error(response.message)
+ if (response.code !== 200) {
+ this.$message.error(response.msg)
return
}
this.$message.success('涓婁紶鎴愬姛')
@@ -412,19 +474,25 @@
return true;
}
},
- handleSuccessUp (response, file, fileList) {
- this.$refs.upload.clearFiles()
- if (response.code == 201) {
- this.$message.error(response.message)
+ handleSuccessUp1(response, file, fileList) {
+ this.$refs.upload1.clearFiles()
+ if (response.code !== 200) {
+ this.$message.error(response.msg)
return
}
this.$message.success('涓婁紶鎴愬姛')
this.refreshTable()
},
+ refreshList() {
+ this.refreshTable()
+ },
+ refreshList1() {
+ this.refreshTable()
+ },
refreshTable() {
this.tableLoading = true
if (this.radio === 0) {
- selectItemParameterList({...this.page, ...this.itemParameterForm}).then(res => {
+ selectItemParameterList({ ...this.page, ...this.itemParameterForm }).then(res => {
this.tableLoading = false
if (res.code === 200) {
this.tableData = res.data.records
@@ -434,7 +502,7 @@
this.tableLoading = false
})
} else {
- selectTestObjectList({...this.testObjectPage, ...this.itemParameterForm}).then(res => {
+ selectTestObjectList({ ...this.testObjectPage, ...this.itemParameterForm }).then(res => {
this.tableLoading = false
if (res.code === 200) {
this.testObjectTableData = res.data.records
@@ -446,7 +514,17 @@
}
},
refresh() {
+ this.itemParameterForm = {
+ inspectionItem: null,
+ inspectionItemSubclass: null,
+ sample: null
+ }
this.resetForm('itemParameterForm')
+ this.page.current = 1
+ this.refreshTable()
+ },
+ pagination(page) {
+ this.page.size = page.limit
this.refreshTable()
},
// 妫�楠岄」鐩弬鏁版柊澧�
@@ -458,107 +536,250 @@
}
},
// 妫�楠岄」鐩弬鏁�-鎵撳紑淇敼寮规
- editForm (row) {
+ editForm(row) {
this.$refs.editForm.openDia('edit', row)
},
// 妫�楠岄」鐩弬鏁�-鍒犻櫎
- delete (row) {
- this.$modal.confirm('鏄惁纭鍒犻櫎姝ゆ暟鎹」锛�').then(function() {
- return delItemParameter(row.id);
+ delete(row) {
+ this.$confirm('姝ゆ搷浣滃皢鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
}).then(() => {
- this.getList();
- this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
- }).catch(() => {});
+ delItemParameter({ id: row.id }).then(res => {
+ if (res.code === 200) {
+ this.$message.success('鍒犻櫎鎴愬姛')
+ this.refreshTable();
+ }
+ })
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '宸插彇娑堝垹闄�'
+ });
+ })
},
// 妫�楠屽璞�-鎵撳紑淇敼寮规
- editTestObjectForm (row) {
+ editTestObjectForm(row) {
this.$refs.testObjectEditForm.openDia('edit', row)
},
// 妫�楠岄」鐩弬鏁�-鍒犻櫎
- deleteTest (row) {
- this.$modal.confirm('鏄惁纭鍒犻櫎姝ゆ暟鎹」锛�').then(function() {
- return delTestObject(row.id);
+ deleteTest(row) {
+ this.$confirm('姝ゆ搷浣滃皢鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
}).then(() => {
- this.getList();
- this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
- }).catch(() => {});
+ delTestObject({ id: row.id }).then(res => {
+ if (res.code === 200) {
+ this.$message.success('鍒犻櫎鎴愬姛')
+ this.refreshTable();
+ }
+ })
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '宸插彇娑堝垹闄�'
+ });
+ })
},
// 浜у搧缁存姢
upProduct(row) {
+ this.currentObj = row;
+ // if (this.currentObj.objectType == '鍘熻緟鏉�') {
+ // if (this.productColumn.length < 4) {
+ // this.productColumn.splice(2, 0, { label: '杞﹂棿鍚嶇О', prop: 'workShopName' })
+ // }
+ // } else {
+ // if (this.productColumn.length == 4) {
+ // this.productColumn.splice(2, 1)
+ // }
+ // }
this.diaProduct = true
+ this.objectId = row.id
+ this.productPage.current = 1
this.getProductList(row)
},
- getProductList (row) {
+ // 鏌ヨ浜у搧缁存姢鍒楄〃鏁版嵁
+ getProductList() {
const params = {
- objectId: 0,
- partNo: row.partNo
+ objectId: this.objectId,
}
this.productableLoading = true
- selectProductListByObjectId({...params, ...this.productPage}).then(res => {
+ selectProductListByObjectId({ ...params, ...this.productPage }).then(res => {
this.productableLoading = false
- if (res.code === 200) return
this.productData = res.data.records
this.productPage.total = res.data.total
}).catch(err => {
this.productableLoading = false
})
},
+ // 浜у搧缁存姢鍒楄〃鍒嗛〉
+ productPagination(page) {
+ this.productPage.current = page.page
+ this.getProductList()
+ },
// 浜у搧缁存姢-鏂板-缂栬緫
- editProduct (type, row) {
+ editProduct(type, row) {
this.productEditDia = true
+ this.operationType = type
if (type === 'edit') {
- this.productEditForm = row
+ this.productEditForm = this.HaveJson(row)
}
},
// 鎻愪氦浜у搧缁存姢淇敼
- submitProduct () {
+ submitProduct() {
this.$refs['productEditForm'].validate((valid) => {
if (valid) {
-
+ this.uploading = true
+ this.productEditForm.objectId = this.objectId
+ if (this.operationType === 'add') {
+ addProduct(this.productEditForm).then(res => {
+ this.uploading = false
+ if (res.code === 200) {
+ this.$message.success('鏂板鎴愬姛')
+ this.closeProduct()
+ this.getProductList();
+ }
+ }).catch(err => {
+ this.uploading = false
+ })
+ } else {
+ upProduct(this.productEditForm).then(res => {
+ this.uploading = false
+ if (res.code === 200) {
+ this.$message.success('鏂板鎴愬姛')
+ this.closeProduct()
+ this.getProductList();
+ }
+ }).catch(err => {
+ this.uploading = false
+ })
+ }
}
})
},
closeProduct() {
- this.productEditDia = false
this.resetForm('productEditForm')
+ this.productEditDia = false
},
// 浜у搧缁存姢-鍒犻櫎
- deleteProduct (row) {
- this.$modal.confirm('鏄惁纭鍒犻櫎姝ゆ暟鎹」锛�').then(function() {
- return delProduct(row.id);
+ deleteProduct(row) {
+ this.$confirm('姝ゆ搷浣滃皢鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
}).then(() => {
- this.getList();
- this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
- }).catch(() => {});
+ delProduct({ id: row.id }).then(res => {
+ if (res.code === 200) {
+ this.$message.success('鍒犻櫎鎴愬姛')
+ this.getProductList();
+ }
+ })
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '宸插彇娑堝垹闄�'
+ });
+ })
},
// 闆朵欢缁戝畾
- bindPartFirst (row) {
+ bindPartFirst(row) {
this.bindPart(row, 0)
},
- bindPartSecond (row) {
+ bindPartSecond(row) {
this.bindPart(row, 1)
},
+ // 浜у搧-杞﹂棿缁戝畾
+ bindWokshop(row) {
+ this.workshopForm.workShopId = row.workShopId
+ this.currentProduct = row;
+ this.workshopVisible = true
+ },
+ // 瀵硅薄-杞﹂棿缁戝畾
+ bindWokshop1(row) {
+ this.$set(this.workshopForm, 'workShopId', row.workShopId)
+ this.currentProduct = {};
+ this.currentObj = row;
+ this.workshopVisible = true
+ },
// 鍘傚瀵嗗害缁戝畾
- bindSupplierDensitySecond (row) {
+ bindSupplierDensitySecond(row) {
this.bindSupplierDensity(row)
},
// 鎵撳紑鍘傚瀵嗗害缁戝畾寮规
- bindSupplierDensity (row) {
+ bindSupplierDensity(row) {
this.currentSupplierDensityRow = row
this.bindSupplierDensityDialog = true
},
// 鎵撳紑闆朵欢缁戝畾寮规
- bindPart (row, index) {
+ bindPart(row, index) {
+ if (index == 0) {
+ this.currentObj = row
+ }
this.type = index
this.currentRow = row
this.bindPartDialog = true
},
- closeBindPartDialog () {
+ closeBindPartDialog() {
this.bindPartDialog = false
},
- closeBindSupplierDensityDialog () {
+ closeBindSupplierDensityDialog() {
this.bindSupplierDensityDialog = false
},
+ getItemParameterList() {
+ obtainItemParameterList().then(res => {
+ let data = []
+ res.data.forEach(a => {
+ data.push({
+ label: a.laboratoryName,
+ value: a.id
+ })
+ })
+ this.laboratoryList = data
+ })
+ },
+ // 缁戝畾杞﹂棿
+ submitWorkshop() {
+ this.$refs['workshopForm'].validate((valid) => {
+ if (valid) {
+ this.uploading = true
+ if (this.currentProduct.id) {
+ // 浜у搧缁戝畾杞﹂棿
+ updateWorkShop({
+ id: this.currentProduct.id ? this.currentProduct.id : null,
+ workShopId: this.workshopForm.workShopId,
+ workShopName: this.workshopList.find(m => m.id == this.workshopForm.workShopId).name,
+ }).then(res => {
+ this.uploading = false
+ if (res.code === 200) {
+ this.$message.success('缁戝畾鎴愬姛')
+ this.getProductList();
+ this.workshopVisible = false
+ }
+ }).catch(err => {
+ this.uploading = false
+ })
+ } else {
+ // 瀵硅薄缁戝畾杞﹂棿
+ updateObjectWorkShop({
+ id: this.currentObj.id ? this.currentObj.id : null,
+ workShopId: this.workshopForm.workShopId,
+ workShopName: this.workshopList.find(m => m.id == this.workshopForm.workShopId).name,
+ }).then(res => {
+ this.uploading = false
+ if (res.code === 200) {
+ this.$message.success('缁戝畾鎴愬姛')
+ this.refreshTable()
+ this.workshopVisible = false
+ }
+ }).catch(err => {
+ this.uploading = false
+ })
+ }
+ }
+ })
+ }
}
}
</script>
--
Gitblit v1.9.3