package org.jeecg.modules.system.app.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

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

/**
 * @Description: 保险订单
 * @Author: jeecg-boot
 * @Date:   2025-07-29
 * @Version: V1.0
 */
@Data
@TableName("nm_insure_order_info")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@Schema(description="保险订单")
public class InsureOrderInfo implements Serializable {
    private static final long serialVersionUID = 1L;

	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @Schema(description = "id")
    private String id;
	/**订单编号*/
	@Excel(name = "订单编号", width = 15)
    @Schema(description = "订单编号")
    private String orderId;
	/**保单编号*/
	@Excel(name = "保单编号", width = 15)
    @Schema(description = "保单编号")
    private String bdOrderNo;
	/**保险名称*/
	@Excel(name = "保险名称", width = 15)
    @Schema(description = "保险名称")
    private String insureName;
    /**
     * 保险封面
     */
    @Excel(name = "保险封面", width = 15)
    @Schema(description = "保险封面")
    private String coverImg;
	/**保险公司*/
	@Excel(name = "保险公司", width = 15)
    @Schema(description = "保险公司")
    private String insureCompany;
	/**保险id*/
	@Excel(name = "保险id", width = 15)
    @Schema(description = "保险id")
    private String insureId;
	/**金额 单位元/人*/
	@Excel(name = "金额 单位元/人", width = 15)
    @Schema(description = "金额 单位元/人")
    private BigDecimal money;
	/**用户编号*/
	@Excel(name = "用户编号", width = 15)
    @Schema(description = "用户编号")
    private String familyMembersId;
    /**
     * 用户名称
     */
    @Excel(name = "用户名称", width = 15)
    @Schema(description = "用户名称")
    private String familyUserName;
    /**
     * 生效开始时间
     */
	@Excel(name = "生效开始时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "生效开始时间")
    private Date assertStartTime;
	/**生效结束时间*/
	@Excel(name = "生效结束时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "生效结束时间")
    private Date assertEndTime;
	/**是否录入系统 0-否 1-是*/
	@Excel(name = "是否录入系统 0-否 1-是", width = 15)
    @Schema(description = "是否录入系统 0-否 1-是")
    private Integer isEnterSystem;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "创建时间")
    private Date createTime;
	/**修改时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "修改时间")
    private Date updateTime;
	/**修改人*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "修改人")
    private Date updateBy;
}
