@ApiOperation(value = "清除详细日志接口", notes = "清除详细日志接口") @PostMapping("/clearDetailLog") public void clearDetailLog(@ApiParam(name = "清除详细日志接口输入参数实体", value = "清除详细日志接口输入参数实体", required = false) @RequestBody HandleDetailLogVO handleDetailLogVO) throws IOException, ParseException { SimpleDateFormat sd = new SimpleDateFormat(DateFormatEnum.YYYY_MM_DD_HH_MM_SS.getFormat()); String beginTime = handleDetailLogVO.getBeginTime() + DateFormatEnum.BEGIN_HH_MM_SS.getFormat(); String endTime = handleDetailLogVO.getEndTime() + DateFormatEnum.END_HH_MM_SS.getFormat(); // 根据时间查询 NativeSearchQueryBuilder builder = new NativeSearchQueryBuilder(); BoolQueryBuilder bool = QueryBuilders.boolQuery(); List<QueryBuilder> filters = bool.filter(); filters.add(QueryBuilders.rangeQuery("time").gte(sd.parse(beginTime)) .lte(sd.parse(endTime))); builder.withQuery(bool); NativeSearchQuery query = builder.build(); IndexCoordinates indexCoordinates = IndexCoordinates.of("datalog-*"); // 删除索引 elasticsearchTemplate.delete(query, DetailLogVO.class, indexCoordinates); }
实体
public class HandleDetailLogVO { /** * 结束时间 */ @ApiModelProperty(value = "结束时间", name = "结束时间") private String endTime; /** * 开始时间 */ @ApiModelProperty(value = "开始时间", name = "开始时间") private String beginTime; }