From 7b9f456a4deca0d4876ed1ff1b3e614b55569777 Mon Sep 17 00:00:00 2001 From: huangzj <826100833@qq.com> Date: Wed, 27 Sep 2023 14:38:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../csdevice/pojo/po/CsDevCapacityPO.java | 42 ++++++++++++++ .../equipment/CsDevCapacityController.java | 47 ++++++++++++++++ .../mapper/CsDevCapacityPOMapper.java | 15 +++++ .../mapper/mapping/CsDevCapacityPOMapper.xml | 15 +++++ .../service/CsDevCapacityPOService.java | 17 ++++++ .../impl/CsDevCapacityPOServiceImpl.java | 55 +++++++++++++++++++ .../impl/CsEventUserPOServiceImpl.java | 20 ++++++- .../service/impl/StableDataServiceImpl.java | 2 +- 8 files changed, 211 insertions(+), 2 deletions(-) create mode 100644 cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/po/CsDevCapacityPO.java create mode 100644 cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/equipment/CsDevCapacityController.java create mode 100644 cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/mapper/CsDevCapacityPOMapper.java create mode 100644 cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/mapper/mapping/CsDevCapacityPOMapper.xml create mode 100644 cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/CsDevCapacityPOService.java create mode 100644 cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsDevCapacityPOServiceImpl.java diff --git a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/po/CsDevCapacityPO.java b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/po/CsDevCapacityPO.java new file mode 100644 index 0000000..a311cd8 --- /dev/null +++ b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/po/CsDevCapacityPO.java @@ -0,0 +1,42 @@ +package com.njcn.csdevice.pojo.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.math.BigDecimal; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * + * Description: + * Date: 2023/9/27 10:29【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +@NoArgsConstructor +@TableName(value = "cs_dev_capacity") +public class CsDevCapacityPO { + /** + * 监测点id + */ + @TableField(value = "line_id") + private String lineId; + + /** + * 模块(0:表示主模块,其余数字表示当前模块,例如,1表示模块1) + */ + @TableField(value = "cldid") + private Integer cldid; + + /** + * 设备容量 + */ + @TableField(value = "capacity") + private Double capacity; +} \ No newline at end of file diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/equipment/CsDevCapacityController.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/equipment/CsDevCapacityController.java new file mode 100644 index 0000000..6d73a28 --- /dev/null +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/equipment/CsDevCapacityController.java @@ -0,0 +1,47 @@ +package com.njcn.csdevice.controller.equipment; + +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.enums.common.LogEnum; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.common.utils.HttpResultUtil; +import com.njcn.csdevice.pojo.po.CsDevCapacityPO; +import com.njcn.csdevice.pojo.po.CsDevModelPO; +import com.njcn.csdevice.service.CsDevCapacityPOService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +/** + * Description: + * 接口文档访问地址:http://serverIP:port/swagger-ui.html + * Date: 2023/3/27 15:31【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Slf4j +@RestController +@RequestMapping("/capacity") +@Api(tags = "设备电流限值") +@AllArgsConstructor +public class CsDevCapacityController extends BaseController { + + private final CsDevCapacityPOService csDevCapacityPOService; + + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/getDevCapacity") + @ApiOperation("根据设备id获取电流限值") + @ApiImplicitParam(name = "id", value = "设备id", required = true) + public HttpResult getDevCapacity(@RequestParam("id") String id){ + String methodDescribe = getMethodDescribe("getDevCapacity"); + Double limit = csDevCapacityPOService.getDevCapacity(id); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, limit, methodDescribe); + } + +} diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/mapper/CsDevCapacityPOMapper.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/mapper/CsDevCapacityPOMapper.java new file mode 100644 index 0000000..8cb8db4 --- /dev/null +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/mapper/CsDevCapacityPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.csdevice.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.csdevice.pojo.po.CsDevCapacityPO; + +/** + * + * Description: + * Date: 2023/9/27 10:29【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface CsDevCapacityPOMapper extends BaseMapper { +} \ No newline at end of file diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/mapper/mapping/CsDevCapacityPOMapper.xml b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/mapper/mapping/CsDevCapacityPOMapper.xml new file mode 100644 index 0000000..c21df56 --- /dev/null +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/mapper/mapping/CsDevCapacityPOMapper.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + line_id, cldid, capacity + + \ No newline at end of file diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/CsDevCapacityPOService.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/CsDevCapacityPOService.java new file mode 100644 index 0000000..4e8e0a9 --- /dev/null +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/CsDevCapacityPOService.java @@ -0,0 +1,17 @@ +package com.njcn.csdevice.service; + +import com.njcn.csdevice.pojo.po.CsDevCapacityPO; +import com.baomidou.mybatisplus.extension.service.IService; + /** + * + * Description: + * Date: 2023/9/27 10:29【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface CsDevCapacityPOService extends IService{ + + + Double getDevCapacity(String id); + } diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsDevCapacityPOServiceImpl.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsDevCapacityPOServiceImpl.java new file mode 100644 index 0000000..56fe9f7 --- /dev/null +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsDevCapacityPOServiceImpl.java @@ -0,0 +1,55 @@ +package com.njcn.csdevice.service.impl; + +import com.njcn.common.pojo.exception.BusinessException; +import com.njcn.csdevice.enums.AlgorithmResponseEnum; +import com.njcn.csdevice.pojo.po.CsLinePO; +import com.njcn.csdevice.service.CsLinePOService; +import com.njcn.system.api.DicDataFeignClient; +import com.njcn.system.enums.DicDataEnum; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.csdevice.mapper.CsDevCapacityPOMapper; +import com.njcn.csdevice.pojo.po.CsDevCapacityPO; +import com.njcn.csdevice.service.CsDevCapacityPOService; + +import java.text.DecimalFormat; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import java.util.stream.Collectors; + +/** + * + * Description: + * Date: 2023/9/27 10:29【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +@RequiredArgsConstructor +public class CsDevCapacityPOServiceImpl extends ServiceImpl implements CsDevCapacityPOService{ + + private final CsLinePOService csLinePOService; + private final DicDataFeignClient dicDataFeignClient; + private final DecimalFormat df = new DecimalFormat("#0.000"); + + @Override + public Double getDevCapacity(String id) { + List csLinePOS = csLinePOService.queryByDevId(id); + + String areaId = dicDataFeignClient.getDicDataByCode(DicDataEnum.OUTPUT_SIDE.getCode()).getData().getId(); + + Optional.ofNullable(csLinePOS).orElseThrow(()-> new BusinessException(AlgorithmResponseEnum.LINE_DATA_ERROR)); + List collect1 = csLinePOS.stream().filter(temp -> Objects.equals(areaId, temp.getPosition())).collect(Collectors.toList()); + /*治理侧监测点*/ + CsLinePO csLinePO = collect1.get(0); + CsDevCapacityPO one = this.lambdaQuery().eq(CsDevCapacityPO::getLineId, csLinePO.getLineId()).eq(CsDevCapacityPO::getCldid, 0).one(); + Optional.ofNullable(one).orElseThrow(()-> new BusinessException(AlgorithmResponseEnum.DATA_MISSING)); + + + return Double.valueOf(df.format(one.getCapacity()*0.1)); + } +} diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOServiceImpl.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOServiceImpl.java index 11ba76e..f65d4a2 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOServiceImpl.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOServiceImpl.java @@ -23,7 +23,9 @@ import com.njcn.system.pojo.po.EleEvtParm; import com.njcn.user.enums.AppRoleEnum; import com.njcn.web.utils.RequestUtil; import lombok.RequiredArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.BeanUtils; +import org.springframework.data.domain.PageImpl; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -202,9 +204,25 @@ public class CsEventUserPOServiceImpl extends ServiceImplObjects.equals(temp.getDeviceId(),csEventUserQueryPage.getDeviceId())).collect(Collectors.toList()); } - returnpage.setRecords (list); + List list1 = this.startPage(list, csEventUserQueryPage.getPageNum(), csEventUserQueryPage.getPageSize()); + returnpage.setRecords (list1); returnpage.setTotal(list.size()); return returnpage; } + + + public List startPage(List list, Integer pageNum, + Integer pageSize) { + int total = list.size(); + int size = pageNum * pageSize > total ? total : pageNum * pageSize; + + int startNum = (pageNum - 1) * pageSize; + if (startNum > size){ + startNum = 1; + } + List dataList = list.subList(startNum, size); + return dataList; + } + } diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/StableDataServiceImpl.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/StableDataServiceImpl.java index 009b01a..6795159 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/StableDataServiceImpl.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/StableDataServiceImpl.java @@ -284,7 +284,7 @@ public class StableDataServiceImpl implements StableDataService { List collect = csLinePOList.stream().map(CsLinePO::getLineId).collect(Collectors.toList()); String areaId = dicDataFeignClient.getDicDataByCode(DicDataEnum.OUTPUT_SIDE.getCode()).getData().getId(); Optional.ofNullable(csLinePOList).orElseThrow(()-> new BusinessException(AlgorithmResponseEnum.LINE_DATA_ERROR)); - collect = csLinePOList.stream().filter(temp->Objects.equals(areaId,temp.getPosition())).map(CsLinePO::getLineId).collect(Collectors.toList()); +// collect = csLinePOList.stream().filter(temp->Objects.equals(areaId,temp.getPosition())).map(CsLinePO::getLineId).collect(Collectors.toList()); List data = csStatisticalSetFeignClient.queryStatisticalSelect(commonStatisticalQueryParam.getStatisticalId()).getData();