From 1bb3ecf8572352ac77beaa066dd07f2b8e6b8777 Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期四, 14 十二月 2023 19:40:36 +0800
Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before

---
 src/views/technology/routing/routing-form.vue                                   |   95 +--
 src/views/quality/finishedProductInspection/index.vue                           |   32 -
 src/const/crud/customerOrder/customerOrderForm.js                               |    7 
 src/views/warehouse/changestock/index.vue                                       |  306 +++++--------
 src/views/common/ztt-table.vue                                                  |    3 
 src/views/plan/productionschedul/index.vue                                      |    2 
 src/views/quality/teststandard/standard-form.vue                                |    6 
 src/views/technology/structure/single-structure-form.vue                        |  166 ++++---
 src/views/technology/document/document-form.vue                                 |    2 
 src/views/basic/warehouse/warehouse-form.vue                                    |    6 
 src/views/quality/processInspect/index.vue                                      |    8 
 src/views/technology/structure/index.vue                                        |   47 -
 src/views/warehouse/stock/index.vue                                             |   26 
 src/views/basic/location/location-form.vue                                      |    6 
 src/views/product/workbench/operation-task-pane.vue                             |    1 
 src/views/plan/customerorder/index.vue                                          |   42 -
 src/views/technology/completeproductstructure/completeproductstructure-form.vue |    2 
 src/views/product/workbench/workReportCard.vue                                  |    3 
 src/views/basic/part/part-form.vue                                              |   48 +-
 src/views/quality/finishedProductInspection/finishedProduct-form.vue            |   21 
 src/views/technology/operation/operation-form.vue                               |  135 +-----
 src/views/plan/operationtask/operationtask-form.vue                             |    1 
 src/views/quality/processInspect/processInspect-form.vue                        |   90 +--
 src/views/basic/customizeparamtemplatetype/templatetype-form.vue                |    6 
 src/views/product/workbench/taskinfo-pane.vue                                   |    1 
 src/views/quality/rawMaterial/rawMaterial-form.vue                              |    2 
 src/views/plan/masterproductionschedule/index.vue                               |    4 
 src/views/quality/newReport/ReportForm.vue                                      |    2 
 src/views/plan/customerorder/sample-customerorder-form.vue                      |  223 +---------
 src/views/product/workbench/steprecord-tab.vue                                  |    1 
 src/views/technology/completeproductstructure/index.vue                         |   14 
 31 files changed, 451 insertions(+), 857 deletions(-)

diff --git a/src/const/crud/customerOrder/customerOrderForm.js b/src/const/crud/customerOrder/customerOrderForm.js
index f23b3cf..99d8a29 100644
--- a/src/const/crud/customerOrder/customerOrderForm.js
+++ b/src/const/crud/customerOrder/customerOrderForm.js
@@ -26,6 +26,7 @@
   delBtn: false,
   align: 'center',
   addBtn: false,
+  addBtnText: '娣诲姞琛�',
   addRowBtn: true,
   refreshBtn: false, // 鏄惁鏄剧ず鍒锋柊鎸夐挳
   columnBtn: false, // 鏄惁鏄剧ず鏄惧奖鎸夐挳H
@@ -97,9 +98,11 @@
     label: '鏀惰揣鍦板潃',
     prop: 'shippingAddress',
     cell: true,
-    type: 'input',
+    type: 'textarea',
     minWidth: 200,
-    span: 24
+    span: 24,
+    minRows: 1,
+    maxRows: 3
   }, {
     label: '浜у搧澶囨敞',
     prop: 'remark',
diff --git a/src/views/basic/customizeparamtemplatetype/templatetype-form.vue b/src/views/basic/customizeparamtemplatetype/templatetype-form.vue
index 8acde63..927afd6 100644
--- a/src/views/basic/customizeparamtemplatetype/templatetype-form.vue
+++ b/src/views/basic/customizeparamtemplatetype/templatetype-form.vue
@@ -114,6 +114,9 @@
               this.visible = false
               this.isSubmit = false
               this.$emit('refreshDataList')
+            }).catch(error=>{
+              console.error(error);
+              this.isSubmit = false
             })
           } else {
             addObj(this.dataForm).then((data) => {
@@ -121,6 +124,9 @@
               this.visible = false
               this.isSubmit = false
               this.$emit('refreshDataList')
+            }).catch(error=>{
+              console.error(error);
+              this.isSubmit = false
             })
           }
         } else {
diff --git a/src/views/basic/location/location-form.vue b/src/views/basic/location/location-form.vue
index 8871e84..11c4657 100644
--- a/src/views/basic/location/location-form.vue
+++ b/src/views/basic/location/location-form.vue
@@ -396,6 +396,9 @@
               this.visible = false
               this.isSubmit = false
               this.$emit('refreshDataList')
+            }).catch(error=>{
+              console.error(error);
+              this.isSubmit = false
             })
           } else {
             addObj(this.dataForm).then((data) => {
@@ -403,6 +406,9 @@
               this.visible = false
               this.isSubmit = false
               this.$emit('refreshDataList')
+            }).catch(error=>{
+              console.error(error);
+              this.isSubmit = false
             })
           }
         } else {
diff --git a/src/views/basic/part/part-form.vue b/src/views/basic/part/part-form.vue
index f15bf51..72fb943 100644
--- a/src/views/basic/part/part-form.vue
+++ b/src/views/basic/part/part-form.vue
@@ -171,8 +171,8 @@
             <el-input v-model="dataForm.specs" placeholder="瑙勬牸鍨嬪彿"></el-input>
           </el-form-item>
         </el-col>
-        <el-col :span="12">
-          <el-form-item label="妫�楠屽憳" prop="examiner">
+       <!--  <el-col :span="12"> -->
+          <!-- <el-form-item label="妫�楠屽憳" prop="examiner">
             <el-select
               v-model="dataForm.examiner"
               placeholder="璇烽�夋嫨"
@@ -186,7 +186,7 @@
               >
               </el-option>
             </el-select>
-          </el-form-item>
+          </el-form-item> -->
           <!-- <el-form-item label="妫�楠岃鍒�" prop="testRuleId">
             <el-select
               v-model="dataForm.testRuleId"
@@ -204,7 +204,7 @@
               </el-option>
             </el-select>
           </el-form-item> -->
-        </el-col>
+        <!-- </el-col> -->
         <!-- <el-col :span="12">
           <el-form-item label="鍥惧彿" prop="drawingNumber">
             <el-input
@@ -266,8 +266,8 @@
             </el-select>
           </el-form-item>
         </el-col> -->
-      </el-row>
-      <el-row>
+     <!--  </el-row>
+      <el-row> -->
         <!-- <el-col :span="12">
           <el-form-item label="鐢靛帇绛夌骇" prop="voltageLevel">
             <el-input
@@ -275,13 +275,15 @@
               placeholder="鐢靛帇绛夌骇"
             ></el-input> </el-form-item
         ></el-col> -->
-      </el-row>
-      <el-row>
+     <!--  </el-row>
+      <el-row> -->
         <el-col :span="12"
           ><el-form-item label="閲嶉噺" prop="weight">
             <el-input v-model="dataForm.weight" placeholder="閲嶉噺"></el-input>
           </el-form-item>
         </el-col>
+      </el-row>
+      <el-row>
         <el-col :span="12">
           <el-form-item label="鐗堟湰鍙�" prop="engChgLevel">
             <el-input
@@ -291,6 +293,20 @@
             ></el-input>
           </el-form-item>
         </el-col>
+        <el-col :span="12">
+          <el-form-item label="闆朵欢灞炴��" prop="materialAttribute">
+            <el-select v-model="dataForm.materialAttribute" style="width: 100%">
+              <el-option
+                v-for="(item, index) in materialAttributeOptions"
+                :key="index"
+                :label="item.label"
+                :value="item.value"
+              >
+              </el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+      </el-row>
         <!-- <el-col :span="12">
             <el-form-item label="IFS鍚敤鎵规绠$悊" prop="lotTrackingIfs">
               <el-select
@@ -318,7 +334,7 @@
             </el-select>
           </el-form-item>
         </el-col> -->
-      </el-row>
+      <!-- </el-row> -->
       <el-row>
         <el-col :span="12">
           <el-form-item
@@ -342,20 +358,8 @@
           </el-form-item>
         </el-col>
       </el-row>
+      <!-- <el-row> -->
       <el-row>
-        <el-col :span="12">
-          <el-form-item label="闆朵欢灞炴��" prop="materialAttribute">
-            <el-select v-model="dataForm.materialAttribute" style="width: 100%">
-              <el-option
-                v-for="(item, index) in materialAttributeOptions"
-                :key="index"
-                :label="item.label"
-                :value="item.value"
-              >
-              </el-option>
-            </el-select>
-          </el-form-item>
-        </el-col>
         <el-col :span="12">
           <el-form-item label="澶囨敞" prop="description">
             <el-input
diff --git a/src/views/basic/warehouse/warehouse-form.vue b/src/views/basic/warehouse/warehouse-form.vue
index ff506ac..6191877 100644
--- a/src/views/basic/warehouse/warehouse-form.vue
+++ b/src/views/basic/warehouse/warehouse-form.vue
@@ -322,6 +322,9 @@
               this.visible = false
               this.isSubmit = false
               this.$emit('refreshDataList')
+            }).catch(error=>{
+              console.error(error);
+              this.isSubmit = false
             })
           } else {
             addObj(this.dataForm).then((data) => {
@@ -329,6 +332,9 @@
               this.visible = false
               this.isSubmit = false
               this.$emit('refreshDataList')
+            }).catch(error=>{
+              console.error(error);
+              this.isSubmit = false
             })
           }
         } else {
diff --git a/src/views/common/ztt-table.vue b/src/views/common/ztt-table.vue
index 64d8045..fb445e3 100644
--- a/src/views/common/ztt-table.vue
+++ b/src/views/common/ztt-table.vue
@@ -245,6 +245,7 @@
             :show-overflow-tooltip="!item.noShowTip"
             :width="inMemoryColWidth[item.prop] || item.width"
             :prop="item.prop"
+            align="center"
           >
             <template slot="header" slot-scope="scope">
               <template v-if="item.isSearch">
@@ -324,7 +325,7 @@
                 <template v-if="!item.render">
                   <template v-if="item.formatter">
                     <span v-if="item.isTag" style="text-align: center;">
-                      <el-tag style="width:50px;margin: 3px;" :type="scope.row[item.prop] == 0 ? 'success' : 'info'">
+                      <el-tag style="width:60px;margin: 3px;" :type="scope.row[item.prop] == 0 ? 'success' : 'info'">
                         <span v-html="item.formatter(scope.row, item, scope.row[item.prop])"></span>
                       </el-tag>
                     </span>
diff --git a/src/views/plan/customerorder/index.vue b/src/views/plan/customerorder/index.vue
index 63575e6..061bfc5 100644
--- a/src/views/plan/customerorder/index.vue
+++ b/src/views/plan/customerorder/index.vue
@@ -12,22 +12,6 @@
         ref="customerOrderTable"
       >
         <template #toolbar>
-          <!-- <el-dropdown
-            v-if="permissions.customerorder_state_change"
-            @command="handleCommand"
-          >
-            <el-button>
-              鐘舵�佹敼鍙�<i class="el-icon-arrow-down el-icon--right"></i>
-            </el-button>
-            <el-dropdown-menu slot="dropdown">
-              <el-dropdown-item
-                :command="item.command"
-                v-for="item in stateTagArr"
-                :disabled="item.disabled">
-                {{ item.label }}
-              </el-dropdown-item>
-            </el-dropdown-menu>
-          </el-dropdown> -->
           <el-dropdown
             v-if="permissions.customerorder_doc_relate"
             @command="documentHandle"
@@ -65,32 +49,12 @@
               >
             </el-dropdown-menu>
           </el-dropdown>
-          <!-- <el-button
-            v-if="permissions.customerorder_push_otc"
-            style="margin-left:10px;"
-            type="primary"
-            @click="pushOtc"
-            >鎺ㄩ�丒RP</el-button
-          > -->
-          <!-- <el-button
-            style="margin-left:10px;"
-            type="primary"
-            @click="importOutPutBatch"
-            >瀵煎叆浜у嚭鎵规</el-button
-          > -->
           <el-button
             style="margin-left:10px;"
             type="primary"
             @click="()=>exportDialogVisible=true"
             >瀵煎嚭鍙拌处</el-button
           >
-          <!-- <el-button
-            v-if="permissions.plan_customerorder_return"
-            style="margin-left:10px;"
-            type="primary"
-            @click="returnOrder"
-            >璁㈠崟閫�鍥�</el-button
-          > -->
         </template>
       </ttable>
       <!-- 寮圭獥, 鏃ユ湡閫夋嫨 -->
@@ -474,7 +438,7 @@
             searchInfoType: 'text'
           },
           {
-            minWidth: '120',
+            minWidth: '100',
             prop: 'sourceId',
             label: '娣诲姞鏉ユ簮',
             isTag: true,
@@ -769,10 +733,10 @@
       ],
       sourceIdList: [{
         label: '鍚屾',
-        value: '0'
+        value: "0"
       },{
         label: '鎵嬪姩',
-        value: '1'
+        value: "1"
       }],
       stockVisible: false,
       partName: null,
diff --git a/src/views/plan/customerorder/sample-customerorder-form.vue b/src/views/plan/customerorder/sample-customerorder-form.vue
index 94aaeb1..8b895f7 100644
--- a/src/views/plan/customerorder/sample-customerorder-form.vue
+++ b/src/views/plan/customerorder/sample-customerorder-form.vue
@@ -51,14 +51,6 @@
               <el-input v-model="dataForm.entityName" placeholder=""></el-input>
             </el-form-item>
           </el-col>
-          <!-- <el-col :span="6">
-            <el-form-item label="浜嬩笟閮�" prop="salesDepartment">
-              <el-input
-                v-model="dataForm.salesDepartment"
-                placeholder=""
-              ></el-input>
-            </el-form-item>
-          </el-col> -->
           <el-col :span="6">
             <el-form-item label="鐪佷唤" prop="province">
               <el-input v-model="dataForm.province" placeholder=""></el-input>
@@ -156,6 +148,7 @@
     </el-divider>
     <div>
       <avue-crud ref="crud"
+        class="l-mes"
         show-hide="false"
         :option="option"
         :data="tableData">
@@ -175,196 +168,6 @@
           </template>
       </avue-crud>
     </div>
-    <!-- <div class="l-mes normal-form">
-      <el-row :gutter="20">
-        <el-col :span="2">
-          <span>闆朵欢鍙�</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.partNo"
-            placeholder=""
-            readonly
-          >
-            <el-button
-              slot="append"
-              icon="el-icon-search"
-              @click="openPartDialog()"
-            ></el-button>
-          </el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>鍗曚綅</span>
-        </el-col>
-        <el-col :span="6">
-          <el-select
-            v-model="dataForm.customerOrder.unit"
-            placeholder=""
-            style="width: 100%"
-          >
-            <el-option
-              v-for="item in units"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            />
-          </el-select>
-        </el-col>
-        <el-col :span="2">
-          <span>鏁伴噺</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.buyQtyDue"
-            placeholder=""
-          ></el-input>
-        </el-col>
-      </el-row>
-      <el-row :gutter="20">
-        <el-col :span="2">
-          <span>鐢靛帇绛夌骇</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.voltAgeClass"
-            placeholder=""
-          ></el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>浜у搧鍚嶇О</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.productName"
-            placeholder=""
-          ></el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>鍒堕�犲睘鎬�</span>
-        </el-col>
-        <el-col :span="6">
-          <el-select
-            v-model="dataForm.customerOrder.manufactureAttr"
-            placeholder=""
-            style="width: 100%"
-            disabled
-          >
-            <el-option
-              v-for="item in manufactureAttrs"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            />
-          </el-select>
-        </el-col>
-      </el-row>
-      <el-row :gutter="20">
-        <el-col :span="2">
-          <span>澶栨姢棰滆壊</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.outerColor"
-            placeholder=""
-          ></el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>闆朵欢瑙勬牸</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.customerPartSpec"
-            placeholder=""
-          ></el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>鍖呰瑕佹眰</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.packageRequire"
-            placeholder=""
-          ></el-input>
-        </el-col>
-      </el-row>
-      <el-row :gutter="20">
-        <el-col :span="2">
-          <span>璐ㄩ噺瑕佹眰</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.qualityRequire"
-            placeholder=""
-          ></el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>鐢熶骇闇�姹傝鏄�</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.otherProductRequire"
-            placeholder=""
-          ></el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>绯荤粺</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.divisionSystem"
-            placeholder=""
-          ></el-input>
-        </el-col>
-      </el-row>
-      <el-row :gutter="20">
-        <el-col :span="2">
-          <span>鏀惰揣鍦板潃</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.shippingAddress"
-            placeholder=""
-          ></el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>涓氬姟鍛�</span>
-        </el-col>
-        <el-col :span="6">
-          <el-select v-model="dataForm.customerOrder.salesmanName" style="width:100%">
-                <el-option v-for="(item,index) in staffOptions" :key="index" :value="item.staff_no" :label="item.staffName"/>
-          </el-select>
-        </el-col>
-        <el-col :span="2">
-          <span>鐩橀暱瑕佹眰</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.lengthRequirement"
-            placeholder=""
-          ></el-input>
-        </el-col>
-      </el-row>
-      <el-row :gutter="20">
-        <el-col :span="2">
-          <span>澶囨敞</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.remark"
-            placeholder=""
-          ></el-input>
-        </el-col>
-        <el-col :span="2">
-          <span>浜у搧绫诲瀷</span>
-        </el-col>
-        <el-col :span="6">
-          <el-input
-            v-model="dataForm.customerOrder.productType"
-            placeholder=""
-          ></el-input>
-        </el-col>
-      </el-row>
-    </div> -->
 
     <span slot="footer" class="dialog-footer">
       <el-button @click="visible = false">鍙栨秷</el-button>
@@ -401,6 +204,30 @@
   color: #c0c4cc;
   margin: -1px 0;
 }
+.l-mes .el-input-group__append,
+.l-mes .el-input-group__prepend {
+  padding: 0;
+  border-top: none;
+  border-right: none;
+  border-left: none;
+  border-radius: 0;
+  background-color: transparent;
+}
+
+.l-mes .el-input-group__append .el-button,
+.l-mes .el-input-group__prepend .el-button {
+  padding: 0;
+  width: 25px;
+  border: none !important;
+  line-height: 28px;
+  color: #c0c4cc;
+  margin: -1px 0;
+}
+
+.l-mes .el-input-group__append .el-button i,
+.l-mes .el-input-group__prepend .el-button i {
+  vertical-align: middle;
+}
 </style>
 <script>
 import { addObj } from '@/api/plan/customer'
diff --git a/src/views/plan/masterproductionschedule/index.vue b/src/views/plan/masterproductionschedule/index.vue
index 02c064d..4476606 100644
--- a/src/views/plan/masterproductionschedule/index.vue
+++ b/src/views/plan/masterproductionschedule/index.vue
@@ -681,13 +681,13 @@
             fun: this.createOutsourcingOrder
           } */
     if (this.permissions.plan_masterproductionschedule_add) {
-      this.table.toolbar.push({
+      /* this.table.toolbar.push({
         text: '鏂板',
         type: 'primary',
         fun: this.addMasterProductionSchedule,
         disabled: false,
         permitArr: []
-      })
+      }) */
     }
     if (this.permissions.masterproductionschedule_create_outsourcing) {
       // this.table.toolbar.push({
diff --git a/src/views/plan/operationtask/operationtask-form.vue b/src/views/plan/operationtask/operationtask-form.vue
index 2c1d48e..02fb8dc 100644
--- a/src/views/plan/operationtask/operationtask-form.vue
+++ b/src/views/plan/operationtask/operationtask-form.vue
@@ -778,7 +778,6 @@
             //              this.dataForm.partName = this.routingList.partName
             //              this.dataForm.partId = this.routingList.partId
             // 鍒堕�犺鍗昮orm鍒涘缓鐨勶紝鑷姩甯﹀嚭宸ュ簭
-            console.log(this.routingOptions);
             if (param.selectedRoutingOperationId && this.routingOptions) {
               const option = this.routingOptions.find(
                 (e) => e.id === param.selectedRoutingOperationId
diff --git a/src/views/plan/productionschedul/index.vue b/src/views/plan/productionschedul/index.vue
index d47995b..2ae8a2b 100644
--- a/src/views/plan/productionschedul/index.vue
+++ b/src/views/plan/productionschedul/index.vue
@@ -573,7 +573,7 @@
 }
 </script>
 <style>
-.el-tag--small{
+.avue-crud__tip{
   display: none;
 }
 .basic-template-table .el-table__body .el-table__row td:first-child .cell {
diff --git a/src/views/product/workbench/operation-task-pane.vue b/src/views/product/workbench/operation-task-pane.vue
index 4c9c558..5e07e8d 100644
--- a/src/views/product/workbench/operation-task-pane.vue
+++ b/src/views/product/workbench/operation-task-pane.vue
@@ -719,7 +719,6 @@
                       break
                     }
                   }
-                  // console.log(this.operationTasks)
                   // 鑻ュ綋鍓嶅伐鍗曞湪宸ュ崟鍒楄〃鏈鎵惧埌涓斿綋鍓嶅伐鍗曠姸鎬佷负宸插畬鎴愭垨宸插彇娑堟椂锛屽垯灏嗗綋鍓嶅伐鍗曢噸缃负绌哄苟鎶涘嚭浜嬩欢锛屽惁鍒欎笉绠�
                   if (isResetCurrOpertionTaskFlag) {
                     getOperationTaskById(taskId).then((res) => {
diff --git a/src/views/product/workbench/steprecord-tab.vue b/src/views/product/workbench/steprecord-tab.vue
index fe4225e..83657bc 100644
--- a/src/views/product/workbench/steprecord-tab.vue
+++ b/src/views/product/workbench/steprecord-tab.vue
@@ -740,7 +740,6 @@
     },
     personBoardList: {
       handler(newValue, oldValue) {
-        console.log('personBoardList鐨剋atch')
         this.staffList = []
         var userInfoFlag = true
         var staff
diff --git a/src/views/product/workbench/taskinfo-pane.vue b/src/views/product/workbench/taskinfo-pane.vue
index 488cfe1..443fda6 100644
--- a/src/views/product/workbench/taskinfo-pane.vue
+++ b/src/views/product/workbench/taskinfo-pane.vue
@@ -1675,7 +1675,6 @@
                       // 缁欏脊鍑烘浜ч噺鍒楄〃productList璧嬪��
                       this.productList = []
                       const product = {}
-                      console.log('userInfo', this.userInfo)
                       const currStaff = this.personBoardList.find((item) => {
                         return item.staffId == this.userInfo.staffId
                       })
diff --git a/src/views/product/workbench/workReportCard.vue b/src/views/product/workbench/workReportCard.vue
index 6b121ae..e070a2c 100644
--- a/src/views/product/workbench/workReportCard.vue
+++ b/src/views/product/workbench/workReportCard.vue
@@ -2749,7 +2749,6 @@
     },
     createLodopPrintIze(data) {
       const currYearAndMonth = getYearAndMonth()
-      console.log(data)
       const qr = {
         part_no: data.partNo,
         lot_batch_no: data.ifsBatchNo,
@@ -2890,7 +2889,6 @@
       this.LODOP.PRINT()
     },
     createLodopPrint(data) {
-      console.log(data)
       const qr = {
         part_no: data.partNo,
         lot_batch_no: data.ifsBatchNo,
@@ -3075,7 +3073,6 @@
     },
     saveList() {
       const list = JSON.parse(JSON.stringify(this.productOutputList))
-      console.log(`output->list`, list)
       const data = []
       list.forEach((el) => {
         if (el.isEdit) {
diff --git a/src/views/quality/finishedProductInspection/finishedProduct-form.vue b/src/views/quality/finishedProductInspection/finishedProduct-form.vue
index f204349..7d3842e 100644
--- a/src/views/quality/finishedProductInspection/finishedProduct-form.vue
+++ b/src/views/quality/finishedProductInspection/finishedProduct-form.vue
@@ -8,7 +8,7 @@
             <h2 v-else>缂栬緫-浜у搧妫�楠屽崟</h2>
         </div>
         <div class="btn-group header-right">
-            <el-button @click="addTestProject" v-if="processInspectVo.id==null">鐢熸垚妫�楠岄」鐩�</el-button>
+            <el-button type="primary" @click="addTestProject" v-if="processInspectVo.id==null">鐢熸垚妫�楠岄」鐩�</el-button>
         </div>
     </div>
     <div class="page-main">
@@ -26,27 +26,24 @@
                         <el-col :span="6">
                             <el-form-item label="璁㈠崟鍙凤細">
                                 <el-input @blur="selectInfoByOrderId" :disabled="processInspectVo.id != null"
-                                v-model="processInspectVo.orderNumber" placeholder="璇疯緭鍏ヨ鍗曞彿" autocomplete="off" />
+                                v-model="processInspectVo.orderNumber" autocomplete="off" />
                             </el-form-item>
                         </el-col>
                         <el-col :span="6">
                             <el-form-item label="鎶ュ伐鍗曞彿锛�">
-                                <el-input disabled v-model="processInspectVo.productNo"
-                                    placeholder="璇疯緭鍏ユ姤宸ュ崟鍙凤細" autocomplete="off" />
+                                <el-input disabled v-model="processInspectVo.productNo" autocomplete="off" />
                             </el-form-item>
                         </el-col>
                         <el-col :span="6">
                             <el-form-item label="瀹㈡埛鍚嶇О锛�">
-                                <el-input disabled v-model="processInspectVo.prname"
-                                    placeholder="璇疯緭鍏ュ鎴峰悕绉�" autocomplete="off" />
+                                <el-input disabled v-model="processInspectVo.prname" autocomplete="off" />
                             </el-form-item>
                         </el-col>
                     </el-row>
                     <el-row>
                         <el-col :span="6">
                             <el-form-item label="宸ョ▼鍚嶇О锛�">
-                                <el-input disabled v-model="processInspectVo.sname"
-                                    placeholder="璇疯緭鍏ュ伐绋嬪悕绉�" autocomplete="off" />
+                                <el-input disabled v-model="processInspectVo.sname" autocomplete="off" />
                             </el-form-item>
                         </el-col>
                         <el-col :span="6">
@@ -60,15 +57,13 @@
                             </el-form-item>
                         </el-col>
                         <el-col :span="6">
-                            <el-form-item label="浜у搧缂栫爜锛�">
-                                <el-input disabled v-model="processInspectVo.mcode"
-                                    placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" autocomplete="off" />
+                            <el-form-item label="浜у搧缂栧彿锛�">
+                                <el-input disabled v-model="processInspectVo.mcode" autocomplete="off" />
                             </el-form-item>
                         </el-col>
                         <el-col :span="6">
                             <el-form-item label="瑙勬牸鍨嬪彿锛�">
-                                <el-input disabled v-model="processInspectVo.specificationsModel"
-                                    placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�" autocomplete="off" />
+                                <el-input disabled v-model="processInspectVo.specificationsModel" autocomplete="off" />
                             </el-form-item>
                         </el-col>
                     </el-row>
diff --git a/src/views/quality/finishedProductInspection/index.vue b/src/views/quality/finishedProductInspection/index.vue
index 802e21e..b5a6c5a 100644
--- a/src/views/quality/finishedProductInspection/index.vue
+++ b/src/views/quality/finishedProductInspection/index.vue
@@ -127,7 +127,7 @@
                         {
                             minWidth: '120',
                             prop: 'materialCode',
-                            label: '浜у搧缂栫爜',
+                            label: '浜у搧缂栧彿',
                             isTrue: true,
                             isSearch: true,
                             searchInfoType: 'text'
@@ -188,30 +188,13 @@
                         },
                     ],
                     toolbar: [
-                    /* {
-                        text: '鏂板',
-                        type: 'primary',
-                        fun: this.addOrUpdateHandle
-                    }, 
-                    {
-                        text: '瀵煎嚭',
-                        type: 'primary',
-                        fun: this.exportExcel
-                    }*/
+                        {
+                            text: '涓嬭浇妫�楠屾姤鍛�',
+                            type: 'primary',
+                            fun: this.downloadProReport
+                        }
                     ],
                     operator: [{
-                        text: '鎵撳嵃',
-                        type: 'text',
-                        size: 'small',
-                        fun: this.showPrint,
-                        show: {
-                            val: [
-                                '1',
-                                '0'
-                            ],
-                            key: 'result'
-                        }
-                    },{
                         text: '浣滃簾',
                         type: 'text',
                         size: 'small',
@@ -235,6 +218,9 @@
         }
     },
 		methods: {
+            downloadProReport(){
+                this.$message.info("寮�鍙戜腑...")
+            },
             //鎵撳嵃鎸夐挳
             printFun() {
                 const style = '@page {margin: 10mm 5mm; margin-bottom: 0;margin-top:0;} ' +'@media print {.title{font-size:30pt;font-weight: 400;font-family: 榛戜綋;!important;}' ;
diff --git a/src/views/quality/newReport/ReportForm.vue b/src/views/quality/newReport/ReportForm.vue
index f2d6203..d6d6a7a 100644
--- a/src/views/quality/newReport/ReportForm.vue
+++ b/src/views/quality/newReport/ReportForm.vue
@@ -1504,14 +1504,12 @@
                 },
                 data: requireData,
                 success: function(response) {
-                  console.log('response', response)
                   const resJson = JSON.parse(
                     response
                       .replace(/\r/g, '')
                       .replace(/\n/g, '')
                       .replace(/\s*/g, '')
                   )
-                  console.log('resJson', resJson)
                   // TODO
                   if (resJson.message) {
                     const resData = resJson.data
diff --git a/src/views/quality/processInspect/index.vue b/src/views/quality/processInspect/index.vue
index 8c7a8b7..bc7e979 100644
--- a/src/views/quality/processInspect/index.vue
+++ b/src/views/quality/processInspect/index.vue
@@ -73,6 +73,14 @@
                         },
                         {
                             minWidth: '120',
+                            prop: 'materialCode',
+                            label: '浜у搧缂栧彿',
+                            isTrue: true,
+                            isSearch: true,
+                            searchInfoType: 'text'
+                        },
+                        {
+                            minWidth: '120',
                             prop: 'material',
                             label: '浜у搧鍚嶇О',
                             isTrue: true,
diff --git a/src/views/quality/processInspect/processInspect-form.vue b/src/views/quality/processInspect/processInspect-form.vue
index 9a3454a..b93aac5 100644
--- a/src/views/quality/processInspect/processInspect-form.vue
+++ b/src/views/quality/processInspect/processInspect-form.vue
@@ -8,13 +8,13 @@
                 <h2 v-else>缂栬緫-杩囩▼妫�楠屽崟</h2>
             </div>
             <div class="btn-group header-right">
-                <el-button @click="addTestProject" v-if="processInspectVo.id == null">鐢熸垚妫�楠岄」鐩�</el-button>
+                <el-button type="primary" @click="addTestProject" v-if="processInspectVo.id == null">鐢熸垚妫�楠岄」鐩�</el-button>
             </div>
         </div>
         <div class="page-main">
             <div class="finishedProduct-basic">
                 <el-form :model="processInspectVo" ref="addInspectionform" class="l-mes" label-position="right"
-                    label-width="120px" style="width: 100%" size="small">
+                    label-width="120px" style="width: 100%" size="small" :rules="rules">
                     <div class="formwrapper">
                         <el-row>
                             <el-col :span="6">
@@ -24,7 +24,7 @@
                                 </el-form-item>
                             </el-col>
                             <el-col :span="6">
-                                <el-form-item label="璁㈠崟鍙凤細">
+                                <el-form-item label="璁㈠崟鍙凤細" prop="orderNumber">
                                     <el-input @blur="selectInfoByOrderId" :disabled="processInspectVo.id != null"
                                         v-model="processInspectVo.orderNumber" placeholder="璇疯緭鍏ヨ鍗曞彿" autocomplete="off" />
                                 </el-form-item>
@@ -41,8 +41,8 @@
                                 </el-form-item>
                             </el-col>
                             <el-col :span="6">
-                                <el-form-item label="浜у搧缂栫爜锛�">
-                                    <el-input disabled v-model="processInspectVo.materialCode" placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�"
+                                <el-form-item label="浜у搧缂栧彿锛�">
+                                    <el-input disabled v-model="processInspectVo.materialCode" placeholder="璇疯緭鍏ヤ骇鍝佺紪鍙�"
                                         autocomplete="off" />
                                 </el-form-item>
                             </el-col>
@@ -50,7 +50,7 @@
                         <el-row>
                             <el-col :span="6">
                                 <el-form-item label="瑙勬牸鍨嬪彿锛�">
-                                    <el-input disabled v-model="processInspectVo.specs" placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�"
+                                    <el-input disabled v-model="processInspectVo.specs" 
                                         autocomplete="off" />
                                 </el-form-item>
                             </el-col>
@@ -113,7 +113,7 @@
                                             class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start">
                                             <el-input :disabled="scope.row.eId == null"
                                                 v-model="scope.row.empiricalValueAddss[index]"
-                                                @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input>
+                                                @blur="changeState(scope.row)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input>
                                             <span v-if="resultVal != null && processInspectVo.id != null"
                                                 v-text="scope.row.empiricalValueAddss[index]"></span>
                                         </el-tooltip>
@@ -121,10 +121,7 @@
                                     <el-col v-else>
                                         <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null"
                                             class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start">
-                                            <!-- <el-input :disabled="scope.row.eId == null"
-                                                v-model="scope.row.empiricalValueAddss[index]"
-                                                @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> -->
-                                            <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" placeholder="璇烽�夋嫨">
+                                            <el-select style="width: 100%;" @change="changeState(scope.row)" :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" placeholder="璇烽�夋嫨">
                                                 <el-option v-for="item in dataVal" :key="item.value" :label="item.label"
                                                     :value="item.value">
                                                 </el-option>
@@ -151,31 +148,16 @@
                             <el-table-column 
                                 label="妫�楠屾弿杩�" width="240" style="text-align: center;">
                                 <template slot-scope="scope">
-                                    <el-col v-if="scope.row.itype === '1'">
+                                    <el-col>
                                         <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null"
                                             class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start">
                                             <el-input :disabled="scope.row.eId == null"
                                                 v-model="scope.row.inote"
-                                                @blur="changeState(scope.row, inote)" placeholder="璇疯緭鍏ユ楠屾弿杩�"></el-input>
+                                                @blur="changeState(scope.row)" placeholder="璇疯緭鍏ユ楠屾弿杩�"></el-input>
                                             <span v-if="resultVal != null && processInspectVo.id != null"
                                                 v-text="scope.row.inote"></span>
                                         </el-tooltip>
                                     </el-col>
-                                <el-col v-else>
-                                        <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null"
-                                            class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start">
-                                            <el-input :disabled="scope.row.eId == null"
-                                                v-model="scope.row.inote"
-                                                @blur="changeState(scope.row, inote)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input>
-                                            <!-- <el-select style="width: 100%;" @change="changeState(scope.row, inote)" :disabled="scope.row.eId == null" v-model="scope.row.inote" placeholder="璇烽�夋嫨">
-                                                <el-option v-for="item in dataVal" :key="item.value" :label="item.label"
-                                                    :value="item.value">
-                                                </el-option>
-                                            </el-select>  -->
-                                         <span v-if="resultVal != null && processInspectVo.id != null"
-                                                v-text="scope.row.inote"></span>
-                                        </el-tooltip>
-                                    </el-col> 
                                 </template>
                             </el-table-column>
                             <el-table-column label="缁撹" fixed="right" min-width="100">
@@ -236,6 +218,9 @@
 export default {
     data() {
         return {
+            rules: {
+                orderNumber: [{required:true,message:'璁㈠崟鍙蜂笉鑳戒负绌�',trigger:'blur'}]
+            },
             dataVal: [{
                 label: '鏄�',
                 value: '鏄�'
@@ -257,7 +242,7 @@
                 proInsNo: null,
                 material: null,
                 materialCode: null,
-                orderNumber: "ZTTIC20230001",
+                orderNumber: null,
                 quantity: null,
                 specs: null,
                 unit: null,
@@ -378,9 +363,9 @@
                                     arr = obj.inspectionValue.split(",")
                                 }
                                 obj.empiricalValueAddss = arr
-                                if(obj.note){
-                                        snote=obj.inote
-                                    }
+                                if(!obj.inote){
+                                    obj.inote = null
+                                }
                                 if (arr.length > this.empiricalValueAdd) {
                                     this.empiricalValueAdd = arr.length
                                 }
@@ -432,7 +417,7 @@
             this.processInspectVo.material = sample.material
             this.technologyList = sample.children
         },
-        changeState(row, index) {
+        changeState(row) {
             if (row.iid != null && row.iid != '') {
                 let str = ""
                 row.empiricalValueAddss.forEach(e => {
@@ -462,20 +447,23 @@
         },
         addTestProject() {
             let val = this.processInspectVo
+            const _than = this
             addProcess(val).then(res => {
                 let id = res.data.data
                 if (id != null) {
+                    _than.processInspectVo.id = id
                     queryById(id).then(response => {
                         let proList = response.data.data.children
                         proList.forEach(item => {
                             item.iid = Math.random();
                             if (item.children != undefined) {
                                 item.children.forEach(obj => {
+                                    obj.inote = null
                                     obj.empiricalValueAddss = []
                                 })
                             }
                         })
-                        this.inspectionItems = proList
+                        _than.inspectionItems = proList
                     }).catch(error => {
                         console.log(error);
                     })
@@ -485,21 +473,25 @@
             })
         },
         selectInfoByOrderId() {
-            chooseMater({
-                orderNumber: this.processInspectVo.orderNumber
-            }).then(res => {
-                if (res.data.data != null) {
-                    this.optionsSamplename = res.data.data.children
-                } else {
-                    this.$message({
-                        message: '娌℃湁璇ヨ鍗曞彿锛�',
-                        type: 'warning'
-                    });
-                    this.optionsSamplename = []
-                    this.processInspectVo.materialCode = null
-                    this.processInspectVo.material = null
-                    this.processInspectVo.specs = null
-                    this.processInspectVo.unit = null
+            this.$refs.addInspectionform.validate(valid=>{
+                if(valid){
+                    chooseMater({
+                        orderNumber: this.processInspectVo.orderNumber
+                    }).then(res => {
+                        if (res.data.data != null) {
+                            this.optionsSamplename = res.data.data.children
+                        } else {
+                            this.$message({
+                                message: '娌℃湁璇ヨ鍗曞彿锛�',
+                                type: 'warning'
+                            });
+                            this.optionsSamplename = []
+                            this.processInspectVo.materialCode = null
+                            this.processInspectVo.material = null
+                            this.processInspectVo.specs = null
+                            this.processInspectVo.unit = null
+                        }
+                    })
                 }
             })
         },
diff --git a/src/views/quality/rawMaterial/rawMaterial-form.vue b/src/views/quality/rawMaterial/rawMaterial-form.vue
index 1d38bdc..578e65c 100644
--- a/src/views/quality/rawMaterial/rawMaterial-form.vue
+++ b/src/views/quality/rawMaterial/rawMaterial-form.vue
@@ -7,7 +7,7 @@
         <h2 v-else>缂栬緫-鍘熸潗鏂欐楠�</h2>
       </div>
       <div class="btn-group header-right">
-        <el-button @click="save()" v-if="this.dataForm.id==null">淇濆瓨</el-button>
+        <el-button @click="save()" type="primary" v-if="this.dataForm.id==null">淇濆瓨</el-button>
       </div>
     </div>
     <div class="page-main">
diff --git a/src/views/quality/teststandard/standard-form.vue b/src/views/quality/teststandard/standard-form.vue
index 3b0cbde..4cc5f4c 100644
--- a/src/views/quality/teststandard/standard-form.vue
+++ b/src/views/quality/teststandard/standard-form.vue
@@ -262,6 +262,9 @@
               this.visible = false
               this.isSubmit = false
               this.$emit('refreshDataList')
+            }).catch(error=>{
+              console.error(error);
+              this.isSubmit = false
             })
           } else {
             addTestStandard(this.dataForm).then((data) => {
@@ -269,6 +272,9 @@
               this.visible = false
               this.isSubmit = false
               this.$emit('refreshDataList')
+            }).catch(error=>{
+              console.error(error);
+              this.isSubmit = false
             })
           }
         } else {
diff --git a/src/views/technology/completeproductstructure/completeproductstructure-form.vue b/src/views/technology/completeproductstructure/completeproductstructure-form.vue
index 93e1376..03ee99f 100644
--- a/src/views/technology/completeproductstructure/completeproductstructure-form.vue
+++ b/src/views/technology/completeproductstructure/completeproductstructure-form.vue
@@ -7,7 +7,7 @@
         <h2 v-if="!editable">鏌ョ湅-瀹屾暣浜у搧缁撴瀯</h2>
       </div>
       <div class="btn-group header-right" v-if="editable">
-        <el-button :disabled="isSubmit" v-thinclick="`dataFormSubmit`"
+        <el-button type="primary" :disabled="isSubmit" v-thinclick="`dataFormSubmit`"
           >淇濆瓨</el-button
         >
       </div>
diff --git a/src/views/technology/completeproductstructure/index.vue b/src/views/technology/completeproductstructure/index.vue
index 4fc9997..7903eab 100644
--- a/src/views/technology/completeproductstructure/index.vue
+++ b/src/views/technology/completeproductstructure/index.vue
@@ -341,8 +341,18 @@
     // 鎸変骇鍝佺粨鏋勭敓鎴怋OM
     addByStructureHandle() {
       addByStructure().then((res) => {
-        let result = Array.from(new Set(res.data.data))
-        this.$message.success(result.join(','))
+        // let result = Array.from(new Set(res.data.data))
+        // this.$message.success(result.join(','))
+        console.log(res.data.data);
+        let mes="";
+        res.data.data.forEach(item=>{
+          mes+=item
+        })
+        this.$message({
+          message: mes,
+          type: 'success',
+          dangerouslyUseHTMLString: true
+        })
         this.getData()
       })
       // this.$message({
diff --git a/src/views/technology/document/document-form.vue b/src/views/technology/document/document-form.vue
index 19348cf..b3448e3 100644
--- a/src/views/technology/document/document-form.vue
+++ b/src/views/technology/document/document-form.vue
@@ -7,7 +7,7 @@
         <h2 v-if="!editable">鏌ョ湅-宸ヨ壓鏂囦欢</h2>
       </div>
       <div class="btn-group header-right" v-if="editable">
-        <el-button @click="save()">淇濆瓨</el-button>
+        <el-button type="primary" @click="save()">淇濆瓨</el-button>
       </div>
     </div>
     <div class="page-main">
diff --git a/src/views/technology/operation/operation-form.vue b/src/views/technology/operation/operation-form.vue
index d6bd9e4..85832ba 100644
--- a/src/views/technology/operation/operation-form.vue
+++ b/src/views/technology/operation/operation-form.vue
@@ -6,7 +6,7 @@
         <h2>缂栬緫-宸ュ簭</h2>
       </div>
       <div class="btn-group header-right">
-        <el-button :disabled="isSubmit" v-thinclick="`dataFormSubmit`"
+        <el-button type="primary" :disabled="isSubmit" v-thinclick="`dataFormSubmit`"
           >淇濆瓨</el-button
         >
       </div>
@@ -14,50 +14,38 @@
     <div class="page-main">
       <div class="operation-basic">
         <el-form
-          :inline="true"
+          style="width:100%"
           :model="dataForm"
           :rules="dataRule"
           ref="dataForm"
           label-width="100px"
-          class="l-mes form-content"
-        >
+          class="l-mes">
           <el-row class="first-row">
-            <el-col :span="24">
+            <el-col :span="6">
               <el-form-item label="宸ュ簭鍚嶇О" prop="name">
                 <el-input
+                  style="width:100%"
                   v-model="dataForm.name"
                   placeholder="宸ュ簭鍚嶇О"
                 ></el-input>
               </el-form-item>
+            </el-col>
+            <el-col :span="6">
               <el-form-item label="宸ュ簭缂栧彿" prop="operationNo">
                 <el-input
+                  style="width:100%"
                   v-model="dataForm.operationNo"
                   placeholder="宸ュ簭缂栧彿"
                 ></el-input>
               </el-form-item>
-              <!-- <el-form-item label="闆朵欢鏃�" prop="partFamilyId">
-                <el-select
-                  v-model="dataForm.partFamilyId"
-                  filterable
-                  placeholder="璇烽�夋嫨"
-                  style="width: 100%;"
-                >
-                  <el-option
-                    v-for="(item, index) in this.partFamilyOptions"
-                    :key="index"
-                    :label="item.partFamilyName"
-                    :value="item.id"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item> -->
+            </el-col>
+            <el-col :span="6">
               <el-form-item label="宸ヤ綔涓績" prop="workCenter">
                 <el-select
                   v-model="dataForm.workCenter"
                   placeholder="宸ヤ綔涓績"
                   style="width: 100%"
-                  filterable
-                >
+                  filterable >
                   <el-option
                     v-for="item in workCenterOptions"
                     :key="item.id"
@@ -66,18 +54,8 @@
                   />
                 </el-select>
               </el-form-item>
-              <!-- <el-form-item label="鏈哄櫒杩愯浆鍥犵礌" prop="machRunFactor">
-                <el-input
-                  v-model="dataForm.machRunFactor"
-                  placeholder="鏈哄櫒杩愯浆鍥犵礌"
-                ></el-input>
-              </el-form-item>
-              <el-form-item label="鏈哄櫒璁剧疆鏃堕棿" prop="machSetupTime">
-                <el-input
-                  v-model="dataForm.machSetupTime"
-                  placeholder="鏈哄櫒璁剧疆鏃堕棿"
-                ></el-input>
-              </el-form-item> -->
+            </el-col>
+            <el-col :span="6">
               <el-form-item label="浜哄伐绫诲埆" prop="laborClassNo">
                 <el-select
                   v-model="dataForm.laborClassNo"
@@ -94,95 +72,30 @@
                   </el-option>
                 </el-select>
               </el-form-item>
-              <!-- <el-form-item label="鍔冲姏杩愯浆鍥犵礌" prop="laborRunFactor">
-                <el-input
-                  v-model="dataForm.laborRunFactor"
-                  placeholder="鍔冲姏杩愯浆鍥犵礌"
-                ></el-input>
-              </el-form-item> -->
-              <!-- <el-form-item label="鍔冲姏璁剧疆鏃堕棿" prop="laborSetupTime">
-                <el-input
-                  v-model="dataForm.laborSetupTime"
-                  placeholder="鍔冲姏璁剧疆鏃堕棿"
-                ></el-input>
-              </el-form-item> -->
-              <!-- <el-form-item label="鍥犵礌鍗曚綅" prop="runTimeCodeDb">
-                <el-select
-                  v-model="dataForm.runTimeCodeDb"
-                  placeholder="鍥犵礌鍗曚綅"
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in runTimeCodeDbOptions"
-                    :key="item.id"
-                    :label="item.label"
-                    :value="item.value"
-                  />
-                </el-select>
-              </el-form-item> -->
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="6">
               <el-form-item label="鐝粍浜哄憳" prop="crewSize">
                 <el-input
+                  style="width:100%"
                   v-model="dataForm.crewSize"
                   placeholder="鐝粍浜哄憳"
                 ></el-input>
               </el-form-item>
-              <!-- <el-form-item label="澶栭儴宸ュ簭椤圭洰" prop="outsideOpItem">
-                <el-select
-                  v-model="dataForm.outsideOpItem"
-                  placeholder="澶栭儴宸ュ簭椤圭洰"
-                  style="width: 170px"
-                  clearable
-                >
-                  <el-option
-                    v-for="item in outsideOpItemOptions"
-                    :key="item.id"
-                    :label='item.value + "-" + item.label '
-                    :value="item.value"
-                  />
-                </el-select>
-              </el-form-item> -->
+            </el-col>
+            <el-col :span="12">
               <el-form-item label="澶囨敞" prop="remark">
                 <el-input
                   v-model="dataForm.remark"
                   placeholder="澶囨敞"
-                  style="width: 280px"
+                  style="width: 100%"
                 ></el-input>
               </el-form-item>
             </el-col>
-          </el-row>
-          <!-- <el-row style="padding-top: 10px">
-            <el-col :span="24">
-              <el-form-item label="閰嶇疆椤�">
-                <el-checkbox-group
-                  v-model="checkboxGroup"
-                  @change="checkboxGroupChange()"
-                >
-                  <el-checkbox-button
-                    label="productionCounting"
-                    key="productionCounting"
-                    >鎶ュ伐</el-checkbox-button
-                  >
-                  <el-checkbox-button label="daq" key="daq"
-                    >閲囬泦</el-checkbox-button
-                  >
-                  <el-checkbox-button label="inspection" key="inspection"
-                    >妫�楠�</el-checkbox-button
-                  >
-                  <el-checkbox-button
-                    label="autoInspection"
-                    key="autoInspection"
-                    >鑷姩鎶ユ</el-checkbox-button
-                  >
-                  <el-checkbox-button label="semiFinished" key="semiFinished"
-                    >鍗婃垚鍝�</el-checkbox-button
-                  >
-                  <el-checkbox-button label="materialCost" key="materialCost"
-                    >鎶曟枡</el-checkbox-button
-                  >
-                </el-checkbox-group>
-              </el-form-item>
+            <el-col :span="6">
             </el-col>
-          </el-row> -->
+          </el-row>
         </el-form>
       </div>
 
@@ -1163,7 +1076,7 @@
 <style>
 .operation-basic {
   background-color: #fff;
-  height: 200px;
+  height: 130px;
   display: flex;
   padding: 20px 30px;
   border: 1px solid #ddd;
diff --git a/src/views/technology/routing/routing-form.vue b/src/views/technology/routing/routing-form.vue
index 38698da..9a1e3d4 100644
--- a/src/views/technology/routing/routing-form.vue
+++ b/src/views/technology/routing/routing-form.vue
@@ -7,31 +7,35 @@
         <h2 v-if="!editable">鏌ョ湅-宸ヨ壓璺嚎</h2>
       </div>
       <div class="btn-group header-right" v-if="editable">
-        <el-button :disabled="isSubmit" v-thinclick="`allSave`">淇濆瓨</el-button>
+        <el-button :disabled="isSubmit" type="primary" v-thinclick="`allSave`">淇濆瓨</el-button>
       </div>
     </div>
     <div class="page-main">
       <div class="routing-basic">
         <el-form
-          :inline="true"
           :model="dataForm"
           :rules="dataRule"
           ref="dataForm"
+          label-width="100px"
           style="width: 100%"
           class="l-mes"
           :disabled="!editable"
         >
           <el-row>
-            <el-col :span="24">
-              <el-form-item prop="routingNo" label="宸ヨ壓缂栧彿">
+            <el-col :span="6">
+              <el-form-item style="width:100%" prop="routingNo" label="宸ヨ壓缂栧彿">
                 <el-input
+                  style="width:100%"
                   v-model="dataForm.routingNo"
                   placeholder="宸ヨ壓缂栧彿"
                   disabled
                 ></el-input>
               </el-form-item>
+            </el-col>
+            <el-col :span="6">
               <el-form-item prop="partNo" label="闆朵欢鍙�">
                 <el-input
+                  style="width:100%"
                   v-model="dataForm.partNo"
                   placeholder="闆朵欢鍙�"
                   disabled
@@ -43,60 +47,31 @@
                   ></el-button>
                 </el-input>
               </el-form-item>
+            </el-col>
+            <el-col :span="6">
               <el-form-item prop="partName" label="闆朵欢鍚嶇О">
                 <el-input
                   v-model="dataForm.partName"
                   placeholder="闆朵欢鍚嶇О"
                   readonly
-                  style="width: 300px"
+                  style="width: 100%"
                 ></el-input>
               </el-form-item>
-              <el-form-item prop="description" label="鎻忚堪">
-                <el-input
-                  v-model="dataForm.description"
-                  placeholder="鎻忚堪"
-                  style="width: 280px"
-                ></el-input>
-              </el-form-item>
-              <!-- <el-form-item prop="wireCore" label="绾胯姱">
-                <el-input
-                  v-model="dataForm.wireCore"
-                  placeholder="绾胯姱"
-                  style="width: 60px"
-                ></el-input>
-              </el-form-item> -->
+            </el-col>
+            <el-col :span="6">
               <el-form-item label="BOM" prop="bomId">
-                <el-select :disabled="dataForm.id != null" v-model="dataForm.bomId" placeholder="" filterable>
+                <el-select style="width:100%" :disabled="dataForm.id != null" v-model="dataForm.bomId" placeholder="" filterable>
                   <el-option
                     v-for="item in bomList"
                     :key="item.id"
                     :label="item.number"
-                    :value="item.id"
-                  />
+                    :value="item.id" />
                 </el-select>
               </el-form-item>
-              <!-- <el-form-item prop="version" label="宸ヨ壓鐗堟湰">
-                <el-input
-                  v-model="dataForm.version"
-                  placeholder="宸ヨ壓鐗堟湰"
-                ></el-input>
-              </el-form-item> -->
-              <!-- <el-form-item label="宸ヨ壓绫诲瀷" prop="bomTypeDb">
-                <el-select
-                  v-model="dataForm.bomTypeDb"
-                  placeholder="璇烽�夋嫨宸ヨ壓绫诲瀷"
-                  style="width:100%"
-                  @change="bomTypeDbChange"
-                >
-                  <el-option
-                    v-for="(item, index) in bomTypeDbOptions"
-                    :label="item.label"
-                    :value="item.value"
-                    :key="index"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item> -->
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="6">
               <el-form-item label="閫愭閲囩敤鏃ユ湡" prop="phaseInDate">
                 <el-date-picker
                   v-model="dataForm.phaseInDate"
@@ -106,6 +81,8 @@
                 >
                 </el-date-picker>
               </el-form-item>
+            </el-col>
+            <el-col :span="6">
               <el-form-item label="閫愭娣樻卑鏃ユ湡" prop="phaseOutDate">
                 <el-date-picker
                   v-model="dataForm.phaseOutDate"
@@ -115,27 +92,17 @@
                 >
                 </el-date-picker>
               </el-form-item>
-              <!-- <el-form-item prop="alternativeNo" label="鏇夸唬">
+            </el-col>
+            <el-col :span="6">
+              <el-form-item prop="description" label="鎻忚堪">
                 <el-input
-                  v-model="dataForm.alternativeNo"
-                  placeholder="鏇夸唬"
+                  v-model="dataForm.description"
+                  placeholder="鎻忚堪"
+                  style="width: 100%"
                 ></el-input>
-              </el-form-item> -->
-              <!-- <el-form-item prop="alternativeDesc" label="鏇夸唬鎻忚堪">
-                <el-input
-                  v-model="dataForm.alternativeDesc"
-                  placeholder="鏇夸唬鎻忚堪"
-                ></el-input>
-              </el-form-item> -->
-              <!-- <el-form-item label="宸插悓姝ヨ嚦IFS" prop="ifsSync">
-                <span
-                  style="width: 146px;display: inline-block;font-size:12px;font-weight:bold;"
-                  >{{ dataForm.ifsSync ? '鏄�' : '鍚�' }}</span
-                >
-              </el-form-item> -->
-              <!-- <el-form-item label="涓诲伐鑹�" prop="master">
-                <el-switch v-model="dataForm.master"> </el-switch>
-              </el-form-item> -->
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
             </el-col>
           </el-row>
         </el-form>
@@ -731,7 +698,7 @@
         wireCore: null
       },
       dataRule: {
-        partName: [
+        partNo: [
           { required: true, message: '闆朵欢涓嶈兘涓虹┖', trigger: 'change' }
         ],
         bomTypeDb: [
diff --git a/src/views/technology/structure/index.vue b/src/views/technology/structure/index.vue
index 8ceba97..53ae977 100644
--- a/src/views/technology/structure/index.vue
+++ b/src/views/technology/structure/index.vue
@@ -47,44 +47,12 @@
                 multiple
               >
                 <i class="el-icon-upload"></i>
-                <div class="el-upload__text"><em>瀵煎叆瑁呭鏁版嵁</em></div>
+                <div class="el-upload__text"><em>瀵煎叆浜у搧缁撴瀯</em></div>
                 <div class="el-upload__tip" slot="tip">
                   鍙兘涓婁紶xlsx/xls鏂囦欢锛屼笖涓嶈秴杩�10M<el-button
                     type="text"
                     style="font-size:12px;"
-                    @click="downZhuangbeiDataTemplate"
-                    >涓嬭浇妯℃澘</el-button
-                  >
-                </div>
-              </el-upload>
-            </div>
-            <div>
-              <el-upload
-                style="margin-left:8px;display: inline;"
-                class="upload-demo"
-                drag
-                :headers="headers"
-                :action="shepinUploadInfo.url"
-                :beforeUpload="beforeAvatarUpload"
-                :limit="1"
-                :show-file-list="false"
-                :file-list="shepinfileList"
-                :data="shepinUploadInfo.uploadData"
-                :on-success="shepinFileSuccessUploadScan"
-                :on-error="handleError"
-                accept=".xlsx,.xls,.csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
-                :auto-upload="true"
-                ref="shepinUploadScan"
-                multiple
-              >
-                <i class="el-icon-upload"></i>
-                <div class="el-upload__text"><em>瀵煎叆灏勯鏁版嵁</em></div>
-                <div class="el-upload__tip" slot="tip">
-                  鍙兘涓婁紶xlsx/xls鏂囦欢锛屼笖涓嶈秴杩�10M<el-button
-                    type="text"
-                    style="font-size:12px;"
-                    @click="downShepinDataTemplate"
-                    >涓嬭浇妯℃澘</el-button
+                    ></el-button
                   >
                 </div>
               </el-upload>
@@ -129,8 +97,8 @@
       customUpload: true,
       uploadInfo: {
         // 鏄惁灞曠ず涓婁紶EXCEL浠ュ強瀵瑰簲鐨剈rl
-        isShow: false,
-        url: '/mes/structure/uploadExt'
+        isShow: true,
+        url: '/mes/structure/uploadExcelPlus'
       },
       prelang: 'structure',
       options: {
@@ -326,7 +294,7 @@
       zhuangbeiUploadInfo: {
         // 鏄惁灞曠ず涓婁紶EXCEL浠ュ強瀵瑰簲鐨剈rl
         isShow: true,
-        url: '/mes/structure/uploadExt'
+        url: '/mes/structure/uploadExcelPlus'
       },
       zhuangbeifileList: [],
       shepinfileList: [],
@@ -487,8 +455,9 @@
         this.$message.warning(response.msg)
       } else {
         this.$message({
-          message: '涓婁紶鎴愬姛',
-          type: 'success'
+          message: response.data,
+          type: 'success',
+          dangerouslyUseHTMLString: true
         })
         this.getData()
       }
diff --git a/src/views/technology/structure/single-structure-form.vue b/src/views/technology/structure/single-structure-form.vue
index b3ad774..813347d 100644
--- a/src/views/technology/structure/single-structure-form.vue
+++ b/src/views/technology/structure/single-structure-form.vue
@@ -2,11 +2,11 @@
   <div style="height: 100%">
     <div class="page-header">
       <div class="header-left">
-        <a @click="$router.go(-1)"><i class="icon-btn-back"></i></a>
+        <a @click="goBack"><i class="icon-btn-back"></i></a>
         <h2>缂栬緫-浜у搧缁撴瀯</h2>
       </div>
       <div class="btn-group header-right">
-        <el-button title="淇濆瓨" :disabled="isSubmit" v-thinclick="`save`"
+        <el-button title="淇濆瓨" type="primary" :disabled="isSubmit" v-thinclick="`save`"
           >淇濆瓨</el-button
         >
       </div>
@@ -47,34 +47,6 @@
                 >
                 </el-input>
               </el-form-item>
-              <!-- <el-form-item label="缁撴瀯绫诲瀷" prop="bomTypeDb">
-                <el-select
-                  v-model="dataForm.bomTypeDb"
-                  placeholder="璇烽�夋嫨缁撴瀯绫诲瀷"
-                  style="width:100%"
-                >
-                  <el-option
-                    v-for="(item, index) in bomTypeDbOptions"
-                    :label="item.label"
-                    :value="item.value"
-                    :key="index"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item> -->
-              <!-- <el-form-item label="鏇夸唬" prop="alternativeNo">
-                <el-input v-model="dataForm.alternativeNo"></el-input>
-              </el-form-item>
-              <el-form-item label="鏇夸唬鎻忚堪" prop="alternativeDesc">
-                <el-input
-                  type="textarea"
-                  :autosize="{ minRows: 1, maxRows: 3 }"
-                  v-model="dataForm.alternativeDesc"
-                ></el-input>
-              </el-form-item> -->
-              <!-- <el-form-item label="鐗堟湰鍙�" prop="version">
-                <el-input v-model="dataForm.version" disabled></el-input>
-              </el-form-item> -->
               <el-form-item label="澶囨敞" prop="remark">
                 <el-input
                   type="textarea"
@@ -82,15 +54,6 @@
                   v-model="dataForm.remark"
                 ></el-input>
               </el-form-item>
-              <!-- <el-form-item label="宸插悓姝ヨ嚦IFS" prop="ifsSync">
-                <span
-                  style="width: 146px;display: inline-block;font-size:12px;font-weight:bold;"
-                  >{{ dataForm.ifsSync ? '鏄�' : '鍚�' }}</span
-                >
-              </el-form-item> -->
-              <!-- <el-form-item label="榛樿缁撴瀯" prop="master">
-                <el-checkbox v-model="dataForm.master"></el-checkbox>
-              </el-form-item> -->
             </el-col>
           </el-row>
         </el-form>
@@ -110,7 +73,7 @@
                 size="medium"
                 class="blue-but"
                 @click="addNode()"
-                >娣诲姞
+                >娣诲姞琛�
               </el-button>
             </div>
           </div>
@@ -120,12 +83,14 @@
             :data="nodeList"
             :default-sort="{ prop: 'lineItemNo' }"
             height="650"
-            :header-cell-style="{ color: '#999' }"
+            border
+            :header-cell-style="{ color: '#000' }"
             :row-class-name="structureComponentRowClass"
+            class="l-mes"
           >
             <el-table-column
               prop="lineItemNo"
-              label="琛岄」鍙�"
+              label="搴忓彿"
               align="center"
               width="70"
             >
@@ -135,11 +100,13 @@
               prop="operationName"
               align="center"
             >
-              <template scope="scope">
+              <template scope="scope" >
                 <el-input
-                  v-model="scope.row.operationName"
-                  placeholder="璇烽�夋嫨娑堣�楀伐搴�"
-                  v-if="scope.row.isUpdate"
+                style="width:90%"
+                v-model="scope.row.operationName"
+                placeholder="璇烽�夋嫨娑堣�楀伐搴�"
+                readonly
+                v-if="scope.row.isUpdate"
                 >
                   <el-button
                     slot="append"
@@ -155,6 +122,7 @@
             <el-table-column label="闆朵欢鍙�" prop="partNo" align="center">
               <template scope="scope">
                 <el-input
+                  style="width:90%"
                   :class="customClass[scope.$index]"
                   v-model="scope.row.partNo"
                   placeholder="璇烽�夋嫨闆朵欢"
@@ -184,6 +152,8 @@
             <el-table-column label="鏁伴噺" prop="qpa" align="center">
               <template slot-scope="scope">
                 <el-input
+                  style="width:90%"
+                  clearable
                   size="small"
                   v-model="scope.row.qpa"
                   placeholder="璇峰~鍐欐暟閲�"
@@ -193,31 +163,15 @@
                 <span v-show="!scope.row.isUpdate">{{ scope.row.qpa }}</span>
               </template>
             </el-table-column>
-
             <el-table-column label="鍗曚綅" prop="unit" align="center">
             </el-table-column>
-            <!-- <el-table-column label="鐩樻暟(鐩�)" prop="discNum" align="center">
-              <template slot-scope="scope">
-                <el-input
-                  size="small"
-                  v-model="scope.row.discNum"
-                  placeholder="璇峰~鍐欑洏鏁�"
-                  v-show="scope.row.isUpdate"
-                ></el-input>
-                <span v-show="!scope.row.isUpdate">{{
-                  scope.row.discNum
-                }}</span>
-              </template>
-            </el-table-column> -->
-            <!-- <el-table-column label="鍥惧彿" prop="drawingNumber" align="center">
-            </el-table-column> -->
             <el-table-column align="center" label="鎿嶄綔" width="85px">
               <template slot-scope="scope">
                 <el-button
                   type="text"
                   size="small"
                   class="blue-but"
-                  v-if="!scope.row.isUpdate"
+                  v-if="!scope.row.isUpdate && scope.row.id!=null"
                   @click="editNode(scope.$index, scope.row)"
                   >缂栬緫</el-button
                 >
@@ -225,7 +179,7 @@
                   type="text"
                   size="small"
                   class="blue-but"
-                  v-if="scope.row.isUpdate"
+                  v-if="scope.row.isUpdate && scope.row.id!=null"
                   :loading="nodeSaveLoading"
                   @click="addOrUpdateNode(scope.$index, scope.row)"
                   >淇濆瓨</el-button
@@ -346,6 +300,26 @@
     this.getBomTypeDbOptions()
   },
   methods: {
+    goBack(){
+      let isUnSave = false
+      const _than = this
+      _than.nodeList.forEach(e=>{
+        if(e.isUpdate || e.id==null){
+          isUnSave = true
+        }
+      })
+      if(isUnSave){
+        _than.$confirm('鎮ㄨ繕鏈夋湭淇濆瓨鐨勫瓙鑺傜偣锛岀‘璁ょ寮�鍚�?', '鎻愮ず', {
+          confirmButtonText: '浠嶈绂诲紑',
+          cancelButtonText: '鍙栨秷',
+          type: 'warning'
+        }).then(() => {
+          _than.$router.go(-1)
+        }).catch(() => {});
+      }else{
+        _than.$router.go(-1)
+      }
+    },
     // 鏌ヨ缁撴瀯绫诲瀷瀛楀吀
     getBomTypeDbOptions() {
       remote('bom_type_db').then((response) => {
@@ -424,41 +398,49 @@
       this.currRow = null
     },
     save() {
+      const _than = this
       this.isSubmit = true
-      this.$refs.dataForm.validate((valid) => {
+       _than.nodeList.forEach(e=>{
+        e.version = _than.dataForm.version
+      })
+      _than.dataForm.components = _than.nodeList
+      _than.$refs.dataForm.validate((valid) => {
         if (valid) {
-          if (this.dataForm.id) {
-            putObj(this.dataForm)
+          if (_than.dataForm.id) {
+            putObj(_than.dataForm)
               .then((response) => {
                 var data = response.data
                 if (data.code === 0) {
-                  this.$message.success('淇濆瓨鎴愬姛')
+                  _than.$message.success('淇濆瓨鎴愬姛')
+                  _than.$nextTick(()=>{
+                    _than.init(_than.dataForm.id)
+                  })
                 } else {
-                  this.$message.error('淇濆瓨澶辫触')
+                  _than.$message.error('淇濆瓨澶辫触')
                 }
-                this.isSubmit = false
+                _than.isSubmit = false
               })
               .catch(() => {
-                this.isSubmit = false
+                _than.isSubmit = false
               })
           } else {
-            addObj(this.dataForm)
+            addObj(_than.dataForm)
               .then((response) => {
                 var data = response.data
                 if (data.code === 0) {
-                  this.dataForm.id = data.data
-                  this.$message.success('淇濆瓨鎴愬姛')
+                  _than.dataForm.id = data.data
+                  _than.$message.success('淇濆瓨鎴愬姛')
                 } else {
-                  this.$message.error('淇濆瓨澶辫触')
+                  _than.$message.error('淇濆瓨澶辫触')
                 }
-                this.isSubmit = false
+                _than.isSubmit = false
               })
               .catch(() => {
-                this.isSubmit = false
+                _than.isSubmit = false
               })
           }
         } else {
-          this.isSubmit = false
+          _than.isSubmit = false
         }
       })
     },
@@ -635,6 +617,10 @@
       }
     },
     delNode(index, row) {
+      if(row.id==null){
+        this.nodeList.splice(index,1)
+        return
+      }
       this.$confirm('鏄惁纭鍒犻櫎闆朵欢鍙蜂负' + row.partNo, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
@@ -826,4 +812,28 @@
 .el-input__red {
   border: 1px solid red;
 }
+.l-mes .el-input-group__append,
+.l-mes .el-input-group__prepend {
+  padding: 0;
+  border-top: none;
+  border-right: none;
+  border-left: none;
+  border-radius: 0;
+  background-color: transparent;
+}
+
+.l-mes .el-input-group__append .el-button,
+.l-mes .el-input-group__prepend .el-button {
+  padding: 0;
+  width: 25px;
+  border: none !important;
+  line-height: 28px;
+  color: #c0c4cc;
+  margin: -1px 0;
+}
+
+.l-mes .el-input-group__append .el-button i,
+.l-mes .el-input-group__prepend .el-button i {
+  vertical-align: middle;
+}
 </style>
diff --git a/src/views/warehouse/changestock/index.vue b/src/views/warehouse/changestock/index.vue
index 29b448d..22c7325 100644
--- a/src/views/warehouse/changestock/index.vue
+++ b/src/views/warehouse/changestock/index.vue
@@ -2,145 +2,90 @@
   <div class="mod-config">
     <basic-container>
       <div style="margin-left: 15px;">
-        <el-row>
-          <el-col :span="1">
-            <div>
-              <el-divider direction="vertical"></el-divider>
-              <div
-                style="float: left;height: 18px;font-size: 14px;line-height: 18px;font-weight: bold"
-              >
-                <span>闆朵欢</span>
-              </div>
-            </div>
-          </el-col>
-          <el-col :span="3">
-            <div>
-              <el-input
-                class="change-stock-input"
-                v-model="partNoStock"
-                placeholder="闆朵欢"
-                style="width: 100%"
-                disabled
-              >
-                <el-button
-                  slot="append"
-                  icon="el-icon-search"
-                  @click="openPartDialog()"
-                ></el-button>
-              </el-input>
-            </div>
-          </el-col>
-          <el-col :span="1" :offset="1">
-            <div>
-              <el-divider direction="vertical"></el-divider>
-              <div
-                style="float: left;height: 18px;font-size: 14px;line-height: 18px;font-weight: bold"
-              >
-                <span>搴撲綅</span>
-              </div>
-            </div>
-          </el-col>
-          <el-col :span="3">
-            <div>
-              <el-input
-                class="change-stock-input"
-                v-model="locationNoStock"
-                placeholder="搴撲綅鍙�"
-                @focus="openPicker(locationNoStock)"
-                style="width: 100%"
-                disabled
-              >
-                <i
-                  slot="suffix"
-                  v-show="locationNoStock"
-                  @click="clearForm(locationNoStock)"
-                  class="el-input__icon el-icon-error err-style"
-                ></i>
-                <el-button
-                  slot="append"
-                  icon="el-icon-search"
-                  @click="openLocationDialog()"
-                ></el-button>
-              </el-input>
-            </div>
-          </el-col>
-          <el-col :span="2">
-            <div style="display:flex;justify-content:flex-end;">
-              <div
-                style="height: 18px;font-size: 14px;line-height: 18px;font-weight: bold;width:60px;"
-              >
-                <span>鎵规鍙�</span>
-              </div>
-              <div>
-                <el-divider direction="vertical"></el-divider>
-              </div>
-            </div>
-          </el-col>
-          <el-col :span="3">
-            <div>
-              <el-input
-                class="change-stock-input"
-                v-model="partBatchNoStock"
-                placeholder="鎵规鍙�"
-                @focus="openPicker(partBatchNoStock)"
-                style="width: 100%"
-                disabled
-              >
-                <i
-                  slot="suffix"
-                  v-show="partBatchNoStock"
-                  @click="clearStock(partBatchNoStock)"
-                  class="el-input__icon el-icon-error err-style"
-                ></i>
-                <el-button
-                  slot="append"
-                  icon="el-icon-search"
-                  @click="openStockDialog()"
-                ></el-button>
-              </el-input>
-            </div>
-          </el-col>
-          <el-col :span="2">
-            <div style="display:flex;justify-content:flex-end;">
-              <div
-                style="height: 18px;font-size: 14px;line-height: 18px;font-weight: bold;width:60px;"
-              >
-                <span>鍙敤鏁伴噺</span>
-              </div>
-              <div>
-                <el-divider direction="vertical"></el-divider>
-              </div>
-            </div>
-          </el-col>
-          <el-col :span="3">
-            <div>
-              <el-select
-                v-model="stockList.condition"
-                placeholder="璇烽�夋嫨"
-                @change="conditionChange"
-              >
-                <el-option
-                  v-for="item in conditionOptions"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
+        <el-form class="l-mes" style="width:100%" :model="searchForm" label-width="80px" label-position="right">
+          <el-row>
+            <el-col :span="5">
+              <el-form-item label="闆朵欢">
+                <el-input
+                  class="change-stock-input"
+                  v-model="searchForm.partNoStock"
+                  placeholder="闆朵欢"
+                  style="width: 100%"
+                  disabled
                 >
-                </el-option>
-              </el-select>
-            </div>
-          </el-col>
-          <el-col :span="3">
-            <div style="text-align:center;">
-              <el-button @click="clearConditions">娓呯┖</el-button
-              ><el-button
-                @click="queryByConditions"
-                :disabled="isSubmit"
-                type="primary"
-                >鏌ヨ</el-button
-              >
-            </div>
-          </el-col>
-        </el-row>
+                  <el-button
+                    slot="append"
+                    icon="el-icon-search"
+                    @click="openPartDialog()"
+                  ></el-button>
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="5">
+              <el-form-item label="搴撲綅">
+                <el-input
+                  class="change-stock-input"
+                  v-model="searchForm.locationNoStock"
+                  placeholder="搴撲綅鍙�"
+                  style="width: 100%"
+                  disabled
+                >
+                  <el-button
+                    slot="append"
+                    icon="el-icon-search"
+                    @click="openLocationDialog()"
+                  ></el-button>
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="5">
+              <el-form-item label="鎵规鍙�">
+                <el-input
+                  class="change-stock-input"
+                  v-model="searchForm.partBatchNoStock"
+                  placeholder="鎵规鍙�"
+                  style="width: 100%"
+                  disabled
+                >
+                  <el-button
+                    slot="append"
+                    icon="el-icon-search"
+                    @click="openStockDialog()"
+                  ></el-button>
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="5">
+              <el-form-item label="鍙敤鏁伴噺">
+                <el-select
+                  style="width:100%"
+                  v-model="searchForm.condition"
+                  placeholder="璇烽�夋嫨"
+                  @change="conditionChange"
+                >
+                  <el-option
+                    v-for="item in conditionOptions"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="3" :offset="1">
+              <div style="text-align:center;">
+                <el-button @click="clearConditions">娓呯┖</el-button
+                ><el-button
+                  @click="queryByConditions"
+                  :disabled="isSubmit"
+                  type="primary"
+                  >鏌ヨ</el-button
+                >
+              </div>
+            </el-col>
+          </el-row>
+        </el-form>
         <div style="margin-top: 15px;">
           <el-divider direction="vertical"></el-divider>
           <div
@@ -148,11 +93,11 @@
           >
             <span>瀹炴椂搴撳瓨</span>
           </div>
-          <el-button type="primary" @click="addOrUpdateHandle()"
+          <el-button size="mini" type="primary" @click="addOrUpdateHandle()"
             >鏂板</el-button
           >
-          <el-button type="primary" @click="addStockSubmit()">鎺ユ敹</el-button>
-          <el-button type="primary" @click="deleteStockSubmit()"
+          <el-button size="mini" type="primary" @click="addStockSubmit()">鎺ユ敹</el-button>
+          <el-button size="mini" type="primary" @click="deleteStockSubmit()"
             >鍙戞斁</el-button
           >
 
@@ -307,6 +252,12 @@
 export default {
   data() {
     return {
+      searchForm: {
+        partNoStock: null,
+        locationNoStock: null,
+        partBatchNoStock: null,
+        condition: '>0',
+      },
       stockList: {
         condition: '>0',
         locationNo: null,
@@ -322,9 +273,6 @@
       paramObj: {},
       dataRule: {},
       addOrUpdateVisible: false,
-      partNoStock: null,
-      locationNoStock: null,
-      partBatchNoStock: null,
       showPart: false,
       showLocation: false,
       showStock: false,
@@ -355,7 +303,7 @@
     }
   },
   watch: {
-    partNoStock: {
+    'searchForm.partNoStock': {
       handler(newValue, oldValue) {
         if (newValue != null && newValue != undefined) {
           // this.getData()
@@ -364,7 +312,7 @@
       deep: true,
       immediate: true
     },
-    locationNoStock: {
+    'searchForm.locationNoStock': {
       handler(newValue, oldValue) {
         if (newValue != null && newValue != undefined) {
           // this.getData()
@@ -373,7 +321,7 @@
       deep: true,
       immediate: true
     },
-    partBatchNoStock: {
+    'searchForm.partBatchNoStock': {
       handler(newValue, oldValue) {
         if (newValue != null && newValue != undefined) {
           // this.getData()
@@ -386,16 +334,16 @@
   methods: {
     // 娓呯┖鎵�鏈夋煡璇㈡潯浠�
     clearConditions() {
-      this.partNoStock = null
+      this.searchForm.partNoStock = null
       this.stockList.partNo = null
       this.paramObj.partId = null
       this.stockList.partName = null
       this.stockList.partId = null
-      this.locationNoStock = null
+      this.searchForm.locationNoStock = null
       this.stockList.locationNo = null
       this.stockList.locationId = null
       this.paramObj.locationId = null
-      this.partBatchNoStock = null
+      this.searchForm.partBatchNoStock = null
       this.stockList.partBatchNo = null
     },
     // 鏍规嵁鏌ヨ鏉′欢锛屾悳绱�
@@ -403,15 +351,15 @@
       this.getData()
     },
     // 鍙敤鏁伴噺鏉′欢鍙樻洿鍚庯紝瑙﹀彂鏌ヨ
-    conditionChange() {
-      // this.getData()
+    conditionChange(val) {
+      this.stockList.condition = val
     },
     // 闆朵欢
     openPartDialog() {
       this.showPart = true
     },
     getData() {
-      if (this.partNoStock != null) {
+      if (this.searchForm.partNoStock != null) {
         getStockCount(this.stockList).then((resp) => {
           const respData = resp.data.data
           if (respData && respData > 100) {
@@ -433,29 +381,10 @@
         this.$message.error('璇峰厛閫夋嫨涓�涓浂浠�')
       }
     },
-    openPicker() {
-      document.activeElement.blur() // 涓诲姩瑙﹀彂onblur浜嬩欢锛屾槸鍘熺敓鐨刯s鍝�
-    },
-    clearForm() {
-      this.locationNoStock = null
-      this.stockList.locationNo = this.locationNoStock
-      this.stockList.locationId = null
-      this.paramObj.locationId = null
-      // this.getData()
-    },
-    clearStock() {
-      this.partBatchNoStock = null
-      this.stockList.partBatchNo = this.partBatchNoStock
-      this.locationNoStock = null
-      this.stockList.locationNo = this.locationNoStock
-      this.stockList.locationId = null
-      this.paramObj.locationId = null
-      // this.getData()
-    },
     selectPart(param) {
       if (param) {
-        this.partNoStock = param.partNo
-        this.stockList.partNo = this.partNoStock
+        this.searchForm.partNoStock = param.partNo
+        this.stockList.partNo = this.searchForm.partNoStock
         this.paramObj.partId = param.id
         this.stockList.partName = param.partName
         this.stockList.partId = param.id
@@ -469,14 +398,15 @@
       // }
     },
     selectLocation(param) {
+      console.log(param);
       if (param) {
-        this.locationNoStock = param.locNo
-        this.stockList.locationNo = this.locationNoStock
+        this.searchForm.locationNoStock = param.locNo
+        this.stockList.locationNo = this.searchForm.locationNoStock
         this.stockList.locationId = param.id
         this.paramObj.locationId = param.id
       } else {
-        this.locationNoStock = null
-        this.stockList.locationNo = this.locationNoStock
+        this.searchForm.locationNoStock = null
+        this.stockList.locationNo = this.searchForm.locationNoStock
         this.stockList.locationId = null
         this.paramObj.locationId = null
         // this.getData()
@@ -492,25 +422,25 @@
     dataFormSubmit() {},
     selectStock(param) {
       if (param) {
-        this.partBatchNoStock = param.partBatchNo
-        this.stockList.partBatchNo = this.partBatchNoStock
+        this.searchForm.partBatchNoStock = param.partBatchNo
+        this.stockList.partBatchNo = this.searchForm.partBatchNoStock
         this.stockList.locationNo = param.locationNo
-        this.locationNoStock = param.locationNo
+        this.searchForm.locationNoStock = param.locationNo
         this.stockList.locationId = param.locationId
         this.paramObj.locationId = param.locationId
-        this.partNoStock = param.partNo
-        this.stockList.partNo = this.partNoStock
+        this.searchForm.partNoStock = param.partNo
+        this.stockList.partNo = this.searchForm.partNoStock
         this.paramObj.partId = param.partId
         this.stockList.partName = param.partName
         this.stockList.partId = param.partId
       } else {
-        this.partBatchNoStock = null
-        this.stockList.partBatchNo = this.partBatchNoStock
-        this.locationNoStock = null
-        this.stockList.locationNo = this.locationNoStock
+        this.searchForm.partBatchNoStock = null
+        this.stockList.partBatchNo = this.searchForm.partBatchNoStock
+        this.searchForm.locationNoStock = null
+        this.stockList.locationNo = this.searchForm.locationNoStock
         this.stockList.locationId = null
         this.paramObj.locationId = null
-        this.partNoStock = null
+        this.searchForm.partNoStock = null
         this.stockList.partNo = null
         this.paramObj.partId = null
         this.stockList.partName = null
diff --git a/src/views/warehouse/stock/index.vue b/src/views/warehouse/stock/index.vue
index f6ccc46..9416a88 100644
--- a/src/views/warehouse/stock/index.vue
+++ b/src/views/warehouse/stock/index.vue
@@ -11,13 +11,13 @@
         ref="warehouseStockTable"
       >
         <template #toolbar>
-          <el-button
+          <!-- <el-button
             v-if="permissions.warehouse_stock_scm"
             @click="pushScm()"
             type="primary"
             style="margin-left:10px;"
             >鎴愬搧鎺ㄩ�丼CM
-          </el-button>
+          </el-button> -->
         </template>
       </ttable>
       <!-- 鍒涘缓涓荤敓浜ц鍒� -->
@@ -65,7 +65,7 @@
       multipleSelection: [],
       uploadInfo: {
         // 鏄惁灞曠ず涓婁紶EXCEL浠ュ強瀵瑰簲鐨剈rl
-        isShow: true,
+        isShow: false,
         url: '/mes/stock/upload'
       },
       prelang: 'operation',
@@ -161,7 +161,7 @@
             isSearch: true,
             searchInfoType: 'text'
           },
-          {
+         /*  {
             width: '100',
             minWidth: '100',
             prop: 'partBatchNo',
@@ -220,7 +220,7 @@
             isTrue: true,
             isSearch: true,
             searchInfoType: 'text'
-          },
+          }, */
           {
             width: '100',
             minWidth: '100',
@@ -261,7 +261,7 @@
             isSearch: true,
             searchInfoType: 'text'
           },
-          {
+         /*  {
             width: '100',
             minWidth: '100',
             prop: 'reserveQuantity',
@@ -270,7 +270,7 @@
             isTrue: true,
             isSearch: true,
             searchInfoType: 'text'
-          },
+          }, */
           {
             width: '100',
             minWidth: '120',
@@ -291,7 +291,7 @@
             isSearch: true,
             searchInfoType: 'text'
           },
-          {
+          /* {
             width: '100',
             minWidth: '120',
             prop: 'sstockQuantity',
@@ -320,8 +320,8 @@
             isTrue: true,
             isSearch: true,
             searchInfoType: 'text'
-          },
-          {
+          }, */
+          /* {
             minWidth: '100',
             prop: 'status',
             label: '鐘舵��',
@@ -329,7 +329,7 @@
             isTrue: true,
             isSearch: true,
             searchInfoType: 'text'
-          },
+          }, */
           {
             minWidth: '100',
             prop: 'ifsBatchNo',
@@ -350,7 +350,7 @@
           }
         ],
         toolbar: [
-          {
+          /* {
             text: '绉诲簱',
             type: 'primary',
             fun: this.moveStock
@@ -369,7 +369,7 @@
             text: '鎴愬搧鏍囩2',
             type: 'primary',
             fun: this.warehousingSmalllPrint
-          }
+          } */
         ]
       },
       addOrUpdateVisible: false,

--
Gitblit v1.9.3