From 5fa8a62362c5a12f68d53e0a2e9e1f5d8d562356 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 25 三月 2025 10:03:39 +0800
Subject: [PATCH] 检验任务时间排序修改

---
 src/components/view/b1-inspect-order-plan.vue | 2355 ++++++++++++++++++++++++++++------------------------------
 1 files changed, 1,151 insertions(+), 1,204 deletions(-)

diff --git a/src/components/view/b1-inspect-order-plan.vue b/src/components/view/b1-inspect-order-plan.vue
index 2cfc34e..e24c5f2 100644
--- a/src/components/view/b1-inspect-order-plan.vue
+++ b/src/components/view/b1-inspect-order-plan.vue
@@ -1,286 +1,252 @@
 <style scoped>
-	.ins-order-plan-main .title {
-		font-size: 20px;
-		color: #3A7BFA
-	}
+.ins-order-plan-main .title {
+  font-size: 20px;
+  color: #3A7BFA
+}
 
-	.search {
-		background-color: #fff;
-		height: 80px;
-		display: flex;
-		align-items: center;
-	}
+.search {
+  background-color: #fff;
+  height: 80px;
+  display: flex;
+  align-items: center;
+}
 
-	.search_thing {
-		display: flex;
-		align-items: center;
-		height: 50px;
-	}
+.search_thing {
+  display: flex;
+  align-items: center;
+  height: 50px;
+}
 
-	.search_label {
-		width: 120px;
-		font-size: 14px;
-		text-align: right;
-	}
+.search_label {
+  width: 120px;
+  font-size: 14px;
+  text-align: right;
+}
 
-	.search_input {
-		width: calc(100% - 120px);
-	}
+.search_input {
+  width: calc(100% - 120px);
+}
 
-	.ins-order-plan-main .search {
-		width: 100%;
-		margin-bottom: 10px;
-		height: 80px;
-		background-color: #fff;
-		border-radius: 3px;
-	}
+.ins-order-plan-main .search {
+  width: 100%;
+  margin-bottom: 10px;
+  height: 80px;
+  background-color: #fff;
+  border-radius: 3px;
+}
 
-	.search .form-inline {
-		height: 50px;
-		padding-top: 20px;
-		padding-left: 50px;
-	}
+.search .form-inline {
+  height: 50px;
+  padding-top: 20px;
+  padding-left: 50px;
+}
 
-	.ins-order-plan-main .center {
-		width: calc(100% - 40px);
-		height: calc(100% - 60px - 80px - 40px);
-		background-color: #fff;
-		border-radius: 3px;
-		padding: 20px;
-	}
+.ins-order-plan-main .center {
+  width: calc(100% - 40px);
+  height: calc(100% - 60px - 80px - 40px);
+  background-color: #fff;
+  border-radius: 3px;
+  padding: 20px;
+}
 
-	.ins-order-plan-main .center .value-table {
-		width: 100%;
-		height: calc(100% - 68px);
-	}
+.ins-order-plan-main .center .value-table {
+  width: 100%;
+  height: calc(100% - 68px);
+}
 
-	.tab {
-		list-style-type: none;
-		display: flex;
-	}
+.tab {
+  list-style-type: none;
+  display: flex;
+}
 
-	.tab li {
-		line-height: 24px;
-		padding: 6px 14px;
-		font-size: 14px;
-		color: #333333;
-		border: 1px solid #EEEEEE;
-		cursor: pointer;
-	}
+.tab li {
+  line-height: 24px;
+  padding: 6px 14px;
+  font-size: 14px;
+  color: #333333;
+  border: 1px solid #EEEEEE;
+  cursor: pointer;
+}
 
-	.tab li:nth-child(1) {
-		border-radius: 8px 0 0 8px;
-	}
+.tab li:nth-child(1) {
+  border-radius: 8px 0 0 8px;
+}
 
-	.tab li:nth-last-child(1) {
-		border-radius: 0 8px 8px 0;
-	}
+.tab li:nth-last-child(1) {
+  border-radius: 0 8px 8px 0;
+}
 
-	.tab li.active {
-		border-color: #3A7BFA;
-		color: #3A7BFA;
-	}
+.tab li.active {
+  border-color: #3A7BFA;
+  color: #3A7BFA;
+}
 
-	.center .center-options .center-title {
-		width: 100%;
-		display: flex;
-		align-items: center;
-		justify-content: right;
-	}
+.center .center-options .center-title {
+  width: 100%;
+  display: flex;
+  align-items: center;
+  justify-content: right;
+}
 
-	.center .center-options .center-title span:last-child {
-		color: #3A7BFA;
-		font-size: 23px;
-		font-weight: 400;
-	}
+.center .center-options .center-title span:last-child {
+  color: #3A7BFA;
+  font-size: 23px;
+  font-weight: 400;
+}
 
-	.view-self-checkbox {
-		margin-left: 50px;
-	}
-  .draggable-row {
-    cursor: move;
-    position: relative;
-  }
-  .node_i {
-    color: orange;
-    font-size: 18px;
-  }
-  .custom-tree-node .el-button {
-    opacity: 0;
-  }
+.view-self-checkbox {
+  margin-left: 50px;
+}
 
-  .custom-tree-node:hover .el-button {
-    opacity: 1;
-  }
-  .el-dialog {
-    position: relative;
-  }
+.draggable-row {
+  cursor: move;
+  position: relative;
+}
+
+.node_i {
+  color: orange;
+  font-size: 18px;
+}
+
+.custom-tree-node .el-button {
+  opacity: 0;
+}
+
+.custom-tree-node:hover .el-button {
+  opacity: 1;
+}
+
+.el-dialog {
+  position: relative;
+}
 </style>
 <style>
-	.ins-order-plan-main .el-form-item__label{
-		color: #000;
-	}
+.ins-order-plan-main .el-form-item__label {
+  color: #000;
+}
 
-  .ins-order-plan-main .el-table th.el-table__cell>.cell{
-    height: 46px;
-    line-height: 30px;
-  }
+.ins-order-plan-main .el-table th.el-table__cell>.cell {
+  height: 46px;
+  line-height: 30px;
+}
 </style>
 <template>
-	<div class="ins-order-plan-main">
-		<div v-show="activeFace == 0&&state==0" style="height: 100%;">
-			<p style="font-size: 16px;padding-left: 20px;text-align: left;height: 60px;line-height: 60px;">妫�楠屼换鍔�</p>
-			<div class="search">
-				<div class="search_thing">
-					<div class="search_label">濮旀墭缂栧彿锛�</div>
-					<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
-							v-model="componentData.entity.entrustCode" @keyup.enter.native="refreshTable()"></el-input></div>
-				</div>
-				<div class="search_thing">
-					<div class="search_label">妫�楠岀姸鎬侊細</div>
-					<div class="search_input">
-						<el-select size="small" v-model="componentData.entity.insState" style="width: 100%;" @change="refreshTable()">
-							<el-option v-for="(a, i) in insStateList" :key="i" :label="a.label" :value="a.value"></el-option>
-						</el-select>
-					</div>
-				</div>
+  <div class="ins-order-plan-main">
+    <div v-show="activeFace == 0 && state == 0" style="height: 100%;">
+      <p style="font-size: 16px;padding-left: 20px;text-align: left;height: 60px;line-height: 60px;">妫�楠屼换鍔�</p>
+      <div class="search">
         <div class="search_thing">
-					<div class="search_label">鏍峰搧缂栧彿锛�</div>
-					<div class="search_input">
-						<el-input size="small" placeholder="璇疯緭鍏�" clearable
-							v-model="componentData.entity.sampleCOde" @keyup.enter.native="refreshTable()"></el-input>
-					</div>
-				</div>
-				<div class="search_thing" style="padding-left: 30px;">
-					<el-button size="small" @click="refresh()">閲� 缃�</el-button>
-					<el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
-				</div>
-			</div>
-			<div class="center">
-				<div class="center-options">
-					<el-row>
-						<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('璇曢獙瀹�','')}}
-									</li>
-								</ul>
-								<div>
-									<el-checkbox @change="changeCheckBox" class="view-self-checkbox"
-										v-model="alone"><span>鎴戠殑浠诲姟</span></el-checkbox>
-								</div>
-							</div>
-						</el-col>
-						<el-col :span="6">
-							<div class="center-title">
-                <el-button size="small" type="primary" @click="qrCodeVisible=true" v-if="selectWarehouse">鎵爜鎶ユ</el-button>
-                <el-button size="small" type="primary" @click="exportVisible=true" style="margin-right: 16px;" v-if="selectWarehouse">鍑哄簱</el-button>
-								<span>鎬昏浠诲姟鏁伴噺:</span>
-								<span>{{total}}</span>
-							</div>
-						</el-col>
-					</el-row>
-				</div>
-				<!-- <ValueTable :tableRowClassName="changeRowClass" class="value-table" ref="insOrderPlan"
+          <div class="search_label">濮旀墭缂栧彿锛�</div>
+          <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
+              v-model="componentData.entity.entrustCode" @keyup.enter.native="refreshTable()"></el-input></div>
+        </div>
+        <div class="search_thing">
+          <div class="search_label">妫�楠岀姸鎬侊細</div>
+          <div class="search_input">
+            <el-select size="small" v-model="componentData.entity.insState" style="width: 100%;"
+              @change="refreshTable()">
+              <el-option v-for="(a, i) in insStateList" :key="i" :label="a.label" :value="a.value"></el-option>
+            </el-select>
+          </div>
+        </div>
+        <div class="search_thing">
+          <div class="search_label">鏍峰搧缂栧彿锛�</div>
+          <div class="search_input">
+            <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="componentData.entity.sampleCOde"
+              @keyup.enter.native="refreshTable()"></el-input>
+          </div>
+        </div>
+        <div class="search_thing" style="padding-left: 30px;">
+          <el-button size="small" @click="refresh()">閲� 缃�</el-button>
+          <el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
+        </div>
+      </div>
+      <div class="center">
+        <div class="center-options">
+          <el-row>
+            <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('璇曢獙瀹�', '') }}
+                  </li>
+                </ul>
+                <div>
+                  <el-checkbox @change="changeCheckBox" class="view-self-checkbox"
+                    v-model="alone"><span>鎴戠殑浠诲姟</span></el-checkbox>
+                </div>
+              </div>
+            </el-col>
+            <el-col :span="6">
+              <div class="center-title">
+                <el-button size="small" type="primary" @click="qrCodeVisible = true"
+                  v-if="selectWarehouse">鎵爜鎶ユ</el-button>
+                <el-button size="small" type="primary" @click="exportVisible = true" style="margin-right: 16px;"
+                  v-if="selectWarehouse">鍑哄簱</el-button>
+                <span>鎬昏浠诲姟鏁伴噺:</span>
+                <span>{{ total }}</span>
+              </div>
+            </el-col>
+          </el-row>
+        </div>
+        <!-- <ValueTable :tableRowClassName="changeRowClass" class="value-table" ref="insOrderPlan"
                     :isColumnWidth="true"
 					:url="$api.insOrderPlan.selectInsOrderPlanList" :upUrl="$api.user.updateUser" :componentData="componentData" @handleInspection="handleInspection"
 					:key="upIndex"/> -->
-          <el-table
-          :data="tableData"
-          ref="table0"
-          border
-          style="width: 100%;"
-          height="calc(100% - 80px)"
-          :row-class-name="rowClassName"
-          v-loading="tableLoading"
-          row-key="orderStateId"
-        >
-          <el-table-column
-            prop="entrustCode"
-            label="濮旀墭缂栧彿"
-            width="140px"
-          >
+        <el-table :data="tableData" ref="table0" border style="width: 100%;" height="calc(100% - 80px)"
+          :row-class-name="rowClassName" v-loading="tableLoading" row-key="orderStateId" @sort-change="sortChange">
+          <el-table-column prop="entrustCode" label="濮旀墭缂栧彿" width="140px">
             <template slot-scope="scope">
-              <el-button @click="selectAllByOne(scope.row)" type="text" size="small">{{ scope.row.entrustCode }}</el-button>
+              <el-button @click="selectAllByOne(scope.row)" type="text" size="small">{{ scope.row.entrustCode
+                }}</el-button>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="sample"
-            label="鏍峰搧鍚嶇О"
-            width="100px"
-          ></el-table-column>
-          <el-table-column
-            prop="sampleCode"
-            label="鏍峰搧缂栧彿"
-            width="170px"
-          ></el-table-column>
-          <el-table-column
-            prop="type"
-            label="绱ф�ョ▼搴�"
-            width="100px"
-          >
+          <el-table-column prop="sample" label="鏍峰搧鍚嶇О" width="100px"></el-table-column>
+          <el-table-column prop="sampleCode" label="鏍峰搧缂栧彿" width="170px"></el-table-column>
+          <el-table-column prop="type" label="绱ф�ョ▼搴�" width="100px">
             <template slot-scope="scope">
-              <el-tag :type="typeList.find(m=>m.value==scope.row.type)?typeList.find(m=>m.value==scope.row.type).type:''" size="small">{{ typeList.find(m=>m.value==scope.row.type)?typeList.find(m=>m.value==scope.row.type).label:'' }}</el-tag>
+              <el-tag
+                :type="typeList.find(m => m.value == scope.row.type) ? typeList.find(m => m.value == scope.row.type).type : ''"
+                size="small">{{
+                  typeList.find(m => m.value == scope.row.type) ? typeList.find(m => m.value == scope.row.type).label : ''
+                }}</el-tag>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="insState"
-            label="鐘舵��"
-            width="100px"
-          >
-          <template slot-scope="scope">
-              <el-tag :type="insStateList.find(m=>m.value==scope.row.insState).type" size="small">{{ insStateList.find(m=>m.value==scope.row.insState).label }}</el-tag>
+          <el-table-column prop="insState" label="鐘舵��" width="100px">
+            <template slot-scope="scope">
+              <el-tag :type="insStateList.find(m => m.value == scope.row.insState).type" size="small">{{
+                insStateList.find(m => m.value == scope.row.insState).label }}</el-tag>
             </template></el-table-column>
-          <el-table-column
-            prop="userName"
-            label="妫�楠屼汉"
-            width="140px"
-          ></el-table-column>
-          <el-table-column
-            prop="checkName"
-            label="澶嶆牳浜�"
-            width="100px"
-          ></el-table-column>
-          <el-table-column
-            prop="appointed"
-            label="绾﹀畾鏃堕棿"
-            width="120px"
-          ></el-table-column>
-          <el-table-column
-            prop="sendTime"
-            label="涓嬪彂鏃堕棿"
-            width="160px"
-          ></el-table-column>
-          <el-table-column
-            prop="insTime"
-            label="妫�楠屽紑濮嬫椂闂�"
-            width="160px"
-          ></el-table-column>
-          <el-table-column
-            prop="submitTime"
-            label="妫�楠岀粨鏉熸椂闂�"
-            width="160px"
-          ></el-table-column>
-          <el-table-column
-            prop="verifyTell"
-            label="鐞嗙敱"
-            width="150px"
-          ></el-table-column>
-          <el-table-column
-            fixed="right"
-            align="center" label="鎿嶄綔"
-            width="340px"
-          >
-          <template slot-scope="scope">
-            <el-button @click="handleDataLook(scope.row)" type="text" size="small">鏁版嵁鏌ョ湅</el-button>
-            <el-button @click="handleInspection(scope.row)" type="text" size="small" :disabled="scope.row.userName == null || scope.row.insState == 3 || scope.row.insState == 5||scope.row.insState == 6||(scope.row.userName&&!scope.row.userName.includes(userName))" v-if="inspection">妫�楠�</el-button>
-            <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="cancelSubmitPlan(scope.row)" type="text" size="small" :disabled="scope.row.userName == null || scope.row.insState != 3 ||(scope.row.userName&&!scope.row.userName.includes(userName))" v-if="inspection">鎾ら攢</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="handleReview0(scope.row)" type="text" size="small" :disabled="scope.row.userName == null || (scope.row.insState != 4&&scope.row.insState != 5&&scope.row.insState != 6) " v-if="verifyPlan2">绾犳澶嶆牳</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="lookHistory0(scope.row)" type="text" size="small">鏌ョ湅璁板綍</el-button>
-          </template>
+          <el-table-column prop="userName" label="妫�楠屼汉" width="140px"></el-table-column>
+          <el-table-column prop="checkName" label="澶嶆牳浜�" width="100px"></el-table-column>
+          <el-table-column prop="createTime" label="鎶ユ鏃堕棿" width="120px" sortable></el-table-column>
+          <el-table-column prop="appointed" label="绾﹀畾鏃堕棿" width="120px" sortable></el-table-column>
+          <el-table-column prop="sendTime" label="涓嬪彂鏃堕棿" width="160px" sortable></el-table-column>
+          <el-table-column prop="insTime" label="妫�楠屽紑濮嬫椂闂�" width="160px" sortable></el-table-column>
+          <el-table-column prop="submitTime" label="妫�楠岀粨鏉熸椂闂�" width="160px" sortable></el-table-column>
+          <el-table-column prop="verifyTell" label="鐞嗙敱" width="150px"></el-table-column>
+          <el-table-column fixed="right" align="center" label="鎿嶄綔" width="340px">
+            <template slot-scope="scope">
+              <el-button @click="handleDataLook(scope.row)" type="text" size="small">鏁版嵁鏌ョ湅</el-button>
+              <el-button @click="handleInspection(scope.row)" type="text" size="small"
+                :disabled="scope.row.userName == null || scope.row.insState == 3 || scope.row.insState == 5 || scope.row.insState == 6 || (scope.row.userName && !scope.row.userName.includes(userName))"
+                v-if="inspection">妫�楠�</el-button>
+              <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="cancelSubmitPlan(scope.row)" type="text" size="small"
+                :disabled="scope.row.userName == null || scope.row.insState != 3 || (scope.row.userName && !scope.row.userName.includes(userName))"
+                v-if="inspection">鎾ら攢</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="handleReview0(scope.row)" type="text" size="small"
+                :disabled="scope.row.userName == null || (scope.row.insState != 4 && scope.row.insState != 5 && scope.row.insState != 6)"
+                v-if="verifyPlan2">绾犳澶嶆牳</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="lookHistory0(scope.row)" type="text" size="small">鏌ョ湅璁板綍</el-button>
+            </template>
           </el-table-column>
         </el-table>
         <div style="display: flex;justify-content: flex-end;width: 100%;margin-top: 10px;">
@@ -290,25 +256,21 @@
             :total="total">
           </el-pagination>
         </div>
-			</div>
-		</div>
-		<el-dialog title="鎻愮ず" :visible.sync="claimVisible" width="400px">
-			鏄惁璁ら濮旀墭缂栧彿<span style="color:#33C130">{{sampleUserForm.entrustCode}}</span>鐨勪换鍔�
-			<span slot="footer" class="dialog-footer">
-				<el-button @click="claimVisible = false">鍙� 娑�</el-button>
-				<el-button type="primary" @click="confirmClaim" :loading="loading">纭� 瀹�</el-button>
-			</span>
-		</el-dialog>
+      </div>
+    </div>
+    <el-dialog title="鎻愮ず" :visible.sync="claimVisible" width="400px">
+      鏄惁璁ら濮旀墭缂栧彿<span style="color:#33C130">{{ sampleUserForm.entrustCode }}</span>鐨勪换鍔�
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="claimVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="confirmClaim" :loading="loading">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
     <el-dialog title="妫�楠屼氦鎺�" :visible.sync="connectVisible" width="400px">
-			<div class="search_thing">
+      <div class="search_thing">
         <div class="search_label" style="width:90px"><span class="required-span">* </span>浜ゆ帴浜哄憳锛�</div>
         <div class="search_input">
           <el-select v-model="connect.connectPerson" placeholder="璇烽�夋嫨" style="width: 100%;" filterable>
-            <el-option
-              v-for="item in personList"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value">
+            <el-option v-for="item in personList" :key="item.value" :label="item.label" :value="item.value">
             </el-option>
           </el-select>
         </div>
@@ -326,69 +288,51 @@
           </el-select>
         </div>
       </div> -->
-			<span slot="footer" class="dialog-footer">
-				<el-button @click="connectVisible = false">鍙� 娑�</el-button>
-				<el-button type="primary" @click="confirmConnect" :loading="loading">纭� 瀹�</el-button>
-			</span>
-		</el-dialog>
-		<div style="width: 100%;height: 100%;" v-if="activeFace >0">
-			<Add :active="activeFace" :currentId="currentId" :examine="examine"/>
-		</div>
-    <Inspection v-if="state>0" @goback="goback" :orderId="orderId" :inspectorList="inspectorList" :sonLaboratory="componentData.entity.sonLaboratory" :state="state" :orderStateId="orderStateId" :version="version" :isLook="isLook" :num1="num1" :orderId0="orderId0" :userInfo="userInfo" ref="Inspection" />
-      <el-dialog title="鏁版嵁鏌ョ湅" :visible.sync="dataDialogVisible" width="80%">
-				<div style="height: 70vh;overflow-y: auto;" v-if="dataDialogVisible">
-					<ValueTable ref="ValueTableDataLook" :rowKey="'insProductId'" :url="$api.insOrder.selectSampleAndProductByOrderId"
-						: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="鎻愪氦鏃ユ湡"
-            min-width="150">
-          </el-table-column>
-          <el-table-column
-            prop="submitUserName"
-            label="鎻愪氦浜�"
-            min-width="90">
-          </el-table-column>
-          <el-table-column
-            prop="term"
-            label="瀹為獙闃舵"
-            min-width="120">
-          </el-table-column>
-          <el-table-column
-            prop="note"
-            label="瀹為獙鎿嶄綔"
-            min-width="120">
-          </el-table-column>
-          <el-table-column
-            prop="tell"
-            label="鍐嶆妫�楠屽師鍥�"
-            min-width="120">
-          </el-table-column>
-          <el-table-column
-            fixed="right"
-            label="鎿嶄綔"
-            min-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>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="connectVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="confirmConnect" :loading="loading">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+    <div style="width: 100%;height: 100%;" v-if="activeFace > 0">
+      <Add :active="activeFace" :currentId="currentId" :examine="examine" />
+    </div>
+    <Inspection v-if="state > 0" @goback="goback" :orderId="orderId" :inspectorList="inspectorList"
+      :sonLaboratory="componentData.entity.sonLaboratory" :state="state" :orderStateId="orderStateId" :version="version"
+      :isLook="isLook" :num1="num1" :orderId0="orderId0" :userInfo="userInfo" ref="Inspection" />
+    <el-dialog title="鏁版嵁鏌ョ湅" :visible.sync="dataDialogVisible" width="80%">
+      <div style="height: 70vh;overflow-y: auto;" v-if="dataDialogVisible">
+        <ValueTable ref="ValueTableDataLook" :rowKey="'insProductId'"
+          :url="$api.insOrder.selectSampleAndProductByOrderId" :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="鎻愪氦鏃ユ湡" min-width="150">
+        </el-table-column>
+        <el-table-column prop="submitUserName" label="鎻愪氦浜�" min-width="90">
+        </el-table-column>
+        <el-table-column prop="term" label="瀹為獙闃舵" min-width="120">
+        </el-table-column>
+        <el-table-column prop="note" label="瀹為獙鎿嶄綔" min-width="120">
+        </el-table-column>
+        <el-table-column prop="tell" label="鍐嶆妫�楠屽師鍥�" min-width="120">
+        </el-table-column>
+        <el-table-column fixed="right" label="鎿嶄綔" min-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>
     <el-dialog title="鎵爜妫�楠�" :visible.sync="qrCodeVisible" width="400px">
       <el-row>
         <el-col class="search_thing" :span="24">
           <div class="search_label" style="width: 90px"><span class="required-span">* </span>鏍峰搧缂栧彿锛�</div>
           <div class="search_input">
             <el-input v-model="sampleCode" size="small" clearable :disabled="sampleCodeBtnDisabled">
-              <el-tooltip :content="sampleCodeBtnDisabled?'鎵嬪姩杈撳叆':'鎵爜鏋緭鍏�'" placement="top" slot="append">
-                <el-button type="primary" icon="el-icon-edit" @click="sampleCodeBtnDisabled=!sampleCodeBtnDisabled"></el-button>
+              <el-tooltip :content="sampleCodeBtnDisabled ? '鎵嬪姩杈撳叆' : '鎵爜鏋緭鍏�'" placement="top" slot="append">
+                <el-button type="primary" icon="el-icon-edit"
+                  @click="sampleCodeBtnDisabled = !sampleCodeBtnDisabled"></el-button>
               </el-tooltip>
             </el-input>
           </div>
@@ -402,14 +346,13 @@
         </el-col>
       </el-row>
       <el-tree :data="storageList" ref="tree" :props="{ children: 'warehouseShelfList', label: 'name' }" node-key="id"
-               :filter-node-method="filterNode" @node-click="handleNodeClick" highlight-current @node-expand="nodeOpen"
-               @node-collapse="nodeClose" :default-expanded-keys="expandedKeys" v-if="qrCodeVisible"
-               empty-text="鏆傛棤鏁版嵁">
+        :filter-node-method="filterNode" @node-click="handleNodeClick" highlight-current @node-expand="nodeOpen"
+        @node-collapse="nodeClose" :default-expanded-keys="expandedKeys" v-if="qrCodeVisible" empty-text="鏆傛棤鏁版嵁">
         <div class="custom-tree-node" slot-scope="{ node, data }">
           <el-row>
             <el-col :span="24">
               <span><i
-                :class="`node_i ${data.warehouseShelfList != undefined ? 'el-icon-folder-opened' : 'el-icon-tickets'}`"></i>
+                  :class="`node_i ${data.warehouseShelfList != undefined ? 'el-icon-folder-opened' : 'el-icon-tickets'}`"></i>
                 {{ data.name }}</span>
             </el-col>
           </el-row>
@@ -426,8 +369,9 @@
           <div class="search_label" style="width: 90px"><span class="required-span">* </span>鏍峰搧缂栧彿锛�</div>
           <div class="search_input">
             <el-input v-model="sampleCode" size="small" clearable :disabled="sampleCodeBtnDisabled">
-              <el-tooltip :content="sampleCodeBtnDisabled?'鎵嬪姩杈撳叆':'鎵爜鏋緭鍏�'" placement="top" slot="append">
-                <el-button type="primary" icon="el-icon-edit" @click="sampleCodeBtnDisabled=!sampleCodeBtnDisabled"></el-button>
+              <el-tooltip :content="sampleCodeBtnDisabled ? '鎵嬪姩杈撳叆' : '鎵爜鏋緭鍏�'" placement="top" slot="append">
+                <el-button type="primary" icon="el-icon-edit"
+                  @click="sampleCodeBtnDisabled = !sampleCodeBtnDisabled"></el-button>
               </el-tooltip>
             </el-input>
           </div>
@@ -446,14 +390,8 @@
       </span>
     </el-dialog>
     <el-dialog title="绾犳澶嶆牳" :visible="upInsReviewDia" width="600px" :close-on-click-modal="false" :show-close="false">
-      <el-radio-group
-        v-model="verifyPlanInfo.type"
-        style="display: flex;flex-direction: column"
-        v-if="upInsReviewDia"
-      >
-        <el-radio :label="1" style="margin: 10px 0; "
-        :inert="false">缁х画娴嬭瘯涓嬩竴涓牱鍝佹垨鍏朵粬绔欑偣浠诲姟</el-radio
-        >
+      <el-radio-group v-model="verifyPlanInfo.type" style="display: flex;flex-direction: column" v-if="upInsReviewDia">
+        <el-radio :label="1" style="margin: 10px 0; " :inert="false">缁х画娴嬭瘯涓嬩竴涓牱鍝佹垨鍏朵粬绔欑偣浠诲姟</el-radio>
         <el-radio :label="0" style="margin: 10px 0; " :inert="false">鍐嶆妫�楠岃鏍峰搧</el-radio>
         <el-radio :label="2" style="margin: 10px 0; " :inert="false">姝ゅ鎵樺崟缁撴潫</el-radio>
         <p style="font-size: 12px;color:red">
@@ -461,910 +399,919 @@
         </p>
       </el-radio-group>
       <p style="margin-top: 16px;margin-bottom: 6px;"><span style="color:red;margin-right: 4px;">*</span>绾犳鍘熷洜锛�</p>
-      <el-input
-        type="textarea"
-        :rows="2"
-        placeholder="璇疯緭鍏�"
-        v-model="verifyPlanInfo.tell">
+      <el-input type="textarea" :rows="2" placeholder="璇疯緭鍏�" v-model="verifyPlanInfo.tell">
       </el-input>
       <span slot="footer" class="dialog-footer">
         <el-button @click="upInsReviewDia = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="upInsReview" :loading="reviewLoading"
-          >纭� 瀹�</el-button
-        >
+        <el-button type="primary" @click="upInsReview" :loading="reviewLoading">纭� 瀹�</el-button>
       </span>
     </el-dialog>
-    <input id="ScanCodeInfo" v-model="codeInfo" @keyup.enter="keyup" style="opacity: 0;height: 0px;margin: 0px;padding: 0px;position: absolute;top: 0;"></input>
+    <input id="ScanCodeInfo" v-model="codeInfo" @keyup.enter="keyup"
+      style="opacity: 0;height: 0px;margin: 0px;padding: 0px;position: absolute;top: 0;"></input>
   </div>
 </template>
 
 <script>
-	import ValueTable from '../tool/value-table.vue'
-  import Inspection from '../do/b1-inspect-order-plan/Inspection.vue'
-	import {
-		getYearAndMonthAndDays
-	} from '../../util/date'
-	import Add from '../do/b1-ins-order/add.vue'
-  import Sortable from 'sortablejs';
-	export default {
-		components: {
-			ValueTable,
-      Inspection,
-			Add
-		},
-		data() {
-			return {
-        currentHistory:{},
-        historyDialogVisible:false,
-        historyList:[],
-        orderStateId:null,
-        version:null,
-				examine: null,
-        inspectorList: [],//妫�楠屼汉鍛樺垪琛�
-				alone: false,
-				sampleUserForm: {
-					entrustCode: null,
-					insSampleId: null,
-					userId: null
-				},
-				claimVisible: false,
-				tabList: [],
-				active: 1,
-				tabIndex: 0,
-        componentDataDataLook: {
-					entity: {
-						id: 0,
-						orderBy: {
-							field: 'sampleCode',
-							order: 'asc'
-						}
-					},
-					isIndex: false,
-					showSelect: false,
-					select: false,
-					do: [],
-					tagField: {
-						insState: {
-							select: []
-						},
-						insResult: {
-							select: [{
-								value: 1,
-								label: '鍚堟牸',
-								type: 'success'
-							},{
-								value: 0,
-								label: '涓嶅悎鏍�',
-								type: 'danger'
-							},{
-								value: 3,
-								label: '涓嶅垽瀹�',
-								type: ''
-							}]
-						}
-					},
-					selectField: {},
-          spanConfig:{
-            rows:[
-              {
-                name:'sampleCode',
-                index:0
-              },
-              {
-                name:'sample',
-                index:1
-              },
-              {
-                name:'model',
-                index:5
-              }
-            ]
+import ValueTable from '../tool/value-table.vue'
+import Inspection from '../do/b1-inspect-order-plan/Inspection.vue'
+import {
+  getYearAndMonthAndDays
+} from '../../util/date'
+import Add from '../do/b1-ins-order/add.vue'
+import Sortable from 'sortablejs';
+export default {
+  components: {
+    ValueTable,
+    Inspection,
+    Add
+  },
+  data() {
+    return {
+      currentHistory: {},
+      historyDialogVisible: false,
+      historyList: [],
+      orderStateId: null,
+      version: null,
+      examine: null,
+      inspectorList: [],//妫�楠屼汉鍛樺垪琛�
+      alone: false,
+      sampleUserForm: {
+        entrustCode: null,
+        insSampleId: null,
+        userId: null
+      },
+      claimVisible: false,
+      tabList: [],
+      active: 1,
+      tabIndex: 0,
+      componentDataDataLook: {
+        entity: {
+          id: 0,
+          orderBy: {
+            field: 'sampleCode',
+            order: 'asc'
+          }
+        },
+        isIndex: false,
+        showSelect: false,
+        select: false,
+        do: [],
+        tagField: {
+          insState: {
+            select: []
           },
-					requiredAdd: [],
-					requiredUp: []
-				},
-        dataDialogVisible: false,
-				componentData: {
-					entity: {
-						sonLaboratory: null,
-						insState: null,
-						userId: null,
-            sampleCode:null,
-					},
-          sortable:true,
-					isIndex: true,
-					showSelect: false,
-					select: false,
-					init: false,
-          needSort: ['createTime', 'sendTime', 'type', 'appointed', 'insState'],
-					do: [{
-						id: '',
-						font: '鏁版嵁鏌ョ湅',
-						type: 'text',
-						method: 'handleDataLook',
-            //disabFun: (row, index) => {
-              //const user = JSON.parse(localStorage.getItem('user'))
-             // let currentUserName = ''
-             // if(user){
-              //  currentUserName = user.name
-              //}
-							//return row.userName.indexOf(currentUserName)<0 && row.checkName.indexOf(currentUserName)<0
-						//}
-					},{
-							id: '',
-							font: '妫�楠�',
-							type: 'text',
-							method: 'handleInspection',
-							disabFun: (row, index) => {
-								return row.userName == null || row.insState == 3 || row.insState == 5||row.insState == 6||(row.userName&&!row.userName.includes(JSON.parse(localStorage.getItem("user")).name))
-							}
-              // disabFun: (row, index) => {
-							// 	return row.userId == null || row.insState == 3 || row.insState == 5
-							// }
-						}, {
-							id: '',
-							font: '浜ゆ帴',
-							type: 'text',
-							method: 'handleConnect',
-							disabFun: (row, index) => {
-								return row.userName == null || row.insState == 5  || row.insState == 3||row.insState == 6||(row.userName&&!row.userName.includes(JSON.parse(localStorage.getItem("user")).name))
-							}
-						},
-						{
-							id: '',
-							font: '澶嶆牳',
-							type: 'text',
-							method: 'handleReview',
-							disabFun: (row, userName) => {
-								return row.userName == null || row.insState != 3 ||(row.checkName&&!row.checkName.includes(JSON.parse(localStorage.getItem("user")).name))
-							}
-						}, {
-							id: '',
-							font: '璁ら',
-							type: 'text',
-							method: 'claimFun',
-							disabFun: (row, index) => {
-								return row.userName != null || row.checkName!=null
-							}
-						}, {
-							id: '',
-							font: '鏌ョ湅璁板綍',
-							type: 'text',
-							method: 'claimFun',
-							disabFun: (row, index) => {
-								return !row.num1 || row.num1<2
-							}
-						}
-					],
-					linkEvent: {
-						entrustCode: {
-							method: 'selectAllByOne'
-						}
-					},
-					tagField: {
-						type: {
-							select: []
-						},
-						insState: {
-							select: []
-						},
-						insResult: {
-							select: [{
-								value: 0,
-								label: '涓嶅悎鏍�',
-								type: 'danger'
-							},{
-								value: 1,
-								label: '鍚堟牸',
-								type: 'success'
-							},{
-								value: '',
-								label: '鏈嚭缁撴灉',
-								type: 'info'
-							}]
-						}
-					},
-					selectField: {},
-					requiredAdd: [],
-					requiredUp: []
-				},
-        userName:JSON.parse(localStorage.getItem("user")).name,
-				upIndex: 0,
-				planTotal: 0,
-				insStateList: [],
-        state:0,//0:鍙拌处椤碉紝1锛氭楠岄〉闈�,2妫�楠岄〉闈�(澶嶆牳)锛岄粯璁や负0
-				activeFace: 0, //1锛氫笅鍗曪紝2锛氭煡鐪嬶紝3锛氬鏍革紝榛樿涓�0
-				currentId: null,
-				entityCopy: {},
-				orderId: null,
-        orderId0:null,
-        personList:[],
-        connectVisible:false,
-        connect:{
-          connectPerson:'',
-          // sonLaboratory:''
+          insResult: {
+            select: [{
+              value: 1,
+              label: '鍚堟牸',
+              type: 'success'
+            }, {
+              value: 0,
+              label: '涓嶅悎鏍�',
+              type: 'danger'
+            }, {
+              value: 3,
+              label: '涓嶅垽瀹�',
+              type: ''
+            }]
+          }
         },
-        loading:false,
-        currentTime: null,
-        sonLaboratoryList:[],
-        tableData: [],
-        page:{
-          current:1,
-          size:20,
+        selectField: {},
+        spanConfig: {
+          rows: [
+            {
+              name: 'sampleCode',
+              index: 0
+            },
+            {
+              name: 'sample',
+              index: 1
+            },
+            {
+              name: 'model',
+              index: 5
+            }
+          ]
         },
-        total:0,
-        tableLoading:false,
-        jumpTeam:false,
-        insResultList:[{
-          value: 0,
-          label: '涓嶅悎鏍�',
-          type: 'danger'
-        },{
-          value: 1,
-          label: '鍚堟牸',
-          type: 'success'
-        },{
-          value: '',
-          label: '鏈嚭缁撴灉',
-          type: 'info'
-        }],
-        typeList:[],
-        getInsProduct2:false,
-        claim:false,
-        review:false,
-        verifyPlan2:false,
-        connect:false,
-        inspection:false,
-        isLook:false,//鏄惁鏄煡鐪嬪巻鍙查〉闈�
-        num1:null,
-        codeInfo:null,
-        startTime:null,
-        scanInsOrderState:false,
-        qrCodeVisible: false,
-        sampleCode: '',
-        entrustCode:'',
-        storageList:[],
-        expandedKeys: [],
-        selectTree: [],
-        upLoadStorage: false,
-        exportVisible: false,
-        upLoadExport: false,
-        selectWarehouse:false,
-        userInfo:{
-          name:[],
-          ids:[]
-        },
-        sampleCodeBtnDisabled:true,
-        upInsReviewDia:false,
-        verifyPlanInfo:{
-          tell:null,
-          type:null
-        },
-        reviewLoading:false
-			}
-		},
-    watch:{
-      qrCodeVisible(newVal){
-        if(newVal){
-            // this.$message.success('鎵爜锛氭墦寮�')
-            this.selectList()
-            this.sampleCode = null
-            this.entrustCode = null
-            let input = document.getElementById('ScanCodeInfo');
-            input.focus();
-            this.startTime = setInterval(()=>{
-                input.focus()
-            },1000)
-        }else{
-            // this.$message.warning('鎵爜锛氬叧闂�')
-            clearInterval(this.startTime)
-            this.sampleCodeBtnDisabled=true
-        }
+        requiredAdd: [],
+        requiredUp: []
       },
-      exportVisible(newVal){
-        if(newVal){
-            // this.$message.success('鎵爜锛氭墦寮�')
-            this.sampleCode = null
-            this.entrustCode = null
-            let input = document.getElementById('ScanCodeInfo');
-            input.focus();
-            this.startTime = setInterval(()=>{
-                input.focus()
-            },1000)
-        }else{
-            // this.$message.warning('鎵爜锛氬叧闂�')
-            clearInterval(this.startTime)
-            this.sampleCodeBtnDisabled=true
+      dataDialogVisible: false,
+      componentData: {
+        entity: {
+          sonLaboratory: null,
+          insState: null,
+          userId: null,
+          sampleCode: null,
+          orderBy: {
+            field: 'createTime,appointed,sendTime,insTime,submitTime',
+            order: 'asc'
+          }
+        },
+        sortable: true,
+        isIndex: true,
+        showSelect: false,
+        select: false,
+        init: false,
+        needSort: ['createTime', 'sendTime', 'type', 'appointed', 'insState'],
+        do: [{
+          id: '',
+          font: '鏁版嵁鏌ョ湅',
+          type: 'text',
+          method: 'handleDataLook',
+          //disabFun: (row, index) => {
+          //const user = JSON.parse(localStorage.getItem('user'))
+          // let currentUserName = ''
+          // if(user){
+          //  currentUserName = user.name
+          //}
+          //return row.userName.indexOf(currentUserName)<0 && row.checkName.indexOf(currentUserName)<0
+          //}
+        }, {
+          id: '',
+          font: '妫�楠�',
+          type: 'text',
+          method: 'handleInspection',
+          disabFun: (row, index) => {
+            return row.userName == null || row.insState == 3 || row.insState == 5 || row.insState == 6 || (row.userName && !row.userName.includes(JSON.parse(localStorage.getItem("user")).name))
+          }
+          // disabFun: (row, index) => {
+          // 	return row.userId == null || row.insState == 3 || row.insState == 5
+          // }
+        }, {
+          id: '',
+          font: '浜ゆ帴',
+          type: 'text',
+          method: 'handleConnect',
+          disabFun: (row, index) => {
+            return row.userName == null || row.insState == 5 || row.insState == 3 || row.insState == 6 || (row.userName && !row.userName.includes(JSON.parse(localStorage.getItem("user")).name))
+          }
+        },
+        {
+          id: '',
+          font: '澶嶆牳',
+          type: 'text',
+          method: 'handleReview',
+          disabFun: (row, userName) => {
+            return row.userName == null || row.insState != 3 || (row.checkName && !row.checkName.includes(JSON.parse(localStorage.getItem("user")).name))
+          }
+        }, {
+          id: '',
+          font: '璁ら',
+          type: 'text',
+          method: 'claimFun',
+          disabFun: (row, index) => {
+            return row.userName != null || row.checkName != null
+          }
+        }, {
+          id: '',
+          font: '鏌ョ湅璁板綍',
+          type: 'text',
+          method: 'claimFun',
+          disabFun: (row, index) => {
+            return !row.num1 || row.num1 < 2
+          }
         }
+        ],
+        linkEvent: {
+          entrustCode: {
+            method: 'selectAllByOne'
+          }
+        },
+        tagField: {
+          type: {
+            select: []
+          },
+          insState: {
+            select: []
+          },
+          insResult: {
+            select: [{
+              value: 0,
+              label: '涓嶅悎鏍�',
+              type: 'danger'
+            }, {
+              value: 1,
+              label: '鍚堟牸',
+              type: 'success'
+            }, {
+              value: '',
+              label: '鏈嚭缁撴灉',
+              type: 'info'
+            }]
+          }
+        },
+        selectField: {},
+        requiredAdd: [],
+        requiredUp: []
       },
-      sampleCodeBtnDisabled(val){
-        if(!val){
-          this.startTime&&clearInterval(this.startTime)
-        }else if(this.exportVisible||this.qrCodeVisible){
-          // this.sampleCode = null
-          // this.entrustCode = null
-          let input = document.getElementById('ScanCodeInfo');
-          input.focus();
-          this.startTime = setInterval(()=>{
-              input.focus()
-          },1000)
-        }
+      userName: JSON.parse(localStorage.getItem("user")).name,
+      upIndex: 0,
+      planTotal: 0,
+      insStateList: [],
+      state: 0,//0:鍙拌处椤碉紝1锛氭楠岄〉闈�,2妫�楠岄〉闈�(澶嶆牳)锛岄粯璁や负0
+      activeFace: 0, //1锛氫笅鍗曪紝2锛氭煡鐪嬶紝3锛氬鏍革紝榛樿涓�0
+      currentId: null,
+      entityCopy: {},
+      orderId: null,
+      orderId0: null,
+      personList: [],
+      connectVisible: false,
+      connect: {
+        connectPerson: '',
+        // sonLaboratory:''
+      },
+      loading: false,
+      currentTime: null,
+      sonLaboratoryList: [],
+      tableData: [],
+      page: {
+        current: 1,
+        size: 20,
+      },
+      total: 0,
+      tableLoading: false,
+      jumpTeam: false,
+      insResultList: [{
+        value: 0,
+        label: '涓嶅悎鏍�',
+        type: 'danger'
+      }, {
+        value: 1,
+        label: '鍚堟牸',
+        type: 'success'
+      }, {
+        value: '',
+        label: '鏈嚭缁撴灉',
+        type: 'info'
+      }],
+      typeList: [],
+      getInsProduct2: false,
+      claim: false,
+      review: false,
+      verifyPlan2: false,
+      connect: false,
+      inspection: false,
+      isLook: false,//鏄惁鏄煡鐪嬪巻鍙查〉闈�
+      num1: null,
+      codeInfo: null,
+      startTime: null,
+      scanInsOrderState: false,
+      qrCodeVisible: false,
+      sampleCode: '',
+      entrustCode: '',
+      storageList: [],
+      expandedKeys: [],
+      selectTree: [],
+      upLoadStorage: false,
+      exportVisible: false,
+      upLoadExport: false,
+      selectWarehouse: false,
+      userInfo: {
+        name: [],
+        ids: []
+      },
+      sampleCodeBtnDisabled: true,
+      upInsReviewDia: false,
+      verifyPlanInfo: {
+        tell: null,
+        type: null
+      },
+      reviewLoading: false
+    }
+  },
+  watch: {
+    qrCodeVisible(newVal) {
+      if (newVal) {
+        // this.$message.success('鎵爜锛氭墦寮�')
+        this.selectList()
+        this.sampleCode = null
+        this.entrustCode = null
+        let input = document.getElementById('ScanCodeInfo');
+        input.focus();
+        this.startTime = setInterval(() => {
+          input.focus()
+        }, 1000)
+      } else {
+        // this.$message.warning('鎵爜锛氬叧闂�')
+        clearInterval(this.startTime)
+        this.sampleCodeBtnDisabled = true
       }
     },
-		created() {
-			this.getLaboratoryDicts()
-			this.getTypeDicts()
-			this.getInsStateDicts()
-      this.getAuthorizedPerson()
-      this.currentTime = getYearAndMonthAndDays()
-		},
-		mounted() {
-			this.entityCopy = this.HaveJson(this.componentData.entity)
-      this.getPower()
-      if(this.jumpTeam){
-        this.initializeSortable();
+    exportVisible(newVal) {
+      if (newVal) {
+        // this.$message.success('鎵爜锛氭墦寮�')
+        this.sampleCode = null
+        this.entrustCode = null
+        let input = document.getElementById('ScanCodeInfo');
+        input.focus();
+        this.startTime = setInterval(() => {
+          input.focus()
+        }, 1000)
+      } else {
+        // this.$message.warning('鎵爜锛氬叧闂�')
+        clearInterval(this.startTime)
+        this.sampleCodeBtnDisabled = true
       }
-		},
-		methods: {
-      selectList () {
-        this.$axios.get(this.$api.warehouse.selectWarehouse).then(res => {
-          this.warehouse = res.data
-          this.storageList = this.HaveJson(res.data).map(item=>{
-            item.warehouseShelfList&&item.warehouseShelfList.length>0&&item.warehouseShelfList.map(m=>{
-              let warehouseShelfList = [];
-              let warehouseShelfList0 = []
-              let warehouseCellList = m.warehouseCellList?m.warehouseCellList:[]
-              warehouseCellList.forEach(a=>{
-                if(warehouseShelfList.find(n=>n.id==a.row)){
-                  warehouseShelfList0.push({
-                    name:a.col+'鍒�',
-                    id:a.col
-                  })
-                }else if(warehouseShelfList.length==0){
-                  warehouseShelfList.push({
-                    name:a.row+'灞�',
-                    id:a.row
-                  })
-                  warehouseShelfList0.push({
-                    name:a.col+'鍒�',
-                    id:a.col
-                  })
-                }else if(!warehouseShelfList.find(n=>n.id==a.row)){
-                  warehouseShelfList[warehouseShelfList.length-1].warehouseShelfList = JSON.parse(JSON.stringify(warehouseShelfList0))
-                  warehouseShelfList0 = []
-                  warehouseShelfList.push({
-                    name:a.row+'灞�',
-                    id:a.row
-                  })
-                  warehouseShelfList0.push({
-                    name:a.col+'鍒�',
-                    id:a.col
-                  })
-                }
-              })
-              warehouseShelfList[warehouseShelfList.length-1].warehouseShelfList = JSON.parse(JSON.stringify(warehouseShelfList0))
-              m.warehouseShelfList = warehouseShelfList;
-              return m;
+    },
+    sampleCodeBtnDisabled(val) {
+      if (!val) {
+        this.startTime && clearInterval(this.startTime)
+      } else if (this.exportVisible || this.qrCodeVisible) {
+        // this.sampleCode = null
+        // this.entrustCode = null
+        let input = document.getElementById('ScanCodeInfo');
+        input.focus();
+        this.startTime = setInterval(() => {
+          input.focus()
+        }, 1000)
+      }
+    }
+  },
+  created() {
+    this.getLaboratoryDicts()
+    this.getTypeDicts()
+    this.getInsStateDicts()
+    this.getAuthorizedPerson()
+    this.currentTime = getYearAndMonthAndDays()
+  },
+  mounted() {
+    this.entityCopy = this.HaveJson(this.componentData.entity)
+    this.getPower()
+    if (this.jumpTeam) {
+      this.initializeSortable();
+    }
+  },
+  methods: {
+    selectList() {
+      this.$axios.get(this.$api.warehouse.selectWarehouse).then(res => {
+        this.warehouse = res.data
+        this.storageList = this.HaveJson(res.data).map(item => {
+          item.warehouseShelfList && item.warehouseShelfList.length > 0 && item.warehouseShelfList.map(m => {
+            let warehouseShelfList = [];
+            let warehouseShelfList0 = []
+            let warehouseCellList = m.warehouseCellList ? m.warehouseCellList : []
+            warehouseCellList.forEach(a => {
+              if (warehouseShelfList.find(n => n.id == a.row)) {
+                warehouseShelfList0.push({
+                  name: a.col + '鍒�',
+                  id: a.col
+                })
+              } else if (warehouseShelfList.length == 0) {
+                warehouseShelfList.push({
+                  name: a.row + '灞�',
+                  id: a.row
+                })
+                warehouseShelfList0.push({
+                  name: a.col + '鍒�',
+                  id: a.col
+                })
+              } else if (!warehouseShelfList.find(n => n.id == a.row)) {
+                warehouseShelfList[warehouseShelfList.length - 1].warehouseShelfList = JSON.parse(JSON.stringify(warehouseShelfList0))
+                warehouseShelfList0 = []
+                warehouseShelfList.push({
+                  name: a.row + '灞�',
+                  id: a.row
+                })
+                warehouseShelfList0.push({
+                  name: a.col + '鍒�',
+                  id: a.col
+                })
+              }
             })
-            return item;
+            warehouseShelfList[warehouseShelfList.length - 1].warehouseShelfList = JSON.parse(JSON.stringify(warehouseShelfList0))
+            m.warehouseShelfList = warehouseShelfList;
+            return m;
           })
+          return item;
         })
-      },
-      filterNode(value, data) {
-        if (!value) return true;
-        return data.label.indexOf(value) !== -1;
-      },
-      handleNodeClick(val, node, el) { //鏍戠殑鍊�
-        this.selectTree[node.level-1] = val.id;
-      },
-      nodeOpen(data, node, el) {
-        $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder-opened')
-        this.selectTree[node.level-1] = data.id;
-      },
-      nodeClose(data, node, el) {
-        $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder')
-      },
-      // 鎵爜鎶ユ
-      confirmStorage() {
-        if (!this.sampleCode) {
-          this.$message.error('璇峰~鍐欐牱鍝佺紪鍙�')
+      })
+    },
+    filterNode(value, data) {
+      if (!value) return true;
+      return data.label.indexOf(value) !== -1;
+    },
+    handleNodeClick(val, node, el) { //鏍戠殑鍊�
+      this.selectTree[node.level - 1] = val.id;
+    },
+    nodeOpen(data, node, el) {
+      $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder-opened')
+      this.selectTree[node.level - 1] = data.id;
+    },
+    nodeClose(data, node, el) {
+      $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder')
+    },
+    // 鎵爜鎶ユ
+    confirmStorage() {
+      if (!this.sampleCode) {
+        this.$message.error('璇峰~鍐欐牱鍝佺紪鍙�')
+        return
+      }
+      if (!this.entrustCode) {
+        this.$message.error('璇峰~鍐欒鍗曠紪鍙�')
+        return
+      }
+      if (this.selectTree.length < 4) {
+        this.$message.error('璇烽�夋嫨鏍峰搧鍏ュ簱浣嶇疆')
+        return
+      }
+      this.upLoadStorage = true;
+      this.$axios.post(this.$api.insOrderPlan.scanInsOrderState, {
+        trees: this.selectTree.join('-'),
+        sampleCode: this.sampleCode,
+        entrustCode: this.entrustCode,
+        sonLaboratory: this.componentData.entity.sonLaboratory
+      }).then(res => {
+        this.upLoadStorage = false;
+        this.qrCodeVisible = false
+        this.sampleCode = '';
+        this.entrustCode = '';
+        this.selectTree = []
+        if (res.code == 201) {
+          this.$message.error('娣诲姞澶辫触')
           return
         }
-        if (!this.entrustCode) {
-          this.$message.error('璇峰~鍐欒鍗曠紪鍙�')
+        this.$message.success('娣诲姞鎴愬姛')
+        this.refreshTable()
+      })
+    },
+    // 纭鍑哄簱
+    confirmExport() {
+      if (!this.sampleCode) {
+        this.$message.error('璇峰~鍐欐牱鍝佺紪鍙�')
+        return
+      }
+      if (!this.entrustCode) {
+        this.$message.error('璇峰~鍐欒鍗曠紪鍙�')
+        return
+      }
+      this.upLoadExport = true;
+      this.$axios.post(this.$api.insOrderPlan.outInsOrderState, {
+        sampleCode: this.sampleCode,
+        entrustCode: this.entrustCode,
+        sonLaboratory: this.componentData.entity.sonLaboratory
+      }).then(res => {
+        this.upLoadExport = false;
+        this.exportVisible = false
+        this.sampleCode = '';
+        this.entrustCode = '';
+        if (res.code == 201) {
+          this.$message.error('鍑哄簱澶辫触')
           return
         }
-        if (this.selectTree.length < 4) {
-          this.$message.error('璇烽�夋嫨鏍峰搧鍏ュ簱浣嶇疆')
-          return
-        }
-        this.upLoadStorage = true;
-        this.$axios.post(this.$api.insOrderPlan.scanInsOrderState, {
-          trees: this.selectTree.join('-'),
-          sampleCode:this.sampleCode,
-          entrustCode:this.entrustCode,
-          sonLaboratory: this.componentData.entity.sonLaboratory
-        }).then(res => {
-          this.upLoadStorage = false;
-          this.qrCodeVisible = false
-          this.sampleCode = '';
-          this.entrustCode = '';
-          this.selectTree = []
-          if (res.code == 201) {
-            this.$message.error('娣诲姞澶辫触')
-            return
-          }
-          this.$message.success('娣诲姞鎴愬姛')
-          this.refreshTable()
-        })
-      },
-      // 纭鍑哄簱
-      confirmExport () {
-        if (!this.sampleCode) {
-          this.$message.error('璇峰~鍐欐牱鍝佺紪鍙�')
-          return
-        }
-        if (!this.entrustCode) {
-          this.$message.error('璇峰~鍐欒鍗曠紪鍙�')
-          return
-        }
-        this.upLoadExport = true;
-        this.$axios.post(this.$api.insOrderPlan.outInsOrderState, {
-          sampleCode:this.sampleCode,
-          entrustCode:this.entrustCode,
-          sonLaboratory: this.componentData.entity.sonLaboratory
-        }).then(res => {
-          this.upLoadExport = false;
-          this.exportVisible = false
-          this.sampleCode = '';
-          this.entrustCode = '';
-          if (res.code == 201) {
-            this.$message.error('鍑哄簱澶辫触')
-            return
-          }
-          this.$message.success('鍑哄簱鎴愬姛')
-          this.handleShelf(this.entity.shelfId)
-        })
-      },
-      // 鎵爜鏋寜涓�
-      keyup(e){
-        var codeInfo = null
-        try{
-          console.log(2222,this.codeInfo)
-          codeInfo = JSON.parse(this.codeInfo)
-          if(!codeInfo||codeInfo.sampleCode==undefined||codeInfo.entrustCode==undefined){
-              this.$message.error('璇ヤ簩缁寸爜鏈夎')
-          }else{
-              this.sampleCode = codeInfo.sampleCode
-              this.entrustCode = codeInfo.entrustCode
-          }
-        }catch(e){
-          this.$message.error('璇疯皟鑷宠嫳鏂囬敭鐩�')
-          console.log(e)
-        }
-        this.codeInfo = null
-      },
-      // 鎷栨嫿
-      initializeSortable() {
-        const tableBody = this.$refs.table0.$el.querySelector('.el-table__body-wrapper > table > tbody');
-        if (tableBody) {
-          Sortable.create(tableBody, {
-            handle: '.el-table__row', // 鎷栧姩鎵嬫焺
-            animation: 200,
-            onEnd: this.handleSortEnd,
-          });
+        this.$message.success('鍑哄簱鎴愬姛')
+        this.handleShelf(this.entity.shelfId)
+      })
+    },
+    // 鎵爜鏋寜涓�
+    keyup(e) {
+      var codeInfo = null
+      try {
+        console.log(2222, this.codeInfo)
+        codeInfo = JSON.parse(this.codeInfo)
+        if (!codeInfo || codeInfo.sampleCode == undefined || codeInfo.entrustCode == undefined) {
+          this.$message.error('璇ヤ簩缁寸爜鏈夎')
         } else {
-          console.error('Table body not found.');
+          this.sampleCode = codeInfo.sampleCode
+          this.entrustCode = codeInfo.entrustCode
         }
-      },
-      handleSortEnd(evt) {
-        const oldIndex = evt.oldIndex;
-        const newIndex = evt.newIndex;
-        const movedItem = this.tableData[oldIndex];
-        if (oldIndex !== newIndex) {
-          this.tableData.splice(oldIndex, 1);
-          this.tableData.splice(newIndex, 0, movedItem);
-        }
-        this.upIndex++
-        this.$axios.post(this.$api.insOrderPlan.jumpTeam,
-          {
-            id: movedItem.orderStateId,
-            sort: newIndex+1,
-            ...this.page
-          }, {
-          headers: {
-            'Content-Type': 'application/json'
-          }
-        }
-        ).then(res => {
-
-        })
-      },
-      rowClassName({ row, rowIndex }) {
-        return 'draggable-row';
-      },
-			// 鏁版嵁鏌ョ湅
-			handleDataLook(row) {
-				this.componentDataDataLook.entity.id = row.id
-				this.dataDialogVisible = true;
-			},
-      // 鏉冮檺鍒嗛厤
-			getPower(radio) {
-				let power = JSON.parse(sessionStorage.getItem('power'))
-				let inspection = false
-				let connect = false
-				let review = false
-        let claim = false
-        let jumpTeam = false
-        let verifyPlan2 = false
-        // let getInsProduct2 = false
-        // let getInsOrderUserList = false
-				for (var i = 0; i < power.length; i++) {
-					if (power[i].menuMethod == 'doInsOrder') {
-						inspection = true
-					}
-					if (power[i].menuMethod == 'upPlanUser') {
-						connect = true
-					}
-					if (power[i].menuMethod == 'verifyPlan') {
-						review = true
-					}
-          if (power[i].menuMethod == 'verifyPlan2') {
-						verifyPlan2 = true
-					}
-          if (power[i].menuMethod == 'claimInsOrderPlan') {
-						claim = true
-					}
-          if (power[i].menuMethod == 'jumpTeam') {
-						jumpTeam = true
-					}
-          // if (power[i].menuMethod == 'getInsProduct2') {
-					// 	getInsProduct2 = true
-					// }
-          if (power[i].menuMethod == 'scanInsOrderState') {
-						this.scanInsOrderState = true
-					}
-          if (power[i].menuMethod == 'scanInsOrderState') {
-						this.selectWarehouse = true
-					}
-				}
-        // if (!getInsProduct2) {
-				// 	this.componentData.do.splice(5, 1)
-				// }
-				// if (!claim) {
-				// 	this.componentData.do.splice(4, 1)
-				// }
-				// if (!review) {
-				// 	this.componentData.do.splice(3, 1)
-				// }
-        // if (!connect) {
-				// 	this.componentData.do.splice(2, 1)
-				// }
-				// if (!inspection) {
-				// 	this.componentData.do.splice(1, 1)
-				// }
-        // this.getInsProduct2 = getInsProduct2
-        this.claim = claim
-        this.review = review
-        this.verifyPlan2 =verifyPlan2
-        this.connect = connect
-        this.inspection = inspection
-        this.jumpTeam = jumpTeam
-			},
-			changeCheckBox(val) {
-				this.componentData.entity.userId = val?0:null
-				this.refreshTable()
-			},
-			refresh() {
-				this.componentData.entity = this.HaveJson(this.entityCopy)
-				if(this.tabList.length>0){
-					this.tabIndex = 0
-					this.componentData.entity.sonLaboratory = this.tabList[0].value
-				}
-				this.refreshTable()
-			},
-			claimFun(row) {
-				if (row) {
-					this.sampleUserForm = {
-						entrustCode: row.entrustCode,
-						insSampleId: row.sampleId,
-            sonLaboratory: row.sonLaboratory,
-					}
-					this.claimVisible = true
-				}
-			},
-			confirmClaim() {
-        this.loading = true;
-        // this.sampleUserForm.insSampleId = this.orderId
-				this.$axios.post(this.$api.insOrderPlan.claimInsOrderPlan, this.sampleUserForm, {
-					headers: {
-						'Content-Type': 'application/json'
-					},
-          noQs:true
-				},).then(res => {
-					if (res.code === 200 && res.data) {
-            this.loading = false;
-						this.$message.success("璁ら鎴愬姛")
-						this.claimVisible = false
-						this.refreshTable('page')
-					} else {
-						this.loading = false;
-					}
-				}).catch(error => {
-					console.error(error)
-          this.loading = false;
-				})
-			},
-			refreshTable() {
-				this.tableLoading = true
-        this.$axios.post(this.$api.insOrderPlan.selectInsOrderPlanList,{
-          entity:this.componentData.entity,
-          page:this.page
+      } catch (e) {
+        this.$message.error('璇疯皟鑷宠嫳鏂囬敭鐩�')
+        console.log(e)
+      }
+      this.codeInfo = null
+    },
+    // 鎷栨嫿
+    initializeSortable() {
+      const tableBody = this.$refs.table0.$el.querySelector('.el-table__body-wrapper > table > tbody');
+      if (tableBody) {
+        Sortable.create(tableBody, {
+          handle: '.el-table__row', // 鎷栧姩鎵嬫焺
+          animation: 200,
+          onEnd: this.handleSortEnd,
+        });
+      } else {
+        console.error('Table body not found.');
+      }
+    },
+    handleSortEnd(evt) {
+      const oldIndex = evt.oldIndex;
+      const newIndex = evt.newIndex;
+      const movedItem = this.tableData[oldIndex];
+      if (oldIndex !== newIndex) {
+        this.tableData.splice(oldIndex, 1);
+        this.tableData.splice(newIndex, 0, movedItem);
+      }
+      this.upIndex++
+      this.$axios.post(this.$api.insOrderPlan.jumpTeam,
+        {
+          id: movedItem.orderStateId,
+          sort: newIndex + 1,
+          ...this.page
         }, {
-          headers: {
-            'Content-Type': 'application/json'
+        headers: {
+          'Content-Type': 'application/json'
+        }
+      }
+      ).then(res => {
+
+      })
+    },
+    rowClassName({ row, rowIndex }) {
+      return 'draggable-row';
+    },
+    // 鏁版嵁鏌ョ湅
+    handleDataLook(row) {
+      this.componentDataDataLook.entity.id = row.id
+      this.dataDialogVisible = true;
+    },
+    // 鏉冮檺鍒嗛厤
+    getPower(radio) {
+      let power = JSON.parse(sessionStorage.getItem('power'))
+      let inspection = false
+      let connect = false
+      let review = false
+      let claim = false
+      let jumpTeam = false
+      let verifyPlan2 = false
+      // let getInsProduct2 = false
+      // let getInsOrderUserList = false
+      for (var i = 0; i < power.length; i++) {
+        if (power[i].menuMethod == 'doInsOrder') {
+          inspection = true
+        }
+        if (power[i].menuMethod == 'upPlanUser') {
+          connect = true
+        }
+        if (power[i].menuMethod == 'verifyPlan') {
+          review = true
+        }
+        if (power[i].menuMethod == 'verifyPlan2') {
+          verifyPlan2 = true
+        }
+        if (power[i].menuMethod == 'claimInsOrderPlan') {
+          claim = true
+        }
+        if (power[i].menuMethod == 'jumpTeam') {
+          jumpTeam = true
+        }
+        // if (power[i].menuMethod == 'getInsProduct2') {
+        // 	getInsProduct2 = true
+        // }
+        if (power[i].menuMethod == 'scanInsOrderState') {
+          this.scanInsOrderState = true
+        }
+        if (power[i].menuMethod == 'scanInsOrderState') {
+          this.selectWarehouse = true
+        }
+      }
+      // if (!getInsProduct2) {
+      // 	this.componentData.do.splice(5, 1)
+      // }
+      // if (!claim) {
+      // 	this.componentData.do.splice(4, 1)
+      // }
+      // if (!review) {
+      // 	this.componentData.do.splice(3, 1)
+      // }
+      // if (!connect) {
+      // 	this.componentData.do.splice(2, 1)
+      // }
+      // if (!inspection) {
+      // 	this.componentData.do.splice(1, 1)
+      // }
+      // this.getInsProduct2 = getInsProduct2
+      this.claim = claim
+      this.review = review
+      this.verifyPlan2 = verifyPlan2
+      this.connect = connect
+      this.inspection = inspection
+      this.jumpTeam = jumpTeam
+    },
+    changeCheckBox(val) {
+      this.componentData.entity.userId = val ? 0 : null
+      this.refreshTable()
+    },
+    refresh() {
+      this.componentData.entity = this.HaveJson(this.entityCopy)
+      if (this.tabList.length > 0) {
+        this.tabIndex = 0
+        this.componentData.entity.sonLaboratory = this.tabList[0].value
+      }
+      this.refreshTable()
+    },
+    claimFun(row) {
+      if (row) {
+        this.sampleUserForm = {
+          entrustCode: row.entrustCode,
+          insSampleId: row.sampleId,
+          sonLaboratory: row.sonLaboratory,
+        }
+        this.claimVisible = true
+      }
+    },
+    confirmClaim() {
+      this.loading = true;
+      // this.sampleUserForm.insSampleId = this.orderId
+      this.$axios.post(this.$api.insOrderPlan.claimInsOrderPlan, this.sampleUserForm, {
+        headers: {
+          'Content-Type': 'application/json'
+        },
+        noQs: true
+      },).then(res => {
+        if (res.code === 200 && res.data) {
+          this.loading = false;
+          this.$message.success("璁ら鎴愬姛")
+          this.claimVisible = false
+          this.refreshTable('page')
+        } else {
+          this.loading = false;
+        }
+      }).catch(error => {
+        console.error(error)
+        this.loading = false;
+      })
+    },
+    refreshTable() {
+      this.tableLoading = true
+      this.$axios.post(this.$api.insOrderPlan.selectInsOrderPlanList, {
+        entity: this.componentData.entity,
+        page: this.page
+      }, {
+        headers: {
+          'Content-Type': 'application/json'
+        }
+      }).then((res) => {
+        this.tableLoading = false
+        this.total = res.data.body.total
+        this.tableData = res.data.body.records
+        // this.$refs.table0.doLayout()
+      })
+    },
+    changeRowClass({
+      row,
+      rowIndex
+    }) {
+      if (this.currentTime == row.appointed) {
+        return 'highlight-warning-row-border'
+      } else if (this.currentTime > row.appointed) {
+        return 'highlight-danger-row-border'
+      }
+      return ''
+    },
+    onReset() {
+      this.searchForm = {
+        sampleName: null,
+        state: null,
+      }
+      this.componentData.entity.insState = null
+      this.componentData.entity.sampleName = null
+      this.refreshTable()
+    },
+    onSubmit() {
+      this.componentData.entity.insState = this.searchForm.state
+      this.componentData.entity.sampleName = this.searchForm.sampleName
+      this.$nextTick(() => {
+        this.refreshTable()
+      })
+    },
+    handleTab(m, i) {
+      this.tabIndex = i;
+      this.componentData.entity.sonLaboratory = m.value
+      this.refreshTable()
+    },
+    getTypeDicts() {
+      this.$axios.post(this.$api.enums.selectEnumByCategory, {
+        category: "绱ф�ョ▼搴�"
+      }).then(res => {
+        let data = res.data
+        data.forEach(ele => {
+          if (ele.value === '0') {
+            ele.type = 'success'
+          } else if (ele.value === '1') {
+            ele.type = 'warning'
+          } else if (ele.value === '2') {
+            ele.type = 'danger'
           }
-        }).then((res) => {
-          this.tableLoading = false
-          this.total = res.data.body.total
-          this.tableData = res.data.body.records
-          // this.$refs.table0.doLayout()
         })
-			},
-			changeRowClass({
-				row,
-				rowIndex
-			}) {
-				if (this.currentTime == row.appointed) {
-					return 'highlight-warning-row-border'
-				} else if (this.currentTime > row.appointed) {
-					return 'highlight-danger-row-border'
-				}
-				return ''
-			},
-			onReset() {
-				this.searchForm = {
-					sampleName: null,
-					state: null,
-				}
-				this.componentData.entity.insState = null
-				this.componentData.entity.sampleName = null
-				this.refreshTable()
-			},
-			onSubmit() {
-				this.componentData.entity.insState = this.searchForm.state
-				this.componentData.entity.sampleName = this.searchForm.sampleName
-				this.$nextTick(() => {
-					this.refreshTable()
-				})
-			},
-			handleTab(m, i) {
-				this.tabIndex = i;
-				this.componentData.entity.sonLaboratory = m.value
-				this.refreshTable()
-			},
-			getTypeDicts() {
-				this.$axios.post(this.$api.enums.selectEnumByCategory, {
-					category: "绱ф�ョ▼搴�"
-				}).then(res => {
-					let data = res.data
-					data.forEach(ele => {
-						if (ele.value === '0') {
-							ele.type = 'success'
-						} else if (ele.value === '1') {
-							ele.type = 'warning'
-						} else if (ele.value === '2') {
-							ele.type = 'danger'
-						}
-					})
-					this.componentData.tagField.type.select = data
-          this.typeList = data
-				})
-			},
-			getInsStateDicts() {
-				this.$axios.post(this.$api.enums.selectEnumByCategory, {
-					category: "妫�楠屼换鍔$姸鎬�"
-				}).then(res => {
-					let data = res.data
-					this.insStateList = data
-					data.forEach(ele => {
-						//0:寰呮楠� 1:妫�楠屼腑 2:宸叉楠� 3:寰呭鏍� 4:澶嶆牳鏈�氳繃 5:澶嶆牳閫氳繃
-						if (['2', '5'].includes(ele.value)) {
-							ele.type = 'success'
-						} else if (['1', '3'].includes(ele.value)) {
-							ele.type = 'warning'
-						} else if (['0', '4'].includes(ele.value)) {
-							ele.type = 'danger'
-						}
-					})
-					this.componentData.tagField.insState.select = data
-				})
-			},
-			getLaboratoryDicts() {
-				this.$axios.post(this.$api.enums.selectEnumByCategory, {
-					category: "瀛愬疄楠屽"
-				}).then(res => {
-					this.tabList = res.data.map(ele => {
-						return {
-							label: ele.label,
-							value: ele.value
-						}
-					})
-					if(this.tabList.length>0){
-						this.componentData.entity.sonLaboratory = this.tabList[0].value
-					}
-					this.refreshTable()
-				})
-			},
-			selectAllByOne(row) {
-				this.activeFace = 2;
-				this.examine = 1;
-				this.currentId = parseInt(row.id)
-			},
-			playOrder(num) {
-				this.activeFace = num
-			},
-			goback() {
-				this.state = 0
-				this.refreshTable('page')
-			},
-      handleInspection(row){
-        //褰撳墠妫�楠屼换鍔$殑妫�楠屼汉鍒楄〃
-        let inspectorList = []
-        if(row.userName){
-          inspectorList = row.userName.split(',')
+        this.componentData.tagField.type.select = data
+        this.typeList = data
+      })
+    },
+    getInsStateDicts() {
+      this.$axios.post(this.$api.enums.selectEnumByCategory, {
+        category: "妫�楠屼换鍔$姸鎬�"
+      }).then(res => {
+        let data = res.data
+        this.insStateList = data
+        data.forEach(ele => {
+          //0:寰呮楠� 1:妫�楠屼腑 2:宸叉楠� 3:寰呭鏍� 4:澶嶆牳鏈�氳繃 5:澶嶆牳閫氳繃
+          if (['2', '5'].includes(ele.value)) {
+            ele.type = 'success'
+          } else if (['1', '3'].includes(ele.value)) {
+            ele.type = 'warning'
+          } else if (['0', '4'].includes(ele.value)) {
+            ele.type = 'danger'
+          }
+        })
+        this.componentData.tagField.insState.select = data
+      })
+    },
+    getLaboratoryDicts() {
+      this.$axios.post(this.$api.enums.selectEnumByCategory, {
+        category: "瀛愬疄楠屽"
+      }).then(res => {
+        this.tabList = res.data.map(ele => {
+          return {
+            label: ele.label,
+            value: ele.value
+          }
+        })
+        if (this.tabList.length > 0) {
+          this.componentData.entity.sonLaboratory = this.tabList[0].value
         }
-        let user = JSON.parse(localStorage.getItem('user'))
-        if(user){
-          inspectorList.push(user.name)
-        }
-        this.inspectorList = inspectorList
-				this.orderId = row.sampleId
-        this.orderId0 = row.id
-        this.version = row.version
-        this.orderStateId = row.orderStateId
-        this.state = 1;
-        this.userInfo.name = row.userName.split(',')
-        this.userInfo.ids = row.userNameId.split(',')
-        this.isLook = false
-      },
-      handleConnect(row){
-        this.orderId = row.sampleId
-        this.orderId0 = row.id
-        this.connect = {}
-        this.connectVisible=true;
-        // this.$axios.post(this.$api.insOrderPlan.upPlanUser2, {
-        //     orderId:this.orderId,
-        //   }).then(res => {
-				// 	if (res.code === 200&&res.data.length>0) {
-        //     this.sonLaboratoryList = [];
-        //     res.data.forEach(m=>{
-        //       this.sonLaboratoryList.push({
-        //         value:m,
-        //         label:m
-        //       })
-        //     })
-        //     // this.connect.sonLaboratory = this.sonLaboratoryList[0].value
-				// 	}
-				// })
-      },
-      cancelSubmitPlan(row){
-        this.$confirm('纭畾鎾ら攢姝ゆ妫�楠屾彁浜�?', "鎻愮ず", {
-          confirmButtonText: "纭畾",
-          cancelButtonText: "鍙栨秷",
-          type: "warning"
-        }).then(() => {
-          this.$axios.post(this.$api.insOrderPlan.cancelSubmitPlan, {
+        this.refreshTable()
+      })
+    },
+    selectAllByOne(row) {
+      this.activeFace = 2;
+      this.examine = 1;
+      this.currentId = parseInt(row.id)
+    },
+    playOrder(num) {
+      this.activeFace = num
+    },
+    goback() {
+      this.state = 0
+      this.refreshTable('page')
+    },
+    handleInspection(row) {
+      //褰撳墠妫�楠屼换鍔$殑妫�楠屼汉鍒楄〃
+      let inspectorList = []
+      if (row.userName) {
+        inspectorList = row.userName.split(',')
+      }
+      let user = JSON.parse(localStorage.getItem('user'))
+      if (user) {
+        inspectorList.push(user.name)
+      }
+      this.inspectorList = inspectorList
+      this.orderId = row.sampleId
+      this.orderId0 = row.id
+      this.version = row.version
+      this.orderStateId = row.orderStateId
+      this.state = 1;
+      this.userInfo.name = row.userName.split(',')
+      this.userInfo.ids = row.userNameId.split(',')
+      this.isLook = false
+    },
+    handleConnect(row) {
+      this.orderId = row.sampleId
+      this.orderId0 = row.id
+      this.connect = {}
+      this.connectVisible = true;
+      // this.$axios.post(this.$api.insOrderPlan.upPlanUser2, {
+      //     orderId:this.orderId,
+      //   }).then(res => {
+      // 	if (res.code === 200&&res.data.length>0) {
+      //     this.sonLaboratoryList = [];
+      //     res.data.forEach(m=>{
+      //       this.sonLaboratoryList.push({
+      //         value:m,
+      //         label:m
+      //       })
+      //     })
+      //     // this.connect.sonLaboratory = this.sonLaboratoryList[0].value
+      // 	}
+      // })
+    },
+    cancelSubmitPlan(row) {
+      this.$confirm('纭畾鎾ら攢姝ゆ妫�楠屾彁浜�?', "鎻愮ず", {
+        confirmButtonText: "纭畾",
+        cancelButtonText: "鍙栨秷",
+        type: "warning"
+      }).then(() => {
+        this.$axios.post(this.$api.insOrderPlan.cancelSubmitPlan, {
           orderStateId: row.orderStateId
-				}).then(res => {
-          if(res.code==201){
+        }).then(res => {
+          if (res.code == 201) {
             return
           }
           this.$message.success("鎿嶄綔鎴愬姛")
           this.refreshTable('page')
-        }).catch(() => {})
-        }).catch(() => {})
-      },
-      confirmConnect(){
-        if(this.connect.connectPerson==null||this.connect.connectPerson==''||this.connect.connectPerson==undefined){
-          this.$message.error('鏈�夋嫨浜ゆ帴浜哄憳')
-          return
-        }
-        // if(this.connect.sonLaboratory==null||this.connect.sonLaboratory==''||this.connect.sonLaboratory==undefined){
-        //   this.$message.error('鏈�夋嫨璇曢獙瀹�')
-        //   return
-        // }
-        this.loading = true;
-          this.$axios.post(this.$api.insOrderPlan.upPlanUser, {
-            sampleId:this.orderId,
-            userId:this.connect.connectPerson,
-            sonLaboratory:this.componentData.entity.sonLaboratory,
-          }).then(res => {
-					if (res.code === 200) {
-            this.loading = false;
-						this.$message.success("鎿嶄綔鎴愬姛")
-						this.refreshTable('page')
-					}
-          this.connectVisible = false
-				}).catch(error => {
-					console.error(error)
-          this.loading = false;
-				})
-      },
-      handleReview(row){
-        this.state = 2;
-				this.orderId = row.sampleId
-        this.orderId0 = row.id
-        this.version = row.version
-        this.orderStateId = row.orderStateId
-        this.isLook = false
-      },
-      getAuthorizedPerson() {
-				this.$axios.get(this.$api.user.getUserMenu).then(res => {
-					let data = []
-					res.data.forEach(a => {
-						data.push({
-							label: a.name,
-							value: a.id
-						})
-					})
-					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 = this.currentHistory.sampleId
-        this.orderId0 = this.currentHistory.id
-        this.version = this.currentHistory.version
-        this.orderStateId = this.currentHistory.orderStateId
-        this.num1 = row.num
-        this.historyDialogVisible = false
-      },
-      // 绾犳澶嶆牳
-      upInsReview(){
-        if(this.verifyPlanInfo.type!=0&&this.verifyPlanInfo.type!=1&&this.verifyPlanInfo.type!=2){
-          return this.$message.error("璇烽�夋嫨澶嶆牳鐘舵��");
-        }
-        if(!this.verifyPlanInfo.tell){
-          return this.$message.error("璇疯緭鍏ョ籂姝e鏍哥殑鍘熷洜");
-        }
-        this.reviewLoading = true;
-        this.$axios
-          .post(this.$api.insOrderPlan.verifyPlan2, {
-            sampleId: this.verifyPlanInfo.sampleId,
-            type: this.verifyPlanInfo.type,
-            laboratory: this.componentData.entity.sonLaboratory,
-            tell: this.verifyPlanInfo.tell
-          })
-          .then(res => {
-            if (res.code === 200) {
-              this.$message.success("鎿嶄綔鎴愬姛");
-              this.upInsReviewDia = false;
-              this.refreshTable()
-            }
-            this.reviewLoading = false;
-          })
-          .catch(error => {
-            console.error(error);
-            this.reviewLoading = false;
-          });
-      },
-      handleReview0(row){
-        this.verifyPlanInfo = JSON.parse(JSON.stringify(row));
-        this.$set(this.verifyPlanInfo,'tell',null)
-        this.$set(this.verifyPlanInfo,'type',null)
-        this.upInsReviewDia = true
+        }).catch(() => { })
+      }).catch(() => { })
+    },
+    confirmConnect() {
+      if (this.connect.connectPerson == null || this.connect.connectPerson == '' || this.connect.connectPerson == undefined) {
+        this.$message.error('鏈�夋嫨浜ゆ帴浜哄憳')
+        return
       }
-		}
-	}
+      // if(this.connect.sonLaboratory==null||this.connect.sonLaboratory==''||this.connect.sonLaboratory==undefined){
+      //   this.$message.error('鏈�夋嫨璇曢獙瀹�')
+      //   return
+      // }
+      this.loading = true;
+      this.$axios.post(this.$api.insOrderPlan.upPlanUser, {
+        sampleId: this.orderId,
+        userId: this.connect.connectPerson,
+        sonLaboratory: this.componentData.entity.sonLaboratory,
+      }).then(res => {
+        if (res.code === 200) {
+          this.loading = false;
+          this.$message.success("鎿嶄綔鎴愬姛")
+          this.refreshTable('page')
+        }
+        this.connectVisible = false
+      }).catch(error => {
+        console.error(error)
+        this.loading = false;
+      })
+    },
+    handleReview(row) {
+      this.state = 2;
+      this.orderId = row.sampleId
+      this.orderId0 = row.id
+      this.version = row.version
+      this.orderStateId = row.orderStateId
+      this.isLook = false
+    },
+    getAuthorizedPerson() {
+      this.$axios.get(this.$api.user.getUserMenu).then(res => {
+        let data = []
+        res.data.forEach(a => {
+          data.push({
+            label: a.name,
+            value: a.id
+          })
+        })
+        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 = this.currentHistory.sampleId
+      this.orderId0 = this.currentHistory.id
+      this.version = this.currentHistory.version
+      this.orderStateId = this.currentHistory.orderStateId
+      this.num1 = row.num
+      this.historyDialogVisible = false
+    },
+    // 绾犳澶嶆牳
+    upInsReview() {
+      if (this.verifyPlanInfo.type != 0 && this.verifyPlanInfo.type != 1 && this.verifyPlanInfo.type != 2) {
+        return this.$message.error("璇烽�夋嫨澶嶆牳鐘舵��");
+      }
+      if (!this.verifyPlanInfo.tell) {
+        return this.$message.error("璇疯緭鍏ョ籂姝e鏍哥殑鍘熷洜");
+      }
+      this.reviewLoading = true;
+      this.$axios
+        .post(this.$api.insOrderPlan.verifyPlan2, {
+          sampleId: this.verifyPlanInfo.sampleId,
+          type: this.verifyPlanInfo.type,
+          laboratory: this.componentData.entity.sonLaboratory,
+          tell: this.verifyPlanInfo.tell
+        })
+        .then(res => {
+          if (res.code === 200) {
+            this.$message.success("鎿嶄綔鎴愬姛");
+            this.upInsReviewDia = false;
+            this.refreshTable()
+          }
+          this.reviewLoading = false;
+        })
+        .catch(error => {
+          console.error(error);
+          this.reviewLoading = false;
+        });
+    },
+    handleReview0(row) {
+      this.verifyPlanInfo = JSON.parse(JSON.stringify(row));
+      this.$set(this.verifyPlanInfo, 'tell', null)
+      this.$set(this.verifyPlanInfo, 'type', null)
+      this.upInsReviewDia = true
+    },
+    sortChange(ob) {
+      this.componentData.entity.orderBy = {}
+      this.componentData.entity.orderBy.field = ob.prop
+      if (ob.order == 'ascending') {
+        this.componentData.entity.orderBy.order = 'asc'
+      } else if (ob.order == 'descending') {
+        this.componentData.entity.orderBy.order = 'desc'
+      }
+      this.refreshTable()
+    }
+  }
+}
 </script>

--
Gitblit v1.9.3