From 60dc6e178e4ab05ea8f62f7baa1dd72a5c20f93c Mon Sep 17 00:00:00 2001 From: Tomas <tomasysh@gmail.com> Date: 星期一, 13 十二月 2021 16:10:13 +0800 Subject: [PATCH] fixed#132096: 查看完聯絡清單(或登出後再登入),顧問清單的黃點並不會消失 --- PAMapp/assets/ts/api/consultant.ts | 131 +++++++++++++++++++++++++------------------ 1 files changed, 75 insertions(+), 56 deletions(-) diff --git a/PAMapp/assets/ts/api/consultant.ts b/PAMapp/assets/ts/api/consultant.ts index 1d8909c..2cf639b 100644 --- a/PAMapp/assets/ts/api/consultant.ts +++ b/PAMapp/assets/ts/api/consultant.ts @@ -1,53 +1,45 @@ -import { service } from '~/assets/ts/api/share'; import { AxiosResponse } from 'axios'; import { AppointmentDetail } from '../models/AppointmentDetail'; import { ConsultantLoginInfo } from '../models/ConsultantLoginInfo'; import _ from 'lodash'; import { UserSetting } from '../models/account.model'; +import { Consultant } from '~/assets/ts/models/consultant.model'; +import { http } from '../services/httpClient'; // 憿批恥��(TODO: OTP隤����� ���蝙�) export function login(user: any) { - return service.post('/authenticate', user) + return http.post('/authenticate', user) } // 憿批恥��-��TP export function sendOtp(loginInfo: LoginRequest) { - return service.post<OtpInfo>('/otp/sendOtp', loginInfo).then(res => res.data) + return http.post<OtpInfo>('/otp/sendOtp', loginInfo).then(res => res.data) } // 憿批恥��-撽�tp銝衣� export function loginVerify(loginVerify: LoginVerify) { - return service.post('/otp/verify', loginVerify) + return http.post('/otp/verify', loginVerify) } // 憿批恥閮餃�� export function register(registerInfo: RegisterInfo) { - return service.post('/otp/register', registerInfo) + return http.post('/otp/register', registerInfo) } // ��靽憿批�� export function recommend() { - return service.get<Consultants[]>('/consultant/recommend') - .then(res => res.data); -} - -// ���“��� -export function getFavoriteConsultant() { - const headers = { - Authorization: 'Bearer ' + localStorage.getItem('id_token') - } - return service.get<Consultants[]>('/consultant/favorite', {headers}) + return http.get<Consultant[]>('/consultant/recommend') .then(res => res.data); } // 敹恍�祟� export function fastQuery(data: FastQueryParams) { - return service.post('/consultant/fastQuery', data) + return http.post('/consultant/fastQuery', data) } // ������ export function strictQuery(data:StrictQueryParams):Promise<AxiosResponse<AgentOfStrictQuery[]>>{ - return service.post('/consultant/strictQuery', data) + return http.post('/consultant/strictQuery', data) } // ��憿批�� @@ -55,7 +47,7 @@ const headers = { Authorization: 'Bearer ' + localStorage.getItem('id_token') } - return service.post('/consultant/favorite', {agentNoList}, {headers}) + return http.post('/consultant/favorite', {agentNoList}, {headers}) } // ����岷��� @@ -63,12 +55,12 @@ const headers = { Authorization: 'Bearer ' + localStorage.getItem('id_token') } - return service.post('/appointment/customer/create', data, {headers}) + return http.post('/appointment/customer/create', data, {headers}) } //憿批�底蝝啗��� export function getConsultantDetail(agentNo:string){ - return service.get('/consultant/detail', {params:{agentNo:agentNo}}) + return http.get('/consultant/detail', {params:{agentNo:agentNo}}) } // 蝘駁憿批�� @@ -76,12 +68,12 @@ const headers = { Authorization: 'Bearer ' + localStorage.getItem('id_token') } - return service.delete('/consultant/favorite/'+agentId, {headers}) + return http.delete('/consultant/favorite/'+agentId, {headers}) } // �����Ⅳ���� export function getImgOfVerification():Promise<string>{ - return service.get('/login/validate/get_img_code',{ responseType : 'arraybuffer' }) + return http.get('/login/validate/get_img_code',{ responseType : 'arraybuffer' }) .then(response=>{ const toBase64 = window.btoa(_.reduce(new Uint8Array(response.data),(data,byte)=>data + String.fromCharCode(byte),'')); const imgSrc = `data:image/jpeg;base64,${toBase64}`; @@ -91,12 +83,12 @@ // 撽�Ⅳ 撽�� export function getVerificationStatus(imgCode:string):Promise<AxiosResponse<boolean>>{ - return service.get('/login/validate/verify_img_code/'+imgCode); + return http.get('/login/validate/verify_img_code/'+imgCode); } // 憿批�� export function logInToConsultant(consultantDto:ConsultantLoginInfo):Promise<AxiosResponse<RequestOfLoginSuccess>>{ - return service.post('/eService/authenticate',consultantDto); + return http.post('/eService/authenticate',consultantDto); } // �����蝝啁� @@ -104,7 +96,7 @@ const headers = { Authorization: 'Bearer ' + localStorage.getItem('id_token') } - return service.get('/appointment/getDetail/'+apointmentId, {headers}) + return http.get('/appointment/getDetail/'+apointmentId, {headers}) } //���蝙��董����� @@ -112,7 +104,7 @@ const headers = { Authorization: 'Bearer ' + localStorage.getItem('id_token') } - return service.get<UserSetting>('/customer/info', {headers}).then(res => res.data); + return http.get<UserSetting>('/customer/info', {headers}).then(res => res.data); } //��雿輻�董����� @@ -120,23 +112,32 @@ const headers = { Authorization: 'Bearer ' + localStorage.getItem('id_token') } - return service.put('/customer/info', params ,{headers}).then(res => res.data); + return http.put('/customer/info', params ,{headers}).then(res => res.data); } -export interface Consultants { - agentNo : string, - name : string, - img : string, - new : boolean, - avgScore : number, - expertise : string[], - updateTime : Date, - seniority : string, - contactStatus? : string; - latestAppointmentId: number; - role : string; - image? : string; - expertises? : string; +//摰X�脰�遛��漲閰�� + +export function userReviewsConsultants(data: UserReviewsConsultantsParams) { + const headers = { + Authorization: 'Bearer ' + localStorage.getItem('id_token') + } + return http.post('/satisfaction/create', data ,{headers}); +} + +// ������ +export function cancelAppointment(appointment: number) { + const headers = { + Authorization: 'Bearer ' + localStorage.getItem('id_token') + } + return http.delete('/appointment/'+appointment ,{headers}); +} + +// 蝺刻摩���� +export function editAppointment(editAppointmentParams: editAppointmentParams) { + const headers = { + Authorization: 'Bearer ' + localStorage.getItem('id_token') + } + return http.put('/appointment', editAppointmentParams, {headers}); } export interface FastQueryParams { @@ -173,26 +174,26 @@ agentNo : string } export interface StrictQueryParams{ - gender: string; - avgScore: number; - status: string; //phase 1 disable - area: string; - requirements: string[]; + gender : string; + avgScore : number; + status : string; //phase 1 disable + area : string; + requirements : string[]; otherRequirement: string; - seniority: string; - popularTags: string[]; + seniority : string; + popularTags : string[]; otherPopularTags: string; } export interface AgentOfStrictQuery { - agentNo: string; - name: string; - img: string; - expertise: string[]; - avgScore: number; + agentNo : string; + name : string; + img : string; + expertise : string[]; + avgScore : number; contactStatus: null; - updateTime: null; - seniority: string; - new: boolean; + updateTime : null; + seniority : string; + new : boolean; } export interface RequestOfLoginSuccess{ id_token: string; @@ -232,3 +233,21 @@ /** "SMS"嚗tp������"EMAIL":Otp�email */ contactType: string } + +export interface UserReviewsConsultantsParams{ + appointmentId:number, + score:number, +} + +export interface editAppointmentParams { + id: number, + phone: string, + email: string, + contactType: string, + gender: string, + age: string, + job: string, + requirement: string, + hopeContactTime: string, + otherRequirement: null +} -- Gitblit v1.8.0