保誠-保戶業務員媒合平台
Tomas
2022-04-27 a44997274ecbf0fc1ec3bf93e80a682050add12e
PAMapp/components/AddAndReservedBtns.vue
@@ -4,15 +4,18 @@
            <span> {{ isAdded ? '已加入顧問清單' : '+ 顧問清單' }}</span>
        </el-button>
        <el-button
            :disabled="isDisableReserve"
            @click="navigateToReservationForm"
            type="primary"
        >進行預約</el-button>
        >{{ isDisableReserve ? '已聯絡' : '進行預約'}}</el-button>
    </el-row>
</template>
<script lang="ts">
import { Vue, Component, Prop, Emit, Action, State, namespace } from 'nuxt-property-decorator';
import { Consultant } from '~/shared/models/consultant.model';
const roleStorage = namespace('localStorage');
@Component
export default class AddAndReservedBtns extends Vue {
@@ -29,6 +32,9 @@
    @Prop()
    cusClass!: string;
    @roleStorage.Getter
    isUserLogin!: boolean;
    isVisiblePopUp = false;
    //////////////////////////////////////////////////////////////////////
@@ -41,6 +47,12 @@
    //////////////////////////////////////////////////////////////////////
    addConsultant(item: Consultant): void {
        if (!this.isUserLogin) {
          item = {
            ...item,
            updateTime: new Date().toISOString()
          };
        }
        this.addToMyConsultantList(item).then(addOk => {
            addOk && this.openPopUp();
        });
@@ -54,5 +66,12 @@
        return this.myConsultantList.find(item => item.agentNo === this.agentInfo.agentNo)
                ? true : false
    }
    get isDisableReserve(): boolean {
      return this.myConsultantList.some((agent) => {
        return agent.agentNo === this.agentInfo.agentNo
            && agent.contactStatus === 'contacted';
        });
    }
}
</script>