4 changed files with 47 additions and 16 deletions
-
20src/main/java/com/iflytop/handacid/app/controller/ReceiveRecordController.java
-
4src/main/java/com/iflytop/handacid/common/model/entity/Channel.java
-
3src/main/java/com/iflytop/handacid/common/model/entity/ReceiveRecord.java
-
34src/main/java/com/iflytop/handacid/common/service/ReceiveRecordService.java
@ -1,14 +1,48 @@ |
|||||
package com.iflytop.handacid.common.service; |
package com.iflytop.handacid.common.service; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||
|
import com.iflytop.handacid.app.core.state.ChannelState; |
||||
|
import com.iflytop.handacid.app.core.state.DeviceState; |
||||
import com.iflytop.handacid.common.mapper.ReceiveRecordMapper; |
import com.iflytop.handacid.common.mapper.ReceiveRecordMapper; |
||||
|
import com.iflytop.handacid.common.model.entity.Channel; |
||||
import com.iflytop.handacid.common.model.entity.ReceiveRecord; |
import com.iflytop.handacid.common.model.entity.ReceiveRecord; |
||||
|
import com.iflytop.handacid.common.model.entity.Solution; |
||||
|
import com.iflytop.handacid.common.model.entity.User; |
||||
import lombok.RequiredArgsConstructor; |
import lombok.RequiredArgsConstructor; |
||||
import org.springframework.stereotype.Service; |
import org.springframework.stereotype.Service; |
||||
|
|
||||
/** |
/** |
||||
* 领取记录接口服务 |
* 领取记录接口服务 |
||||
*/ |
*/ |
||||
@Service |
@Service |
||||
@RequiredArgsConstructor |
@RequiredArgsConstructor |
||||
public class ReceiveRecordService extends ServiceImpl<ReceiveRecordMapper, ReceiveRecord> { |
public class ReceiveRecordService extends ServiceImpl<ReceiveRecordMapper, ReceiveRecord> { |
||||
|
private final UserService userService; |
||||
|
private final SolutionService solutionService; |
||||
|
private final ChannelService channelService; |
||||
|
private final DeviceState deviceState; |
||||
|
|
||||
|
public boolean receive(ReceiveRecord receiveRecord) { |
||||
|
User issuer = userService.getById(receiveRecord.getIssuerId()); |
||||
|
receiveRecord.setIssuerNickname(issuer.getNickname()); |
||||
|
User receiver = userService.getById(receiveRecord.getReceiverId()); |
||||
|
receiveRecord.setReceiverNickname(receiver.getNickname()); |
||||
|
Solution solution = solutionService.getById(receiveRecord.getSolutionId()); |
||||
|
receiveRecord.setSolutionName(solution.getName()); |
||||
|
this.save(receiveRecord); |
||||
|
|
||||
|
Channel channel = channelService.getOne(new LambdaQueryWrapper<>(new Channel()).eq(Channel::getCode, receiveRecord.getChannelCode())); |
||||
|
channel.setCurrentVolume(receiveRecord.getReceivedVolume()); |
||||
|
channel.setReceivedVolume(receiveRecord.getReceivedVolume()); |
||||
|
channel.setConcentration(receiveRecord.getConcentration()); |
||||
|
channelService.updateById(channel); |
||||
|
|
||||
|
ChannelState channelState = deviceState.getChannelStateMap().get(receiveRecord.getChannelCode()); |
||||
|
channelState.setCurrentVolume(receiveRecord.getReceivedVolume()); |
||||
|
channelState.setReceivedVolume(receiveRecord.getReceivedVolume()); |
||||
|
channelState.setConcentration(receiveRecord.getConcentration()); |
||||
|
|
||||
|
return true; |
||||
|
} |
||||
} |
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue