package com.cyksj.model.views;

import com.cyksj.model.entity.GoodsDon;
import com.cyksj.model.entity.GroupsRelation;
import com.ejlchina.searcher.bean.DbField;
import com.ejlchina.searcher.bean.DbIgnore;
import com.ejlchina.searcher.bean.SearchBean;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/*
 *项目名: netflix
 *文件名: GroupsRelationRechargeView
 *创建者: JavaZou
 *创建时间:2023/7/13 13:38
 *
 */
@Getter
@Setter
@SearchBean(tables = "groups_relation gr left join groups_trips gt on gt.id = gr.groups_id" +
		" left join goods_don_sku gdk on gdk.id = gt.sku_id " +
		" left join goods_don g on g.id = gdk.goods_id" +
		" left join user u on u.id = gr.user_id",
		where = ":errorInfo:")
public class GroupsRelationRechargeView {

	@DbField("gr.id")
	private Long relationId;

	@DbField("gr.user_id")
	private Long userId;

	@DbField("gr.status")
	private GroupsRelation.Status status;

	@DbField("u.nickname")
	private String nickname;

	@DbField("gr.account")
	private String account;

	@DbField("gr.password")
	private String password;

	@DbField("gr.operator")
	private String operator;

	@DbField("gr.submit_time")
	private Date submitTime;

	@DbField("gr.send_time")
	private Date sendTime;

	@DbField("gr.expiry_time")
	private Date expiryTime;

	@DbField("gr.recharge_status")
	private GroupsRelation.RechargeStatus rechargeStatus;

	@DbField("gr.recharge_error_info")
	private String rechargeErrorInfo;

	/***
	 * 代充次数
	 */
	@DbField("gr.recharge_num")
	private Integer rechargeNum;

	/**
	 * 代充剩余次数
	 */
	@DbField("gr.recharge_remain_num")
	private Integer rechargeRemainNum;

	/**
	 * 代充任务id
	 */
	@DbField("gr.gpt_task_id")
	private String gptTaskId;

	/**
	 * 代充token
	 */
	@DbField("gr.gpt_token")
	private String gptToken;

	/**
	 * 家庭组邀请链接
	 */
	@DbField("gr.invite_link")
	private String inviteLink;

	/**
	 * 联系方式
	 */
	@DbField("gr.contact")
	private String contact;

	/**
	 * 备用验证码
	 */
	@DbField("gr.bp_verify_code")
	private String bpVerifyCode;

	@DbField("g.id")
	private Long goodsId;

	@DbField("g.title")
	private String title;

	@DbField("gdk.id")
	private Long skuId;

	@DbField("gdk.spec_val")
	private String specVal;

	/**
	 * 座位数
	 */
	@DbField("gdk.num")
	private Integer skuNUm;

	@DbField("g.special_type")
	private GoodsDon.SpecialType specialType;

	@DbIgnore
	private String orderNo;
}
