From a2c4dc4fbd62ac4e05b9318a1e05d147c8ae4d8c Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期三, 30 八月 2023 09:26:58 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.110.209:9001/r/lims-before

---
 src/views/inspectionManagement/reportForInspection/index.vue |  217 ++++++++++++++++++++++++++++++++----------------------
 1 files changed, 128 insertions(+), 89 deletions(-)

diff --git a/src/views/inspectionManagement/reportForInspection/index.vue b/src/views/inspectionManagement/reportForInspection/index.vue
index 2526f59..292601a 100644
--- a/src/views/inspectionManagement/reportForInspection/index.vue
+++ b/src/views/inspectionManagement/reportForInspection/index.vue
@@ -40,9 +40,33 @@
             <el-form-item>
               <el-button type="primary" @click="search">鏌ヨ</el-button>
               <el-button type="primary" plain @click="reset">閲嶇疆</el-button>
+              <el-button type="primary" icon="el-icon-plus" @click="addReportVisible = true">鏂板</el-button>
             </el-form-item>
             </el-form>
         </div>
+        <el-dialog
+          title="鏂板鍘熸潗鏂欐姤妫�"
+          :visible.sync="addReportVisible"
+          width="40%">
+          <el-form v-model="insertData" label-position="left" label-width="80px">
+            <el-form-item label="鏍囧噯绫诲瀷">
+              <el-input v-model="insertData.materialName" />
+            </el-form-item>
+            <el-form-item label="鐗╂枡鍚嶇О">
+              <el-input v-model="insertData.materialName" />
+            </el-form-item>
+            <el-form-item label="鎵ц鏍囧噯">
+              <el-input v-model="insertData.standardName" />
+            </el-form-item>
+            <el-form-item label="瑙勬牸鍨嬪彿">
+              <el-input v-model="insertData.specificationsName" />
+            </el-form-item>
+          </el-form>
+          <span slot="footer" class="dialog-footer">
+            <el-button @click="addReportVisible = false">鍙� 娑�</el-button>
+            <el-button type="primary" @click="insert()">纭� 瀹�</el-button>
+          </span>
+        </el-dialog>
         <div class="library-table">
           <div class="table-header">
             <div class="search-bar">
@@ -51,8 +75,9 @@
               </el-radio-group>
             </div>
             <div class="generateInsp">
-              <el-button @click="showNewPage = true" type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button>
+              <el-button @click="addReportBtn" type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button>
             </div>
+
           </div>
           <div class="table-box">
             <el-table
@@ -62,11 +87,13 @@
               :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
               :data="inspectionTable"
               style="width: 100%"
+              @selection-change="handleSelectionChange"
             >
               <el-table-column
                 type="selection"
-                min-width="10%"
-              /> 
+                :selectable="checkSelect"
+                min-width="5%">
+              </el-table-column> 
               <el-table-column
                 type="index"
                 label="搴忓彿"
@@ -129,9 +156,16 @@
               >
               <template slot-scope="scope">
                 <span :style="{ color: scope.row.type === 1 ? 'green' : 'red' }">
-                  {{ scope.row.type === 1 ? '宸叉娴�':'鏈娴�' }}
+                  {{ scope.row.type === 1 ? '宸叉姤妫�':'鏈姤妫�' }}
                 </span>
               </template>
+              </el-table-column>
+              <el-table-column
+                label="鎿嶄綔"
+                min-width="8%">
+                <template slot-scope="scope">
+                  <el-button type="text" size="small" @click="removeFun(scope.row)">鍒犻櫎</el-button>
+                </template>
               </el-table-column>
             </el-table>
             <!-- 鍒嗛〉鍣� -->
@@ -159,28 +193,28 @@
               <el-row>
                 <el-col  :span="8">
                   <el-form-item label="鏉ユ枡鏃ユ湡锛�">
-                    <el-input  style="width: 180px;" :value="inspectionForm.createTime" disabled autocomplete="off" />  
+                    <el-input  style="width: 180px;" :value="inspectionForm.formTime" disabled autocomplete="off" />  
                   </el-form-item>
                 </el-col>
                 <el-col  :span="8">
                   <el-form-item label="渚涘簲鍟嗗悕绉帮細">
-                    <el-input style="width: 180px;" :value="inspectionForm.supplier_name" disabled autocomplete="off" />                  </el-form-item>
+                    <el-input style="width: 180px;" :value="inspectionForm.supplier" disabled autocomplete="off" />                  </el-form-item>
                 </el-col>
                 <el-col  :span="8">
                   <el-form-item label="鏍峰搧缂栧彿锛�">
-                    <el-input style="width: 180px;" :value="inspectionForm.materialCoding" disabled autocomplete="off" />
+                    <el-input style="width: 180px;" :value="inspectionForm.code" disabled autocomplete="off" />
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row >
                 <el-col  :span="8">
                   <el-form-item label="鏍峰搧鍚嶇О锛�" >
-                    <el-input style="width: 180px;" :value="inspectionForm.materialName" disabled autocomplete="off" />
+                    <el-input style="width: 180px;" :value="inspectionForm.name" disabled autocomplete="off" />
                   </el-form-item>
                 </el-col>
                 <el-col  :span="8">
                   <el-form-item label="瑙勬牸鍨嬪彿锛�">
-                    <el-input style="width: 180px;" :value="inspectionForm.specificationsModels" disabled autocomplete="off" />                       
+                    <el-input style="width: 180px;" :value="inspectionForm.specifications" disabled autocomplete="off" />                       
                   </el-form-item>
                 </el-col>
                 <el-col  :span="8">
@@ -192,17 +226,17 @@
               <el-row >
                 <el-col  :span="8">
                   <el-form-item label="鏁伴噺锛�" >
-                    <el-input style="width: 180px;" :value="inspectionForm.quantity" disabled autocomplete="off" />                       
+                    <el-input style="width: 180px;" :value="inspectionForm.num" disabled autocomplete="off" />                       
                   </el-form-item>
                   </el-col>
                   <el-col :span="8">
                     <el-form-item label="鎶ユ鏃ユ湡锛�" >
-                      <el-input style="width: 180px;" :value="inspectionForm.dateSurvey" disabled autocomplete="off" />                       
+                      <el-input style="width: 180px;" :value="inspectionForm.endTime" disabled autocomplete="off" />                       
                     </el-form-item>
                   </el-col>
                   <el-col :span="8">
                     <el-form-item label="鎶ユ浜猴細">
-                        <el-input style="width: 180px;" :value="inspectionForm.surveyor" disabled autocomplete="off" />
+                        <el-input style="width: 180px;" :value="inspectionForm.userName" disabled autocomplete="off" />
                     </el-form-item>
                   </el-col>
                 </el-row>
@@ -213,7 +247,7 @@
           <div class="header">
             <span style="font-size: 14px">妫�楠岄」鐩�</span>
             <div>
-            <el-button  type="primary" plain size="mini">淇濆瓨</el-button>
+            <!-- <el-button  type="primary" plain size="mini">淇濆瓨</el-button> -->
             <el-button @click="showNewPage = false" type="primary" plain size="mini" icon="el-icon-back">杩斿洖</el-button>
           </div>
           </div>
@@ -223,22 +257,22 @@
               :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
               :data="inspectionItems">
             <el-table-column type="index" label="搴忓彿" width="60"></el-table-column>
-            <el-table-column prop="project" label="椤圭洰" width="250"></el-table-column>
+            <el-table-column prop="name" label="椤圭洰" width="250"></el-table-column>
             <el-table-column prop="unit" label="鍗曚綅" width="125"></el-table-column>
-            <el-table-column prop="standardVal" label="鏍囧噯鍊�" width="125"></el-table-column>
-            <el-table-column prop="controlVal" label="鍐呮祴鍊�" width="125"></el-table-column>
-            <el-table-column prop="detectionVal" label="妫�楠屽��" width="125"></el-table-column>
-            <el-table-column prop="checker" label="妫�楠屼汉">
+            <el-table-column prop="required" label="鏍囧噯鍊�" width="125"></el-table-column>
+            <el-table-column prop="internal" label="鍐呮祴鍊�" width="125"></el-table-column>
+            <el-table-column prop="testValue" label="妫�楠屽��" width="125"></el-table-column>
+            <el-table-column prop="userName" label="妫�楠屼汉">
               <template slot-scope="scope">
                 <el-select v-model="scope.row.checker" size="small" slot="append" style="width: 260px;">
-                    <el-option v-for="item in checkeroptions" :key="item.value" :label="item.label">{{ item.label }}</el-option>
+                    <el-option v-for="(item,index) in checkeroptions" :key="index" :value="item.value" :label="item.label">{{ item.label }}</el-option>
                 </el-select>
               </template>
             </el-table-column>
             <el-table-column prop="device" label="璇曢獙璁惧">
                 <template slot-scope="scope">
                 <el-select v-model="scope.row.device" size="small" slot="append" style="width: 260px;">
-                    <el-option v-for="item in deviceoptions" :key="item.value" :label="item.label">{{ item.label }}</el-option>
+                    <el-option v-for="(item,index) in deviceoptions" :key="index" :value="item.value" :label="item.label">{{ item.label }}</el-option>
                 </el-select>
             </template>
             </el-table-column>
@@ -249,10 +283,17 @@
 </template>
 
 <script>
-import { getRawMaterialList } from '@/api/inspection/rawmaterial'
+import { getRawMaterialList,addInspect,selectInspectsListById } from '@/api/inspection/rawmaterial'
 export default {
   data() {
     return {
+      insertData:{
+        
+      },
+      addReportVisible: false,
+      checked: false,
+      resultData : {},
+      checkData:[],
       form: [],
       searchData: {
         code: '',
@@ -313,80 +354,82 @@
       total:20,
       data: '',
       showNewPage: false,
-      inspectionForm:{
-        createTime: '2023-07-28',
-        supplier_name: '鍥界綉灞变笢鐪佺數鍔涙湁闄愬叕鍙�',
-        materialCoding: 'BP214274',
-        materialName: '閾濆寘閽㈢粸绾�',
-        specificationsModels: 'JLHA/G1A-185/30-26/7',
-        unit: '鍚�',
-        quantity: 21,
-        dateSurvey: '2023-08-02',
-        surveyor: '榛勫皬鏄�',
-        inspectionDate: '2023-12-09',
-      },
-      inspectionItems:[{
-        project:'瀵肩嚎澶栧緞',
-        unit: 'mm',
-        standardVal: '30.0',
-        controlVal: '30.0',
-        detectionVal: '30.0',
-        device:'',
-        checker: '',
-      },{
-        project:'瀵肩嚎澶栧緞',
-        unit: 'mm',
-        standardVal: '30.0',
-        controlVal: '30.0',
-        detectionVal: '30.0',
-        device:'',
-        checker: ''
-      },{
-        project:'瀵肩嚎澶栧緞',
-        unit: 'mm',
-        standardVal: '30.0',
-        controlVal: '30.0',
-        detectionVal: '30.0',
-        device:'',
-        checker: ''
-      },{
-        project:'瀵肩嚎澶栧緞',
-        unit: 'mm',
-        standardVal: '30.0',
-        controlVal: '30.0',
-        detectionVal: '30.0',
-        device:'',
-        checker: ''
-      },{
-        project:'瀵肩嚎澶栧緞',
-        unit: 'mm',
-        standardVal: '30.0',
-        controlVal: '30.0',
-        detectionVal: '30.0',
-        device:'',
-        checker: ''
-      },{
-        project:'瀵肩嚎澶栧緞',
-        unit: 'mm',
-        standardVal: '30.0',
-        controlVal: '30.0',
-        detectionVal: '30.0',
-        device:'',
-        checker: ''
-      }]
+      inspectionForm:{},
+      inspectionItems:[]
     }
   },
   created(){
     this.getRawMaterialList()
   },
   methods: {
+    removeFun(row){
+      this.$confirm('纭鍒犻櫎璇ユ暟鎹悧?', '鎻愮ず', {
+          confirmButtonText: '纭畾',
+          cancelButtonText: '鍙栨秷',
+          type: 'warning'
+        }).then(() => {
+          this.$message({
+            type: 'success',
+            message: '鍒犻櫎鎴愬姛!'
+          });
+        }).catch(() => {});
+    },
+    checkSelect(row,index){
+      if(row.type === 1){
+        return false;
+      }else{
+        return true;
+      }
+    },
+    handleSelectionChange(val){
+      this.checkData = val;
+      console.log(val);
+    },
+    //鐢熸垚鎶ユ鍗曟寜閽�
+    addReportBtn(){
+      let arr = this.checkData;
+      if(arr.length < 1){
+        this.$message.error("璇烽�夋嫨涓�鏉℃暟鎹�!");
+      }else{
+        if(arr.length > 1){
+          this.$message.error("鏈�澶氶�夋嫨涓�鏉℃暟鎹�!");
+        }else{
+          //娣诲姞鎶ユ鍗�
+          let val = arr[0];
+          let obj = {
+            "endTime": val.dateSurvey,
+            "experiment": "",
+            "formTime": val.createTime,
+            "id": val.id,
+            "mcode": val.materialCoding,
+            "name": val.materialName,
+            "num": val.quantity,
+            "specifications": val.specificationsModels,
+            "startTime": val.inspectionDate,
+            "supplier": val.supplierName,
+            "type": val.type,
+            "unit": val.unit,
+            "version": val.version
+          }
+          this.createReport(obj);
+          this.showNewPage = true;
+        }
+      }
+    },
+    //鐢熸垚鎶ヤ环鍗�
+    async createReport(param){
+      await addInspect(param);
+      const res2 = await selectInspectsListById({ id : 59});
+      this.resultData = res2.data;
+      this.inspectionForm = res2.data;
+      this.inspectionItems = res2.data.insProducts;
+
+    },
     // 鑾峰彇鍒嗛〉鍒楄〃鏁版嵁
     async getRawMaterialList(){
       const res = await getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize})
-      // console.log(res)
       this.inspectionTable = res.data.row
       this.data = res.data.row
-      console.log(res.data.row);
       this.total = res.data.total
     },
     async search(){
@@ -398,7 +441,6 @@
         pageNo: this.currentPage,
         pageSize: this.pageSize
       })
-      // console.log(res)
       this.inspectionTable = res.data.row
       this.data = res.data.row
       this.total = res.data.total
@@ -414,7 +456,6 @@
     },
     radioclick(){
       this.searchData.state = this.radioValue
-      // console.log(this.radioValue)
       this.inspectionTable = this.data.filter((item)=>{
         return item.condition === this.radioValue
       })
@@ -425,13 +466,11 @@
     },
     // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
     handleSizeChange(val) {
-      console.log(`姣忛〉 ${val} 鏉)
       this.pageSize = val
       this.getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize})
     },
     // 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
     handleCurrentChange(val) {
-      console.log(`褰撳墠椤�: ${val}`)
       this.currentPage = val
       this.getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize})
     }
@@ -439,7 +478,7 @@
 }
 </script>
 
-<style scoped>
+<style scoped lang="scss">
 .content-main{
   height: 100%;
   .top-bar{

--
Gitblit v1.9.3