List集合根据条件删除数据

1.根据条件删除List集合里面的数据。这里以dataAllList为列子

    @Override
    public MyPageInfo<AdminStationVO> findAdminStationList(Integer uid, PageParams params,
            AdminStationVO adminStationVO) {
        System.out.println("adminStationVO 传进来的参数"+adminStationVO);
//      try {
        //权限校验
        Integer stationUid = ValidUtils.AdminStation(uid);
        //station返回2,说明有权限,0没有权限 
        List<AdminStationVO> newDataList=new ArrayList<AdminStationVO>();
        //封装数据
        List<AdminStationVO> dataAllList=new ArrayList<AdminStationVO>();
        Integer ischeck = adminStationVO.getIscheck();
        Integer instorage = adminStationVO.getInstorage();//未入库
        Integer isExpirationEmpty = adminStationVO.getIsExpirationEmpty();
        System.out.println("isExpirationEmpty11111111"+isExpirationEmpty);
        Integer expireDateStatus=null;
        Integer picturestatus = adminStationVO.getPicturestatus();
        Integer videostatus = adminStationVO.getVideostatus();
        Integer platformstatus = adminStationVO.getPlatformstatus();
        Integer keyamount = adminStationVO.getKeyamount();//序列号数量
        Integer serialamount = adminStationVO.getSerialamount();//终端设备数量
        String salesman = adminStationVO.getSalesman();//业务员
        String channel = adminStationVO.getChannel();
        String username = adminStationVO.getUsername();//用户名
        String stationname = adminStationVO.getStationname();
        if(stationUid==2) {
            //查询所有的机构   findDepartName
            String deptName = adminStationVO.getDeptName();
            List<Department> findDepartName = departmentService.findDepartName(uid, deptName);
            
            
            for (Department department : findDepartName) {
                AdminStationVO adminStation=new AdminStationVO();
                adminStation.setId(adminStationVO.getId());
                adminStation.setStationname(adminStationVO.getStationname());
                adminStation.setStationStarTime(adminStationVO.getStationStarTime());
                adminStation.setStationEndTime(adminStationVO.getStationEndTime());
                adminStation.setDeptid(department.getId());
                adminStation.setDeptName(department.getDeptName());
                adminStation.setStarTime(adminStationVO.getStarTime());
                adminStation.setEndTime(adminStationVO.getEndTime());
                adminStation.setIsExpirationEmpty(adminStationVO.getIsExpirationEmpty());//到期时间是否为空
                System.out.println("adminStationVO.getStationStarTime() 开始时间"+adminStationVO.getStationStarTime());
                System.out.println("adminStationVO.getStationEndTime() 结束时间"+adminStationVO.getStationEndTime());
                    //通过磅点 磅点名称,磅点的时间,磅点id
                    List<AdminStationVO> findIdDateNameAll = mapper.findIdDateNameAll(adminStation);    
                    System.out.println("findIdDateNameAll"+findIdDateNameAll);
                    for (int i = 0; i < findIdDateNameAll.size(); i++) {//findfuncidStatus
                            //磅点查询机构 获取 机构名称
                            Department findStationDpName = departmentMapper.findStationDpName(findIdDateNameAll.get(i).getId());
                            if(findStationDpName !=null) {
                                findIdDateNameAll.get(i).setDeptName(findStationDpName.getDeptName());
                            }
                            //查询功能码
                            List<Integer> findfuncidStatus = stationFuncMapper.findfuncidStatus(findIdDateNameAll.get(i).getId());
                            findIdDateNameAll.get(i).setFuncStatus(findfuncidStatus);
                            //查询业务员
                            Salesman findStationById = salesmanMapper.findStationById(findIdDateNameAll.get(i).getId());
                            Integer channelId =null;
                            if(findStationById !=null) {
                                findIdDateNameAll.get(i).setSalesman(findStationById.getSalesman());
                                findIdDateNameAll.get(i).setPhone(findStationById.getPhone());
                                findIdDateNameAll.get(i).setChannelid(findStationById.getChannelId());
                                channelId = findStationById.getChannelId();//获取业务员对应的渠道id   
                            }
                            //查询渠道表
                            Cannel findSalesmanId = cannelMapper.findSalesmanId(channelId);
                            System.out.println("findSalesmanId 渠道"+findSalesmanId);
                            if(findSalesmanId !=null) {
                                findIdDateNameAll.get(i).setChannel(findSalesmanId.getChannel());
                            }
                            //查询加密狗获取审核人信息,授权过期时间(激活到期时间),授权提交时间(激活时间)findStationidData
                            expireDateStatus = adminStationVO.getExpireDateStatus();//判断激活已到期的 状态
                            AuthorizeKey findStationidData = authorizeKeyMapper.findStationidData(findIdDateNameAll.get(i).getId(),ischeck,instorage,expireDateStatus);
                            if(findStationidData !=null) {
                                findIdDateNameAll.get(i).setChecker(findStationidData.getChecker());
                                findIdDateNameAll.get(i).setCheckdate(findStationidData.getCheckDate());
                                findIdDateNameAll.get(i).setIscheck(findStationidData.getIsCheck());
                                findIdDateNameAll.get(i).setInstorage(findStationidData.getInStorage());
                                findIdDateNameAll.get(i).setAkexpiredate(findStationidData.getExpireDate());
                            }
                            //查询磅点对应的操作人员  findOperratorNew
                            Operrator findOperratorNew = operratorMapper.findOperratorNew(findIdDateNameAll.get(i).getId());
                            if(findOperratorNew !=null) {
                                findIdDateNameAll.get(i).setOperator(findOperratorNew.getOperator());
                                findIdDateNameAll.get(i).setTime(findOperratorNew.getTime());
                            }   
                            //用户名查询磅点信息
                            User findStationIdUserData = userMapper.findStationIdUserData(findIdDateNameAll.get(i).getId(),username);
                            if(findStationIdUserData !=null) {
                                findIdDateNameAll.get(i).setUsername(findStationIdUserData.getUsername());
                            }
                    }
                    //通过磅点查询业务员
                    dataAllList.addAll(findIdDateNameAll);
                    //System.out.println("dataAllList"+dataAllList);
                }
            }
        System.out.println("dataAllList"+dataAllList);
            //判断勾选的状态
        AdminStationVO adminData =null; 
        //判断用户
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                 AdminStationVO nextdata = iterator.next();
                if(username !=null) {
                    String usernameData = nextdata.getUsername();
                    if(usernameData==null || !username.equals(usernameData)) {
                        iterator.remove();
                    }
                }
            }
        }
        
        //判断渠道
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(channel !=null) {
                    String channelData = adminData.getChannel();
                    if(channelData==null || !channel.equals(channelData)) {
                        iterator.remove();
                    }
                }
            }
        }
        //判断业务员是否存在数据
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(salesman !=null) {//salesman
                    String salesmanName = adminData.getSalesman();
                    if(salesmanName==null || !salesman.equals(salesmanName)) {
                        iterator.remove();
                    }
                }
            }
        }
        //判断设备数量
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(serialamount !=null) {
                    Integer serialaCount = adminData.getSerialamount();
                    if(serialamount<serialaCount) {
                        iterator.remove();
                    }
                }
            }
        }
        //判断加密狗数量
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(keyamount !=null) {
                    Integer keyCount = adminData.getKeyamount();
                    if(keyamount<keyCount) {
                        iterator.remove();
                    }
                }
            }
        }
        //判断开通平台
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(platformstatus !=null) {
                    if(platformstatus==0) {//不开通
                        List<Integer> funcStatus = adminData.getFuncStatus();
                        for (Integer integer : funcStatus) {
                            if(integer==1) {
                                iterator.remove();
                            }
                        }
                    }else if(platformstatus==1) {//开通
                        List<Integer> funcStatus = adminData.getFuncStatus();
                        if(!funcStatus.contains(1)) {
                            iterator.remove();
                        }
                    }
                }
            }
        }
        //判断开通视频
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(videostatus !=null) {
                    if(videostatus==0) {//不开通
                        List<Integer> funcStatus = adminData.getFuncStatus();
                        for (Integer integer : funcStatus) {
                            if(integer==3) {
                                iterator.remove();
                            }
                        }
                    }else if(videostatus==3) {//开通
                        List<Integer> funcStatus = adminData.getFuncStatus();
                        if(!funcStatus.contains(3)) {
                            iterator.remove();
                        }
                    }
                }
            }
        }   
        //判断开通图片
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(picturestatus !=null) {
                    if(picturestatus==0) {//不开通
                        List<Integer> funcStatus = adminData.getFuncStatus();
                        for (Integer integer : funcStatus) {
                            if(integer==2) {
                                iterator.remove();
                            }
                        }
                    }else if(picturestatus==2) {//开通
                        List<Integer> funcStatus = adminData.getFuncStatus();
                        if(!funcStatus.contains(2)) {
                            iterator.remove();
                        }
                    }
                }
            }
        }
        //判断加密狗审核
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(ischeck !=null) {
                    if(ischeck.equals(0)) {
                        if(adminData.getIscheck() != null) {
                            iterator.remove();
                        }
                    }else if(ischeck.equals(2)) {
                        if(adminData.getIscheck() == null) {
                            iterator.remove();
                        }
                    }
                }
            }
        }
        //判断加密狗未入库有错吴
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(instorage !=null) {
                    if(instorage.equals(0)) {
                        if(adminData.getInstorage() == null || adminData.getInstorage() != 0) {
                            iterator.remove();
                        }
                    }else if(instorage.equals(1)) {
                        if(adminData.getInstorage() == null || adminData.getInstorage() != 1) {
                            iterator.remove();
                        }
                    }
                }
            }
        }
        //判断加密狗是否过期
        if(dataAllList !=null && dataAllList.size()>0) {
            Iterator<AdminStationVO> iterator = dataAllList.iterator();     
            while (iterator.hasNext()) {
                adminData = (AdminStationVO) iterator.next();
                if(isExpirationEmpty !=null) {
                    if(isExpirationEmpty==0) {
                        if(adminData.getAkexpiredate()!=null) {
                            System.out.println("1111111111");
                            iterator.remove();
                        }
                    }else if(isExpirationEmpty==1) {
                        if(adminData.getAkexpiredate()==null) {
                            System.out.println("222222");
                            iterator.remove();
                        }
                    }
                }
            }
        }       
        System.out.println("dataAllList"+dataAllList);
        List<AdminStationVO> startPage = PageUtil.startPage(dataAllList, params.getPageNum(), params.getPageSize());
        MyPageInfo<AdminStationVO> myPageInfo = new MyPageInfo<AdminStationVO>(params.getPageNum(),dataAllList.size(),startPage);
        return myPageInfo;
//      } catch (Exception e) {
//          throw new MyException("对不起。请选择正确的磅点");
//      }
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,968评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,601评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,220评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,416评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,425评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,144评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,432评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,088评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,586评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,028评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,137评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,783评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,343评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,333评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,559评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,595评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,901评论 2 345