package com.petshop.backend.dto.adoption;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Objects;

public class AdoptionResponse {
    private Long adoptionId;
    private Long petId;
    private String petName;
    private Long customerId;
    private String customerName;
    private Long employeeId;
    private String employeeName;
    private Long sourceStoreId;
    private String sourceStoreName;
    private LocalDate adoptionDate;
    private String adoptionStatus;
    private BigDecimal adoptionFee;
    private LocalDateTime createdAt;
    private LocalDateTime updatedAt;

    public AdoptionResponse() {
    }

    public AdoptionResponse(Long adoptionId, Long petId, String petName, Long customerId, String customerName, Long employeeId, String employeeName, Long sourceStoreId, String sourceStoreName, LocalDate adoptionDate, String adoptionStatus, BigDecimal adoptionFee, LocalDateTime createdAt, LocalDateTime updatedAt) {
        this.adoptionId = adoptionId;
        this.petId = petId;
        this.petName = petName;
        this.customerId = customerId;
        this.customerName = customerName;
        this.employeeId = employeeId;
        this.employeeName = employeeName;
        this.sourceStoreId = sourceStoreId;
        this.sourceStoreName = sourceStoreName;
        this.adoptionDate = adoptionDate;
        this.adoptionStatus = adoptionStatus;
        this.adoptionFee = adoptionFee;
        this.createdAt = createdAt;
        this.updatedAt = updatedAt;
    }

    public Long getAdoptionId() { return adoptionId; }
    public void setAdoptionId(Long adoptionId) { this.adoptionId = adoptionId; }

    public Long getPetId() { return petId; }
    public void setPetId(Long petId) { this.petId = petId; }

    public String getPetName() { return petName; }
    public void setPetName(String petName) { this.petName = petName; }

    public Long getCustomerId() { return customerId; }
    public void setCustomerId(Long customerId) { this.customerId = customerId; }

    public String getCustomerName() { return customerName; }
    public void setCustomerName(String customerName) { this.customerName = customerName; }

    public Long getEmployeeId() { return employeeId; }
    public void setEmployeeId(Long employeeId) { this.employeeId = employeeId; }

    public String getEmployeeName() { return employeeName; }
    public void setEmployeeName(String employeeName) { this.employeeName = employeeName; }

    public Long getSourceStoreId() { return sourceStoreId; }
    public void setSourceStoreId(Long sourceStoreId) { this.sourceStoreId = sourceStoreId; }

    public String getSourceStoreName() { return sourceStoreName; }
    public void setSourceStoreName(String sourceStoreName) { this.sourceStoreName = sourceStoreName; }

    public LocalDate getAdoptionDate() { return adoptionDate; }
    public void setAdoptionDate(LocalDate adoptionDate) { this.adoptionDate = adoptionDate; }

    public String getAdoptionStatus() { return adoptionStatus; }
    public void setAdoptionStatus(String adoptionStatus) { this.adoptionStatus = adoptionStatus; }

    public BigDecimal getAdoptionFee() { return adoptionFee; }
    public void setAdoptionFee(BigDecimal adoptionFee) { this.adoptionFee = adoptionFee; }

    public LocalDateTime getCreatedAt() { return createdAt; }
    public void setCreatedAt(LocalDateTime createdAt) { this.createdAt = createdAt; }

    public LocalDateTime getUpdatedAt() { return updatedAt; }
    public void setUpdatedAt(LocalDateTime updatedAt) { this.updatedAt = updatedAt; }
}
