public static boolean checkData(ProduceFlow jeecgProduceFlow, ProduceFlow rsProduceFlow) {
//jeecg
ProduceFlowCheckBean produceFlowCheckBean1 =new ProduceFlowCheckBean();
BeanUtil.copyProperties(jeecgProduceFlow,produceFlowCheckBean1,
CopyOptions.create().setIgnoreError(true));
//erp数据
ProduceFlowCheckBean produceFlowCheckBean2 =new ProduceFlowCheckBean();
BeanUtil.copyProperties(rsProduceFlow,produceFlowCheckBean2,
CopyOptions.create().setIgnoreError(true));
boolean result = produceFlowCheckBean1.equals(produceFlowCheckBean2);
return result;
}
@EqualsAndHashCode.Include
private BigDecimal fund5() {
return fund5 == null ? null : fund5.stripTrailingZeros();
}
checkBean中需要对bigDecimal特殊处理,去0。
ProduceFlow是数据库实体
ProduceFlowCheckBean 中为需要判断的字段
逻辑为,两个对象都把需要判断的字段拿出来,然后通过checkBean进行比对。
有比这个好用的方案,麻烦分享一下