| | |
| | | <template> |
| | | <div> |
| | | <el-dialog title="零件绑定" :visible.sync="isShow" width="800px" @close="$emit('closeBindPartDialog')"> |
| | | <lims-table :tableData="tableData" :column="column" height="460" |
| | | :page="page" :tableLoading="tableLoading"></lims-table> |
| | | <lims-table :tableData="tableData" :column="column" height="460" :page="page" :tableLoading="tableLoading" |
| | | :key="1"></lims-table> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="$emit('closeBindPartDialog')">取 消</el-button> |
| | | <el-button type="primary" @click="addBindPart('add')" :loading="addBindLoad">新 增</el-button> |
| | |
| | | <el-dialog :title="dialogTitle" :visible.sync="addBindPartDialog" width="400px" @close="closeBindPartDialog" |
| | | :close-on-click-modal="false" > |
| | | <div class="body" v-if="addBindPartDialog"> |
| | | <el-form label-position="right" label-width="80px" |
| | | ref="bindPartData" |
| | | :rules="bindPartDataRules" |
| | | <el-form label-position="right" label-width="80px" ref="bindPartData" :rules="bindPartDataRules" |
| | | :model="bindPartData"> |
| | | <el-form-item label="零件号:" prop="partNo"> |
| | | <el-input v-model="bindPartData.partNo" size="small"></el-input> |
| | | <el-input v-model="bindPartData.partNo" size="small" :disabled="dialogTitle == '修改零件绑定'"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="颜色:" prop="color"> |
| | | <el-input v-model="bindPartData.color" size="small"></el-input> |
| | |
| | | <el-form-item label="色标:" prop="colorCode"> |
| | | <el-input v-model="bindPartData.colorCode" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="进厂检验项:" prop="inspectionItem" v-if="currentObj.objectType == '原材料'" label-width="100px"> |
| | | <!-- <el-input v-model="bindPartData.inspectionItem" disabled placeholder="选择检验项" size="small"> |
| | | <template slot="append"> |
| | | <el-button slot="append" icon="el-icon-search" @click="openItems"></el-button> |
| | | </template> |
| | | </el-input> --> |
| | | <el-select v-model="bindPartData.inspectionItem" multiple collapse-tags placeholder="请选择" size="small"> |
| | | <el-option v-for="item in itemList" :key="item.inspectionItem" :label="item.inspectionItem" |
| | | :value="item.inspectionItem"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="closeBindPartDialog">取 消</el-button> |
| | | <el-button type="primary" @click="submitBind" :loading="bindLoad">确 认</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <el-dialog title="修改记录" :visible.sync="editItem" width="600px"> |
| | | <div class="body" v-if="editItem"> |
| | | <lims-table :tableData="editList" :column="editColumn" height="460px" :tableLoading="tableLoading0" :key="2" |
| | | :page="editPage" @pagination="editPagination"></lims-table> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | |
| | | addProductPart, |
| | | addTestObjectPart, deleteProductPart, deleteTestObjectPart, |
| | | selectByProductId, |
| | | selectByTestObjectId, updateProductPart, updateTestObjectPart |
| | | selectByTestObjectId, updateProductPart, updateTestObjectPart, inspectionItems, productPartReview |
| | | } from "@/api/structural/structureTestObjectPart"; |
| | | import {delProduct} from "@/api/structural/capability"; |
| | | |
| | | export default { |
| | | name: "bindPartDialog", |
| | |
| | | currentRow : { // 选择本条数据的信息 |
| | | type: Object, |
| | | default: () => {} |
| | | } |
| | | }, |
| | | currentObj: {//当前对象 |
| | | type: Object, |
| | | default: () => { } |
| | | }, |
| | | }, |
| | | data() { |
| | | // 这里存放数据 |
| | |
| | | {label: '零件号', prop: 'partNo'}, |
| | | {label: '颜色', prop: 'color'}, |
| | | {label: '色标', prop: 'colorCode'}, |
| | | { |
| | | label: '状态', prop: 'review', |
| | | dataType: "tag", |
| | | formatType: (params) => { |
| | | if (params == '待复核') { |
| | | return 'danger' |
| | | } else { |
| | | return 'success' |
| | | } |
| | | }, |
| | | }, |
| | | { |
| | | dataType: 'action', |
| | | fixed: 'right', |
| | |
| | | type: 'text', |
| | | clickFun: (row) => { |
| | | this.delete(row); |
| | | }, |
| | | }, |
| | | { |
| | | name: '复核', |
| | | type: 'text', |
| | | clickFun: (row) => { |
| | | this.$confirm("是否复核通过?", "复核", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | productPartReview({ id: row.id }).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$message.success("复核通过"); |
| | | this.getList()(); |
| | | } |
| | | }); |
| | | }) |
| | | .catch(() => { }); |
| | | }, |
| | | }, |
| | | { |
| | | name: '记录', |
| | | type: 'text', |
| | | clickFun: (row) => { |
| | | this.lookList(row); |
| | | }, |
| | | }, |
| | | ] |
| | |
| | | partNo: '', // 零件号 |
| | | color: '', // 颜色 |
| | | colorCode: '', // 色标 |
| | | inspectionItem: [],//原材料进厂检验对象列表 |
| | | }, |
| | | bindPartDataRules: { |
| | | partNo: [ |
| | |
| | | }, |
| | | bindLoad: false, |
| | | upIndex: 0, |
| | | |
| | | addBindLoad: false, |
| | | itemList: [],//原材料进厂检验对象列表 |
| | | editItem: false, |
| | | editList: [], |
| | | editColumn: [ |
| | | { label: '零件号', prop: 'inspectionItem' }, |
| | | { label: '颜色', prop: 'inspectionItemSubclass' }, |
| | | { label: '色标', prop: 'ask' }, |
| | | { label: '进厂检验项', prop: 'askTell' }, |
| | | { label: '修改时间', prop: 'method' }, |
| | | { label: '修改人', prop: 'method' }, |
| | | ], |
| | | editPage: { |
| | | total: 0, |
| | | size: 10, |
| | | current: 0, |
| | | }, |
| | | tableLoading0: false, |
| | | // mutilSelect: [] |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.getList() |
| | | this.getItemList() |
| | | }, |
| | | // 方法集合 |
| | | methods: { |
| | | getItemList() { |
| | | // this.tableLoading0 = true; |
| | | inspectionItems({ |
| | | sample: this.currentObj.specimenName, |
| | | productName: this.type == 0 ? null : this.currentRow.name |
| | | }).then(res => { |
| | | this.itemList = res.data |
| | | // this.tableLoading0 = false; |
| | | }) |
| | | }, |
| | | // 修改记录 |
| | | lookList() { |
| | | this.editItem = true; |
| | | this.getEditList() |
| | | }, |
| | | getEditList() { }, |
| | | editPagination() { |
| | | this.editPage.current = page; |
| | | this.editPage.size = limit; |
| | | this.getEditList(); |
| | | }, |
| | | getList() { |
| | | this.tableLoading = true |
| | | // 根据类型判断是检验对象零件绑定还是产品维护零件绑定 |
| | |
| | | this.operationType = type |
| | | if (type === 'edit') { |
| | | this.bindPartData = this.HaveJson(row) |
| | | this.bindPartData.inspectionItem = this.bindPartData.inspectionItem ? this.bindPartData.inspectionItem.split(',') : [] |
| | | } |
| | | }, |
| | | // 提交零件绑定 |
| | |
| | | color: this.bindPartData.color, |
| | | colorCode: this.bindPartData.colorCode, |
| | | partNo: this.bindPartData.partNo, |
| | | inspectionItem: this.bindPartData.inspectionItem && this.bindPartData.inspectionItem.length > 0 ? this.bindPartData.inspectionItem.join(',') : '' |
| | | } : { |
| | | productId: this.currentRow.id, |
| | | color: this.bindPartData.color, |
| | | colorCode: this.bindPartData.colorCode, |
| | | partNo: this.bindPartData.partNo, |
| | | inspectionItem: this.bindPartData.inspectionItem && this.bindPartData.inspectionItem.length > 0 ? this.bindPartData.inspectionItem.join(',') : '' |
| | | } |
| | | this.bindLoad = true |
| | | if (this.operationType === 'add') { |
| | | if (this.type === 0) { |
| | | addTestObjectPart(params).then(res => { |
| | | this.bindLoad = false |
| | | if (res.code === 200) { |
| | | this.resetForm('bindPartData') |
| | | this.addBindPartDialog = false |
| | |
| | | this.resetForm('bindPartData') |
| | | this.addBindPartDialog = false |
| | | }, |
| | | // openItems() { |
| | | // this.mutilSelect = this.bindPartData.inspectionItem ? this.bindPartData.inspectionItem.split(',') : [] |
| | | // this.$refs.itemTable.toggleRowSelection(this.mutilSelect) |
| | | // this.addBindItem = true; |
| | | // }, |
| | | // submitBindItem() { |
| | | // this.bindPartData.inspectionItem = this.mutilSelect.join(',') |
| | | // }, |
| | | // handleSelectionChange(val) { |
| | | // this.mutilSelect = val |
| | | // } |
| | | }, |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | </style> |
| | | <style scoped></style> |