package com.wdkl.ncs.android.middleware.model.dos;

import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.wdkl.ncs.android.middleware.model.annotation.Column;
import com.wdkl.ncs.android.middleware.model.annotation.Id;
import com.wdkl.ncs.android.middleware.model.annotation.PrimaryKeyField;
import com.wdkl.ncs.android.middleware.model.annotation.Table;

import java.io.Serializable;

@Table(name = "ncs_menu")
@ApiModel
@JsonNaming(value = PropertyNamingStrategy.SnakeCaseStrategy.class)
public class MenuDO implements Serializable {

    /**
     * 店铺菜单id
     */
    @Column(name = "id")
    @ApiModelProperty(value = "店铺菜单id", required = false)
    @Id(name = "id")
    private Integer id;
    /**
     * 同步id
     */
    @Column(name = "union_id")
    @ApiModelProperty(value = "同步id", required = false)
    private String unionId;
    /**
     * 菜单父id
     */
    @Column(name = "parent_id")
    @ApiModelProperty(value = "菜单父id", required = false)
    private Integer parentId;
    /**
     * 菜单标题
     */
    @Column(name = "title")
    @ApiModelProperty(value = "菜单标题", required = false)
    private String title;
    /**
     * 菜单唯一标识
     */
    @Column(name = "identifier")
    @ApiModelProperty(value = "菜单唯一标识", required = false)
    private String identifier;
    /**
     * 权限表达式
     */
    @Column(name = "auth_regular")
    @ApiModelProperty(value = "权限表达式", required = false)
    private String authRegular;
    /**
     * 删除标记
     */
    @Column(name = "delete_flag")
    @ApiModelProperty(value = "删除标记", required = false)
    private Integer deleteFlag;
    /**
     * 菜单级别标识
     */
    @Column(name = "path")
    @ApiModelProperty(value = "菜单级别标识", required = false)
    private String path;
    /**
     * 菜单级别
     */
    @Column(name = "grade")
    @ApiModelProperty(value = "菜单级别", required = false)
    private Integer grade;
    /**
     * 是否默认给医生角色,1是,0否
     */
    @Column(name = "doctor_default")
    @ApiModelProperty(value = "是否默认给医生角色,1是,0否", required = false)
    private Boolean doctorDefault;


    @PrimaryKeyField
    public Integer getId() {
        return id;
    }

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


    public String getUnionId() {
        return unionId;
    }

    public void setUnionId(String unionId) {
        this.unionId = unionId;
    }


    public Integer getParentId() {
        return parentId;
    }

    public void setParentId(Integer parentId) {
        this.parentId = parentId;
    }


    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }


    public String getIdentifier() {
        return identifier;
    }

    public void setIdentifier(String identifier) {
        this.identifier = identifier;
    }


    public String getAuthRegular() {
        return authRegular;
    }

    public void setAuthRegular(String authRegular) {
        this.authRegular = authRegular;
    }


    public Integer getDeleteFlag() {
        return deleteFlag;
    }

    public void setDeleteFlag(Integer deleteFlag) {
        this.deleteFlag = deleteFlag;
    }


    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }


    public Integer getGrade() {
        return grade;
    }

    public void setGrade(Integer grade) {
        this.grade = grade;
    }


    public Boolean getDoctorDefault() {
        return doctorDefault;
    }

    public void setDoctorDefault(Boolean doctorDefault) {
        this.doctorDefault = doctorDefault;
    }

}
