package org.springblade.modules.finance.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.common.base.BaseEntity;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 商品订单表实体类
 *
 * @author zzyd
 * @since 2024-07-17
 */
@Data
@TableName("t_order_goods")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "OrderGoods对象", description = "商品订单表")
public class OrderGoods extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	* 订单id
	*/
	@ApiModelProperty(value = "订单id")
	private Long orderId;
	/**
	 * 订单id
	 */
	@ApiModelProperty(value = "订单编号")
	@TableField(exist = false)
	private String orderNo;
	/**
	* 商品id
	*/
	@ApiModelProperty(value = "商品id")
	private Long goodsId;
	/**
	* 商品数量
	*/
	@ApiModelProperty(value = "商品数量")
	private Integer goodsNum;
	/**
	* 商品名称
	*/
	@ApiModelProperty(value = "商品名称")
	private String goodsName;
	/**
	* 商品价格
	*/
	@ApiModelProperty(value = "商品价格")
	private BigDecimal goodsPrice;
	/**
	* 商品图片
	*/
	@ApiModelProperty(value = "商品图片")
	private String goodsImage;
	/**
	* 商品编号
	*/
	@ApiModelProperty(value = "商品编号")
	private String goodsNo;
	/**
	* 门店id
	*/
	@ApiModelProperty(value = "门店id")
	private Long shopId;
	/**
	* 门店名称
	*/
	@ApiModelProperty(value = "门店名称")
	private String storeName;
	/**
	* 设备id
	*/
	@ApiModelProperty(value = "设备id")
	private Long deviceId;
	/**
	* 商家id
	*/
	@ApiModelProperty(value = "商家id")
	private Long merchantId;
	/**
	* 用户id
	*/
	@ApiModelProperty(value = "用户id")
	private Long userId;
	/**
	* 货道id
	*/
	@ApiModelProperty(value = "货道id")
	private Long cargoWayId;
	/**
	 * 货道id
	 */
	@ApiModelProperty(value = "货道编号")
	private String cargoWayNo;
	/**
	* 出货时间
	*/
	@ApiModelProperty(value = "出货时间")
	private LocalDateTime shippingTime;

    //售后字段
	@ApiModelProperty(value = "是否售后")
	private Integer isAfterSales;

	@ApiModelProperty(value = "售后商品数量")
	private Integer afterSalesGoodsNum;

	@ApiModelProperty(value = "退款商品总数量")
	private Integer refundGoodsNumTotal;

	@ApiModelProperty(value = "是否退款")
	private Integer isRefund;

	@TableField(exist = false)
	@ApiModelProperty(value = "售后数量")
	private Integer refundGoodsNum;

}
