package cn.superdesk.uniorder.dto.vo._dashboard;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: Java类作用描述
 * @Author: linjinyu
 * @CreateDate: 2021/9/23 下午3:18
 * @UpdateUser: linjinyu
 * @UpdateDate: 2021/9/23 下午3:18
 * @UpdateRemark: 修改内容
 * @Version: 1.0
 */
@Data
public class TvHeadDataVo implements Serializable {

	@ApiModelProperty("项目数 项目Id作为统计维度")
	private Long orgCount;
	@ApiModelProperty("项目数 项目名称作为统计维度")
	private Long orgNameCount;
	@ApiModelProperty("企业数")
	private Long virtCount;


	@ApiModelProperty("累计项目数 项目Id作为统计维度")
	private Long registerOrgCount;
	@ApiModelProperty("累计企业数")
	private Long registerVirtCount;


	@ApiModelProperty("用户数(下单人Id维度统计)")
	private Long userCount;

	@ApiModelProperty("用户数(累计服务客户(目前三个外调接口获取 服务之窗 福利商城 福利商城(侨城汇)))")
	private Long registerUserCount;
	@ApiModelProperty("用户数(累计服务客户(后端外调接口获取 服务之窗))")
	private Long registerUserSuperCount;
	private Date registerUserSuperCallTime;
	@ApiModelProperty("用户数(累计服务客户(后端外调接口获取 福利商城))")
	private Long registerUserFlscCount;
	private Date registerUserFlscCallTime;
	@ApiModelProperty("用户数(累计服务客户(后端外调接口获取 福利商城(侨城汇)))")
	private Long registerUserFlscQchCount;
	private Date registerUserFlscQchCallTime;

	@ApiModelProperty("订单数")
	private Long orderCount;

	@ApiModelProperty("订单维度统计 销售金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal orderAmountSumIf;
	@ApiModelProperty("订单维度统计 销售金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal orderAmount;
	@ApiModelProperty("订单维度统计 成本金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal orderCostAmount;

	@ApiModelProperty("订单维度统计 运费")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal orderTransportAmount;

	@ApiModelProperty("订单维度统计 退单销售金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal orderRefundAmount;
	@ApiModelProperty("订单维度统计 退单成本金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal orderRefundCostAmount;

	@ApiModelProperty("商品维度统计 销售销售金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal goodsAmount;
	@ApiModelProperty("商品维度统计 销售成本金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal goodsCostAmount;

	@ApiModelProperty("商品维度统计 运费")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal goodsTransportAmount;

	@ApiModelProperty("商品维度统计 退货销售金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal goodsRefundAmount;
	@ApiModelProperty("商品维度统计 退货成本金额")
	//@JsonDeserialize(using = BigDecimalScale2ConvertDeserializer.class)
	//@JsonSerialize(using = BigDecimalScale2ConvertSerializer.class)
	private BigDecimal goodsRefundCostAmount;

	/****************************************** 添加两个冗余的 start ******************************************/

//	@JsonDeserialize(include = JsonInclude.Include.NON_EMPTY)
	@JsonProperty(access = JsonProperty.Access.READ_ONLY)
	@ApiModelProperty("冗余 统一订单")
	private TvHeadDataVo uniTvHeadDataVo;

	@JsonProperty(access = JsonProperty.Access.READ_ONLY)
	@ApiModelProperty("冗余 侨城汇")
	private TvHeadDataVo octTvHeadDataVo;


}
