| | |
| | | </el-row> |
| | | |
| | | <el-row |
| | | v-if="currentRole === role.ADMIN" |
| | | type="flex" |
| | | class="pam-paragraph"> |
| | | <UiField :span="12" icon="phone" label="手機號碼"> |
| | | {{ agentInfo.phoneNumber }} |
| | | </UiField> |
| | | </el-row> |
| | | |
| | | <el-row |
| | | type="flex" |
| | | class="pam-paragraph"> |
| | | <UiField :span="12" icon="agent" label="頭銜"> |
| | |
| | | type="flex" |
| | | class="pam-paragraph"> |
| | | <UiField icon="company" label="服務地區"> |
| | | {{ agentInfo.serveArea }} |
| | | {{ agentInfo.serveArea | toServeArea }} |
| | | </UiField> |
| | | </el-row> |
| | | |
| | |
| | | <div class="consultant-edit-btn"> |
| | | <UiField icon="flag" label="溝通風格"> |
| | | <div class="text--orange bold pr-10 " |
| | | v-for="(communicationStyle, index) in displayCommunicationStyleList" |
| | | v-for="(communicationStyle, index) in displayCommunicationStyleList" |
| | | :key="index"> |
| | | #{{ communicationStyle }}</div> |
| | | </UiField> |
| | |
| | | <el-row |
| | | type="flex" |
| | | class="pam-paragraph"> |
| | | <UiField icon="comment" label="個人理念"> |
| | | <UiField icon="comment" label="個人理念" class="agent-info-textarea"> |
| | | {{ agentInfo.concept }} |
| | | </UiField> |
| | | </el-row> |
| | |
| | | <el-row |
| | | type="flex" |
| | | class="pam-paragraph"> |
| | | <UiField icon="school" label="個人背景"> |
| | | <UiField icon="school" label="個人背景" class="agent-info-textarea"> |
| | | <span> |
| | | {{ agentInfo.experiences }} |
| | | </span> |
| | |
| | | <el-row |
| | | type="flex" |
| | | class="pam-paragraph"> |
| | | <UiField icon="trophy" label="得獎經歷"> |
| | | <UiField icon="trophy" label="得獎經歷" class="agent-info-textarea"> |
| | | {{ agentInfo.awards }} |
| | | </UiField> |
| | | </el-row> |
| | |
| | | |
| | | @Component |
| | | export default class AgentInfoComponent extends Vue { |
| | | |
| | | @roleStorage.Getter currentRole!:string|null; |
| | | role = Role; |
| | | |
| | | agentInfo!: AgentInfo; |
| | | role = Role; |
| | | isAlertAddSuccess = false; |
| | | isAlertFieldInfo = false; |
| | | fieldInfoTitle = ''; |
| | | fieldInfoDesc = ''; |
| | | hideReviews = hideReviews ; |
| | | |
| | | ////////////////////////////////////////////////////////////////////// |
| | | |
| | | get agentName(): string { |
| | | return `${this.agentInfo.name}(${this.agentInfo.role})`; |
| | | } |
| | | |
| | | get displayCommunicationStyleList(): string[] { |
| | | return this.agentInfo.communicationStyle.split('、').filter((item) => item); |
| | | } |
| | | |
| | | async asyncData(context: Context) { |
| | | const agentNo = context.route.params.agentNo; |
| | | return { |
| | | agentInfo: await myConsultantService.getConsultantDetail(agentNo).then((res) => res) |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | ////////////////////////////////////////////////////////////////////// |
| | | |
| | | alertAddSuccess(): void { |
| | | this.isAlertAddSuccess = true; |
| | | } |
| | |
| | | break; |
| | | } |
| | | } |
| | | |
| | | get agentName(): string { |
| | | return `${this.agentInfo.name}(${this.agentInfo.role})`; |
| | | } |
| | | |
| | | get displayCommunicationStyleList(): string[] { |
| | | return this.agentInfo.communicationStyle.split('、').filter((item) => item); |
| | | } |
| | | |
| | | } |
| | | |
| | | </script> |
| | |
| | | .pam-field{ |
| | | display: flex; |
| | | } |
| | | |
| | | .agent-info-textarea{ |
| | | word-break: break-all; |
| | | word-wrap: break-word; |
| | | } |
| | | </style> |