riku
2024-10-22 a7ac91bc5ae3c2ce0badca1ae9fc7ed57af95758
src/components/search-option/FYOptionLocation.vue
@@ -6,7 +6,7 @@
      :options="locations"
      :placeholder="placeholder"
      :props="optionProps"
      style="width: 280px"
      style="width: 320px"
    />
  </el-form-item>
</template>
@@ -21,7 +21,7 @@
      type: Boolean,
      default: true
    },
    // 查询的行政级别,取值1,2,3,4
    // 查询的行政级别,取值1,2,3,4, 5, 6
    level: {
      type: Number,
      default: 4
@@ -38,9 +38,12 @@
      type: Boolean,
      default: true
    },
    prop: String
    prop: {
      type: String,
      default: '_locations'
    }
  },
  emits: ['update:value'],
  emits: ['update:value', 'change'],
  data() {
    return {
      locations: enumLocation(this.allOption, this.level),
@@ -51,7 +54,7 @@
  },
  computed: {
    placeholder() {
      const list = '省/市/区/镇'.split('/');
      const list = '省/市/区/镇/集/物'.split('/');
      const p = [];
      for (let i = 0; i < this.level; i++) {
        p.push(list[i]);
@@ -65,6 +68,7 @@
  methods: {
    handleChange(value) {
      this.$emit('update:value', this.optionFormat(value));
      this.$emit('change', this.optionFormat(value));
    },
    /**
     * 地区选项结果格式化
@@ -78,7 +82,11 @@
        dCode: null,
        dName: null,
        tCode: null,
        tName: null
        tName: null,
        aCode: null,
        aName: null,
        mCode: null,
        mName: null,
      };
      if (val.length > 0) {
        res.pCode = val[0][0];
@@ -96,6 +104,14 @@
        res.tCode = val[3][0];
        res.tName = val[3][1];
      }
      if (val.length > 4) {
        res.aCode = val[4][0];
        res.aName = val[4][1];
      }
      if (val.length > 5) {
        res.mCode = val[5][0];
        res.mName = val[5][1];
      }
      return res;
    },
    optionFormatReverse(val) {
@@ -113,6 +129,12 @@
        if (val.tName) {
          res.push([val.tCode, val.tName]);
        }
        if (val.aName) {
          res.push([val.aCode, val.aName]);
        }
        if (val.mName) {
          res.push([val.mCode, val.mName]);
        }
      }
      return res;
    }