From 97e093b1117b68948d0f9adefacc5368014db380 Mon Sep 17 00:00:00 2001 From: Jack <jack.su@pollex.com.tw> Date: 星期日, 14 十一月 2021 22:43:09 +0800 Subject: [PATCH] Merge branch 'master' of ssh://192.168.0.10:29418/pcalife/PAM --- PAMapp/assets/ts/api/consultant.ts | 109 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 88 insertions(+), 21 deletions(-) diff --git a/PAMapp/assets/ts/api/consultant.ts b/PAMapp/assets/ts/api/consultant.ts index 3b669ae..c761f2f 100644 --- a/PAMapp/assets/ts/api/consultant.ts +++ b/PAMapp/assets/ts/api/consultant.ts @@ -1,36 +1,22 @@ import axios from 'axios'; import { AxiosRequestConfig, AxiosError, AxiosResponse } from 'axios'; import { MessageBox } from 'element-ui'; +import { functionsIn } from 'lodash'; import Router from 'vue-router'; export const service = axios.create({ - baseURL: 'http://localhost:8080/api', - headers: { - Authorization: 'Bearer ' + localStorage.getItem('id_token') - } + baseURL: 'http://localhost:8080/api' }) service.interceptors.request.use(function (config: AxiosRequestConfig) { - window.$nuxt.$loading.start(); return config; }, function (error: AxiosError) { return Promise.reject(error); }); service.interceptors.response.use(function (response: AxiosResponse) { - window.$nuxt.$loading.finish(); return response; }, function (error: AxiosError) { - console.log(error.request.status) - const errorCode = error.request.status; - if (errorCode === 401) { - window.$nuxt.$router.push('/login'); - } else { - // MessageBox.alert(error.request.statusText, errorCode, { - // confirmButtonText: '蝣箏��' }); - } - - window.$nuxt.$loading.finish(); return Promise.reject(error); }); @@ -46,7 +32,10 @@ // ���“��� export function getFavoriteConsultant() { - return service.get('/consultant/favorite'); + const headers = { + Authorization: 'Bearer ' + localStorage.getItem('id_token') + } + return service.get('/consultant/favorite', {headers}); } // 敹恍�祟� @@ -54,13 +43,38 @@ return service.post('/consultant/fastQuery', data) } -// ��憿批�� -export function addFavoriteConsultant(agentNoList: string[]) { - return service.post('/consultant/favorite', agentNoList) +// ������ +export function strictQuery(data:StrictQueryParams):Promise<AxiosResponse<AgentOfStrictQuery>>{ + return service.post('/consultant/strictQuery', data) } +// ��憿批�� +export function addFavoriteConsultant(agentNoList: string[]) { + const headers = { + Authorization: 'Bearer ' + localStorage.getItem('id_token') + } + return service.post('/consultant/favorite', {agentNoList}, {headers}) +} + +// ����岷��� +export function appointmentDemand(data: AppointmentParams) { + return service.post('/appointment/customer/create', data) +} + +//憿批�底蝝啗��� +export function getConsultantDetail(agentNo:string){ + return service.get('/consultant/detail', {params:{agentNo:agentNo}}) +} + +// ��������� +export function getMyAppointmentList():Promise<AxiosResponse<ClientInfo>> { + const headers = { + Authorization: 'Bearer ' + localStorage.getItem('id_token') + } + return service.get('/consultant/getMyAppointment', {headers}); +} export interface Consultants { - agentNo: number, + agentNo: string, name: string, img: string, new: boolean, @@ -76,4 +90,57 @@ communicationStyles: string[], avgScore: number, status: string +} + +export interface AppointmentParams { + phone: string, + email: string, + contactType: string, + gender: string, + age: string, + job: string, + requirement: string, + hopeContactTime: string, + otherRequirement: string, + agentNo: string +} +export interface StrictQueryParams{ + gender: string; + avgScore: number; + status: string; //phase 1 disable + area: string; + requirements: string[]; + otherRequirement: string; + seniority: string; + popularTags: string[]; + otherPopularTags: string; +} +export interface AgentOfStrictQuery { + agentNo: string; + name: string; + img: string; + expertise: string[]; + avgScore: number; + contactStatus: null; + updateTime: null; + seniority: string; + new: boolean; +} + +export interface ClientInfo { + id: number, + phone: string, + email: string, + contactType: string, + gender: string, + age: string, + job: string, + requirement: string, + communicateStatus: string, + hopeContactTime: string, + otherRequirement: string, + appointmentDate: Date, + agentNo: string, + customerId: number, + name: string } \ No newline at end of file -- Gitblit v1.8.0