package com.sunxung.factoring.entity.invoicemanage;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sunxung.factoring.entity.BaseEntity;
import com.sunxung.factoring.entity.customerinformation.Customer;

/**
 * @Description : 核心企业开票信息Vo
 * @Author : L.Jia
 * @Date: 2023-03-08 16:07
 */
@TableName("c_invoice_customer_info")
public class InvoiceCustomerInfo extends BaseEntity {

    /**
     * 核心企业Id
     */
    @TableField("customer_id")
    private Long customerId;

    /**
     * 公司名称
     */
    @TableField("enterprise_name")
    private String enterpriseName;

    /**
     * 纳税识别号
     */
    @TableField("social_credit_code")
    private String socialCreditCode;

    /**
     * 地址
     */
    @TableField("address")
    private String address;

    /**
     * 电话
     */
    @TableField("phone_number")
    private String phoneNumber;

    /**
     * 开户行名称
     */
    @TableField("account_bank_name")
    private String accountBankName;

    /**
     * 开户行账号
     */
    @TableField("account_number")
    private String accountNumber;
    /**
     * 备注信息
     */
    @TableField("remark")
    private String remark;

    /**
     * 业务基础信息表id
     */
    @TableField("business_basic_info_id")
    private Long businessBasicInfoId;

    public InvoiceCustomerInfo() {
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public InvoiceCustomerInfo(Customer customer) {
        this.enterpriseName = customer.getEnterpriseName();
        this.socialCreditCode = customer.getSocialCreditCode();
        this.address = customer.getAddress();
        this.phoneNumber = customer.getPhoneNumber();
    }

    public InvoiceCustomerInfo(InvoiceBasicInfo invoiceBasicInfo) {
        this.customerId = invoiceBasicInfo.getEnterpriseCustomerInfoId();
        this.enterpriseName = invoiceBasicInfo.getCompanyName();
        this.socialCreditCode = invoiceBasicInfo.getTaxIdentifyNumber();
        this.address = invoiceBasicInfo.getAddress();
        this.phoneNumber = invoiceBasicInfo.getPhone();
        this.accountBankName = invoiceBasicInfo.getAccountBankName();
        this.accountNumber = invoiceBasicInfo.getAccountNumber();
        this.remark = invoiceBasicInfo.getRemark();
        this.businessBasicInfoId = invoiceBasicInfo.getBusinessBasicInfoId();
    }

    public String getEnterpriseName() {
        return enterpriseName;
    }

    public void setEnterpriseName(String enterpriseName) {
        this.enterpriseName = enterpriseName;
    }

    public String getSocialCreditCode() {
        return socialCreditCode;
    }

    public void setSocialCreditCode(String socialCreditCode) {
        this.socialCreditCode = socialCreditCode;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    public String getAccountBankName() {
        return accountBankName;
    }

    public void setAccountBankName(String accountBankName) {
        this.accountBankName = accountBankName;
    }

    public String getAccountNumber() {
        return accountNumber;
    }

    public void setAccountNumber(String accountNumber) {
        this.accountNumber = accountNumber;
    }

    public Long getCustomerId() {
        return customerId;
    }

    public void setCustomerId(Long customerId) {
        this.customerId = customerId;
    }

    public Long getBusinessBasicInfoId() {
        return businessBasicInfoId;
    }

    public void setBusinessBasicInfoId(Long businessBasicInfoId) {
        this.businessBasicInfoId = businessBasicInfoId;
    }
}
