Selaa lähdekoodia

出入库详情

yijing 1 vuosi sitten
vanhempi
commit
3c33004db5

+ 3 - 2
src/views/bpm/outgoingManagement/details.vue

@@ -385,7 +385,7 @@
             </el-table-column>
           </el-table>
         </div>
-        <div class="mt20">
+        <!-- <div class="mt20">
           <header-title :title="`物料明细`" size="16px"> </header-title>
           <el-table
             ref="multipleTable"
@@ -451,7 +451,7 @@
               </template>
             </el-table-column>
           </el-table>
-        </div>
+        </div> -->
       </div>
     </el-card>
   </div>
@@ -572,6 +572,7 @@
       // 获取动态表头
       getFieldModel() {
         storageApi.fieldModel({ fieldModel: 't_main_category' }).then((res) => {
+          console.log(res,'res111111111111111111111111111111111111111111111111');
           let newRes = res.map((m) => {
             return {
               prop: 'extField.' + m.prop,

+ 521 - 657
src/views/bpm/stockManagement/details.vue

@@ -113,137 +113,49 @@
         </div>
         <div class="content-detail mt20">
           <header-title title="产品信息" size="16px"></header-title>
-          <el-table
-            ref="productListTable"
-            :data="productList"
-            tooltip-effect="dark"
-            :max-height="300"
-            :header-cell-style="rowClass"
-            border
-          >
+          <el-table ref="productListTable" :data="productList" tooltip-effect="dark" :max-height="300"
+            :header-cell-style="rowClass" border>
             <el-table-column label="序号" type="index" width="50">
             </el-table-column>
-            <el-table-column
-              v-if="isIds"
-              minWidth="150"
-              label="入库单号"
-              prop="bizNo"
-              align="center"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="仓库"
-              prop="warehouseName"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column v-if="isIds" minWidth="150" label="入库单号" prop="bizNo" align="center"
+              :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="仓库" prop="warehouseName" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column
-              label="编码"
-              prop="categoryCode"
-              align="center"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="名称"
-              align="center"
-              prop="categoryName"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              v-if="clientEnvironmentId == 4"
-              label="级别"
-              prop="level"
-              align="center"
-            >
+            <el-table-column label="编码" prop="categoryCode" align="center"
+              :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="名称" align="center" prop="categoryName"
+              :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column v-if="clientEnvironmentId == 4" label="级别" prop="level" align="center">
             </el-table-column>
-            <el-table-column
-              label="型号"
-              align="center"
-              prop="categoryModel"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="规格"
-              align="center"
-              prop="specification"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="牌号"
-              align="center"
-              prop="brandNum"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              v-for="(item, index) in newColumns"
-              :label="item.label"
-              :align="item.align"
-              :prop="item.prop"
-              :show-overflow-tooltip="item.showOverflowTooltip"
-            ></el-table-column>
-            <el-table-column
-              label="批次号"
-              prop="batchNo"
-              align="center"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="型号" align="center" prop="categoryModel"
+              :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="规格" align="center" prop="specification"
+              :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="牌号" align="center" prop="brandNum" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column v-for="(item, index) in newColumns" :label="item.label" :align="item.align"
+              :prop="item.prop" :show-overflow-tooltip="item.showOverflowTooltip"></el-table-column>
+            <el-table-column label="批次号" prop="batchNo" align="center" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column
-              label="包装数量"
-              v-if="clientEnvironmentId == 3"
-              prop="packingQuantity"
-              align="center"
-            >
+            <el-table-column label="包装数量" v-if="clientEnvironmentId == 3" prop="packingQuantity" align="center">
               <template slot-scope="{ row, $index }">
                 {{ row.packingQuantity }} {{ row.packingUnit }}
               </template>
             </el-table-column>
-            <el-table-column
-              v-else
-              label="包装数量"
-              prop="packingQuantity"
-              width="80"
-            ></el-table-column>
-            <el-table-column
-              v-if="clientEnvironmentId == 3"
-              label="最小包装单元"
-              align="center"
-              width="120"
-              prop="minPackingQuantity"
-            >
+            <el-table-column v-else label="包装数量" prop="packingQuantity" width="80"></el-table-column>
+            <el-table-column v-if="clientEnvironmentId == 3" label="最小包装单元" align="center" width="120"
+              prop="minPackingQuantity">
               <template slot-scope="{ row, $index }">
                 {{ row.minPackingQuantity }} {{ row.measureUnit }} /{{
                   row.packingUnit
                 }}
               </template>
             </el-table-column>
-            <el-table-column
-              v-else
-              label="单位"
-              prop="packingUnit"
-            ></el-table-column>
-            <el-table-column
-              label="计量数量"
-              prop="measureQuantity"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="计量单位"
-              prop="measureUnit"
-            ></el-table-column>
-            <el-table-column
-              label="重量"
-              prop="weight"
-              align="center"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column v-else label="单位" prop="packingUnit"></el-table-column>
+            <el-table-column label="计量数量" prop="measureQuantity" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="计量单位" prop="measureUnit"></el-table-column>
+            <el-table-column label="重量" prop="weight" align="center" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column
-              label="重量单位"
-              prop="weightUnit"
-              align="center"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="重量单位" prop="weightUnit" align="center" :show-overflow-tooltip="true">
             </el-table-column>
             <el-table-column label="单价" prop="unitPrice" align="center">
               <template slot-scope="{ row }">
@@ -253,28 +165,14 @@
               </template>
             </el-table-column>
 
-            <el-table-column
-              label="金额"
-              align="center"
-              prop="totalMoney"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="金额" align="center" prop="totalMoney" :show-overflow-tooltip="true">
               <template slot-scope="{ row, $index }">
                 {{ row.totalMoney ? row.totalMoney : 0 }}
               </template>
             </el-table-column>
-            <el-table-column
-              v-if="clientEnvironmentId == 4"
-              label="采购原因"
-              align="center"
-              prop="purpose"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="供应商"
-              prop="supplierName"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column v-if="clientEnvironmentId == 4" label="采购原因" align="center" prop="purpose"
+              :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="供应商" prop="supplierName" :show-overflow-tooltip="true">
             </el-table-column>
             <!-- <el-table-column
               label="仓库"
@@ -286,125 +184,51 @@
         </div>
         <div class="mt20">
           <header-title :title="`包装明细`" size="16px"></header-title>
-          <el-table
-            ref="showPackingListTable"
-            :data="showPackingList"
-            tooltip-effect="dark"
-            :max-height="300"
-            :row-class-name="tableRowClassName"
-            :header-cell-style="rowClass"
-            border
-            v-el-table-infinite-scroll="pickingHandleScroll"
-          >
+          <el-table ref="showPackingListTable" :data="showPackingList" tooltip-effect="dark" :max-height="300"
+            :row-class-name="tableRowClassName" :header-cell-style="rowClass" border
+            v-el-table-infinite-scroll="pickingHandleScroll">
             <el-table-column label="序号" type="index" width="50">
             </el-table-column>
-            <el-table-column
-              label="编码"
-              prop="categoryCode"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="名称"
-              prop="categoryName"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="批次号"
-              prop="batchNo"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="发货条码"
-              prop="barcodes"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="包装编码"
-              prop="packageNo"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="包装数量"
-              prop="packingQuantity"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="计量数量"
-              prop="measureQuantity"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="单位"
-              prop="packingUnit"
-              :show-overflow-tooltip="true"
-            ></el-table-column>
-            <el-table-column
-              label="物料代号"
-              prop="materielDesignation"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="编码" prop="categoryCode" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="名称" prop="categoryName" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="批次号" prop="batchNo" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="发货条码" prop="barcodes" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="包装编码" prop="packageNo" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="包装数量" prop="packingQuantity" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="包装单位" prop="packingUnit" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="计量数量" prop="measureQuantity" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="计量单位" prop="measureUnit" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="物料代号" prop="materielDesignation" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column
-              label="客户代号"
-              prop="clientCode"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="客户代号" prop="clientCode" :show-overflow-tooltip="true">
               <template slot-scope="{ row, $index }">
                 <span v-if="bizType != 2">{{ row?.clientCode }}</span>
                 <span v-if="bizType == 2">{{ row?.customerMark }}</span>
               </template>
             </el-table-column>
-            <el-table-column
-              label="刻码"
-              prop="engrave"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="刻码" prop="engrave" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column
-              label="重量"
-              prop="weight"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="重量" prop="weight" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column
-              label="重量单位"
-              prop="weightUnit"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="重量单位" prop="weightUnit" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column
-              label="质检结果"
-              prop="result"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="质检结果" prop="result" :show-overflow-tooltip="true">
               <template slot-scope="{ row }">
                 <span>{{ qualityResults[row.result] }}</span>
               </template>
             </el-table-column>
-            <el-table-column
-              label="质检状态"
-              prop="status"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="质检状态" prop="status" :show-overflow-tooltip="true">
               <template slot-scope="{ row }">
                 <span>{{ qualityStatus[row.status] }}</span>
               </template>
             </el-table-column>
-            <el-table-column
-              label="生产日期"
-              prop="productionDate"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="生产日期" prop="productionDate" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column
-              label="采购日期"
-              prop="purchaseDate"
-              :show-overflow-tooltip="true"
-            >
+            <el-table-column label="采购日期" prop="purchaseDate" :show-overflow-tooltip="true">
             </el-table-column>
           </el-table>
         </div>
-        <div class="mt20" v-if="bizType != '2'">
+        <!-- <div class="mt20" v-if="bizType != '2'">
           <header-title :title="`物料明细`" size="16px"> </header-title>
           <el-table
             ref="multipleTable"
@@ -484,486 +308,526 @@
               </template>
             </el-table-column>
           </el-table>
-        </div>
+        </div>-->
       </div>
     </el-card>
   </div>
 </template>
 
 <script>
-  import elTableInfiniteScroll from 'el-table-infinite-scroll';
-  import fileUpload from '@/BIZComponents/addDoc/index.vue';
-  import { getFile } from '@/api/system/file/index.js';
-  import storageApi from '@/api/warehouseManagement';
-  import { allCategoryLevel } from '@/api/classifyManage';
-  import {
-    useDictLabel,
-    sceneState,
-    qualityStatus,
-    qualityResults
-  } from '@/utils/dict/index';
-  import { mapGetters, mapActions } from 'vuex';
-  export default {
-    directives: {
-      'el-table-infinite-scroll': elTableInfiniteScroll
+import elTableInfiniteScroll from 'el-table-infinite-scroll';
+import fileUpload from '@/BIZComponents/addDoc/index.vue';
+import { getFile } from '@/api/system/file/index.js';
+import storageApi from '@/api/warehouseManagement';
+import { allCategoryLevel } from '@/api/classifyManage';
+import {
+  useDictLabel,
+  sceneState,
+  qualityStatus,
+  qualityResults
+} from '@/utils/dict/index';
+import { mapGetters, mapActions } from 'vuex';
+export default {
+  directives: {
+    'el-table-infinite-scroll': elTableInfiniteScroll
+  },
+  components: { fileUpload },
+  props: {
+    bizType: {
+      type: String,
+      default: ''
     },
-    components: { fileUpload },
-    props: {
-      bizType: {
-        type: String,
-        default: ''
-      },
-      businessId: {
-        type: String,
-        default: ''
-      },
-      isUpload: {
-        type: Boolean,
-        default: false
-      },
-      isInterior: {
-        type: Boolean,
-        default: false
-      },
-      isIds: {
-        //多个入库单ID
-        type: Boolean,
-        default: false
+    businessId: {
+      type: String,
+      default: ''
+    },
+    isUpload: {
+      type: Boolean,
+      default: false
+    },
+    isInterior: {
+      type: Boolean,
+      default: false
+    },
+    isIds: {
+      //多个入库单ID
+      type: Boolean,
+      default: false
+    }
+  },
+  data() {
+    return {
+      newColumns: [], // 动态表头
+      qualityFile: [], // 回执附件
+      qualityStatus, // 质检状态 0未检 1已检
+      qualityResults, // 质检结果 0无 1合格 2不合格
+      productList: [], // 产品列表
+      showPackingList: [], // 展示的包装列表
+      packingList: [], // 包装列表
+      showMaterialList: [], // 展示物料列表
+      materialList: [], // 物料列表
+      extInfo: {}, // 扩展信息
+      pageSize: 20,
+      pickingPageNum: 1,
+      materielPageNum: 1,
+      codeList: [],
+      infoData: {},
+      stepsTitle: '已完成',
+      stepsStatus: 'success',
+      active: 0
+    };
+  },
+  watch: {
+    'infoData.verifyStatus': {
+      immediate: true,
+      handler(val) {
+        if (val == 0) {
+          this.active = 1;
+          this.stepsTitle = '未审核';
+          this.stepsStatus = 'wait';
+        } else if (val == 1) {
+          this.active = 2;
+          this.stepsTitle = '审核中';
+          this.stepsStatus = 'process';
+        } else if (val == 2) {
+          this.active = 2;
+          this.stepsTitle = '审核通过';
+          this.stepsStatus = 'success';
+        } else if (val == 3) {
+          this.active = 2;
+          this.stepsTitle = '驳回';
+          this.stepsStatus = 'error';
+        }
       }
     },
-    data() {
-      return {
-        newColumns: [], // 动态表头
-        qualityFile: [], // 回执附件
-        qualityStatus, // 质检状态 0未检 1已检
-        qualityResults, // 质检结果 0无 1合格 2不合格
-        productList: [], // 产品列表
-        showPackingList: [], // 展示的包装列表
-        packingList: [], // 包装列表
-        showMaterialList: [], // 展示物料列表
-        materialList: [], // 物料列表
-        extInfo: {}, // 扩展信息
-        pageSize: 20,
-        pickingPageNum: 1,
-        materielPageNum: 1,
-        codeList: [],
-        infoData: {},
-        stepsTitle: '已完成',
-        stepsStatus: 'success',
-        active: 0
-      };
+    businessId(val) {
+      if (val) {
+        this._getInfo(val);
+      }
+    }
+  },
+  computed: {
+    ...mapGetters(['getDictValue']),
+    clientEnvironmentId() {
+      return this.$store.state.user.info.clientEnvironmentId;
+    }
+  },
+  mounted() {
+    this.getFieldModel();
+    this.requestDict('类型用途');
+    this.getAllCategoryType();
+    this._getInfo(this.businessId);
+  },
+  methods: {
+    // 获取动态表头
+    getFieldModel() {
+      storageApi.fieldModel({ fieldModel: 't_main_category' }).then((res) => {
+        let newRes = res.map((m) => {
+          return {
+            prop: 'extField.' + m.prop,
+            label: m.label,
+            align: 'center',
+            showOverflowTooltip: true
+          };
+        });
+        this.newColumns = [...newRes];
+      });
+    },
+    //获取回执附件
+    getQualityFile() {
+      return { qualityFile: this.qualityFile, id: this.infoData.id };
     },
-    watch: {
-      'infoData.verifyStatus': {
-        immediate: true,
-        handler(val) {
-          if (val == 0) {
-            this.active = 1;
-            this.stepsTitle = '未审核';
-            this.stepsStatus = 'wait';
-          } else if (val == 1) {
-            this.active = 2;
-            this.stepsTitle = '审核中';
-            this.stepsStatus = 'process';
-          } else if (val == 2) {
-            this.active = 2;
-            this.stepsTitle = '审核通过';
-            this.stepsStatus = 'success';
-          } else if (val == 3) {
-            this.active = 2;
-            this.stepsTitle = '驳回';
-            this.stepsStatus = 'error';
-          }
+    pickingHandleScroll() {
+      console.log('---------pickingHandleScroll------------');
+      if (this.showPackingList.length < this.packingList.length) {
+        if (this.packingList.length > this.pageSize) {
+          this.pickingPageNum += 1;
         }
-      },
-      businessId(val) {
-        if (val) {
-          this._getInfo(val);
+        this.pickingFetchData();
+      }
+    },
+    pickingFetchData() {
+      const start = (this.pickingPageNum - 1) * this.pageSize;
+      const end = start + this.pageSize;
+      this.showPackingList = this.showPackingList.concat(
+        this.packingList.slice(start, end)
+      );
+    },
+    materielHandleScroll() {
+      console.log('---------materielHandleScroll------------');
+      if (this.showMaterialList.length < this.materialList.length) {
+        if (this.materialList.length > this.pageSize) {
+          this.materielPageNum += 1;
         }
+        this.materielFetchData();
       }
     },
-    computed: {
-      ...mapGetters(['getDictValue']),
-      clientEnvironmentId() {
-        return this.$store.state.user.info.clientEnvironmentId;
+    materielFetchData() {
+      const start = (this.materielPageNum - 1) * this.pageSize;
+      const end = start + this.pageSize;
+      this.showMaterialList = this.showMaterialList.concat(
+        this.materialList.slice(start, end)
+      );
+      console.log(this.showMaterialList);
+    },
+    ...mapActions('dict', ['requestDict']),
+    getSceneState: useDictLabel(sceneState),
+    handleAssetType(r) {
+      const code = this.codeList.find((item) => item.dictCode == r);
+      return code?.dictValue;
+    },
+    tableRowClassName({ row, rowIndex }) {
+      console.log(row);
+      if (row.result == 2) {
+        return 'warning-row';
+      } else {
+        return '';
       }
     },
-    mounted() {
-      this.getFieldModel();
-      this.requestDict('类型用途');
-      this.getAllCategoryType();
-      this._getInfo(this.businessId);
+    rowClass({ row, column, rowIndex, columnIndex }) {
+      if (rowIndex === 1) {
+        return {
+          display: 'none',
+          background: '#EEEEEE'
+        };
+      }
+      return { background: '#0000' };
     },
-    methods: {
-      // 获取动态表头
-      getFieldModel() {
-        storageApi.fieldModel({ fieldModel: 't_main_category' }).then((res) => {
-          let newRes = res.map((m) => {
-            return {
-              prop: 'extField.' + m.prop,
-              label: m.label,
-              align: 'center',
-              showOverflowTooltip: true
-            };
-          });
-          this.newColumns = [...newRes];
-        });
-      },
-      //获取回执附件
-      getQualityFile() {
-        return { qualityFile: this.qualityFile, id: this.infoData.id };
-      },
-      pickingHandleScroll() {
-        console.log('---------pickingHandleScroll------------');
-        if (this.showPackingList.length < this.packingList.length) {
-          if (this.packingList.length > this.pageSize) {
-            this.pickingPageNum += 1;
-          }
-          this.pickingFetchData();
-        }
-      },
-      pickingFetchData() {
-        const start = (this.pickingPageNum - 1) * this.pageSize;
-        const end = start + this.pageSize;
-        this.showPackingList = this.showPackingList.concat(
-          this.packingList.slice(start, end)
+    async getAllCategoryType() {
+      const { data } = await allCategoryLevel();
+      this.codeList = data.map((item) => {
+        return { dictCode: item.id, dictValue: item.name };
+      });
+    },
+    async _getInfo(id) {
+      if (!id) return;
+      let res = null;
+      let resAll = null;
+      if (this.isInterior) {
+        res = await storageApi.getInboundDetailsById(id);
+      } else if (this.isIds) {
+        resAll = await storageApi.getInboundDetailsByIds(id);
+      } else {
+        res = await storageApi.getInfoBySourceBizNo(id);
+      }
+      console.log(
+        'idsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss',
+        this.isIds
+      );
+      if (this.isIds) {
+        this.infoData = resAll[0];
+        this.extInfo = resAll[0].extInfo;
+        res = resAll[0];
+        res['bizNo'] = resAll.map((item) => item.bizNo);
+        res.outInDetailList = resAll.map((item) => item.outInDetailList[0]);
+        console.log('resAll---------------', resAll);
+      } else {
+        this.infoData = res;
+        this.extInfo = res.extInfo;
+        console.log(
+          res,
+          'resresresresresresresresresresresresresresresresresresresresres2222'
         );
-      },
-      materielHandleScroll() {
-        console.log('---------materielHandleScroll------------');
-        if (this.showMaterialList.length < this.materialList.length) {
-          if (this.materialList.length > this.pageSize) {
-            this.materielPageNum += 1;
+      }
+      console.log('===', res);
+
+      this.productList = res.outInDetailList.map(
+        (productItem, productIndex) => {
+          if (this.isIds) {
+            productItem['bizNo'] = res.bizNo[productIndex];
           }
-          this.materielFetchData();
-        }
-      },
-      materielFetchData() {
-        const start = (this.materielPageNum - 1) * this.pageSize;
-        const end = start + this.pageSize;
-        this.showMaterialList = this.showMaterialList.concat(
-          this.materialList.slice(start, end)
-        );
-        console.log(this.showMaterialList);
-      },
-      ...mapActions('dict', ['requestDict']),
-      getSceneState: useDictLabel(sceneState),
-      handleAssetType(r) {
-        const code = this.codeList.find((item) => item.dictCode == r);
-        return code?.dictValue;
-      },
-      tableRowClassName({ row, rowIndex }) {
-        console.log(row);
-        if (row.result == 2) {
-          return 'warning-row';
-        } else {
-          return '';
-        }
-      },
-      rowClass({ row, column, rowIndex, columnIndex }) {
-        if (rowIndex === 1) {
           return {
-            display: 'none',
-            background: '#EEEEEE'
+            ...productItem,
+            outInDetailRecordRequestList:
+              productItem.outInDetailRecordRequestList.map((packingItem) => {
+                return {
+                  ...packingItem,
+                  categoryName: productItem.categoryName,
+                  categoryCode: productItem.categoryCode,
+                  materialDetailList: packingItem.materialDetailList.map(
+                    (materialItem) => {
+                      return {
+                        ...materialItem,
+                        categoryName: productItem.categoryName,
+                        categoryCode: productItem.categoryCode
+                      };
+                    }
+                  )
+                };
+              })
           };
         }
-        return { background: '#0000' };
-      },
-      async getAllCategoryType() {
-        const { data } = await allCategoryLevel();
-        this.codeList = data.map((item) => {
-          return { dictCode: item.id, dictValue: item.name };
-        });
-      },
-      async _getInfo(id) {
-        if (!id) return;
-        let res = null;
-        let resAll = null;
-        if (this.isInterior) {
-          res = await storageApi.getInboundDetailsById(id);
-        } else if (this.isIds) {
-          resAll = await storageApi.getInboundDetailsByIds(id);
-        } else {
-          res = await storageApi.getInfoBySourceBizNo(id);
-        }
-        console.log(
-          'idsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss',
-          this.isIds
-        );
-        if (this.isIds) {
-          this.infoData = resAll[0];
-          this.extInfo = resAll[0].extInfo;
-          res = resAll[0];
-          res['bizNo'] = resAll.map((item) => item.bizNo);
-          res.outInDetailList = resAll.map((item) => item.outInDetailList[0]);
-          console.log('resAll---------------', resAll);
-        } else {
-          this.infoData = res;
-          this.extInfo = res.extInfo;
-          console.log(
-            res,
-            'resresresresresresresresresresresresresresresresresresresresres2222'
-          );
-        }
-        console.log('===', res);
-
-        this.productList = res.outInDetailList.map(
-          (productItem, productIndex) => {
-            if (this.isIds) {
-              productItem['bizNo'] = res.bizNo[productIndex];
-            }
-            return {
-              ...productItem,
-              outInDetailRecordRequestList:
-                productItem.outInDetailRecordRequestList.map((packingItem) => {
-                  return {
-                    ...packingItem,
-                    categoryName: productItem.categoryName,
-                    categoryCode: productItem.categoryCode,
-                    materialDetailList: packingItem.materialDetailList.map(
-                      (materialItem) => {
-                        return {
-                          ...materialItem,
-                          categoryName: productItem.categoryName,
-                          categoryCode: productItem.categoryCode
-                        };
-                      }
-                    )
-                  };
-                })
-            };
-          }
-        );
-        // 获取包装维度数据
-        const arr = [];
-        for (const key in this.productList) {
-          for (const k in this.productList[key].outInDetailRecordRequestList) {
-            arr.push({
-              ...this.productList[key].outInDetailRecordRequestList[k]
-            });
-          }
-        }
-        this.packingList = arr;
-        // 获取物料维度数据
-        let iArr = [];
-        arr.forEach((item) => {
-          item.materialDetailList.forEach((ele) => {
-            iArr.push({ ...ele });
+      );
+      // 获取包装维度数据
+      const arr = [];
+      for (const key in this.productList) {
+        for (const k in this.productList[key].outInDetailRecordRequestList) {
+          arr.push({
+            ...this.productList[key].outInDetailRecordRequestList[k]
           });
-        });
-        this.materialList = iArr;
-        console.log(this.packingList);
-        console.log(this.materialList);
-        this.pickingFetchData();
-        this.materielFetchData();
-      },
-      download(row) {
-        if (row.storePath) {
-          getFile({ objectName: row.storePath }, row.name);
         }
       }
+      this.packingList = arr;
+      // 获取物料维度数据
+      let iArr = [];
+      arr.forEach((item) => {
+        item.materialDetailList.forEach((ele) => {
+          iArr.push({ ...ele });
+        });
+      });
+      this.materialList = iArr;
+      console.log(this.packingList);
+      console.log(this.materialList);
+      this.pickingFetchData();
+      this.materielFetchData();
+    },
+    download(row) {
+      if (row.storePath) {
+        getFile({ objectName: row.storePath }, row.name);
+      }
     }
-  };
+  }
+};
 </script>
 
 <style lang="scss" scoped>
-  ::v-deep .warning-row {
-    color: red;
-  }
-  ::v-deep .page-title {
-    border-bottom: none;
-  }
-  ::v-deep .page-title-div {
-    width: 100%;
-  }
-  .stepsStatus {
-    width: 40%;
-    margin: 0 auto;
+::v-deep .warning-row {
+  color: red;
+}
+
+::v-deep .page-title {
+  border-bottom: none;
+}
+
+::v-deep .page-title-div {
+  width: 100%;
+}
+
+.stepsStatus {
+  width: 40%;
+  margin: 0 auto;
+}
+
+.el-form-item {
+  margin-bottom: 10px;
+}
+
+.p20 {
+  padding: 20px;
+}
+
+.flex {
+  display: flex;
+}
+
+.title {
+  justify-content: space-between;
+  border-bottom: 1px solid #ccc;
+  padding-bottom: 5px;
+
+  span {
+    font-size: 16px;
   }
-  .el-form-item {
-    margin-bottom: 10px;
+
+  .col {
+    padding-left: 40px;
+    font-size: 14px;
+    color: #aaaaaa;
   }
-  .p20 {
-    padding: 20px;
+}
+
+.degree {
+  margin-right: 10px;
+  padding: 0px 15px;
+  color: #fff;
+  font-size: 13px;
+  line-height: 23px;
+  border-radius: 23px;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+
+  span {
+    width: 5px;
+    height: 5px;
+    border-radius: 100%;
+    margin-right: 6px;
+    background-color: #fff;
   }
-  .flex {
-    display: flex;
+}
+
+.red {
+  background-color: rgb(163, 0, 20);
+}
+
+.blue {
+  background-color: #1989fa;
+}
+
+.createdInfo {
+  justify-content: space-around;
+  margin-top: 10px;
+  font-size: 14px;
+
+  .col {
+    color: #6e6e6e;
+    padding-right: 10px;
   }
-  .title {
-    justify-content: space-between;
-    border-bottom: 1px solid #ccc;
-    padding-bottom: 5px;
-    span {
-      font-size: 16px;
+}
+
+.mt40 {
+  margin-top: 40px;
+}
+
+.custSteps {
+  margin-top: 20px;
+  margin-left: 70px;
+
+  .box {
+    width: 158px;
+    border: 1px solid #ccc;
+    padding: 10px;
+    flex-direction: row;
+    flex-wrap: wrap;
+    // justify-content: space-between;
+    font-size: 12px;
+    color: #9e9e9e;
+
+    .x {
+      width: 20px;
+      height: 15px;
+      margin-right: 5px;
     }
-    .col {
-      padding-left: 40px;
-      font-size: 14px;
-      color: #aaaaaa;
+
+    .q {
+      background-color: #d0e4d5;
     }
-  }
-  .degree {
-    margin-right: 10px;
-    padding: 0px 15px;
-    color: #fff;
-    font-size: 13px;
-    line-height: 23px;
-    border-radius: 23px;
-    display: flex;
-    align-items: center;
-    justify-content: space-between;
-    span {
-      width: 5px;
-      height: 5px;
-      border-radius: 100%;
-      margin-right: 6px;
-      background-color: #fff;
+
+    .b {
+      background-color: #1989fa;
     }
-  }
-  .red {
-    background-color: rgb(163, 0, 20);
-  }
-  .blue {
-    background-color: #1989fa;
-  }
-  .createdInfo {
-    justify-content: space-around;
-    margin-top: 10px;
-    font-size: 14px;
-    .col {
-      color: #6e6e6e;
-      padding-right: 10px;
+
+    .g {
+      background-color: #157a2c;
     }
-  }
-  .mt40 {
-    margin-top: 40px;
-  }
 
-  .custSteps {
-    margin-top: 20px;
-    margin-left: 70px;
-    .box {
-      width: 158px;
-      border: 1px solid #ccc;
-      padding: 10px;
-      flex-direction: row;
-      flex-wrap: wrap;
-      // justify-content: space-between;
-      font-size: 12px;
-      color: #9e9e9e;
-      .x {
-        width: 20px;
-        height: 15px;
-        margin-right: 5px;
-      }
-      .q {
-        background-color: #d0e4d5;
-      }
-      .b {
-        background-color: #1989fa;
-      }
-      .g {
-        background-color: #157a2c;
-      }
-      .r {
-        background-color: #a30014;
-      }
-      .a {
-        align-items: center;
-        margin-bottom: 10px;
-      }
-      .mr10 {
-        margin-right: 10px;
-      }
-      .mb0 {
-        margin-bottom: 0;
-      }
+    .r {
+      background-color: #a30014;
     }
-    .stepsInfo {
-      // flex: 1;
-      width: 483px;
+
+    .a {
+      align-items: center;
+      margin-bottom: 10px;
     }
-  }
-  .mt20 {
-    margin-top: 20px;
-  }
-  .content-detail {
-    overflow: hidden;
-  }
-  .executor {
-    font-size: 14px;
-    .col {
-      color: #6e6e6e;
-      padding-right: 10px;
+
+    .mr10 {
+      margin-right: 10px;
+    }
+
+    .mb0 {
+      margin-bottom: 0;
     }
   }
-  .result {
-    justify-content: space-around;
+
+  .stepsInfo {
+    // flex: 1;
+    width: 483px;
   }
-  .mr20 {
-    margin-right: 20px;
+}
+
+.mt20 {
+  margin-top: 20px;
+}
+
+.content-detail {
+  overflow: hidden;
+}
+
+.executor {
+  font-size: 14px;
+
+  .col {
+    color: #6e6e6e;
+    padding-right: 10px;
   }
-  .details {
-    font-size: 14px;
-    margin-bottom: 10px;
+}
+
+.result {
+  justify-content: space-around;
+}
+
+.mr20 {
+  margin-right: 20px;
+}
+
+.details {
+  font-size: 14px;
+  margin-bottom: 10px;
+}
+
+.customSteps {
+  margin-top: 40px;
+  font-size: 14px;
+  margin-left: 80px;
+
+  .time {
+    font-size: 12px;
+    color: #6e6e6e;
+    margin-right: 20px;
+    position: relative;
+
+    &::after {
+      content: '';
+      width: 1px;
+      height: 100%;
+      background-color: #157a2c;
+      position: absolute;
+      right: -26px;
+    }
   }
 
-  .customSteps {
-    margin-top: 40px;
-    font-size: 14px;
-    margin-left: 80px;
+  .flex:last-child {
     .time {
-      font-size: 12px;
-      color: #6e6e6e;
-      margin-right: 20px;
-      position: relative;
       &::after {
-        content: '';
-        width: 1px;
-        height: 100%;
-        background-color: #157a2c;
-        position: absolute;
-        right: -26px;
+        display: none;
       }
     }
-    .flex:last-child {
-      .time {
-        &::after {
-          display: none;
-        }
-      }
-    }
-    .round {
-      margin-right: 20px;
-      width: 10px;
-      height: 10px;
+  }
+
+  .round {
+    margin-right: 20px;
+    width: 10px;
+    height: 10px;
+    border-radius: 100%;
+    background-color: #157a2c;
+    position: relative;
+
+    span {
+      position: absolute;
+      top: 50%;
+      left: 50%;
+      width: 4px;
+      height: 4px;
+      background-color: #fff;
       border-radius: 100%;
-      background-color: #157a2c;
-      position: relative;
-      span {
-        position: absolute;
-        top: 50%;
-        left: 50%;
-        width: 4px;
-        height: 4px;
-        background-color: #fff;
-        border-radius: 100%;
-        transform: translate(-2px, -2px);
-      }
-    }
-    .text {
-      .info {
-        margin-top: 10px;
-        width: 955px;
-        background-color: #f0f3f3;
-        overflow: hidden;
-        padding: 10px;
-        margin-bottom: 10px;
-      }
+      transform: translate(-2px, -2px);
     }
   }
-  .switch_left li {
-    border-right: 1px solid rgba(222, 222, 222, 1);
-    border-left: 1px solid rgba(222, 222, 222, 1);
+
+  .text {
+    .info {
+      margin-top: 10px;
+      width: 955px;
+      background-color: #f0f3f3;
+      overflow: hidden;
+      padding: 10px;
+      margin-bottom: 10px;
+    }
   }
+}
+
+.switch_left li {
+  border-right: 1px solid rgba(222, 222, 222, 1);
+  border-left: 1px solid rgba(222, 222, 222, 1);
+}
 </style>

+ 1 - 1
vue.config.js

@@ -35,7 +35,7 @@ module.exports = {
         // target: 'http://124.71.68.31:50001',
 
         // target: 'http://192.168.1.116:18086',
-        target: 'http://192.168.1.125:18086',
+        target: 'http://192.168.1.251:18086',
         changeOrigin: true, // 只有这个值为true的情况下 才表示开启跨域
         pathRewrite: {
           '^/api': ''