如:参数校验
private Map<String,Predicate<SkuPlatPriceVo>> getCheckParamRules() { Map<String, Predicate<SkuPlatPriceVo>> map = new HashMap<>(); map.put("平台现价需要为0-无穷大", r -> r.getPlatePrice() < 0); map.put("平台的platform不能为空", r -> ParamChecker.isBlank(r.getPlatform())); return map } 校验页面传入的skuPlatPriceVo参数:CommonUtils.checkParams(skuPlatPriceVo,getCheckParamRules());如:数据变更校验
private List<Predicate<SkuPlatPriceVo>> getCheckDataIsChangeRules(PcCustomPriceDTO oldData) { List<Predicate<SkuPlatPriceVo>> list = new ArrayList<>(); list.add(r -> oldData.getPrice() != null && r.getPlatePrice() != oldData.getPrice()); list.add(r -> oldData.getRebate() != null && r.getRebate() != oldData.getRebate()); return list; } 校验页面传入的更新操作skuPlatPriceVo数据是否需要发生变更要执行数据库update操作 if(CommonUtils.checkDataIsChange(skuPlatPriceVo,getCheckDataIsChangeRules(dto))){ 数据库数据更新 }