使用 Mybatis-Plus UpdateWrapper 更新数据
这段代码使用 Mybatis-Plus 的 UpdateWrapper 更新数据,根据 flag 参数决定更新 ScanCodeForStorageRecord 或 ScanCodeDeliveryRecord 表中的数据。
代码首先根据 flag 参数创建 UpdateWrapper 对象,然后使用 lambda 表达式设置更新条件和更新字段。最后调用相应的 Mapper 接口的 update() 方法执行更新操作。
UpdateWrapper<?> updateWrapper;
if (flag.equals('in')){
updateWrapper = Wrappers.update(ScanCodeForStorageRecord.class);
updateWrapper.lambda()
.eq(ScanCodeForStorageRecord::getInBoundOrderNo, ncOrder)
.eq(ScanCodeForStorageRecord::getDeleteFlag, 0)
.set(ScanCodeForStorageRecord::getDeleteFlag, 1);
inBoundRecordMapper.update(null, updateWrapper);
} else {
updateWrapper = Wrappers.update(ScanCodeDeliveryRecord.class);
updateWrapper.lambda()
.eq(ScanCodeDeliveryRecord::getOutBoundOrderNo, ncOrder)
.eq(ScanCodeDeliveryRecord::getDeleteFlag, 0)
.set(ScanCodeDeliveryRecord::getDeleteFlag, 1);
outBoundRecordMapper.update(null, updateWrapper);
}
这段代码已经很简洁和高效了,不需要进一步优化。
原文地址: https://www.cveoy.top/t/topic/pf23 著作权归作者所有。请勿转载和采集!