<template>
  <div class="zSelect">
    <div>
      <div class="checkbox">
        <van-checkbox-group v-model="zSelectValuec" @change="checkboxclick">
          <van-checkbox
            :disabled="disabled"
            :name="item.customOptionId + ''"
            v-for="(item, index) in zCheckboxcolumns"
            :key="index"
            shape="square"
            >{{ item.customOption }}
          </van-checkbox>
        </van-checkbox-group>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  name: 'zSelect',
  props: {
    zCheckboxcolumns: [],
    checkboxval: '',
    textc: '',
    rules: false,
    answerType: '',
    collectionType: '',
    disabled: false,
  },
  data() {
    return {
      zSelect: false,
      zSelectValuec: [],
    };
  },
  watch: {
    checkboxval: {
      handler(va) {
        if (this.checkboxval == '' || this.checkboxval == undefined) {
          this.zSelectValuec = [];
        } else {
          this.zSelectValuec = this.checkboxval.split(',');
        }
      },
      immediate: true,
    },
  },
  activated() {
    // this.checkboxvalFn();
  },
  methods: {
    checkboxvalFn() {
      if (this.checkboxval == '' || this.checkboxval == undefined) {
        this.zSelectValuec = [];
      } else {
        this.zSelectValuec = this.checkboxval.split(',');
      }
    },
    checkboxclick(value) {
      var typeval = [...this.zCheckboxcolumns];
      typeval.forEach((item) => {
        if (value.includes(item.customOptionId + '')) {
          item.value = 'Y';
        } else {
          item.value = 'N';
        }
      });
      // for (var k = 0; k < typeval.length; k++) {
      //   for (var kk = 0; kk < value.length; kk++) {
      //     if (typeval[k].customOptionId == value[kk]) {
      //       typeval[k].value = 'Y';
      //     }
      //   }
      // }
      let datalist = {
        id: this.textc,
        value: typeval,
      };
      this.zSelectValuec = value;
      this.$emit('zSelectVal', datalist);
      this.zSelect = false;
    },
  },
};
</script>

<style scoped>
.van-f-red {
  color: red;
  width: 4px;
  display: inline-block;
}

.zSelect .z-cell {
  padding: 10px 16px 0 16px;
  font-size: 16px;
}

/*.checkbox{padding: 10px 16px 0 16px;background-color: white;}*/
.checkbox .van-checkbox {
  padding-bottom: 10px;
}
</style>
<style lang="scss">
.zSelect {
  .checkbox .van-checkbox__icon .van-icon {
    border: 1px solid #333 !important;
  }

  .checkbox .van-checkbox__icon--checked .van-icon {
    border: 1px solid #1989fa !important;
    color: #1989fa;
    background-color: #fff;
  }
}
</style>
