diff --git a/src/main/java/com/iflytop/handacid/common/service/ReceiveRecordService.java b/src/main/java/com/iflytop/handacid/common/service/ReceiveRecordService.java index 40d929f..3be85ce 100644 --- a/src/main/java/com/iflytop/handacid/common/service/ReceiveRecordService.java +++ b/src/main/java/com/iflytop/handacid/common/service/ReceiveRecordService.java @@ -1,6 +1,7 @@ package com.iflytop.handacid.common.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.iflytop.handacid.app.core.state.ChannelState; import com.iflytop.handacid.app.core.state.DeviceState; @@ -33,13 +34,14 @@ public class ReceiveRecordService extends ServiceImpl(new Channel()).eq(Channel::getCode, receiveRecord.getChannelCode())); - channel.setCurrentVolume(receiveRecord.getReceivedVolume()); - channel.setReceivedVolume(receiveRecord.getReceivedVolume()); - channel.setConcentration(receiveRecord.getConcentration()); - channel.setSolutionId(receiveRecord.getSolutionId()); - channel.setTargetVolume(null); - channelService.updateById(channel); + LambdaUpdateWrapper uw = new LambdaUpdateWrapper() + .eq(Channel::getCode, receiveRecord.getChannelCode()) + .set(Channel::getCurrentVolume, receiveRecord.getReceivedVolume()) + .set(Channel::getReceivedVolume, receiveRecord.getReceivedVolume()) + .set(Channel::getConcentration, receiveRecord.getConcentration()) + .set(Channel::getSolutionId, receiveRecord.getSolutionId()) + .set(Channel::getTargetVolume, null); + channelService.update(uw); ChannelState channelState = deviceState.getChannelStateMap().get(receiveRecord.getChannelCode()); channelState.setCurrentVolume(receiveRecord.getReceivedVolume());