@SuppressWarnings({"rawtypes", "unchecked"}) private DataGrid dataGridByType(PageHelper ph, LvFollow lvFollow, BaseDaoI dao) { ph.setSort("createTime"); ph.setOrder("desc"); DataGrid dg = new DataGrid(); dg.setPage(Long.valueOf(ph.getPage())); dg.setPageSize(Long.valueOf(ph.getRows())); String hql = "select a from TlvAccount a ,TlvFollow t "; Map<String, Object> params = new HashMap<String, Object>(); // 我关注的用户 if (lvFollow.getFromOpenId() != null) { hql += "where a.openId = t.toOpenId and t.fromOpenId = :openId"; params.put("openId", lvFollow.getFromOpenId()); // 关注我的用户 } else if (lvFollow.getToOpenId() != null) { hql += "where a.openId = t.fromOpenId and t.toOpenId = :openId"; params.put("openId", lvFollow.getToOpenId()); } List<TlvAccount> l = dao.find(hql + orderHql(ph), params, ph.getPage(), ph.getRows()); dg.setTotal(dao.count("select count(*) " + hql.substring(8), params)); dg.setRows(l); return dg; }
/** 取消关注 */ public int delete(LvFollow f) { f = get(f.getFromOpenId(), f.getToOpenId()); if (f == null) return -1; delete(f.getId()); LvAccount a = accountService.get(f.getToOpenId()); a.setFollowNum(a.getFollowNum() - 1); accountService.edit(a); return 1; }
@Override public void edit(LvFollow lvFollow) { TlvFollow t = lvFollowDao.get(TlvFollow.class, lvFollow.getId()); if (t != null) { MyBeanUtils.copyProperties(lvFollow, t, new String[] {"id", "createdatetime"}, true); // t.setModifydatetime(new Date()); } }
@Override public int add(LvFollow lvFollow) { LvFollow f = get(lvFollow.getFromOpenId(), lvFollow.getToOpenId()); if (f != null) { lvFollow.setId(f.getId()); this.edit(lvFollow); return -1; } TlvFollow t = new TlvFollow(); BeanUtils.copyProperties(lvFollow, t); t.setId(UUID.randomUUID().toString()); lvFollowDao.save(t); LvAccount a = accountService.get(lvFollow.getToOpenId()); a.setFollowNum(a.getFollowNum() + 1); accountService.edit(a); return 1; }