Commit 61dd8446 authored by 黄奎's avatar 黄奎

1

parent ce5e3efc
...@@ -64,13 +64,13 @@ module.exports = configure(function (ctx) { ...@@ -64,13 +64,13 @@ module.exports = configure(function (ctx) {
publicPath: ctx.dev ? '/' : './', publicPath: ctx.dev ? '/' : './',
env: ctx.dev env: ctx.dev
? { ? {
BASE_APP_API: 'http://192.168.10.226:8015/api/common/post',//http://192.168.10.226:8015/api/common/post http://192.168.10.206:8015/api/common/post BASE_APP_API: 'http://192.168.10.226/api/common/post',
JAVA_URL_API: 'http://efficient.oytour.com', JAVA_URL_API: 'http://efficient.oytour.com',
VERSION:require('./package.json').version, VERSION:require('./package.json').version,
} }
: { : {
BASE_APP_API: 'https://reborn.oytour.com/api/common/post',//https://reborn.oytour.com/api/common/post BASE_APP_API: 'https://reborn.oytour.com/api/common/post',
JAVA_URL_API: 'http://efficient.oytour.com', JAVA_URL_API: 'http://efficient.oytour.com',
VERSION:require('./package.json').version VERSION:require('./package.json').version
}, },
......
...@@ -4,24 +4,26 @@ import request from './request' ...@@ -4,24 +4,26 @@ import request from './request'
//道旅酒店API //道旅酒店API
class DidaService { class DidaService {
//道旅城市
static async GetDidaCity(param: any): Promise<HttpResponse> {
return request('dmc_post_GetDiDaCityBaseInfo', param, false)
}
//获取道旅酒店类型 //获取道旅酒店类型
static async GetDidaPropertyCategory(param: any): Promise<HttpResponse> { static async GetDidaPropertyCategory(param: any): Promise<HttpResponse> {
return request('dmc_post_Get_GetJAPAN_HotelList', param, false) return request('dmc_post_GetDidaPropertyCategory', param, false)
} }
//获取道旅餐食类型 //获取道旅餐食类型
static async GetDidaMealType(param: any): Promise<HttpResponse> { static async GetDidaMealType(param: any): Promise<HttpResponse> {
return request('dmc_post_Get_GetJAPAN_HotelList', param, false) return request('dmc_post_GetDidaMealType', param, false)
} }
//道旅城市
static async GetDidaCity(param: any): Promise<HttpResponse> {
return request('dmc_post_Get_GetJAPAN_HotelList', param, false)
}
//道旅床型 //道旅床型
static async GetDidaBedType(param: any): Promise<HttpResponse> { static async GetDidaBedType(param: any): Promise<HttpResponse> {
return request('dmc_post_Get_GetJAPAN_HotelList', param, false) return request('dmc_post_GetDidaBedTypeBaseInfo', param, false)
} }
// 道旅酒店列表 // 道旅酒店列表
...@@ -30,7 +32,7 @@ class DidaService { ...@@ -30,7 +32,7 @@ class DidaService {
param.reviewRatingLowerLimits = param.reviewRatingLowerLimits && param.reviewRatingLowerLimits != '' ? param.reviewRatingLowerLimits : 0 param.reviewRatingLowerLimits = param.reviewRatingLowerLimits && param.reviewRatingLowerLimits != '' ? param.reviewRatingLowerLimits : 0
param.searchMaxRate = param.searchMaxRate && param.searchMaxRate != '' ? param.searchMaxRate : 0 param.searchMaxRate = param.searchMaxRate && param.searchMaxRate != '' ? param.searchMaxRate : 0
param.searchMinRate = param.searchMinRate && param.searchMinRate != '' ? param.searchMinRate : 0 param.searchMinRate = param.searchMinRate && param.searchMinRate != '' ? param.searchMinRate : 0
return request('dmc_post_Get_GetJAPAN_HotelList', param, false) return request('dmc_post_GetDiDaHotelPageList', param, false)
} }
} }
......
...@@ -244,13 +244,14 @@ ...@@ -244,13 +244,14 @@
</q-btn> </q-btn>
</div> </div>
<div class="q-my-md"> <div class="q-my-md">
<!--HotelLiveRates -->
<q-select <q-select
v-model="search.searchHotelCategory" v-model="search.searchHotelCategory"
dense dense
:options="HotelLiveRates" :options="HotelDidaPropertyCategory"
emit-value emit-value
option-label="name" option-label="Description_CN"
option-value="id" option-value="ID"
clearable clearable
multiple multiple
map-options map-options
...@@ -286,8 +287,8 @@ ...@@ -286,8 +287,8 @@
dense dense
:options="HotelRoomTypes" :options="HotelRoomTypes"
emit-value emit-value
option-label="name" option-label="Name_CN"
option-value="id" option-value="ID"
clearable clearable
multiple multiple
map-options map-options
...@@ -301,8 +302,8 @@ ...@@ -301,8 +302,8 @@
dense dense
:options="HotelMealTypes" :options="HotelMealTypes"
emit-value emit-value
option-label="name" option-label="Name_CN"
option-value="id" option-value="ID"
clearable clearable
multiple multiple
map-options map-options
...@@ -310,21 +311,6 @@ ...@@ -310,21 +311,6 @@
standout standout
/> />
</div> </div>
<div class="q-my-md">
<q-select
v-model="search.searchHotelFeatures"
dense
:options="HotelConceptTypes"
emit-value
option-label="name"
option-value="id"
clearable
multiple
map-options
:label="$t('v101.scattered.liniantype')"
standout
/>
</div>
<div class="q-my-md row items-center"> <div class="q-my-md row items-center">
<q-input <q-input
v-model="search.reviewRatingLowerLimits" v-model="search.reviewRatingLowerLimits"
...@@ -409,11 +395,12 @@ export default defineComponent({ ...@@ -409,11 +395,12 @@ export default defineComponent({
childNum: null as any, childNum: null as any,
adultList: [] as Array<Number>, //成人下拉 adultList: [] as Array<Number>, //成人下拉
childrenList: [] as Array<Number>, //儿童下拉 childrenList: [] as Array<Number>, //儿童下拉
childrenAgeList: [] as Array<Number>, //儿童年龄下拉
isShowPop: false, //房间 isShowPop: false, //房间
HotelLiveRates: [] as Array<HotelRate>, //住宿类型 HotelLiveRates: [] as Array<HotelRate>, //住宿类型
HotelRoomTypes: [] as Array<HotelRate>, //房类型 HotelRoomTypes: [] as Array<HotelRate>, //房类型
HotelMealTypes: [] as Array<HotelRate>, //餐型 HotelMealTypes: [] as Array<HotelRate>, //餐型
HotelConceptTypes: [] as Array<HotelRate>, //理念 HotelDidaPropertyCategory:[] as Array<HotelRate>,
keyWords: "" as stringify, keyWords: "" as stringify,
placeKeyWords: t("v101.scattered.HotelArea1"), placeKeyWords: t("v101.scattered.HotelArea1"),
}); });
...@@ -448,17 +435,17 @@ export default defineComponent({ ...@@ -448,17 +435,17 @@ export default defineComponent({
search.arrivalDate = data.dateRange.from; search.arrivalDate = data.dateRange.from;
search.departureDate = data.dateRange.to; search.departureDate = data.dateRange.to;
data.hotelsRates = useHotel.getHotelRate(); data.hotelsRates = useHotel.getHotelRate();
data.HotelLiveRates = useHotel.getAccommodationType();
data.Areas = useHotel.getHotelArea(); data.Areas = useHotel.getHotelArea();
data.HotelMealTypes = useHotel.getHotelMeal(); data.HotelMealTypes = useHotel.getHotelMeal();
data.HotelConceptTypes = useHotel.getHotelConcept(); data.HotelConceptTypes = useHotel.getHotelConcept();
if (data.keyWords == "") { if (data.keyWords == "") {
search.freewordType = 1; search.freewordType = 1;
search.freeword = data.placeKeyWords; search.DestinationID = data.placeKeyWords;
} else { } else {
search.freewordType = 2; search.freewordType = 2;
search.freeword = data.keyWords; search.DestinationID = data.keyWords;
} }
const methods = { const methods = {
//设置房间里面成人数改变总成人数和儿童数 //设置房间里面成人数改变总成人数和儿童数
...@@ -531,7 +518,7 @@ export default defineComponent({ ...@@ -531,7 +518,7 @@ export default defineComponent({
DidaService.GetDidaPropertyCategory({}).then((res) => { DidaService.GetDidaPropertyCategory({}).then((res) => {
console.log("GetDidaPropertyCategory", res); console.log("GetDidaPropertyCategory", res);
if ((res.data.resultCode = 1)) { if ((res.data.resultCode = 1)) {
data.HotelRoomTypes = res.data.data; data.HotelDidaPropertyCategory = res.data.data;
} }
}); });
}, },
...@@ -540,7 +527,36 @@ export default defineComponent({ ...@@ -540,7 +527,36 @@ export default defineComponent({
DidaService.GetDidaMealType({}).then((res) => { DidaService.GetDidaMealType({}).then((res) => {
console.log("getdidaMealType", res); console.log("getdidaMealType", res);
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
data.HotelMealTypes=res.data.data; data.HotelMealTypes = res.data.data;
}
});
},
//获取道旅房型列表
getdidaBedType() {
DidaService.GetDidaBedType({}).then((res) => {
console.log("getdidaBedType", res);
if (res.data.resultCode == 1) {
data.HotelRoomTypes = res.data.data;
}
});
},
//获取道旅城市
getdidaCity() {
var cityParm = {
CountryCode: "JP",
};
var newCity = [];
DidaService.GetDidaCity(cityParm).then((res) => {
console.log("getdidaCity", res);
if (res.data.resultCode == 1) {
var tempArray = res.data.data;
if (tempArray && tempArray.length > 0) {
tempArray.forEach((item) => {
if (item.Type == "City") {
newCity.push({});
}
});
}
} }
}); });
}, },
...@@ -563,10 +579,10 @@ export default defineComponent({ ...@@ -563,10 +579,10 @@ export default defineComponent({
if (search.searchMaxRate) setCnt++; if (search.searchMaxRate) setCnt++;
if (data.keyWords == "") { if (data.keyWords == "") {
search.freewordType = 1; search.freewordType = 1;
search.freeword = data.placeKeyWords; search.hotelqueryparam = data.placeKeyWords;
} else { } else {
search.freewordType = 2; search.freewordType = 2;
search.freeword = data.keyWords; search.hotelqueryparam = data.keyWords;
} }
return setCnt; return setCnt;
}); });
...@@ -584,6 +600,10 @@ export default defineComponent({ ...@@ -584,6 +600,10 @@ export default defineComponent({
}); });
onMounted(() => { onMounted(() => {
methods.getdidaCity();
methods.getdidaPropertyCategory();
methods.getdidaBedType();
methods.getdidaMealType();
methods.setData(); methods.setData();
}); });
return { return {
......
...@@ -61,9 +61,9 @@ ...@@ -61,9 +61,9 @@
<template v-slot:body-cell-lowrateBySetCurrency="props"> <template v-slot:body-cell-lowrateBySetCurrency="props">
<q-td :props="props"> <q-td :props="props">
<span class="q-ml-xs text-orange text-weight-bold fz18"> <span class="q-ml-xs text-orange text-weight-bold fz18">
<template v-if="props.row.type == 1"> <template v-if="props.row.type == 1">
{{ getPrice(props.row.lowrateBySetCurrency) }} {{ (props.row.lowrateBySetCurrency) }}
</template> </template>
<template v-else> <template v-else>
{{ props.row.lowrateBySetCurrency }} {{ props.row.lowrateBySetCurrency }}
...@@ -88,9 +88,9 @@ ...@@ -88,9 +88,9 @@
<template v-slot:bottom> <template v-slot:bottom>
<q-pagination <q-pagination
class="full-width justify-end" class="full-width justify-end"
v-model="pages.displayFrom" v-model="pages.pageIndex"
color="primary" color="primary"
:max="pageCount" :max="pages.pageCount"
:input="true" :input="true"
@update:model-value="changePageHandler" @update:model-value="changePageHandler"
/> />
...@@ -178,12 +178,12 @@ ...@@ -178,12 +178,12 @@
</div> </div>
<div class=""> <div class="">
<span <span
> >
<template v-if="props.row.type == 1"> <template v-if="props.row.type == 1">
{{ getPrice(props.row.lowrateBySetCurrency) }} {{ getPrice(props.row.lowrateBySetCurrency) }}
</template> </template>
<template v-else> <template v-else>
{{ props.row.lowrateBySetCurrency }} {{ props.row.lowrateBySetCurrency }}
</template> </template>
</span> </span>
<span class="q-pl-xs">{{ $t("v101.scattered.qi") }}</span> <span class="q-pl-xs">{{ $t("v101.scattered.qi") }}</span>
...@@ -194,9 +194,9 @@ ...@@ -194,9 +194,9 @@
<template v-slot:bottom> <template v-slot:bottom>
<q-pagination <q-pagination
class="full-width justify-end" class="full-width justify-end"
v-model="pages.displayFrom" v-model="pages.pageIndex"
color="primary" color="primary"
:max="pageCount" :max="pages.pageCount"
:input="true" :input="true"
@update:model-value="changePageHandler" @update:model-value="changePageHandler"
/> />
...@@ -213,6 +213,7 @@ import message from "../../../utils/message"; ...@@ -213,6 +213,7 @@ import message from "../../../utils/message";
import { defineComponent, inject, reactive, toRefs, watch } from "vue"; import { defineComponent, inject, reactive, toRefs, watch } from "vue";
import { date, useQuasar } from "quasar"; import { date, useQuasar } from "quasar";
import { useI18n } from "vue-i18n"; import { useI18n } from "vue-i18n";
import DidaService from "../../../api/didahotel";
import { HotelArea, useHotel } from "../../../utils/hotelRate"; import { HotelArea, useHotel } from "../../../utils/hotelRate";
export default defineComponent({ export default defineComponent({
components: {}, components: {},
...@@ -225,7 +226,7 @@ export default defineComponent({ ...@@ -225,7 +226,7 @@ export default defineComponent({
watch(search, (n, o) => { watch(search, (n, o) => {
if (data.loading) return; if (data.loading) return;
console.log("search change"); console.log("search change");
data.pages.displayFrom = 1; data.pages.pageIndex = 1;
methods.initHotels(); methods.initHotels();
}); });
...@@ -261,13 +262,12 @@ export default defineComponent({ ...@@ -261,13 +262,12 @@ export default defineComponent({
align: "left", align: "left",
}, },
] as any, ] as any,
pages: { pages: {
displayFrom: 1, //页数 pageIndex: 1,
numberOfResults: 12, pageSize: 10,
rowsPerPage: 15, pageCount: 0,
sort: 1, sort:1,
}, },
pageCount: 0,
pageTitle: "" as string | undefined, pageTitle: "" as string | undefined,
mobileCols: [ mobileCols: [
{ {
...@@ -304,17 +304,14 @@ export default defineComponent({ ...@@ -304,17 +304,14 @@ export default defineComponent({
let dataList = [] as any[]; let dataList = [] as any[];
data.travelLngLat = []; data.travelLngLat = [];
let param = Object.assign(data.pages, search); let param = Object.assign(data.pages, search);
HotelService.GetJAPANHotelList(param) DidaService.GetDidaHotelList(param)
.then((r) => { .then((r) => {
if (r.data.data.parmResult && r.data.data.parmResult.hotelSummary) { console.log("initHotels",r.data);
dataList = r.data.data.parmResult.hotelSummary; if (r.data.data.pageData) {
} dataList = r.data.data.pageData;
var ourHotelList = r.data.data.ourHotelList; data.pages.pageCount = r.data.data.pageCount
if (ourHotelList && ourHotelList.length > 0) {
ourHotelList.forEach((x) => {
x.type = 2;
});
} }
if (dataList && dataList.length > 0) { if (dataList && dataList.length > 0) {
//获取酒店坐标 //获取酒店坐标
dataList.forEach((x) => { dataList.forEach((x) => {
...@@ -329,7 +326,8 @@ export default defineComponent({ ...@@ -329,7 +326,8 @@ export default defineComponent({
x.type = 1; x.type = 1;
}); });
} }
data.hotels = ourHotelList.concat(dataList); data.hotels = dataList;
console.log("data.hotels",data.hotels);
data.hotels.forEach((x) => { data.hotels.forEach((x) => {
if (isNaN(x.reviewRating)) { if (isNaN(x.reviewRating)) {
x.reviewRating = 0; x.reviewRating = 0;
...@@ -344,20 +342,6 @@ export default defineComponent({ ...@@ -344,20 +342,6 @@ export default defineComponent({
if (data.pages.sort == 1) { if (data.pages.sort == 1) {
data.hotels.sort(methods.getSortFun("desc", "reviewRating")); data.hotels.sort(methods.getSortFun("desc", "reviewRating"));
} }
let jalanTotalCount = 0;
if (r.data.data.parmResult && r.data.data.parmResult.numberOfResultMatched) {
jalanTotalCount = r.data.data.parmResult.numberOfResultMatched;
}
let ourHotelTotalCount = 0;
if (ourHotelList && ourHotelList.length > 0) {
ourHotelTotalCount = ourHotelList[0].totalHotelCount;
}
let totalCount = Number(jalanTotalCount) + Number(ourHotelTotalCount);
data.pageCount = Math.ceil(
parseFloat(r.data.data.parmResult.numberOfResultMatched) /
data.pages.numberOfResults
);
data.groupBookingFlg = r.data.data.parmResult.groupBookingFlg; data.groupBookingFlg = r.data.data.parmResult.groupBookingFlg;
data.JapanIncrease = r.data.data.parmResult.JapanIncrease; data.JapanIncrease = r.data.data.parmResult.JapanIncrease;
data.loading = false; data.loading = false;
...@@ -376,14 +360,10 @@ export default defineComponent({ ...@@ -376,14 +360,10 @@ export default defineComponent({
); );
return sortFun; return sortFun;
}, },
//获取价格
getPrice(price) {
return Math.ceil(price / data.JapanIncrease);
},
changePageHandler(n: any) { changePageHandler(n: any) {
data.pages.displayFrom = n; data.pages.pageIndex = n
console.log(n); methods.initHotels()
methods.initHotels();
}, },
showHotelDetailHandler(hotelId: number) { showHotelDetailHandler(hotelId: number) {
data.showHotelDetailId = hotelId; data.showHotelDetailId = hotelId;
......
...@@ -45,12 +45,12 @@ const useMenus = { ...@@ -45,12 +45,12 @@ const useMenus = {
id: 14, id: 14,
parentId: 13, parentId: 13,
}, },
// { {
// name: t('menu.scattered.didaName'), name: t('menu.scattered.didaName'),
// url: '/didahotel', url: '/didahotel',
// id: 23, id: 23,
// parentId: 13, parentId: 13,
// }, },
{ {
name: t('menu.scattered.three'), name: t('menu.scattered.three'),
url: '/scattered/HotelOrder', url: '/scattered/HotelOrder',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment