package io.delphiplatform.api.v3.rdb.entity.tiktok;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.Table;

import io.delphiplatform.api.v3.constant.DbSchemaConstants;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

@Entity
@Table(name = "dim_tiktok_top_song", schema = DbSchemaConstants.TIKTOK)
@Getter
@Setter
@EqualsAndHashCode(of = {"songId", "isrc"})
public class TikTokTopSongEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @EmbeddedId
    private TikTokTopSongId id;

    @Column(name = "tiktok_song_id", insertable = false, updatable = false)
    private String songId;

    @Column(name = "isrc", insertable = false, updatable = false)
    private String isrc;

    @Column(name = "product_code")
    private String productCode;

    @Column(name = "song_title")
    private String songTitle;

    @Column(name = "artist")
    private String artist;

    @Column(name = "label_name")
    private String labelName;

    @Column(name = "sublabel")
    private String sublabel;

}
