Browse Source

CQC 报表代码上传到cqc平台接口联调,bug修复

thing_master
xiachao 1 year ago
parent
commit
7d9e1a076f
  1. 2
      modules/cqc-service/src/main/java/com/thing/cqc/cqcCarbonReport/dto/CqcCarbonReportDTO.java
  2. 5
      modules/cqc-service/src/main/java/com/thing/cqc/cqcCarbonReport/entity/CqcCarbonReportEntity.java
  3. 5
      modules/cqc-service/src/main/java/com/thing/cqc/cqcCarbonReport/service/impl/CqcCarbonReportServiceImpl.java
  4. 2
      modules/cqc-service/src/main/java/com/thing/cqc/rpcService/service/impl/CqcRpcServiceImpl.java
  5. 63
      modules/thing/src/main/java/com/thing/sys/biz/utils/HttpClientUtil.java

2
modules/cqc-service/src/main/java/com/thing/cqc/cqcCarbonReport/dto/CqcCarbonReportDTO.java

@ -106,6 +106,8 @@ public class CqcCarbonReportDTO implements Serializable {
private String productModelCn; private String productModelCn;
@Schema(description = "接受核查的产品型号(英文)") @Schema(description = "接受核查的产品型号(英文)")
private String productModelEn; private String productModelEn;
@Schema(description = "核查产品行业类型")
private String cateId;
@Schema(description = "产品碳足迹数据开始时间") @Schema(description = "产品碳足迹数据开始时间")
private String startDate; private String startDate;
@Schema(description = "产品碳足迹数据结束时间") @Schema(description = "产品碳足迹数据结束时间")

5
modules/cqc-service/src/main/java/com/thing/cqc/cqcCarbonReport/entity/CqcCarbonReportEntity.java

@ -3,6 +3,7 @@ package com.thing.cqc.cqcCarbonReport.entity;
import com.mybatisflex.annotation.Id; import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.Table; import com.mybatisflex.annotation.Table;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
@ -188,6 +189,10 @@ public class CqcCarbonReportEntity implements Serializable {
* 接受核查的产品型号英文 * 接受核查的产品型号英文
*/ */
private String productModelEn; private String productModelEn;
/**
* 核查产品行业类型
*/
private String cateId;
/** /**
* 产品碳足迹数据开始时间 * 产品碳足迹数据开始时间
*/ */

5
modules/cqc-service/src/main/java/com/thing/cqc/cqcCarbonReport/service/impl/CqcCarbonReportServiceImpl.java

@ -35,6 +35,7 @@ import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -87,6 +88,7 @@ public class CqcCarbonReportServiceImpl extends BaseServiceImpl<CqcCarbonReportM
@Override @Override
public Result<String> uploadReport(Long id) { public Result<String> uploadReport(Long id) {
Result<String> result = new Result<>(); Result<String> result = new Result<>();
List<CqcCarbonReportDTO> dtos = new ArrayList<>();
CqcCarbonReportDTO reportDTO = this.getByIdAs(id,CqcCarbonReportDTO.class); CqcCarbonReportDTO reportDTO = this.getByIdAs(id,CqcCarbonReportDTO.class);
String applyNo = reportDTO.getApplyNo(); String applyNo = reportDTO.getApplyNo();
if(ObjectUtils.isNotEmpty(reportDTO.getApplyNo())){ if(ObjectUtils.isNotEmpty(reportDTO.getApplyNo())){
@ -97,7 +99,8 @@ public class CqcCarbonReportServiceImpl extends BaseServiceImpl<CqcCarbonReportM
reportDTO.setEnergyList(cqcCarbonEnergyService.listAs(Map.of("applyNo",applyNo), CqcCarbonEnergyDTO.class)); reportDTO.setEnergyList(cqcCarbonEnergyService.listAs(Map.of("applyNo",applyNo), CqcCarbonEnergyDTO.class));
reportDTO.setWasteList(cqcCarbonDiscardService.listAs(Map.of("applyNo",applyNo), CqcCarbonDiscardDTO.class)); reportDTO.setWasteList(cqcCarbonDiscardService.listAs(Map.of("applyNo",applyNo), CqcCarbonDiscardDTO.class));
} }
String paramBodyStr = JSONObject.toJSONString(reportDTO);
dtos.add(reportDTO);
String paramBodyStr = JSONObject.toJSONString(dtos);
try { try {
String reqResult = cqcRpcService.doUploadData(paramBodyStr); String reqResult = cqcRpcService.doUploadData(paramBodyStr);

2
modules/cqc-service/src/main/java/com/thing/cqc/rpcService/service/impl/CqcRpcServiceImpl.java

@ -21,7 +21,7 @@ public class CqcRpcServiceImpl implements CqcRpcService {
public String doUploadData(String param) throws Exception { public String doUploadData(String param) throws Exception {
//数据加密 //数据加密
String encryptParam = JsonCryptoUtils.encryptJson(param,JsonCryptoUtils.SECRETKEY); String encryptParam = JsonCryptoUtils.encryptJson(param,JsonCryptoUtils.SECRETKEY);
Map<String,String> paramMap = new HashMap<>();
Map<String,Object> paramMap = new HashMap<>();
paramMap.put("token",token); paramMap.put("token",token);
paramMap.put("content",encryptParam); paramMap.put("content",encryptParam);
String postUrl = url+uploadDataFix; String postUrl = url+uploadDataFix;

63
modules/thing/src/main/java/com/thing/sys/biz/utils/HttpClientUtil.java

@ -1,26 +1,26 @@
package com.thing.sys.biz.utils; package com.thing.sys.biz.utils;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.http.HttpEntity; import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse; import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost; import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder; import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.message.BasicNameValuePair;
import java.io.BufferedInputStream; import java.io.BufferedInputStream;
import java.io.IOException; import java.io.IOException;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException; import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map; import java.util.Map;
public class HttpClientUtil { public class HttpClientUtil {
public static CloseableHttpClient httpClient = HttpClientBuilder.create().build(); public static CloseableHttpClient httpClient = HttpClientBuilder.create().build();
private static final ObjectMapper objectMapper = new ObjectMapper();
/** /**
* get请求获取String类型数据 * get请求获取String类型数据
* @param url 请求链接 * @param url 请求链接
@ -47,37 +47,34 @@ public class HttpClientUtil {
} }
/** /**
* post方式请求数据
* @param url 请求链接
* @param data post数据体
* @return
* POST method to send JSON data
* @param url Request URL
* @param data Map data to be converted to JSON
* @return Response as a string
*/ */
@SuppressWarnings("unchecked")
public static String post(String url, Map<String, String> data) {
StringBuffer sb = new StringBuffer();
public static String post(String url, Map<String, Object> data) {
StringBuilder sb = new StringBuilder();
HttpPost httpPost = new HttpPost(url); HttpPost httpPost = new HttpPost(url);
List<NameValuePair> valuePairs = new ArrayList<>();
// Ensure 'data' is not null
if (data != null) {
// Iterate through the map entries
for (Map.Entry<String, String> entry : data.entrySet()) {
// Create a NameValuePair and add it to the list
valuePairs.add(new BasicNameValuePair(entry.getKey(), entry.getValue()));
}
}
try { try {
// Set the entity of the HttpPost with UrlEncodedFormEntity
httpPost.setEntity(new UrlEncodedFormEntity(valuePairs, "UTF-8"));
HttpResponse response = httpClient.execute(httpPost);
HttpEntity httpEntity = response.getEntity();
BufferedInputStream bis = new BufferedInputStream(httpEntity.getContent());
byte[] buffer = new byte[128];
int bytesRead;
// Read the response content
while ((bytesRead = bis.read(buffer)) != -1) {
sb.append(new String(buffer, 0, bytesRead, "UTF-8"));
// Convert Map to JSON string
String jsonData = objectMapper.writeValueAsString(data);
// Set the entity of the HttpPost with StringEntity containing JSON data
StringEntity stringEntity = new StringEntity(jsonData, "UTF-8");
stringEntity.setContentType("application/json");
httpPost.setEntity(stringEntity);
try (CloseableHttpResponse response = httpClient.execute(httpPost)) {
HttpEntity httpEntity = response.getEntity();
try (BufferedInputStream bis = new BufferedInputStream(httpEntity.getContent())) {
byte[] buffer = new byte[128];
int bytesRead;
// Read the response content
while ((bytesRead = bis.read(buffer)) != -1) {
sb.append(new String(buffer, 0, bytesRead, "UTF-8"));
}
}
} }
} catch (UnsupportedEncodingException e) { } catch (UnsupportedEncodingException e) {
// Handle encoding errors // Handle encoding errors

Loading…
Cancel
Save