package com.starry.admin.modules.clerk.module.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.starry.common.domain.BaseEntity;
import java.math.BigDecimal;
import java.time.LocalDate;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 店员工资结算信息对象 play_clerk_wages_info
 *
 * @author admin
 * @since 2024-05-31
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("play_clerk_wages_info")
public class PlayClerkWagesInfoEntity extends BaseEntity<PlayClerkWagesInfoEntity> {

    /**
     * UUID
     */
    private String id;

    /**
     * 租户ID
     */
    private String tenantId;

    /**
     * 店员ID
     */
    private String clerkId;

    /**
     * 是否为往期统计(1:是;0:不是)
     **/
    private String historicalStatistics;

    /**
     * 统计序号
     */
    private Long serialNumber;

    /**
     * 排行序号
     */
    private Long rankingIndex;

    /**
     * 开始统计时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDate startCountDate;

    /**
     * 结束统计时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDate endCountDate;

    /**
     * 结算时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDate settlementDate;

    /**
     * 订单总数
     */
    private Integer orderNumber;

    /**
     * 订单金额
     */
    private BigDecimal finalAmount;

    /**
     * 续单数
     */
    private Integer orderContinueNumber;

    /**
     * 续单比例
     */
    private double orderContinueProportion = 0.0;

    /**
     * 续单金额
     */
    private BigDecimal orderContinueMoney;

    /**
     * 超时未接单数
     */
    private Integer ordersExpiredNumber;

    /**
     * 店员收入
     */
    private BigDecimal estimatedRevenue;

}
