Sfoglia il codice sorgente

自测测风塔功能

shiyue 1 anno fa
parent
commit
6d7cababee

+ 13 - 2
energy-manage-service/src/main/java/com/energy/manage/service/controller/anemometertower/AnemometerTowerController.java

@@ -8,6 +8,7 @@ import com.energy.manage.service.domain.dto.anemometertower.*;
 import com.energy.manage.service.domain.dto.windfield.WindFieldPageDto;
 import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerHeightVo;
 import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerPageVo;
+import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerVo;
 import com.energy.manage.service.service.anemometertower.AnemometerTowerService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -62,6 +63,7 @@ public class AnemometerTowerController {
         return ResultResp.SUCCESS(page);
     }
 
+    @Deprecated
     @UserLoginToken
     @PostMapping(value = "/bathAnemometerTowerHeight")
     @ApiOperation(value = "批量绑定测风塔层高数据")
@@ -74,12 +76,21 @@ public class AnemometerTowerController {
     @UserLoginToken
     @PostMapping(value = "/getAnemometerTower")
     @ApiOperation(value = "查询测风塔数据详情对象")
-    public ResultResp<AnemometerTowerPageVo> getAnemometerTowerVo(@RequestBody AnemometerTowerDto anemometerTowerDto) {
-        AnemometerTowerPageVo vo  = anemometerTowerService.getAnemometerTowerVo(anemometerTowerDto);
+    public ResultResp<AnemometerTowerVo> getAnemometerTowerVo(@RequestBody AnemometerTowerDto anemometerTowerDto) {
+        AnemometerTowerVo vo  = anemometerTowerService.getAnemometerTowerVo(anemometerTowerDto);
         return ResultResp.SUCCESS(vo);
     }
 
+    @UserLoginToken
+    @PostMapping(value = "/updateAnemometerTower")
+    @ApiOperation(value = "修改测风塔数据")
+    public ResultResp updateAnemometerTower(@RequestBody AnemometerTowerUpdateDto anemometerTowerUpdateDto) {
+        boolean flg = anemometerTowerService.updateAnemometerTower(anemometerTowerUpdateDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
 
+    @Deprecated
     @UserLoginToken
     @PostMapping(value = "/getAnemometerTowerHeight")
     @ApiOperation(value = "查询测风塔下层高数据")

+ 20 - 6
energy-manage-service/src/main/java/com/energy/manage/service/domain/dto/anemometertower/AnemometerTowerCreateDto.java

@@ -6,6 +6,8 @@ import lombok.Data;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.util.List;
+
 /**
  * 添加测风塔
  */
@@ -14,12 +16,6 @@ import lombok.Setter;
 @ApiModel("创建功率曲线参数")
 public class AnemometerTowerCreateDto {
 
-
-    /**
-     * 测风塔编号
-     */
-    @ApiModelProperty("测风塔编号")
-    private String anemometerCode;
     /**
      * 测风塔名称
      */
@@ -37,4 +33,22 @@ public class AnemometerTowerCreateDto {
     private String latitude;
 
 
+    @ApiModelProperty("测风塔高度")
+    private List<AnemometerTowerHeightDto> list;
+
+
+    @Getter
+    @Setter
+    public static class AnemometerTowerHeightListDto {
+
+        /**
+         * 测风塔高度
+         */
+        @ApiModelProperty("测风塔高度")
+        private String anemometerHeight;
+
+
+    }
+
+
 }

+ 58 - 0
energy-manage-service/src/main/java/com/energy/manage/service/domain/dto/anemometertower/AnemometerTowerUpdateDto.java

@@ -0,0 +1,58 @@
+package com.energy.manage.service.domain.dto.anemometertower;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * 添加测风塔
+ */
+@Getter
+@Setter
+@ApiModel("创建功率曲线参数")
+public class AnemometerTowerUpdateDto {
+
+    /**
+     * 测风塔编号
+     */
+    @ApiModelProperty("测风塔编号")
+    private String anemometerCode;
+    /**
+     * 测风塔名称
+     */
+    @ApiModelProperty("测风塔名称")
+    private String anemometerName;
+    /**
+     * 经度
+     */
+    @ApiModelProperty("经度")
+    private String longitude;
+    /**
+     * 纬度
+     */
+    @ApiModelProperty("纬度")
+    private String latitude;
+
+
+    @ApiModelProperty("测风塔高度")
+    private List<AnemometerTowerHeightDto> list;
+
+
+    @Getter
+    @Setter
+    public static class AnemometerTowerHeightListDto {
+
+        /**
+         * 测风塔高度
+         */
+        @ApiModelProperty("测风塔高度")
+        private String anemometerHeight;
+
+
+    }
+
+
+}

+ 61 - 0
energy-manage-service/src/main/java/com/energy/manage/service/domain/vo/anemometertower/AnemometerTowerVo.java

@@ -0,0 +1,61 @@
+package com.energy.manage.service.domain.vo.anemometertower;
+
+
+import com.energy.manage.common.po.anemometertower.AnemometerTowerPO;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+import java.util.List;
+
+@Getter
+@Setter
+@ApiModel
+public class AnemometerTowerVo {
+
+
+    /**
+     * 测风塔编号
+     */
+    @ApiModelProperty("测风塔编号")
+    private String anemometerCode;
+    /**
+     * 测风塔名称
+     */
+    @ApiModelProperty("测风塔名称")
+    private String anemometerName;
+    /**
+     * 经度
+     */
+    @ApiModelProperty("经度")
+    private String longitude;
+    /**
+     * 纬度
+     */
+    @ApiModelProperty("纬度")
+    private String latitude;
+    /**
+     * 状态
+     */
+    @ApiModelProperty("状态")
+    private Integer state;
+
+    @ApiModelProperty("测风塔高度")
+    private List<AnemometerTowerHeightList> list;
+
+    @Getter
+    @Setter
+    public static class AnemometerTowerHeightList {
+
+        /**
+         * 测风塔高度
+         */
+        @ApiModelProperty("测风塔高度")
+        private String anemometerHeight;
+
+
+    }
+}

+ 9 - 1
energy-manage-service/src/main/java/com/energy/manage/service/service/anemometertower/AnemometerTowerService.java

@@ -6,6 +6,7 @@ import com.energy.manage.service.domain.dto.anemometertower.*;
 import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerByFieldVo;
 import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerHeightVo;
 import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerPageVo;
+import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerVo;
 
 import java.util.List;
 
@@ -29,6 +30,13 @@ public interface AnemometerTowerService {
      */
     boolean delAnemometerTower(AnemometerTowerDelDto anemometerTowerDelDto);
 
+    /**
+     * 修改测风塔信息
+     * @param anemometerTowerUpdateDto
+     * @return
+     */
+    boolean updateAnemometerTower(AnemometerTowerUpdateDto anemometerTowerUpdateDto);
+
 
     /**
      * 修改测风塔状态
@@ -59,7 +67,7 @@ public interface AnemometerTowerService {
      * @param anemometerTowerDto
      * @return
      */
-    AnemometerTowerPageVo getAnemometerTowerVo(AnemometerTowerDto anemometerTowerDto);
+    AnemometerTowerVo getAnemometerTowerVo(AnemometerTowerDto anemometerTowerDto);
 
 
     /**

+ 67 - 11
energy-manage-service/src/main/java/com/energy/manage/service/service/anemometertower/impl/AnemometerTowerServiceImpl.java

@@ -17,6 +17,7 @@ import com.energy.manage.service.domain.dto.anemometertower.*;
 import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerByFieldVo;
 import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerHeightVo;
 import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerPageVo;
+import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerVo;
 import com.energy.manage.service.domain.vo.windenginemill.WindEngineMillPageVo;
 import com.energy.manage.service.mappers.anemometertower.AnemometerTowerDataMapper;
 import com.energy.manage.service.mappers.anemometertower.AnemometerTowerHeightMapper;
@@ -30,6 +31,7 @@ import com.google.common.collect.Lists;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 import tk.mybatis.mapper.entity.Example;
@@ -65,8 +67,20 @@ public class AnemometerTowerServiceImpl extends BaseServiceImpl<AnemometerTowerP
         anemometerTowerPO.setCreateTime(new Date());
         anemometerTowerPO.setUpdateTime(new Date());
         anemometerTowerPO.setAnemometerCode(IdPrefixEnum.WIND_TOWER_NUMBER.getCode().concat(IdGeneratorUtil.zeroFillUtil(cacheService.incr(ManagerRedisKeyConstant.build(ManagerRedisKeyConstant.IDGENERATOR_CONSTANTS_KEY, IdPrefixEnum.WIND_TOWER_NUMBER.getCode())))));
+        int count = anemometerTowerMapper.insertUseGeneratedKeys(anemometerTowerPO);
+
+        if (!CollectionUtils.isEmpty(anemometerTowerCreateDto.getList())) {
+            AnemometerTowerHeightPO anemometerTowerHeightPO = null;
+            List<AnemometerTowerHeightPO> anemometerTowerHeightPOS = Lists.newArrayList();
+            for (AnemometerTowerHeightDto anemometerTowerHeight : anemometerTowerCreateDto.getList()) {
+                anemometerTowerHeightPO = new AnemometerTowerHeightPO();
+                BeanUtil.copyProperties(anemometerTowerHeight, anemometerTowerHeightPO);
+                anemometerTowerHeightPOS.add(anemometerTowerHeightPO);
+            }
+            anemometerTowerHeightMapper.insertList(anemometerTowerHeightPOS);
+        }
 
-        return anemometerTowerMapper.insertUseGeneratedKeys(anemometerTowerPO) > 0;
+        return count > 0 ? true : false;
     }
 
     @Override
@@ -82,6 +96,35 @@ public class AnemometerTowerServiceImpl extends BaseServiceImpl<AnemometerTowerP
     }
 
     @Override
+    public boolean updateAnemometerTower(AnemometerTowerUpdateDto anemometerTowerUpdateDto) {
+
+        AnemometerTowerPO po = new AnemometerTowerPO();
+        BeanUtil.copyProperties(anemometerTowerUpdateDto, po);
+        Example queryExample = new Example(AnemometerTowerPO.class);
+        Example.Criteria criteria = queryExample.createCriteria();
+        criteria.andEqualTo("anemometerCode", anemometerTowerUpdateDto.getAnemometerCode());
+        int count = anemometerTowerMapper.updateByExampleSelective(po, queryExample);
+
+        if (!CollectionUtils.isEmpty(anemometerTowerUpdateDto.getList())) {
+            Example queryHExample = new Example(AnemometerTowerHeightPO.class);
+            Example.Criteria criteriaH = queryHExample.createCriteria();
+            criteriaH.andEqualTo("anemometerCode", anemometerTowerUpdateDto.getAnemometerCode());
+            anemometerTowerHeightMapper.deleteByExample(queryHExample);
+
+            AnemometerTowerHeightPO anemometerTowerHeightPO = null;
+            List<AnemometerTowerHeightPO> anemometerTowerHeightPOS = Lists.newArrayList();
+            for (AnemometerTowerHeightDto anemometerTowerHeight : anemometerTowerUpdateDto.getList()) {
+                anemometerTowerHeightPO = new AnemometerTowerHeightPO();
+                BeanUtil.copyProperties(anemometerTowerHeight, anemometerTowerHeightPO);
+                anemometerTowerHeightPOS.add(anemometerTowerHeightPO);
+            }
+            anemometerTowerHeightMapper.insertList(anemometerTowerHeightPOS);
+        }
+
+        return count > 0 ? true : false;
+    }
+
+    @Override
     public boolean updateAnemometerTowerState(AnemometerTowerStateDto anemometerTowerStateDto) {
 
         AnemometerTowerPO po = new AnemometerTowerPO();
@@ -96,9 +139,7 @@ public class AnemometerTowerServiceImpl extends BaseServiceImpl<AnemometerTowerP
     @Override
     public Page<AnemometerTowerPageVo> getAnemometerTowerPage(AnemometerTowerPageDto anemometerTowerPageDto) {
         PageHelper.startPage(anemometerTowerPageDto.getPageNum(), anemometerTowerPageDto.getPageSize());
-
         List<AnemometerTowerPageVo> list = anemometerTowerMapper.selectAnemometerTowerPage(anemometerTowerPageDto);
-
         Long total = org.apache.commons.collections.CollectionUtils.isEmpty(list) ? 0L : new PageInfo<>(list).getTotal();
         return Page.build(anemometerTowerPageDto.getPageNum(), anemometerTowerPageDto.getPageSize(), total, list);
     }
@@ -119,16 +160,31 @@ public class AnemometerTowerServiceImpl extends BaseServiceImpl<AnemometerTowerP
     }
 
     @Override
-    public AnemometerTowerPageVo getAnemometerTowerVo(AnemometerTowerDto anemometerTowerDto) {
+    public AnemometerTowerVo getAnemometerTowerVo(AnemometerTowerDto anemometerTowerDto) {
         AnemometerTowerPO anemometerTowerPO = new AnemometerTowerPO();
         anemometerTowerPO.setAnemometerCode(anemometerTowerDto.getAnemometerCode());
         AnemometerTowerPO po = anemometerTowerMapper.selectOne(anemometerTowerPO);
         if (null == po) {
             return null;
         }
-        AnemometerTowerPageVo anemometerTowerPageVo = new AnemometerTowerPageVo();
-        BeanUtil.copyProperties(po, anemometerTowerPageVo);
-        return anemometerTowerPageVo;
+        AnemometerTowerVo anemometerTowerVo = new AnemometerTowerVo();
+        BeanUtil.copyProperties(po, anemometerTowerVo);
+
+        AnemometerTowerHeightPO anemometerTowerHeightPO = new AnemometerTowerHeightPO();
+        anemometerTowerHeightPO.setAnemometerCode(anemometerTowerDto.getAnemometerCode());
+        List<AnemometerTowerHeightPO> list = anemometerTowerHeightMapper.select(anemometerTowerHeightPO);
+
+        // 处理高度集合
+        AnemometerTowerVo.AnemometerTowerHeightList anemometerTowerHeightList = null;
+        List<AnemometerTowerVo.AnemometerTowerHeightList> anemometerTowerHeightLists = Lists.newArrayList();
+        for (AnemometerTowerHeightPO anemometerTowerHeightPO1 : list) {
+            anemometerTowerHeightList = new AnemometerTowerVo.AnemometerTowerHeightList();
+            BeanUtil.copyProperties(anemometerTowerHeightPO1, anemometerTowerHeightList);
+            anemometerTowerHeightLists.add(anemometerTowerHeightList);
+        }
+        anemometerTowerVo.setList(anemometerTowerHeightLists);
+
+        return anemometerTowerVo;
     }
 
     @Override
@@ -164,15 +220,15 @@ public class AnemometerTowerServiceImpl extends BaseServiceImpl<AnemometerTowerP
         List<AnemometerTowerRelationPO> list = Lists.newLinkedList();
         for (AnemometerTowerRelationDto dto : anemometerTowerRelationDtos) {
             po = new AnemometerTowerRelationPO();
-            BeanUtil.copyProperties(dto,po);
+            BeanUtil.copyProperties(dto, po);
             list.add(po);
         }
-        return anemometerTowerRelationMapper.insertList(list)>0;
+        return anemometerTowerRelationMapper.insertList(list) > 0;
     }
 
     @Override
     public List<AnemometerTowerByFieldVo> getAnemometerTowerByField(String fieldCode) {
-        if(StringUtils.isEmpty(fieldCode)){
+        if (StringUtils.isEmpty(fieldCode)) {
             return null;
         }
         return anemometerTowerMapper.selectAnemometerTowerByfieldCode(fieldCode);
@@ -184,7 +240,7 @@ public class AnemometerTowerServiceImpl extends BaseServiceImpl<AnemometerTowerP
         Example queryExample = new Example(AnemometerTowerRelationPO.class);
         Example.Criteria criteria = queryExample.createCriteria();
         criteria.andEqualTo("fieldCode", fieldCode);
-        return anemometerTowerRelationMapper.deleteByExample(queryExample)>0;
+        return anemometerTowerRelationMapper.deleteByExample(queryExample) > 0;
     }