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

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

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

/**
 * @author zcf
 * @date 2018-07-02 09：52
 * @description 商户门店交易统计查询使用Response
 */
@ApiModel
@Data
public class GetShopTradeSummaryResponse {

	@ApiModelProperty(name = "shopTradeInfo", value = "门店交易信息列表", dataType = "List")
	public List<ShopTradeInfo> shopTradeInfoList = new ArrayList<>();

	@Data
	@ApiModel
	public static class ShopTradeInfo{
		@ApiModelProperty(name = "shopId", value = "门店Id", dataType = "Integer" ,example="1")
		public Integer shopId;

		@ApiModelProperty(name = "shopName", value = "门店名称", dataType = "String" ,example="门店1")
		public String shopName = "";

		@ApiModelProperty(name = "payAmount", value = "消费金额（元）", dataType = "BigDecimal" ,example="198.22")
		public BigDecimal payAmount = BigDecimal.ZERO;

		@ApiModelProperty(name = "discountAmount", value = "优惠金额（元）", dataType = "BigDecimal" ,example="0.00")
		public BigDecimal discountAmount = BigDecimal.ZERO;

		@ApiModelProperty(name = "payCount", value = "消费笔数", dataType = "Integer" ,example="98")
		public Integer payCount = 0;

		@ApiModelProperty(name = "refundAmount", value = "退款金额（元）", dataType = "BigDecimal" ,example="198.22")
		public BigDecimal refundAmount = BigDecimal.valueOf(0);

		@ApiModelProperty(name = "refundCount", value = "退款笔数", dataType = "Integer" ,example="98")
		public Integer refundCount = 0;

		@ApiModelProperty(name = "amount", value = "实收金额", dataType = "BigDecimal" ,example="198.22")
		public BigDecimal amount = BigDecimal.valueOf(0);

		@ApiModelProperty(name = "rechargeAmount", value = "充值总金额（元）", dataType = "BigDecimal" ,example="198.22")
		public BigDecimal rechargeAmount = BigDecimal.valueOf(0);

		@ApiModelProperty(name = "rechargeCount", value = "充值收单总数（笔）", dataType = "Integer" ,example="98")
		public Integer rechargeCount = 0;
	}
}
