package edu.hebtu.movingcampus.subjects; import java.util.ArrayList; import java.util.Date; import java.util.List; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; import edu.hebtu.movingcampus.biz.LibraryDao; import edu.hebtu.movingcampus.config.Constants; import edu.hebtu.movingcampus.entity.BorrowedBook; import edu.hebtu.movingcampus.entity.NewsShort; import edu.hebtu.movingcampus.enums.LocalNewsType; import edu.hebtu.movingcampus.enums.NewsType; import edu.hebtu.movingcampus.subject.base.OneofNews; import edu.hebtu.movingcampus.subject.base.Subject; /** * @author hippo * @version 1.0 * @created 14-Nov-2013 9:13:30 AM */ public class LibrarySubject extends Subject implements OneofNews { private ArrayList<BorrowedBook> books; //设置剩余days天提醒 public static int days; public LibrarySubject(Context ac){ SharedPreferences pre = ac.getSharedPreferences( Constants.PREFER_FILE, 0); LibrarySubject.days = pre.getInt("card.days",10); } @Override public Boolean mesureChange(Activity ac) { books = new LibraryDao(ac).mapperJson(days + ""); if (books != null && books.size() > 0) return true; return false; } @Override public NewsShort dump(Activity ac) { NewsShort news = new NewsShort(); if (mesureChange(ac)) { news.setType(NewsType.O_LOCAL); news.setTitle("借书到期提醒:"); news.setDate(new Date()); String content = "以下是"+days+"天内到期图书\n,详细信息:"; for (BorrowedBook b : books) { content += "图书名称:" + b.getName() + "/n"; if (b.getFine() > 0) content += "图书超期罚款:" + b.getFine() + " 元/n"; content += "图书离应还日期剩余天数:" + b.getRemainTime() + " 天/n"; content += "图书续借次数:" + b.getReBorrow() + "次/n"; } news.setDate(new Date()); news.setContent(content); // TODO,id? news.setID(LocalNewsType.I_LIB_NOTIFY.ordinal() + 10000); } return news; } @Override public String getTag() { return "subject.library"; } }