package com.neusoft.smart.pos.dto.trade.response;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @author zcf
 * @date 2018-02-28 16：20
 * @description 商户未结算信息查询使用Response
 */
@Data
@ApiModel
@NoArgsConstructor
public class GetNoAcceptBillNumbersResponse implements Serializable {
    
    @ApiModelProperty(name = "billNumberList", value = "账单周期列表", dataType = "list")
    private List<BillNumber> billCycleList = new ArrayList<>();
    
    @Data
    @ApiModel
    public static class BillNumber {
    
        @ApiModelProperty(name = "orgId", value = "集团ID", dataType = "String")
        private Integer orgId;      //集团ID
        
        @ApiModelProperty(name = "shopId", value = "门店ID", dataType = "String")
        private Integer shopId;     //门店ID
        
        @ApiModelProperty(name = "billNumber", value = "账单周期编号", dataType = "String")
        private String billNumber;  //账期编号(根据结算周期命名20181031)
        
        @ApiModelProperty(name = "billName", value = "账单周期名称", dataType = "String")
        private String billName;    //账期名称(结算周期起止时间命名20181001-20181031)
        
        @ApiModelProperty(name = "billStartTime", value = "账单开始时间", dataType = "long")
        private Long billStartTime; //账单开始时间
        
        @ApiModelProperty(name = "billEndTime", value = "账单结束时间", dataType = "long")
        private Long billEndTime;   //账单结束时间
        
        @ApiModelProperty(name = "cycleType", value = "周期类型", dataType = "String")
        private String cycleType;   //周期类型@1:月结@2:年结@3:季结@4:周结
    
        public void setBillStartTime(Date billStartTime) {
            this.billStartTime = billStartTime.getTime();
        }
    
        public void setBillEndTime(Date billEndTime) {
            this.billEndTime = billEndTime.getTime();
        }
    }
}