Пример #1
0
  /**
   * 向前移动排序
   *
   * @param bean
   */
  private void sortByPrevious(long parentId, SysApplication bean) {
    // 查找前一个对象

    SysApplicationQuery query = new SysApplicationQuery();
    query.parentId(Long.valueOf(parentId));
    query.setSortGreaterThan(bean.getSort());
    query.setOrderBy(" E.SORT asc ");

    List<SysApplication> list = this.list(query);
    if (list != null && list.size() > 0) { // 有记录
      SysApplication temp = (SysApplication) list.get(0);
      int sort = bean.getSort();
      bean.setSort(temp.getSort() + 1);
      this.update(bean); // 更新bean
      SysTree node = sysTreeService.findById(bean.getNodeId());
      node.setSort(bean.getSort());
      sysTreeService.update(node);

      temp.setSort(sort - 1);
      this.update(temp); // 更新temp
      node = sysTreeService.findById(temp.getNodeId());
      node.setSort(temp.getSort());
      sysTreeService.update(node);
    }
  }