|  |  |  | 
|---|
|  |  |  | package com.fzzy.push.shjdjw2023; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson.JSON; | 
|---|
|  |  |  | import com.alibaba.fastjson.TypeReference; | 
|---|
|  |  |  | import com.fzzy.api.entity.ApiConfs; | 
|---|
|  |  |  | import com.fzzy.api.utils.AESUtils; | 
|---|
|  |  |  | import com.fzzy.api.utils.MyMD5Util; | 
|---|
|  |  |  | import com.fzzy.api.utils.SnowflakeIdWorker; | 
|---|
|  |  |  | import com.fzzy.push.gd2022.dto.GD2022AuthToken; | 
|---|
|  |  |  | import com.fzzy.push.gd2022.dto.GD2022ResponseDto; | 
|---|
|  |  |  | import com.fzzy.push.shjdjw2023.dto.ShjdjwRespDto; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import org.apache.commons.lang.StringUtils; | 
|---|
|  |  |  | import java.io.*; | 
|---|
|  |  |  | import java.lang.reflect.Type; | 
|---|
|  |  |  | import java.net.HttpURLConnection; | 
|---|
|  |  |  | import java.net.URL; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  | import java.util.UUID; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 上海嘉定纪委监管平台-上传数据服务类 | 
|---|
|  |  |  | 
|---|
|  |  |  | * @throws Exception | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @SuppressWarnings("resource") | 
|---|
|  |  |  | public static GD2022ResponseDto postPushData(String url, String data , ApiConfs apiConfs) throws Exception { | 
|---|
|  |  |  | public static ShjdjwRespDto postPushData(String url, String data , ApiConfs apiConfs) throws Exception { | 
|---|
|  |  |  | log.info("---------接口请求地址:" +url+ "----------参数:" + data +"---------"); | 
|---|
|  |  |  | BufferedReader in = null; | 
|---|
|  |  |  | URL urls = new URL(url); | 
|---|
|  |  |  | HttpURLConnection connection = null; | 
|---|
|  |  |  | OutputStream outputStream = null; | 
|---|
|  |  |  | String rs = ""; | 
|---|
|  |  |  | GD2022ResponseDto responseDto; | 
|---|
|  |  |  | ShjdjwRespDto responseDto = null; | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | String md = AESUtils.encryptByEcb(data, apiConfs.getPublicKey()); | 
|---|
|  |  |  | log.info("---------接口请求地址:" +url+ "----------密文参数:" + md +"---------"); | 
|---|
|  |  |  | connection = (HttpURLConnection) urls.openConnection(); | 
|---|
|  |  |  | connection.setRequestProperty("Content-Type", "application/json;charset=UTF-8"); | 
|---|
|  |  |  | connection.setDoOutput(true); | 
|---|
|  |  |  | 
|---|
|  |  |  | connection.setConnectTimeout(20000); | 
|---|
|  |  |  | connection.setReadTimeout(30000); | 
|---|
|  |  |  | connection.setRequestMethod("POST"); | 
|---|
|  |  |  | StringBuffer buffer = new StringBuffer(); | 
|---|
|  |  |  | buffer.append(md); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | outputStream = connection.getOutputStream(); | 
|---|
|  |  |  | outputStream.write(buffer.toString().getBytes("UTF-8")); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | outputStream.write(data.getBytes("UTF-8")); | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | connection.connect(); | 
|---|
|  |  |  | if (connection.getResponseCode() == 200) { | 
|---|
|  |  |  | 
|---|
|  |  |  | System.out.println("发生异常"); | 
|---|
|  |  |  | log.error(e.getMessage(),e); | 
|---|
|  |  |  | rs = null; | 
|---|
|  |  |  | return new GD2022ResponseDto(99,e.getMessage()); | 
|---|
|  |  |  | return new ShjdjwRespDto(99,e.getMessage()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | log.info("---------接口返回:" + rs +"---------"); | 
|---|
|  |  |  | responseDto = JSON.parseObject(rs,GD2022ResponseDto.class); | 
|---|
|  |  |  | if(responseDto == null )   return new GD2022ResponseDto(99,"接口请求发生未知错误"); | 
|---|
|  |  |  | if(StringUtils.isNotEmpty(rs)){ | 
|---|
|  |  |  | rs = rs.replaceAll("\"", ""); | 
|---|
|  |  |  | log.info("---------接口返回,秘文:" + rs +"---------"); | 
|---|
|  |  |  | rs = AESUtils.decrypt(rs, apiConfs.getPublicKey()); | 
|---|
|  |  |  | log.info("---------接口返回,解析后:" + rs +"---------"); | 
|---|
|  |  |  | responseDto = JSON.parseObject(rs, ShjdjwRespDto.class); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(responseDto == null )  { | 
|---|
|  |  |  | return new ShjdjwRespDto(99,"接口请求发生未知错误"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return responseDto; | 
|---|
|  |  |  | } finally { | 
|---|
|  |  |  | try { | 
|---|