From b69442a151f8a0990cd17acb705f482609e6727d Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期四, 09 十一月 2023 13:11:16 +0800
Subject: [PATCH] 	modified:   package.json 	modified:   src/api/quality/finishedProduct.js 	modified:   src/views/equipment/equipment/index.vue 	modified:   src/views/equipment/metering/index.vue 	modified:   src/views/quality/finishedProductInspection/finishedProduct-form.vue 	modified:   src/views/quality/finishedProductInspection/finishedProduct-print.vue 	modified:   src/views/quality/finishedProductInspection/index.vue 	modified:   src/views/quality/rawMaterial/rawMaterial-print.vue

---
 src/views/equipment/equipment/index.vue                               |   48 +++++++++++
 src/views/quality/finishedProductInspection/index.vue                 |   21 ++++
 src/api/quality/finishedProduct.js                                    |    8 ++
 package.json                                                          |    1 
 src/views/equipment/metering/index.vue                                |   47 +++++++++++
 src/views/quality/finishedProductInspection/finishedProduct-form.vue  |   25 +++--
 src/views/quality/finishedProductInspection/finishedProduct-print.vue |   51 ++++++++++++
 src/views/quality/rawMaterial/rawMaterial-print.vue                   |    2 
 8 files changed, 182 insertions(+), 21 deletions(-)

diff --git a/package.json b/package.json
index 7ac2004..fb282aa 100644
--- a/package.json
+++ b/package.json
@@ -44,6 +44,7 @@
     "vue-echarts": "^4.0.1",
     "vue-json-editor": "^1.2.3",
     "vue-json-tree-view": "^2.1.4",
+    "vue-qr": "^4.0.9",
     "vue-quill-editor": "3.0.6",
     "vue-router": "^3.0.2",
     "vuedraggable": "^2.24.3",
diff --git a/src/api/quality/finishedProduct.js b/src/api/quality/finishedProduct.js
index cb8ce52..70893a4 100644
--- a/src/api/quality/finishedProduct.js
+++ b/src/api/quality/finishedProduct.js
@@ -16,6 +16,14 @@
   })
 }
 
+export function selectDeviceAPI(query) {
+  return request({
+    url: '/mes/qualityFinishedInsProduct/selectDevice',
+    method: 'get',
+    params: query
+  })
+}
+
 export function addFinish(obj) {
   return request({
     url: '/mes/qualityFinishedInspect/addFinish',
diff --git a/src/views/equipment/equipment/index.vue b/src/views/equipment/equipment/index.vue
index f65ac9d..5a2a8dc 100644
--- a/src/views/equipment/equipment/index.vue
+++ b/src/views/equipment/equipment/index.vue
@@ -18,6 +18,34 @@
         ref="addOrUpdate"
         @refreshDataList="getData"
       ></table-form>
+      <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px">
+        <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;">
+          <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;">
+            <el-row>
+              <el-col :span="10" :offset="3">搴忓彿锛�</el-col>
+              <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="10" :offset="3">缂栧彿锛�</el-col>
+              <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="10" :offset="3">璁惧鍚嶇О锛�</el-col>
+              <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="10" :offset="3">璁惧浜岀淮鐮侊細</el-col>
+              <el-col :span="10">
+                <vueQr :text="tem.number" :size="80" :margin="2"></vueQr>
+              </el-col>
+            </el-row>
+          </el-card>
+        </div>
+        <span slot="footer" class="dialog-footer">
+          <el-button @click="diaPrintTab = false">鍙� 娑�</el-button>
+          <el-button type="primary" @click="diaPrintTab = false">鎵� 鍗�</el-button>
+        </span>
+      </el-dialog>
     </basic-container>
   </div>
 </template>
@@ -29,6 +57,7 @@
 import { mapGetters } from 'vuex'
 import * as fecha from 'element-ui/lib/utils/date'
 import { remote } from '../../../api/admin/dict'
+import vueQr from 'vue-qr'
 export default {
   data() {
     return {
@@ -39,6 +68,7 @@
         isShow: true,
         url: '/mes/equipment/upload'
       },
+      diaPrintTab: false,
       prelang: 'workstation',
       options: {
         height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾
@@ -198,6 +228,11 @@
             type: 'primary',
             fun: this.addOrUpdateHandle
           },
+          {
+              text: '鏍囩鎵撳嵃',
+              type: 'primary',
+              fun: this.labelPrint
+            },
           // {
           //   text: '鍚屾',
           //   type: 'primary',
@@ -234,7 +269,8 @@
   },
   components: {
     ttable,
-    TableForm
+    TableForm,
+    vueQr
   },
   computed: {
     ...mapGetters(['permissions'])
@@ -277,6 +313,7 @@
     },
     handleSelectionChange(val) {
       this.multipleSelection = val
+      console.log(this.multipleSelection);
     },
     // 鏂板 / 淇敼
     addOrUpdateHandle(row) {
@@ -300,7 +337,14 @@
           this.$message.success('鍒犻櫎鎴愬姛')
           this.getData()
         })
-    }
+    },
+    labelPrint(){
+        if(this.multipleSelection.length==0){
+          this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+          return
+        }
+        this.diaPrintTab = true
+      }
   }
 }
 </script>
diff --git a/src/views/equipment/metering/index.vue b/src/views/equipment/metering/index.vue
index bbd003d..3364d51 100644
--- a/src/views/equipment/metering/index.vue
+++ b/src/views/equipment/metering/index.vue
@@ -19,6 +19,34 @@
           @refreshDataList="getData"
         ></table-form>
       </basic-container>
+      <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px">
+        <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;">
+          <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;">
+            <el-row>
+              <el-col :span="10" :offset="3">搴忓彿锛�</el-col>
+              <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="10" :offset="3">缂栧彿锛�</el-col>
+              <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="10" :offset="3">璁惧鍚嶇О锛�</el-col>
+              <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="10" :offset="3">璁惧浜岀淮鐮侊細</el-col>
+              <el-col :span="10">
+                <vueQr :text="tem.code" :size="80" :margin="2"></vueQr>
+              </el-col>
+            </el-row>
+          </el-card>
+        </div>
+        <span slot="footer" class="dialog-footer">
+          <el-button @click="diaPrintTab = false">鍙� 娑�</el-button>
+          <el-button type="primary" @click="diaPrintTab = false">鎵� 鍗�</el-button>
+        </span>
+      </el-dialog>
     </div>
   </template>
   
@@ -29,6 +57,7 @@
   import { mapGetters } from 'vuex'
   import * as fecha from 'element-ui/lib/utils/date'
   import { remote } from '../../../api/admin/dict'
+  import vueQr from 'vue-qr'
   export default {
     data() {
       return {
@@ -233,6 +262,11 @@
               type: 'primary',
               fun: this.addOrUpdateHandle
             },
+            {
+              text: '鏍囩鎵撳嵃',
+              type: 'primary',
+              fun: this.labelPrint
+            },
             // {
             //   text: '鍚屾',
             //   type: 'primary',
@@ -264,12 +298,14 @@
           }
         },
         addOrUpdateVisible: false,
-        workshopList: []
+        workshopList: [],
+        diaPrintTab: false
       }
     },
     components: {
       ttable,
-      TableForm
+      TableForm,
+      vueQr
     },
     computed: {
       ...mapGetters(['permissions'])
@@ -336,6 +372,13 @@
             this.$message.success('鍒犻櫎鎴愬姛')
             this.getData()
           })
+      },
+      labelPrint(){
+        if(this.multipleSelection.length==0){
+          this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+          return
+        }
+        this.diaPrintTab = true
       }
     }
   }
diff --git a/src/views/quality/finishedProductInspection/finishedProduct-form.vue b/src/views/quality/finishedProductInspection/finishedProduct-form.vue
index 5012f74..da0e42b 100644
--- a/src/views/quality/finishedProductInspection/finishedProduct-form.vue
+++ b/src/views/quality/finishedProductInspection/finishedProduct-form.vue
@@ -125,12 +125,12 @@
                             <template slot-scope="scope">
                                 <span v-if="resultVal!=null && processInspectVo.id!=null" v-text="scope.row.ename"></span>
                                 <div v-else>
-                                    <el-input  v-model="scope.row.eId"  v-if="scope.row.iname != null" placeholder="璇疯緭鍏ヨ澶囧彿"></el-input>
-                                    <!-- <el-select style="width:100%" v-model="scope.row.eId"
+                                    <!-- <el-input  v-model="scope.row.eId"  v-if="scope.row.iname != null" placeholder="璇疯緭鍏ヨ澶囧彿"></el-input> -->
+                                    <el-select style="width:100%" v-model="scope.row.eId"
                                     v-if="scope.row.iname != null" filterable @change="updateDevice(scope.row,scope.$index)">
                                         <el-option v-for="(item,index) in deviceList"
                                         :key="index" :value="item.id" :label="item.number +'-'+ item.name"></el-option>
-                                    </el-select> -->
+                                    </el-select>
                                 </div>
                             </template>
                         </el-table-column>
@@ -140,9 +140,11 @@
                                     <el-col v-if="scope.row.itype === '1'">
                                         <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null"
                                             class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start">
+
                                             <el-input :disabled="scope.row.eId == null"
                                                 v-model="scope.row.inote"
                                                 @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ楠屾弿杩�"></el-input>
+
                                             <span v-if="resultVal != null && processInspectVo.id != null"
                                                 v-text="scope.row.inote"></span>
                                         </el-tooltip>
@@ -150,14 +152,14 @@
                                     <el-col v-else>
                                         <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null"
                                             class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start">
-                                            <!-- <el-input :disabled="scope.row.eId == null"
-                                                v-model="scope.row.empiricalValueAddss[index]"
-                                                @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> -->
-                                            <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.inote" placeholder="璇烽�夋嫨">
+                                            <el-input :disabled="scope.row.eId == null"
+                                                v-model="scope.row.inote"
+                                                @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input>
+                                            <!-- <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.inote" placeholder="璇烽�夋嫨">
                                                 <el-option v-for="item in dataVal" :key="item.value" :label="item.label"
                                                     :value="item.value">
                                                 </el-option>
-                                            </el-select>
+                                            </el-select> -->
                                             <span v-if="resultVal != null && processInspectVo.id != null"
                                                 v-text="scope.row.inote"></span>
                                         </el-tooltip>
@@ -216,6 +218,7 @@
     updateDeviceById,
     updateFinishedInsProduct,
     updateFinishedInspectById,
+    selectDeviceAPI,
  } from '@/api/quality/finishedProduct'
 import { selectDevice } from '@/api/quality/rawMaterial'
 export default {
@@ -273,7 +276,7 @@
         this.init()
     },
     methods: {
-
+        
         submitSave(){
             let pro = 0
             this.inspectionItems.forEach(item => {
@@ -379,9 +382,11 @@
             }
         },
         getDeviceList(){
-            selectDevice(null).then(res=>{
+            selectDeviceAPI(null).then(res=>{
                 // this.deviceList = res.data.data
                 console.log(res);
+                this.deviceList = res.data.data
+
             })
         },
         updateDevice(row,index){
diff --git a/src/views/quality/finishedProductInspection/finishedProduct-print.vue b/src/views/quality/finishedProductInspection/finishedProduct-print.vue
index a3b53fc..48d7c40 100644
--- a/src/views/quality/finishedProductInspection/finishedProduct-print.vue
+++ b/src/views/quality/finishedProductInspection/finishedProduct-print.vue
@@ -27,10 +27,16 @@
                 <td colspan=2 height=53 class=xl7624921 style='border-right:.5pt solid black;
   height:40.05pt'>椤圭洰鍚嶇О</td>
                 <td colspan=2 class=xl6624921 style='border-right:.5pt solid black;
-  border-left:none'>銆�</td>
+  border-left:none'>銆�
+            <p class="MsoNormal" align="center" style="text-align:center">
+                <span lang="EN-US" style="font-family:&quot;Arial&quot;,sans-serif" v-text="deviceStr"></span></p>
+            </td>
                 <td class=xl6924921 style='border-top:none;border-left:none'>浜у搧鍚嶇О</td>
                 <td colspan=2 class=xl6624921 style='border-right:.5pt solid black;
-  border-left:none'>銆�</td>
+  border-left:none'>
+             <p class="MsoNormal" align="center" style="text-align:center">
+                <span lang="EN-US" style="font-family:&quot;Arial&quot;,sans-serif" v-text="product"></span></p>
+銆�             </td>
             </tr>
             <tr class=xl6524921 height=53 style='mso-height-source:userset;height:40.05pt'>
                 <td colspan=2 height=53 class=xl7624921 style='border-right:.5pt solid black;
@@ -266,7 +272,46 @@
 
 <script>
 export default {
-
+    props:{
+        formData:{
+            type: Object,
+            default:()=>{
+                return {}
+            }
+        }
+    },
+    data(){
+        return{
+            tableData: null,
+            projectList: [],
+            deviceStr: null,
+            product:null,
+            childrenData: [],
+        }
+    },
+    created(){
+        this.tableData = this.formData
+        console.log("============",this.tableData)
+        this.initData()
+        // this.initProjectList(this.projectList)
+    },
+    methods:{
+        initData(){
+            this.deviceStr = this.tableData.projectName
+            this.product = this.tableData.material
+        },
+    },
+    watch:{
+        formData(newVal){
+            if(newVal){
+                this.projectList = []
+                console.log(newVal)
+                this.tableData = newVal
+                this.initData()
+                // this.initProjectList(this.projectList)
+            }
+        }
+    },
 }
 </script>
 
diff --git a/src/views/quality/finishedProductInspection/index.vue b/src/views/quality/finishedProductInspection/index.vue
index fb3c9ca..288adcd 100644
--- a/src/views/quality/finishedProductInspection/index.vue
+++ b/src/views/quality/finishedProductInspection/index.vue
@@ -195,11 +195,25 @@
 			}
 		},
 		created() { },
+        watch:{
+        printFormData(newVal){
+            if(newVal){
+                this.printFormData = newVal
+            }
+        }
+    },
 		methods: {
             //鏌ョ湅鎶ュ憡鎸夐挳
-            showPrint(){
-                
-            },
+            // showPrint(row){
+            //     queryById(row.id).then(res=>{
+            //     console.log(res);
+            //     this.printFormData = res.data.data
+            //     this.printDialogVisible = true
+            // })
+            // .catch(error=>{
+            //     console.log(error);
+            // })
+            // },
             //鎵撳嵃鎸夐挳
             printFun() {
             this.printDialogVisible = false;
@@ -216,6 +230,7 @@
             showPrint(row){
                 queryById(row.id).then(res=>{
                     console.log(res);
+                this.printFormData = res.data.data
                     this.printDialogVisible = true
                 }).catch(error=>{
                     console.log(error);
diff --git a/src/views/quality/rawMaterial/rawMaterial-print.vue b/src/views/quality/rawMaterial/rawMaterial-print.vue
index 72a69d2..87d52aa 100644
--- a/src/views/quality/rawMaterial/rawMaterial-print.vue
+++ b/src/views/quality/rawMaterial/rawMaterial-print.vue
@@ -409,7 +409,7 @@
         this.tableData = this.formData
         this.initData()
         this.initProjectList(this.projectList)
-        // console.log("aa--",this.tableData)
+        console.log("aa--",this.tableData)
     },
     watch:{
         formData(newVal){

--
Gitblit v1.9.3