| | |
| | | params: query, |
| | | }); |
| | | } |
| | | //删除不合格处理 |
| | | //提交OA流程 |
| | | export function pushOA(query) { |
| | | return request({ |
| | | url: "/unqualifiedHandler/pushOA", |
| | | method: "delete", |
| | | params: query, |
| | | method: "post", |
| | | data: query, |
| | | }); |
| | | } |
| | |
| | | params: query, |
| | | }); |
| | | } |
| | | // 绑定车间 |
| | | // 产品-绑定车间 |
| | | export function updateWorkShop(query) { |
| | | return request({ |
| | | url: "/capacityScope/updateWorkShop", |
| | |
| | | data: query, |
| | | }); |
| | | } |
| | | |
| | | // 对象-绑定车间 |
| | | export function updateObjectWorkShop(query) { |
| | | return request({ |
| | | url: "/capacityScope/updateObjectWorkShop", |
| | | method: "post", |
| | | data: query, |
| | | }); |
| | | } |
| | |
| | | export function deleteProductPart(query) { |
| | | return request({ |
| | | url: "/productPart/deleteProductPart", |
| | | method: "post", |
| | | method: "delete", |
| | | params: query, |
| | | }); |
| | | } |
| | |
| | | data: query, |
| | | }); |
| | | } |
| | | |
| | | // 查询零件号修改记录 |
| | | export function productPartLogList(query) { |
| | | return request({ |
| | | url: "/productPart/productPartLogList", |
| | | method: "get", |
| | | params: query, |
| | | }); |
| | | } |
| | |
| | | <el-table-column v-for="(item, index) in column" :key="index" :column-key="item.columnKey" |
| | | :filter-method="item.filterHandler" :filter-multiple="item.filterMultiple" :filtered-value="item.filteredValue" |
| | | :filters="item.filters" :fixed="item.fixed" :label="item.label" :prop="item.prop" |
| | | :show-overflow-tooltip="item.dataType === 'action' || item.dataType === 'slot' ? false : true" |
| | | :min-width="item.dataType == 'action' ? btnWidth : getTitleWidth(item)" |
| | | :sortable="item.sortable ? true : false" :type="item.type" :width="item.dataType == 'action' ? btnWidth : getTitleWidth(item)" align="center"> |
| | | :show-overflow-tooltip="item.dataType === 'action' || item.dataType === 'slot' ? false : true" |
| | | :min-width="item.dataType == 'action' ? btnWidth : getTitleWidth(item)" :sortable="item.sortable ? true : false" |
| | | :type="item.type" |
| | | :width="item.dataType == 'action' ? btnWidth : (column.length < 6 ? 'auto' : getTitleWidth(item))" |
| | | align="center"> |
| | | <!-- <div class="123" v-if="item.type == ''"> --> |
| | | <template v-if="item.hasOwnProperty('colunmTemplate')" :slot="item.colunmTemplate" slot-scope="scope"> |
| | | <slot v-if="item.theadSlot" :index="index" :name="item.theadSlot" :row="scope.row" /> |
| | |
| | | </div> |
| | | |
| | | <!-- 按钮 --> |
| | | <div v-else-if="item.dataType == 'action'" |
| | | :style="`width:${getWidth(item.operation, scope.row)}`"> |
| | | <div v-else-if="item.dataType == 'action'" :style="`width:${getWidth(item.operation, scope.row)}`"> |
| | | <template v-for="(o, key) in item.operation"> |
| | | <el-button v-show="o.type != 'upload'" size="mini" v-if="o.showHide ? o.showHide(scope.row) : true" |
| | | :disabled="o.disabled ? o.disabled(scope.row) : false" :icon="iconFn(o)" :plain="o.plain" |
| | | :disabled="o.disabled ? o.disabled(scope.row) : false" :plain="o.plain" |
| | | :style="{ color: o.name === '删除' ? '#f56c6c' : o.color }" :type="o.type | typeFn(scope.row)" |
| | | @click="o.clickFun(scope.row)" :key="key"> |
| | | {{ o.name }} |
| | | </el-button> |
| | | <el-upload :action="javaApi + o.url + '?id=' + (o.uploadIdFun ? o.uploadIdFun(scope.row) : scope.row.id)" |
| | | :key="uploadKeys[scope.$index]" |
| | | ref="uploadRef" |
| | | size="mini" :multiple="o.multiple ? o.multiple : false" :limit="1" |
| | | :disabled="o.disabled ? o.disabled(scope.row) : false" :accept="o.accept |
| | | :key="uploadKeys[scope.$index]" ref="uploadRef" size="mini" :multiple="o.multiple ? o.multiple : false" |
| | | :limit="1" :disabled="o.disabled ? o.disabled(scope.row) : false" :accept="o.accept |
| | | ? o.accept |
| | | : '.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar' |
| | | " v-if="o.type == 'upload'" style="display: inline-block; width: 50px" |
| | | v-show="o.showHide ? o.showHide(scope.row) : true" :headers="uploadHeader" |
| | | :before-upload="(file) => beforeUpload(file, scope.$index)" |
| | | :on-change="(file, fileList) => handleChange(file, fileList, scope.$index)" |
| | | :on-error="(error, file, fileList) => onError(error, file, fileList, scope.$index)" |
| | | :on-success="(response, file, fileList) => handleSuccessUp(response, file, fileList, scope.$index)" |
| | | :on-exceed="onExceed" :show-file-list="false"> |
| | | v-show="o.showHide ? o.showHide(scope.row) : true" :headers="uploadHeader" |
| | | :before-upload="(file) => beforeUpload(file, scope.$index)" |
| | | :on-change="(file, fileList) => handleChange(file, fileList, scope.$index)" |
| | | :on-error="(error, file, fileList) => onError(error, file, fileList, scope.$index)" |
| | | :on-success="(response, file, fileList) => handleSuccessUp(response, file, fileList, scope.$index)" |
| | | :on-exceed="onExceed" :show-file-list="false"> |
| | | <el-button :size="o.size ? o.size : 'small'" type="text" |
| | | :disabled="o.disabled ? o.disabled(scope.row) : false">{{ o.name }}</el-button> |
| | | </el-upload> |
| | |
| | | count += a.name.length; |
| | | } |
| | | }); |
| | | this.btnWidth = count * 15 + 50 + "px"; |
| | | this.btnWidth = count * 15 + 60 + "px"; |
| | | return count * 15 + 50 + "px"; |
| | | }, |
| | | getTitleWidth(row) { |
| | | if (row.label.includes('时间') || row.label.includes('编号') || row.label.includes('样品名称') || row.label.includes('零件')) { |
| | | return 160 |
| | | } else if (row.label.includes('产品')) { |
| | | return 210 |
| | | } else if (row.label.includes('操作')) { |
| | | return row.width |
| | | } else { |
| | | const span = document.createElement('span'); |
| | | span.innerText = row.label; |
| | | document.body.appendChild(span); |
| | | const width = `${span.offsetWidth + 50}px`; |
| | | const width = `${span.offsetWidth + 60}px`; |
| | | document.body.removeChild(span); |
| | | |
| | | return width; |
| | |
| | | // 更新当前文件 |
| | | this.currentFiles[index] = file; |
| | | }, |
| | | beforeUpload (file, index) { |
| | | beforeUpload(file, index) { |
| | | this.currentFiles[index] = {} |
| | | if (file.size > 1024 * 1024 * 10) { |
| | | this.$message.error('上传文件不超过10M'); |
| | |
| | | color: rgb(64, 158, 255); |
| | | cursor: pointer; |
| | | } |
| | | |
| | | >>>.cell { |
| | | padding: 0 !important; |
| | | } |
| | | |
| | | .cell { |
| | | white-space: nowrap; |
| | | overflow: hidden; |
| | |
| | | height: 10px; |
| | | /* 设置滚动条宽度 */ |
| | | } |
| | | |
| | | .lims-table .highlight-warning-row-border td:first-child { |
| | | border-left: 4px solid #ffcd29; |
| | | } |
| | |
| | | deep:true, |
| | | handler(){ |
| | | this.isLoding = false |
| | | console.log(this.isLoding) |
| | | } |
| | | } |
| | | }, |
| | |
| | | onScroll(){}, |
| | | scrollFn() { |
| | | let content = this.$refs.content |
| | | // console.log(22222,content.scrollTop + content.clientHeight+1,content.scrollHeight) |
| | | if (content.scrollTop + content.clientHeight+2 >= content.scrollHeight) { |
| | | // console.log(1111,this.finishLoding) |
| | | if(!this.finishLoding){ |
| | | this.loadMore() |
| | | }else{ |
| | |
| | | <el-button link type="text" size="small">更多</el-button> |
| | | </template> |
| | | <div> |
| | | <el-button :disabled="scope.row.insState != 3" style="margin-left: 10px" type="text" size="small" @click="download(scope.row)">下载报告</el-button> |
| | | <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" style="margin-left: 10px" type="text" size="small" @click="download(scope.row)">下载报告</el-button> |
| | | <el-upload ref='upload' |
| | | :action="javaApi + '/insReport/inReport'" |
| | | :before-upload="beforeUpload" |
| | |
| | | :show-file-list="false" |
| | | style="display: inline;margin: 0 6px" |
| | | accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar'> |
| | | <el-button :disabled="scope.row.insState != 3" size="small" type="text">上传</el-button> |
| | | <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" size="small" type="text">上传</el-button> |
| | | </el-upload> |
| | | <el-button :disabled="scope.row.insState != 3" type="text" size="small" @click="handleRestore(scope.row)">还原</el-button> |
| | | <el-button :disabled="scope.row.insState != 3" type="text" size="small" @click="handleIssued(scope.row)">查看报告</el-button> |
| | | <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" @click="handleRestore(scope.row)">还原</el-button> |
| | | <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" @click="handleIssued(scope.row)">查看报告</el-button> |
| | | </div> |
| | | </el-popover> |
| | | </div> |
| | |
| | | <viewManHourDia ref="viewManHourDia"></viewManHourDia> |
| | | <!--不合格复测查看弹框--> |
| | | <un-pass-retest-result v-if="retestVisible" :retestInfo="retestInfo" :retestVisible="retestVisible" @closeRetestLook="closeRetestLook"></un-pass-retest-result> |
| | | <!--报告查看--> |
| | | <el-dialog title="报告查看" :visible.sync="issuedVisible" width="80vw" :modal-append-to-body="false" |
| | | :fullscreen="fullscreen"> |
| | | <div class="full-screen"> |
| | | <i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen = true;" |
| | | v-if="!fullscreen"></i> |
| | | <img src="@/assets/images/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen = false;"> |
| | | </div> |
| | | <div style="height: 80vh;" v-if="issuedVisible"> |
| | | <onlyoffice ref="onlyoffice" :options="option" style="width: 100%;height: 100%;" /> |
| | | </div> |
| | | </el-dialog> |
| | | <el-dialog title="查看附件" :visible.sync="lookDialogVisible" width="800px" top="5vh" fullscreen> |
| | | <filePreview v-if="lookDialogVisible" :fileUrl="javaApi + '/word/' + currentInfo.tempUrlPdf" :currentFile="{}" |
| | | style="max-height: 90vh;overflow-y: auto;" /> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getYearAndMonthAndDays } from "@/utils/date"; |
| | | |
| | | import EditInspectionItem from "./components/EditInspectionItem.vue"; |
| | | import limsTable from "@/components/Table/lims-table.vue"; |
| | | import viewManHourDia from "./components/viewManHourDia.vue" |
| | |
| | | import { mapGetters } from "vuex"; |
| | | import {getRetestResult} from "@/api/business/rawMaterialOrder"; |
| | | import {upReportUrl} from "@/api/business/insReport"; |
| | | import onlyoffice from "@/components/Onlyoffice/onlyoffice.vue"; |
| | | import filePreview from "@/components/Preview/filePreview.vue"; |
| | | export default { |
| | | name: 'InspectionTask', |
| | | components: { |
| | | filePreview, onlyoffice, |
| | | EditInspectionItem, |
| | | limsTable, |
| | | viewManHourDia, |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | issuedVisible: false, |
| | | fullscreen: false, |
| | | lookDialogVisible: false, |
| | | option: null, |
| | | InspectionKey: 1, |
| | | bindDialogVisible: false, |
| | | bindAddDialogVisible: false, |
| | |
| | | }, |
| | | // 查看报告 |
| | | handleIssued(row) { |
| | | console.log('================') |
| | | // todo: 查看报告组件 |
| | | this.currentInfo = row; |
| | | let fileName = row.url |
| | |
| | | if (response.code == 200) { |
| | | this.$refs.upload.clearFiles() |
| | | this.$message.success("上传成功"); |
| | | this.refreshTable() |
| | | } else { |
| | | this.$message.error(response.message); |
| | | } |
| | |
| | | month: month, |
| | | } |
| | | currentUserWorkHourCount(params).then(res => { |
| | | console.log(res) |
| | | this.totalHour = res.data.totalHour |
| | | this.materialPieSeries[0].data[0].value = res.data.subsidiaryHour |
| | | this.materialPieSeries[0].data[1].value = res.data.yieldHour |
| | |
| | | }; |
| | | }, |
| | | mounted() { |
| | | console.log(22222, this.currentRow); |
| | | this.entity.productListId = this.currentRow.id; |
| | | this.searchTableData(); |
| | | }, |
| | |
| | | height: calc(100% - 30px); |
| | | overflow-y: scroll; |
| | | scrollbar-width: none; |
| | | " @node-click="handleNodeClick" @node-drop="handleDrop"> |
| | | " @node-click="handleNodeClick" |
| | | @node-drop="handleDrop"> |
| | | <div slot-scope="{ node, data }" class="custom-tree-node"> |
| | | <el-row style="width: 100%"> |
| | | <el-col :class="{ sort: node.level > 3 }" :span="19" :title="data.label" style="text-align: left"> |
| | |
| | | </el-row> |
| | | <el-row v-loading="tableLoad" class="standard_table"> |
| | | <el-table ref="standard" :data="standardList" class="el-table" header-row-class-name="header-class" height="220" |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border highlight-current-row |
| | | style="width: 100%; height: 220px !important" tooltip-effect="dark" @row-click="rowClick"> |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border |
| | | highlight-current-row style="width: 100%; height: 220px !important" tooltip-effect="dark" |
| | | @row-click="rowClick"> |
| | | <el-table-column label="标准编号" prop="code" show-overflow-tooltip width="200"> |
| | | <template slot-scope="scope"> |
| | | <span style="color: red; font-size: 14px">{{ |
| | |
| | | </el-row> |
| | | <el-row v-loading="tableLoad2" class="product_table"> |
| | | <el-table id="templateParamTable" ref="productTable" v-loading="productTableLoading" :data="productList" |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border :fit="true" |
| | | :row-class-name="tableRowClassName" class="productTable" header-row-class-name="header-class" height="100%" |
| | | row-key="id" stripe style="width: 100%" tooltip-effect="dark" @select="upProductSelect" |
| | | @selection-change="handleSelectionChange" @select-all="handleAll"> |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border |
| | | :fit="true" :row-class-name="tableRowClassName" class="productTable" |
| | | header-row-class-name="header-class" height="100%" row-key="id" stripe style="width: 100%" |
| | | tooltip-effect="dark" @select="upProductSelect" @selection-change="handleSelectionChange" |
| | | @select-all="handleAll"> |
| | | <el-table-column type="selection" width="50"> </el-table-column> |
| | | <el-table-column label="产品" min-width="100" prop="sample" show-overflow-tooltip></el-table-column> |
| | | <el-table-column label="型号" min-width="100" prop="model" show-overflow-tooltip></el-table-column> |
| | |
| | | <template slot-scope="scope"> |
| | | <el-button type="text" @click="sectionUp(scope.row)" :disabled="!checkPermi(['standard:standardLibrary:upStandardProduct']) |
| | | ">区间设置</el-button> |
| | | <!-- <el-button type="text" :disabled="!checkPermi(['standard:standardLibrary:upStandardProduct']) |
| | | " @click="bindSupplierDensitySecond(scope.row)">绑定厂家</el-button> --> |
| | | <el-button type="text" :disabled="!checkPermi(['standard:standardLibrary:upStandardProduct']) |
| | | " @click="bindSupplierDensitySecond(scope.row)">绑定厂家</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <el-dialog :close-on-click-modal="false" :visible.sync="sectionUpDia" title="区间设置" width="80%"> |
| | | <div class="body" style="padding: 5px 0"> |
| | | <el-table :data="sectionList" border height="350px" style="width: 100%" |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }"> |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }"> |
| | | <el-table-column align="center" label="序号" type="index" width="70"> |
| | | </el-table-column> |
| | | <el-table-column align="center" label="区间"> |
| | |
| | | } |
| | | }, |
| | | // 调用tree过滤方法 中文英过滤 |
| | | filterNode(value, data, node) { |
| | | filterNode (value, data, node) { |
| | | if (!value) { //如果数据为空,则返回true,显示所有的数据项 |
| | | return true |
| | | } |
| | |
| | | return this.chooseNode(val, data, node) // 调用过滤二层方法 |
| | | }, |
| | | // 过滤父节点 / 子节点 (如果输入的参数是父节点且能匹配,则返回该节点以及其下的所有子节点;如果参数是子节点,则返回该节点的父节点。name是中文字符,enName是英文字符. |
| | | chooseNode(value, data, node) { |
| | | chooseNode (value, data, node) { |
| | | if (data.label.indexOf(value) !== -1) { |
| | | return true |
| | | } |
| | |
| | | import { |
| | | addProduct, |
| | | delItemParameter, delProduct, delTestObject, selectItemParameterList, selectProductListByObjectId, |
| | | selectTestObjectList, upProduct, updateWorkShop |
| | | selectTestObjectList, upProduct, updateWorkShop, updateObjectWorkShop |
| | | } from "@/api/structural/capability"; |
| | | import limsTable from "@/components/Table/lims-table.vue"; |
| | | import EditForm from "@/views/structural/capabilityAndLaboratory/capabilityComponents/EditForm.vue"; |
| | |
| | | } |
| | | }, |
| | | }, |
| | | { label: '车间名称', prop: 'workShopName' }, |
| | | { label: '创建人', prop: 'createUserName' }, |
| | | { label: '更新人', prop: 'updateUserName' }, |
| | | { label: '创建时间', prop: 'createTime' }, |
| | |
| | | clickFun: (row) => { |
| | | this.bindPartFirst(row); |
| | | }, |
| | | }, |
| | | { |
| | | name: '车间绑定', |
| | | type: 'text', |
| | | clickFun: (row) => { |
| | | this.bindWokshop1(row); |
| | | }, |
| | | disabled: (row) => { |
| | | return row.objectType != '原材料' |
| | | } |
| | | }, |
| | | ] |
| | | } |
| | |
| | | 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 |
| | | }, |
| | | // 厂家密度绑定 |
| | |
| | | this.$refs['workshopForm'].validate((valid) => { |
| | | if (valid) { |
| | | this.uploading = true |
| | | updateWorkShop({ |
| | | id: this.currentProduct.id, |
| | | workShopId: this.workshopForm.workShopId, |
| | | name: 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 |
| | | }) |
| | | 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 |
| | | }) |
| | | } |
| | | } |
| | | }) |
| | | } |
| | |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="closeBindPartDialog">取 消</el-button> |
| | | <el-button type="primary" @click="submitBind" :loading="bindLoad">确 认</el-button> |
| | | <el-button type="primary" @click="submitBind">确 认</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <el-dialog title="修改记录" :visible.sync="editItem" width="600px"> |
| | | <el-dialog title="修改记录" :visible.sync="editItem" width="900px"> |
| | | <div class="body" v-if="editItem"> |
| | | <lims-table :tableData="editList" :column="editColumn" height="460px" :tableLoading="tableLoading0" :key="2" |
| | | :page="editPage" @pagination="editPagination"></lims-table> |
| | |
| | | import limsTable from "@/components/Table/lims-table.vue"; |
| | | import { |
| | | addProductPart, |
| | | addTestObjectPart, deleteProductPart, deleteTestObjectPart, |
| | | addTestObjectPart, |
| | | deleteProductPart, |
| | | deleteTestObjectPart, |
| | | selectByProductId, |
| | | selectByTestObjectId, updateProductPart, updateTestObjectPart, inspectionItems, productPartReview |
| | | selectByTestObjectId, |
| | | updateProductPart, |
| | | updateTestObjectPart, |
| | | inspectionItems, |
| | | productPartReview, |
| | | productPartLogList |
| | | } from "@/api/structural/structureTestObjectPart"; |
| | | |
| | | export default { |
| | |
| | | { label: '零件号', prop: 'partNo' }, |
| | | { label: '颜色', prop: 'color' }, |
| | | { label: '色标', prop: 'colorCode' }, |
| | | { label: '进厂检验项', prop: 'inspectionItem' }, |
| | | { |
| | | label: '状态', prop: 'review', |
| | | dataType: "tag", |
| | |
| | | productPartReview({ id: row.id }).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$message.success("复核通过"); |
| | | this.getList()(); |
| | | this.getList(); |
| | | } |
| | | }); |
| | | }) |
| | |
| | | editItem: false, |
| | | editList: [], |
| | | editColumn: [ |
| | | { label: '零件号', prop: 'inspectionItem' }, |
| | | { label: '颜色', prop: 'inspectionItemSubclass' }, |
| | | { label: '色标', prop: 'ask' }, |
| | | { label: '进厂检验项', prop: 'askTell' }, |
| | | { label: '修改时间', prop: 'method' }, |
| | | { label: '修改人', prop: 'method' }, |
| | | { label: '零件号', prop: 'partNo' }, |
| | | { label: '颜色', prop: 'color' }, |
| | | { label: '色标', prop: 'colorCode' }, |
| | | { label: '进厂检验项', prop: 'inspectionItem' }, |
| | | { |
| | | label: '状态', prop: 'review', |
| | | dataType: "tag", |
| | | formatType: (params) => { |
| | | if (params == '待复核') { |
| | | return 'danger' |
| | | } else { |
| | | return 'success' |
| | | } |
| | | }, |
| | | }, |
| | | { label: '修改时间', prop: 'operTime' }, |
| | | { label: '修改人', prop: 'operName' }, |
| | | ], |
| | | editPage: { |
| | | total: 0, |
| | |
| | | current: 0, |
| | | }, |
| | | tableLoading0: false, |
| | | currentPart: {},//当前零件 |
| | | // mutilSelect: [] |
| | | } |
| | | }, |
| | |
| | | }) |
| | | }, |
| | | // 修改记录 |
| | | lookList() { |
| | | lookList(row) { |
| | | this.currentPart = row; |
| | | this.editItem = true; |
| | | this.getEditList() |
| | | }, |
| | | getEditList() { }, |
| | | getEditList() { |
| | | this.tableLoading0 = true |
| | | productPartLogList({ id: this.currentPart.id, ...this.editPage }).then(res => { |
| | | this.tableLoading0 = false |
| | | if (res.code == 200) { |
| | | this.editList = res.data.records |
| | | this.editPage.total = res.data.total |
| | | } |
| | | }) |
| | | }, |
| | | editPagination() { |
| | | this.editPage.current = page; |
| | | this.editPage.size = limit; |
| | |
| | | if (type === 'edit') { |
| | | this.bindPartData = this.HaveJson(row) |
| | | this.bindPartData.inspectionItem = this.bindPartData.inspectionItem ? this.bindPartData.inspectionItem.split(',') : [] |
| | | } else { |
| | | this.bindPartData = {} |
| | | } |
| | | }, |
| | | // 提交零件绑定 |
| | |
| | | color: this.bindPartData.color, |
| | | colorCode: this.bindPartData.colorCode, |
| | | partNo: this.bindPartData.partNo, |
| | | id: this.bindPartData.id, |
| | | 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, |
| | | id: this.bindPartData.id, |
| | | inspectionItem: this.bindPartData.inspectionItem && this.bindPartData.inspectionItem.length > 0 ? this.bindPartData.inspectionItem.join(',') : '' |
| | | } |
| | | this.bindLoad = true |
| | |
| | | }) |
| | | } else { |
| | | addProductPart(params).then(res => { |
| | | this.bindLoad = false |
| | | if (res.code === 200) { |
| | | this.resetForm('bindPartData') |
| | | this.addBindPartDialog = false |
| | |
| | | ], |
| | | page: { |
| | | total:0, |
| | | size:10, |
| | | size:20, |
| | | current:0 |
| | | }, |
| | | tableLoading: false, |