首页 > 其他分享 >过滤实现条件查询记录:

过滤实现条件查询记录:

时间:2023-06-16 16:46:34浏览次数:49  
标签:map return 记录 get equals 查询 过滤 new airVO

public List<TbRemouldAirVO> airQueryByMap (List<TbRemouldAirVO> airVO ,Map<String, String> map) {
//1.改造时间
if (!StringUtils.isEmpty(map.get("remouldTimeAir"))) {
airVO = airVO.stream().filter(x -> Objects.equals(x.getRemouldTimeAir(), map.get("remouldTimeAir"))).collect(Collectors.toList());
}

//2.纳入情况
if (!StringUtils.isEmpty(map.get("conditionAir"))) {
airVO = airVO.stream().filter(x -> {
String conditionAir = String.valueOf(x.getConditionAir());
String conditionAir1 = map.get("conditionAir");
return conditionAir.equals(conditionAir1);
}).collect(Collectors.toList());
}

//3.1.铁路局计划金额预算
if(!StringUtils.isEmpty(map.get("budgutTypeAir"))) {
if ("1".equals(map.get("budgutTypeAir"))) {
airVO = airVO.stream().filter(x -> x.getRailBudgetAir() != null).filter(x -> {
int symbol = x.getRailBudgetAir().compareTo(new BigDecimal("0"));
if (symbol > 0 && !"".equals(map.get("beginBudgetAir")) && !"".equals(map.get("endBudgetAir"))) {
int begin = x.getRailBudgetAir().compareTo(new BigDecimal(map.get("beginBudgetAir")));
int end = x.getRailBudgetAir().compareTo(new BigDecimal(map.get("endBudgetAir")));
return (begin >= 0 && end <= 0);
} else {
return false;
}
}).collect(Collectors.toList());
}
//3.2.合资公司计划金额预算
else if ("2".equals(map.get("budgutTypeAir"))) {
airVO = airVO.stream().filter(x -> x.getComBudgetAir() != null).filter(x -> {
int symbol = x.getComBudgetAir().compareTo(new BigDecimal("0"));
if (symbol > 0 && !"".equals(map.get("beginBudgetAir")) && !"".equals(map.get("endBudgetAir"))) {
int begin = x.getComBudgetAir().compareTo(new BigDecimal(map.get("beginBudgetAir")));
int end = x.getComBudgetAir().compareTo(new BigDecimal(map.get("endBudgetAir")));
return (begin >= 0 && end <= 0);
}else {
return false;
}
}).collect(Collectors.toList());
}
//3.3.地方政府计划金额
else if ("3".equals(map.get("budgutTypeAir"))) {
airVO = airVO.stream().filter(x -> x.getGovBudgetAir() != null).filter(x -> {
int symbol = x.getGovBudgetAir().compareTo(new BigDecimal("0"));
if (symbol > 0 && !"".equals(map.get("beginBudgetAir")) && !"".equals(map.get("endBudgetAir"))) {
int begin = x.getGovBudgetAir().compareTo(new BigDecimal(map.get("beginBudgetAir")));
int end = x.getGovBudgetAir().compareTo(new BigDecimal(map.get("endBudgetAir")));
return (begin >= 0 && end <= 0);
} else {
return false;
}
}).collect(Collectors.toList());
}
}

//4.类型
if (!StringUtils.isEmpty(map.get("typeAir"))) {
airVO = airVO.stream().filter(x -> {
String type = String.valueOf(x.getTypeAir());
String typeAir = map.get("typeAir");
return type.equals(typeAir);
}).collect(Collectors.toList());
}

//5.计划方式
if (!StringUtils.isEmpty(map.get("planAir"))) {
airVO = airVO.stream().filter(x -> {
String planAir = String.valueOf(x.getPlanAir());
String planAir1 = map.get("planAir");
return planAir.equals(planAir1);
}).collect(Collectors.toList());
}

//6创建时间
if (!StringUtils.isEmpty(map.get("createTimeAir"))) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
try {
Date completiontime = format.parse(map.get("createTimeAir"));
String format2 = format.format(completiontime);
airVO = airVO.stream().filter(x -> {
try {
Date createTimeAir = x.getCreateTimeAir();
String format1 = format.format(createTimeAir);
return format1.equals(format2);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
).collect(Collectors.toList());
} catch (ParseException e) {
throw new RuntimeException(e);
}
}
return airVO;
}

标签:map,return,记录,get,equals,查询,过滤,new,airVO
From: https://www.cnblogs.com/sensenh/p/17485929.html

相关文章

  • 关于vue2路由跳转问题记录
    1.vue路由间跳转和新开窗口的方式(query,params)路由间跳转配置:query方式:参数会在url中显示this.$router.push({path:'路由地址',query:{msg:'helloworld'}})params方式:传参数据不会在导航栏中显示,需要配合路由的name属性使用。this.$......
  • 怎样利用SEO查询提升网站建设?
    作为一名网站管理员或SEO从业者,你肯定知道每个网站的排名对于流量和曝光率有着重要的影响。那么如何利用SEO查询,提升网站排名呢?今天,我将和大家分享一些我自己的经验和技巧。1.了解网站关键词在进行SEO查询之前,我们需要先了解我们网站的关键词。关键词是指用户在搜索引擎中输入的......
  • Markdown语法学习记录
    ##小记markdown语法是写博客所需要的基本的语法,而且也比较容易掌握,以下是我个人学习的基础的语法。##标题一共有六级标题,先说一级标题一级标题的语法是#+空格+标题二级标题的语法是##+空格+标题 ......想创建多少级的标题就在前面加多少个#号##字体**粗体***斜体*......
  • MySQL索引优化与查询优化
    一:优化方式及数据准备1:优化方式在日常开发中都有哪些维度可以进行数据库调优?如下:①:索引失效、没有充分利用到索引--需要合理建立索引和利用索引②:关联查询太多JOIN(设计缺陷或不得已的需求) --需要对SQL优化③:服务器......
  • solr 模拟数据库like查询(不使用分词)
    IK分词个别拆分的不够完美,另外个别业务逻辑是需要替代数据库的like查询。所以本篇文章是介绍如何在solr中使用类似数据库的like查询。本片文章是介绍如何在solr中使用类似数据库的like操作。首先我们抛弃text_ik。IK分词,因为使用的是like操作,所以这块不能在使用分词了。我们需......
  • 2023 6月记录
    6.6[CF1830E]BullySort很离谱的结论题!这个操作很奇怪,但是它有一个重要的性质:一个数永远只会向一个方向移动。考虑这个操作的过程,每次其实是将\(p_i\neqi\)的最大的\(i\)归位,所以如果一个数向右移,它以后就不会向左移。而一个数如果向右移,那么它一定是一个后缀\(min\),而......
  • 记录下闪回工具binlog2sql使用
    1查看系统[root@10-0-0-244~]#cat/etc/centos-releaseRockyLinuxrelease8.7(GreenObsidian)2下载MySQL2.1更新下版本[root@10-0-0-244~]#dnfupdateFailedtosetlocale,defaultingtoC.UTF-8Lastmetadataexpirationcheck:2:01:36agoonWedJun1403:59:26......
  • JPA查询实体的部分属性值
    JPA查询实体的部分属性值https://blog.csdn.net/mojiewangday/article/details/128255531背景需要根据指定条件查询数据的部分字段,因此就不能使用jpa的findAll()方法了,因此选择利用@Query注解写sql实现,踩了几个坑,以此留作记录。实现1.根据唯一id查询指定单个字段 //根......
  • Flink1.13.6 部署踩坑记录
    环境  Hadoop集群是Ambari2.7.5的版本   Flink是1.13.6_2.12的版本问题记录  1.缺少jar包报错:ERRORorg.apache.flink.yarn.cli.FlinkYarnSessionCli[]-ErrorwhilerunningtheFlinksession.java.lang.NoClassDefFoundError:com/sun/jerse......
  • 实战:私有化部署ngin+文件步骤记录
    背景:出差到某国企进行私有化部署,一波三折。没想到是那种最麻烦的部署,导入文件需要刻光盘,进入电脑房需要上交手机,不允许有人以及拍摄设备,内部有监控摄像头。有问题怎么办?知道的自己先试试,一定也不懂的。手抄笔记本上,然后一个字一个字的敲出来。哦,对了,门口还没网,必须得往外走走。以前......