package com.zhyc.module.produce.manage_sheep.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zhyc.common.annotation.Excel;
import com.zhyc.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class ScAddSheep extends BaseEntity {
    /**
     * 羊只
     *
     * @author ruoyi
     * @date 2025-07-10
     */
    private static final long serialVersionUID = 1L;
    private Integer id;
    /**
     * 羊只耳号
     */
    @Excel(name = "耳号")
    private String earNumber;

    /**
     * 牧场
     */
    private Integer ranchId;
    @Excel(name = "牧场名称")
    private String ranchName;

    /**
     * 羊舍编号
     */
    private Integer sheepfold;

    private String sheepfoldName;

    @Excel(name = "羊舍名称")
    private String sheepfoldNameExcel;

    /**
     * 父号
     */
    @Excel(name = "父号")
    private String father;

    /**
     * 母号
     */
    @Excel(name = "母号")
    private String mother;
    /**
     * 断奶体重(仅接收，不入库)
     */
    @Excel(name = "断奶体重")
    private BigDecimal weaningWeight;
    private String createBy;
    private Date createTime;
    /**
     * 出生体重
     */
    @Excel(name = "出生体重")
    private BigDecimal bornWeight;

    /**
     * 出生日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "出生日期", dateFormat = "yyyy-MM-dd")
    private Date birthday;

    /**
     * 性别 1母 2公 3阉羊
     */
    @Excel(name = "性别", readConverterExp = "1=母,2=公,3=阉羊")
    private Integer gender;

    /**
     * 胎次
     */
    @Excel(name = "胎次")
    private Integer parity;

    /**
     * 品种id
     */
    private Integer varietyId;

    /**
     * 品种名称（联表查询返回，非数据库字段）
     */
    @Excel(name = "品种")
    private String varietyName;

    /**
     * 羊只类别
     */
    private Long typeId;
    @Excel(name = "羊只类型")
    private String typeName;

    /**
     * 入群日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "入群日期", dateFormat = "yyyy-MM-dd")
    private Date joinDate;

    /**
     * 备注
     */
    @Excel(name = "备注")
    private String comment;

    /**
     * 技术员
     */
    @Excel(name = "技术员")
    private String technician;


    /**
     * 用户编号（数据分离用）
     */
    private Long userId;

    /**
     * 部门编号（数据分离用）
     */
    private Long deptId;
}

