package com.xunhong.erp.turbo.biz.domain.entity;

import com.alibaba.cola.domain.Entity;
import com.alibaba.cola.dto.DTO;
import com.xunhong.erp.turbo.api.biz.dto.enums.DealerTypeEnum;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @author shenyifei
 */
@Data
@Entity
@EqualsAndHashCode(callSuper = true)
public class Dealer extends DTO {

	/**
	 * 经销商ID
	 */
	private Long dealerId;

	/**
	 * 经销商简称
	 */
	private String shortName;

	/**
	 * 经销商全称
	 */
	private String fullName;

	/**
	 * 经销商类型：1_市场；2_超市；
	 */
	private DealerTypeEnum dealerType;

	/**
	 * 是否开启分成
	 */
	private Boolean enableShare;

	/**
	 * 是否可调整比例
	 */
	private Boolean shareAdjusted;

	/**
	 * 分成比例
	 */
	private BigDecimal shareRatio;

	/**
	 * 运费是否作为成本
	 */
	private Boolean freightCostFlag;

	/**
	 * 草帘是否作为成本
	 */
	private Boolean strawMatCostFlag;

	/**
	 * 发货单合计金额是否含包装费
	 */
	private Boolean includePackingFlag;

	/**
	 * 发货单合计金额是否含包运费
	 */
	private Boolean includeFreightFlag;

	/**
	 * 应收金额
	 */
	private BigDecimal receivable;

	/**
	 * 备注
	 */
	private String remark;

	/**
	 * 状态：1_启用；0_禁用；
	 */
	private Boolean status;

	/**
	 * 发货模板
	 */
	private String deliveryTemplate;

	/**
	 * 排序
	 */
	private BigDecimal sort;

	/**
	 * 创建时间
	 */
	private LocalDateTime createdAt;

	/**
	 * 经销商账户列表
	 */
	private List<DealerPaymentAccount> dealerPaymentAccountList;

	/**
	 * 是否开启计提税金
	 */
	private Boolean enableAccrualTax;

	/**
	 * 计提税金比例
	 */
	private BigDecimal accrualTaxRatio;

	/**
	 * 是否开启公司返点
	 */
	private Boolean enableCompanyRebate;

	/**
	 * 公司返点比例
	 */
	private BigDecimal companyRebateRatio;

	/**
	 * 是否开启损耗
	 */
	private Boolean enableLoss;

	/**
	 * 损耗金额
	 */
	private BigDecimal lossAmount;

}
