From b572bdc7da9c6c47df9be5939f5d3280f2127546 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 02 八月 2024 17:18:35 +0800
Subject: [PATCH] Merge branch 'test' of http://114.132.189.42:9002/r/center-lims-before into test

---
 src/components/do/b1-ins-order/add.vue |  775 +++++++++++++++++++++++++++++++----------------------------
 1 files changed, 408 insertions(+), 367 deletions(-)

diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue
index efadf12..49505a1 100644
--- a/src/components/do/b1-ins-order/add.vue
+++ b/src/components/do/b1-ins-order/add.vue
@@ -131,7 +131,7 @@
 </style>
 
 <template>
-  <div class="ins_order_add">
+  <div class="ins_order_add" style=" display: block; ">
     <div v-show="!configShow&&!equipConfigShow&&!cableConfigShow">
       <el-row class="title">
         <el-col :span="6" style="padding-left: 20px;text-align: left;">濮旀墭鍗曚俊鎭�&nbsp;&nbsp;&nbsp;鎬讳环锛�<span
@@ -164,353 +164,355 @@
         </el-col>
       </el-row>
     </div>
-    <div class="search" v-show="!configShow&&!equipConfigShow&&!cableConfigShow">
-      <el-row>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label">濮旀墭缂栧彿锛�</div>
-          <div class="search_input">
-            <el-input v-model="addObj.entrustCode" size="small" placeholder="绯荤粺鐢熸垚" disabled></el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>妫�楠岀被鍒細</div>
-          <div class="search_input">
-            <el-select size="small" style="width: 100%;" clearable v-model="addObj.orderType" :disabled="active>1">
-              <el-option v-for="(a, ai) in orderType" :key="ai" :value="a.value" :label="a.label"></el-option>
-            </el-select>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6" >
-          <div class="search_label"><span class="required-span">* </span>鍒跺崟浜猴細</div>
-          <div class="search_input">
-            <el-input size="small" clearable disabled v-model="addObj.custom"></el-input>
-            <!-- <el-input readonly size="small" v-model="addObj.custom">
-              <template slot="append"><el-button slot="append" icon="el-icon-search" @click="selectUserDia = true"
-                  :disabled="active>1"></el-button></template>
-            </el-input> -->
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>濮旀墭鍗曚綅锛�</div>
-          <div class="search_input">
-            <!-- <el-input size="small" placeholder="鈫愰�夋嫨濮旀墭瀹㈡埛" clearable disabled v-model="addObj.company"></el-input> -->
-            <el-input readonly size="small" v-model="addObj.company" placeholder="閫夋嫨濮旀墭鍗曚綅">
-              <template slot="append"><el-button slot="append" icon="el-icon-search" @click="selectUserDia = true"
-                  :disabled="active>1"></el-button></template>
-            </el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>鑱旂郴鏂瑰紡锛�</div>
-          <div class="search_input">
-            <el-input size="small" placeholder="閫夋嫨濮旀墭瀹㈡埛" clearable :readonly="active>1" v-model="addObj.phone"></el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>绱ф�ョ▼搴︼細</div>
-          <div class="search_input">
-            <el-select size="small" style="width: 100%;" clearable v-model="addObj.type" :disabled="active>1">
-              <el-option v-for="(a, ai) in type" :key="ai" :value="a.value" :label="a.label"></el-option>
-            </el-select>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>鏍峰搧鍚嶇О锛�</div>
-          <div class="search_input">
-            <el-input readonly size="small" v-model="addObj.sample">
-              <template slot="append"><el-button slot="append" icon="el-icon-search" @click="selectStandardTree = true"
-                  :disabled="active>1"></el-button></template>
-            </el-input>
-          </div>
-        </el-col>
-        <!-- <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>鏍峰搧绫诲瀷锛�</div>
-          <div class="search_input">
-            <el-input size="small" clearable disabled v-model="addObj.sampleType"></el-input>
-          </div>
-        </el-col> -->
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>鏍峰搧鏁伴噺锛�</div>
-          <div class="search_input">
-            <el-input-number size="small" v-model="addObj.sampleNum" :min="1" :max="100" :precision="0"
-              style="width: 65%;" @change="addStandardTree" :disabled="active>1"></el-input-number>
-          </div>
-        </el-col>
-        <!-- <el-col class="search_thing" :span="6">
-          <div class="search_label">鏍峰搧鍗曚綅锛�</div>
-          <div class="search_input">
-            <el-select v-model="addObj.unit" clearable size="small" style="width: 100%;" :disabled="active>1">
-              <el-option v-for="(a, i) in units" :key="i" :label="a.label" :value="a.value"></el-option>
-            </el-select>
-          </div>
-        </el-col> -->
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>鏉ユ牱鏂瑰紡锛�</div>
-          <div class="search_input">
-            <el-select v-model="addObj.formType" size="small" :disabled="active>1" style="width: 100%;">
-              <el-option v-for="(a,ai) in formType" :key="ai" :label="a.label" :value="a.value"></el-option>
-            </el-select>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label">鎶ュ憡鍙戦�佹柟寮忥細</div>
-          <div class="search_input">
-            <el-radio-group v-model="addObj.send">
-              <el-radio :label="1">鑷彇</el-radio>
-              <el-radio :label="0">鍏朵粬</el-radio>
-            </el-radio-group>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label">鏍峰搧澶勭悊鏂瑰紡锛�</div>
-          <div class="search_input">
-            <el-radio-group v-model="addObj.processing">
-              <el-radio :label="0">濮旀墭鍗曚綅鍙栧洖</el-radio>
-              <el-radio :label="1">瀹為獙瀹ゅ鐞�</el-radio>
-            </el-radio-group>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label">宸ョ▼鍚嶇О锛�</div>
-          <div class="search_input">
-            <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.engineering"
-              :readonly="active>1"></el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label">宸ョ▼鍚嶇ОEN锛�</div>
-          <div class="search_input">
-            <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.engineeringEn"
-              :readonly="active>1"></el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>鐢熶骇鍗曚綅锛�</div>
-          <div class="search_input">
-            <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.production"
-              :readonly="active>1"></el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>鐢熶骇鍗曚綅EN锛�</div>
-          <div class="search_input">
-            <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.productionEn"
-              :readonly="active>1"></el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label">鏄惁鐣欐牱锛�</div>
-          <div class="search_input">
-            <el-radio-group v-model="addObj.isLeave">
-              <el-radio :label="0">涓嶇暀鏍�</el-radio>
-              <el-radio :label="1">鐣欐牱</el-radio>
-            </el-radio-group>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label" style="width: 175px;">鏄惁娑夊強閰嶅鏍峰搧锛�</div>
-          <div class="search_input" style="width: calc(100% - 175px);">
-            <el-radio-group v-model="addObj.mating" @change="$refs.sampleTable.doLayout()">
-              <el-radio :label="1">鏄�</el-radio>
-              <el-radio :label="0">鍚�</el-radio>
-            </el-radio-group>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label">OTC璁㈠崟鍙凤細</div>
-          <div class="search_input">
-            <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.otcCode" :readonly="active>1"></el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label">濮旀墭浜猴細</div>
-          <div class="search_input">
-            <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.prepareUser" :readonly="active>1"></el-input>
-          </div>
-        </el-col>
-        <el-col class="search_thing" :span="6" style="align-items: flex-start;margin: 8px 0;">
-          <div class="search_label">澶囨敞锛�</div>
-          <div class="search_input">
-            <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 2}" size="small" clearable :placeholder="active>1 ? '' : '璇疯緭鍏�'"
-              v-model="addObj.remark" :readonly="active>1"></el-input>
-          </div>
-        </el-col>
-        <!-- <el-col class="search_thing" :span="6" v-if="active==1">
-          <div class="search_label">RTS锛�</div>
-          <div class="search_input">
-            <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="RTS"></el-input>
-          </div>
-        </el-col> -->
-      </el-row>
-    </div>
-    <div v-show="!configShow&&!equipConfigShow&&!cableConfigShow">
-      <div class="search" v-if="active==1" style="display: flex;background: transparent;">
-        <div class="search_thing">
-          <div class="search_label">鏍峰搧鍨嬪彿锛�</div>
-          <div class="search_input">
-            <el-select v-model="model" :placeholder="active>1 ? '' : '璇疯緭鍏�'" filterable allow-create default-first-option size="small"
-              @change="changeModel">
-              <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
-              </el-option>
-            </el-select>
-          </div>
-        </div>
-        <div class="search_thing">
-          <div class="search_label">妫�楠屾爣鍑嗭細</div>
-          <div class="search_input">
-            <el-select v-model="standardMethodListId" :placeholder="active>1 ? '' : '璇疯緭鍏�'" size="small" @focus="methodFocus"
-              :loading="methodLoad" @change="changeStandardMethodListId">
-              <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
-              </el-option>
-            </el-select>
-          </div>
-        </div>
+    <div v-show="!configShow&&!equipConfigShow&&!cableConfigShow" class="container">
+      <div class="search">
+        <el-row>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label">濮旀墭缂栧彿锛�</div>
+            <div class="search_input">
+              <el-input v-model="addObj.entrustCode" size="small" placeholder="绯荤粺鐢熸垚" disabled></el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>妫�楠岀被鍒細</div>
+            <div class="search_input">
+              <el-select size="small" style="width: 100%;" clearable v-model="addObj.orderType" :disabled="active>1">
+                <el-option v-for="(a, ai) in orderType" :key="ai" :value="a.value" :label="a.label"></el-option>
+              </el-select>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6" >
+            <div class="search_label"><span class="required-span">* </span>鍒跺崟浜猴細</div>
+            <div class="search_input">
+              <el-input size="small" clearable disabled v-model="addObj.custom"></el-input>
+              <!-- <el-input readonly size="small" v-model="addObj.custom">
+                <template slot="append"><el-button slot="append" icon="el-icon-search" @click="selectUserDia = true"
+                    :disabled="active>1"></el-button></template>
+              </el-input> -->
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>濮旀墭鍗曚綅锛�</div>
+            <div class="search_input">
+              <!-- <el-input size="small" placeholder="鈫愰�夋嫨濮旀墭瀹㈡埛" clearable disabled v-model="addObj.company"></el-input> -->
+              <el-input readonly size="small" v-model="addObj.company" placeholder="閫夋嫨濮旀墭鍗曚綅">
+                <template slot="append"><el-button slot="append" icon="el-icon-search" @click="selectUserDia = true"
+                    :disabled="active>1"></el-button></template>
+              </el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>鑱旂郴鏂瑰紡锛�</div>
+            <div class="search_input">
+              <el-input size="small" placeholder="閫夋嫨濮旀墭瀹㈡埛" clearable :readonly="active>1" v-model="addObj.phone"></el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>绱ф�ョ▼搴︼細</div>
+            <div class="search_input">
+              <el-select size="small" style="width: 100%;" clearable v-model="addObj.type" :disabled="active>1">
+                <el-option v-for="(a, ai) in type" :key="ai" :value="a.value" :label="a.label"></el-option>
+              </el-select>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>鏍峰搧鍚嶇О锛�</div>
+            <div class="search_input">
+              <el-input readonly size="small" v-model="addObj.sample">
+                <template slot="append"><el-button slot="append" icon="el-icon-search" @click="selectStandardTree = true"
+                    :disabled="active>1"></el-button></template>
+              </el-input>
+            </div>
+          </el-col>
+          <!-- <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>鏍峰搧绫诲瀷锛�</div>
+            <div class="search_input">
+              <el-input size="small" clearable disabled v-model="addObj.sampleType"></el-input>
+            </div>
+          </el-col> -->
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>鏍峰搧鏁伴噺锛�</div>
+            <div class="search_input">
+              <el-input-number size="small" v-model="addObj.sampleNum" :min="1" :max="100" :precision="0"
+                style="width: 65%;" @change="addStandardTree" :disabled="active>1"></el-input-number>
+            </div>
+          </el-col>
+          <!-- <el-col class="search_thing" :span="6">
+            <div class="search_label">鏍峰搧鍗曚綅锛�</div>
+            <div class="search_input">
+              <el-select v-model="addObj.unit" clearable size="small" style="width: 100%;" :disabled="active>1">
+                <el-option v-for="(a, i) in units" :key="i" :label="a.label" :value="a.value"></el-option>
+              </el-select>
+            </div>
+          </el-col> -->
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>鏉ユ牱鏂瑰紡锛�</div>
+            <div class="search_input">
+              <el-select v-model="addObj.formType" size="small" :disabled="active>1" style="width: 100%;">
+                <el-option v-for="(a,ai) in formType" :key="ai" :label="a.label" :value="a.value"></el-option>
+              </el-select>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label">鎶ュ憡鍙戦�佹柟寮忥細</div>
+            <div class="search_input">
+              <el-radio-group v-model="addObj.send">
+                <el-radio :label="1">鑷彇</el-radio>
+                <el-radio :label="0">鍏朵粬</el-radio>
+              </el-radio-group>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label">鏍峰搧澶勭悊鏂瑰紡锛�</div>
+            <div class="search_input">
+              <el-radio-group v-model="addObj.processing">
+                <el-radio :label="0">濮旀墭鍗曚綅鍙栧洖</el-radio>
+                <el-radio :label="1">瀹為獙瀹ゅ鐞�</el-radio>
+              </el-radio-group>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label">宸ョ▼鍚嶇О锛�</div>
+            <div class="search_input">
+              <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.engineering"
+                :readonly="active>1"></el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label">宸ョ▼鍚嶇ОEN锛�</div>
+            <div class="search_input">
+              <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.engineeringEn"
+                :readonly="active>1"></el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>鐢熶骇鍗曚綅锛�</div>
+            <div class="search_input">
+              <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.production"
+                :readonly="active>1"></el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label"><span class="required-span">* </span>鐢熶骇鍗曚綅EN锛�</div>
+            <div class="search_input">
+              <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.productionEn"
+                :readonly="active>1"></el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label">鏄惁鐣欐牱锛�</div>
+            <div class="search_input">
+              <el-radio-group v-model="addObj.isLeave">
+                <el-radio :label="0">涓嶇暀鏍�</el-radio>
+                <el-radio :label="1">鐣欐牱</el-radio>
+              </el-radio-group>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label" style="width: 175px;">鏄惁娑夊強閰嶅鏍峰搧锛�</div>
+            <div class="search_input" style="width: calc(100% - 175px);">
+              <el-radio-group v-model="addObj.mating" @change="$refs.sampleTable.doLayout()">
+                <el-radio :label="1">鏄�</el-radio>
+                <el-radio :label="0">鍚�</el-radio>
+              </el-radio-group>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label">OTC璁㈠崟鍙凤細</div>
+            <div class="search_input">
+              <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.otcCode" :readonly="active>1"></el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6">
+            <div class="search_label">濮旀墭浜猴細</div>
+            <div class="search_input">
+              <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.prepareUser" :readonly="active>1"></el-input>
+            </div>
+          </el-col>
+          <el-col class="search_thing" :span="6" style="align-items: flex-start;margin: 8px 0;">
+            <div class="search_label">澶囨敞锛�</div>
+            <div class="search_input">
+              <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 2}" size="small" clearable :placeholder="active>1 ? '' : '璇疯緭鍏�'"
+                v-model="addObj.remark" :readonly="active>1"></el-input>
+            </div>
+          </el-col>
+          <!-- <el-col class="search_thing" :span="6" v-if="active==1">
+            <div class="search_label">RTS锛�</div>
+            <div class="search_input">
+              <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="RTS"></el-input>
+            </div>
+          </el-col> -->
+        </el-row>
       </div>
-      <el-table class="el-table sampleTable" ref="sampleTable" :data="sampleList" height="250px" tooltip-effect="dark"
-        border @selection-change="selectSample" highlight-current-row @row-click="rowClick" style="margin-top: 10px;">
-        <el-table-column type="selection" width="60" :selectable="selectable" v-if="active==1"></el-table-column>
-        <el-table-column type="index" label="搴忓彿" width="65" align="center"></el-table-column>
-        <el-table-column prop="sample" label="鏍峰搧鍚嶇О" align="center" min-width="100">
-          <template slot-scope="scope">
-            <el-input size="small" v-model="scope.row.sample" clearable :readonly="active>1"></el-input>
-          </template>
-        </el-table-column>
-        <el-table-column prop="sampleCode" label="鏍峰搧缂栧彿" min-width="140" align="center">
-          <template slot-scope="scope">
-            <el-input size="small" v-model="scope.row.sampleCode" clearable placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚"
-              :readonly="active>1"></el-input>
-          </template>
-        </el-table-column>
-        <el-table-column prop="model" label="鏍峰搧鍨嬪彿" align="center" min-width="100">
-          <template slot-scope="scope">
-            <el-select v-model="scope.row.model" filterable allow-create default-first-option placeholder="鏍峰搧鍨嬪彿"
-              size="small" @change="handleChangeModel" :disabled="active>1" style="width: 100%;">
-              <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
-              </el-option>
-            </el-select>
-          </template>
-        </el-table-column>
-        <el-table-column prop="modelNum" label="鍨嬪彿鍙傛暟" width="130" align="center" v-if="!(active>1)">
-          <template slot-scope="scope">
-            <el-input size="small" v-model="scope.row.modelNum" clearable placeholder="闈炲繀濉�"
-              @keyup.enter.native="methodChange(scope.row.standardMethodListId, scope.row)"
-              @clear="methodChange(scope.row.standardMethodListId, scope.row)"></el-input>
-          </template>
-        </el-table-column>
-        <el-table-column prop="standardMethodListId" label="妫�楠屾爣鍑�" align="center" min-width="100">
-          <template slot-scope="scope">
-            <el-select v-model="scope.row.standardMethodListId" :disabled="scope.row.model==null||active>1"
-              placeholder="妫�楠屾爣鍑�" size="small" :loading="methodLoad" @change="(value)=>methodChange(value, scope.row)"
-              @focus="methodFocus" :readonly="active>1" style="width: 100%;" clearable @clear="productList = []">
-              <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
-              </el-option>
-            </el-select>
-          </template>
-        </el-table-column>
-        <el-table-column prop="joinName" label="閰嶅鏍峰搧鍚嶇О" width="140" align="center" v-if="addObj.mating==1">
-          <template slot-scope="scope">
-            <el-input size="small" type="textarea" :autosize="{ minRows: 1, maxRows: 1}"
-              v-model="scope.row.joinName"></el-input>
-          </template>
-        </el-table-column>
-        <el-table-column prop="joinModel" label="閰嶅鏍峰搧鍨嬪彿" width="140" align="center" v-if="addObj.mating==1">
-          <template slot-scope="scope">
-            <el-input size="small" type="textarea" :autosize="{ minRows: 1, maxRows: 1}"
-              v-model="scope.row.joinModel"></el-input>
-          </template>
-        </el-table-column>
-        <el-table-column prop="joinNum" label="閰嶅鏍峰搧鏁伴噺" width="140" align="center" v-if="addObj.mating==1">
-          <template slot-scope="scope">
-            <el-input-number size="small" v-model="scope.row.joinNum" :min="1" :max="100" :precision="0"
-              :controls="false" style="width: 80%;"></el-input-number>
-          </template>
-        </el-table-column>
-        <el-table-column prop="proNum" label="寰呮椤规暟閲�" width="105" align="center"></el-table-column>
-      </el-table>
-      <el-table class="el-table" ref="productTable" :data="productList" height="380px" tooltip-effect="dark" border
-        @selection-change="selectProduct" style="margin-bottom: 10px;" @select="upProductSelect" :row-key="rowKey"
-        :row-class-name="tableRowClassName" v-loading="getProductLoad" @select-all="handleAll">
-        <el-table-column type="selection" width="65" :selectable="selectable" v-if="active==1" :reserve-selection="true"></el-table-column>
-        <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip>
-          <template slot="header" slot-scope="scope">
-            <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
-              <span>妫�楠岄」</span>
-              <el-input
-                v-if="active==1"
-              v-model="inspectionItem"
-              @input="searchFilterList"
-              size="mini"
-              placeholder="璇疯緭鍏�"/>
+      <div style="height: auto;">
+        <div class="search" v-if="active==1" style="display: flex;background: transparent;">
+          <div class="search_thing">
+            <div class="search_label">鏍峰搧鍨嬪彿锛�</div>
+            <div class="search_input">
+              <el-select v-model="model" :placeholder="active>1 ? '' : '璇疯緭鍏�'" filterable allow-create default-first-option size="small"
+                @change="changeModel">
+                <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
+                </el-option>
+              </el-select>
             </div>
-          </template>
-        </el-table-column>
-        <el-table-column prop="inspectionItemSubclass" label="妫�楠岄」瀛愰」" min-width="140"
-          show-overflow-tooltip>
-          <template slot="header" slot-scope="scope">
-            <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
-              <span>妫�楠岄」瀛愰」</span>
-              <el-input
-                v-if="active==1"
-                v-model="inspectionItemSubclass"
+          </div>
+          <div class="search_thing">
+            <div class="search_label">妫�楠屾爣鍑嗭細</div>
+            <div class="search_input">
+              <el-select v-model="standardMethodListId" :placeholder="active>1 ? '' : '璇疯緭鍏�'" size="small" @focus="methodFocus"
+                :loading="methodLoad" @change="changeStandardMethodListId">
+                <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
+                </el-option>
+              </el-select>
+            </div>
+          </div>
+        </div>
+        <el-table class="el-table sampleTable" ref="sampleTable" :data="sampleList" height="250px" tooltip-effect="dark"
+          border @selection-change="selectSample" highlight-current-row @row-click="rowClick" style="margin-top: 10px;">
+          <el-table-column type="selection" width="60" :selectable="selectable" v-if="active==1"></el-table-column>
+          <el-table-column type="index" label="搴忓彿" width="65" align="center"></el-table-column>
+          <el-table-column prop="sample" label="鏍峰搧鍚嶇О" align="center" min-width="100">
+            <template slot-scope="scope">
+              <el-input size="small" v-model="scope.row.sample" clearable :readonly="active>1"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column prop="sampleCode" label="鏍峰搧缂栧彿" min-width="140" align="center">
+            <template slot-scope="scope">
+              <el-input size="small" v-model="scope.row.sampleCode" clearable placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚"
+                :readonly="active>1"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column prop="model" label="鏍峰搧鍨嬪彿" align="center" min-width="100">
+            <template slot-scope="scope">
+              <el-select v-model="scope.row.model" filterable allow-create default-first-option placeholder="鏍峰搧鍨嬪彿"
+                size="small" @change="handleChangeModel" :disabled="active>1" style="width: 100%;">
+                <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
+                </el-option>
+              </el-select>
+            </template>
+          </el-table-column>
+          <el-table-column prop="modelNum" label="鍨嬪彿鍙傛暟" width="130" align="center" v-if="!(active>1)">
+            <template slot-scope="scope">
+              <el-input size="small" v-model="scope.row.modelNum" clearable placeholder="闈炲繀濉�"
+                @keyup.enter.native="methodChange(scope.row.standardMethodListId, scope.row)"
+                @clear="methodChange(scope.row.standardMethodListId, scope.row)"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column prop="standardMethodListId" label="妫�楠屾爣鍑�" align="center" min-width="100">
+            <template slot-scope="scope">
+              <el-select v-model="scope.row.standardMethodListId" :disabled="scope.row.model==null||active>1"
+                placeholder="妫�楠屾爣鍑�" size="small" :loading="methodLoad" @change="(value)=>methodChange(value, scope.row)"
+                @focus="methodFocus" :readonly="active>1" style="width: 100%;" clearable @clear="productList = []">
+                <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
+                </el-option>
+              </el-select>
+            </template>
+          </el-table-column>
+          <el-table-column prop="joinName" label="閰嶅鏍峰搧鍚嶇О" width="140" align="center" v-if="addObj.mating==1">
+            <template slot-scope="scope">
+              <el-input size="small" type="textarea" :autosize="{ minRows: 1, maxRows: 1}"
+                v-model="scope.row.joinName"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column prop="joinModel" label="閰嶅鏍峰搧鍨嬪彿" width="140" align="center" v-if="addObj.mating==1">
+            <template slot-scope="scope">
+              <el-input size="small" type="textarea" :autosize="{ minRows: 1, maxRows: 1}"
+                v-model="scope.row.joinModel"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column prop="joinNum" label="閰嶅鏍峰搧鏁伴噺" width="140" align="center" v-if="addObj.mating==1">
+            <template slot-scope="scope">
+              <el-input-number size="small" v-model="scope.row.joinNum" :min="1" :max="100" :precision="0"
+                :controls="false" style="width: 80%;"></el-input-number>
+            </template>
+          </el-table-column>
+          <el-table-column prop="proNum" label="寰呮椤规暟閲�" width="105" align="center"></el-table-column>
+        </el-table>
+        <el-table class="el-table" ref="productTable" :data="productList" height="380px" tooltip-effect="dark" border
+          @selection-change="selectProduct" style="margin-bottom: 10px;" @select="upProductSelect" :row-key="rowKey"
+          :row-class-name="tableRowClassName" v-loading="getProductLoad" @select-all="handleAll">
+          <el-table-column type="selection" width="65" :selectable="selectable" v-if="active==1" :reserve-selection="true"></el-table-column>
+          <el-table-column prop="inspectionItemClass" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被" min-width="140" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="inspectionItemClassEn" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被(EN)" min-width="140" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip>
+            <template slot="header" slot-scope="scope">
+              <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
+                <span>妫�楠岄」</span>
+                <el-input
+                  v-if="active==1"
+                v-model="inspectionItem"
                 @input="searchFilterList"
                 size="mini"
                 placeholder="璇疯緭鍏�"/>
-            </div>
-          </template>
-        </el-table-column>
-        <el-table-column prop="inspectionItemClass" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被" min-width="140" show-overflow-tooltip></el-table-column>
-        <el-table-column prop="inspectionItemClassEn" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被(EN)" min-width="140" show-overflow-tooltip></el-table-column>
-        <el-table-column prop="sonLaboratory" label="瀛愬疄楠屽" min-width="130" show-overflow-tooltip :filters="filters"
-          :filter-method="filterHandler"></el-table-column>
-        <el-table-column prop="methodS" label="璇曢獙鏂规硶" min-width="120" show-overflow-tooltip>
-          <template slot="header" slot-scope="scope">
-            <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
-              <span>璇曢獙鏂规硶</span>
-              <el-input
-                v-if="active==1"
-                v-model="methodS"
-                @input="searchFilterList"
-                size="mini"
-                placeholder="璇疯緭鍏�"/>
-            </div>
-          </template>
-        </el-table-column>
-        <el-table-column prop="unit" label="璁¢噺鍗曚綅" width="100" show-overflow-tooltip></el-table-column>
-        <el-table-column prop="price" label="鍗曚环" width="100" show-overflow-tooltip></el-table-column>
-        <!-- <el-table-column prop="manDay" label="棰勮鏃堕棿(澶�)" width="120" show-overflow-tooltip></el-table-column>
-        <el-table-column prop="manHour" label="宸ユ椂绯绘暟" width="100" show-overflow-tooltip></el-table-column> -->
-        <!-- <el-table-column prop="deviceGroup" label="璁惧缁�" width="120" show-overflow-tooltip></el-table-column> -->
-        <el-table-column prop="section" label="鍖洪棿" min-width="120" show-overflow-tooltip></el-table-column>
-        <el-table-column prop="ask" label="瑕佹眰鍊�" min-width="220px" v-if="isAskOnlyRead">
-          <template slot-scope="scope">
-            <el-input size="small" placeholder="瑕佹眰鍊�" v-model="scope.row.ask" clearable type="textarea"
-              :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row,'ask')"
-              v-if="active==1&&isAskOnlyRead"></el-input>
-            <span v-else>
-              <!-- <template v-if="(scope.row.ask.indexOf('D')>-1
-              ||scope.row.ask.indexOf('W')>-1
-              ||scope.row.ask.indexOf('X')>-1
-              ||scope.row.ask.indexOf('RTS')>-1
-              ||scope.row.ask.indexOf('H')>-1
-              ||scope.row.ask.indexOf('L')>-1)&&active==1">
-                <input class="askRts" v-model="scope.row.rts" /><br />{{ scope.row.ask }}
-              </template>
-              <template v-else>{{ scope.row.ask }}</template> -->
-              <template >{{ scope.row.ask }}</template>
-            </span>
-          </template>
-        </el-table-column>
-        <el-table-column prop="tell" label="瑕佹眰鎻忚堪" min-width="220px">
-          <template slot-scope="scope">
-            <el-input size="small" placeholder="瑕佹眰鎻忚堪" v-model="scope.row.tell" clearable type="textarea"
-              :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row,'tell')"
-              v-if="active==1&&isAskOnlyRead"></el-input>
-            <span v-else>
-              <template >{{ scope.row.tell }}</template>
-            </span>
-          </template>
-        </el-table-column>
-      </el-table>
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column prop="inspectionItemSubclass" label="妫�楠岄」瀛愰」" min-width="140"
+            show-overflow-tooltip>
+            <template slot="header" slot-scope="scope">
+              <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
+                <span>妫�楠岄」瀛愰」</span>
+                <el-input
+                  v-if="active==1"
+                  v-model="inspectionItemSubclass"
+                  @input="searchFilterList"
+                  size="mini"
+                  placeholder="璇疯緭鍏�"/>
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column prop="tell" label="瑕佹眰鎻忚堪" min-width="220px">
+            <template slot-scope="scope">
+              <el-input size="small" placeholder="瑕佹眰鎻忚堪" v-model="scope.row.tell" clearable type="textarea"
+                :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row,'tell')"
+                v-if="active==1&&isAskOnlyRead"></el-input>
+              <span v-else>
+                <template >{{ scope.row.tell }}</template>
+              </span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="ask" label="瑕佹眰鍊�" min-width="220px" v-if="isAskOnlyRead">
+            <template slot-scope="scope">
+              <el-input size="small" placeholder="瑕佹眰鍊�" v-model="scope.row.ask" clearable type="textarea"
+                :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row,'ask')"
+                v-if="active==1&&isAskOnlyRead"></el-input>
+              <span v-else>
+                <!-- <template v-if="(scope.row.ask.indexOf('D')>-1
+                ||scope.row.ask.indexOf('W')>-1
+                ||scope.row.ask.indexOf('X')>-1
+                ||scope.row.ask.indexOf('RTS')>-1
+                ||scope.row.ask.indexOf('H')>-1
+                ||scope.row.ask.indexOf('L')>-1)&&active==1">
+                  <input class="askRts" v-model="scope.row.rts" /><br />{{ scope.row.ask }}
+                </template>
+                <template v-else>{{ scope.row.ask }}</template> -->
+                <template >{{ scope.row.ask }}</template>
+              </span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="methodS" label="璇曢獙鏂规硶" min-width="120" show-overflow-tooltip>
+            <template slot="header" slot-scope="scope">
+              <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px">
+                <span>璇曢獙鏂规硶</span>
+                <el-input
+                  v-if="active==1"
+                  v-model="methodS"
+                  @input="searchFilterList"
+                  size="mini"
+                  placeholder="璇疯緭鍏�"/>
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column prop="unit" label="璁¢噺鍗曚綅" width="100" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="price" label="鍗曚环" width="100" show-overflow-tooltip></el-table-column>
+          <!-- <el-table-column prop="manDay" label="棰勮鏃堕棿(澶�)" width="120" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="manHour" label="宸ユ椂绯绘暟" width="100" show-overflow-tooltip></el-table-column> -->
+          <!-- <el-table-column prop="deviceGroup" label="璁惧缁�" width="120" show-overflow-tooltip></el-table-column> -->
+          <el-table-column prop="section" label="鍖洪棿" min-width="120" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="sonLaboratory" label="瀛愬疄楠屽" min-width="130" show-overflow-tooltip :filters="filters"
+            :filter-method="filterHandler"></el-table-column>
+        </el-table>
+      </div>
     </div>
     <el-dialog title="閫夋嫨鍗曚綅" :visible.sync="selectUserDia" width="70%">
       <div class="body" style="height: 60vh;" v-if="selectUserDia">
@@ -959,7 +961,7 @@
           entity: {
             orderBy: {
               field: 'id',
-              order: 'asc'
+              order: 'desc'
             }
           },
           isIndex: true,
@@ -1363,6 +1365,19 @@
           this.temperatureData = this.temperatureData.slice(0,-deleteNum)
         }
       },
+      changeProductList0(){
+        this.productList0.forEach(a=>{
+          let obj = this.productList.find(m => m.id == a.id)
+          if(obj){
+            a.state = obj.state
+            a.section = obj.section
+            a.ask = obj.ask
+            a.manHour = obj.manHour
+            a.price = obj.price
+            a.tell = obj.tell
+          }
+        })
+      },
       searchFilterList () {
         const vtw = {
           inspectionItem: this.inspectionItem, // 妫�楠岄」
@@ -1372,6 +1387,7 @@
         const isHaveValue = Object.values(vtw).some(item => {
           return item
         })
+        this.changeProductList0()
         if (isHaveValue) {
           for(let i in vtw) {
             if (vtw[i]) {
@@ -1380,9 +1396,19 @@
               })
             }
           }
+          this.$nextTick(()=>{
+            this.productList.forEach(a => {
+              if (a.state == 1) this.toggleSelection(a)
+            })
+          })
         } else {
           // 娌℃湁鏌ヨ鏉′欢鏃舵覆鏌撴墍鏈夋暟鎹�
           this.productList = this.productList0
+          this.$nextTick(()=>{
+            this.productList.forEach(a => {
+              if (a.state == 1) this.toggleSelection(a)
+            })
+          })
         }
       },
       getAuthorizedPerson() {
@@ -1752,6 +1778,7 @@
       },
       saveMethod(sampleList){
         this.saveLoad = true
+        console.log(333333,sampleList)
         this.$axios.post(this.$api.insOrder.addInsOrder, {
           str: JSON.stringify({
             insOrder: this.addObj,
@@ -2055,6 +2082,7 @@
           this.sampleIds.push(row.id)
         }
         this.productList = row.insProduct
+        this.productList0 = JSON.parse(JSON.stringify(this.productList))
         setTimeout(() => {
           this.productList.forEach(a => {
             if (a.state == 1) this.toggleSelection(a)
@@ -2082,7 +2110,6 @@
           row.bsm1 = false
         }else if(arr.length>0){
           try{
-          row.bsmRow = this.HaveJson(row)
           let section = arr[0].section
           let arr0 = JSON.parse(row.section)
           let arr1 = JSON.parse(row.ask)
@@ -2134,7 +2161,7 @@
           return item
         })
         const select = this.selectTree.split(' - ')
-        if (row.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && row.state === 1) {
+        if (row.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && row.state === 1&&this.isAskOnlyRead) {
           this.circulateShow = true;
           return
         } else if (row.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && row.state === 0) {
@@ -2150,6 +2177,8 @@
         } else if ((row.inspectionItem === '娓╁崌璇曢獙' || row.inspectionItem === '鐑惊鐜�') && row.state === 0) {
           this.temperatureShow = false;
         }
+        this.changeProductList0()
+        this.currentMethod.insProduct = this.productList0
         this.getProNum()
       },
       searchProject () {
@@ -2229,7 +2258,8 @@
             name: this.templateName,
             thing: JSON.stringify({
               addObj: this.addObj,
-              sampleList: this.sampleList
+              sampleList: this.sampleList,
+              selectTree:this.selectTree
             })
           }, {
             headers: {
@@ -2254,6 +2284,7 @@
           let obj = JSON.parse(res.data)
           this.addObj = obj.addObj;
           this.sampleList = obj.sampleList;
+          this.selectTree = obj.selectTree
         })
       },
       delSampleAndProduct() {
@@ -2297,10 +2328,12 @@
           this.isAskOnlyRead = false
         }
         this.getProductLoad = true
+        let selectTreeList = this.selectTree.split(" - ")
+        selectTreeList[selectTreeList.length - 1] = this.addObj.model
         this.$axios.post(this.$api.standardTree.selectStandardProductList, {
-          model: row.model + '-' + row.modelNum,
+          model: this.addObj.model + '-' + row.modelNum,
           standardMethodListId: val,
-          factory: this.selectTree,
+          factory: selectTreeList.join(" - "),
         }, {
           headers: {
             'Content-Type': 'application/json'
@@ -2437,7 +2470,7 @@
             return
           }
           const select = this.selectTree.split(' - ')
-          if (p.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && p.state === 1) {
+          if (p.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && p.state === 1&&this.isAskOnlyRead) {
             this.circulateShow = true;
             return
           } else if (p.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && p.state === 0) {
@@ -2482,6 +2515,8 @@
             return item
           })
         }
+        this.changeProductList0()
+        this.currentMethod.insProduct = this.productList0
         this.getProNum()
         this.$nextTick(() => {
           this.$refs.productTable.doLayout()
@@ -2636,25 +2671,31 @@
         }
       },
       upBsmAll (item) {
-        let sections = JSON.parse(item.bsmRow.section);
-        let asks = JSON.parse(item.bsmRow.ask);
-        let tells = JSON.parse(item.bsmRow.tell);
-        let manHours = JSON.parse(item.bsmRow.manHour);
-        let prices = JSON.parse(item.bsmRow.price);
-        for (var a in sections) {
-          if (item.bsm1Val === sections[a]) {
-            this.productList.forEach(p => {
-              if (p.id === item.bsmRow.id) {
-                p.section = sections[a]
-                p.ask = asks[a]
-                p.tell = tells[a]
-                p.manHour = manHours[a]
-                p.price = prices[a]
-              }
-            })
-            break
+        // console.log(1111,item,this.bsm1DiaList)
+        for (let i =0;i<this.bsm1DiaList.length;i++){
+          this.bsm1DiaList[i].bsm1Val = item.bsm1Val
+          let sections = JSON.parse(this.bsm1DiaList[i].bsmRow.section);
+          let asks = JSON.parse(this.bsm1DiaList[i].bsmRow.ask);
+          let tells = JSON.parse(this.bsm1DiaList[i].bsmRow.tell);
+          let manHours = JSON.parse(this.bsm1DiaList[i].bsmRow.manHour);
+          let prices = JSON.parse(this.bsm1DiaList[i].bsmRow.price);
+          for (var a in sections) {
+            if (this.bsm1DiaList[i].bsm1Val === sections[a]) {
+              this.productList.forEach(p => {
+                if (p.id === this.bsm1DiaList[i].bsmRow.id) {
+                  p.section = sections[a]
+                  p.ask = asks[a]
+                  p.tell = tells[a]
+                  p.manHour = manHours[a]
+                  p.price = prices[a]
+                }
+              })
+              break
+            }
           }
         }
+        this.changeProductList0()
+        this.currentMethod.insProduct = this.productList0
       },
       beforeClose(done) {
         // if (this.bsm1) {

--
Gitblit v1.9.3