保誠-保戶業務員媒合平台
Mila
2021-12-14 18098111cc905e88524e7d9ce788b742637e0824
PAMapp/components/QuickFilter/QuickFilterSelector.vue
@@ -7,7 +7,7 @@
            <span
                class="smTxt_bold text--primary"
                v-if="questionOption.name === 'communicationStyles'"
            >(可複選)</span>
            >(最多選擇兩種)</span>
            <span
                class="smTxt_bold text--primary"
                v-if="questionOption.name === 'avgScore'"
@@ -25,6 +25,7 @@
                    :label="i.value"
                    :name="i.value"
                    :class="i.className"
                    @change="selectedCommunicationStyles"
                ></el-checkbox>
            </el-checkbox-group>
        </div>
@@ -43,8 +44,9 @@
            </el-radio-group>
        </div>
        <div v-else>
        <div v-else>
            <el-rate
            v-if="!hideReviews"
                class="pam-quickFilter-rate"
                v-model="pickedItem.avgScore"
            ></el-rate>
@@ -64,18 +66,17 @@
<script lang="ts">
import { Vue, Component, Prop, Watch, Emit } from 'nuxt-property-decorator';
import { FastQueryParams } from '~/assets/ts/api/consultant';
import { QuestionOption } from '~/pages/quickFilter/index.vue';
import { hideReviews } from '~/assets/ts/const/hide-reviews';
import { FastQueryParams, QuestionOption, Selected } from '~/assets/ts/models/quickFilter.model';
@Component
export default class QuickFilterDrawer extends Vue {
    pickedItem: FastQueryParams = {
        communicationStyles: [],
        status: '',
        gender: '',
        avgScore: 0
    }
    hideReviews = hideReviews ;
    @Prop() questionOption!: QuestionOption;
    @Prop() isOpenQuestionPopUp!: boolean;
@@ -113,6 +114,12 @@
            || name === 'communicationStyles' && !this.pickedItem[name].length
    }
    selectedCommunicationStyles() {
        if (this.pickedItem.communicationStyles.length > 2) {
            this.pickedItem.communicationStyles.shift();
        }
    }
    @Emit('confirm')
    confirm() {
        const name = this.questionOption.name;
@@ -121,12 +128,6 @@
            value: this.pickedItem[name]
        }
    }
}
export interface Selected {
    option: string;
    value: any;
}
</script>