V3版本修改

v3_back
anthonywj 9 months ago
parent 00a048406e
commit 0cb7316059

@ -20,6 +20,8 @@ import com.glxp.udidl.admin.util.DateUtil;
import com.glxp.udidl.admin.util.FilterUdiUtils;
import com.glxp.udidl.admin.util.ResultVOUtils;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@ -31,7 +33,7 @@ import springfox.documentation.annotations.ApiIgnore;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@Slf4j
@RestController
public class UdiInfoController {
@ -457,7 +459,7 @@ public class UdiInfoController {
return ResultVOUtils.success(pageSimpleResponse);
} catch (Exception e) {
e.printStackTrace();
log.error(ExceptionUtils.getStackTrace(e));
return ResultVOUtils.error(500, "连接UDI数据下载服务出错");
}
}
@ -552,6 +554,7 @@ public class UdiInfoController {
} catch (Exception e) {
e.printStackTrace();
log.error(ExceptionUtils.getStackTrace(e));
return ResultVOUtils.error(500, "连接UDI数据下载服务出错");
}
}

@ -49,7 +49,7 @@ public class CompanyController {
public BaseResponse vailUdiToken(@RequestBody TokenRequest tokenRequest) {
if (StrUtil.isEmpty(tokenRequest.getTyshxydm())) {
if (StrUtil.isEmpty(tokenRequest.getTYSHXYDM())) {
return ResultVOUtils.error(500, "统一社会信用代码不能为空!");
}

@ -12,6 +12,8 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -27,6 +29,7 @@ import java.util.List;
@Api(tags = "阳光采购平台产品信息接口")
@RestController
@RequestMapping("udplat/goods")
@Slf4j
public class UdplatGoodsController {
@Autowired
@ -47,6 +50,7 @@ public class UdplatGoodsController {
try {
return udplatGoodsService.importExcel(file.getInputStream(), type);
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
return ResultVOUtils.error(-1, e.getMessage());
}
}

@ -1,6 +1,8 @@
package com.glxp.udidl.admin.converter;
import org.apache.commons.lang3.exception.ExceptionUtils;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

@ -13,6 +13,7 @@ import com.baomidou.mybatisplus.core.toolkit.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
import com.glxp.udidl.admin.util.BeanCopyUtils;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.apache.ibatis.binding.MapperMethod;
import org.apache.ibatis.logging.Log;
import org.apache.ibatis.logging.LogFactory;
@ -263,6 +264,7 @@ public interface BaseMapperPlus<M, T, V> extends BaseMapper<T> {
}
}
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("insertIgnoreBatch fail", e);
return false;
}
@ -314,6 +316,7 @@ public interface BaseMapperPlus<M, T, V> extends BaseMapper<T> {
}
}
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("insertIgnoreBatch fail", e);
return false;
}

@ -15,17 +15,22 @@ public class DeviceRequest {
* currentPageNumber : , 1
*/
@ApiModelProperty(value = "接口调用凭据")
private String accessToken;
@ApiModelProperty(value = "数据类型", example = "1 新发布")
private String dataType;
@ApiModelProperty(value = "请求时间范围")
private String rangeValue;
@ApiModelProperty(value = "请求分页数,初始请求时,从 1 开始")
private String currentPageNumber;
///无用数据
@ApiModelProperty(value = "接口调用凭据")
private String accessToken;
@ApiModelProperty(value = "请求范围1 按天请求2 按月请求")
private String requestType;
@ApiModelProperty(value = "请求时间范围")
private String rangeValue;
@ApiModelProperty(value = "最小销售单元产品标识;精准查询")
@JsonProperty("ZXXSDYCPBS")
@ -47,8 +52,6 @@ public class DeviceRequest {
@JsonProperty("ZCZBHHZBAPZBH")
private String ZCZBHHZBAPZBH;
@ApiModelProperty(value = "请求分页数,初始请求时,从 1 开始")
private String currentPageNumber;
@ApiModelProperty(value = "下载方式: auto自动 manual手动")
private String downloadType;

@ -0,0 +1,18 @@
package com.glxp.udidl.admin.req.udid;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Data
public class DeviceV3Request {
private String dataType;
private String rangeValue;
private Integer currentPageNumber;
private String ZXXSDYCPBS;
}

@ -1,29 +1,14 @@
package com.glxp.udidl.admin.req.udid;
import lombok.Data;
@Data
public class DownloadDiRequest {
/**
* accessToken : 70ACE0818B99E99D10046C6AAA6271109A0FD7643D57E0B4E4936E271757EF79F905F86F4492CC6C4388019B0AB925927216652B7D17090B794A9F34B10CD3B101A09182AF0AC9313FF8436964D5AF47E1600795405BCF94
* primaryDeviceId : 08714729040347
*/
private String ZXXSDYCPBS;
private String accessToken;
private String primaryDeviceId;
public String getAccessToken() {
return accessToken;
}
public void setAccessToken(String accessToken) {
this.accessToken = accessToken;
}
public String getPrimaryDeviceId() {
return primaryDeviceId;
}
public void setPrimaryDeviceId(String primaryDeviceId) {
this.primaryDeviceId = primaryDeviceId;
}
}

@ -12,5 +12,5 @@ public class TokenRequest {
private String appSecret;
@ApiModelProperty(value = "统一社会信用代码", required = true)
@JSONField(name = "TYSHXYDM")
private String tyshxydm;//统一社会信用代码 必须大写
private String TYSHXYDM;//统一社会信用代码 必须大写
}

@ -1,6 +1,7 @@
package com.glxp.udidl.admin.service.dataSync;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
@ -11,10 +12,7 @@ import com.glxp.udidl.admin.entity.udi.ProductInfoEntity;
import com.glxp.udidl.admin.entity.udid.Device;
import com.glxp.udidl.admin.entity.udid.JobLog;
import com.glxp.udidl.admin.entity.udid.TokenEntity;
import com.glxp.udidl.admin.req.udid.DeviceRequest;
import com.glxp.udidl.admin.req.udid.DownloadDiRequest;
import com.glxp.udidl.admin.req.udid.DownloadHistoryRequest;
import com.glxp.udidl.admin.req.udid.TokenRequest;
import com.glxp.udidl.admin.req.udid.*;
import com.glxp.udidl.admin.res.BaseResponse;
import com.glxp.udidl.admin.res.udid.DataSetHistoryResult;
import com.glxp.udidl.admin.res.udid.DataSetResult;
@ -24,11 +22,9 @@ import com.glxp.udidl.admin.service.info.CompanyService;
import com.glxp.udidl.admin.service.inout.DeviceService;
import com.glxp.udidl.admin.service.inout.ProductInfoService;
import com.glxp.udidl.admin.service.udi.JobLogService;
import com.glxp.udidl.admin.util.DateUtil;
import com.glxp.udidl.admin.util.HttpClient;
import com.glxp.udidl.admin.util.RedisUtil;
import com.glxp.udidl.admin.util.ResultVOUtils;
import com.glxp.udidl.admin.util.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@ -46,14 +42,9 @@ import java.util.stream.Collectors;
public class DeviceDownloadService {
private String token = "";
private int reCount = 0;
private CompanyEntity companyEntity;
private String url = "sharing/get";
@Resource
private CompanyService companyService;
@Resource
@ -73,6 +64,10 @@ public class DeviceDownloadService {
private static List<Map<String, String>> tokenList = new ArrayList<>();
@Resource
OkHttpCli okHttpCli;
/**
* token
*
@ -86,8 +81,10 @@ public class DeviceDownloadService {
TokenRequest tokenRequest = new TokenRequest();
tokenRequest.setAppId(companyEntity.getAppId());
tokenRequest.setAppSecret(companyEntity.getAppSecret());
tokenRequest.setTyshxydm(companyEntity.getTyshxydm());
String response = HttpClient.post("token/get", tokenRequest);
tokenRequest.setTYSHXYDM(companyEntity.getTyshxydm());
String json = JSONUtil.toJsonStr(tokenRequest);
String response = okHttpCli.doPostJson(UdidConfig.apiUrl + "token/get", json);
// String response = HttpClient.post("token/get", tokenRequest);
TokenEntity tokenEntity = (TokenEntity) JSONObject.parseObject(response, TokenEntity.class);
token = tokenEntity.getAccessToken();
redisUtil.setEx("UDISYNC_TOKEN", token, 1 * 60 * 60 * 6);
@ -97,7 +94,8 @@ public class DeviceDownloadService {
public String getTokenNow(TokenRequest tokenRequest) {
try {
String response = HttpClient.post("token/get", tokenRequest);
String json = JSONUtil.toJsonStr(tokenRequest);
String response = okHttpCli.doPostJson(UdidConfig.apiUrl + "token/get", json);
TokenEntity tokenEntity = (TokenEntity) JSONObject.parseObject(response, TokenEntity.class);
if (tokenEntity.getReturnCode() == 1) {
token = tokenEntity.getAccessToken();
@ -107,6 +105,7 @@ public class DeviceDownloadService {
}
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("国家库网络服务器异常", e);
return "国家库网络服务器异常!";
}
@ -122,12 +121,13 @@ public class DeviceDownloadService {
public DataSetSingleResult downloadByDi(String deviceId) {
DataSetSingleResult result = new DataSetSingleResult();
DownloadDiRequest downloadDiRequest = new DownloadDiRequest();
downloadDiRequest.setAccessToken(getToken());
downloadDiRequest.setPrimaryDeviceId(deviceId);
downloadDiRequest.setZXXSDYCPBS(deviceId);
String json = JSONUtil.toJsonStr(downloadDiRequest);
String response = "";
try {
response = HttpClient.post("sharing/single", downloadDiRequest);
response = okHttpCli.doPostJson(UdidConfig.apiUrl + "sharing/single", json, getHeaders());
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("下载产品标识详情数据异常,响应结果:{}", response);
result.setReturnCode(-1);
result.setReturnMsg(e.getMessage());
@ -136,6 +136,14 @@ public class DeviceDownloadService {
return JSONObject.parseObject(response, DataSetSingleResult.class);
}
public String[] getHeaders() {
List<String> header = new ArrayList<>();
header.add("accessToken");
header.add(getToken());
String[] strArray = new String[header.size()];
return header.toArray(strArray);
}
/**
*
*
@ -146,15 +154,18 @@ public class DeviceDownloadService {
*/
private DataSetResult getData(String rangeValue, int requestType, int page) {
DataSetResult result = new DataSetResult();
DeviceRequest deviceRequest = new DeviceRequest();
deviceRequest.setAccessToken(getToken());
deviceRequest.setRequestType(requestType + "");
deviceRequest.setRangeValue(rangeValue);
deviceRequest.setCurrentPageNumber(page + "");
DeviceV3Request deviceRequest = DeviceV3Request.builder()
.dataType("1")
.currentPageNumber(page)
.ZXXSDYCPBS(null)
.rangeValue(rangeValue).build();
String response = "";
try {
Thread.sleep(3 * 1000);
response = HttpClient.post(url, deviceRequest);
String json = JSONUtil.toJsonStr(deviceRequest);
response = okHttpCli.doPostJson(UdidConfig.apiUrl + "sharing/get", json, getHeaders());
} catch (InterruptedException e) {
result.setReturnCode(-1);
result.setReturnMsg(e.getMessage());
@ -170,17 +181,18 @@ public class DeviceDownloadService {
* @return
*/
private synchronized DataSetResult getData(DeviceRequest deviceRequest, int page) {
deviceRequest.setAccessToken(getToken());
deviceRequest.setCurrentPageNumber(page + "");
String response = "";
DeviceV3Request deviceV3Request = new DeviceV3Request();
BeanUtil.copyProperties(deviceRequest, deviceV3Request);
deviceV3Request.setCurrentPageNumber(page);
String key = "downloadUdiData";
if (redisUtil.getLock(key)) {
log.info("获取到锁");
redisUtil.setEx("downloadUdiData", "1", 5);
//目前限制为5秒访问一次
log.info("获取到锁的参数:" + page);
response = HttpClient.post(url, deviceRequest);
String json = JSONUtil.toJsonStr(deviceV3Request);
response = okHttpCli.doPostJson(UdidConfig.apiUrl + "sharing/get", json, getHeaders());
log.info("获取到结果," + response);
}
log.info("开始解析结果");
@ -292,7 +304,7 @@ public class DeviceDownloadService {
}
boolean hasData = true; //是否还有数据,如无退出
while (hasData) {
redisUtil.set("allUpdatePage", page+"");
redisUtil.set("allUpdatePage", page + "");
DataSetResult dataSetResult = getData(deviceRequest, page);
if (dataSetResult.getReturnCode() != 1 && reCount == 0) {
token = "";
@ -300,6 +312,7 @@ public class DeviceDownloadService {
try {
dataSetResult = getData(deviceRequest, page);
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
jobLog.setStatus(1);
jobLog.setType(Constant.LOG_TYPE_ERROR);
jobLog.setMsg("下载失败:" + e.getMessage());
@ -334,7 +347,7 @@ public class DeviceDownloadService {
jobLog.setLastUploadRequest(JSONUtil.toJsonStr(deviceRequest));
jobLogService.update(jobLog);
} catch (Exception e) {
log.error("插入数据失败", e);
log.error(ExceptionUtils.getStackTrace(e));
jobLog.setStatus(1);
jobLog.setType(Constant.LOG_TYPE_ERROR);
jobLog.setMsg("数据写入失败" + e.getMessage());
@ -414,7 +427,8 @@ public class DeviceDownloadService {
String response = "";
try {
Thread.sleep(3 * 1000);
response = HttpClient.post(historyUrl, deviceHistoryRequest);
String json = JSONUtil.toJsonStr(deviceHistoryRequest);
response = okHttpCli.doPostJson(historyUrl, json, getHeaders());
} catch (InterruptedException e) {
log.error(e.getMessage(), e);
results.setCode(-1);
@ -544,7 +558,7 @@ public class DeviceDownloadService {
jobLog.setCreateTime(new Date());
jobLogService.insert(jobLog);
} catch (Exception e) {
log.error(e.getMessage(), e);
log.error(ExceptionUtils.getStackTrace(e));
JobLog jobLog = new JobLog();
jobLog.setDownloadType(Constant.DOWNLOAD_TYPE_MANUAL);
jobLog.setTaskType(Constant.JOB_TASK_TYPE_DOWNLOAD);
@ -610,7 +624,7 @@ public class DeviceDownloadService {
jobLog.setCreateTime(new Date());
jobLogService.insert(jobLog);
} catch (Exception e) {
log.error(e.getMessage(), e);
log.error(ExceptionUtils.getStackTrace(e));
JobLog jobLog = new JobLog();
jobLog.setDownloadType(Constant.DOWNLOAD_TYPE_MANUAL);
jobLog.setTaskType(Constant.JOB_TASK_TYPE_DOWNLOAD);

@ -12,6 +12,8 @@ import com.glxp.udidl.admin.thread.UdiTransferUtils;
import com.glxp.udidl.admin.util.BeanUtils;
import com.glxp.udidl.admin.util.DateUtil;
import com.glxp.udidl.admin.util.IntUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -26,6 +28,7 @@ import java.util.stream.Collectors;
*
*/
@Service
@Slf4j
public class DeviceSaveService {
@Resource
private DeviceService deviceService;
@ -316,6 +319,7 @@ public class DeviceSaveService {
try {
return Integer.parseInt(s);
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
return 0;
}
}

@ -19,6 +19,7 @@ import com.glxp.udidl.admin.service.udi.JobLogService;
import com.glxp.udidl.admin.util.DateUtil;
import com.glxp.udidl.admin.util.ResultVOUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@ -92,7 +93,7 @@ public class DeviceSyncService {
try {
downloadAndSave(day, downloadType, Constant.DL_TYPE_UPDATE);
} catch (Exception e) {
log.error("下载UDI国家库信息异常", e);
log.error(ExceptionUtils.getStackTrace(e));
JobLog jobLog = new JobLog();
jobLog.setDownloadType(downloadType);
jobLog.setDownloadDate(DateUtil.parseDate(day));
@ -231,7 +232,7 @@ public class DeviceSyncService {
jobLog.setType(Constant.LOG_TYPE_SUCCESS);
jobLogService.update(jobLog);
} catch (Exception e) {
log.error("下载产品信息失败", e);
log.error(ExceptionUtils.getStackTrace(e));
jobLog.setMsg("下载失败:" + res.getReturnMsg());
jobLog.setType(Constant.LOG_TYPE_ERROR);
jobLogService.update(jobLog);

@ -11,6 +11,7 @@ import com.glxp.udidl.admin.service.inout.ProductInfoService;
import com.glxp.udidl.admin.util.DateUtil;
import com.glxp.udidl.admin.util.ResultVOUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -94,7 +95,7 @@ public class ProductInfoDlService {
}
zip.close();
} catch (Exception e) {
log.error(e.getMessage(), e);
log.error(ExceptionUtils.getStackTrace(e));
return ResultVOUtils.error(-1, e.getMessage());
}
return ResultVOUtils.success();

@ -14,6 +14,7 @@ import com.glxp.udidl.admin.util.Md5Utils;
import com.glxp.udidl.admin.util.ResultVOUtils;
import com.google.gson.reflect.TypeToken;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.http.HttpEntity;
@ -46,7 +47,7 @@ public class UdplatDownloadService {
try {
userName = URLEncoder.encode(globalConfig.getUdplat_userName(), "utf-8");
} catch (Exception e) {
log.error(e.getMessage(), e);
log.error(ExceptionUtils.getStackTrace(e));
}
return userName;
}

@ -18,6 +18,8 @@ import com.glxp.udidl.admin.service.udi.ProductClassifyService;
import com.glxp.udidl.admin.service.udi.UdiCompanyService;
import com.glxp.udidl.admin.util.BeanUtils;
import com.glxp.udidl.admin.util.DateUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@ -27,6 +29,7 @@ import java.util.stream.Collectors;
/**
*
*/
@Slf4j
@Service
public class DeviceParseService {
@ -282,6 +285,7 @@ public class DeviceParseService {
try {
return Integer.parseInt(s);
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
return 0;
}
}

@ -5,6 +5,7 @@ import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject;
import com.glxp.udidl.admin.constant.Constant;
import com.glxp.udidl.admin.entity.info.CompanyEntity;
@ -20,12 +21,16 @@ import com.glxp.udidl.admin.service.inout.DeviceService;
import com.glxp.udidl.admin.service.inout.ProductInfoService;
import com.glxp.udidl.admin.service.udi.JobLogService;
import com.glxp.udidl.admin.util.HttpClient;
import com.glxp.udidl.admin.util.OkHttpCli;
import com.glxp.udidl.admin.util.RedisUtil;
import com.glxp.udidl.admin.util.UdidConfig;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@ -36,7 +41,6 @@ import java.util.List;
public class DeviceUpdateService {
private String token;
private String url = "sharing/get";
@Resource
private RedisUtil redisUtil;
@ -104,8 +108,9 @@ public class DeviceUpdateService {
TokenRequest tokenRequest = new TokenRequest();
tokenRequest.setAppId(companyEntity.getAppId());
tokenRequest.setAppSecret(companyEntity.getAppSecret());
tokenRequest.setTyshxydm(companyEntity.getTyshxydm());
String response = HttpClient.post("token/get", tokenRequest);
tokenRequest.setTYSHXYDM(companyEntity.getTyshxydm());
String json = JSONUtil.toJsonStr(tokenRequest);
String response = okHttpCli.doPostJson(UdidConfig.apiUrl + "token/get", json);
TokenEntity tokenEntity = JSONObject.parseObject(response, TokenEntity.class);
token = tokenEntity.getAccessToken();
redisUtil.setEx("UDI_UPDATE_TOKEN", token, 1 * 60 * 60 * 6);
@ -113,6 +118,10 @@ public class DeviceUpdateService {
return token;
}
@Resource
OkHttpCli okHttpCli;
/**
*
*
@ -122,12 +131,13 @@ public class DeviceUpdateService {
public DataSetSingleResult downloadByDi(String deviceId) {
DataSetSingleResult result = new DataSetSingleResult();
DownloadDiRequest downloadDiRequest = new DownloadDiRequest();
downloadDiRequest.setAccessToken(getToken());
downloadDiRequest.setPrimaryDeviceId(deviceId);
downloadDiRequest.setZXXSDYCPBS(deviceId);
String json = JSONUtil.toJsonStr(downloadDiRequest);
String response = "";
try {
response = HttpClient.post("sharing/single", downloadDiRequest);
response = okHttpCli.doPostJson(UdidConfig.apiUrl + "sharing/single", json, getHeaders());
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("下载产品标识详情数据异常,响应结果:{}", response);
result.setReturnCode(-1);
result.setReturnMsg(e.getMessage());
@ -136,4 +146,12 @@ public class DeviceUpdateService {
return JSONObject.parseObject(response, DataSetSingleResult.class);
}
public String[] getHeaders() {
List<String> header = new ArrayList<>();
header.add("accessToken");
header.add(getToken());
String[] strArray = new String[header.size()];
return header.toArray(strArray);
}
}

@ -15,6 +15,7 @@ import com.glxp.udidl.admin.service.udplat.UdplatGoodsService;
import com.glxp.udidl.admin.service.udplat.UdplatLogService;
import com.glxp.udidl.admin.util.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -74,6 +75,7 @@ public class UdplatGoodsServiceImpl implements UdplatGoodsService {
logService.insert(udplatLog);
return ResultVOUtils.success(count);
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
UdplatLog udplatLog = new UdplatLog();
udplatLog.setDownloadType("import");
udplatLog.setTbName("udplat_goods");
@ -109,8 +111,7 @@ public class UdplatGoodsServiceImpl implements UdplatGoodsService {
}
}
} catch (Exception e) {
log.error(e.getMessage(), e);
log.error(JSON.toJSONString(e.getStackTrace()));
log.error(ExceptionUtils.getStackTrace(e));
UdplatLog udplatLog = new UdplatLog();
udplatLog.setDownloadType(downloadType);
udplatLog.setTbName("udplat_goods");

@ -9,6 +9,7 @@ import com.glxp.udidl.admin.service.dataSync.UdplatSyncService;
import com.glxp.udidl.admin.service.udplat.UdplatLogService;
import com.glxp.udidl.admin.util.DateUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.SchedulingConfigurer;
@ -49,6 +50,7 @@ public class DownloadTaskUdplat implements SchedulingConfigurer {
try {
udplatSyncService.downloadByDay("auto");
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
UdplatLog udplatLog = new UdplatLog();
udplatLog.setDownloadType("auto");
udplatLog.setType("error");

@ -1,6 +1,7 @@
package com.glxp.udidl.admin.util;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
@ -23,13 +24,14 @@ public class FileUtils {
buff.flush();
buff.close();
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
} finally {
try {
buff.close();
;
outStr.close();
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
}
}
@ -42,6 +44,7 @@ public class FileUtils {
bw.newLine();
bw.close();
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
return e.getMessage();
}
return "success";
@ -68,7 +71,7 @@ public class FileUtils {
out.close();
in.close();
} catch (Exception e) {
log.error(e.getMessage(), e);
log.error(ExceptionUtils.getStackTrace(e));
}
}
@ -77,6 +80,7 @@ public class FileUtils {
cnName = new String(cnName.getBytes("gb2312"), "ISO8859-1");
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
cnName = defaultName;
}
return cnName;

@ -15,7 +15,7 @@ import java.util.Map;
public class HttpClient {
private static final Logger logger = LoggerFactory.getLogger(HttpClient.class);
public static String post(String url, Object object) {
public static String post1111(String url, Object object) {
RestTemplate restTemplate = new RestTemplate();
String json = JSONObject.toJSONString(object);
MultiValueMap<String, Object> postParameters = new LinkedMultiValueMap<>();

@ -1,6 +1,7 @@
package com.glxp.udidl.admin.util;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import javax.servlet.http.HttpServletRequest;
import java.net.InetAddress;
@ -31,7 +32,7 @@ public class IpUtils {
inet = InetAddress.getLocalHost();
ip = inet.getHostAddress();
} catch (Exception e) {
log.error(e.getMessage(), e);
log.error(ExceptionUtils.getStackTrace(e));
}
}
}

@ -126,12 +126,12 @@ public class OkHttpCli {
* @return string
*/
public String doPostJson(String url, String json) {
log.info("do post request and url[{}]", url);
log.info(url + "\n" + json);
return exectePost(url, json, JSON);
}
public String doPostJson(String url, String json, String... headers) {
log.info("do post request and url[{}]", url);
log.info(url + "\n" + json);
return exectePost(url, json, JSON, headers);
}
@ -167,6 +167,7 @@ public class OkHttpCli {
Response response = null;
try {
response = okHttpClient.newCall(request).execute();
log.info("response code is [{}]", response.toString());
if (response.isSuccessful()) {
return response.body().string();
}

@ -2,6 +2,7 @@ package com.glxp.udidl.admin.util;
import cn.hutool.core.collection.CollUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.StringRedisSerializer;
import org.springframework.stereotype.Component;
@ -59,6 +60,7 @@ public class RedisUtil<T> {
}
result = true;
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("RedisUtil setEx 发生异常参数列表key {} value {}", key, value, e);
}
return result;
@ -97,6 +99,7 @@ public class RedisUtil<T> {
redisTemplate.opsForValue().set(key, value);
result = true;
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("RedisUtil set 发生异常参数列表key {} value {}", key, value, e);
}
return result;
@ -114,6 +117,7 @@ public class RedisUtil<T> {
try {
Thread.sleep(expireTime * 1000);
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("获取锁异常", e);
}
}
@ -142,6 +146,7 @@ public class RedisUtil<T> {
redisTemplate.delete(key);
result = true;
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
log.error("RedisUtil del 删除key值key {} ", key, e);
}
return result;

@ -1,16 +1,21 @@
package com.glxp.udidl.admin.util;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject;
import com.glxp.udidl.admin.entity.info.CompanyEntity;
import com.glxp.udidl.admin.entity.udid.TokenEntity;
import com.glxp.udidl.admin.req.udid.TokenRequest;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
/**
* UDI
*/
@Component
public class UdiHttpClient {
@Resource
OkHttpCli okHttpCli;
/**
* UDItoken
@ -22,8 +27,9 @@ public class UdiHttpClient {
TokenRequest tokenRequest = new TokenRequest();
tokenRequest.setAppId(companyEntity.getAppId());
tokenRequest.setAppSecret(companyEntity.getAppSecret());
tokenRequest.setTyshxydm(companyEntity.getTyshxydm());
String response = HttpClient.post("token/get", tokenRequest);
tokenRequest.setTYSHXYDM(companyEntity.getTyshxydm());
String json = JSONUtil.toJsonStr(tokenRequest);
String response = okHttpCli.doPostJson(UdidConfig.apiUrl+"token/get", json);
TokenEntity tokenEntity = (TokenEntity) JSONObject.parseObject(response, TokenEntity.class);
String token = tokenEntity.getAccessToken();
return token;

@ -4,8 +4,8 @@ public class UdidConfig {
public static final String betaUrl = "https://udid.nmpa.gov.cn/api/beta/v1/";
public static final String apiUrl = "https://udid.nmpa.gov.cn/api/v2/";//"https://udid.nmpa.gov.cn/api/v1/";
// public static final String apiUrl = "https://udid.nmpa.gov.cn/api/v2/";//"https://udid.nmpa.gov.cn/api/v1/";
public static final String apiUrl = "https://udid.nmpa.gov.cn/api/v3/";
public static final String AppId = "371ced236e844272ad14bbe9051fd25a";
public static final String AppSecret = "592e7a00a7304f52a86a82e7fac9d2c0";

Loading…
Cancel
Save