- Add MyBatis Spring Boot Starter with XML mappers and domain classes - Create 9 mapper interfaces + XML: Restaurant, Video, Channel, Review, User, Stats, DaemonConfig, Search, Vector - Create 10 domain classes with Lombok: Restaurant, VideoSummary, VideoDetail, VideoRestaurantLink, Channel, Review, UserInfo, DaemonConfig, SiteVisitStats, VectorSearchResult - Create 7 new service classes: RestaurantService, VideoService, ChannelService, ReviewService, UserService, StatsService, DaemonConfigService - Refactor all controllers to be thin (HTTP + auth only), delegating business logic to services - Refactor SearchService, PipelineService, DaemonScheduler, AuthService, YouTubeService to use mappers/services instead of JDBC/repositories - Add Jackson SNAKE_CASE property naming for consistent API responses - Add ClobTypeHandler for Oracle CLOB→String in MyBatis - Add IdGenerator utility for centralized UUID generation - Delete old repository/ package (6 files), JdbcConfig, LowerCaseKeyAdvice - VectorService retains JDBC for Oracle VECTOR type support Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
34 lines
799 B
Java
34 lines
799 B
Java
package com.tasteby.domain;
|
|
|
|
import com.fasterxml.jackson.annotation.JsonRawValue;
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.Builder;
|
|
import lombok.Data;
|
|
import lombok.NoArgsConstructor;
|
|
|
|
@Data
|
|
@Builder
|
|
@NoArgsConstructor
|
|
@AllArgsConstructor
|
|
public class VideoRestaurantLink {
|
|
private String restaurantId;
|
|
private String name;
|
|
private String address;
|
|
private String cuisineType;
|
|
private String priceRange;
|
|
private String region;
|
|
@JsonRawValue
|
|
private String foodsMentioned;
|
|
@JsonRawValue
|
|
private String evaluation;
|
|
@JsonRawValue
|
|
private String guests;
|
|
private String googlePlaceId;
|
|
private Double latitude;
|
|
private Double longitude;
|
|
|
|
public boolean isHasLocation() {
|
|
return latitude != null && longitude != null;
|
|
}
|
|
}
|