<template>
  <el-select
    filterable
    :value="value === 0 ? undefined : value"
    @change="change"
    v-bind="$attrs"
    clearable
  >
    <el-option
      v-for="supplier in getSuppliers"
      :key="supplier.id"
      :label="$l(supplier, 'company')"
      :value="supplier.id"
    ></el-option>
  </el-select>
</template>

<script>
/**
 * 供应商
 */
export default {
  name: "supplierSelect",
  props: {
    companyType: String,
    value: Number,
    allSupplier: Array,
    //0-國内供應商，1-國外供應商 lanbm 2024-05-11 添加注释
    areaType: {
      type: Number,
      default: 0,
    },
  },
  model: {
    prop: "value",
    event: "change",
  },
  data() {
    return {};
  },
  computed: {
    getSuppliers() {
      //alert(this.areaType);
      //alert(this.companyType);
      let allSupplier = this.allSupplier.filter(
        (item) => item.areaType == this.areaType
      );
      //0-國内供應商，1-國外供應商 lanbm 2024-05-11 添加注释
      //if(this.areaType == 1 || !this.companyType) return allSupplier;
      //lanbm 2024-05-11 把或改且，解决空运供应商获取是海运供应商问题
      //
      if (this.areaType == 1) return allSupplier;
      if (
        this.companyType == null ||
        this.companyType == "" ||
        this.companyType == undefined
      ) {
        return allSupplier;
      } else {
        return allSupplier.filter((item) =>
          item.companyTypes.includes(this.companyType)
        );
      }
    },
  },
  methods: {
    change(val) {
      this.$emit("change", val);
    },
  },
};
</script>
