public void update(EtlRole etlRole, Long[] recIds) {
mapper.update(etlRole);
Long[] rsids = etlAuthorityMapper.getResourceIdsByOneRole(etlRole.getId());// 得到所有的resource的ID
List<Long> listrs = new ArrayList<Long>();
for (Long rsid : rsids) {
listrs.add(rsid);
}
List<Long> listrec = new ArrayList<Long>();
for (Long recid : recIds) {
listrec.add(recid);
}
for(int i=listrs.size()-1;i>=0;i--){
for(int j=listrec.size()-1;j>=0;j--){
Long id1 = listrs.get(i);
Long id2 = listrec.get(j);
if(id1.equals(id2)){
listrec.remove(j);
listrs.remove(i);
break;
}
}
}
Long[] rsidsf = (Long[]) listrs.toArray(new Long[listrs.size()]);// 删除该数组里的剩下的resource_id
Long[] recidsf = (Long[]) listrec.toArray(new Long[listrec.size()]);// 增加该数组里的剩下的resource_id
if (rsidsf.length != 0 && rsidsf != null) {
Long[] idd = etlAuthorityMapper.getIdByresourceId(rsidsf);
etlAuthorityMapper.del(idd);
}
if (recidsf.length != 0 && recidsf != null) {
for (Long recid : recidsf) {
etlAuthorityMapper.insert(recid, etlRole.getId());
}
}
}
有复选框的树的更新的后台操作
最新推荐文章于 2018-07-10 13:48:17 发布