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

本文详细阐述了如何使用JavaScript通过获取上级菜单ID,实现与后台Action交互,进而对选择的设备进行黑名单操作的过程。具体步骤包括获取ID、发送AJAX请求、使用Users对象获取ID、判断设备数量及MAC地址,最终根据需求决定是否添加或更新黑名单信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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> criterion = new ArrayList<Criterion>();
Users users=new Users();
users.setId(Integer.parseInt(id));
criterion.add(Restrictions.eq("users", users));//用id比较数据库中的users字段
List<Nodes> nodes=nodesService.executeQuery(criterion, null);

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

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

String[] nodesArray = macs.split("-");
for (int i = 0; i < nodesArray.length; i++){
List<Criterion> criterions = new ArrayList<Criterion>();
criterions.add(Restrictions.eq("mac", nodesArray[i]));
List<BlackList> 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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值