From a28a7e0dc8992c39004ad0b34d2624390024f3af Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期六, 14 九月 2024 15:41:19 +0800
Subject: [PATCH] 新增扫码报检、查看记录列表功能

---
 src/components/view/b1-report-preparation.vue          |    2 
 src/components/do/b1-report-preparation/order.vue      |   80 ++++++++++-
 src/components/do/b1-inspect-order-plan/Inspection.vue |  144 ++++++++++++--------
 src/components/view/b1-inspect-order-plan.vue          |  133 ++++++++++++++++--
 src/components/view/b1-sample.vue                      |   13 -
 src/assets/api/controller.js                           |    2 
 6 files changed, 279 insertions(+), 95 deletions(-)

diff --git a/src/assets/api/controller.js b/src/assets/api/controller.js
index 91b1415..a050408 100644
--- a/src/assets/api/controller.js
+++ b/src/assets/api/controller.js
@@ -214,6 +214,8 @@
   jumpTeam: "/insOrderPlan/jumpTeam", // 鎻掗槦
   chooseVersion: "/insOrderPlan/chooseVersion", // 鐢佃矾妫�楠岀増鏈�
   getInsProduct2: "/insOrderPlan/getInsProduct2", // 鏌ョ湅鍘嗗彶鐗堟湰鏈�
+  scanInsOrderState: "/insOrderPlan/scanInsOrderState", // 鎵爜鎶ユ鎺ュ彛
+  getInsOrderUserList: "/insOrderPlan/getInsOrderUserList", // 鏌ョ湅妫�楠屽巻鍙插垪琛�
 }
 
 const systemLog = {
diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index 9f76b1c..0729ec1 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -323,47 +323,24 @@
           </el-radio-group> -->
         </div>
         <div style="display: flex;align-items: center;">
-          <span v-if="casing.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�'">&nbsp;&nbsp;濂楃锛�</span>
-          <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,3)" v-if="casing.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
-            <el-option
-              v-for="item in casing"
-              :key="item.id"
-              :label="item.color"
-              :value="item.id">
-              <span style="float: left">{{ item.color}}</span>
-              <el-tag :type="item.state==1?'success':'danger'" style="float: right;margin-top: 5px;" size="small">{{ item.state==1?'宸叉':'鏈' }}</el-tag>
-            </el-option>
-          </el-select>
-          <span v-if="fibers.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'">&nbsp;&nbsp;鍏夌氦甯︼細</span>
-          <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,1)" v-if="fibers.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
-            <el-option
-              v-for="item in fibers"
-              :key="item.value"
-              :label="item.code"
-              :value="item.id">
-              <span style="float: left">{{ item.code}}</span>
-              <el-tag :type="item.state==1?'success':'danger'" style="float: right;margin-top: 5px;" size="small">{{ item.state==1?'宸叉':'鏈' }}</el-tag>
-            </el-option>
-          </el-select>
-          <span v-if="fiber.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'">&nbsp;&nbsp;鍏夌氦锛�</span>
-          <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,2)" v-if="fiber.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
-            <el-option
-              v-for="item in fiber"
-              :label="item.bushColor+'-'+item.color"
-              :key="item.id"
-              :value="item.id">
-              <span style="float: left">{{ item.bushColor+'-'+item.color }}</span>
-              <el-tag :type="item.state==1?'success':'danger'" style="float: right;margin-top: 5px;" size="small">{{ item.state==1?'宸叉':'鏈' }}</el-tag>
-            </el-option>
-          </el-select>
+          <el-form :inline="true" :model="otherForm" class="form-inline" label-width="50px" style="padding-top: 0;padding-left: 10px;" v-if="PROJECT=='妫�娴嬩腑蹇�'">
+            <el-form-item label="娓╁害:" style="margin-bottom: 0;">
+              <el-input v-model="otherForm.temperature" :disabled="state>1" size="small" placeholder="" style="width: 90px;" @change="m=>subOtherForm(m,'temperature')" ></el-input>
+              <span style="margin-left: 4px;">鈩�</span>
+            </el-form-item>
+            <el-form-item label="婀垮害:" style="margin-bottom: 0;">
+              <el-input v-model="otherForm.humidity" :disabled="state>1" size="small" placeholder="" style="width: 90px;" @change="m=>subOtherForm(m,'humidity')"></el-input>
+              <span style="margin-left: 4px;">%</span>
+            </el-form-item>
+          </el-form>
           <el-button type="primary" size="small" v-if="(isGet||tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'&&temDataAcquisition)&&PROJECT=='妫�娴嬩腑蹇�'&&state==1" @click="getDataAcquisitionDevice" :loading="dataAcquisitionLoading">鏁版嵁閲囬泦</el-button>
           <el-button :type="dataAcquisitionEidtAble?'':'primary'" size="small" v-if="(isGet||(tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'))&&PROJECT=='妫�娴嬩腑蹇�'&&collected&&state==1" @click="dataAcquisitionEidtAble=!dataAcquisitionEidtAble">{{dataAcquisitionEidtAble?'鍏抽棴缂栬緫':'缂栬緫鏁伴噰'}}</el-button>
         </div>
-        <div class="history-btn" v-if="isLook">
+        <!-- <div class="history-btn" v-if="isLook">
           <el-button type="primary" icon="el-icon-arrow-left" size="small" @click="goHistory(-1)">涓婁竴鏉¤褰�</el-button>
           <span style="font-size: 14px;margin: 0 10px;">褰撳墠绗瑊{num}}鏉�</span>
           <el-button type="primary" size="small" @click="goHistory(1)">涓嬩竴鏉¤褰�<i class="el-icon-arrow-right el-icon--right"></i></el-button>
-        </div>
+        </div> -->
       </div>
       <!-- 甯歌妫�楠屽師濮嬭褰� -->
       <div class="center-box" id="nav" v-loading="tableLoading" v-if="!tableLists.find(m=>m.templateId==currentTable)||(!tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙'))">
@@ -859,6 +836,25 @@
         <el-button type="primary" :loading="versionLoading" @click="saveVersion">纭� 瀹�</el-button>
       </span>
     </el-dialog>
+    <el-dialog title="璇曢獙淇℃伅" :visible.sync="experimentDia" width="400px">
+      <div class="body" style="display: flex;padding: 10px;align-items: center;">
+        <div class="search_label" style="width: 150px;"><span class="required-span">*</span>瀹為獙闃舵</div>
+        <div class="search_input" style="width: 100%;">
+          <el-input clearable v-model="experimentInfo.term" size="small" placeholder=""></el-input>
+        </div>
+      </div>
+      <div class="body" style="display: flex;padding: 10px;align-items: center;">
+        <div class="search_label" style="width: 150px;"><span class="required-span">*</span>瀹為獙鎿嶄綔</div>
+        <div class="search_input" style="width: 100%;">
+          <el-input clearable v-model="experimentInfo.note" size="small" placeholder="" type="textarea"
+          :rows="2"></el-input>
+        </div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="experimentDia = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="submit0">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -879,6 +875,11 @@
     },
     data() {
       return {
+        experimentDia:false,
+        experimentInfo:{
+          note:'',
+          term:''
+        },
         currentNum:0,
         versionLoading:false,
         versionDialogVisible:false,
@@ -968,7 +969,6 @@
         },
         upIndex: 0,
         changeType:null,
-        getReportModelLoading:false,
         insOrder: {},
         sampleProduct: [],
         typeList: [],
@@ -1050,7 +1050,11 @@
         changeType:null,
         getDataTypeId:'',
         getDataType:null,
-        num:0
+        num:0,
+        otherForm:{
+          temperature:'',
+          humidity:''
+        }
       }
     },
     // 鐢ㄤ簬涓婁紶鏂囦欢鐨勪俊鎭�
@@ -1104,6 +1108,14 @@
           this.sampleProduct = res.data.sampleProduct
           this.currentSample = this.HaveJson(this.sampleProduct[0])
           let insProduct = this.HaveJson(this.currentSample.insProduct)
+          // 娓╁害銆佹箍搴﹁祴鍊�
+          if(insProduct&&insProduct.length>0){
+            let {temperature,humidity} = insProduct[0];
+            this.otherForm = {
+              temperature:temperature?temperature:null,
+              humidity:humidity?humidity:null,
+            }
+          }
           // 鑾峰彇褰撳墠鏍峰搧鐨勬楠岄」
           let list = await this.getCurrentProduct(this.currentSample.id,0)
           this.currentSample.insProduct = this.HaveJson(list)
@@ -1124,7 +1136,6 @@
             }
           })
           this.determineWhetherToCollectData()//鏄惁闇�瑕佹暟閲�
-          this.getReportModel(this.currentSample.id)//鑾峰彇濂楃銆佸厜绾ゅ甫銆佸厜绾や俊鎭�
           if (this.currentSample.index == undefined) this.currentSample['index'] = 1
           let bushing = this.currentSample.bushing
           this.getTableLists();//澶勭悊妯℃澘鍒楄〃淇℃伅
@@ -1174,7 +1185,6 @@
                   }
                 }
               })
-              this.getReportModel(this.currentSample.id)//鑾峰彇濂楃銆佸厜绾ゅ甫銆佸厜绾や俊鎭�
               // 鍘婚噸妯℃澘锛岃繑鍥炴湁鍑犱釜妯℃澘
               const mySet1 = new Set();
               this.tableLists = this.currentSample.insProduct.filter(m => {
@@ -2040,6 +2050,25 @@
         this.saveInsContext()
       },
       // 鐑惊鐜�---缁撴潫
+      // 淇濆瓨婀垮害銆佹俯搴︽暟鎹�
+      subOtherForm(m,type){
+        let ids = []
+        for (let i in this.param) {
+          ids.push(i)
+        }
+        this.$axios.post(this.$api.insOrderPlan.write,{
+          [type]:Number(m),
+          ids
+        }, {
+          headers: {
+            'Content-Type': 'application/json'
+          },
+          noQs:true
+        }).then(res => {
+          if (res.code == 201) return
+          this.$message.success('淇濆瓨鎴愬姛')
+        })
+      },
       // 鏉冮檺鑾峰彇
       getPower(){
         let power = JSON.parse(sessionStorage.getItem('power'))
@@ -2120,8 +2149,6 @@
             }
           }
         })
-        // 鑾峰彇濂楃,鍏夌氦甯�,鍏夌氦鏁版嵁
-        this.getReportModel(row.id)
         let bushing = this.currentSample.bushing
         if(bushing&&bushing.length>0){
           this.bushing = bushing
@@ -2150,19 +2177,6 @@
           return true
         }
       },
-      // 鑾峰彇濂楃,鍏夌氦甯�,鍏夌氦鏁版嵁
-      getReportModel(id){
-        if(this.PROJECT!='妫�娴嬩腑蹇�'){
-          return
-        }
-        this.getReportModelLoading = true
-        this.$axios.post(this.$api.insOrderPlan.getReportModel+'?sampleId='+id, {}).then(res => {
-          this.getReportModelLoading = false
-          this.fibers = res.data['鍏夌氦甯�']
-          this.fiber = res.data['鍏夌氦']
-          this.casing = res.data['濂楃']
-        })
-      },
       // 濂楃,鍏夌氦甯�,鍏夌氦绛夊垏鎹�,瀵瑰簲鍘熷璁板綍妯℃澘涔熻鍒囨崲
       async handleChange(m,type){
         this.changeType = type
@@ -2184,8 +2198,6 @@
             })
             // 椤甸潰鍒楄〃鏁版嵁澶勭悊
             this.getTableLists0(list)
-            // 鑾峰彇濂楃,鍏夌氦甯�,鍏夌氦鏁版嵁
-            this.getReportModel(this.currentSample.id)
             // 鍚戝绾跨▼淇濆瓨鏁版嵁
             this.worker.postMessage(JSON.stringify({
               type: 'saveData',
@@ -3139,13 +3151,25 @@
           this.$message.error('鏈緭鍏ヤ笉閫氳繃鍘熷洜')
         }
       },
-      handleSubmit(){
+      submit0(){
+        if(!this.experimentInfo.term){
+          this.$message.error('璇疯緭鍏ュ疄楠岄樁娈�')
+          return
+        }
+        if(!this.experimentInfo.note){
+          this.$message.error('璇疯緭鍏ュ疄楠屾搷浣�')
+          return
+        }
+        this.experimentDia = false
         if(this.insOrder.orderType=='C'){
           this.verifyUser = this.insOrder.prepareUserId
           this.submit()
         }else{
           this.addVerifyDia = true
         }
+      },
+      handleSubmit(){
+        this.experimentDia = true
       },
       submit() {
         if (this.verifyUser === null || this.verifyUser === '') {
@@ -3164,7 +3188,8 @@
                 orderId: this.orderId,
                 laboratory: this.sonLaboratory,
                 verifyUser: this.verifyUser,
-                entrustCode: this.insOrder.entrustCode
+                entrustCode: this.insOrder.entrustCode,
+                ...this.experimentInfo
               }).then(res => {
                 if (res.code === 200) {
                   this.$message.success("鎿嶄綔鎴愬姛")
@@ -3196,7 +3221,8 @@
                 this.$axios.post(this.$api.insOrderPlan.submitPlan, {
                   orderId: this.orderId,
                   laboratory: this.sonLaboratory,
-                  verifyUser: this.verifyUser
+                  verifyUser: this.verifyUser,
+                  ...this.experimentInfo
                 }).then( res => {
                   if (res.code === 200) {
                     this.submitLoading = false;
diff --git a/src/components/do/b1-report-preparation/order.vue b/src/components/do/b1-report-preparation/order.vue
index 82cc51b..2e76157 100644
--- a/src/components/do/b1-report-preparation/order.vue
+++ b/src/components/do/b1-report-preparation/order.vue
@@ -34,7 +34,7 @@
     <el-dialog
       title="鐢熸垚鎶ュ憡"
       :visible.sync="dialogVisible"
-      width="30%"
+      width="60%"
       :append-to-body="true"
       :modal="!dialogVisible0"
       >
@@ -44,9 +44,51 @@
           <span>{{ item.laboratory }}</span>
           <!-- <el-checkbox v-model="item.checked"></el-checkbox> -->
         </div>
-        <el-radio-group v-model="item.numValue" ref="radio">
+        <!-- <el-radio-group v-model="item.numValue" ref="radio">
           <el-radio :label="m.value" v-for="(m,i) in item.arr" :key="i"><el-link type="primary" @click="lookDetail(item,m.value)">{{ m.label }}</el-link></el-radio>
-        </el-radio-group>
+        </el-radio-group> -->
+        <el-table
+          :data="item.insOrderUserList"
+          border
+          style="width: 100%" @selection-change="list=>handleSelectionChange(list,item.insOrderUserList)">
+          <el-table-column
+            type="selection"
+            width="55">
+          </el-table-column>
+          <el-table-column
+            prop="submitTime"
+            label="鎻愪氦鏃ユ湡"
+            width="150">
+          </el-table-column>
+          <el-table-column
+            prop="submitUserName"
+            label="鎻愪氦浜�"
+            width="90">
+          </el-table-column>
+          <el-table-column
+            prop="term"
+            label="瀹為獙闃舵"
+            width="120">
+          </el-table-column>
+          <el-table-column
+            prop="note"
+            label="瀹為獙鎿嶄綔"
+            width="120">
+          </el-table-column>
+          <el-table-column
+            prop="tell"
+            label="鍐嶆妫�楠屽師鍥�"
+            width="120">
+          </el-table-column>
+          <el-table-column
+            fixed="right"
+            label="鎿嶄綔"
+            width="100">
+            <template slot-scope="scope">
+              <el-button @click="lookDetail(item,scope.row.num)" type="text" size="small">鏌ョ湅</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
       </el-card>
       <span slot="footer" class="dialog-footer">
         <el-button :loading="loading0" @click="handleNoCreate">涓嶇敓鎴�</el-button>
@@ -221,16 +263,26 @@
     },
     // 鐢熸垚鎶ュ憡
     handleCreate(){
+      let arr = []
+      this.historyList.forEach(item => {
+        item.insOrderUserList.forEach(item1 => {
+          if(item1.state==1){
+            arr.push({
+              laboratory:item.laboratory,
+              num:item1.num
+            })
+          }
+        })
+      })
+      if(arr.length==0){
+        this.$message.error("璇峰厛閫夋嫨闇�瑕佺敓鎴愮殑璁板綍锛�")
+        return
+      }
       this.loading1 = true
       this.$axios.post(this.$api.insReport.isReport, {
         id:this.currentInfo.id,
         state:1,
-        insReportDto1s:this.historyList.map(item => {
-          return{
-            laboratory:item.laboratory,
-            num:item.numValue
-          }
-        })
+        insReportDto1s:arr
       },{
         headers: {
           'Content-Type': 'application/json'
@@ -279,6 +331,16 @@
         inspectorList:inspectorList,
         ...row
       }
+    },
+    handleSelectionChange(list,list0){
+      list0.forEach(item => {
+        let obj = list.find(item0 => item0.id == item.id)
+        if(obj){
+          item.state = 1
+        }else{
+          item.state = 0
+        }
+      })
     }
   }
 }
diff --git a/src/components/view/b1-inspect-order-plan.vue b/src/components/view/b1-inspect-order-plan.vue
index bb8207d..cfc8100 100644
--- a/src/components/view/b1-inspect-order-plan.vue
+++ b/src/components/view/b1-inspect-order-plan.vue
@@ -138,7 +138,7 @@
 			<div class="center">
 				<div class="center-options">
 					<el-row>
-						<el-col :span="21">
+						<el-col :span="18">
 							<div style="display: flex;align-items: center;margin-bottom: 10px;">
 								<ul class="tab">
 									<li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label.replace('璇曢獙瀹�','')}}
@@ -150,8 +150,9 @@
 								</div>
 							</div>
 						</el-col>
-						<el-col :span="3">
+						<el-col :span="6">
 							<div class="center-title">
+                <el-button size="small" type="primary" @click="handleCode" style="margin-right: 16px;">鎵爜鎶ユ</el-button>
 								<span>鎬昏浠诲姟鏁伴噺:</span>
 								<span>{{total}}</span>
 							</div>
@@ -244,7 +245,7 @@
             <el-button @click="handleConnect(scope.row)" type="text" size="small" :disabled="scope.row.userName == null || scope.row.insState == 5  || scope.row.insState == 3||scope.row.insState == 6||(scope.row.userName&&!scope.row.userName.includes(userName))" v-if="connect">浜ゆ帴</el-button>
             <el-button @click="handleReview(scope.row)" type="text" size="small" :disabled="scope.row.userName == null || scope.row.insState != 3 ||(scope.row.checkName&&!scope.row.checkName.includes(userName))" v-if="review">澶嶆牳</el-button>
             <el-button @click="claimFun(scope.row)" type="text" size="small" :disabled="scope.row.userName != null || scope.row.checkName!=null" v-if="claim">璁ら</el-button>
-            <el-button @click="lookHistory(scope.row)" type="text" size="small" :disabled="!scope.row.num1 || scope.row.num1<1" v-if="getInsProduct2">鏌ョ湅璁板綍</el-button>
+            <el-button @click="lookHistory0(scope.row)" type="text" size="small" :disabled="!scope.row.num1 || scope.row.num1<1">鏌ョ湅璁板綍</el-button>
           </template>
           </el-table-column>
         </el-table>
@@ -306,12 +307,53 @@
 						:componentData="componentDataDataLook"/>
 				</div>
 			</el-dialog>
+      <el-dialog title="鏌ョ湅璁板綍" :visible.sync="historyDialogVisible" width="50%">
+        <el-table
+          :data="historyList"
+          border
+          style="width: 100%">
+          <el-table-column
+            prop="submitTime"
+            label="鎻愪氦鏃ユ湡"
+            width="150">
+          </el-table-column>
+          <el-table-column
+            prop="submitUserName"
+            label="鎻愪氦浜�"
+            width="90">
+          </el-table-column>
+          <el-table-column
+            prop="term"
+            label="瀹為獙闃舵"
+            width="120">
+          </el-table-column>
+          <el-table-column
+            prop="note"
+            label="瀹為獙鎿嶄綔"
+            width="120">
+          </el-table-column>
+          <el-table-column
+            prop="tell"
+            label="鍐嶆妫�楠屽師鍥�"
+            width="120">
+          </el-table-column>
+          <el-table-column
+            fixed="right"
+            label="鎿嶄綔"
+            width="100">
+            <template slot-scope="scope">
+              <el-button @click="lookHistory(scope.row)" type="text" size="small">鏌ョ湅</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+			</el-dialog>
+      <input type="text" id="ScanCodeInfo" v-model="codeInfo" @keyup.enter="keyup" style="opacity: 0;height: 0px;margin: 0px;padding: 0px;position: absolute;top: 0;"  autocomplete="off"></input>
   </div>
 </template>
 
 <script>
 	import ValueTable from '../tool/value-table.vue'
-  	import Inspection from '../do/b1-inspect-order-plan/Inspection.vue'
+  import Inspection from '../do/b1-inspect-order-plan/Inspection.vue'
 	import {
 		getYearAndMonthAndDays
 	} from '../../util/date'
@@ -325,6 +367,9 @@
 		},
 		data() {
 			return {
+        currentHistory:{},
+        historyDialogVisible:false,
+        historyList:[],
         orderStateId:null,
         version:null,
 				examine: null,
@@ -542,6 +587,9 @@
         inspection:false,
         isLook:false,//鏄惁鏄煡鐪嬪巻鍙查〉闈�
         num1:null,
+        codeInfo:null,
+        startTime:null,
+        scanInsOrderState:false
 			}
 		},
 		created() {
@@ -559,6 +607,45 @@
       }
 		},
 		methods: {
+      // 鎵爜鎶ユ
+      handleCode(){
+        let input = document.getElementById('ScanCodeInfo');
+        console.log(1234567,input,this.startTime)
+        input.focus();
+        this.startTime&&clearInterval(this.startTime)
+        this.startTime = setInterval(()=>{
+            input.focus()
+        },1000)
+      },
+      // 鎵爜鏋寜涓�
+      keyup(e){
+        var code = ''
+        // console.log(3333,this.codeInfo)
+        try{
+          code = JSON.parse(this.codeInfo)
+          if(code==null||code==undefined||code==''){
+            this.$message.error('璇ヤ簩缁寸爜鏈夎')
+          }else{
+            this.$axios.post(this.$api.insOrderPlan.scanInsOrderState,
+              {
+                sonLaboratory: this.componentData.entity.sonLaboratory,
+                sampleCode: code
+              }
+            ).then(res => {
+              if(res.code==200){
+                this.$message({
+                  type: 'success',
+                  message: '鎶ユ鎴愬姛'
+                })
+              }
+              this.refreshTable()
+            })
+          }
+        }catch(e){
+          this.$message.error('璇ヤ簩缁寸爜鏈夎')
+        }
+        this.codeInfo = null
+      },
       // 鎷栨嫿
       initializeSortable() {
         const tableBody = this.$refs.table0.$el.querySelector('.el-table__body-wrapper > table > tbody');
@@ -611,7 +698,8 @@
 				let review = false
         let claim = false
         let jumpTeam = false
-        let getInsProduct2 = false
+        // let getInsProduct2 = false
+        // let getInsOrderUserList = false
 				for (var i = 0; i < power.length; i++) {
 					if (power[i].menuMethod == 'doInsOrder') {
 						inspection = true
@@ -628,13 +716,16 @@
           if (power[i].menuMethod == 'jumpTeam') {
 						jumpTeam = true
 					}
-          if (power[i].menuMethod == 'getInsProduct2') {
-						getInsProduct2 = true
+          // if (power[i].menuMethod == 'getInsProduct2') {
+					// 	getInsProduct2 = true
+					// }
+          if (power[i].menuMethod == 'scanInsOrderState') {
+						this.scanInsOrderState = true
 					}
 				}
-        if (!getInsProduct2) {
-					this.componentData.do.splice(5, 1)
-				}
+        // if (!getInsProduct2) {
+				// 	this.componentData.do.splice(5, 1)
+				// }
 				if (!claim) {
 					this.componentData.do.splice(4, 1)
 				}
@@ -647,7 +738,7 @@
 				if (!inspection) {
 					this.componentData.do.splice(1, 1)
 				}
-        this.getInsProduct2 = getInsProduct2
+        // this.getInsProduct2 = getInsProduct2
         this.claim = claim
         this.review = review
         this.connect = connect
@@ -671,7 +762,7 @@
 					this.sampleUserForm = {
 						entrustCode: row.entrustCode,
 						insSampleId: row.id,
-            			sonLaboratory: row.sonLaboratory,
+            sonLaboratory: row.sonLaboratory,
 					}
 					this.claimVisible = true
 				}
@@ -890,13 +981,23 @@
 					this.personList = data
 				})
 			},
+      lookHistory0(row){
+        this.currentHistory = row
+        this.$axios.post(this.$api.insOrderPlan.getInsOrderUserList, {
+          insOrderStateId:row.orderStateId,
+        }).then(res => {
+          this.historyList = res.data
+          this.historyDialogVisible = true
+        })
+      },
       lookHistory(row){
         this.isLook = true
         this.state = 2;
-        this.orderId = row.id
-        this.version = row.version
-        this.orderStateId = row.orderStateId
-        this.num1 = row.num1
+        this.orderId = this.currentHistory.id
+        this.version = this.currentHistory.version
+        this.orderStateId = this.currentHistory.orderStateId
+        this.num1 = row.num
+        this.historyDialogVisible = false
       }
 		}
 	}
diff --git a/src/components/view/b1-report-preparation.vue b/src/components/view/b1-report-preparation.vue
index 9b5d017..9ee34de 100644
--- a/src/components/view/b1-report-preparation.vue
+++ b/src/components/view/b1-report-preparation.vue
@@ -179,7 +179,7 @@
         <i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen=true;" v-if="!fullscreen"></i>
         <img src="../../../static/img/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen=false;" >
       </div>
-      <div style="height: 80vh;">
+      <div style="height: 80vh;" v-if="approveVisible">
          <onlyoffice ref="onlyoffice" :options="option" style="width: 100%;height: 100%;" />
       </div>
       <span slot="footer" class="dialog-footer">
diff --git a/src/components/view/b1-sample.vue b/src/components/view/b1-sample.vue
index 1f7589a..fe838ae 100644
--- a/src/components/view/b1-sample.vue
+++ b/src/components/view/b1-sample.vue
@@ -446,20 +446,13 @@
     methods: {
       keyup(e){
         var code = ''
-        var str = {}
-        var that = this;
-        console.log(3333,this.codeInfo)
+        // console.log(3333,this.codeInfo,e)
         try{
             code = JSON.parse(this.codeInfo)
-            if(code.moNo2==null||code.moNo2==undefined||code.moNo2==''){
+            if(code==null||code==undefined||code==''){
                 this.$message.error('璇ヤ簩缁寸爜鏈夎')
             }else{
-                str = {
-                    moNo2: code.moNo2,
-                }
-                // if(this.storageVisible){
-                // }else if(this.exportVisible){}
-                this.sampleCode = code.moNo2
+                this.sampleCode = code
             }
         }catch(e){
             this.$message.error('璇ヤ簩缁寸爜鏈夎')

--
Gitblit v1.9.3