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.CompanyPaymentAccountCategoryEnum;
import com.xunhong.erp.turbo.api.biz.dto.enums.CompanyPaymentAccountTypeEnum;
import com.xunhong.erp.turbo.api.biz.dto.enums.CompanyPaymentPublicAccountTypeEnum;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

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

	/**
	 * 账户ID
	 */
	private Long accountId;

	/**
	 * 公司ID
	 */
	private Long companyId;

	/**
	 * 账户类别：1_对公账户；2_私人账户
	 */
	private CompanyPaymentAccountCategoryEnum accountCategory;

	/**
	 * 账户类型：1_银行卡；2_支付宝；3_微信
	 */
	private CompanyPaymentAccountTypeEnum accountType;

	/**
	 * 银行名称
	 */
	private String bankName;

	/**
	 * 支行名称
	 */
	private String branchName;

	/**
	 * 对公账户类型：1_基本户；2_一般户；3_专用账户；4_临时户
	 */
	private CompanyPaymentPublicAccountTypeEnum publicAccountType;

	/**
	 * 开户公司名称、支付宝昵称、微信号
	 */
	private String accountName;

	/**
	 * 银行账号、支付宝账号、微信账号
	 */
	private String accountNumber;

	/**
	 * 是否主付款账户：0_否；1_是
	 */
	private Boolean isPrimary;

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

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

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

	private Company company;

}

