public Page<ConsignmentV> getList(String orgFirstId,String orgSecondId, String beginDate,String endDate,Integer page, Integer size,Integer status,String state) { Specification<ConsignmentV> specification = new Specification<ConsignmentV>() { @Override public Predicate toPredicate(Root<ConsignmentV> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) { List<Predicate> predicateList = new ArrayList<>(); //-----------------这两种都可以 // Expression<String> exp = root.<String>get("state"); // String strs[] = state.split(","); // List<String> lds = Arrays.asList(strs); // if( lds != null || lds.size() > 0 ) predicateList.add(exp.in(lds)); String strs[] = state.split(","); CriteriaBuilder.In<String> in = criteriaBuilder.in(root.get("state")); for (String id : strs) { in.value(id); } predicateList.add(in); // predicateList.add(criteriaBuilder.equal(root.get("orgFirstId").as(String.class),groupId )); if (StringUtils.isNotBlank(orgFirstId)) { predicateList.add(criteriaBuilder.equal(root.get("orgFirstId").as(String.class),orgFirstId )); } if (StringUtils.isNotBlank(orgSecondId)) { predicateList.add(criteriaBuilder.equal(root.get("orgSecondId").as(String.class),orgSecondId )); } if (StringUtils.isNotBlank(beginDate) ) { predicateList.add(criteriaBuilder.greaterThanOrEqualTo(root.get("beginDate").as(String.class), beginDate)); } if (StringUtils.isNotBlank(endDate) ) { predicateList.add(criteriaBuilder.lessThanOrEqualTo(root.get("endDate").as(String.class), endDate)); } if (status != null ) { predicateList.add(criteriaBuilder.equal(root.get("status").as(Integer.class), status)); } return criteriaBuilder.and(predicateList.toArray(new Predicate[predicateList.size()])); } }; PageRequest pageRequest = PageRequest.of(page, size, Sort.by(Sort.Direction.DESC, "id")); Page<ConsignmentV> all = consignmentVRespository.findAll(specification, pageRequest); List<ConsignmentV> list = all.getContent(); for (ConsignmentV obj : list) { //查用户服务是到服务商名称和手,后续接口可以返回多条数据,而不是一条条返回 // R r = userClient.getOrgAndCreateUser(obj.getOrgSecondId()); // UserInfoDto userInfoDto = JSON.parseObject(JSON.toJSONString(r.get("data")),UserInfoDto.class); UserInfoDto userInfoDto = userServer.getOrgAndCreateUser(obj.getOrgSecondId()).getData(); obj.setOrgName(userInfoDto.getOrgName()); obj.setName(userInfoDto.getName()); obj.setMobile(userInfoDto.getMobile()); //放协议附件id obj.setFileId("990f7360-a3e7-4f8f-a55f-f0600a58c604"); } return all; }
|
|