From 9f571972ce45d45facd8ca667376e2d4c99da3af Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期一, 07 四月 2025 13:22:06 +0800
Subject: [PATCH] 原辅料下单修改

---
 src/views/business/materialOrder/index.vue |  202 +++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 148 insertions(+), 54 deletions(-)

diff --git a/src/views/business/materialOrder/index.vue b/src/views/business/materialOrder/index.vue
index bba1f96..4cb05c3 100644
--- a/src/views/business/materialOrder/index.vue
+++ b/src/views/business/materialOrder/index.vue
@@ -5,46 +5,51 @@
         <el-form :model="entity" ref="entity" size="small" :inline="true">
           <el-form-item label="鎵瑰彿" prop="updateBatchNo">
             <el-input v-model="entity.updateBatchNo" clearable placeholder="璇疯緭鍏�" size="small"
-              @keyup.enter.native="refreshTable">
+              @keyup.enter.native="goSearch">
             </el-input>
           </el-form-item>
-          <el-form-item label="濮旀墭缂栧彿" prop="entrustCode">
+          <el-form-item label="濮旀墭缂栧彿" prop="entrustCode" v-if="tabIndex !== 0">
             <el-input v-model="entity.entrustCode" clearable placeholder="璇疯緭鍏�" size="small"
-              @keyup.enter.native="refreshTable">
+              @keyup.enter.native="goSearch">
             </el-input>
           </el-form-item>
           <el-form-item label="闆朵欢鍙�" prop="partNo">
-            <el-input v-model="entity.partNo" clearable placeholder="璇疯緭鍏�" size="small"
-              @keyup.enter.native="refreshTable">
+            <el-input v-model="entity.partNo" clearable placeholder="璇疯緭鍏�" size="small" @keyup.enter.native="goSearch">
             </el-input>
           </el-form-item>
-          <el-form-item label="闆朵欢鎻忚堪" prop="partDesc">
-            <el-input v-model="entity.partDesc" clearable placeholder="璇疯緭鍏�" size="small"
-              @keyup.enter.native="refreshTable">
-            </el-input>
+          <el-form-item label="鎶ユ绫诲瀷" prop="inspectionType">
+            <el-select v-model="entity.inspectionType" clearable placeholder="璇烽�夋嫨" size="small" @change="refreshTable"
+              style="width: 100%">
+              <el-option label="鍘熻緟鏉�" value="鍘熻緟鏉�"></el-option>
+              <el-option label="鍖呮潗" value="鍖呮潗"></el-option>
+            </el-select>
           </el-form-item>
           <el-form-item>
-            <el-button v-if="tabIndex === 2 || tabIndex === 3 || tabIndex === 4"
+            <el-button v-if="tabIndex === 1 || tabIndex === 2 || tabIndex === 3 || tabIndex === 4"
               :icon="!more ? 'el-icon-arrow-down' : 'el-icon-arrow-up'" style="color: #3A7BFA;" type="text"
               @click="more = !more">{{ !more ? '鏇村' : '鏀惰捣' }}</el-button>
-            <el-button size="mini" type="primary" @click="refreshTable()">鏌ヨ</el-button>
+            <el-button size="mini" type="primary" @click="goSearch">鏌ヨ</el-button>
             <el-button size="mini" @click="refresh()">閲嶇疆</el-button>
+          </el-form-item>
+          <el-form-item label="闆朵欢鎻忚堪" prop="partDesc" v-if="more">
+            <el-input v-model="entity.partDesc" clearable placeholder="璇疯緭鍏�" size="small" @keyup.enter.native="goSearch">
+            </el-input>
           </el-form-item>
           <el-form-item label="渚涘簲鍟嗗悕绉�" prop="supplierName"
             v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more">
             <el-input v-model="entity.supplierName" clearable placeholder="璇疯緭鍏�" size="small"
-              @keyup.enter.native="refreshTable">
+              @keyup.enter.native="goSearch">
             </el-input>
           </el-form-item>
           <el-form-item label="鏍峰搧鍨嬪彿" prop="sampleModel"
             v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more">
             <el-input v-model="entity.sampleModel" clearable placeholder="璇疯緭鍏�" size="small"
-              @keyup.enter.native="refreshTable">
+              @keyup.enter.native="goSearch">
             </el-input>
           </el-form-item>
           <el-form-item label="妫�楠岀姸鎬�" prop="inspectStatus"
             v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more">
-            <el-select v-model="entity.inspectStatus" clearable size="small" @change="refreshTable()">
+            <el-select v-model="entity.inspectStatus" clearable size="small" @change="goSearch">
               <el-option v-for="(a, i) in inspectStatusList" :key="i" :label="a.label" :value="a.value"></el-option>
             </el-select>
           </el-form-item>
@@ -69,14 +74,14 @@
           <div>
             <el-button v-show="tabIndex === 3 || tabIndex === 2" :loading="outLoading" size="small" type="primary"
               @click="handleOut">瀵煎嚭</el-button>
-            <el-button v-if="tabIndex === 0" size="small" type="primary" @click="copper">閾滄潗鏂欎笅鍗�</el-button>
+            <!-- <el-button v-if="tabIndex === 0" size="small" type="primary" @click="copper">閾滄潗鏂欎笅鍗�</el-button> -->
             <el-button v-if="tabIndex !== 0" size="small" type="primary" @click="openPrint">鏍囩鎵撳嵃</el-button>
           </div>
         </div>
         <!--寰呬笅鍗�-->
         <div class="table">
           <lims-table :tableData="tableData" :column="column" v-if="tabIndex === 0" @pagination="pagination"
-            :rowClassName="changeRowClass" :height="'calc(100vh - 290px)'" key="tableData" :page="page"
+            ref="tableData" :rowClassName="changeRowClass" :height="'calc(100vh - 290px)'" key="tableData" :page="page"
             :tableLoading="tableLoading"></lims-table>
         </div>
         <!--妫�楠屼腑-->
@@ -109,8 +114,7 @@
     <el-dialog :visible.sync="exemptionVisible" title="纭鍏嶆" width="42%">
       <div style="display: flex">
         <span style="width: 90px; line-height: 32px">瑙勬牸鍨嬪彿锛�</span>
-        <el-input v-model="exemptionInfo.partDetail" clearable placeholder="璇疯緭鍏�" size="small"
-          @keyup.enter.native="refreshTable"></el-input>
+        <el-input v-model="exemptionInfo.partDetail" clearable placeholder="璇疯緭鍏�" size="small"></el-input>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-row>
@@ -178,7 +182,7 @@
       </div>
     </el-dialog>
     <!--    <Inspection v-if="state>0" :key="InspectionKey" :inspectorList="inspectorList" :orderId="orderId"-->
-    <!--                :sonLaboratory="'鍘熸潗鏂�'" :state="state"-->
+    <!--                :sonLaboratory="'鍘熻緟鏉�'" :state="state"-->
     <!--                :typeSource="typeSource"-->
     <!--                @goback="goback" @refreshView="refreshView"/>-->
   </div>
@@ -205,6 +209,7 @@
   updateEntrustCode
 } from "@/api/business/rawMaterialOrder";
 import { getWarehouseSubmit } from "@/api/business/materialInspection";
+import { mapGetters } from "vuex";
 // import Inspection from "../do/b1-inspect-order-plan/Inspection.vue";
 
 export default {
@@ -220,6 +225,7 @@
         { label: '鎵瑰彿', prop: 'updateBatchNo' },
         { label: '闆朵欢鍙�', prop: 'partNo' },
         { label: '闆朵欢鎻忚堪', prop: 'partDesc' },
+        { label: '鎶ユ绫诲瀷', prop: 'inspectionType' },
         {
           dataType: 'tag',
           label: '鐗╂枡绫诲瀷',
@@ -246,8 +252,8 @@
         { label: '鎶ユ鏃堕棿', prop: 'declareDate' },
         {
           dataType: 'action',
-          fixed: 'right',
           label: '鎿嶄綔',
+          fixed: 'right',
           operation: [
             {
               name: '涓嬪崟',
@@ -263,19 +269,19 @@
                 this.exemption(row);
               },
             },
-            {
-              name: '鎾ら攢鎶ユ',
-              type: 'text',
-              clickFun: (row) => {
-                this.cancelDeclare(row);
-              },
-            },
+            // {
+            //   name: '鎾ら攢鎶ユ',
+            //   type: 'text',
+            //   clickFun: (row) => {
+            //     this.cancelDeclare(row);
+            //   },
+            // },
           ]
         }
       ],
       page: {
         total: 0,
-        size: 10,
+        size: 20,
         current: 1
       },
       tableData1: [],
@@ -301,6 +307,7 @@
         { label: '鏍峰搧鍨嬪彿', prop: 'sampleModel' },
         { label: '妫�楠屼汉', prop: 'userName' },
         { label: '涓嬪彂鏃堕棿', prop: 'sendTime' },
+        { label: '鎶ユ绫诲瀷', prop: 'inspectionType' },
         {
           dataType: 'tag',
           label: '鐗╂枡绫诲瀷',
@@ -356,7 +363,7 @@
       ],
       page1: {
         total: 0,
-        size: 10,
+        size: 20,
         current: 1
       },
       tableData2: [],
@@ -412,7 +419,25 @@
         { label: '闆朵欢鎻忚堪', prop: 'partDesc' },
         { label: '渚涘簲鍟嗗悕绉�', prop: 'supplierName' },
         { label: '涓嶅悎鏍兼弿杩�', prop: 'unqualifiedDesc' },
-        { label: '鍏嶆', prop: 'isExemption' },
+        {
+          dataType: 'tag',
+          label: '鍏嶆',
+          prop: 'isExemption',
+          formatData: (params) => {
+            if (params == 1) {
+              return '鍏嶆'
+            } else {
+              return null
+            }
+          },
+          formatType: (params) => {
+            if (params == 1) {
+              return 'success'
+            } else {
+              return null
+            }
+          }
+        },
         {
           label: '鏍峰搧鍚嶇О',
           prop: 'sampleName',
@@ -422,6 +447,7 @@
         },
         { label: '鏍峰搧鍨嬪彿', prop: 'sampleModel' },
         { label: '妫�楠屼汉', prop: 'userName' },
+        { label: '鎶ユ绫诲瀷', prop: 'inspectionType' },
         {
           dataType: 'tag',
           label: '鐗╂枡绫诲瀷',
@@ -515,13 +541,13 @@
       ],
       page2: {
         total: 0,
-        size: 10,
+        size: 20,
         current: 1
       },
       tableData3: [],
       tableLoading3: false,
       column3: [
-        { label: '濮旀墭缂栧彿', prop: 'entrustCode',width: "160px", },
+        { label: '濮旀墭缂栧彿', prop: 'entrustCode', width: "160px", },
         {
           dataType: 'tag',
           label: '妫�楠岀姸鎬�',
@@ -565,7 +591,25 @@
         { label: '闆朵欢鎻忚堪', prop: 'partDesc' },
         { label: '渚涘簲鍟嗗悕绉�', prop: 'supplierName' },
         { label: '涓嶅悎鏍兼弿杩�', prop: 'unqualifiedDesc' },
-        { label: '鍏嶆', prop: 'isExemption' },
+        {
+          dataType: 'tag',
+          label: '鍏嶆',
+          prop: 'isExemption',
+          formatData: (params) => {
+            if (params == 1) {
+              return '鍏嶆'
+            } else {
+              return null
+            }
+          },
+          formatType: (params) => {
+            if (params == 1) {
+              return 'success'
+            } else {
+              return null
+            }
+          }
+        },
         {
           label: '鏍峰搧鍚嶇О',
           prop: 'sampleName',
@@ -575,6 +619,7 @@
         },
         { label: '鏍峰搧鍨嬪彿', prop: 'sampleModel' },
         { label: '妫�楠屼汉', prop: 'userName' },
+        { label: '鎶ユ绫诲瀷', prop: 'inspectionType' },
         {
           dataType: 'tag',
           label: '鐗╂枡绫诲瀷',
@@ -621,13 +666,13 @@
       ],
       page3: {
         total: 0,
-        size: 10,
+        size: 20,
         current: 1
       },
       tableData4: [],
       tableLoading4: false,
       column4: [
-        { label: '濮旀墭缂栧彿', prop: 'entrustCode',width: "160px", },
+        { label: '濮旀墭缂栧彿', prop: 'entrustCode', width: "160px", },
         {
           dataType: 'tag',
           label: '妫�楠岀姸鎬�',
@@ -671,7 +716,25 @@
         { label: '闆朵欢鎻忚堪', prop: 'partDesc' },
         { label: '渚涘簲鍟嗗悕绉�', prop: 'supplierName' },
         { label: '涓嶅悎鏍兼弿杩�', prop: 'unqualifiedDesc' },
-        { label: '鍏嶆', prop: 'isExemption' },
+        {
+          dataType: 'tag',
+          label: '鍏嶆',
+          prop: 'isExemption',
+          formatData: (params) => {
+            if (params == 1) {
+              return '鍏嶆'
+            } else {
+              return null
+            }
+          },
+          formatType: (params) => {
+            if (params == 1) {
+              return 'success'
+            } else {
+              return null
+            }
+          }
+        },
         {
           label: '鏍峰搧鍚嶇О',
           prop: 'sampleName',
@@ -681,6 +744,7 @@
         },
         { label: '鏍峰搧鍨嬪彿', prop: 'sampleModel' },
         { label: '妫�楠屼汉', prop: 'userName' },
+        { label: '鎶ユ绫诲瀷', prop: 'inspectionType' },
         {
           dataType: 'tag',
           label: '鐗╂枡绫诲瀷',
@@ -744,7 +808,7 @@
       ],
       page4: {
         total: 0,
-        size: 10,
+        size: 20,
         current: 1
       },
       entity: {
@@ -785,7 +849,7 @@
       tabIndex: 0,
       multipleSelection: [],
       active: 0, //1锛氫笅鍗曪紝2锛氭煡鐪�
-      orderType: 0, //0锛氬師鏉愭枡涓嬪崟锛�1锛氬搴︽楠屼笅鍗�
+      orderType: 0, //0锛氬師杈呮潗涓嬪崟锛�1锛氬搴︽楠屼笅鍗�
       currentId: null,
       btnLoading: false,
       quashDialogVisible: false, // 鎾ら攢涓嬪崟鎻愰啋寮规
@@ -817,17 +881,32 @@
       orderId: 0,
       inspectorList: [],//妫�楠屼汉鍛樺垪琛�
       InspectionKey: 1,
-      typeSource: null,// 0:鎴愬搧涓嬪崟锛�1锛氬師鏉愭枡涓嬪崟, 2: 閾滃崟涓濅笅鍗�
+      typeSource: null,// 0:鎴愬搧涓嬪崟锛�1锛氬師杈呮潗涓嬪崟, 2: 閾滃崟涓濅笅鍗�
       InspectInfoDialog: false, // 鏁版嵁鏌ョ湅寮规
       insInfo: {},
       outLoading: false
     }
   },
+  computed: {
+    ...mapGetters(['nickName'])
+  },
   mounted() {
+    this.refreshTable()
+  },
+  activated() {
     this.refreshTable()
   },
   // 鏂规硶闆嗗悎
   methods: {
+    // 鐐瑰嚮鏌ヨ鍥炶皟
+    goSearch() {
+      this.page.current = 1
+      this.page1.current = 1
+      this.page2.current = 1
+      this.page3.current = 1
+      this.page4.current = 1
+      this.refreshTable()
+    },
     // 鏌ヨ鍥炶皟
     refreshTable() {
       if (this.tabIndex === 0) {
@@ -878,7 +957,7 @@
     // 宸叉楠屾煡璇�
     getIfsByOverList() {
       this.tableLoading2 = true
-      if(null != this.entity.date){
+      if (null != this.entity.date) {
         this.entity.beginDeclareDate = this.entity.date[0]
         this.entity.endDeclareDate = this.entity.date[1]
       } else {
@@ -899,7 +978,7 @@
     // 鏌ヨ瀛e害妫�楠�
     getIfsByQuarterList() {
       this.tableLoading4 = true
-      if(null != this.entity.date){
+      if (null != this.entity.date) {
         this.entity.beginDeclareDate = this.entity.date[0]
         this.entity.endDeclareDate = this.entity.date[1]
       } else {
@@ -920,7 +999,7 @@
     // 鍏ㄩ儴
     getIfsByAllList() {
       this.tableLoading3 = true
-      if(null != this.entity.date){
+      if (null != this.entity.date) {
         this.entity.beginDeclareDate = this.entity.date[0]
         this.entity.endDeclareDate = this.entity.date[1]
       } else {
@@ -970,10 +1049,7 @@
       if (row.userName) {
         inspectorList = row.userName.split(',')
       }
-      let user = JSON.parse(localStorage.getItem('user'))
-      if (user) {
-        inspectorList.push(user.name)
-      }
+      inspectorList.push(this.nickName)
       this.inspectorList = inspectorList
       this.insInfo = row
       this.InspectInfoDialog = true
@@ -1020,16 +1096,34 @@
       }).catch(() => { })
     },
     viewInsInfo0() {
-      this.state = 3;
-      this.typeSource = this.insInfo.typeSource
-      this.orderId = this.insInfo.enterOrderId
+      let inspectorList = []
+      inspectorList.push(this.nickName)
       this.InspectInfoDialog = false
+      this.$router.push({
+        path: "/inspectionTask/inspection",
+        query: {
+          sonLaboratory: '鍘熻緟鏉�',
+          state: 3,
+          typeSource: this.insInfo.typeSource,
+          orderId: this.insInfo.enterOrderId,
+          inspectorList: inspectorList,
+        },
+      })
     },
     viewInsInfo1() {
-      this.state = 3;
-      this.typeSource = this.insInfo.typeSource
-      this.orderId = this.insInfo.quarterOrderId
+      let inspectorList = []
+      inspectorList.push(this.nickName)
       this.InspectInfoDialog = false
+      this.$router.push({
+        path: "/inspectionTask/inspection",
+        query: {
+          sonLaboratory: '鍘熻緟鏉�',
+          state: 3,
+          typeSource: this.insInfo.typeSource,
+          orderId: this.insInfo.quarterOrderId,
+          inspectorList: inspectorList,
+        },
+      })
     },
     goback() {
       this.state = 0
@@ -1175,7 +1269,7 @@
           repealQuarterRawOrder({ quarterOrderId: this.insOrderRow.quarterOrderId }).then(res => {
             if (res.code === 200) {
               this.$message.success('鎾ら攢鎴愬姛')
-              this.refreshTable('page')
+              this.refreshTable()
             }
           })
         }).catch(() => { })
@@ -1228,7 +1322,7 @@
       rawAllExport({ entity: entity }).then(res => {
         this.outLoading = false
         const blob = new Blob([res], { type: 'application/octet-stream' });
-        this.$download.saveAs(blob, '鍘熸潗鏂欐娴嬩俊鎭鍑�.xlsx');
+        this.$download.saveAs(blob, '鍘熻緟鏉愭娴嬩俊鎭鍑�.xlsx');
       })
     },
     // 鎻愪氦淇敼濮旀墭缂栧彿淇℃伅

--
Gitblit v1.9.3