package com.foxedu.basecms.domain;

import java.io.Serializable;
import java.util.Objects;
import jakarta.persistence.Column;
import jakarta.persistence.Embeddable;

/**
 * 파일상세정보 복합키
 */
@Embeddable
public class FileDetailId implements Serializable {

    @Column(name = "ATCH_FILE_ID", length = 20, nullable = false)
    private String atchFileId;

    @Column(name = "FILE_SN", nullable = false)
    private Integer fileSn;

    public FileDetailId() {
    }

    public FileDetailId(String atchFileId, Integer fileSn) {
        this.atchFileId = atchFileId;
        this.fileSn = fileSn;
    }

    public String getAtchFileId() {
        return atchFileId;
    }

    public void setAtchFileId(String atchFileId) {
        this.atchFileId = atchFileId;
    }

    public Integer getFileSn() {
        return fileSn;
    }

    public void setFileSn(Integer fileSn) {
        this.fileSn = fileSn;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (!(o instanceof FileDetailId)) {
            return false;
        }
        FileDetailId that = (FileDetailId) o;
        return Objects.equals(atchFileId, that.atchFileId)
            && Objects.equals(fileSn, that.fileSn);
    }

    @Override
    public int hashCode() {
        return Objects.hash(atchFileId, fileSn);
    }
}
