| | |
| | | </UiField> |
| | | <UiField :span="12" icon="calender" label="到職日期" class="pam-editInfo-date-picker"> |
| | | <UiDatePicker |
| | | :isFutureDateDisabled = true |
| | | id="el-date-picker" |
| | | class="mt-10" |
| | | :defaultValue ="agentInfo.entryDate" |
| | |
| | | import { Context } from '@nuxt/types'; |
| | | import { namespace } from 'nuxt-property-decorator'; |
| | | import { Vue, Component, Prop } from 'vue-property-decorator'; |
| | | import * as _ from "lodash"; |
| | | |
| | | import myConsultantService from '~/shared/services/my-consultant.service'; |
| | | import accountSettingService from '~/shared/services/account-setting.service'; |
| | |
| | | } |
| | | |
| | | private setAgentInfo(agentInfo: AgentInfo): void { |
| | | // const [agentYear, _yearUnit , agentMonth, _monthUnit] = agentInfo.seniority.split(" "); |
| | | this.defaultAgentInfoSetting = { |
| | | agentNo : agentInfo.agentNo||'', |
| | | name : agentInfo.name || '', |
| | | expertise : agentInfo.expertise || [], |
| | | title : agentInfo.title || '', |
| | | role : agentInfo.role||'', |
| | | serveArea : agentInfo?.serveArea.split('、'), |
| | | gender : agentInfo.gender||'', |
| | | phoneNumber : agentInfo.phoneNumber||'', |
| | | companyAddress : agentInfo.companyAddress || '', |
| | | concept : agentInfo.concept || '', |
| | | experiences : agentInfo.experiences || '', |
| | | awards : agentInfo.awards || '', |
| | | communicationStyle: agentInfo.communicationStyle || '', |
| | | photoBase64 : '', |
| | | email : agentInfo.email || '', |
| | | entryDate : agentInfo.entryDate || '', |
| | | agentNo: agentInfo?.agentNo || '', |
| | | name: agentInfo?.name || '', |
| | | expertise: agentInfo?.expertise || [], |
| | | title: agentInfo?.title || '', |
| | | role: agentInfo?.role || '', |
| | | serveArea: agentInfo?.serveArea?.split('、') || [], |
| | | gender: agentInfo?.gender || '', |
| | | phoneNumber: agentInfo?.phoneNumber || '', |
| | | companyAddress: agentInfo?.companyAddress || '', |
| | | concept: agentInfo?.concept || '', |
| | | experiences: agentInfo?.experiences || '', |
| | | awards: agentInfo?.awards || '', |
| | | communicationStyle: agentInfo?.communicationStyle || '', |
| | | photoBase64: '', |
| | | email: agentInfo?.email || '', |
| | | entryDate: agentInfo?.entryDate || '', |
| | | }; |
| | | |
| | | this.editInfoValue = { |
| | | ...this.defaultAgentInfoSetting, |
| | | expertise : _.cloneDeep(this.defaultAgentInfoSetting.expertise), |
| | | // TODO: 確認後端此欄位後端應改為以" , "隔開 [Tomas, 2021/12/28] |
| | | communicationStyle : this.defaultAgentInfoSetting.communicationStyle.split('、'), |
| | | } |
| | | expertise: JSON.parse(JSON.stringify(this.defaultAgentInfoSetting.expertise)), |
| | | communicationStyle: this.defaultAgentInfoSetting.communicationStyle?.split('、') || [], |
| | | }; |
| | | } |
| | | |
| | | |
| | | |
| | | ////////////////////////////////////////////////////////////////////// |
| | |
| | | } |
| | | |
| | | get phoneValid(): boolean { |
| | | const rule = /^09[0-9]{8}$/; |
| | | return this.editInfoValue.phoneNumber |
| | | ? rule.test(this.editInfoValue.phoneNumber) && _.isEqual(this.editInfoValue.phoneNumber.length,10) |
| | | : true; |
| | | } |
| | | const rule = /^09[0-9]{8}$/; |
| | | return this.editInfoValue.phoneNumber |
| | | ? rule.test(this.editInfoValue.phoneNumber) && this.editInfoValue.phoneNumber.length === 10 |
| | | : true; |
| | | } |
| | | |
| | | get emailValid() { |
| | | const rule = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/; |