package org.dromara.pet.domain.bo;

import org.dromara.pet.domain.BizPetMedicalContext;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

/**
 * 宠物医疗上下文业务对象 biz_pet_medical_context
 *
 * @author shuo
 * @date 2026-02-25
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = BizPetMedicalContext.class,reverseConvertGenerate =false)

public class BizPetMedicalContextBo extends BaseEntity {

            /**
             * 主键ID
             */
        private Long id;

            /**
             * 关联宠物ID
             */
        private Long petId;

            /**
             * 过敏史
             */
                @NotBlank(message = "过敏史不能为空", groups = { AddGroup.class, EditGroup.class })
        private String allergies;

            /**
             * 疫苗接种记录
             */
                @NotBlank(message = "疫苗接种记录不能为空", groups = { AddGroup.class, EditGroup.class })
        private String vaccinations;

            /**
             * 慢性病史
             */
                @NotBlank(message = "慢性病史不能为空", groups = { AddGroup.class, EditGroup.class })
        private String chronicConditions;

            /**
             * 日常用药
             */
                @NotBlank(message = "日常用药不能为空", groups = { AddGroup.class, EditGroup.class })
        private String regularMedications;

            /**
             * 业务更新时间
             */
                @NotNull(message = "业务更新时间不能为空", groups = { AddGroup.class, EditGroup.class })
        private Date updatedAt;

            /**
             * 租户编号
             */
                @NotBlank(message = "租户编号不能为空", groups = { AddGroup.class, EditGroup.class })
        private String tenantId;


}
