From f942be74f1b7555fa57e400800656b814c8f19c8 Mon Sep 17 00:00:00 2001 From: hzj <826100833@qq.com> Date: Tue, 22 Oct 2024 18:11:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E9=A1=B9=E9=99=90=E5=80=BC?= =?UTF-8?q?=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/OverlimitServiceImpl.java | 21 +++++++++++ .../service/impl/OverlimitService.java | 17 +++++++++ .../service/impl/WlRecordServiceImpl.java | 36 +++++++++++++++++-- 3 files changed, 71 insertions(+), 3 deletions(-) create mode 100644 cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/OverlimitServiceImpl.java create mode 100644 cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/OverlimitService.java diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/OverlimitServiceImpl.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/OverlimitServiceImpl.java new file mode 100644 index 0000000..b066ede --- /dev/null +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/OverlimitServiceImpl.java @@ -0,0 +1,21 @@ +package com.njcn.csdevice.service; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.njcn.device.biz.pojo.po.Overlimit; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.csdevice.mapper.OverlimitMapper; +import com.njcn.csdevice.service.impl.OverlimitService; +/** + * + * Description: + * Date: 2024/10/22 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +@DS("sjzx") +public class OverlimitServiceImpl extends ServiceImpl implements OverlimitService{ + +} diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/OverlimitService.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/OverlimitService.java new file mode 100644 index 0000000..0a39e4e --- /dev/null +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/OverlimitService.java @@ -0,0 +1,17 @@ +package com.njcn.csdevice.service.impl; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.device.biz.pojo.po.Overlimit; + +/** + * + * Description: + * Date: 2024/10/22 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface OverlimitService extends IService{ + + +} diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/WlRecordServiceImpl.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/WlRecordServiceImpl.java index ceb9dcb..9d00663 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/WlRecordServiceImpl.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/WlRecordServiceImpl.java @@ -12,6 +12,7 @@ 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.njcn.common.pojo.enums.common.DataStateEnum; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.csdevice.api.CsLineFeignClient; import com.njcn.csdevice.api.EquipmentFeignClient; @@ -34,6 +35,8 @@ import com.njcn.csdevice.util.InfluxDbParamUtil; import com.njcn.csdevice.utils.DataChangeUtil; import com.njcn.csharmonic.param.CommonStatisticalQueryParam; import com.njcn.csharmonic.pojo.vo.ThdDataVO; +import com.njcn.device.biz.pojo.po.Overlimit; +import com.njcn.device.biz.utils.COverlimitUtil; import com.njcn.influx.imapper.CommonMapper; import com.njcn.influx.pojo.bo.CommonQueryParam; import com.njcn.influx.pojo.constant.InfluxDBTableConstant; @@ -41,6 +44,8 @@ import com.njcn.influx.pojo.dto.StatisticalDataDTO; import com.njcn.influx.query.InfluxQueryWrapper; import com.njcn.influx.service.CommonService; import com.njcn.system.api.CsStatisticalSetFeignClient; +import com.njcn.system.api.DicDataFeignClient; +import com.njcn.system.pojo.po.DictData; import com.njcn.system.pojo.po.EleEpdPqd; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -89,11 +94,13 @@ public class WlRecordServiceImpl extends ServiceImpl i private final CsLinePOMapper csLinePOMapper; private final CsEquipmentDeliveryMapper csEquipmentDeliveryMapper; + private final OverlimitService overlimitService; + private final DicDataFeignClient dicDataFeignClient; private final DecimalFormat df = new DecimalFormat(DataParam.DecimalFormatStr); @Override - @Transactional(rollbackFor = Exception.class) +// @Transactional(rollbackFor = Exception.class) public void addRecord(WlRecordParam.AddRecord records) { //整理的方案下测试项集合(可能添加多个测试项) List insertList = new ArrayList<>(); @@ -120,6 +127,17 @@ public class WlRecordServiceImpl extends ServiceImpl i updateRecord.setId(record.getId()); updateRecord.setList(item.getList()); saveDataRecord(updateRecord); + //生成测试项限值,用于报表 + DictData scaleResult = dicDataFeignClient.getDicDataById(record.getVoltageLevel()).getData(); + if (Objects.isNull(scaleResult)) { + throw new BusinessException(CommonResponseEnum.DIC_DATA); + } + + + float voltageLevel = Float.parseFloat(scaleResult.getValue()); + Overlimit overlimit = COverlimitUtil.globalAssemble(voltageLevel, record.getCapacitySi(), record.getCapacitySt(), record.getCapacitySscmin(), 1, 0); + overlimit.setId(id); + overlimitService.saveOrUpdate(overlimit); }); this.saveBatch(insertList); } @@ -135,7 +153,7 @@ public class WlRecordServiceImpl extends ServiceImpl i } @Override - @Transactional(rollbackFor = Exception.class) +// @Transactional(rollbackFor = Exception.class) public void updateTestRecord(WlRecordParam.UpdateRecord record) { WlRecord wlRecord = new WlRecord(); BeanUtils.copyProperties(record, wlRecord); @@ -143,6 +161,17 @@ public class WlRecordServiceImpl extends ServiceImpl i wlRecord.setEndTime(record.getProEndTime()); this.updateById(wlRecord); saveDataRecord(record); + //修改测试项限值,用于报表 + DictData scaleResult = dicDataFeignClient.getDicDataById(record.getVoltageLevel()).getData(); + if (Objects.isNull(scaleResult)) { + throw new BusinessException(CommonResponseEnum.DIC_DATA); + } + + + float voltageLevel = Float.parseFloat(scaleResult.getValue()); + Overlimit overlimit = COverlimitUtil.globalAssemble(voltageLevel, record.getCapacitySi(), record.getCapacitySt(), record.getCapacitySscmin(), 1, 0); + overlimit.setId(record.getId()); + overlimitService.saveOrUpdate(overlimit); } @Override @@ -307,7 +336,7 @@ public class WlRecordServiceImpl extends ServiceImpl i } @Override - @Transactional(rollbackFor = Exception.class) +// @Transactional(rollbackFor = Exception.class) public void deleteRecord(String id) { LambdaQueryWrapper qw = new LambdaQueryWrapper(); qw.eq(WlRecord::getId,id).eq(WlRecord::getState,"1").eq(WlRecord::getType,"0"); @@ -324,6 +353,7 @@ public class WlRecordServiceImpl extends ServiceImpl i if(wlRecord.getPId() != null){ //方案关联的设备基础数据也删除 this.baseMapper.deleteDataRecord(id,null); + overlimitService.removeById(id); }else{ //如果删除的是方案 那么连带方案下的所有测试项也要删除 qw = new LambdaQueryWrapper();