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