package com.ssm.manage.query;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.ssm.manage.entity.CourseList;
import com.ssm.manage.entity.CourseListVo;
import com.ssm.manage.entity.PayList;
import com.ssm.manage.entity.Salesman;
import com.ssm.manage.page.BasePage;
import com.ssm.manage.utils.DateUtils;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import javax.servlet.http.HttpSession;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Setter
@Getter
@ToString
@JsonIgnoreProperties(ignoreUnknown = true)
public class CourseListRequestNew extends BasePage {
    private Long id;
    private String memberPhone;
    private String memberName;
    private int isSendSms;


// 疗程编码、
// 疗程名称、
// 单次标价、  校验
// 成交单价、  校验
// 最少购买、
// 购买次数、  校验
// 成交金额、  校验
// 待付金额、  校验
// 充值卡付、  校验
// 卡付金额、  校验
// 现付金额、  校验
// 欠款金额、  校验
// 实付金额、  校验

    //疗程集合
    private List<CourseListVo> courseLists;


    /**
     * 疗程总付金额
     */
    private BigDecimal courseAmount;
    private Long storeId;
    private String storeName;
    private Integer isAddition;
    private Date additionDate;




    private String selectDate;

    //支付方式列表
    private List<PayList> payLists;
    //业务员列表
    private List<StaffRequest> staffLists;
//    //充值卡付列表
//    private List<RechargeAccountRequest> rechargeAccountList;
    //门店员工登录账户
    private String staffPhone;



    private String dateStr;


    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startTime;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;


    /**
     * 单据高管管理者
     */
    private List<Salesman> salesmens;

    private HttpSession session;


    private List<Long> storeList;

    /**
     * 查询方式，0=指定查询，1=自动查询
     */
    private Integer selectType;

}
