wangxinhui
2025-03-01 056326f91432db1b2ede9d821d0a463682ffd2aa
´úÂë¹ÜÀí/WMS/WIDESEA_WMSClient/src/extension/basic/materielCodeInfo.js
@@ -33,43 +33,72 @@
      let day = String(date.getDate()).padStart(2, "0");
      return year + "-" + month + "-" + day;
    },
    // æ–°å¢žæ–¹æ³•:加载物料编号数据
    async loadMaterielCodes(option) {
      try {
        option.loading = true;
        const { page, pageSize, keyword } = option.pagination;
        const res = await this.http.post("/api/PurchaseOrderDetail/GetPurchaseOrderDetailMaterielCode", {
          warehouseId: this.editFormFields.warehouseId,
          keyword,
          page,
          pageSize
        }, true);
        if (res.status) {
          option.pagination.total = res.total || res.data.length;
          const newData = res.data.map(item => ({ key: item, value: item }));
          option.data = page === 1 ? newData : [...option.data, ...newData];
        }
      } catch (error) {
        this.$error("数据加载失败");
      } finally {
        option.loading = false;
      }
    },
    //下面这些方法可以保留也可以删除
    onInit() {  //框架初始化配置前,
      let warehouseIdOption = this.getOption("warehouseId");
      let materielCodeOption = this.getOption("materielCode");
      let purchaseOrderNoOption = this.getOption("purchaseOrderNo");
      warehouseIdOption.onChange=(val,option)=>{
        this.editFormFields.materielCode = "";
        materielCodeOption.data = [];
        this.editFormFields.purchaseOrderNo = "";
        purchaseOrderNoOption.data = [];
        if (val == null || val == 0) {
          return this.$error("请选择仓库!")
      this.$nextTick(() => {
        let warehouseIdOption = this.getOption("warehouseId");
        let materielCodeOption = this.getOption("materielCode");
        let purchaseOrderNoOption = this.getOption("purchaseOrderNo");
        let materielQueryOption = this.getOption("materielQuery");
        warehouseIdOption.onChange = (val, option) => {
          this.editFormFields.materielCode = "";
          materielCodeOption.data = [];
          this.editFormFields.purchaseOrderNo = "";
          purchaseOrderNoOption.data = [];
          if (val == null || val == 0) {
            return this.$error("请选择仓库!")
          }
          this.http.post("/api/PurchaseOrderDetail/GetPurchaseOrderDetailMaterielCode?warehouseId=" + val, {}, true).then(
            source => {
              if (!source.status) return this.$error(source.message);
              this.$nextTick(() => {
                for (let i = 0; i < source.data.length; i++) {
                  materielCodeOption.data.push({ key: source.data[i], value: source.data[i] })
                }
              })
            })
        }
        this.http.post("/api/PurchaseOrderDetail/GetPurchaseOrderDetailMaterielCode?warehouseId=" + val, {}, true).then(
          source => {
            if (!source.status) return this.$error(source.message);
            for (let i = 0; i < source.data.length; i++) {
              materielCodeOption.data.push({ key: source.data[i], value: source.data[i] })
            }
            this.refresh();
          })
      }
      materielCodeOption.onChange = (val, option) => {
        this.editFormFields.purchaseOrderNo = "";
        purchaseOrderNoOption.data = [];
        if (val == null || val == 0) {
          return this.$error("请选择物料编号!")
        materielCodeOption.onChange = (val, option) => {
          this.editFormFields.purchaseOrderNo = "";
          purchaseOrderNoOption.data = [];
          if (val == null || val == 0) {
            return this.$error("请选择物料编号!")
          }
          this.http.post("/api/PurchaseOrderDetail/GetPurchaseOrderNos?materielCode=" + val, {}, true).then(
            source => {
              if (!source.status) return this.$error(source.message);
              this.$nextTick(() => {
                for (let i = 0; i < source.data.length; i++) {
                  purchaseOrderNoOption.data.push({ key: source.data[i], value: source.data[i] })
                }
              });
            })
        }
        this.http.post("/api/PurchaseOrderDetail/GetPurchaseOrderNos?materielCode=" + val, {}, true).then(
          source => {
            if (!source.status) return this.$error(source.message);
            for (let i = 0; i < source.data.length; i++) {
              purchaseOrderNoOption.data.push({ key: source.data[i], value: source.data[i] })
            }
            this.refresh();
          })
      }
      });
      this.columns.push({
        field: '操作',