在黑名单中增加nond_id,实现把一个用户加入黑名单后此店下所有设备都加入黑名单(只存入数据库中的表中)

1.获取上级菜单的node_id,此id是nodes表里面的users字段

 var selects = $('#merchantOnline').datagrid('getSelections');
                          var id=selects[0].id;

通过上级菜单id获取选中的信息

2.用ajax把id传到Action中

if(reason!=null&&reason!=""){
$.ajax({
type : "POST",
url : "Black_addblackList",
data :"macs="+macs+"&reason="+reason+"&id="+id,
success : function(msg) {
alert(msg);
}
});

3.用Users对象来获取id,BlackAction.java页面

List criterion = new ArrayList();
Users users=new Users();
users.setId(Integer.parseInt(id));
criterion.add(Restrictions.eq("users", users));//用id比较数据库中的users字段
List nodes=nodesService.executeQuery(criterion, null);

nodes里面是一个用户下面拥有几个设备,用这个来判断需要对几个设备加入黑名单

4.获取mac,加入黑名单时一个mac对应用户下面几个设备

String[] nodesArray = macs.split("-");
for (int i = 0; i < nodesArray.length; i++){
List criterions = new ArrayList();
criterions.add(Restrictions.eq("mac", nodesArray[i]));
List nodeBlack = blackListService.executeQuery(criterions, null);
if(nodeBlack!=null){//如果已经存在这个mac的客户端,把这些信息删除并且插入新几条的数据
blackListService.deleteAll(nodeBlack);
for (int j = 0; j < nodes.size(); j++) {
BlackList blackList = new BlackList(this.reason, nodesArray[i],nodes.get(j).getId());
blackListService.saveOrUpdate(blackList);
}
}else{
for (int j = 0; j < nodes.size(); j++) {
BlackList blackList = new BlackList(this.reason, nodesArray[i],nodes.get(j).getId());
blackListService.saveOrUpdate(blackList);
}}
}

数据库信息:blacklist

在黑名单中增加nond_id,实现把一个用户加入黑名单后此店下所有设备都加入黑名单(只存入数据库中的表中)_第1张图片

你可能感兴趣的:(在黑名单中增加nond_id,实现把一个用户加入黑名单后此店下所有设备都加入黑名单(只存入数据库中的表中))