package com.hpay.hpay_mobile_api.entities;

import java.time.LocalDateTime;
import com.fasterxml.jackson.annotation.JsonBackReference;
import jakarta.persistence.*;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.Setter;


@Entity
@Table(name = "parrain_codes")
@RequiredArgsConstructor
@Getter
@Setter
public class ParrainCode {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "idcode")
    private Long idCode;

    @Column(name = "code_parrainage", nullable = false, length = 50)
    private String codeParrainage;

    @Column(name = "date_creation", columnDefinition = "DATETIME DEFAULT CURRENT_TIMESTAMP")
    private LocalDateTime dateCreation;

    @Column(name = "`update`", nullable = false)
    private Boolean update;

    @Column(name = "qrcode", length = 512)
    private String qrcode;

    @OneToOne
    @JoinColumn(name = "idclients", nullable = false)
    @JsonBackReference
    private Client client;

}
