package com.ym.mec.biz.dal.entity;

import com.ym.mec.auth.api.entity.SysUser;
import com.ym.mec.biz.dal.enums.YesOrNoEnum;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;

import com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus;

import java.util.Date;

/**
 * 对应数据库表(music_group_payment_calender_detail):
 */
public class MusicGroupPaymentCalenderDetail {

	/**  */
	private Long id;
	
	/**  */
	private Long musicGroupPaymentCalenderId;
	
	/**  */
	private Integer userId;
	
	/**  */
	private java.math.BigDecimal expectAmount;
	
	/**  */
	private java.math.BigDecimal actualAmount;
	
	/**  */
	private PaymentStatus paymentStatus;
	
	/**  */
	private String userStatus;

	/**  */
	private String musicGroupId;

	/**1是0否  */
	private Integer open;

	/**1是0否  */
	private YesOrNoEnum openFlag;
	
	/**  */
	private java.util.Date payTime;

	/**  */
	private java.util.Date startPaymentDate;

	/**  */
	private java.util.Date deadlinePaymentDate;

	/**  */
	private java.util.Date startPaymentDateMgpc;

	/**  */
	private java.util.Date deadlinePaymentDateMgpc;

	@ApiModelProperty(value = "订单编号",required = true)
	private Long paymentOrderId;

	/**  */
	private java.util.Date updateTime;
	
	/**  */
	private java.util.Date createTime;

	private Integer useInCourse;
	
	private Integer responsibleUserId;
	
	private String responsibleRecord;

	private SysUser sysUser = new SysUser();
	
	private SysUser responsible = new SysUser();

	public Date getStartPaymentDateMgpc() {
		return startPaymentDateMgpc;
	}

	public void setStartPaymentDateMgpc(Date startPaymentDateMgpc) {
		this.startPaymentDateMgpc = startPaymentDateMgpc;
	}

	public Date getDeadlinePaymentDateMgpc() {
		return deadlinePaymentDateMgpc;
	}

	public void setDeadlinePaymentDateMgpc(Date deadlinePaymentDateMgpc) {
		this.deadlinePaymentDateMgpc = deadlinePaymentDateMgpc;
	}

	public YesOrNoEnum getOpenFlag() {
		return openFlag;
	}

	public void setOpenFlag(YesOrNoEnum openFlag) {
		this.openFlag = openFlag;
	}

	private StudentRegistration studentRegistration = new StudentRegistration();

	public String getMusicGroupId() {
		return musicGroupId;
	}

	public void setMusicGroupId(String musicGroupId) {
		this.musicGroupId = musicGroupId;
	}

	public Date getStartPaymentDate() {
		return startPaymentDate;
	}

	public void setStartPaymentDate(Date startPaymentDate) {
		this.startPaymentDate = startPaymentDate;
	}

	public Date getDeadlinePaymentDate() {
		return deadlinePaymentDate;
	}

	public void setDeadlinePaymentDate(Date deadlinePaymentDate) {
		this.deadlinePaymentDate = deadlinePaymentDate;
	}

	public Integer getOpen() {
		return open;
	}

	public void setOpen(Integer open) {
		this.open = open;
	}

	public StudentRegistration getStudentRegistration() {
		return studentRegistration;
	}

	public void setStudentRegistration(StudentRegistration studentRegistration) {
		this.studentRegistration = studentRegistration;
	}

	public SysUser getSysUser() {
		return sysUser;
	}

	public void setSysUser(SysUser sysUser) {
		this.sysUser = sysUser;
	}

	public void setId(Long id){
		this.id = id;
	}
	
	public Long getId(){
		return this.id;
	}
			
	public void setMusicGroupPaymentCalenderId(Long musicGroupPaymentCalenderId){
		this.musicGroupPaymentCalenderId = musicGroupPaymentCalenderId;
	}
	
	public Long getMusicGroupPaymentCalenderId(){
		return this.musicGroupPaymentCalenderId;
	}

	public Long getPaymentOrderId() {
		return paymentOrderId;
	}

	public void setPaymentOrderId(Long paymentOrderId) {
		this.paymentOrderId = paymentOrderId;
	}

	public void setUserId(Integer userId){
		this.userId = userId;
	}
	
	public Integer getUserId(){
		return this.userId;
	}
			
	public void setExpectAmount(java.math.BigDecimal expectAmount){
		this.expectAmount = expectAmount;
	}
	
	public java.math.BigDecimal getExpectAmount(){
		return this.expectAmount;
	}
			
	public void setActualAmount(java.math.BigDecimal actualAmount){
		this.actualAmount = actualAmount;
	}
	
	public java.math.BigDecimal getActualAmount(){
		return this.actualAmount;
	}
			
	public void setPaymentStatus(PaymentStatus paymentStatus){
		this.paymentStatus = paymentStatus;
	}
	
	public PaymentStatus getPaymentStatus(){
		return this.paymentStatus;
	}
			
	public void setUserStatus(String userStatus){
		this.userStatus = userStatus;
	}
	
	public String getUserStatus(){
		return this.userStatus;
	}
			
	public void setPayTime(java.util.Date payTime){
		this.payTime = payTime;
	}
	
	public java.util.Date getPayTime(){
		return this.payTime;
	}
			
	public void setUpdateTime(java.util.Date updateTime){
		this.updateTime = updateTime;
	}
	
	public java.util.Date getUpdateTime(){
		return this.updateTime;
	}
			
	public void setCreateTime(java.util.Date createTime){
		this.createTime = createTime;
	}
	
	public java.util.Date getCreateTime(){
		return this.createTime;
	}

	public Integer getUseInCourse() {
		return useInCourse;
	}

	public void setUseInCourse(Integer useInCourse) {
		this.useInCourse = useInCourse;
	}

	public Integer getResponsibleUserId() {
		return responsibleUserId;
	}

	public void setResponsibleUserId(Integer responsibleUserId) {
		this.responsibleUserId = responsibleUserId;
	}

	public String getResponsibleRecord() {
		return responsibleRecord;
	}

	public void setResponsibleRecord(String responsibleRecord) {
		this.responsibleRecord = responsibleRecord;
	}

	public SysUser getResponsible() {
		return responsible;
	}

	public void setResponsible(SysUser responsible) {
		this.responsible = responsible;
	}

	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}

}
