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

import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.util.Date;

import org.apache.commons.lang3.builder.ToStringBuilder;

import com.ym.mec.auth.api.entity.SysUser;
import com.ym.mec.common.entity.BaseEntity;

/**
 * 对应数据库表(music_group_quit):
 */
public class MusicGroupQuit extends BaseEntity {

	/**  */
	private Long id;

	/** 用户编号 */
	private Integer userId;

	/** 乐团编号 */
	private String musicGroupId;

	/** 加入时间 */
	private java.util.Date joinDate;

	/** 退出时间 */
	private java.util.Date quitDate;

	/**  */
	private java.util.Date createTime;
	
	private String userComment;

	/** 原因 */
	private String reason;

	private ApprovalStatus status;
	
	private Integer applyUserId;

	private String applyUserName;
	
	private Boolean isVisit;
	
	private Date visitTime;
	
	private String feeJson;
	
	private BigDecimal returnTotalFee;
	
	private String currentApproveRole;
	
	private SysUser user = new SysUser();
	
	private MusicGroup musicGroup = new MusicGroup();
	
	private MusicGroupReturnFeeDto returnFeeDto;

	@ApiModelProperty(value = "是否有乐保",required = false)
	private Boolean hasMaintenance = false;

	@ApiModelProperty(value = "云教练金额",required = false)
	private BigDecimal cloudTeacherAmount = BigDecimal.ZERO;

	public String getApplyUserName() {
		return applyUserName;
	}

	public void setApplyUserName(String applyUserName) {
		this.applyUserName = applyUserName;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Long getId() {
		return this.id;
	}

	public void setUserId(Integer userId) {
		this.userId = userId;
	}

	public Integer getUserId() {
		return this.userId;
	}

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

	public String getMusicGroupId() {
		return this.musicGroupId;
	}

	public void setJoinDate(java.util.Date joinDate) {
		this.joinDate = joinDate;
	}

	public java.util.Date getJoinDate() {
		return this.joinDate;
	}

	public void setQuitDate(java.util.Date quitDate) {
		this.quitDate = quitDate;
	}

	public java.util.Date getQuitDate() {
		return this.quitDate;
	}

	public void setCreateTime(java.util.Date createTime) {
		this.createTime = createTime;
	}

	public java.util.Date getCreateTime() {
		return this.createTime;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}

	public String getReason() {
		return this.reason;
	}

	public String getUserComment() {
		return userComment;
	}

	public void setUserComment(String userComment) {
		this.userComment = userComment;
	}

	public ApprovalStatus getStatus() {
		return status;
	}

	public void setStatus(ApprovalStatus status) {
		this.status = status;
	}

	public SysUser getUser() {
		return user;
	}

	public void setUser(SysUser user) {
		this.user = user;
	}

	public MusicGroup getMusicGroup() {
		return musicGroup;
	}

	public void setMusicGroup(MusicGroup musicGroup) {
		this.musicGroup = musicGroup;
	}

	public Integer getApplyUserId() {
		return applyUserId;
	}

	public void setApplyUserId(Integer applyUserId) {
		this.applyUserId = applyUserId;
	}

	public Boolean getIsVisit() {
		return isVisit;
	}

	public void setIsVisit(Boolean isVisit) {
		this.isVisit = isVisit;
	}

	public Date getVisitTime() {
		return visitTime;
	}

	public void setVisitTime(Date visitTime) {
		this.visitTime = visitTime;
	}

	public String getFeeJson() {
		return feeJson;
	}

	public void setFeeJson(String feeJson) {
		this.feeJson = feeJson;
	}

	public String getCurrentApproveRole() {
		return currentApproveRole;
	}

	public void setCurrentApproveRole(String currentApproveRole) {
		this.currentApproveRole = currentApproveRole;
	}

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

	public Boolean getHasMaintenance() {
		return hasMaintenance;
	}

	public void setHasMaintenance(Boolean hasMaintenance) {
		this.hasMaintenance = hasMaintenance;
	}

	public BigDecimal getCloudTeacherAmount() {
		return cloudTeacherAmount;
	}

	public void setCloudTeacherAmount(BigDecimal cloudTeacherAmount) {
		this.cloudTeacherAmount = cloudTeacherAmount;
	}

	public MusicGroupReturnFeeDto getReturnFeeDto() {
		return returnFeeDto;
	}

	public void setReturnFeeDto(MusicGroupReturnFeeDto returnFeeDto) {
		this.returnFeeDto = returnFeeDto;
	}

	public BigDecimal getReturnTotalFee() {
		return returnTotalFee;
	}

	public void setReturnTotalFee(BigDecimal returnTotalFee) {
		this.returnTotalFee = returnTotalFee;
	}
}
