package com.lfk.justwetools.View.ClassTable;
import android.os.Parcel;
import android.os.Parcelable;
/**
* 单个课程的详情信息
* Created by liufengkai on 16/5/16.
*/
public class ClassInfo implements Parcelable {
/**
* 课程名称
*/
private String className;
/**
* 课程的计算位置
*/
private int classPosition;
/**
* 课程的唯一标示
*/
private String classId;
/**
* 教师
*/
private String classTeacher;
/**
* 上课位置
*/
private String classLocation;
/**
* 上课类型
*/
private String classType;
/**
* 周几上?
*/
private int classWeek;
/**
* 开始时间
*/
private int classStartTime;
/**
* 结束时间
*/
private int classEndTime;
/**
* 背景颜色
*/
private int backgroundColor = 0;
// =-=
// private int background = 0;
/**
* 开始周目
*/
private int startWeek;
/**
* 结束周目
*/
private int endWeek;
private String content;
// 空构造
public ClassInfo() {
}
public ClassInfo(ClassInfo info) {
className = info.getClassName();
classPosition = info.getClassPosition();
classTeacher = info.getClassTeacher();
classLocation = info.getClassLocation();
classType = info.getClassType();
classWeek = info.getClassWeek();
classStartTime = info.getClassStartTime();
classEndTime = info.getClassEndTime();
backgroundColor = info.getBackgroundColor();
startWeek = info.getStartWeek();
endWeek = info.getEndWeek();
content = info.getContent();
}
protected ClassInfo(Parcel in) {
className = in.readString();
classPosition = in.readInt();
classId = in.readString();
classTeacher = in.readString();
classLocation = in.readString();
classType = in.readString();
classWeek = in.readInt();
classStartTime = in.readInt();
classEndTime = in.readInt();
backgroundColor = in.readInt();
startWeek = in.readInt();
endWeek = in.readInt();
content = in.readString();
}
public static final Creator<ClassInfo> CREATOR = new Creator<ClassInfo>() {
@Override
public ClassInfo createFromParcel(Parcel in) {
return new ClassInfo(in);
}
@Override
public ClassInfo[] newArray(int size) {
return new ClassInfo[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(className);
dest.writeInt(classPosition);
dest.writeString(classId);
dest.writeString(classTeacher);
dest.writeString(classLocation);
dest.writeString(classType);
dest.writeInt(classWeek);
dest.writeInt(classStartTime);
dest.writeInt(classEndTime);
dest.writeInt(backgroundColor);
dest.writeInt(startWeek);
dest.writeInt(endWeek);
dest.writeString(content);
}
public static class ClassBuilder {
private static ClassInfo info;
public ClassBuilder() {
info = new ClassInfo();
}
public ClassBuilder addContent(String content) {
info.setContent(content);
return this;
}
public ClassBuilder addClassName(String className) {
info.setClassName(className);
return this;
}
public ClassBuilder addClassPosition(int classPosition) {
info.setClassPosition(classPosition);
return this;
}
public ClassBuilder addClassTeacher(String classTeacher) {
info.setClassTeacher(classTeacher);
return this;
}
public ClassBuilder addClassId(String classId) {
info.setClassId(classId);
return this;
}
public ClassBuilder addClassLocation(String classLocation) {
info.setClassLocation(classLocation);
return this;
}
public ClassBuilder addClassType(String classType) {
info.setClassType(classType);
return this;
}
public ClassBuilder addClassWeek(int classWeek) {
info.setClassWeek(classWeek);
return this;
}
public ClassBuilder addClassStartTime(int classStartTime) {
info.setClassStartTime(classStartTime);
return this;
}
public ClassBuilder addClassEndTime(int classEndTime) {
info.setClassEndTime(classEndTime);
return this;
}
public ClassBuilder addBackgroundColor(int classBackground) {
info.setBackgroundColor(classBackground);
return this;
}
public ClassBuilder addStartWeek(int startWeek) {
info.setStartWeek(startWeek);
return this;
}
public ClassBuilder addEndWeek(int endWeek) {
info.setEndWeek(endWeek);
return this;
}
public ClassInfo creator() {
return new ClassInfo(info);
}
}
public String getClassName() {
return className;
}
public void setClassName(String className) {
this.className = className;
}
public int getClassPosition() {
return classPosition;
}
public void setClassPosition(int classPosition) {
this.classPosition = classPosition;
}
public String getClassTeacher() {
return classTeacher;
}
public void setClassTeacher(String classTeacher) {
if (classTeacher.length() <= 0) {
this.classTeacher = ClassTableDefaultInfo.defaultNullString;
} else {
this.classTeacher = classTeacher;
}
}
public String getClassLocation() {
return classLocation;
}
public void setClassLocation(String classLocation) {
if (classLocation.length() <= 0) {
this.classLocation = ClassTableDefaultInfo.defaultNullString;
} else {
this.classLocation = classLocation;
}
}
public String getClassType() {
return classType;
}
public void setClassType(String classType) {
this.classType = classType;
}
public int getClassWeek() {
return classWeek;
}
public void setClassWeek(int classWeek) {
this.classWeek = classWeek;
}
public int getClassStartTime() {
return classStartTime;
}
public void setClassStartTime(int classStartTime) {
this.classStartTime = classStartTime;
}
public int getClassEndTime() {
return classEndTime;
}
public void setClassEndTime(int classEndTime) {
this.classEndTime = classEndTime;
}
public int getBackgroundColor() {
return backgroundColor;
}
public void setBackgroundColor(int backgroundColor) {
this.backgroundColor = backgroundColor;
}
public int getStartWeek() {
return startWeek;
}
public void setStartWeek(int startWeek) {
this.startWeek = startWeek;
}
public int getEndWeek() {
return endWeek;
}
public void setEndWeek(int endWeek) {
this.endWeek = endWeek;
}
public String getClassId() {
return classId;
}
public void setClassId(String classId) {
this.classId = classId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
}