heshaofeng
2026-04-09 ca3e4977395bc02c5d147dffdff7381333fdfbca
项目代码/WIDESEA_WMSClient/src/extension/inbound/extend/Pallet.vue
@@ -57,13 +57,14 @@
          >
            <el-select
              v-model="form.locationType"
              placeholder="璇峰厛閫夋嫨浠撳簱"
              placeholder="鑷姩鑾峰彇浠撳簱鍖哄煙"
              clearable
              filterable
              @change="handleLocationChange"
              style="width: 100%"
              :loading="locationLoading"
              size="medium"
              :disabled="true"
            >
              <el-option
                v-for="item in locationTypes"
@@ -752,6 +753,33 @@
        });
    },
    fetchLocationByWarehouse(warehouseCode) {
      if (!warehouseCode) {
        this.form.locationType = null;
        return;
      }
      this.locationLoading = true;
      http.post(`/api/InboundOrder/GetLocationType?code=${warehouseCode}`)
        .then(({ data }) => {
          if (data) {
            this.form.locationType = data.locationType || data;
            if (!this.locationTypes.find(item => item.locationType === this.form.locationType)) {
              this.locationTypes.push({
                locationType: this.form.locationType,
                locationTypeDesc: this.form.locationType
              });
            }
          }
        })
        .catch((err) => {
          console.error("鑾峰彇浠撳簱鍖哄煙澶辫触:", err);
          this.$message.error("鑾峰彇浠撳簱鍖哄煙澶辫触锛岃閲嶈瘯");
          this.form.locationType = null;
        })
        .finally(() => {
          this.locationLoading = false;
        });
    },
    // 鑾峰彇搴撳瓨缁熻
    fetchStockStatistics(orderNo) {
      if (!orderNo) {
@@ -923,6 +951,10 @@
      this.isManualInput = true;
      this.isScanning = false;
       if (this.trayBarcode) {
        this.trayBarcode = this.trayBarcode.replace(/\s+/g, "");
      }
      if (this.manualInputTimer) {
        clearTimeout(this.manualInputTimer);
      }
@@ -936,6 +968,10 @@
      this.isManualInput = true;
      this.isScanning = false;
      if (this.barcode) {
        this.barcode = this.barcode.replace(/\s+/g, "");
      }
      if (this.manualInputTimer) {
        clearTimeout(this.manualInputTimer);
      }
@@ -963,7 +999,9 @@
      this.validateForm().then((valid) => {
        if (!valid) return;
        const currentTrayBarcode = this.trayBarcode.trim();
        let currentTrayBarcode = (this.trayBarcode || "").replace(/\s+/g, "").trim();
        this.trayBarcode = currentTrayBarcode;
        if (!currentTrayBarcode) {
          this.error = "璇疯緭鍏ユ垨鎵弿鎵樼洏鏉$爜";
@@ -1239,6 +1277,7 @@
      this.barcode = "";
      this.materials = [];
      this.error = "";
      this.fetchLocationByWarehouse(this.form.warehouseType);
    },
    // 鍖哄煙鍒囨崲浜嬩欢