package com.yiqi.core.domain;

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

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 com.yiqi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yiqi.common.core.domain.BaseEntity;
import lombok.Data;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

/**
 * 门店衣服入厂情况每日统计对象 settlement_store_cloth_statistics
 *
 * @author ruoyi
 * @date 2025-04-09
 */
@ApiModel("门店衣服入厂情况每日统计")
@TableName("settlement_store_cloth_statistics")
@Data
public class SettlementStoreClothStatistics implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @ApiModelProperty("主键ID")
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 工厂ID
     */
    @Excel(name = "工厂ID")
    @ApiModelProperty("工厂ID")
    private Long factoryId;

    /**
     * 门店ID
     */
    @Excel(name = "门店ID")
    @ApiModelProperty("门店ID")
    private Long storeId;

    /**
     * 门店名称
     */
    @Excel(name = "门店名称")
    @ApiModelProperty("门店名称")
    private String storeName;

    /**
     * 结算日期
     */
    @Excel(name = "结算日期")
    @ApiModelProperty("结算日期")
    private Integer day;

    /**
     * 当日入厂衣服金额
     */
    @Excel(name = "当日入厂衣服金额")
    @ApiModelProperty("当日入厂衣服金额")
    private BigDecimal dailyInFactoryAmount;
    /**
     * 收衣订单数
     */
    @Excel(name = "收衣订单数")
    @ApiModelProperty("收衣订单数")
    private Integer receiveOrderCount;

    /**
     * 收衣总件数
     */
    @Excel(name = "收衣总件数")
    @ApiModelProperty("收衣总件数")
    private Integer receiveTotalQuantity;

    /**
     * 收衣订单总金额
     */
    @Excel(name = "收衣订单总金额")
    @ApiModelProperty("收衣订单总金额")
    private BigDecimal receiveTotalAmount;

    /**
     * 收衣未支付订单数
     */
    @Excel(name = "收衣未支付订单数")
    @ApiModelProperty("收衣未支付订单数")
    private Integer receiveUnpaidOrderCount;

    /**
     * 收衣未支付订单金额
     */
    @Excel(name = "收衣未支付订单金额")
    @ApiModelProperty("收衣未支付订单金额")
    private BigDecimal receiveUnpaidAmount;

    /**
     * 取衣订单数
     */
    @Excel(name = "取衣订单数")
    @ApiModelProperty("取衣订单数")
    private Integer pickupOrderCount;

    /**
     * 取衣总件数
     */
    @Excel(name = "取衣总件数")
    @ApiModelProperty("取衣总件数")
    private Integer pickupTotalQuantity;

    /**
     * 取衣订单总金额
     */
    @Excel(name = "取衣订单总金额")
    @ApiModelProperty("取衣订单总金额")
    private BigDecimal pickupTotalAmount;

    /**
     * 取衣已支付订单数
     */
    @Excel(name = "取衣已支付订单数")
    @ApiModelProperty("取衣已支付订单数")
    private Integer pickupPaidOrderCount;

    /**
     * 取衣已支付订单金额
     */
    @Excel(name = "取衣已支付订单金额")
    @ApiModelProperty("取衣已支付订单金额")
    private BigDecimal pickupPaidAmount;

    /**
     * 当日入厂衣服数量
     */
    @Excel(name = "当日入厂衣服数量")
    @ApiModelProperty("当日入厂衣服数量")
    private Integer dailyInFactoryCount;

    /**
     * 当日检查衣服数量
     */
    @Excel(name = "当日检查衣服数量")
    @ApiModelProperty("当日检查衣服数量")
    private Integer dailyCheckedCount;

    /**
     * 当日出厂衣服数量
     */
    @Excel(name = "当日出厂衣服数量")
    @ApiModelProperty("当日出厂衣服数量")
    private Integer dailyOutFactoryCount;

    /**
     * 当日撤衣服数量
     */
    @Excel(name = "当日撤衣服数量")
    @ApiModelProperty("当日撤衣服数量")
    private Integer dailyRefundCount;

    /**
     * 当日撤衣服金额
     */
    @Excel(name = "当日撤衣服金额")
    @ApiModelProperty("当日撤衣服金额")
    private BigDecimal dailyRefundAmount;

    /**
     * 当日实际结算金额
     */
    @Excel(name = "当日实际结算金额")
    @ApiModelProperty("当日实际结算金额")
    private BigDecimal dailyActualSettlementAmount;


    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
}
