From b78307d92ab70853597a785085f8e1d44192ef5f Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期四, 14 九月 2023 11:45:29 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/components/view/technology.vue | 13
src/components/view/finishedProductInspection.vue | 34
src/components/view/finishedProductInspectionLook.vue | 602 ++++++++++++++++++++++++
src/components/view/processInspectionUpdate.vue | 13
src/components/view/technical.vue | 20
src/components/view/processInspection.vue | 6
src/view/index.vue | 1
src/assets/api/controller.js | 1
src/components/view/measurementManagement.vue | 6
src/components/view/laboratoryManagement.vue | 4
src/components/view/Technicalindex.vue | 9
src/components/view/finishedProductInspectionUp.vue | 649 ++++++++++++++++++++++++++
src/components/view/finishedProductInspectionAdd.vue | 29
src/components/view/rawInsDetail.vue | 8
src/components/view/rawUnqualified/raw.vue | 1
src/components/view/unqualifiedManagement.vue | 1
16 files changed, 1,339 insertions(+), 58 deletions(-)
diff --git a/src/assets/api/controller.js b/src/assets/api/controller.js
index 55e1d2e..f4cdb13 100644
--- a/src/assets/api/controller.js
+++ b/src/assets/api/controller.js
@@ -75,6 +75,7 @@
inspectionItemListUser: "/inspection-item/list_user",//鏌ヨ鎵�鏈夋楠岄」鐩�
finishedInspectChooseMater: "/finished-inspect/chooseMater",//鏍规嵁璁㈠崟鍙峰緱鍒颁俊鎭�
finishedInspectAddFinish: "/finished-inspect/addFinish", //鏂板鎴愬搧妫�楠�
+ finishedInspectUpdateFinishInspectsById: "/finished-inspect/updateFinishInspectsById",//涓婃姤
}
// 杩囩▼妫�楠�
const processInspection = {
diff --git a/src/components/view/Technicalindex.vue b/src/components/view/Technicalindex.vue
index 788d84a..9d33124 100644
--- a/src/components/view/Technicalindex.vue
+++ b/src/components/view/Technicalindex.vue
@@ -416,7 +416,8 @@
"Content-Type": "application/json"
}
}).then(res => {
- this.selectAllright()
+ /* this.selectAllright() */
+ this.$parent.removeAllTab()
})
},
submitUpData() { //纭畾
@@ -429,8 +430,9 @@
this.$axios.post(this.$api.url.delTechBy, {
id: this.upData.id
}).then(res => {
- this.selectAllright()
+ /* this.selectAllright() */
this.$message.success('鍒犻櫎瀹屾垚')
+ this.$parent.removeAllTab()
})
},
deleteRow(index, rows) {
@@ -444,7 +446,8 @@
this.$axios.post(this.$api.url.delAllTechskill, {
ids: this.delete
}).then(res => {
- this.selectAllright()
+ /* this.selectAllright() */
+ this.$parent.removeAllTab()
})
},
dels() {
diff --git a/src/components/view/finishedProductInspection.vue b/src/components/view/finishedProductInspection.vue
index 18c8b6b..d0c4a51 100644
--- a/src/components/view/finishedProductInspection.vue
+++ b/src/components/view/finishedProductInspection.vue
@@ -1,6 +1,6 @@
<template>
<div class="content-main">
- <div v-if="!showAdd" class="rawPage">
+ <div v-if="!showAdd&&!showLook&&!showUp" class="rawPage">
<div class="title">
<el-row>
<el-col :span="12">鎴愬搧妫�楠�</el-col>
@@ -12,7 +12,7 @@
</el-row>
</div>
<div class="nav">
- <span>妫�楠岀粨鏋滐細</span>
+ <span>妫�娴嬬粨鏋滐細</span>
<el-select v-model="searchData.result" size="small" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 52px;">
<el-option :value="''" label="鍏ㄩ儴"></el-option>
<el-option :value="1" label="鍚堟牸"></el-option>
@@ -93,8 +93,10 @@
min-width="80"
>
<template slot-scope="scope">
- <span>{{scope.row.result===1?'鍚堟牸':'涓嶅悎鏍�'}}</span>
- </template>
+ <span style="color: #34BD66;" v-if="scope.row.result === 1">鍚堟牸</span>
+ <span style="color: #E84738;" v-else-if="scope.row.result === 0">涓嶅悎鏍�</span>
+ <span v-else-if="scope.row.result === null || scope.row.result === undefined">鏆傛湭缁撹</span>
+ </template>
</el-table-column>
@@ -105,7 +107,7 @@
<template slot-scope="scope">
<el-button type="text" size="small" @click="goToDetail(scope.row)">鏌ョ湅</el-button>
<el-button type="text" size="small">鎵撳嵃</el-button>
- <el-button type="text" size="small">缂栬緫</el-button>
+ <el-button v-if="scope.row.result == null" type="text" size="small" @click="goUp(scope.row)">缂栬緫</el-button>
</template>
</el-table-column>
</el-table>
@@ -348,21 +350,31 @@
},
async getInspectionTableData() {
const {data:{row,total}} = await this.$axios.get(this.$api.url.finishedInsListPage,{params:{...this.pageParams,...this.searchData}})
- console.log(row)
this.inspectionTable = row
this.pageParams.total = total
},
goToDetail(row) {
- // this.showAddPage = true
- // this.showDetail = true
- this.finishedInsInfo = row
-
- // this.addInspectionform = []
+ this.rowInfo = row
+ this.showLook=true
+ },
+ goUp(row){
+ this.rowInfo = row
+ this.showUp=true
},
async init() {
// const {data} = await this.$axios.get(this.$api.url.finishedInspectUser)
// this.usernameOptions = data
+ },
+ comBackMain(val){
+ this.showAdd=false
+ this.showLook=false
+ this.showUp=false
+ this.init()
+ this.getInspectionTableData()
+ if(val){
+ this.$parent.removeAllTab()
+ }
}
}
diff --git a/src/components/view/finishedProductInspectionAdd.vue b/src/components/view/finishedProductInspectionAdd.vue
index 7e57bda..40a547d 100644
--- a/src/components/view/finishedProductInspectionAdd.vue
+++ b/src/components/view/finishedProductInspectionAdd.vue
@@ -6,9 +6,9 @@
<el-col :span="12">鏂板浜у搧妫�楠屽崟</el-col>
<el-col :span="12" style="text-align: right;">
<!-- 鐐瑰嚮杩斿洖锛屽綋鍓嶉〉闈㈠�间负false -->
- <el-button type="primary" size="mini" style="background: #004EA2; "
- icon="el-icon-circle-plus-outline">鏂板</el-button>
- <el-button @click="showAddPage = false" type="primary" size="mini" icon="el-icon-back"
+ <!-- <el-button type="primary" size="mini" style="background: #004EA2; "
+ icon="el-icon-circle-plus-outline">鏂板</el-button> -->
+ <el-button @click="comBack" type="primary" size="mini" icon="el-icon-back"
style="background: #004EA2; ">杩斿洖</el-button>
</el-col>
</el-row>
@@ -178,7 +178,7 @@
showUp: false,
isAddProject: false,
showLook: false,
- detailId: 28,
+ detailId: 0,
rowInfp: {},
search: {
countSize: 10,
@@ -267,7 +267,7 @@
}
},
mounted() {
- // this.getTableData()
+ this.getTableData()
this.getOptions();
},
methods: {
@@ -280,6 +280,9 @@
this.processInspectVo.mcode=sample.mcode
this.processInspectVo.specificationsModel=sample.specifications
this.processInspectVo.unit=sample.unit
+ },
+ comBack(){
+ this.$parent.comBackMain()
},
handleClick(row) {
this.rowInfp = row
@@ -333,7 +336,7 @@
this.$axios
.post(this.$api.url.inspectionItemUpdateDevByInsId, {
id: this.clickSelectDevice.rpId,
- type: 1,
+ type: 2,
devId: this.nodeData.id
})
.then(res => {
@@ -417,14 +420,14 @@
this.optionTechnology = working.children
},
addTestProjevt() {
- this.isAddProject = true
+ // this.isAddProject = true
let val = JSON.parse(JSON.stringify(this.processInspectVo))
val.material = this.processInspectVo.material.split("-")[1]
val.id=this.processInspectVo.material.split("-")[0]
this.$axios.post(this.$api.url.finishedInspectAddFinish, val, {
headers: { "Content-Type": "application/json" }
}).then(res => {
- if (res.code === 201) {
+ if (res.code == 201) {
this.$message({
message: res.message,
type: 'warning'
@@ -432,19 +435,21 @@
return
}
this.detailId = res.data
- console.log(this.detailId);
- this.inspectionResultForm[0].id = val.materialCode
+ this.inspectionResultForm[0].id = val.mcode
this.inspectionResultForm[0].name = val.material
- // this.getTableData()
+ this.getTableData()
})
},
getTableData() {
this.$axios.get(this.$api.url.inspectionItemListUser, {
params: {
id: this.detailId,
- type: 1
+ type: 2
}
}).then(res => {
+ if (res.data.length < 1) {
+ return
+ }
this.inspectionItems = res.data
let arr = []
let val = JSON.parse(JSON.stringify(this.inspectionItems))
diff --git a/src/components/view/finishedProductInspectionLook.vue b/src/components/view/finishedProductInspectionLook.vue
index 17bcab3..974801f 100644
--- a/src/components/view/finishedProductInspectionLook.vue
+++ b/src/components/view/finishedProductInspectionLook.vue
@@ -1,13 +1,605 @@
<template>
-
+ <div>
+ <!-- 鏂板椤甸潰 -->
+ <div class="addInspection">
+ <el-row class="header">
+ <el-col :span="12">鏂板浜у搧妫�楠屽崟</el-col>
+ <el-col :span="12" style="text-align: right;">
+ <!-- 鐐瑰嚮杩斿洖锛屽綋鍓嶉〉闈㈠�间负false -->
+ <!-- <el-button type="primary" size="mini" style="background: #004EA2; "
+ icon="el-icon-circle-plus-outline">鏂板</el-button> -->
+ <el-button @click="comBack" type="primary" size="mini" icon="el-icon-back"
+ style="background: #004EA2; ">杩斿洖</el-button>
+ </el-col>
+ </el-row>
+ <el-form :model="processInspectVo" ref="addInspectionform" class="addInspectionform" label-position="right"
+ label-width="120px" size="small">
+ <div class="formwrapper">
+ <el-row>
+ <el-col :span="7">
+ <el-form-item label="璁㈠崟鍙凤細">
+ <el-input disabled @blur="selectInfoByOrderId" style="width: 180px;"
+ v-model="processInspectVo.orderNumber" placeholder="璇疯緭鍏ヨ鍗曞彿" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="瀹㈡埛鍚嶇О锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.prname"
+ placeholder="璇疯緭鍏ュ鎴峰悕绉�" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="宸ョ▼鍚嶇О锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.sname"
+ placeholder="璇疯緭鍏ュ伐绋嬪悕绉�" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="7">
+ <el-form-item label="浜у搧鍚嶇О锛�">
+ <el-select disabled @change="changeOptionsSamplename" style="width: 180px;" v-model="processInspectVo.material" size="small"
+ placeholder="璇烽�夋嫨浜у搧鍚嶇О">
+ <el-option v-for="item in optionsSamplename" :key="item.id" :label="item.name"
+ :value="item.id + '-' + item.name">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="璐ㄩ噺杩芥函鍙凤細">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.qualityTraceability"
+ placeholder="璇疯緭鍏ヨ拷婧彿" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="浜у搧缂栫爜锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.mcode"
+ placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="7">
+ <el-form-item label="瑙勬牸鍨嬪彿锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.specificationsModel"
+ placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="鍗曚綅锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.unit" placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�"
+ autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="鏁伴噺锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.quantity" placeholder="璇疯緭鍏ユ暟閲�"
+ autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="3" style="display: flex;justify-content: end;">
+ <!-- <el-button type="primary" :disabled="isAddProject" @click="addTestProjevt">鐢熸垚妫�楠岄」鐩�</el-button> -->
+ </el-col>
+ </el-row>
+ </div>
+ </el-form>
+ </div>
+ <div class="inspectionProject">
+ <el-row>
+ <el-col :span="12" class="inspectionProject_span">妫�楠岄」鐩�</el-col>
+ <el-col :span="12" class="inspectionProject_span" style="display: flex;justify-content: end;">
+ <!-- <el-button size="mini" @click="clickDeleteInspectionColumn()">鍒犻櫎妫�楠屽�煎垪</el-button>
+ <el-button style="margin-right: 30px;" size="mini"
+ @click="clickAddInspectionColumn()">娣诲姞妫�楠屽�煎垪</el-button> -->
+ <!-- <el-button
+ size="mini"
+ style="margin-right: 30px;"
+ @click="clickAddLine()"
+ >娣诲姞妫�楠岃</el-button
+ > -->
+ </el-col>
+ </el-row>
+ <el-table :data="inspectionItems" max-height="420" :span-method="handleSpanMethod" height="calc(100vh - 550px)"
+ style="width: 100%">
+ <el-table-column type="index" label="搴忓彿" width="60"></el-table-column>
+ <el-table-column label="椤圭洰" prop="father"></el-table-column>
+ <el-table-column prop="name" label="鎸囨爣"></el-table-column>
+ <el-table-column prop="unit" label="鍗曚綅"></el-table-column>
+ <el-table-column prop="required" label="鏍囧噯鍊�"></el-table-column>
+ <el-table-column prop="internal" label="鍐呮祴鍊�"></el-table-column>
+ <el-table-column prop="inspectionValue" v-for="(item, index) in empiricalValueAdd" :key="index" label="妫�娴嬪��"
+ min-width="100" style="text-align: center;">
+ <template slot-scope="scope">
+ <el-input disabled v-model="scope.row.empiricalValueAddss[index]"
+ @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column prop="dname" label="璇曢獙璁惧" min-width="100">
+ <template slot-scope="scope">
+ {{ scope.row.dname }}
+ <span v-if="scope.row.dname===null||scope.row.dname===''">/</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="缁撹">
+ <template slot-scope="scope">
+ <span style="color: #34BD66;" v-if="scope.row.result === 1">鍚堟牸</span>
+ <span style="color: #E84738;" v-else-if="scope.row.result === 0">涓嶅悎鏍�</span>
+ <span v-show="scope.row.result === null">鏆傛湭缁撹</span>
+ </template>
+ </el-table-column>
+ <!-- <el-table-column v-if="detailId == null" label="鎿嶄綔" width="100">
+ <template slot-scope="scope">
+ <el-button type="text" @click="clickDeleteline(scope)">鍒犻櫎</el-button>
+ </template>
+ </el-table-column> -->
+ </el-table>
+ </div>
+ <div class="inspectionResult">
+ <span>妫�娴嬬粨鏋�</span>
+ <el-table :data="inspectionResultForm">
+ <el-table-column prop="id" label="鐗╂枡缂栧彿"></el-table-column>
+ <el-table-column prop="name" label="鐗╂枡鍚嶇О"></el-table-column>
+ <el-table-column prop="inspecter" label="妫�楠屽憳"></el-table-column>
+ <el-table-column prop="conclusion" label="妫�楠岀粨璁�">
+ <template slot-scope="scope">
+ <span style="color: #34BD66;" v-if="scope.row.conclusion === 1">鍚堟牸</span>
+ <span style="color: #E84738;" v-else-if="scope.row.conclusion === 0">涓嶅悎鏍�</span>
+ <span v-else-if="scope.row.conclusion === null || scope.row.conclusion === undefined">鏆傛湭缁撹</span>
+ </template>
+ </el-table-column>
+ <!-- <el-table-column prop="operation" label="涓婃姤"></el-table-column> -->
+ </el-table>
+ </div>
+ <el-dialog title="璇烽�夋嫨璁惧" :visible.sync="centerDialogVisible" width="20%">
+ <div class="div_device_dialog">
+ <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="filterText" style="margin-bottom: 6px;">
+ </el-input>
+ <el-tree class="filter-tree" :data="materialOptions" :props="defaultProps" default-expand-all
+ highlight-current @node-click="nodeClick" :filter-node-method="filterNode" ref="tree">
+ <div class="custom-tree-node" slot-scope="{ data }">
+ <span><i :class="`node_i ${data.children ? 'el-icon-folder-opened' : 'el-icon-tickets'
+ }`
+ "></i>
+ {{ data.name }}</span>
+ </div>
+ </el-tree>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="centerDialogVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="clickNodeSure()">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ </div>
</template>
<script>
export default {
-
+ props: ['rowInfo'],
+ data() {
+ return {
+ showUp: false,
+ isAddProject: false,
+ showLook: false,
+ detailId: 0,
+ rowInfp: {},
+ search: {
+ countSize: 10,
+ pageSize: 1,
+ result: "", // 妫�娴嬬姸鎬�
+ name: "", // 浜у搧鍚嶇О
+ techfather: "" // 宸ュ簭
+ },
+ optionsSamplename: [],
+ inspectionTable: [],
+ tableColumn: [],
+ optionSoptionSprocesses: [],
+ optionTechnology: [],
+ inspectionTableTotal: 0,
+ pageSize: 10,
+ currentPage: 1,
+ treeProject: [],
+ // 娣诲姞鍒�
+ empiricalValueAdd: 1,
+ // 缂栬緫鏃跺瓨鍌ㄦ渶闀跨殑鍒楁暟瀛楋紝鍋氬垹闄ゅ垽鏂�
+ empiricalValueAddMaxNumber: 0,
+ showAddPage: false,
+ processInspectVo: {
+ id: null,
+ material: null,
+ mcode: null,
+ prname: null,
+ sname: null,
+ orderNumber: "D-001",
+ qualityTraceability: null,
+ quantity: null,
+ specificationsModel: null,
+ unit: null
+ },
+ InspectioniD: null,
+ addInspectionform: [
+ {
+ number: "",
+ username: "",
+ projectname: "",
+ tracenumber: "",
+ code: "",
+ class: "",
+ specificationmodel: "",
+ unit: "",
+ quantity: "",
+ group: "",
+ worker: "",
+ machine: ""
+ }]
+ ,
+ inspectionItems: [], // 鏂板妫�楠岄」鐩〃鏍�
+ inspectionResultForm: [
+ {
+ id: "",
+ name: "",
+ inspecter: "",
+ conclusion: "",
+ operation: ""
+ }
+ ],
+ options: [],
+ value: "",
+ rowList: [],
+ spanArr: [],
+ position: 0,
+ // 璁惧閫夋嫨鏍戞樉绀�
+ centerDialogVisible: false,
+ filterText: "",
+ materialOptions: [],
+ defaultProps: {
+ // 璁惧鏍戞暟鎹缃�
+ children: "children",
+ label: "name"
+ },
+ nodeData: "", // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
+ clickSelectDevice: {
+ index: "", // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
+ rpId: "" // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
+ }
+ };
+ },
+ watch: {
+ filterText(val) {
+ this.$refs.tree.filter(val);
+ }
+ },
+ mounted() {
+ console.log(this.rowInfo);
+ this.processInspectVo.material=this.rowInfo.material
+ this.processInspectVo.mcode=this.rowInfo.material_code
+ this.processInspectVo.orderNumber=this.rowInfo.order_number
+ this.processInspectVo.qualityTraceability=this.rowInfo.quality_traceability
+ this.processInspectVo.specificationsModel=this.rowInfo.specifications_model
+ this.processInspectVo.unit=this.rowInfo.unit
+ this.processInspectVo.quantity=this.rowInfo.quantity
+ this.processInspectVo.prname=this.rowInfo.customer_name
+ this.processInspectVo.sname=this.rowInfo.project_name
+ this.inspectionResultForm[0].id=this.rowInfo.material_code
+ this.inspectionResultForm[0].name=this.rowInfo.material
+ this.inspectionResultForm[0].conclusion=this.rowInfo.result
+ this.detailId=this.rowInfo.id
+ this.getTableData()
+ this.getOptions();
+ },
+ methods: {
+ changeOptionsSamplename(){
+ let id=this.processInspectVo.material.split("-")[0]
+ let sample=this.optionsSamplename.filter(o=>{
+ return o.id==id
+ })[0]
+ this.processInspectVo.qualityTraceability=sample.qualityTraceability
+ this.processInspectVo.mcode=sample.mcode
+ this.processInspectVo.specificationsModel=sample.specifications
+ this.processInspectVo.unit=sample.unit
+ },
+ comBack(){
+ this.$parent.comBackMain()
+ },
+ handleClick(row) {
+ this.rowInfp = row
+ this.showLook = true
+ },
+ updateInsInfo(row) {
+ this.rowInfp = row
+ this.showUp = true
+ },
+ combackMain() {
+ this.showUp = false
+ this.showLook = false
+ },
+ searchPro() {
+ this.search.countSize = this.pageSize
+ this.search.pageSize = this.currentPage
+ this.defaultInitializationTable()
+ },
+ // 鐐瑰嚮璁惧鏍戜繚瀛樼偣鍑昏褰�
+ nodeClick(data) {
+ if (data.id != undefined) this.nodeData = data;
+ },
+ // 璁惧鏍戣繃婊ゆ悳绱�
+ filterNode(value, data) {
+ if (!value) return true;
+ return data.name.indexOf(value) !== -1;
+ },
+ // 鑾峰彇璁惧鏍戝唴瀹�
+ getOptions() {
+ this.$axios.get(this.$api.url.rawSelectDevice).then(res => {
+ this.materialOptions = res.data;
+ });
+ },
+ // 鐐瑰嚮琛ㄦ牸閫夋嫨瑙﹀彂
+ clickTableSelect(scope) {
+ this.centerDialogVisible = true;
+ this.clickSelectDevice.index = scope.$index;
+ this.clickSelectDevice.rpId = scope.row.id;
+ },
+ // 鐐瑰嚮鏍戦噷闈㈢殑纭畾
+ clickNodeSure() {
+ if (this.detailId == null) {
+ this.inspectionItems[
+ this.clickSelectDevice.index
+ ].did = this.nodeData.id;
+ this.inspectionItems[
+ this.clickSelectDevice.index
+ ].dname = this.nodeData.name;
+ this.centerDialogVisible = false;
+ } else {
+ this.$axios
+ .post(this.$api.url.inspectionItemUpdateDevByInsId, {
+ id: this.clickSelectDevice.rpId,
+ type: 2,
+ devId: this.nodeData.id
+ })
+ .then(res => {
+ this.getTableData()
+ this.centerDialogVisible = false;
+ });
+ }
+ },
+ changeState(row, index) {
+ console.log(row);
+ if (row.did != null && row.did != '') {
+ let str = ""
+ row.empiricalValueAddss.forEach(e => {
+ str += e + ","
+ })
+ this.$axios.post(this.$api.url.inspectionItemlose_focus_update, {
+ deviceId: row.did,
+ inspectionItemId: row.id,
+ inspectionValue: str.slice(0, -1)
+ }, {
+ headers: { "Content-Type": "application/json" }
+ }).then(res => {
+ row.result = res.data.result
+ row.username = res.data.username
+ })
+ } else {
+ this.$message({
+ message: '璇烽�夋嫨鎷╄澶囷紒',
+ type: 'warning'
+ });
+ }
+ },
+ // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
+ handleSizeChange(val) {
+ this.search.countSize = val;
+ this.defaultInitializationTable();
+ },
+ handleSpanMethod({ row, column, rowIndex, columnIndex }) {
+ if (columnIndex === 0) {
+ const _row = this.spanArr[rowIndex];
+ const _col = _row > 0 ? 1 : 0;
+ return {
+ rowspan: _row,
+ colspan: _col
+ }
+ }
+ if (columnIndex === 1) {
+ const _row = this.spanArr[rowIndex];
+ const _col = _row > 0 ? 1 : 0;
+ return {
+ rowspan: _row,
+ colspan: _col
+ }
+ }
+ },
+ // 鍚堝苟琛ㄦ牸
+ mergeTable() {
+ this.rowList = []
+ this.spanArr = []
+ this.position = 0
+ this.inspectionItems.forEach((item, index) => {
+ if (index === 0) {
+ this.spanArr.push(1);
+ this.position = 0;
+ } else {
+ if (this.inspectionItems[index].father === this.inspectionItems[index - 1].father) {
+ this.spanArr[this.position] += 1;
+ this.spanArr.push(0);
+ } else {
+ this.spanArr.push(1);
+ this.position = index;
+ }
+ }
+ })
+ },
+ changeOptionSoptionSprocesses() {
+ this.optionTechnology = []
+ let working = this.optionSoptionSprocesses.filter(item => {
+ return item.name === this.processInspectVo.techfather
+ })[0]
+ this.optionTechnology = working.children
+ },
+ addTestProjevt() {
+ // this.isAddProject = true
+ let val = JSON.parse(JSON.stringify(this.processInspectVo))
+ val.material = this.processInspectVo.material.split("-")[1]
+ val.id=this.processInspectVo.material.split("-")[0]
+ this.$axios.post(this.$api.url.finishedInspectAddFinish, val, {
+ headers: { "Content-Type": "application/json" }
+ }).then(res => {
+ if (res.code == 201) {
+ this.$message({
+ message: res.message,
+ type: 'warning'
+ });
+ return
+ }
+ this.detailId = res.data
+ this.inspectionResultForm[0].id = val.mcode
+ this.inspectionResultForm[0].name = val.material
+ this.getTableData()
+ })
+ },
+ getTableData() {
+ this.$axios.get(this.$api.url.inspectionItemListUser, {
+ params: {
+ id: this.detailId,
+ type: 2
+ }
+ }).then(res => {
+ if (res.data.length < 1) {
+ return
+ }
+ this.inspectionItems = res.data
+ let arr = []
+ let val = JSON.parse(JSON.stringify(this.inspectionItems))
+ const uName = []
+ //杞垚涓�缁存暟缁�
+ val.forEach(l => {
+ let father = l.father
+ l.children.forEach(c => {
+ c.father = father
+ c.empiricalValueAddss = []
+ if (c.inspectionValue != '' && c.inspectionValue != null) {
+ c.empiricalValueAddss = c.inspectionValue.split(",");
+ } else {
+ c.empiricalValueAddss.push("")
+ }
+ uName.push(c['username'])
+ arr.push(c)
+ })
+ })
+ this.inspectionItems = arr
+ let arrSort = JSON.parse(JSON.stringify(arr))
+ //鏍规嵁闆嗗悎瀵硅薄鏁扮粍闀垮害鎺掑簭
+ arrSort.sort((a, b) => {
+ if (a.empiricalValueAddss.length < b.empiricalValueAddss.length) {
+ return -1; // a鎺掑湪b鍓嶉潰
+ } else if (a.empiricalValueAddss.length > b.empiricalValueAddss.length) {
+ return 1; // a鎺掑湪b鍚庨潰
+ } else {
+ return 0; // 淇濇寔鐩稿椤哄簭涓嶅彉
+ }
+ });
+ // console.log(arrSort);
+ console.log(uName);
+ let name = [...new Set(uName)].filter(item => item !== null);
+ let rname = ''
+ name.forEach(m => {
+ rname += m + ","
+ })
+ this.inspectionResultForm[0].inspecter = rname.slice(0, -1)
+ this.empiricalValueAdd = arrSort[arrSort.length - 1].empiricalValueAddss.length
+ this.mergeTable(arr)
+ })
+ },
+ selectSample() {
+ let sample = this.optionsSamplename.filter(item => {
+ return item.name === this.processInspectVo.material
+ })[0]
+ this.processInspectVo.techfather = null
+ this.processInspectVo.techname = null
+ this.processInspectVo.materialCode = sample.code
+ this.processInspectVo.specificationsModel = sample.specifications
+ this.processInspectVo.unit = sample.unit
+ this.optionSoptionSprocesses = []
+ this.optionSoptionSprocesses = sample.children
+ },
+ selectInfoByOrderId() {
+ this.$axios.get(this.$api.url.finishedInspectChooseMater, {
+ params: {
+ orderNumber: this.processInspectVo.orderNumber
+ }
+ }).then(res => {
+ if (res.data.length > 0) {
+ console.log(res.data);
+ this.processInspectVo.sname = res.data[0].sname
+ this.processInspectVo.prname = res.data[0].prname
+ this.optionsSamplename = res.data[0].children
+ } else {
+ this.$message({
+ message: '娌℃湁璇ヨ鍗曞彿锛�',
+ type: 'warning'
+ });
+ }
+ })
+ },
+ // 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
+ handleCurrentChange(val) {
+ this.search.pageSize = val;
+ this.defaultInitializationTable();
+ },
+ // 鏄剧ず鏂板椤甸潰
+ handleAddNew() {
+ this.showAddPage = true;
+ // this.getTableData()
+ },
+ // 琛ㄦ牸鍒濆鍖栨帴鍙�
+ defaultInitializationTable() {
+ this.$axios
+ .post(this.$api.url.selectProcessInspectsList, this.search)
+ .then(res => {
+ this.inspectionTableTotal = res.data.total;
+ this.inspectionTable = res.data.row;
+ });
+ },
+ // 娣诲姞琛�
+ clickAddLine() {
+ let obj = {
+ material: "",
+ materialCode: "",
+ orderNumber: "",
+ quantity: 0,
+ specificationsModel: "",
+ techfather: "",
+ techname: "",
+ technologyId: 0,
+ unit: ""
+ };
+ this.inspectionItems.push(obj);
+ },
+ // 鍒犻櫎琛�
+ clickDeleteline(scope) {
+ this.inspectionItems.splice(scope.$index, 1);
+ },
+ // 鍒犻櫎妫�楠屽�煎垪
+ clickDeleteInspectionColumn() {
+ if (this.empiricalValueAdd - 1 === 0) {
+ } else {
+ if (this.empiricalValueAddMaxNumber != this.empiricalValueAdd - 1) {
+ this.empiricalValueAdd = this.empiricalValueAdd - 1;
+ this.inspectionItems.forEach(i => {
+ i.testValueList.splice(this.empiricalValueAdd, 1);
+ });
+ }
+ }
+ },
+ // 娣诲姞妫�楠屽�煎垪
+ clickAddInspectionColumn() {
+ this.empiricalValueAdd = this.empiricalValueAdd + 1;
+ }
+ },
+ created() {
+ this.defaultInitializationTable(); // 鍒濆鍖栬〃鏍兼暟鎹�
+ }
}
</script>
-<style>
-
-</style>
\ No newline at end of file
+<style></style>
\ No newline at end of file
diff --git a/src/components/view/finishedProductInspectionUp.vue b/src/components/view/finishedProductInspectionUp.vue
index 17bcab3..f40a66f 100644
--- a/src/components/view/finishedProductInspectionUp.vue
+++ b/src/components/view/finishedProductInspectionUp.vue
@@ -1,13 +1,654 @@
<template>
-
+ <div>
+ <!-- 鏂板椤甸潰 -->
+ <div class="addInspection">
+ <el-row class="header">
+ <el-col :span="12">鏂板浜у搧妫�楠屽崟</el-col>
+ <el-col :span="12" style="text-align: right;">
+ <!-- 鐐瑰嚮杩斿洖锛屽綋鍓嶉〉闈㈠�间负false -->
+ <!-- <el-button type="primary" size="mini" style="background: #004EA2; "
+ icon="el-icon-circle-plus-outline">鏂板</el-button> -->
+ <el-button @click="comBack" type="primary" size="mini" icon="el-icon-back"
+ style="background: #004EA2; ">杩斿洖</el-button>
+ </el-col>
+ </el-row>
+ <el-form :model="processInspectVo" ref="addInspectionform" class="addInspectionform" label-position="right"
+ label-width="120px" size="small">
+ <div class="formwrapper">
+ <el-row>
+ <el-col :span="7">
+ <el-form-item label="璁㈠崟鍙凤細">
+ <el-input disabled @blur="selectInfoByOrderId" style="width: 180px;"
+ v-model="processInspectVo.orderNumber" placeholder="璇疯緭鍏ヨ鍗曞彿" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="瀹㈡埛鍚嶇О锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.prname"
+ placeholder="璇疯緭鍏ュ鎴峰悕绉�" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="宸ョ▼鍚嶇О锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.sname"
+ placeholder="璇疯緭鍏ュ伐绋嬪悕绉�" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="7">
+ <el-form-item label="浜у搧鍚嶇О锛�">
+ <el-select disabled @change="changeOptionsSamplename" style="width: 180px;" v-model="processInspectVo.material" size="small"
+ placeholder="璇烽�夋嫨浜у搧鍚嶇О">
+ <el-option v-for="item in optionsSamplename" :key="item.id" :label="item.name"
+ :value="item.id + '-' + item.name">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="璐ㄩ噺杩芥函鍙凤細">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.qualityTraceability"
+ placeholder="璇疯緭鍏ヨ拷婧彿" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="浜у搧缂栫爜锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.mcode"
+ placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="7">
+ <el-form-item label="瑙勬牸鍨嬪彿锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.specificationsModel"
+ placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="鍗曚綅锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.unit" placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�"
+ autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="鏁伴噺锛�">
+ <el-input disabled style="width: 180px;" v-model="processInspectVo.quantity" placeholder="璇疯緭鍏ユ暟閲�"
+ autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="3" style="display: flex;justify-content: end;">
+ <!-- <el-button type="primary" :disabled="isAddProject" @click="addTestProjevt">鐢熸垚妫�楠岄」鐩�</el-button> -->
+ </el-col>
+ </el-row>
+ </div>
+ </el-form>
+ </div>
+ <div class="inspectionProject">
+ <el-row>
+ <el-col :span="12" class="inspectionProject_span">妫�楠岄」鐩�</el-col>
+ <el-col v-if="!isUpBtn" :span="12" class="inspectionProject_span" style="display: flex;justify-content: end;">
+ <el-button size="mini" @click="clickDeleteInspectionColumn()">鍒犻櫎妫�楠屽�煎垪</el-button>
+ <el-button style="margin-right: 30px;" size="mini"
+ @click="clickAddInspectionColumn()">娣诲姞妫�楠屽�煎垪</el-button>
+ <!-- <el-button
+ size="mini"
+ style="margin-right: 30px;"
+ @click="clickAddLine()"
+ >娣诲姞妫�楠岃</el-button
+ > -->
+ </el-col>
+ </el-row>
+ <el-table :data="inspectionItems" max-height="420" :span-method="handleSpanMethod" height="calc(100vh - 550px)"
+ style="width: 100%">
+ <el-table-column type="index" label="搴忓彿" width="60"></el-table-column>
+ <el-table-column label="椤圭洰" prop="father"></el-table-column>
+ <el-table-column prop="name" label="鎸囨爣"></el-table-column>
+ <el-table-column prop="unit" label="鍗曚綅"></el-table-column>
+ <el-table-column prop="required" label="鏍囧噯鍊�"></el-table-column>
+ <el-table-column prop="internal" label="鍐呮祴鍊�"></el-table-column>
+ <el-table-column prop="inspectionValue" v-for="(item, index) in empiricalValueAdd" :key="index" label="妫�娴嬪��"
+ min-width="100" style="text-align: center;">
+ <template slot-scope="scope">
+ <el-tooltip :disabled="scope.row.dname != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�"
+ placement="top-start">
+ <el-input :disabled="scope.row.dname === null" v-model="scope.row.empiricalValueAddss[index]"
+ @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input>
+ </el-tooltip>
+ </template>
+ </el-table-column>
+ <el-table-column prop="dname" label="璇曢獙璁惧" min-width="100">
+ <template slot-scope="scope">
+ <el-button type="text" @click="clickTableSelect(scope)">{{
+ scope.row.dname == null ? "璇烽�夋嫨" : scope.row.dname
+ }}</el-button>
+ </template>
+ </el-table-column>
+ <el-table-column label="缁撹">
+ <template slot-scope="scope">
+ <span style="color: #34BD66;" v-if="scope.row.result === 1">鍚堟牸</span>
+ <span style="color: #E84738;" v-else-if="scope.row.result === 0">涓嶅悎鏍�</span>
+ <span v-show="scope.row.result === null">鏆傛湭缁撹</span>
+ </template>
+ </el-table-column>
+ <!-- <el-table-column v-if="detailId == null" label="鎿嶄綔" width="100">
+ <template slot-scope="scope">
+ <el-button type="text" @click="clickDeleteline(scope)">鍒犻櫎</el-button>
+ </template>
+ </el-table-column> -->
+ </el-table>
+ </div>
+ <div class="inspectionResult">
+ <span>妫�娴嬬粨鏋�</span>
+ <el-table :data="inspectionResultForm">
+ <el-table-column prop="id" label="鐗╂枡缂栧彿"></el-table-column>
+ <el-table-column prop="name" label="鐗╂枡鍚嶇О"></el-table-column>
+ <el-table-column prop="inspecter" label="妫�楠屽憳"></el-table-column>
+ <el-table-column prop="conclusion" label="妫�楠岀粨璁�">
+ <template slot-scope="scope">
+ <span style="color: #34BD66;" v-if="scope.row.conclusion === 1">鍚堟牸</span>
+ <span style="color: #E84738;" v-else-if="scope.row.conclusion === 0">涓嶅悎鏍�</span>
+ <span v-else-if="scope.row.conclusion === null || scope.row.conclusion === undefined">鏆傛湭缁撹</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="operation" label="涓婃姤">
+ <template slot-scope="scope">
+ <el-button v-if="scope.row.conclusion === null || scope.row.conclusion === undefined" type="primary" @click="escalation" size="small">涓婃姤</el-button>
+ <el-button v-else type="success" size="small">宸蹭笂鎶�</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ <el-dialog title="璇烽�夋嫨璁惧" :visible.sync="centerDialogVisible" width="20%">
+ <div class="div_device_dialog">
+ <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="filterText" style="margin-bottom: 6px;">
+ </el-input>
+ <el-tree class="filter-tree" :data="materialOptions" :props="defaultProps" default-expand-all
+ highlight-current @node-click="nodeClick" :filter-node-method="filterNode" ref="tree">
+ <div class="custom-tree-node" slot-scope="{ data }">
+ <span><i :class="`node_i ${data.children ? 'el-icon-folder-opened' : 'el-icon-tickets'
+ }`
+ "></i>
+ {{ data.name }}</span>
+ </div>
+ </el-tree>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="centerDialogVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="clickNodeSure()">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ </div>
</template>
<script>
export default {
+ props: ['rowInfo'],
+ data() {
+ return {
+ isUpBtn: false,
+ showUp: false,
+ isAddProject: false,
+ showLook: false,
+ detailId: 0,
+ rowInfp: {},
+ search: {
+ countSize: 10,
+ pageSize: 1,
+ result: "", // 妫�娴嬬姸鎬�
+ name: "", // 浜у搧鍚嶇О
+ techfather: "" // 宸ュ簭
+ },
+ optionsSamplename: [],
+ inspectionTable: [],
+ tableColumn: [],
+ optionSoptionSprocesses: [],
+ optionTechnology: [],
+ inspectionTableTotal: 0,
+ pageSize: 10,
+ currentPage: 1,
+ treeProject: [],
+ // 娣诲姞鍒�
+ empiricalValueAdd: 1,
+ // 缂栬緫鏃跺瓨鍌ㄦ渶闀跨殑鍒楁暟瀛楋紝鍋氬垹闄ゅ垽鏂�
+ empiricalValueAddMaxNumber: 0,
+ showAddPage: false,
+ processInspectVo: {
+ id: null,
+ material: null,
+ mcode: null,
+ prname: null,
+ sname: null,
+ orderNumber: "D-001",
+ qualityTraceability: null,
+ quantity: null,
+ specificationsModel: null,
+ unit: null
+ },
+ InspectioniD: null,
+ addInspectionform: [
+ {
+ number: "",
+ username: "",
+ projectname: "",
+ tracenumber: "",
+ code: "",
+ class: "",
+ specificationmodel: "",
+ unit: "",
+ quantity: "",
+ group: "",
+ worker: "",
+ machine: ""
+ }]
+ ,
+ inspectionItems: [], // 鏂板妫�楠岄」鐩〃鏍�
+ inspectionResultForm: [
+ {
+ id: "",
+ name: "",
+ inspecter: "",
+ conclusion: "",
+ operation: ""
+ }
+ ],
+ options: [],
+ value: "",
+ rowList: [],
+ spanArr: [],
+ position: 0,
+ // 璁惧閫夋嫨鏍戞樉绀�
+ centerDialogVisible: false,
+ filterText: "",
+ materialOptions: [],
+ defaultProps: {
+ // 璁惧鏍戞暟鎹缃�
+ children: "children",
+ label: "name"
+ },
+ nodeData: "", // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
+ clickSelectDevice: {
+ index: "", // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
+ rpId: "" // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
+ }
+ };
+ },
+ watch: {
+ filterText(val) {
+ this.$refs.tree.filter(val);
+ }
+ },
+ mounted() {
+ if(this.rowInfo.result!=null&&this.rowInfo.result!=''){
+ this.isUpBtn=true
+ }
+ this.processInspectVo.material=this.rowInfo.material
+ this.processInspectVo.mcode=this.rowInfo.material_code
+ this.processInspectVo.orderNumber=this.rowInfo.order_number
+ this.processInspectVo.qualityTraceability=this.rowInfo.quality_traceability
+ this.processInspectVo.specificationsModel=this.rowInfo.specifications_model
+ this.processInspectVo.unit=this.rowInfo.unit
+ this.processInspectVo.quantity=this.rowInfo.quantity
+ this.processInspectVo.prname=this.rowInfo.customer_name
+ this.processInspectVo.sname=this.rowInfo.project_name
+ this.inspectionResultForm[0].id=this.rowInfo.material_code
+ this.inspectionResultForm[0].name=this.rowInfo.material
+ this.inspectionResultForm[0].conclusion=this.rowInfo.result
+ this.detailId=this.rowInfo.id
+ this.getTableData()
+ this.getOptions();
+ },
+ methods: {
+ escalation() {
+ let arr = this.inspectionItems
+ let bl = false
+ for (let index = 0; index < arr.length; index++) {
+ const element = arr[index];
+ if (element.dname != null && element.empiricalValueAddss[0] != '') {
+ bl = true
+ break
+ } else {
+ bl = false
+ }
+ }
+ if (bl != true) {
+ this.$message({
+ message: '璇峰厛妫�娴嬩竴椤归」鐩紒',
+ type: 'warning'
+ });
+ return
+ }
+ this.$axios.post(this.$api.url.finishedInspectUpdateFinishInspectsById, {
+ id: this.detailId
+ }).then(res => {
+ if (res.code == 200) {
+ this.$message({
+ message: '涓婃姤鎴愬姛',
+ type: 'success'
+ });
+ this.$refs.comBackMain(true)
+ } else {
+ this.$message({
+ message: res.message,
+ type: 'warning'
+ });
+ }
+ })
+ },
+ changeOptionsSamplename(){
+ let id=this.processInspectVo.material.split("-")[0]
+ let sample=this.optionsSamplename.filter(o=>{
+ return o.id==id
+ })[0]
+ this.processInspectVo.qualityTraceability=sample.qualityTraceability
+ this.processInspectVo.mcode=sample.mcode
+ this.processInspectVo.specificationsModel=sample.specifications
+ this.processInspectVo.unit=sample.unit
+ },
+ comBack(){
+ this.$parent.comBackMain()
+ },
+ handleClick(row) {
+ this.rowInfp = row
+ this.showLook = true
+ },
+ updateInsInfo(row) {
+ this.rowInfp = row
+ this.showUp = true
+ },
+ combackMain() {
+ this.showUp = false
+ this.showLook = false
+ },
+ searchPro() {
+ this.search.countSize = this.pageSize
+ this.search.pageSize = this.currentPage
+ this.defaultInitializationTable()
+ },
+ // 鐐瑰嚮璁惧鏍戜繚瀛樼偣鍑昏褰�
+ nodeClick(data) {
+ if (data.id != undefined) this.nodeData = data;
+ },
+ // 璁惧鏍戣繃婊ゆ悳绱�
+ filterNode(value, data) {
+ if (!value) return true;
+ return data.name.indexOf(value) !== -1;
+ },
+ // 鑾峰彇璁惧鏍戝唴瀹�
+ getOptions() {
+ this.$axios.get(this.$api.url.rawSelectDevice).then(res => {
+ this.materialOptions = res.data;
+ });
+ },
+ // 鐐瑰嚮琛ㄦ牸閫夋嫨瑙﹀彂
+ clickTableSelect(scope) {
+ this.centerDialogVisible = true;
+ this.clickSelectDevice.index = scope.$index;
+ this.clickSelectDevice.rpId = scope.row.id;
+ },
+ // 鐐瑰嚮鏍戦噷闈㈢殑纭畾
+ clickNodeSure() {
+ if (this.detailId == null) {
+ this.inspectionItems[
+ this.clickSelectDevice.index
+ ].did = this.nodeData.id;
+ this.inspectionItems[
+ this.clickSelectDevice.index
+ ].dname = this.nodeData.name;
+ this.centerDialogVisible = false;
+ } else {
+ this.$axios
+ .post(this.$api.url.inspectionItemUpdateDevByInsId, {
+ id: this.clickSelectDevice.rpId,
+ type: 2,
+ devId: this.nodeData.id
+ })
+ .then(res => {
+ this.getTableData()
+ this.centerDialogVisible = false;
+ });
+ }
+ },
+ changeState(row, index) {
+ console.log(row);
+ if (row.did != null && row.did != '') {
+ let str = ""
+ row.empiricalValueAddss.forEach(e => {
+ str += e + ","
+ })
+ this.$axios.post(this.$api.url.inspectionItemlose_focus_update, {
+ deviceId: row.did,
+ inspectionItemId: row.id,
+ inspectionValue: str.slice(0, -1)
+ }, {
+ headers: { "Content-Type": "application/json" }
+ }).then(res => {
+ row.result = res.data.result
+ row.username = res.data.username
+ })
+ } else {
+ this.$message({
+ message: '璇烽�夋嫨鎷╄澶囷紒',
+ type: 'warning'
+ });
+ }
+ },
+ // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
+ handleSizeChange(val) {
+ this.search.countSize = val;
+ this.defaultInitializationTable();
+ },
+ handleSpanMethod({ row, column, rowIndex, columnIndex }) {
+ if (columnIndex === 0) {
+ const _row = this.spanArr[rowIndex];
+ const _col = _row > 0 ? 1 : 0;
+ return {
+ rowspan: _row,
+ colspan: _col
+ }
+ }
+ if (columnIndex === 1) {
+ const _row = this.spanArr[rowIndex];
+ const _col = _row > 0 ? 1 : 0;
+ return {
+ rowspan: _row,
+ colspan: _col
+ }
+ }
+ },
+ // 鍚堝苟琛ㄦ牸
+ mergeTable() {
+ this.rowList = []
+ this.spanArr = []
+ this.position = 0
+ this.inspectionItems.forEach((item, index) => {
+ if (index === 0) {
+ this.spanArr.push(1);
+ this.position = 0;
+ } else {
+ if (this.inspectionItems[index].father === this.inspectionItems[index - 1].father) {
+ this.spanArr[this.position] += 1;
+ this.spanArr.push(0);
+ } else {
+ this.spanArr.push(1);
+ this.position = index;
+ }
+ }
+ })
+ },
+ changeOptionSoptionSprocesses() {
+ this.optionTechnology = []
+ let working = this.optionSoptionSprocesses.filter(item => {
+ return item.name === this.processInspectVo.techfather
+ })[0]
+ this.optionTechnology = working.children
+ },
+ addTestProjevt() {
+ // this.isAddProject = true
+ let val = JSON.parse(JSON.stringify(this.processInspectVo))
+ val.material = this.processInspectVo.material.split("-")[1]
+ val.id=this.processInspectVo.material.split("-")[0]
+ this.$axios.post(this.$api.url.finishedInspectAddFinish, val, {
+ headers: { "Content-Type": "application/json" }
+ }).then(res => {
+ if (res.code == 201) {
+ this.$message({
+ message: res.message,
+ type: 'warning'
+ });
+ return
+ }
+ this.detailId = res.data
+ this.inspectionResultForm[0].id = val.mcode
+ this.inspectionResultForm[0].name = val.material
+ this.getTableData()
+ })
+ },
+ getTableData() {
+ this.$axios.get(this.$api.url.inspectionItemListUser, {
+ params: {
+ id: this.detailId,
+ type: 2
+ }
+ }).then(res => {
+ if (res.data.length < 1) {
+ return
+ }
+ this.inspectionItems = res.data
+ let arr = []
+ let val = JSON.parse(JSON.stringify(this.inspectionItems))
+ const uName = []
+ //杞垚涓�缁存暟缁�
+ val.forEach(l => {
+ let father = l.father
+ l.children.forEach(c => {
+ c.father = father
+ c.empiricalValueAddss = []
+ if (c.inspectionValue != '' && c.inspectionValue != null) {
+ c.empiricalValueAddss = c.inspectionValue.split(",");
+ } else {
+ c.empiricalValueAddss.push("")
+ }
+ uName.push(c['username'])
+ arr.push(c)
+ })
+ })
+ this.inspectionItems = arr
+ let arrSort = JSON.parse(JSON.stringify(arr))
+ //鏍规嵁闆嗗悎瀵硅薄鏁扮粍闀垮害鎺掑簭
+ arrSort.sort((a, b) => {
+ if (a.empiricalValueAddss.length < b.empiricalValueAddss.length) {
+ return -1; // a鎺掑湪b鍓嶉潰
+ } else if (a.empiricalValueAddss.length > b.empiricalValueAddss.length) {
+ return 1; // a鎺掑湪b鍚庨潰
+ } else {
+ return 0; // 淇濇寔鐩稿椤哄簭涓嶅彉
+ }
+ });
+ // console.log(arrSort);
+ console.log(uName);
+ let name = [...new Set(uName)].filter(item => item !== null);
+ let rname = ''
+ name.forEach(m => {
+ rname += m + ","
+ })
+ this.inspectionResultForm[0].inspecter = rname.slice(0, -1)
+ this.empiricalValueAdd = arrSort[arrSort.length - 1].empiricalValueAddss.length
+ this.mergeTable(arr)
+ })
+ },
+ selectSample() {
+ let sample = this.optionsSamplename.filter(item => {
+ return item.name === this.processInspectVo.material
+ })[0]
+ this.processInspectVo.techfather = null
+ this.processInspectVo.techname = null
+ this.processInspectVo.materialCode = sample.code
+ this.processInspectVo.specificationsModel = sample.specifications
+ this.processInspectVo.unit = sample.unit
+ this.optionSoptionSprocesses = []
+ this.optionSoptionSprocesses = sample.children
+ },
+ selectInfoByOrderId() {
+ this.$axios.get(this.$api.url.finishedInspectChooseMater, {
+ params: {
+ orderNumber: this.processInspectVo.orderNumber
+ }
+ }).then(res => {
+ if (res.data.length > 0) {
+ console.log(res.data);
+ this.processInspectVo.sname = res.data[0].sname
+ this.processInspectVo.prname = res.data[0].prname
+ this.optionsSamplename = res.data[0].children
+ } else {
+ this.$message({
+ message: '娌℃湁璇ヨ鍗曞彿锛�',
+ type: 'warning'
+ });
+ }
+ })
+ },
+ // 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
+ handleCurrentChange(val) {
+ this.search.pageSize = val;
+ this.defaultInitializationTable();
+ },
+ // 鏄剧ず鏂板椤甸潰
+ handleAddNew() {
+ this.showAddPage = true;
+ // this.getTableData()
+ },
+ // 琛ㄦ牸鍒濆鍖栨帴鍙�
+ defaultInitializationTable() {
+ this.$axios
+ .post(this.$api.url.selectProcessInspectsList, this.search)
+ .then(res => {
+ this.inspectionTableTotal = res.data.total;
+ this.inspectionTable = res.data.row;
+ });
+ },
+ // 娣诲姞琛�
+ clickAddLine() {
+ let obj = {
+ material: "",
+ materialCode: "",
+ orderNumber: "",
+ quantity: 0,
+ specificationsModel: "",
+ techfather: "",
+ techname: "",
+ technologyId: 0,
+ unit: ""
+ };
+ this.inspectionItems.push(obj);
+ },
+ // 鍒犻櫎琛�
+ clickDeleteline(scope) {
+ this.inspectionItems.splice(scope.$index, 1);
+ },
+ // 鍒犻櫎妫�楠屽�煎垪
+ clickDeleteInspectionColumn() {
+ if (this.empiricalValueAdd - 1 === 0) {
+ } else {
+ if (this.empiricalValueAddMaxNumber != this.empiricalValueAdd - 1) {
+ this.empiricalValueAdd = this.empiricalValueAdd - 1;
+ this.inspectionItems.forEach(i => {
+ i.testValueList.splice(this.empiricalValueAdd, 1);
+ });
+ }
+ }
+ },
+ // 娣诲姞妫�楠屽�煎垪
+ clickAddInspectionColumn() {
+ this.empiricalValueAdd = this.empiricalValueAdd + 1;
+ }
+ },
+ created() {
+ this.defaultInitializationTable(); // 鍒濆鍖栬〃鏍兼暟鎹�
+ }
}
</script>
-<style>
-
-</style>
\ No newline at end of file
+<style></style>
\ No newline at end of file
diff --git a/src/components/view/laboratoryManagement.vue b/src/components/view/laboratoryManagement.vue
index 1016489..b099a46 100644
--- a/src/components/view/laboratoryManagement.vue
+++ b/src/components/view/laboratoryManagement.vue
@@ -697,7 +697,9 @@
delDeviceById() {
this.$axios.post(this.$api.url.delDeviceById,{
id:this.delete.id
- })
+ }).then(res=>{
+ this.$parent.removeAllTab()
+ });
},
handleClick(row) {
console.log(row);
diff --git a/src/components/view/measurementManagement.vue b/src/components/view/measurementManagement.vue
index d89efdd..010cbb6 100644
--- a/src/components/view/measurementManagement.vue
+++ b/src/components/view/measurementManagement.vue
@@ -744,9 +744,9 @@
},
key: 0,
measurePlanPageData: [], // 璁¢噺璁″垝琛ㄦ牸鏁版嵁
- measureLedgerTotal: "",
+ measureLedgerTotal: 0,
measureLedgerPageData: [], // 璁¢噺鍙拌处琛ㄦ牸鏁版嵁
- measureLedgerPageTotal: "",
+ measureLedgerPageTotal: 0,
recordData: [],
measurePlanPage: {
pageNo: 1,
@@ -755,7 +755,7 @@
measureId: ""
},
measureTop: {},
- measurePlanPageTotal: "",
+ measurePlanPageTotal: 0,
okOrNo: "",
deviceIdAndNameAndCode: [],
addFormDevice: {
diff --git a/src/components/view/processInspection.vue b/src/components/view/processInspection.vue
index 5bae215..d352b24 100644
--- a/src/components/view/processInspection.vue
+++ b/src/components/view/processInspection.vue
@@ -359,9 +359,13 @@
this.rowInfp=row
this.showUp=true
},
- combackMain(){
+ combackMain(val){
this.showUp=false
this.showLook=false
+ this.defaultInitializationTable(); // 鍒濆鍖栬〃鏍兼暟鎹�
+ if(val){
+ this.$parent.removeAllTab()
+ }
},
searchPro(){
this.search.countSize=this.pageSize
diff --git a/src/components/view/processInspectionUpdate.vue b/src/components/view/processInspectionUpdate.vue
index b2578cc..9b5f8f9 100644
--- a/src/components/view/processInspectionUpdate.vue
+++ b/src/components/view/processInspectionUpdate.vue
@@ -91,7 +91,7 @@
<div class="inspectionProject">
<el-row>
<el-col :span="12" class="inspectionProject_span">妫�楠岄」鐩�</el-col>
- <el-col :span="12" class="inspectionProject_span">
+ <el-col v-if="!isUpBtn" :span="12" class="inspectionProject_span">
<el-button size="mini" @click="clickDeleteInspectionColumn()">鍒犻櫎妫�楠屽�煎垪</el-button>
<el-button style="margin-right: 30px;" size="mini"
@click="clickAddInspectionColumn()">娣诲姞妫�楠屽�煎垪</el-button>
@@ -156,7 +156,10 @@
</template>
</el-table-column>
<el-table-column prop="operation" label="涓婃姤">
- <el-button type="primary" @click="escalation" size="small">涓婃姤</el-button>
+ <template slot-scope="scope">
+ <el-button v-if="scope.row.conclusion === null || scope.row.conclusion === undefined" type="primary" @click="escalation" size="small">涓婃姤</el-button>
+ <el-button v-else type="success" size="small">宸蹭笂鎶�</el-button>
+ </template>
</el-table-column>
</el-table>
</div>
@@ -187,6 +190,7 @@
props: ['rowInfo'],
data() {
return {
+ isUpBtn: false,
showUp: false,
isAddProject: false,
detailId: 0,
@@ -275,6 +279,9 @@
}
},
created() {
+ if(this.rowInfo.result!=null&&this.rowInfo.result!=''){
+ this.isUpBtn=true
+ }
this.processInspectVo.orderNumber = this.rowInfo.order_number
this.processInspectVo.material = this.rowInfo.material
this.processInspectVo.materialCode = this.rowInfo.material_code
@@ -322,12 +329,14 @@
message: '涓婃姤鎴愬姛',
type: 'success'
});
+ this.$parent.combackMain(true)
} else {
this.$message({
message: res.message,
type: 'warning'
});
}
+
})
},
handleClick() { },
diff --git a/src/components/view/rawInsDetail.vue b/src/components/view/rawInsDetail.vue
index 2ab34d0..7dea5b5 100644
--- a/src/components/view/rawInsDetail.vue
+++ b/src/components/view/rawInsDetail.vue
@@ -484,9 +484,11 @@
async submitSave() {
const res = await this.$axios.post(
this.$api.url.updateRawInspectsById + `${this.detailId}`
- );
- this.$message.success("鎻愪氦鎴愬姛");
- this.getDetailInfo();
+ ).then(res=>{
+聽 聽 聽 聽 this.$parent.removeAllTab()
+ this.$message.success("鎻愪氦鎴愬姛");
+ this.getDetailInfo();
+聽 聽 聽 });
},
// 鑾峰彇璁惧鏍戝唴瀹�
getOptions() {
diff --git a/src/components/view/rawUnqualified/raw.vue b/src/components/view/rawUnqualified/raw.vue
index cf5aa02..46c90ac 100644
--- a/src/components/view/rawUnqualified/raw.vue
+++ b/src/components/view/rawUnqualified/raw.vue
@@ -247,6 +247,7 @@
.then(res => {
this.unqualifiedTable = [];
this.getDetailInfo();
+ this.$parent.removeAllTab()
});
}
}
diff --git a/src/components/view/technical.vue b/src/components/view/technical.vue
index 424ee7e..488e2ad 100644
--- a/src/components/view/technical.vue
+++ b/src/components/view/technical.vue
@@ -22,7 +22,7 @@
</el-date-picker>
</el-form-item>
<el-form-item label="浜у搧鍚嶇О:">
- <el-input v-model="searchData.name" @input="query"></el-input>
+ <el-input v-model="searchData.name" ></el-input>
</el-form-item>
<el-form-item label="缂栧埗鐘舵��:" >
<el-select v-model="searchData.type" size="small" placeholder="鍏ㄩ儴" style="width: 250px;">
@@ -108,9 +108,9 @@
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
- :current-page="pageParams.pageNo"
- :page-sizes="[100, 200, 300, 400]"
- :page-size="pageParams.pageSize"
+ :current-page="pageParams.pageSize"
+ :page-sizes="[10, 20, 50, 100]"
+ :page-size="pageParams.countSize"
layout="total, sizes, prev, pager, next, jumper"
:total="pageParams.total">
</el-pagination>
@@ -240,8 +240,8 @@
showDetail: false,
selectedRow: {},
pageParams:{
- pageNo:1,
- pageSize:10,
+ pageSize:1,
+ countSize:10,
total:0
}
}
@@ -276,8 +276,8 @@
async getTechnicalTableData() {
const res = await this.$axios.get(this.$api.url.selectAllOrder,{
params:{
- pageSize:(this.pageParams.pageNo-1),
- countSize:this.pageParams.pageSize,...this.searchData,
+ pageSize:(this.pageParams.pageSize),
+ countSize:this.pageParams.countSize,...this.searchData,
orderCode:this.searchData.id,
time:this.searchData.date,
name:this.searchData.name,
@@ -299,11 +299,11 @@
this.getTechnicalTableData()
},
handleSizeChange(value){
- this.pageParams.pageSize = value
+ this.pageParams.countSize = value
this.getTechnicalTableData()
},
handleCurrentChange(value){
- this.pageParams.pageNo = value
+ this.pageParams.pageSize = value
this.getTechnicalTableData()
}
},
diff --git a/src/components/view/technology.vue b/src/components/view/technology.vue
index aa700a6..a6c319a 100644
--- a/src/components/view/technology.vue
+++ b/src/components/view/technology.vue
@@ -624,8 +624,9 @@
)
.then((res) => {
console.log(res);
- this.selectAllTechNam();
+ /* this.selectAllTechNam(); */
this.form = {};
+ this.$parent.removeAllTab()
});
},
@@ -664,6 +665,8 @@
console.log(this.delete);
this.$axios.post(this.$api.url.delAllTech, {
ids: this.delete,
+ }).then(res=>{
+ this.$parent.removeAllTab()
});
},
//鍒犻櫎
@@ -671,6 +674,8 @@
console.log(this.$api.url.delTechById, this.upData.id);
this.$axios.post(this.$api.url.delTechById, {
id: this.upData.id,
+ }).then(res=>{
+ this.$parent.removeAllTab()
});
},
//缂栬緫
@@ -699,7 +704,8 @@
}
)
.then((res) => {
- this.selectAllTechNam()
+ /* this.selectAllTechNam(), */
+ this.$parent.removeAllTab()
});
},
@@ -720,7 +726,8 @@
let one=this.towTree.filter(item=>{
return item.children.length>0
})[0]
- let name=one.children[0].name
+ let name=one.children[0].name
+ this.checkTreeNode.name=name
this.selectAllTechNamStart(name)
this.selectDataList();
});
diff --git a/src/components/view/unqualifiedManagement.vue b/src/components/view/unqualifiedManagement.vue
index 2d8c9d7..0101e34 100644
--- a/src/components/view/unqualifiedManagement.vue
+++ b/src/components/view/unqualifiedManagement.vue
@@ -243,6 +243,7 @@
.then(res => {
this.unqualifiedTable = [];
this.getDetailInfo();
+ this.$parent.removeAllTab()
});
}
}
diff --git a/src/view/index.vue b/src/view/index.vue
index 27712b5..dd9f1d7 100644
--- a/src/view/index.vue
+++ b/src/view/index.vue
@@ -579,6 +579,7 @@
},
removeAllTab(){
this.upIndex++
+ this.$message.warning('鏁版嵁鍙樺姩杈冨ぇ,椤甸潰鑷姩鏇存柊!')
}
}
};
--
Gitblit v1.9.3