package cn.lili.modules.store.entity.dos;
|
|
import cn.lili.modules.store.entity.enums.BillStatusEnum;
|
import cn.lili.mybatis.BaseIdEntity;
|
import com.baomidou.mybatisplus.annotation.FieldFill;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
import org.springframework.data.annotation.CreatedDate;
|
import org.springframework.format.annotation.DateTimeFormat;
|
|
import java.util.Date;
|
|
/**
|
* 结算单
|
*
|
* @author Chopper
|
* @since 2020/11/17 4:27 下午
|
*/
|
@Data
|
@TableName("li_bill")
|
@ApiModel(value = "结算单")
|
public class Bill extends BaseIdEntity {
|
|
private static final long serialVersionUID = 1L;
|
|
|
@CreatedDate
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@TableField(fill = FieldFill.INSERT)
|
@ApiModelProperty(value = "创建时间", hidden = true)
|
private Date createTime;
|
|
@ApiModelProperty(value = "账单号")
|
private String sn;
|
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
@ApiModelProperty(value = "结算开始时间")
|
private Date startTime;
|
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
@ApiModelProperty(value = "结算结束时间")
|
private Date endTime;
|
|
|
/**
|
* @see BillStatusEnum
|
*/
|
@ApiModelProperty(value = "状态:OUT(已出账),CHECK(已对账),EXAMINE(已审核),PAY(已付款)")
|
private String billStatus;
|
|
@ApiModelProperty(value = "店铺id")
|
private String storeId;
|
|
@ApiModelProperty(value = "店铺名称")
|
private String storeName;
|
|
@ApiModelProperty(value = "平台付款时间")
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)
|
private Date payTime;
|
|
@ApiModelProperty(value = "银行开户名")
|
private String bankAccountName;
|
|
@ApiModelProperty(value = "公司银行账号")
|
private String bankAccountNumber;
|
|
@ApiModelProperty(value = "开户银行支行名称")
|
private String bankName;
|
|
@ApiModelProperty(value = "支行联行号")
|
private String bankCode;
|
|
@ApiModelProperty(value = "结算周期内订单付款总金额")
|
private Double orderPrice;
|
|
@ApiModelProperty(value = "退单金额")
|
private Double refundPrice;
|
|
@ApiModelProperty(value = "平台收取佣金")
|
private Double commissionPrice;
|
|
@ApiModelProperty(value = "退单产生退还佣金金额")
|
private Double refundCommissionPrice;
|
|
@ApiModelProperty(value = "分销返现支出")
|
private Double distributionCommission;
|
|
@ApiModelProperty(value = "分销订单退还,返现佣金返还")
|
private Double distributionRefundCommission;
|
|
@ApiModelProperty(value = "平台优惠券补贴")
|
private Double siteCouponCommission;
|
|
@ApiModelProperty(value = "退货平台优惠券补贴返还")
|
private Double siteCouponRefundCommission;
|
|
@ApiModelProperty(value = "积分商品结算价格")
|
private Double pointSettlementPrice;
|
|
@ApiModelProperty(value = "退货积分补贴返还")
|
private Double pointRefundSettlementPrice;
|
|
@ApiModelProperty(value = "砍价商品结算价格")
|
private Double kanjiaSettlementPrice;
|
|
@ApiModelProperty(value = "退货砍价补贴返还")
|
private Double kanjiaRefundSettlementPrice;
|
|
|
|
/**
|
* 开始算钱啦
|
* billPrice(最终结算金额) =
|
* orderPrice(结算周期内订单付款总金额) - refundPrice(退单金额)
|
* - commissionPrice(平台收取佣金) + refundCommissionPrice(退单产生退还佣金金额)
|
* - distributionCommission(分销返现支出) + distributionRefundCommission(分销订单退还,返现佣金返还)
|
* + siteCouponCommission(平台优惠券补贴) - siteCouponRefundCommission(退货平台优惠券补贴返还)
|
* + kanjiaSettlementPrice(砍价商品结算价格) + pointSettlementPrice(pointSettlementPrice)
|
*/
|
@ApiModelProperty(value = "最终结算金额")
|
private Double billPrice;
|
|
|
}
|