diff --git a/src/stores/Auth.js b/src/stores/Auth.js index 5415454..abef75f 100644 --- a/src/stores/Auth.js +++ b/src/stores/Auth.js @@ -62,9 +62,7 @@ const useAuthStore = create((set, get) => ({ const token = await fetchLoginToken() appendRequestParams('token', token) - const fetchUrl = prepareUrl(HT_HOST + '/service-CooperateSOA/GetLinkManInfo') - .append('token', token) - .build() + const fetchUrl = prepareUrl(HT_HOST + '/service-CooperateSOA/GetLinkManInfo').build() return fetchJSON(fetchUrl) .then(json => { diff --git a/src/stores/Reservation.js b/src/stores/Reservation.js index ebde26a..c7837e0 100644 --- a/src/stores/Reservation.js +++ b/src/stores/Reservation.js @@ -6,10 +6,94 @@ import { create } from 'zustand' const useReservationStore = create((set, get) => ({ - fetchAllGuideList: (travelAgencyId, token) => { + cityList: [], + + selectedReservation: null, + selectedConfirmation: null, + arrivalDateRange: [], + referenceNo: '', + + reservationList: [], + + reservationDetail: { + referenceNumber: '', arrivalDate: '', tourGuide: '' + }, + + reservationPage: { + current: 1, + size: 10, + total: 0 + }, + + confirmationList: [ + ], + + fetchReservationList: (travelAgencyId, current, status=null) => { + const fromDate = null //this.arrivalDateRange.length == 0 ? null : this.arrivalDateRange[0].format('YYYY-MM-DD'); + const thruDate = null //this.arrivalDateRange.length == 0 ? null : this.arrivalDateRange[1].format('YYYY-MM-DD'); + // this.reservationPage.current = current; + // 设置为 0,后端会重新计算总数,当跳转第 X 页时可用原来的总数。 + const totalNum = 0//current == 1 ? 0 : this.reservationPage.total; + const fetchUrl = prepareUrl(HT_HOST + '/service-cusservice/GetPlanSearchList') + .append('VEI_SN', travelAgencyId) + .append('GroupNo', '')//this.referenceNo) + .append('DateStart', '')//fromDate) + .append('DateEnd', '')//thruDate) + .append('NotConfirm', '')//status) + .append('TotalNum', totalNum) + .append('PageSize', 5)//this.reservationPage.size) + .append('PageIndex', 1)//this.reservationPage.current) + .build(); + + return fetchJSON(fetchUrl) + .then(json => { + if (json.errcode == 0) { + // runInAction(() => { + // this.reservationList = (json?.Result??[]).map((data, index) => { + // return { + // key: data.vas_gri_sn, + // reservationId: data.vas_gri_sn, + // referenceNumber: data.GriName, + // arrivalDate: data.GetGDate, + // pax: data.PersonNum, + // status: data.GState, + // reservationDate: data.SendDate, + // guide: data.Guide + // } + // }); + // this.reservationPage.total = (json?.Result??[{RsTotal: 0}])[0].RsTotal; + // }); + + const mapReservationList = (json?.Result??[]).map((data, index) => { + return { + key: data.vas_gri_sn, + reservationId: data.vas_gri_sn, + referenceNumber: data.GriName, + arrivalDate: data.GetGDate, + pax: data.PersonNum, + status: data.GState, + reservationDate: data.SendDate, + guide: data.Guide + } + }) + + set((state) => ({ + reservationList: mapReservationList, + reservationPage: { + ... + state.reservationPage, + total: (json?.Result??[{RsTotal: 0}])[0].RsTotal + } + })) + } else { + throw new Error(json.errmsg + ': ' + json.errcode); + } + }); + }, + + fetchAllGuideList: (travelAgencyId) => { const fetchUrl = prepareUrl(HT_HOST + '/service-cusservice/PTGetGuideList') .append('VEI_SN', travelAgencyId) - .append("token", token) .build(); return fetchJSON(fetchUrl) @@ -199,29 +283,6 @@ export class Reservation { }); } - fetchAllGuideList() { - const fetchUrl = prepareUrl(HT_HOST + '/service-cusservice/PTGetGuideList') - .append('VEI_SN', this.root.authStore.login.travelAgencyId) - .append("token", this.root.authStore.login.token) - .build(); - - return fetchJSON(fetchUrl) - .then(json => { - if (json.errcode == 0) { - const guideList = (json?.Result??[]).map((data, index) => { - return { - guideId: data.TGI_SN, - guideName: data.TGI2_Name, - mobileNo: data.TGI_Mobile - } - }); - return guideList; - } else { - throw new Error(json.errmsg + ': ' + json.errcode); - } - }); - } - setupCityGuide(cityId, guideId) { let formData = new FormData(); formData.append('GRI_SN', this.selectedReservation.reservationId); diff --git a/src/views/reservation/Newest.jsx b/src/views/reservation/Newest.jsx index 89d2a0c..c2203c5 100644 --- a/src/views/reservation/Newest.jsx +++ b/src/views/reservation/Newest.jsx @@ -112,7 +112,8 @@ function Newest() { const { reservationStore } = useStore(); const loginUser = useAuthStore((state) => state.loginUser) - const fetchAllGuideList = useReservationStore((state) => state.fetchAllGuideList) + const [fetchAllGuideList, fetchReservationList] = + useReservationStore((state) => [state.fetchAllGuideList, state.fetchReservationList]) const { reservationList, reservationPage, referenceNo, arrivalDateRange, cityList } = reservationStore; const { notification } = App.useApp(); @@ -122,7 +123,7 @@ function Newest() { // 第一页,未确认计划 onSearchClick(1, 1); } - fetchAllGuideList(loginUser.travelAgencyId, loginUser.token) + fetchAllGuideList(loginUser.travelAgencyId) .then((guideList) => { const selectOptions = guideList.map((data, index) => { return { @@ -169,7 +170,7 @@ function Newest() { // 默认重新搜索第一页,所有状态的计划 const onSearchClick = (current=1, status=null) => { setDataLoading(true); - reservationStore.fetchReservationList(current, status) + fetchReservationList(loginUser.travelAgencyId, current, status) .catch(ex => { notification.error({ message: `Notification`,