package org.aisen.weibo.sina.support.publish; import java.util.ArrayList; import java.util.List; import org.aisen.weibo.sina.support.bean.PublishBean; import org.aisen.weibo.sina.support.bean.PublishBean.PublishStatus; import org.aisen.weibo.sina.support.db.SinaDB; import org.sina.android.bean.WeiBoUser; import com.alibaba.fastjson.JSON; import com.m.support.sqlite.property.Extra; import com.m.support.sqlite.util.FieldUtils; public class PublishDB { public static void addPublish(PublishBean bean, WeiBoUser user) { Extra extra = new Extra(user.getIdstr(), null); SinaDB.getSqlite().insert(extra, bean); } public static void deletePublish(PublishBean bean, WeiBoUser user) { Extra extra = new Extra(user.getIdstr(), null); SinaDB.getSqlite().delete(extra, bean); } public static void updatePublish(PublishBean bean, WeiBoUser user) { Extra extra = new Extra(user.getIdstr(), null); SinaDB.getSqlite().insert(extra, bean); } public static ArrayList<PublishBean> getPublishList(WeiBoUser user) { String selection = String.format(" %s = ? and %s != ? and %s != ? and %s != ? ", FieldUtils.OWNER, "status", "status", "status"); String[] selectionArgs = { user.getIdstr(), JSON.toJSONString(PublishStatus.create), JSON.toJSONString(PublishStatus.sending), JSON.toJSONString(PublishStatus.waiting) }; return (ArrayList<PublishBean>) SinaDB.getSqlite().selectAll(PublishBean.class, selection, selectionArgs, FieldUtils.CREATEAT + " desc ", null); } /** * 获取添加状态的发布消息 * * @param user * @return */ public static List<PublishBean> getPublishOfAddStatus(WeiBoUser user) { try { String selection = String.format(" %s = ? and %s = ? ", FieldUtils.OWNER, "status"); String[] selectionArgs = { user.getIdstr(), PublishStatus.create.toString() }; return SinaDB.getSqlite().selectAll(PublishBean.class, selection, selectionArgs); } catch (Exception e) { } return new ArrayList<PublishBean>(); } /** * 定时任务 * * @param user * @return */ public static List<PublishBean> getTimingPublishStatus(WeiBoUser user) { try { String selection = String.format(" %s = ? and %s = ? and %s > ? ", FieldUtils.OWNER, "status", "timing"); String[] selectionArgs = { user.getIdstr(), PublishStatus.draft.toString(), "0" }; return SinaDB.getSqlite().selectAll(PublishBean.class, selection, selectionArgs); } catch (Exception e) { } return new ArrayList<PublishBean>(); } }