package com.maintain.business.domain;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.maintain.common.core.domain.BaseEntity;

/**
 * 结算维修单对象 erp_settlement_maintain
 *
 * @author liushuai
 * @date 2025-04-03
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("erp_settlement_maintain")
public class ErpSettlementMaintain extends BaseEntity {

    private static final long serialVersionUID=1L;

    /**
     * 主键
     */
    @TableId(value = "id")
    private Long id;
    /**
     * 结算单号
     */
    private String settlementNumber;
    /**
     * 客户ID
     */
    private Long clientId;
    /**
     * 客户名称
     */
    private String clientName;
    /**
     * 客户手机号
     */
    private String clientPhone;
    /**
     * 客户类型（1个人 2企业）
     */
    private Integer clientType;
    /**
     * 证件类型（1居民身份证 2纳税识别号）
     */
    private Integer clientCertificateType;
    /**
     * 证件号
     */
    private String clientCertificateNumber;
    /**
     * 工时费优惠
     */
    private BigDecimal manHourDiscountMoney;
    /**
     * 原料费优惠
     */
    private BigDecimal materialDiscountMoney;
    /**
     * 结算时间
     */
    private Date settlementTime;
    /**
     * 支付方式（1支付宝 2微信）
     */
    private Integer paymentMethod;
    /**
     * 付款账号
     */
    private String paymentAccount;
    /**
     * 付款账号名称
     */
    private String paymentAccountName;
    /**
     * 付款凭证
     */
    private String paymentVoucher;
    /**
     * 结算单备注
     */
    private String settlementRemark;
    /**
     * 应收金额
     */
    private BigDecimal receivableMoney;
    /**
     * 实际金额
     */
    private BigDecimal practicalMoney;
    /**
     * 收款时间
     */
    private Date collectionTime;
    /**
     * 收款回执
     */
    private String collectionVoucher;
    /**
     * 收款账号
     */
    private String collectionAccount;
    /**
     * 收款流水号
     */
    private String collectionSerialNumber;
    /**
     * 收款备注
     */
    private String collectionRemark;
    /**
     * 结算状态（1未确认 2已确认）
     */
    private Integer state;
    /**
     * 创建部门（数据权限）
     */
    private Long createDeptId;

}
