const checkinTime: string | undefined = hotelProperties?.value[0]?.CatalogPropertyValue?.find( (item: any) => item.CatalogProperty?.Code === "giris-saati", )?.Value; const checkoutTime: string | undefined = hotelProperties?.value[0]?.CatalogPropertyValue?.find( (item: any) => item.CatalogProperty?.Code === "cikis-saati", )?.Value; let hasSecuredCertificatedHotel = false; hotelAmenities.data.forEach((g: any) => { g.subGroup.forEach((s: any) => { s.amenities.forEach((a: any) => { if (a.amenitySlug == "guvenli-turizm-sertifikasi") { hasSecuredCertificatedHotel = true; return; } }); }); }); let popularProperties: any = []; hotelAmenities && hotelAmenities?.data.map((property: any) => { property.subGroup && property.subGroup?.map((group: any) => { group.amenities?.filter((amenity: any) => amenity.isPopular) .map((amenity: any) => { if (!popularProperties.find((property: any) => property.name == amenity.amenityDefaultName)) { popularProperties = [...popularProperties, amenity.amenityDefaultName]; } }, ); }); }); let popularRoomProperties: any[] = []; const roomProperties = hotelAmenities.data.find((property: any) => property.id === 2); roomProperties && roomProperties?.subGroup.map((group: any) => { group.amenities && group.amenities?.filter((amenity: any) => amenity.isPopular) .map((amenity: any) => { if (!popularRoomProperties.find((property: any) => property == amenity.amenityDefaultName)) { popularRoomProperties = [...popularRoomProperties, amenity.amenityDefaultName]; } }, ); }); const faqSchema = [ { questionName: `${hotelDetail?.header?.title} için 1 gecelik fiyat ne kadardır?`, acceptedAnswerText: `${hotelDetail?.header?.title} için 1 gecelik ortalama fiyat ${calculatedMinPrice} TL${calculatedMinPrice !== calculatedMaxPrice ? ' - ' + calculatedMaxPrice + ' TL aralığındadır.' : '.'}`, }, { questionName: `${hotelDetail?.header?.title} için tesisinde bulunan odaların özellikleri nelerdir?`, acceptedAnswerText: `${hotelDetail?.header?.title} odalarında ${popularRoomProperties.join(", ")} bulunmaktadır. Oda özelliklerinde daha fazla bilgi almak için otel sayfasını inceleyebilirsiniz.`, }, { questionName: `${hotelDetail?.header?.title} için rezervasyonumu ücretsiz iptal edebilir miyim?`, acceptedAnswerText: `${hotelDetail?.header?.title} için ücretsiz rezervasyon iptali isteği tesis politikasına bağlı olarak değişebilmektedir. Daha fazla bilgi almak için otel sayfasını inceleyebilirsiniz.`, }, { questionName: `${hotelDetail?.header?.title} için popüler tesis özellikleri nelerdir?`, acceptedAnswerText: `${hotelDetail?.header?.title} için popüler tesis özellikleri; ${popularProperties.join(", ")} olmasıdır.`, }, ]; if (!priceRequest?.catalogDetail?.distance && (priceRequest?.catalogDetail?.distance ?? 0) > 0) { faqSchema.push({ questionName: `${hotelDetail?.header?.title} şehir merkezine ne kadar uzaklıktadır?`, acceptedAnswerText: `${hotelDetail?.header?.title} tesisinin şehir merkezine uzaklığı ${priceRequest?.catalogDetail?.distance}km.`, }); } if (hasSecuredCertificatedHotel) faqSchema.push( { questionName: `${hotelDetail?.header?.title} Covid sertifikalı bir tesis midir?`, acceptedAnswerText: `${hotelDetail?.header?.title} güvenle konaklayabileceğiniz Sağlık Bakanlığı tarafından onaylı Güvenli Turizm Sertifikalı bir tesistir.`, }, ); if (checkinTime && checkoutTime) faqSchema.push({ questionName: `${hotelDetail?.header?.title} için tesis giriş ve çıkış saatleri kaçtır?`, acceptedAnswerText: `${hotelDetail?.header?.title} tesisi için ${checkinTime } giriş, ${checkoutTime } çıkış yapılmaktadır.`, });