From 4e8e3e93ece9d7b9db3d082cce92ba925c8e7ab8 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 18 二月 2025 10:54:27 +0800
Subject: [PATCH] 原材料报检迁移

---
 src/api/business/materialInspection.js             |   89 ++++++
 src/views/business/rawMaterialInspection/index.vue |  729 ++++++++++++++++++++-------------------------------
 2 files changed, 370 insertions(+), 448 deletions(-)

diff --git a/src/api/business/materialInspection.js b/src/api/business/materialInspection.js
index 69feb5e..3a6c23f 100644
--- a/src/api/business/materialInspection.js
+++ b/src/api/business/materialInspection.js
@@ -1,6 +1,13 @@
 import request from '@/utils/request'
 
-// 鏌ヨ鐢ㄦ埛鍒楄〃
+// 鏌ヨIFS璁㈠崟-寰呮姤妫�
+export function getIfsOrder(query) {
+  return request({
+    url: 'insOrder/getIfsOrder',
+    method: 'get',
+  })
+}
+// 鏌ヨIFS璁㈠崟-寰呮姤妫�
 export function getWarehouseSubmit(query) {
   return request({
     url: '/rawMaterialOrder/getWarehouseSubmit',
@@ -8,3 +15,83 @@
     params: query
   })
 }
+// 鏌ヨ鍘熸潗鏂欐姤妫�-宸插畬鎴�
+export function getIfsByFinish(query) {
+  return request({
+    url: '/rawMaterialOrder/getIfsByFinish',
+    method: 'get',
+    params: query
+  })
+}
+// 鏌ヨ鍘熸潗鏂欐姤妫�淇℃伅-鍏ㄩ儴
+export function getIfsByAll(query) {
+  return request({
+    url: '/rawMaterialOrder/getIfsByAll',
+    method: 'get',
+    params: query
+  })
+}
+// 鍘熸潗鏂欐牴鎹甶d鍙栨秷鎶ユ
+export function revokeInspectionReport(query) {
+  return request({
+    url: '/rawMaterialOrder/revokeInspectionReport',
+    method: 'post',
+    data: query
+  })
+}
+// 鏀捐鏁版嵁
+export function concessionRelease(query) {
+  return request({
+    url: '/rawMaterialOrder/concessionRelease',
+    method: 'post',
+    data: query
+  })
+}
+// 鎻愬墠鍏ュ簱
+export function advancedGodown(query) {
+  return request({
+    url: '/rawMaterialOrder/advancedGodown',
+    method: 'post',
+    data: query
+  })
+}
+// 鎵归噺鎶ユ
+export function inspectionReport(query) {
+  return request({
+    url: '/rawMaterialOrder/inspectionReport',
+    method: 'post',
+    data: query
+  })
+}
+// 鍘熸潗鏂欐牴鎹墜鍔ㄦ姤妫�
+export function addIfsInventoryQuantity(query) {
+  return request({
+    url: '/rawMaterialOrder/addIfsInventoryQuantity',
+    method: 'post',
+    data: query
+  })
+}
+// 鍘熸潗鏂欐牴鎹甶d鎶ユ
+export function inspectionReportOne(query) {
+  return request({
+    url: '/rawMaterialOrder/inspectionReportOne',
+    method: 'post',
+    data: query
+  })
+}
+// 鍘熸潗鏂欐姤妫�鍒犻櫎
+export function delIfsInventory(query) {
+  return request({
+    url: '/rawMaterialOrder/delIfsInventory',
+    method: 'delete',
+    params: query
+  })
+}
+// 鍘熸潗鏂欐姤妫�鍏ㄩ儴瀵煎嚭
+export function rawAllExport(query) {
+  return request({
+    url: '/rawMaterialOrder/rawAllExport',
+    method: 'post',
+    data: query
+  })
+}
diff --git a/src/views/business/rawMaterialInspection/index.vue b/src/views/business/rawMaterialInspection/index.vue
index be961bc..57674fb 100644
--- a/src/views/business/rawMaterialInspection/index.vue
+++ b/src/views/business/rawMaterialInspection/index.vue
@@ -1,38 +1,27 @@
 <template>
   <div class="app-container">
-    <div>
-      <el-row class="title">
-        <el-col :span="12" style="text-align: left;">鍘熸潗鏂欐姤妫�</el-col>
-        <el-col :span="12" style="text-align: right;">
-          <el-button v-show="tabIndex === 4" :loading="outLoading" size="small" type="primary" @click="handleDown">瀵煎嚭</el-button>
-          <el-button v-if="isShowIFS && tabIndex === 0" :loading="btnLoading" size="small" type="primary" @click="openIFS">鑾峰彇IFS璁㈠崟</el-button>
-          <el-button v-if="tabIndex === 0" size="small" type="primary" @click="declareS">鎶ユ</el-button>
-          <el-button v-if="tabIndex === 0" size="small" type="primary" @click="addDeclare">鏂板鎶ユ淇℃伅</el-button>
-        </el-col>
-      </el-row>
-    </div>
     <div class="search">
       <el-form :model="componentData" ref="componentData" size="small" :inline="true">
         <el-row>
-          <el-form-item label="鎵瑰彿" prop="menuName">
-            <el-input v-model="componentData.entity.updateBatchNo" clearable placeholder="璇疯緭鍏�"
+          <el-form-item label="鎵瑰彿" prop="updateBatchNo">
+            <el-input v-model="componentData.updateBatchNo" clearable placeholder="璇疯緭鍏�"
                       size="small"
                       @keyup.enter.native="refreshTable"></el-input>
           </el-form-item>
-          <el-form-item label="闆朵欢鍙�" prop="menuName">
-            <el-input v-model="componentData.entity.partNo" clearable placeholder="璇疯緭鍏�"
+          <el-form-item label="闆朵欢鍙�" prop="partNo">
+            <el-input v-model="componentData.partNo" clearable placeholder="璇疯緭鍏�"
                       size="small"
                       @keyup.enter.native="refreshTable">
             </el-input>
           </el-form-item>
-          <el-form-item label="闆朵欢鎻忚堪" prop="menuName">
-            <el-input v-model="componentData.entity.partDesc" clearable placeholder="璇疯緭鍏�"
+          <el-form-item label="闆朵欢鎻忚堪" prop="partDesc">
+            <el-input v-model="componentData.partDesc" clearable placeholder="璇疯緭鍏�"
                       size="small"
                       @keyup.enter.native="refreshTable">
             </el-input>
           </el-form-item>
-          <el-form-item label="渚涘簲鍟�" prop="menuName" v-if="(tabIndex === 3 || tabIndex === 4)">
-            <el-input v-model="componentData.entity.supplierName" clearable placeholder="璇疯緭鍏�"
+          <el-form-item label="渚涘簲鍟�" prop="supplierName" v-if="(tabIndex === 3 || tabIndex === 4)">
+            <el-input v-model="componentData.supplierName" clearable placeholder="璇疯緭鍏�"
                       size="small"
                       @keyup.enter.native="refreshTable">
             </el-input>
@@ -42,15 +31,15 @@
           <el-button size="small" @click="refresh()" icon="el-icon-refresh">閲� 缃�</el-button>
         </el-row>
         <el-row>
-          <el-form-item label="妫�楠岀姸鎬�" prop="menuName" v-if="(tabIndex === 3 || tabIndex === 4) && more">
-            <el-select v-model="componentData4.entity.inspectStatus" clearable
+          <el-form-item label="妫�楠岀姸鎬�" prop="inspectStatus" v-if="(tabIndex === 3 || tabIndex === 4) && more">
+            <el-select v-model="componentData.inspectStatus" clearable
                        size="small" style="width: 100%;" @change="refreshTable()">
               <el-option v-for="(a, i) in queryStatusList" :key="i" :label="a.label" :value="a.value"></el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="涓嬪彂鏃堕棿" prop="menuName" v-if="(tabIndex === 3 || tabIndex === 4) && more">
+          <el-form-item label="涓嬪彂鏃堕棿" prop="date" v-if="(tabIndex === 3 || tabIndex === 4) && more">
             <el-date-picker
-              v-model="entity.date"
+              v-model="componentData.date"
               end-placeholder="缁撴潫鏃ユ湡"
               format="yyyy-MM-dd"
               placeholder="閫夋嫨鏃ユ湡"
@@ -62,8 +51,8 @@
               value-format="yyyy-MM-dd">
             </el-date-picker>
           </el-form-item>
-          <el-form-item label="濮旀墭缂栧彿" prop="menuName" v-if="(tabIndex === 3 || tabIndex === 4) && more">
-            <el-input v-model="componentData4.entity.entrustCode" clearable placeholder="璇疯緭鍏�"
+          <el-form-item label="濮旀墭缂栧彿" prop="entrustCode" v-if="(tabIndex === 3 || tabIndex === 4) && more">
+            <el-input v-model="componentData.entrustCode" clearable placeholder="璇疯緭鍏�"
                       size="small"
                       @keyup.enter.native="refreshTable">
             </el-input>
@@ -72,35 +61,31 @@
       </el-form>
     </div>
     <div class="table">
-      <ul class="tab">
-        <li v-for="(m,i) in tabList" :key="m.value" :class="{active:m.value===tabIndex}" @click="handleTab(m,i)">{{m.label}}</li>
-      </ul>
-      <!--      寰呮姤妫�-->
-      <ValueTable v-show="tabIndex === 0" :key="'a'+ upIndex"
-                  ref="ValueTable"
-                  :componentData="componentData"
-                  :style="getStyle()"
-                  :tableRowClassName="changeRowClass"
-                  :url="getWarehouseSubmitApi()" />
-      <!--      寰呬笅鍗�-->
-      <ValueTable v-show="tabIndex === 1" :key="'b'+ upIndex"
-                  ref="ValueTable1"
-                  :componentData="componentData1"
-                  :style="getStyle()"
-                  :tableRowClassName="changeRowClass"
-                  :url="getWarehouseSubmitApi()" />
-      <!--      宸插畬鎴愬垪琛�-->
-<!--      <ValueTable v-show="tabIndex === 3" :key="'c'+ upIndex"-->
-<!--                  ref="ValueTable2"-->
-<!--                  :componentData="componentData2"-->
-<!--                  :style="getStyle()"-->
-<!--                  :url="$api.materialInspection.getIfsByFinish" />-->
-<!--      &lt;!&ndash;      鍏ㄩ儴&ndash;&gt;-->
-<!--      <ValueTable v-show="tabIndex === 4" :key="'d'+ upIndex"-->
-<!--                  ref="ValueTable4"-->
-<!--                  :componentData="componentData4"-->
-<!--                  :style="getStyle()"-->
-<!--                  :url="$api.materialInspection.getIfsByAll" />-->
+      <div class="table-tab">
+        <div>
+          <ul class="tab">
+            <li v-for="m in tabList" :key="m.value" :class="{active:m.value===tabIndex}" @click="handleTab(m)">{{m.label}}</li>
+          </ul>
+        </div>
+        <div>
+          <el-button v-show="tabIndex === 4" :loading="outLoading" size="small" type="primary" @click="handleDown">瀵煎嚭</el-button>
+          <el-button v-if="tabIndex === 0" :loading="btnLoading" size="small" type="primary" @click="openIFS">鑾峰彇IFS璁㈠崟</el-button>
+          <el-button v-if="tabIndex === 0" size="small" type="primary" @click="declareS">鎶ユ</el-button>
+          <el-button v-if="tabIndex === 0" size="small" type="primary" @click="addDeclare">鏂板鎶ユ淇℃伅</el-button>
+        </div>
+      </div>
+      <!--寰呮姤妫�銆佸緟涓嬪崟-->
+      <div class="table">
+        <lims-table :tableData="tableData" :column="column" v-if="tabIndex === 0 || tabIndex === 1">
+                    @pagination="pagination" :height="'calc(100vh - 290px)'"
+                    :page="page" :tableLoading="tableLoading"></lims-table>
+      </div>
+      <!--宸插畬鎴愩�佸叏閮�-->
+      <div class="table">
+        <lims-table :tableData="tableData1" :column="column1" v-if="tabIndex === 3 || tabIndex === 4"
+                    @pagination="pagination1" :height="'calc(100vh - 290px)'"
+                    :page="page1" :tableLoading="tableLoading1"></lims-table>
+      </div>
     </div>
     <!-- 鎵归噺鎶ユ -->
     <el-dialog :visible.sync="declareDialogSVisible" title="纭鎶ユ" width="30%">
@@ -115,8 +100,9 @@
     <!-- 纭鎶ユ -->
     <el-dialog :close-on-click-modal="false" :title="declareType === 'add' ? '鏂板鎶ユ淇℃伅' : '鍘熸潗鏂欐姤妫�'"
                :visible.sync="declareDialogVisible"
-               width="62%" @close="resetForm">
-      <el-form ref="declareObj" :inline="true" :model="declareObj" :rules="declareObjRules" label-width="130px" style="display: flex;flex-wrap: wrap;">
+               width="800px" @close="resetForm">
+      <el-form ref="declareObj" :inline="true" :model="declareObj" :rules="declareObjRules"
+               label-width="130px" label-position="right">
         <el-form-item class="declareObj-form-item" label="璁㈠崟鍙�:" prop="orderNo">
           <el-input v-model="declareObj.orderNo" :disabled="declareType !== 'add'" class="addObj-info" clearable placeholder="" size="small"></el-input>
         </el-form-item>
@@ -145,7 +131,7 @@
           <el-input v-model="declareObj.receiverDate" class="addObj-info" clearable disabled size="small"></el-input>
         </el-form-item>
         <el-form-item class="declareObj-form-item" label="鍗曚綅:" prop="buyUnitMeas">
-          <el-input v-model="declareObj.buyUnitMeas" :disabled="declareType !== 'add'" class="addObj-info" size="small"></el-input>
+          <el-input v-model="declareObj.buyUnitMeas" :disabled="declareType !== 'add'" clearable class="addObj-info" size="small"></el-input>
         </el-form-item>
         <el-form-item class="declareObj-form-item" label="鐗╂枡绫诲瀷锛�" prop="isExpire">
           <el-select v-model="declareObj.isExpire" prop="isExpire"
@@ -191,22 +177,155 @@
 </template>
 
 <script>
-import ValueTable from "@/components/Table/value-table.vue";
 import DataLookVisible from "@/components/rawMaterialInspection/dataLookVisible.vue";
-import {getUser} from "@/api/system/user";
-import {getWarehouseSubmit} from '@/api/business/materialInspection'
+import {
+  addIfsInventoryQuantity,
+  advancedGodown,
+  concessionRelease, delIfsInventory,
+  getIfsByAll,
+  getIfsByFinish,
+  getIfsOrder,
+  getWarehouseSubmit, inspectionReport, inspectionReportOne, rawAllExport,
+  revokeInspectionReport
+} from '@/api/business/materialInspection'
+import limsTable from "@/components/Table/lims-table.vue";
 
 export default {
   // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
-  components: {DataLookVisible, ValueTable},
+  components: {limsTable, DataLookVisible},
   data() {
     // 杩欓噷瀛樻斁鏁版嵁
     return {
-      entity: {
-        date: null
+      tableData: [],
+      tableLoading: false,
+      column: [
+        {label: '妫�楠岀姸鎬�', prop: 'inspectStatus'},
+        {label: '璁㈠崟鍙�', prop: 'orderNo'},
+        {label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived',width: '140px',},
+        {label: '鎵瑰彿', prop: 'updateBatchNo'},
+        {label: '闆朵欢鍙�', prop: 'partNo'},
+        {label: '闆朵欢鎻忚堪', prop: 'partDesc'},
+        {label: '渚涘簲鍟嗗悕绉�', prop: 'supplierName'},
+        {label: '鐗╂枡绫诲瀷', prop: 'isExpire'},
+        {label: '鍗曚綅', prop: 'buyUnitMeas'},
+        {label: '鎺ユ敹鏃堕棿', prop: 'receiverDate'},
+        {label: '鎶ユ鏃堕棿', prop: 'declareDate'},
+        {
+          dataType: 'action',
+          fixed: 'right',
+          label: '鎿嶄綔',
+          width: '140px',
+          operation: [
+            {
+              name: '鎶ユ',
+              type: 'text',
+              clickFun: (row) => {
+                this.declare(row);
+              },
+              showHide: (row) => {
+                return this.tabIndex === 0
+              },
+            },
+            {
+              name: '鍒犻櫎',
+              type: 'text',
+              clickFun: (row) => {
+                this.deleteMaterial(row);
+              },
+              showHide: (row) => {
+                return this.tabIndex === 0
+              },
+            },
+            {
+              name: '鎾ら攢鎶ユ',
+              type: 'text',
+              clickFun: (row) => {
+                this.cancelDeclare(row);
+              },
+              showHide: (row) => {
+                return this.tabIndex === 1
+              },
+            },
+          ]
+        }
+      ],
+      page: {
+        total:0,
+        size:10,
+        current:1
+      },
+      tableData1: [],
+      tableLoading1: false,
+      column1: [
+        {label: '濮旀墭缂栧彿', prop: 'entrustCode'},
+        {label: '妫�楠岀姸鎬�', prop: 'inspectStatus'},
+        {label: '璁㈠崟鍙�', prop: 'orderNo'},
+        {label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived'},
+        {label: '涓嬪彂鏃堕棿', prop: 'sendTime'},
+        {label: '鎵瑰彿', prop: 'updateBatchNo'},
+        {label: '闆朵欢鍙�', prop: 'partNo'},
+        {label: '闆朵欢鎻忚堪', prop: 'partDesc'},
+        {label: '渚涘簲鍟嗗悕绉�', prop: 'supplierName'},
+        {label: '涓嶅悎鏍兼弿杩�', prop: 'unqualifiedDesc'},
+        {label: '鍏嶆', prop: 'isExemption'},
+        {label: '鏍峰搧鍚嶇О', prop: 'sampleName'},
+        {label: '鏍峰搧鍨嬪彿', prop: 'sampleModel'},
+        {label: '妫�楠屼汉', prop: 'userName'},
+        {label: '鐗╂枡绫诲瀷', prop: 'isExpire'},
+        {label: '鍗曚綅', prop: 'buyUnitMeas'},
+        {label: '鎺ユ敹鏃堕棿', prop: 'receiverDate'},
+        {label: '鎶ユ鏃堕棿', prop: 'declareDate'},
+        {
+          dataType: 'action',
+          fixed: 'right',
+          label: '鎿嶄綔',
+          width: '140px',
+          operation: [
+            {
+              name: '鏁版嵁鏌ョ湅',
+              type: 'text',
+              clickFun: (row) => {
+                this.handleDataLook(row);
+              },
+              showHide: (row) => {
+                return this.tabIndex === 3 || this.tabIndex === 4;
+              },
+            },
+            {
+              name: '鏀捐',
+              type: 'text',
+              clickFun: (row) => {
+                this.goPass(row);
+              },
+              disabled: (row, index) => {
+                return row.inspectStatus !== 2
+              },
+              showHide: (row) => {
+                return this.tabIndex === 4
+              },
+            },
+            {
+              name: '鎻愬墠鍏ュ簱',
+              type: 'text',
+              clickFun: (row) => {
+                this.advancedGodown(row);
+              },
+              disabled: (row, index) => {
+                return row.inspectStatus !== 0 && row.inspectStatus !== 3
+              },
+              showHide: (row) => {
+                return this.tabIndex === 4
+              },
+            },
+          ]
+        }
+      ],
+      page1: {
+        total:0,
+        size:10,
+        current:1
       },
       more:false,
-      isShowIFS: false,
       declareObj: {
         id: null,
         orderNo: '', // 璁㈠崟鍙�
@@ -222,237 +341,18 @@
         isExpire: '', // 鍗曚綅
       },
       componentData: { // 琛ㄦ牸鏁版嵁
-        entity: {
-          updateBatchNo: null,
-          partNo: null,
-          partDesc: null,
-          supplierName: null,
-          isInspect: 0,
-        },
-        isIndex: true,
-        showSelect: true,
-        select: true,
-        selectMethod: 'selectMethod',
-        do: [
-          {
-            font: '鎶ユ',
-            type: 'text',
-            method: 'declare'
-          },
-          {
-            font: '鍒犻櫎',
-            type: 'text',
-            method: 'deleteMaterial'
-          }
-        ],
-        tagField: {
-          isExpire: {
-            select: [{
-              value: 1,
-              label: '杩囨湡鐗╂枡',
-              type: 'warning'
-            }]
-          }
-        },
-        selectField: {},
-        requiredAdd: [],
-        requiredUp: []
+        updateBatchNo: null,
+        partNo: null,
+        partDesc: null,
+        supplierName: null,
+        date: '',
+        entrustCode: '',
+        inspectStatus: '',
       },
       declareDialogVisible1: false,
       upLoad: false,
-      componentData1: {
-        entity: {
-          updateBatchNo: null,
-          partDesc: null,
-          state: 0,
-          isInspect: 1,
-          partNo: null,
-          supplierName: null,
-        },
-        isIndex: true,
-        showSelect: false,
-        select: false,
-        selectMethod:'selectMethod',
-        do: [
-          {
-            font: '鎾ら攢鎶ユ',
-            type: 'text',
-            method: 'cancelDeclare',
-          },
-        ],
-        tagField: {
-          isExpire: {
-            select: [{
-              value: 1,
-              label: '杩囨湡鐗╂枡',
-              type: 'warning'
-            }]
-          },
-        },
-        selectField: {},
-        requiredAdd: [],
-        requiredUp: []
-      },
-      componentData2: {
-        entity: {
-          orderBy: {
-            field: 'sendTime',
-            order: 'desc'
-          },
-          updateBatchNo: null,
-          partNo: null,
-          partDesc: null,
-          supplierName: null,
-          beginDeclareDate: null,
-          endDeclareDate: null,
-        },
-        isIndex: true,
-        showSelect: true,
-        select: true,
-        selectMethod:'selectMethod',
-        do: [
-          {
-            id: 'dataLook',
-            font: '鏁版嵁鏌ョ湅',
-            type: 'text',
-            method: 'handleDataLook',
-          }
-        ],
-        tagField: {
-          inspectStatus: {
-            select: [{
-              value: 0,
-              label: '妫�楠屼腑',
-              type: 'warning'
-            },{
-              value: 1,
-              label: '鍚堟牸',
-              type: 'success'
-            },{
-              value: 2,
-              label: '涓嶅悎鏍�',
-              type: 'danger'
-            },{
-              value: 3,
-              label: '鏈笅鍗�',
-              type: 'info'
-            },{
-              value: 3,
-              label: '璁╂鏀捐',
-              type: ''
-            }]
-          },
-          isExemption: {
-            select: [{
-              value: 1,
-              label: '鍏嶆',
-              type: 'success'
-            }]
-          },
-          isExpire: {
-            select: [{
-              value: 1,
-              label: '杩囨湡鐗╂枡',
-              type: 'warning'
-            }]
-          },
-        },
-        selectField: {},
-        requiredAdd: [],
-        requiredUp: [],
-        needSort: ['sendTime', 'receiverDate', 'declareDate']
-      },
-      componentData4: {
-        entity: {
-          orderBy: {
-            field: 'id',
-            order: 'desc'
-          },
-          updateBatchNo: null,
-          partNo: null,
-          partDesc: null,
-          supplierName: null,
-          inspectStatus: null,
-          beginDeclareDate: null,
-          endDeclareDate: null,
-        },
-        isIndex: true,
-        showSelect: true,
-        select: true,
-        selectMethod:'selectMethod',
-        do: [
-          {
-            id: 'dataLook',
-            font: '鏁版嵁鏌ョ湅',
-            type: 'text',
-            method: 'handleDataLook',
-          },
-          {
-            id: '',
-            font: '鏀捐',
-            type: 'text',
-            method: 'goPass',
-            disabFun: (row, index) => {
-              return row.inspectStatus != 2
-            }
-          },
-          {
-            id: '',
-            font: '鎻愬墠鍏ュ簱',
-            type: 'text',
-            method: 'advancedGodown',
-            disabFun: (row, index) => {
-              return row.inspectStatus != 0 && row.inspectStatus != 3
-            }
-          }
-        ],
-        tagField: {
-          inspectStatus: {
-            select: [{
-              value: 0,
-              label: '妫�楠屼腑',
-              type: 'warning'
-            },{
-              value: 1,
-              label: '鍚堟牸',
-              type: 'success'
-            },{
-              value: 2,
-              label: '涓嶅悎鏍�',
-              type: 'danger'
-            },{
-              value: 3,
-              label: '鏈笅鍗�',
-              type: 'info'
-            },{
-              value: 4,
-              label: '璁╂鏀捐',
-              type: ''
-            }]
-          },
-          isExemption: {
-            select: [{
-              value: 1,
-              label: '鍏嶆',
-              type: 'success'
-            }]
-          },
-          isExpire: {
-            select: [{
-              value: 1,
-              label: '杩囨湡鐗╂枡',
-              type: 'warning'
-            }]
-          },
-        },
-        selectField: {},
-        requiredAdd: [],
-        requiredUp: [],
-        needSort: ['sendTime', 'receiverDate', 'declareDate']
-      },
       upIndex: 0,
       multipleSelection: [],
-      entityCopy: {},
       currentId: null,
       btnLoading: false, // 鑾峰彇IFS璁㈠崟鎸夐挳loading
       insOrderRow: {},
@@ -506,9 +406,6 @@
       tabIndex: 0,
       deleteVisible: false, // 鍒犻櫎鎶ユ寮规
       deleteLoading: false, // 鍒犻櫎鎶ユ鎸夐挳
-      entityCopy1: {},
-      entityCopy2: {},
-      entityCopy4: {},
       dataDialogVisible: false, // 鏁版嵁鏌ョ湅寮规
       dataLookInfo: {}, // 鏁版嵁鏌ョ湅寮规鏁版嵁
       declareType: '', // 鎿嶄綔鎶ユ鐨勭被鍨�
@@ -523,14 +420,81 @@
     }
   },
   mounted() {
-    this.entityCopy = this.HaveJson(this.componentData.entity)
-    this.entityCopy1 = this.HaveJson(this.componentData1.entity)
-    this.entityCopy2 = this.HaveJson(this.componentData2.entity)
-    this.entityCopy4 = this.HaveJson(this.componentData4.entity)
-    this.getPower()
+    this.refreshTable()
   },
   // 鏂规硶闆嗗悎
   methods: {
+    // 鍒囨崲tab琛ㄦ牸
+    handleTab(m) {
+      this.tabIndex = m.value;
+      this.refreshTable()
+    },
+    // 鏌ヨ鍥炶皟
+    refreshTable(e) {
+      if (this.tabIndex === 0 || this.tabIndex === 1) {
+        // 寰呮姤妫�銆佸緟涓嬪崟鏌ヨ
+        this.getWarehouseSubmitApi()
+      } else if (this.tabIndex === 3) {
+        // 宸插畬鎴愰儴鏌ヨ
+        this.getIfsByFinishList()
+      } else {
+        // 鍏ㄩ儴鏌ヨ
+        this.getIfsByAllList()
+      }
+    },
+    // 寰呮姤妫�銆佸緟涓嬪崟鏌ヨ
+    getWarehouseSubmitApi () {
+      this.tableLoading = true
+      const params = {...this.componentData, isInspect: this.tabIndex, state: this.tabIndex === 0 ? null : 0}
+      getWarehouseSubmit(params).then(res => {
+        this.tableLoading = false
+        if (res.code === 200) {
+          this.tableData = res.data.records
+          this.page.total = res.data.total
+        }
+      }).catch(err => {
+        this.tableLoading = false
+      })
+    },
+    // 宸插畬鎴愰儴鏌ヨ
+    getIfsByFinishList () {
+      this.tableLoading1 = true
+      getIfsByFinish({...this.componentData}).then(res => {
+        this.tableLoading1 = false
+        if (res.code === 200) {
+          this.tableData1 = res.data.records
+          this.page1.total = res.data.total
+        }
+      }).catch(err => {
+        this.tableLoading1 = false
+      })
+    },
+    // 鍏ㄩ儴鏌ヨ
+    getIfsByAllList () {
+      this.tableLoading1 = true
+      getIfsByAll({...this.componentData}).then(res => {
+        this.tableLoading1 = false
+        if (res.code === 200) {
+          this.tableData1 = res.data.records
+          this.page1.total = res.data.total
+        }
+      }).catch(err => {
+        this.tableLoading1 = false
+      })
+    },
+    // 閲� 缃�
+    refresh() {
+      this.resetForm('componentData')
+      this.refreshTable()
+    },
+    pagination (page) {
+      this.page.size = page.limit
+      this.refreshTable()
+    },
+    pagination1 (page) {
+      this.page1.size = page.limit
+      this.refreshTable()
+    },
     // 鎵撳紑鎾ら攢鎶ユ寮规
     cancelDeclare (row) {
       this.declareDialogVisible1 = true
@@ -538,9 +502,7 @@
     },
     // 鎻愪氦鎾ら攢鎶ユ鐢宠
     submitDeclare1 () {
-      this.$axios.post(this.$api.rawMaterialOrder.revokeInspectionReport, {
-        id: this.insOrderRow.id
-      }).then(res => {
+      revokeInspectionReport({id: this.insOrderRow.id}).then(res => {
         if (res.code === 200) {
           this.declareDialogVisible1 = false
           this.refreshTable('page')
@@ -549,95 +511,6 @@
       }).catch(err => {
         console.log(err)
       })
-    },
-    // 鍒囨崲tab琛ㄦ牸
-    handleTab(m, i) {
-      this.tabIndex = m.value;
-      this.componentData.entity.isInspect = this.tabIndex
-      if (this.tabIndex === 0) {
-        this.componentData.do = [
-          {
-            font: '鎶ユ',
-            type: 'text',
-            method: 'declare'
-          },
-          {
-            font: '鍒犻櫎',
-            type: 'text',
-            method: 'deleteMaterial'
-          }
-        ]
-      } else if (this.tabIndex === 1) {
-        this.componentData.do = []
-      }
-      this.refreshTable()
-    },
-    // 鑾峰彇鏉冮檺
-    getPower() {
-      let power = JSON.parse(sessionStorage.getItem('power'))
-      let getIFS = false
-      for (var i = 0; i < power.length; i++) {
-        if (power[i].menuMethod == 'getIfsOrder') { // 鑾峰彇IFS鐨勬潈闄�
-          getIFS = true
-        }
-      }
-      this.isShowIFS = getIFS
-    },
-    // 鏌ヨ鍥炶皟
-    refreshTable(e) {
-      if (this.tabIndex === 0) {
-        this.componentData.entity.isInspect = this.tabIndex
-        this.$refs.ValueTable.selectList(e)
-      } else if (this.tabIndex === 1) {
-        this.componentData1.entity.updateBatchNo = this.componentData.entity.updateBatchNo
-        this.componentData1.entity.partNo = this.componentData.entity.partNo
-        this.componentData1.entity.partDesc = this.componentData.entity.partDesc
-        this.componentData1.entity.supplierName = this.componentData.entity.supplierName
-        this.$refs['ValueTable1'].selectList(e)
-      } else if (this.tabIndex === 3) {
-        this.componentData2.entity.updateBatchNo = this.componentData.entity.updateBatchNo
-        this.componentData2.entity.partNo = this.componentData.entity.partNo
-        this.componentData2.entity.partDesc = this.componentData.entity.partDesc
-        this.componentData2.entity.supplierName = this.componentData.entity.supplierName
-        this.componentData2.entity.inspectStatus = this.componentData4.entity.inspectStatus
-        if (this.entity.date !== null) {
-          this.componentData2.entity.beginDeclareDate = this.entity.date[0] + ' 00:00:00'
-          this.componentData2.entity.endDeclareDate = this.entity.date[1] + ' 23:59:59'
-        } else {
-          this.componentData2.entity.beginDeclareDate = ''
-          this.componentData2.entity.endDeclareDate = ''
-        }
-        this.$refs['ValueTable2'].selectList(e)
-      }else {
-        this.componentData4.entity.updateBatchNo = this.componentData.entity.updateBatchNo
-        this.componentData4.entity.partNo = this.componentData.entity.partNo
-        this.componentData4.entity.partDesc = this.componentData.entity.partDesc
-        this.componentData4.entity.supplierName = this.componentData.entity.supplierName
-        if (this.entity.date !== null) {
-          this.componentData4.entity.beginDeclareDate = this.entity.date[0] + ' 00:00:00'
-          this.componentData4.entity.endDeclareDate = this.entity.date[1] + ' 23:59:59'
-        } else {
-          this.componentData4.entity.beginDeclareDate = ''
-          this.componentData4.entity.endDeclareDate = ''
-        }
-        this.$refs['ValueTable4'].selectList(e)
-      }
-    },
-    // 閲� 缃�
-    refresh() {
-      this.entity.date = null
-      this.componentData.entity = this.HaveJson(this.entityCopy)
-      if (this.tabIndex === 0) {
-        this.componentData.entity = this.HaveJson(this.entityCopy)
-      } else if (this.tabIndex === 1) {
-        this.componentData1.entity = this.HaveJson(this.entityCopy1)
-      } else if (this.tabIndex === 3) {
-        this.componentData2.entity = this.HaveJson(this.entityCopy2)
-        this.componentData4.entity = this.HaveJson(this.entityCopy4)
-      } else {
-        this.componentData4.entity = this.HaveJson(this.entityCopy4)
-      }
-      this.refreshTable()
     },
     // 鏁版嵁鏌ョ湅
     handleDataLook(row) {
@@ -651,7 +524,7 @@
         cancelButtonText: '鍙栨秷',
         type: 'warning'
       }).then(() => {
-        this.$axios.post(this.$api.materialInspection.concessionRelease+'?ifsInventoryId='+row.id).then(res => {
+        concessionRelease({ifsInventoryId: row.id}).then(res => {
           if (res.code === 200) {
             this.$message({
               type: 'success',
@@ -662,8 +535,8 @@
         })
       }).catch(() => {
         this.$message({
-          type: 'error',
-          message: '鏀捐澶辫触'
+          type: 'info',
+          message: '鍙栨秷鏀捐'
         });
       });
     },
@@ -674,7 +547,7 @@
         cancelButtonText: '鍙栨秷',
         type: 'warning'
       }).then(() => {
-        this.$axios.post(this.$api.materialInspection.advancedGodown+'?ifsInventoryId='+row.id).then(res => {
+        advancedGodown({ifsInventoryId: row.id}).then(res => {
           if (res.code === 200) {
             this.$message({
               type: 'success',
@@ -700,6 +573,7 @@
       this.declareDialogVisible = true
       this.declareType = 'add'
     },
+    // 閫夋嫨鎶ユ鏁版嵁
     declareS () {
       if (this.multipleSelection.length > 0) {
         this.declareDialogSVisible = true
@@ -707,19 +581,14 @@
         this.$message.error('璇烽�夋嫨闇�瑕佹姤妫�鐨勬暟鎹�')
       }
     },
+    // 鎻愪氦鎵归噺鎶ユ
     submitDeclareS () {
       let ids = []
       this.multipleSelection.forEach(item => {
         ids.push(item.id)
       })
       this.declareDialogSVisible = true
-      this.$axios.post(this.$api.rawMaterialOrder.inspectionReport, {
-        ids: ids
-      }, {
-        headers: {
-          'Content-Type': 'application/json'
-        }
-      }).then(res => {
+      inspectionReport({ids: ids}).then(res => {
         if (res.code === 200) {
           this.declareDialogSVisible = false
           this.$message.success('鎶ユ鎴愬姛')
@@ -742,13 +611,7 @@
       if (this.declareType === 'add') {
         this.$refs['declareObj'].validate((valid) => {
           if (valid) {
-            this.$axios.post(this.$api.rawMaterialOrder.addIfsInventoryQuantity,
-              this.declareObj
-              , {
-                headers: {
-                  'Content-Type': 'application/json'
-                }
-              }).then(res => {
+            addIfsInventoryQuantity(this.declareObj).then(res => {
               if (res.code === 200) {
                 this.declareDialogVisible = false
                 this.$message.success('鎶ユ鎴愬姛')
@@ -765,13 +628,9 @@
       } else {
         this.$refs['declareObj'].validate((valid) => {
           if (valid) {
-            this.$axios.post(this.$api.rawMaterialOrder.inspectionReportOne, {
+            inspectionReportOne({
               id: this.declareObj.id,
               updateBatchNo: this.declareObj.updateBatchNo
-            }, {
-              headers: {
-                'Content-Type': 'application/json'
-              }
             }).then(res => {
               if (res.code === 200) {
                 this.declareDialogVisible = false
@@ -800,7 +659,7 @@
     // 纭鍒犻櫎
     submitDelete () {
       this.deleteLoading = true
-      this.$axios.post(this.$api.rawMaterialOrder.delIfsInventory + '?id=' + this.deleteInfo.id).then(res => {
+      delIfsInventory({id: this.deleteInfo.id}).then(res => {
         if (res.code === 200) {
           this.deleteVisible = false
           this.$message.success('鍒犻櫎鎴愬姛')
@@ -819,43 +678,23 @@
     // 鑾峰彇IFS鎸夐挳鍥炶皟
     openIFS() {
       this.btnLoading = true
-      this.$axios.post(this.$api.materialInspection.getIfsOrder).then(res => {
-        if (res.code === 200) {
-          this.refresh()
-        }
+      getIfsOrder().then(res => {
+        this.refresh()
         this.btnLoading = false
       }).catch(err => {
         this.btnLoading = false
         console.log(err)
       })
     },
-    changeRowClass({row, rowIndex}) {
-      if (row.isFirst == 1) {
-        return 'highlight-danger-row-border'
-      }
-      return ''
-    },
-    getStyle() {
-      return 'height: calc(100% - ' + (this.more ? '94' : '44') + 'px)'
-    },
-    getWarehouseSubmitApi () {
-      const row = {}
-      getWarehouseSubmit(row).then(response => {
-
-      })
-    },
     // 鍏ㄩ儴瀵煎嚭
     handleDown(){
-      let entity = {...this.componentData4.entity}
+      let entity = {...this.componentData}
       delete entity.orderBy
       this.outLoading = true
-      this.$axios.post(this.$api.rawMaterialOrder.rawAllExport,{
+      rawAllExport({
         entity:entity
       },{
-        headers: {
-          'Content-Type': 'application/json'
-        }
-        ,responseType: "blob"}).then(res => {
+        responseType: "blob"}).then(res => {
         this.outLoading = false
         this.$message.success('瀵煎嚭鎴愬姛')
         const blob = new Blob([res],{ type: 'application/octet-stream' });
@@ -886,15 +725,11 @@
 }
 </script>
 
-<style scoped lang="scss">
-.app-container {
-  padding-top: 0;
+<style scoped>
+.table-tab {
+  display: flex;
+  justify-content: space-between;
 }
-.title {
-  height: 60px;
-  line-height: 60px;
-}
-
 .tab {
   list-style-type: none;
   display: flex;

--
Gitblit v1.9.3