Browse Source

[feat]

1、修改飞行次数时长接受参数和异步调用①
pull/4/head
杨威 2 months ago
parent
commit
7dafce3977
  1. 2
      dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceFlightRecordsService.java
  2. 24
      dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceFlightRecordsServiceImpl.java

2
dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceFlightRecordsService.java

@ -8,7 +8,7 @@ import java.util.Map;
public interface IDeviceFlightRecordsService {
void saveDeviceFlight(List<DeviceFlightRecordsEntity> deviceFlightRecords);
void saveDeviceFlight(DeviceFlightRecordsEntity deviceFlightRecords);
Map<String,Integer> getDeviceFlightCount();

24
dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceFlightRecordsServiceImpl.java

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.dromara.sample.manage.mapper.DeviceFlightRecordsMapper;
import org.dromara.sample.manage.model.entity.DeviceFlightRecordsEntity;
import org.dromara.sample.manage.service.IDeviceFlightRecordsService;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import java.util.HashMap;
@ -18,21 +19,20 @@ public class DeviceFlightRecordsServiceImpl extends ServiceImpl<DeviceFlightReco
@Override
public void saveDeviceFlight(List<DeviceFlightRecordsEntity> deviceFlightRecords) {
@Async
public void saveDeviceFlight(DeviceFlightRecordsEntity deviceFlightRecords) {
deviceFlightRecords.forEach(deviceFlightRecord -> {
//查询之前的数据
DeviceFlightRecordsEntity deviceFlightRecordsEntities = this.baseMapper.selectOne(new LambdaQueryWrapper<DeviceFlightRecordsEntity>().eq(DeviceFlightRecordsEntity::getDeviceSn,deviceFlightRecord.getDeviceSn()));
//查询之前的数据
DeviceFlightRecordsEntity deviceFlightRecordsEntities = this.baseMapper.selectOne(new LambdaQueryWrapper<DeviceFlightRecordsEntity>().eq(DeviceFlightRecordsEntity::getDeviceSn,deviceFlightRecords.getDeviceSn()));
if (ObjectUtil.isNotEmpty(deviceFlightRecordsEntities)) {
deviceFlightRecordsEntities.setFlyCount(deviceFlightRecordsEntities.getFlyCount() + deviceFlightRecord.getFlyCount());
deviceFlightRecordsEntities.setFlyAccTime(deviceFlightRecordsEntities.getFlyAccTime() + deviceFlightRecord.getFlyAccTime());
if (ObjectUtil.isNotEmpty(deviceFlightRecordsEntities)) {
deviceFlightRecordsEntities.setFlyCount(deviceFlightRecordsEntities.getFlyCount() + deviceFlightRecords.getFlyCount());
deviceFlightRecordsEntities.setFlyAccTime(deviceFlightRecordsEntities.getFlyAccTime() + deviceFlightRecords.getFlyAccTime());
this.updateById(deviceFlightRecordsEntities);
}else {
this.save(deviceFlightRecord);
}
});
this.updateById(deviceFlightRecordsEntities);
}else {
this.save(deviceFlightRecords);
}
}
@Override

Loading…
Cancel
Save