/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.sing.goods.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import org.springblade.common.enums.AppConstant;
import org.springblade.core.mp.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.springblade.sing.goods.enums.GoodsRecordType;

/**
 * 商品记录实体类
 *
 * @author BladeX
 * @since 2021-11-23
 */
@Data
@TableName("sing_goods_order")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "GoodsOrder对象", description = "商品记录")
public class GoodsOrder extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	* 用户id
	*/
		@ApiModelProperty(value = "用户id")
		private Long userId;
	/**
	* 积分商品ID
	*/
		@ApiModelProperty(value = "积分商品ID")
		private Long pointGoodsId;
	/**
	* 收获地址ID
	*/
		@ApiModelProperty(value = "收获地址ID")
		private Long addressId;
	/**
	* 兑换数量
	*/
		@ApiModelProperty(value = "兑换数量")
		private Integer num;

	/**
	* 类型
	*/
		@ApiModelProperty(value = "类型")
		private GoodsRecordType type;
	/**
	* 商品状态
	*/
		@ApiModelProperty(value = "商品状态")
		private AppConstant.GOODS_STATUS goodsStatus;
	/**
	* 物流单号
	*/
		@ApiModelProperty(value = "物流单号")
		private String trackingNumber;
	/**
	* 物流公司
	*/
		@ApiModelProperty(value = "物流公司")
		private String trackingName;
	/**
	* 物流公司编号
	*/
		@ApiModelProperty(value = "物流公司编号")
		private String shipperCode;
	/**
	* 使用积分
	*/
		@ApiModelProperty(value = "使用积分")
		private BigDecimal usePoint;
	/**
	* 现金
	*/
		@ApiModelProperty(value = "现金")
		private BigDecimal cash;
	/**
	* 地址
	*/
		@ApiModelProperty(value = "地址")
		private String address;
	/**
	* 收货人
	*/
		@ApiModelProperty(value = "收货人")
		private String consignee;
	/**
	* 商品价格
	*/
		@ApiModelProperty(value = "商品价格")
		private BigDecimal goodsPoint;
	/**
	* 电话
	*/
		@ApiModelProperty(value = "电话")
		private String phone;
	/**
	* 商品图片
	*/
		@ApiModelProperty(value = "商品图片")
		private String goodsImgUrl;
	/**
	* 商品名
	*/
		@ApiModelProperty(value = "商品名")
		private String goodsName;
	/**
	 * 活动id
	 */
	@ApiModelProperty(value = "活动id")
	private Long activeId;

}
