Преглед на файлове

智慧双碳 双碳新闻数据同步

ZhangManMan преди 2 години
родител
ревизия
a937915c75

+ 0 - 7
src/main/java/com/sky/ioc/controller/carbon/CarbonController.java

@@ -26,13 +26,6 @@ public class CarbonController {
         return carbonService.getFloorCoreIndicators(iocParam);
     }
 
-    @ApiOperation("碳配额")
-    @PostMapping("/getCarbonQuota")
-    public ReturnMsg getCarbonQuota(){
-        return carbonService.getCarbonData();
-    }
-
-
     @ApiOperation("碳排放分析")
     @PostMapping("/getCarbonInfo")
     public ReturnMsg getCarbonInfo(@RequestBody IocParam iocParam){

+ 17 - 0
src/main/java/com/sky/ioc/entity/domain/carbon/CarbonNotice.java

@@ -0,0 +1,17 @@
+package com.sky.ioc.entity.domain.carbon;
+
+import lombok.Data;
+
+@Data
+public class CarbonNotice {
+
+    private Integer id;
+    private String title;
+    private String content;
+    private String attachment;
+    private String createTime;
+    private String updateTime;
+    private String status;
+    private String createByName;
+
+}

+ 9 - 0
src/main/java/com/sky/ioc/mapper/carbon/CarbonNoticeMapper.java

@@ -0,0 +1,9 @@
+package com.sky.ioc.mapper.carbon;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sky.ioc.entity.domain.carbon.CarbonNotice;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface CarbonNoticeMapper extends BaseMapper<CarbonNotice> {
+}

+ 3 - 1
src/main/java/com/sky/ioc/service/carbon/CarbonService.java

@@ -104,5 +104,7 @@ public interface CarbonService {
 
     ReturnMsg getEnergyAnalysisHotInfo(IocParam iocParam);
 
-    ReturnMsg getCarbonData();
+    ReturnMsg getCarbonQuotaData();
+
+    ReturnMsg getCarbonNoticeData();
 }

+ 63 - 1
src/main/java/com/sky/ioc/service/carbon/impl/CarbonServiceImpl.java

@@ -5,12 +5,14 @@ import com.sky.ioc.entity.Indeicator;
 import com.sky.ioc.entity.Label;
 import com.sky.ioc.entity.Cake;
 import com.sky.ioc.entity.News;
+import com.sky.ioc.entity.domain.carbon.CarbonNotice;
 import com.sky.ioc.entity.domain.carbon.CarbonQuota;
 import com.sky.ioc.entity.domain.meeting.MeetingRecord;
 import com.sky.ioc.entity.params.IocParam;
 import com.sky.ioc.entity.params.IocTimeRange;
 import com.sky.ioc.mapper.BusMapper;
 import com.sky.ioc.mapper.PrintMapper;
+import com.sky.ioc.mapper.carbon.CarbonNoticeMapper;
 import com.sky.ioc.mapper.carbon.CarbonQuotaMapper;
 import com.sky.ioc.mapper.job.TokenMapper;
 import com.sky.ioc.service.carbon.CarbonService;
@@ -62,10 +64,14 @@ public class CarbonServiceImpl implements CarbonService {
     private String dataIp;
 
     final static  String CARBON_QUOTA_URL="%s/api/carbon/CARBON/quota/list";
+    final static  String CARBON_NOTICE_URL="%s/api/carbon/CARBON/notice/list";
 
     @Autowired
     CarbonQuotaMapper carbonQuotaMapper;
 
+    @Autowired
+    CarbonNoticeMapper carbonNoticeMapper;
+
 
 
 
@@ -856,7 +862,7 @@ public class CarbonServiceImpl implements CarbonService {
     }
 
     @Override
-    public ReturnMsg getCarbonData() {
+    public ReturnMsg getCarbonQuotaData() {
         String url =   String.format(CARBON_QUOTA_URL,"http://"+dataIp)+"??pageNum=1&pageSize=1000";
         Map<String,String> tokenMap = tokenMapper.getNewToken();
         String token ="Bearer eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6IjUwZTU1NTRkLWJjYzYtNGRhMS1iZDUxLWFhNTc3YzU4YTFiNCIsInVzZXJuYW1lIjoiYWRtaW4ifQ.X10VPYJfeeRTka7OtqNPOGMpL4QkW3fR_TfCKXCmO-yXbIIrr_40fcwiVnpXfYVENo_BvXWEACRd-Y6nXsbkog";
@@ -906,5 +912,61 @@ public class CarbonServiceImpl implements CarbonService {
         }
         //return null;
     }
+    @Override
+    public ReturnMsg getCarbonNoticeData() {
+        String url =   String.format(CARBON_NOTICE_URL,"http://"+dataIp)+"??pageNum=1&pageSize=1000";
+        Map<String,String> tokenMap = tokenMapper.getNewToken();
+        String token ="Bearer eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6IjUwZTU1NTRkLWJjYzYtNGRhMS1iZDUxLWFhNTc3YzU4YTFiNCIsInVzZXJuYW1lIjoiYWRtaW4ifQ.X10VPYJfeeRTka7OtqNPOGMpL4QkW3fR_TfCKXCmO-yXbIIrr_40fcwiVnpXfYVENo_BvXWEACRd-Y6nXsbkog";
+        if(tokenMap!=null){
+            token = "Bearer "+tokenMap.get("token");
+        }
+        // 创建一个请求头对象
+        HttpHeaders httpHeaders = new HttpHeaders();
+        // 设置参数
+        httpHeaders.set("authorization", token);
+        // 创建一个响应体对象
+        HttpEntity<String> httpEntity = new HttpEntity(httpHeaders);
+        // 3.创建RestTemplate
+        RestTemplate restTemplate = new RestTemplate();
+        // 发送GET请求
+        ResponseEntity<Map> responseEntity = restTemplate.exchange(url, HttpMethod.GET, httpEntity, Map.class);
+        // 获取响应对象里的 body 对象
+        Map<String, Object> body = responseEntity.getBody();
+        // 获取状态码
+        Integer code = (Integer)body.get("code");
+        // 获取响应信息
+        String message = (String)body.get("msg");
+        if(code==200){
+            ThreadLocalRandom random = ThreadLocalRandom.current();
+            ArrayList list = (ArrayList) body.get("rows");
+            if(list!=null&&list.size()>0){
+                carbonNoticeMapper.delete(null);
+                for (int i=0;i<list.size();i++){
+                    LinkedHashMap json = (LinkedHashMap) list.get(i);
+                    CarbonNotice carbonNotice = new CarbonNotice();
+                    carbonNotice.setId((Integer) json.get("id"));
+                    carbonNotice.setAttachment(String.valueOf(json.get("attachment")));
+                    carbonNotice.setTitle(String.valueOf(json.get("noticeTitle")));
+                    carbonNotice.setContent(String.valueOf(json.get("noticeContent")));
+                    carbonNotice.setStatus(String.valueOf(json.get("status")));
+                    carbonNotice.setCreateByName(String.valueOf(json.get("createByName")));
+                    if(json.get("createTime")!=null){
+                        carbonNotice.setCreateTime(String.valueOf(json.get("createTime")));
+                    }
+                    if(json.get("updateTime")!=null){
+                        carbonNotice.setUpdateTime(String.valueOf(json.get("updateTime")));
+                    }
+                    carbonNoticeMapper.insert(carbonNotice);
+
+                }
+            }
+            return ReturnMsg.ok();
+
+        }else{
+            log.info("获取双碳通知数据:"+message);
+            return  ReturnMsg.fail(message);
+        }
+        //return null;
+    }
 
 }