package com.ssm.manage.query;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * (ClockServic)实体类
 *
 * @author makejava
 * @since 2022-04-14 16:17:55
 */
@Setter
@Getter
@ToString
@JsonIgnoreProperties(ignoreUnknown = true)
public class ClockServiceRequest implements Serializable {
    private static final long serialVersionUID = 633989251767954209L;
    /**
     * id
     */
    @Id
    private Long id;
    /**
     * 房间id
     */
    @Column(name = "room_id")
    private Long roomId;
    /**
     * 房间id
     */
    @Column(name = "room_num")
    private String roomNum;
    /**
     * 房间名称
     */
    @Column(name = "room_name")
    private String roomName;
    /**
     * 房间手牌(床位)id
     */
    @Column(name = "room_hand_id")
    private Long roomHandId;
    /**
     * 手牌序号
     */
    @Column(name = "order")
    private Integer order;
    /**
     * 服务开始时间（上钟）
     */
    @Column(name = "service_start_date")
    private Date serviceStartDate;
    /**
     * 服务结束时间（下钟）
     */
    @Column(name = "service_end_date")
    private Date serviceEndDate;
    /**
     * 项目编码
     */
    @Column(name = "project_id")
    private Long projectId;
    /**
     * 项目名称
     */
    @Column(name = "project_name")
    private String projectName;
    /**
     * 门店编码
     */
    @Column(name = "store_id")
    private Long storeId;
    /**
     * 门店名称
     */
    @Column(name = "store_name")
    private String storeName;
    /**
     * 大工现付业绩标准
     */
    @Column(name = "achievement_large")
    private BigDecimal achievementLarge;
    /**
     * 中工现付业绩标准
     */
    @Column(name = "achievement_zhonggong")
    private BigDecimal achievementZhonggong;
    /**
     * 技师现付业绩标准
     */
    @Column(name = "achievement_technician")
    private BigDecimal achievementTechnician;
    /**
     * 助理现付业绩标准
     */
    @Column(name = "achievement_small")
    private BigDecimal achievementSmall;
    /**
     * 大工现付提成标准
     */
    @Column(name = "commission_large")
    private BigDecimal commissionLarge;
    /**
     * 中工现付提成标准
     */
    @Column(name = "commission_zhonggong")
    private BigDecimal commissionZhonggong;
    /**
     * 技师现付提成标准
     */
    @Column(name = "commission_technician")
    private BigDecimal commissionTechnician;
    /**
     * 助理现付提成标准
     */
    @Column(name = "commission_small")
    private BigDecimal commissionSmall;
    /**
     * 卡付大工业绩标准
     */
    @Column(name = "card_achievement_large")
    private BigDecimal cardAchievementLarge;
    /**
     * 卡付中工业绩标准
     */
    @Column(name = "card_achievement_zhonggong")
    private BigDecimal cardAchievementZhonggong;
    /**
     * 卡付技师业绩标准
     */
    @Column(name = "card_achievement_technician")
    private BigDecimal cardAchievementTechnician;
    /**
     * 卡付助理业绩标准
     */
    @Column(name = "card_achievement_small")
    private BigDecimal cardAchievementSmall;
    /**
     * 卡付大工提成标准
     */
    @Column(name = "card_commission_large")
    private BigDecimal cardCommissionLarge;
    /**
     * 卡付中工提成标准
     */
    @Column(name = "card_commission_zhonggong")
    private BigDecimal cardCommissionZhonggong;
    /**
     * 卡付技师提成标准
     */
    @Column(name = "card_commission_technician")
    private BigDecimal cardCommissionTechnician;
    /**
     * 卡付助理提成标准
     */
    @Column(name = "card_commission_ssmall")
    private BigDecimal cardCommissionSmall;
    /**
     * 技师1水牌号
     */
    @Column(name = "technician_one_number")
    private String technicianOneNumber;
    /**
     * 技师1编码（来源于员工档案）
     */
    @Column(name = "service_technician_one_staffId")
    private Long serviceTechnicianOneStaffId;
    /**
     * 技师1名称（来源于员工档案）
     */
    @Column(name = "service_technician_one_staff_name")
    private String serviceTechnicianOneStaffName;
    /**
     * 技师1身份证号（来源于员工档案）
     */
    @Column(name = "service_technician_one_identity_card")
    private String serviceTechnicianOneIdentityCard;
    /**
     * 技师1业绩
     */
    @Column(name = "service_technician_one_achievement_amount")
    private BigDecimal serviceTechnicianOneAchievementAmount;
    /**
     * 技师1提成
     */
    @Column(name = "service_technician_one_commission_amount")
    private BigDecimal serviceTechnicianOneCommissionAmount;
    /**
     * 技师1占比
     */
    @Column(name = "service_technician_one_ratio")
    private BigDecimal serviceTechnicianOneRatio;
    /**
     * 状态：0=服务中，1=已经结算(正常单据)，2=作废
     */
    @Column(name = "state")
    private Integer state;
    /**
     * 单据日期
     */
    @Column(name = "doc_date")
    private Date docDate;

    /**
     * 服务时长（时分秒）
     */
    @Column(name = "servicing_time")
    private String servicingTime;

    /**
     * 服务时长（时分秒）
     */
    @Column(name = "practical_servicing_time")
    private String practicalServicingTime;

    /**
     * 加钟（0=正常，1=加钟）
     */
    @Column(name = "renew")
    private Integer renew;

    /**
     * 会员消费是否打折
     */
    @Column(name = "no_discount")
    private Integer noDiscount;

    /**
     * 会员消费是否打折
     */
    @Column(name = "course_account_id")
    private Long courseAccountId;
}

