From 7965761658b890fce87de832a1ae76cc82a3c33b Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期一, 11 九月 2023 12:53:09 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.22:9001/r/mom-before
---
src/components/view/standard-box/bomClickAdd.vue | 15 ++
src/components/view/standard.vue | 121 +++++++++++++++++---
src/components/view/standard-table/bom.vue | 107 +++++++++++++++++
src/components/view/rawInsDetail.vue | 10 +
src/components/view/rawUnqualified/raw.vue | 62 +++++++++-
src/components/view/unqualifiedManagement.vue | 6
src/assets/api/controller.js | 3
7 files changed, 292 insertions(+), 32 deletions(-)
diff --git a/src/assets/api/controller.js b/src/assets/api/controller.js
index e9c4312..34890eb 100644
--- a/src/assets/api/controller.js
+++ b/src/assets/api/controller.js
@@ -27,7 +27,8 @@
}
//涓嶅悎鏍煎師鏉愭枡
const unqualifiedaa ={
- selectUnRawInspectsList: "/inspectUnaccepted/selectURawMaterials"
+ selectUnRawInspectsList: "/inspectUnaccepted/selectURawMaterials", // 鏌ヨ鍘熸潗鏂欎笉鍚堟牸鍝佹楠屽崟鍒楄〃
+ evaluatePassOrNo: "/inspectUnaccepted/evaluatePassOrNo" // 璇勫
}
// 鏌ヨ鎴愬搧涓嶅悎鏍煎搧绠$悊
const unRawInspects ={
diff --git a/src/components/view/rawInsDetail.vue b/src/components/view/rawInsDetail.vue
index 9f5a5d6..2ab34d0 100644
--- a/src/components/view/rawInsDetail.vue
+++ b/src/components/view/rawInsDetail.vue
@@ -118,7 +118,7 @@
<el-col :span="7">
<el-form-item label="渚涘簲鍟嗗悕绉�:">
<el-input
- :placeholder="detailId !== null ? '' : '璇疯緭鍏ユ楠屾暟閲�'"
+ :placeholder="detailId !== null ? '' : '璇疯緭鍏ヤ緵搴斿晢鍚嶇О'"
:disabled="detailId !== null"
v-model="detailInfo.supplier"
></el-input>
@@ -274,7 +274,7 @@
<el-table :data="conclusionTable" style="100%">
<el-table-column prop="code" label="鐗╂枡缂栧彿"> </el-table-column>
<el-table-column prop="name" label="鐗╂枡鍚嶇О"> </el-table-column>
- <el-table-column prop="uName" label="妫�楠屽憳">
+ <el-table-column v-if="detailId != null" prop="uName" label="妫�楠屽憳">
<template slot-scope="scope">
<span
v-for="item in scope.row.uName"
@@ -439,7 +439,11 @@
this.projectTable = res.data.children;
this.projectTable.forEach(i => {
// 瑙e喅閲嶆柊璧嬪�兼棤娉曠紪杈戞搷浣�
- this.$set(i, "testValueList", i.testValue.split(","));
+ if (i.testValue == null) {
+ this.$set(i, "testValueList", []);
+ } else {
+ this.$set(i, "testValueList", i.testValue.split(","));
+ }
// 鍙栨渶闀跨殑鍒楄〃鏁�
if (i.testValueList.length > this.empiricalValueAdd) {
this.empiricalValueAdd = i.testValueList.length;
diff --git a/src/components/view/rawUnqualified/raw.vue b/src/components/view/rawUnqualified/raw.vue
index a92a38f..527f21c 100644
--- a/src/components/view/rawUnqualified/raw.vue
+++ b/src/components/view/rawUnqualified/raw.vue
@@ -108,25 +108,61 @@
</el-table-column>
<el-table-column prop="deal_reasult" label="澶勭悊缁撴灉" width="100">
<template slot-scope="scope">
- <span style="color:#34BD66;" v-if="scope.row.deal_reasult == 1"
+ <span style="color:#E84738;" v-if="scope.row.deal_reasult == 0"
>涓嶉�氳繃</span
>
<span
- style="color:#E84738;"
- v-else-if="scope.row.deal_reasult == 0"
+ style="color:#34BD66;"
+ v-else-if="scope.row.deal_reasult == 1"
>閫氳繃</span
>
</template>
</el-table-column>
<el-table-column label="鎿嶄綔" width="100">
- <template>
+ <template slot-scope="scope">
<div style="display: flex;">
- <el-button type="text" siae="small" size="mini">璇勫</el-button>
+ <el-popover
+ placement="left"
+ width="160"
+ :ref="`popover-${scope.$index}`"
+ >
+ <div style="padding: 6px">璇勫鏄惁閫氳繃锛�</div>
+ <div style="text-align: right; margin: 6px;">
+ <el-button
+ size="mini"
+ type="text"
+ style="color: #E84738;"
+ @click="
+ scope._self.$refs[`popover-${scope.$index}`].doClose();
+ rawEvaluate(scope.row, 0);
+ "
+ >涓嶉�氳繃</el-button
+ >
+ <el-button
+ type="text"
+ style="color: #34bd66;"
+ size="mini"
+ @click="
+ scope._self.$refs[`popover-${scope.$index}`].doClose();
+ rawEvaluate(scope.row, 1);
+ "
+ >閫氳繃</el-button
+ >
+ </div>
+ <el-button
+ slot="reference"
+ type="text"
+ siae="small"
+ size="mini"
+ >璇勫</el-button
+ >
+ </el-popover>
+
<el-button
type="text"
siae="small"
size="mini"
- style=" color:87, 138, 193 ;"
+ style=" color:87, 138, 193 ; margin-left: 10px;"
>鏌ョ湅</el-button
>
</div>
@@ -165,7 +201,8 @@
supplier: "" // 渚涘簲鍟�
},
unqualifiedTable: [], // 椤甸潰琛ㄦ牸鏁版嵁
- total: 0
+ total: 0,
+ visible: false
};
},
mounted() {
@@ -200,6 +237,17 @@
supplier: "" // 渚涘簲鍟�
};
this.getDetailInfo();
+ },
+ rawEvaluate(row, passOrNo) {
+ this.$axios
+ .post(this.$api.url.evaluatePassOrNo, {
+ rawId: row.id,
+ passOrNo: passOrNo
+ })
+ .then(res => {
+ this.unqualifiedTable = [];
+ this.getDetailInfo();
+ });
}
}
};
diff --git a/src/components/view/standard-box/bomClickAdd.vue b/src/components/view/standard-box/bomClickAdd.vue
new file mode 100644
index 0000000..a8f9b6d
--- /dev/null
+++ b/src/components/view/standard-box/bomClickAdd.vue
@@ -0,0 +1,15 @@
+<template>
+ <div>
+ 1
+ </div>
+</template>
+
+<script>
+export default {
+
+}
+</script>
+
+<style>
+
+</style>
\ No newline at end of file
diff --git a/src/components/view/standard-table/bom.vue b/src/components/view/standard-table/bom.vue
new file mode 100644
index 0000000..fffd709
--- /dev/null
+++ b/src/components/view/standard-table/bom.vue
@@ -0,0 +1,107 @@
+<template>
+ <div class="standard">
+ <div>
+ <el-table :data="tableData" height="800" row-key="id" border
+ :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'left'}"
+ @selection-change="handleSelectionChange" default-expand-all
+ :tree-props="{ children: 'children', hasChildren: 'hasChildren' }">
+ <el-table-column type="selection" width="55">
+ </el-table-column>
+ <el-table-column type="index" width="60" label="搴忓彿">
+ </el-table-column>
+ <el-table-column prop="father" label="宸ュ簭" sortable width="200px">
+ <template slot-scope="scope">
+ <el-tag v-if="scope.row.children" type="primary">01</el-tag>
+ <span style="color: black">
+ {{ scope.row.father }}
+ </span>
+ </template>
+ </el-table-column>
+ <el-table-column sortable label="宸ヨ壓鍚嶇О">
+ <template slot-scope="scope">
+ <el-tag type="success" v-if="!scope.row.children">02</el-tag>
+ <span style="color: black">{{ scope.row.name }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="mname" label="鏉愭枡鍚嶇О">
+ </el-table-column>
+ <el-table-column prop="specifications" label="瑙勬牸">
+ </el-table-column>
+ <el-table-column prop="unit" label="鍗曚綅">
+ </el-table-column>
+ <el-table-column prop="num" label="鏁伴噺">
+ </el-table-column>
+ <!-- <el-table-column label="鎿嶄綔">
+ <el-button style="color: rgb(137, 137, 229);">缂栬緫</el-button>
+ </el-table-column> -->
+ </el-table>
+ </div>
+ </div>
+ </template>
+
+ <script>
+ export default {
+ data() {
+ return {
+ selects: []
+ }
+ },
+ props:['tableData','tableType'],
+ created() {
+ console.log(this.tableData)
+ },
+ mounted() {
+
+ },
+ methods: {
+ handleSelectionChange(val) {
+ this.selects = val;
+ }
+ }
+ }
+ </script>
+
+ <style scoped>
+ .standard {
+ width: 100%;
+ height: 100%;
+ }
+ </style>
+ <style>
+ .standard * {
+ font-size: 14px;
+ }
+
+ .standard .has-gutter .el-table__cell {
+ background-color: #F0F1F5 !important;
+ color: #333;
+ }
+
+ .standard .has-gutter .el-table__cell .cell {
+ font-size: 16px;
+ font-weight: 500;
+ }
+
+ .standard .cell {
+ color: #333;
+ padding-left: 17px !important;
+ }
+
+ .standard {
+ width: 100%;
+ height: 100%;
+ overflow: auto;
+ }
+
+ .standard .el-table__body-wrapper {
+ height: 100%;
+ }
+
+ .standard .el-table__body {
+ height: 100%;
+ }
+ .standard .el-table .el-table__row:not([class*="el-table__row--level-"]) td:nth-child(3){
+ padding-left: 23px !important;
+ }
+ </style>
+
\ No newline at end of file
diff --git a/src/components/view/standard.vue b/src/components/view/standard.vue
index d040ac1..4c54a89 100644
--- a/src/components/view/standard.vue
+++ b/src/components/view/standard.vue
@@ -7,15 +7,21 @@
<el-button type="primary" icon="el-icon-plus" style="background: #004EA2;"
@click="bomAddModelVisible = true">鏂板</el-button>
<el-button icon="el-icon-plus">鏂板鐗堟湰</el-button>
- <el-button icon="el-icon-edit-outline">淇敼</el-button>
- <el-button icon="el-icon-delete">鍒犻櫎</el-button>
+ <el-button @click="bomRightUp=true" icon="el-icon-edit-outline">淇敼</el-button>
+ <el-button @click="bomRightDl=true" icon="el-icon-delete">鍒犻櫎</el-button>
</el-col>
</el-row>
</div>
<div class="thing">
<div class="left">
- <el-input v-model="search" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable></el-input>
-
+ <el-row>
+ <el-col :span="21">
+ <el-input v-model="search" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable></el-input>
+ </el-col>
+ <el-col :span="2">
+ <el-button size="mini" icon="el-icon-plus" @click="bomLeftAdd=true"></el-button>
+ </el-col>
+ </el-row>
<el-tree :data="list" ref="tree" default-expand-all :props="{ children: 'children', label: 'name' }"
node-key="id" :filter-node-method="filterNode" @node-click="handleNodeClick" highlight-current>
<div class="custom-tree-node" slot-scope="{ node, data }">
@@ -59,21 +65,55 @@
<target :tableType="tableType" :tableData="tableData"></target>
</div>
<div v-if="this.typeselect == 2">
- <material :tableType="tableType" :tableData="tableData"></material>
+ <bom :tableType="tableType" :tableData="tableData"></bom>
</div>
<div v-if="this.typeselect == 3">鐢熶骇宸ヨ壓</div>
+
</div>
</div>
<div class="bom-add-model">
<el-dialog title="BOM鏂板" :visible.sync="bomAddModelVisible" width="30%">
- <el-form>
-
- </el-form>
+ <div>
+ <!-- 鐗╂枡娓呭崟鏂板 -->
+ <bomClickAdd v-if="typeselect===2"/>
+ </div>
<span slot="footer" class="dialog-footer">
<el-button @click="bomAddModelVisible = false">鍙� 娑�</el-button>
<el-button type="primary" @click="bomAddModelVisible = false">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ <!-- 宸︿晶鐐瑰嚮+鎸夐挳 -->
+ <el-dialog title="BOM鏂板" :visible.sync="bomLeftAdd" width="29%">
+ <el-form ref="leftAdd" :model="leftAdd">
+ <el-form-item label="绫诲瀷">
+ <el-cascader v-model="leftAdd.type" size="mini" style="width: 93%;" :options="formTypeOptions" :props="{ checkStrictly: true }" clearable></el-cascader>
+ </el-form-item>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="bomLeftAdd = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="bomLeftAdd = false">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ <!-- 鍙充笂渚х偣鍑讳慨鏀规寜閽� -->
+ <el-dialog title="BOM淇敼" :visible.sync="bomRightUp" width="30%">
+ <el-form>
+ 淇敼
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="bomRightUp = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="bomRightUp = false">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ <!-- 鍙充笂渚х偣鍑诲垹闄ゆ寜閽� -->
+ <el-dialog title="BOM鍒犻櫎" :visible.sync="bomRightDl" width="30%">
+ <el-form>
+ 鍒犻櫎
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="bomRightDl = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="bomRightDl = false">纭� 瀹�</el-button>
</span>
</el-dialog>
</div>
@@ -83,9 +123,11 @@
<script>
import technology from "./standard-table/technology.vue"
import material from "./standard-table/material.vue"
-import target from "./standard-table/target.vue"
+import bom from "./standard-table/bom.vue"
+import bomClickAdd from '@/components/view/standard-box/bomClickAdd'
export default {
- components: { technology,material,target },
+ components: { technology,material,bom,bomClickAdd },
+
data() {
return {
// BOM鏍戞暟鎹粨鏋�
@@ -96,14 +138,25 @@
checkTreeNode: {},// 鐐瑰嚮閫変腑鏍戣妭鐐�
tableData: [],
bomAddModelVisible: false,// 鎺у埗bom鏂板妯℃�佹鏄惁鏄剧ず
+ bomLeftAdd: false,
+ bomRightUp: false,
+ bomRightDl: false,
+ formTypeOptions: null,
typeselect: 0,
returntree: {
id:28,
},
version: {},
+ leftAdd:{
+ type: null,
+ father: null,
+ standard: null,
+ name: null,
+ specifications: null
+ },
VER: {},
verdata: {},
- character: 0,
+ character: 0
}
},
// watch: {
@@ -120,6 +173,9 @@
this.selectVersion()
},
methods: {
+ startLeftAdd(){
+
+ },
selectDataList() {
this.list.forEach(a => {
a.code = '[1]'
@@ -149,13 +205,14 @@
},
TYPE(val) {//绫诲瀷.鏁版嵁
- console.log(val);
+ // console.log(val);
this.typeselect = val
+
// console.log(this.typeselect);
this.selectVersion()
},
handleNodeClick(val) {//鏍戠殑鍊�
- console.log(val);
+ // console.log(val);
this.returntree = val
},
async selectVersion() {//鐗堟湰
@@ -174,7 +231,6 @@
})
this.character=v
this.VER="v"+v
- console.log(this.character);
this.selectAll()
},
//鍙充晶鏁版嵁
@@ -187,7 +243,9 @@
}
}).then(res => {
let arr = res.data;
- this.formatData(arr)
+ for(var i=0;i<arr.length;i++){
+ arr[i].id = "0" + i;
+ }
this.tableData = arr;
})
},
@@ -201,9 +259,9 @@
}
},
verevent(val) {
- console.log(val);
+ // console.log(val);
let cc = val.replace('v', '')
- console.log(cc);
+ // console.log(cc);
this.character = cc
this.selectAll()
// const { v, ...newObj } = val;
@@ -213,7 +271,7 @@
//浜旂骇鏍�
selectMaterialTree() {
this.$axios.get(this.$api.url.selectTreeByMaterial).then( res => {
- this.list = res.data
+ this.list=res.data
this.list.forEach((el, idx, arr) => {
if (idx == 0) {
arr[idx].name = '鎴愬搧'
@@ -240,6 +298,7 @@
})
},
getDefault(arr, index) {
+ console.log(arr);
for (const item of arr) {
if (item.children && item.children.length > 0) {
// 鏈夊瓙鑺傜偣
@@ -289,7 +348,33 @@
this.tableData = productList
break;
}
+ },
+ replaceProp(arr){
+ for (let index = 0; index < arr.length; index++) {
+ let element = arr[index];
+ element.label=element.name
+ element.value=element.name
+ // if()
+ }
}
+ },
+ watch:{
+ leftAdd: {
+ handler(newVal, oldVal) {
+ console.log("鏂扮殑",newVal);
+ console.log("鏃х殑",oldVal);
+ },
+ deep: true // 娣卞害鐩戝惉瀵硅薄鍐呴儴灞炴�х殑鍙樺寲锛屽彲閫夌殑
+ },
+ bomLeftAdd:{
+ handler(newval,oldVal){
+ if(newval){
+ let treeOptions = JSON.parse(JSON.stringify(this.list));
+ console.log(treeOptions);
+
+ }
+ }
+ }
}
}
</script>
diff --git a/src/components/view/unqualifiedManagement.vue b/src/components/view/unqualifiedManagement.vue
index 17e01c2..56a816c 100644
--- a/src/components/view/unqualifiedManagement.vue
+++ b/src/components/view/unqualifiedManagement.vue
@@ -97,12 +97,12 @@
</el-table-column>
<el-table-column prop="deal_reasult" label="澶勭悊缁撴灉" width="100">
<template slot-scope="scope">
- <span style="color:#34BD66;" v-if="scope.row.deal_reasult == 1"
+ <span style="color:#E84738;" v-if="scope.row.deal_reasult == 0"
>涓嶉�氳繃</span
>
<span
- style="color:#E84738;"
- v-else-if="scope.row.deal_reasult == 0"
+ style="color:#34BD66;"
+ v-else-if="scope.row.deal_reasult == 1"
>閫氳繃</span
>
</template>
--
Gitblit v1.9.3