public String getTest(HttpServletRequest request)
{
String parentId = req.getValue(request, "parentId");//菜单id
String sql = " select a.id,a.name text,a.superorId parentId,a.tree_level level,"
+" (case (select count(id) from BT_CountryRelation b where b.superorId =a.id) when 0 then 'open' else 'closed' end) AS state "
+" from bt_countryrelation a where a.tree_level=1 ";
if(null != parentId && !"".equals(parentId)){
sql = " select a.id,a.name text,a.superorId parentId,a.tree_level level, "
+" (case (select count(id) from BT_CountryRelation b where b.superorId =a.id) when 0 then 'open' else 'closed' end) AS state "
+"from bt_countryrelation a where a.superorId ='"+parentId+"'";
}
List <?> list = db.queryForList(sql);
JSONArray array = JSONArray.fromObject(list);
return array.toString();
}
上述为easyui-tree 中的数据-重点是一句sql解决了 叶子节点的打开关闭状态
只在sqlserver中试过
select a.id,a.name text,a.superorId parentId,a.tree_level,
(case (select count(id) from BT_CountryRelation b where b.superorId =a.id) when 0 then 'open' else 'closed' end) AS state
from bt_countryrelation a where a.superorId = 1