package com.yonge.cooleshow.biz.dal.dto.search;

import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
import com.yonge.cooleshow.biz.dal.enums.OrderStatusEnum;
import com.yonge.cooleshow.biz.dal.enums.album.PurchaseRecordTypeEnum;
import io.swagger.annotations.ApiModelProperty;

/**
 * Description 学生查询乐谱
 *
 * @author liujunchi
 * @date 2022-04-01
 */
public class StudentMusicAlbumSearch extends MusicAlbumSearch{


    @ApiModelProperty(value = "登录学生id",hidden = true)
    private Long studentId;

    @ApiModelProperty(value = "收藏专辑标识", hidden = true)
    private Boolean albumFavorite;

    @ApiModelProperty("已购买专辑 ")
    private Boolean albumPurchased;

    @ApiModelProperty(value = "订单状态(WAIT_PAY:待支付;PAYING:支付中,PAID:已付款)", hidden = true)
    private OrderStatusEnum orderStatus;  //订单状态(1:已完成;0:取消)

    @ApiModelProperty(value = "购买类型 ", hidden = true)
    private PurchaseRecordTypeEnum purchaseType;

    @ApiModelProperty(value = "用户类型 TEACHER:老师，STUDENT:学生", hidden = true)
    private ClientEnum clientType;

    public Long getStudentId() {
        return studentId;
    }

    public void setStudentId(Long studentId) {
        this.studentId = studentId;
    }

    public Boolean getAlbumFavorite() {
        return albumFavorite;
    }

    public void setAlbumFavorite(Boolean albumFavorite) {
        this.albumFavorite = albumFavorite;
    }

    public Boolean getAlbumPurchased() {
        return albumPurchased;
    }

    public void setAlbumPurchased(Boolean albumPurchased) {
        this.albumPurchased = albumPurchased;
    }

    public OrderStatusEnum getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(OrderStatusEnum orderStatus) {
        this.orderStatus = orderStatus;
    }

    public PurchaseRecordTypeEnum getPurchaseType() {
        return purchaseType;
    }

    public void setPurchaseType(PurchaseRecordTypeEnum purchaseType) {
        this.purchaseType = purchaseType;
    }

    public ClientEnum getClientType() {
        return clientType;
    }

    public void setClientType(ClientEnum clientType) {
        this.clientType = clientType;
    }


    public StudentMusicAlbumSearch studentId(Long studentId) {
        this.studentId = studentId;
        return this;
    }

    public StudentMusicAlbumSearch albumFavorite(Boolean albumFavorite) {
        this.albumFavorite = albumFavorite;
        return this;
    }

    public StudentMusicAlbumSearch albumPurchased(Boolean albumPurchased) {
        this.albumPurchased = albumPurchased;
        return this;
    }

    public StudentMusicAlbumSearch orderStatus(OrderStatusEnum orderStatus) {
        this.orderStatus = orderStatus;
        return this;
    }

    public StudentMusicAlbumSearch purchaseType(PurchaseRecordTypeEnum purchaseType) {
        this.purchaseType = purchaseType;
        return this;
    }

    public StudentMusicAlbumSearch clientType(ClientEnum clientType) {
        this.clientType = clientType;
        return this;
    }
}
