| | |
| | | import { getRequestsFromStorage, removeRequestQuestionFromStorage, setRequestsToStorage } from '~/shared/storageRequests'; |
| | | import _ from 'lodash'; |
| | | |
| | | import accountSettingService from '~/shared/services/account-setting.service'; |
| | | import appointmentService from '~/shared/services/appointment.service'; |
| | | import authService from '~/shared/services/auth.service'; |
| | | import queryConsultantService from '~/shared/services/query-consultant.service'; |
| | |
| | | import { Gender } from '~/shared/models/enum/Gender'; |
| | | import { RegisterInfo } from '~/shared/models/registerInfo'; |
| | | import { AppointmentParams, AppointmentRequests } from '~/shared/models/appointment.model'; |
| | | import { UserReviewPlatformParams } from '~/shared/models/reviews.model'; |
| | | import { UserSetting } from '~/shared/models/account.model'; |
| | | import { SatisfactionType } from '~/shared/models/enum/satisfaction-type'; |
| | | import { UserReviewParams } from '~/shared/models/reviews.model'; |
| | | |
| | | const roleStorage = namespace('localStorage'); |
| | | @Component |
| | |
| | | |
| | | @roleStorage.State |
| | | recommendConsultantItem!:string; |
| | | |
| | | @roleStorage.Mutation |
| | | storageUserInfo!: (params: RegisterInfo) => void; |
| | | |
| | | score = 0; |
| | | |
| | |
| | | ]; |
| | | |
| | | myRequest: AppointmentRequests = { |
| | | phone : this.userInfo?.phone ? this.userInfo.phone : '', |
| | | email : this.userInfo?.email ? this.userInfo.email : '', |
| | | name : '', |
| | | phone : '', |
| | | email : '', |
| | | contactType : _.isEqual(this.userInfo?.contactType,ContactType.SMS) ? ContactType.PHONE: ContactType.EMAIL, |
| | | gender : '', |
| | | age : '', |
| | |
| | | private setMyRequest(): void { |
| | | const storageMyRequest = getRequestsFromStorage(); |
| | | const storageMyRequirement = this.recommendConsultantItem ? JSON.parse(this.recommendConsultantItem).requirements:[]; |
| | | const contactTypePromise = accountSettingService.getUserAccountSetting(); |
| | | |
| | | if (storageMyRequest) { |
| | | this.myRequest = { |
| | |
| | | } |
| | | removeRequestQuestionFromStorage(); |
| | | } |
| | | |
| | | contactTypePromise.then((contactTypeDetail) => { |
| | | this.myRequest = { |
| | | ...this.myRequest, |
| | | ...contactTypeDetail |
| | | } |
| | | }) |
| | | |
| | | } |
| | | |
| | | //////////////////////////////////////////////////////////////////////////// |
| | |
| | | if (this.isEditBtn) { |
| | | this.editAppointmentDemand(); |
| | | } else { |
| | | queryConsultantService.addFavoriteConsultant([this.$route.params.agentNo]).then(res => this.sentAppointmentDemand()); |
| | | queryConsultantService.addFavoriteConsultant([{ agentNo: this.$route.params.agentNo, createdTime: new Date().toString()}]).then(res => this.sentAppointmentDemand()); |
| | | } |
| | | const editSettingInfo: UserSetting = { |
| | | name: this.myRequest.name, |
| | | phone: this.myRequest.phone, |
| | | email: this.myRequest.email, |
| | | } |
| | | |
| | | accountSettingService.updateAccountSetting(editSettingInfo).then((_) => { |
| | | this.storageUserInfo(this.userInfo); |
| | | }); |
| | | } |
| | | |
| | | private editAppointmentDemand() { |
| | |
| | | } |
| | | |
| | | reviewPlatform(): void { |
| | | const reviewPlatformParams: UserReviewPlatformParams = { |
| | | const reviewPlatformParams: UserReviewParams = { |
| | | appointmentId: this.appointmentId, |
| | | score: this.score |
| | | score: this.score, |
| | | type: SatisfactionType.SYSTEM |
| | | }; |
| | | reviewsService.reviewPlatform(reviewPlatformParams).then((_) => { |
| | | this.closeReservePopUp(); |