保誠-保戶業務員媒合平台
HelenHuang
2022-06-09 9bdb95c9e34cef640534e5e5a1e2225a80442000
PAMapp/components/Consultant/ConsultantList.vue
@@ -1,40 +1,61 @@
<template>
    <div>
        <template v-if="agents.length > 0 && noLogin">
        <template v-if="agentList.length > 0">
            <ConsultantCard
                v-for="(agent, index) in agents"
                v-for="(agent, index) in agentList"
                :key="index"
                :agentInfo="agent"
                @removeAgent="removeAgent"
            ></ConsultantCard>
        </template>
        <template v-else-if="agents.length === 0">
        <template v-if="isUserLogin && agentList.length === 0">
            <div class="emptyRowStyle">
                <div class="smTxt txt">您目前無已選顧問</div>
                <div class="smTxt txt">{{ noDataPlaceholder }}</div>
            </div>
        </template>
        <template v-else>
        <template v-if="!isUserLogin">
            <div class="emptyRowStyle">
                <div class="mdTxt login" @click="$router.push('/login')">登入</div>
                <div class="smTxt txt">查看更多已選顧問</div>
                <div class="mdTxt login fix-chrome-click--issue" @click="$router.push('/login')">登入 | 註冊</div>
                <div class="smTxt txt ">查看更多</div>
            </div>
        </template>
    </div>
</template>
<script lang="ts">
import { Vue, Component, Prop, Emit } from 'nuxt-property-decorator';
import { Agents } from '~/plugins/api/home';
import { Consultant } from '~/shared/models/consultant.model';
import { Vue, Component, Prop } from 'nuxt-property-decorator';
import authService from '~/shared/services/auth.service';
@Component
export default class ConsultantList extends Vue {
    @Prop() agents!: Agents[];
    @Prop()
    agents!: Consultant[];
    noLogin = true;
    @Prop()
    title! : string;
    @Emit('removeAgent') removeAgent(agentId: number) {
        return agentId;
    isUserLogin = false;
    //////////////////////////////////////////////////////////////////////
    get agentList(){
      return this.agents.map((agentDto)=>
          ({...agentDto,customerScore:0,})
      )
    }
    get noDataPlaceholder(): string {
      return this.title === 'contactedList'
                          ? '您目前無已聯絡顧問'
                          : '您目前無已選顧問';
    }
    //////////////////////////////////////////////////////////////////////
    mounted() {
      this.isUserLogin = authService.isUserLogin();
    }
}
</script>