代码摘录
2016-03-04 14:26
316 查看
1、删除目录树下面的子菜单
//判断是否有子菜单
List<SysMenu> menus = systemService.findMenuByPId(id);
while (menus!=null&&menus.size()>0) {
List<SysMenu> menus2 =new ArrayList<SysMenu>();
for (SysMenu sysMenu : menus) {
List<SysMenu> menus1 = systemService.findMenuByPId(sysMenu.getId());
//删除子菜单
systemService.deleteMenu(sysMenu.getId());
menus2.addAll(menus1);
}
menus=menus2;
}
systemService.deleteMenu(id);
2、递归排序
public static void sortMenuList(List<SysMenu> list, List<SysMenu> sourcelist, Long parentId){
for (int i=0; i<sourcelist.size(); i++){
SysMenu e = sourcelist.get(i);
if (e.getParentId()!=null && e.getParentId()!=null && e.getParentId().equals(parentId)){
list.add(e);
// 判断是否还有子节点, 有则继续获取子节点
for (int j=0; j<sourcelist.size(); j++){
SysMenu child = sourcelist.get(j);
if (child.getParentId()!=null && child.getParentId().equals(e.getId())){
sortMenuList(list, sourcelist, e.getId());
break;
}
}
}
}
}
3、已知查询出来列表,中间有些没有数据,补元素
int year = Integer.parseInt(DateUtil.dateFormate(new Date(), "yyyy"));
Map<String, Integer> maps = new HashMap<String, Integer>();//定义map
int index = 0;
for (BiWebDataDay bk : BiWebDataDayList) {//保存横坐标数据,并做标记
dbDates.add(bk.getDataDate());
maps.put(bk.getDataDate(), index);
index++;
}
int start=year-4;
int j=0;
for (int i = start; i <= year; i++) {
if (!dbDates.contains(i+"")) {//如果数据库在某一年没有数据,赋默认值
BiWebDataDay b = new BiWebDataDay();
b.setDataDate(i+"");
b.setOrderCount("0");
webList.add(b);
} else {//获取数据
int m=maps.get(i+"");//根据日期获取value
webList.add(BiWebDataDayList.get(m));//集合里添加并获取对象
}
BiWebDataDay bc = webList.get(j);
orderCountList.add(bc.getOrderCount());//放入集合
j++;
}
//判断是否有子菜单
List<SysMenu> menus = systemService.findMenuByPId(id);
while (menus!=null&&menus.size()>0) {
List<SysMenu> menus2 =new ArrayList<SysMenu>();
for (SysMenu sysMenu : menus) {
List<SysMenu> menus1 = systemService.findMenuByPId(sysMenu.getId());
//删除子菜单
systemService.deleteMenu(sysMenu.getId());
menus2.addAll(menus1);
}
menus=menus2;
}
systemService.deleteMenu(id);
2、递归排序
public static void sortMenuList(List<SysMenu> list, List<SysMenu> sourcelist, Long parentId){
for (int i=0; i<sourcelist.size(); i++){
SysMenu e = sourcelist.get(i);
if (e.getParentId()!=null && e.getParentId()!=null && e.getParentId().equals(parentId)){
list.add(e);
// 判断是否还有子节点, 有则继续获取子节点
for (int j=0; j<sourcelist.size(); j++){
SysMenu child = sourcelist.get(j);
if (child.getParentId()!=null && child.getParentId().equals(e.getId())){
sortMenuList(list, sourcelist, e.getId());
break;
}
}
}
}
}
3、已知查询出来列表,中间有些没有数据,补元素
int year = Integer.parseInt(DateUtil.dateFormate(new Date(), "yyyy"));
Map<String, Integer> maps = new HashMap<String, Integer>();//定义map
int index = 0;
for (BiWebDataDay bk : BiWebDataDayList) {//保存横坐标数据,并做标记
dbDates.add(bk.getDataDate());
maps.put(bk.getDataDate(), index);
index++;
}
int start=year-4;
int j=0;
for (int i = start; i <= year; i++) {
if (!dbDates.contains(i+"")) {//如果数据库在某一年没有数据,赋默认值
BiWebDataDay b = new BiWebDataDay();
b.setDataDate(i+"");
b.setOrderCount("0");
webList.add(b);
} else {//获取数据
int m=maps.get(i+"");//根据日期获取value
webList.add(BiWebDataDayList.get(m));//集合里添加并获取对象
}
BiWebDataDay bc = webList.get(j);
orderCountList.add(bc.getOrderCount());//放入集合
j++;
}
相关文章推荐
- JavaMail发送邮件API简单介绍
- Python多线程编程(threading ):使用Lock互斥锁RLock
- Hexagon DSP SDK -- 工具和资源
- 根据c语言程序转换成汇编程序
- Riesz变换MATLAB代码
- [转]机器视觉代码大全
- 恢复matlab文件关联
- matlab坐标轴标注和特殊字体…
- Matlab 之meshgrid interp griddata interp2
- PHP跳转页面的几种实现方法详解
- struts2修改文件上传的大小
- 利用MATLAB视频函数工具箱的…
- 代码助理之注释
- [转载]MATLAB内存管理
- 初学php之 href和Action,get和post的区别
- VB.Net矩阵求特征值
- 搞不清FastCgi与PHP-fpm之间是个什么样的关系
- Python 代码调试技巧 (转载自:IBM developerWorks 张颖)
- php生成utf-8文件
- MFC编写图形化的c++程序(基于对话框的图形界面程序)