add ASMS对接,国内法规
This commit is contained in:
-30
@@ -1,30 +0,0 @@
|
||||
package com.jero.modules.docking.asms.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.modules.docking.asms.util.AsmsPostUtil;
|
||||
import com.jero.modules.laws.common.constant.FieldCommon;
|
||||
import io.swagger.annotations.Api;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/10/17 17:36
|
||||
* @Description:
|
||||
*/
|
||||
@Api(tags="国内法规标准")
|
||||
@RestController
|
||||
@RequestMapping("/asms")
|
||||
public class AsmsController {
|
||||
@Autowired
|
||||
private AsmsPostUtil asmsPostUtil;
|
||||
@GetMapping(value = "/getInfo")
|
||||
public Result<Object> getInfo(String uri, Map<String, String> map) {
|
||||
List<Map<String, String>> mapList = asmsPostUtil.sendGetReq(uri, map);
|
||||
return Result.OK(mapList);
|
||||
}
|
||||
}
|
||||
+3
-6
@@ -1,16 +1,14 @@
|
||||
package com.jero.modules.docking.asms.api.controller;
|
||||
package com.jero.modules.docking.asms.controller;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi;
|
||||
import com.jero.modules.docking.asms.api.service.ILawsAsmsOpenApiService;
|
||||
import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi;
|
||||
import com.jero.modules.docking.asms.service.ILawsAsmsOpenApiService;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.jero.modules.docking.asms.util.AsmsPostUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -18,7 +16,6 @@ import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.jero.modules.docking.asms.api.entity;
|
||||
package com.jero.modules.docking.asms.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
package com.jero.modules.docking.asms.api.mapper;
|
||||
package com.jero.modules.docking.asms.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi;
|
||||
import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.jero.modules.docking.asms.api.mapper.LawsAsmsOpenApiMapper">
|
||||
<resultMap id="LawsAsmsOpenApiResultMap" type="com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi">
|
||||
<mapper namespace="com.jero.modules.docking.asms.mapper.LawsAsmsOpenApiMapper">
|
||||
<resultMap id="LawsAsmsOpenApiResultMap" type="com.jero.modules.docking.asms.entity.LawsAsmsOpenApi">
|
||||
<id column="id" property="id" />
|
||||
<result column="api_name" property="apiName" />
|
||||
<result column="api_url" property="apiUrl" />
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package com.jero.modules.docking.asms.api.service;
|
||||
package com.jero.modules.docking.asms.service;
|
||||
|
||||
import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi;
|
||||
import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
+4
-7
@@ -1,13 +1,11 @@
|
||||
package com.jero.modules.docking.asms.api.service.impl;
|
||||
package com.jero.modules.docking.asms.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi;
|
||||
import com.jero.modules.docking.asms.api.mapper.LawsAsmsOpenApiMapper;
|
||||
import com.jero.modules.docking.asms.api.service.ILawsAsmsOpenApiService;
|
||||
import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi;
|
||||
import com.jero.modules.docking.asms.mapper.LawsAsmsOpenApiMapper;
|
||||
import com.jero.modules.docking.asms.service.ILawsAsmsOpenApiService;
|
||||
import com.jero.modules.docking.asms.util.AsmsPostUtil;
|
||||
import com.jero.modules.system.entity.SysDictItem;
|
||||
import com.jero.modules.system.service.ISysDictItemService;
|
||||
@@ -20,7 +18,6 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
+27
-12
@@ -3,6 +3,8 @@ package com.jero.modules.docking.asms.util;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.util.RedisUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
@@ -13,10 +15,7 @@ import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
@@ -24,6 +23,7 @@ import java.util.Objects;
|
||||
* @Description: 远程调用
|
||||
*/
|
||||
@Component
|
||||
@Slf4j
|
||||
public class AsmsPostUtil {
|
||||
|
||||
@Autowired
|
||||
@@ -62,6 +62,7 @@ public class AsmsPostUtil {
|
||||
token = resultMap.get("token");
|
||||
// 将新获取的token存入redis
|
||||
redisUtil.set(ASMS_SYSTEM_AUTH_TOKEN, token, expire * 60 * 60);
|
||||
log.info("new token is creating: {}", token);
|
||||
}
|
||||
return token;
|
||||
}
|
||||
@@ -75,9 +76,10 @@ public class AsmsPostUtil {
|
||||
**/
|
||||
public List<Map<String, String>> sendGetReq(String uri, Map<String, String> map) {
|
||||
// 准备请求头
|
||||
String token = getToken();
|
||||
HttpHeaders headers = new HttpHeaders();
|
||||
headers.set("Content-Type", "application/x-www-form-urlencoded");
|
||||
headers.set("X-Access-Token", getToken());
|
||||
headers.set("X-Access-Token", token);
|
||||
|
||||
if (StringUtils.isBlank(uri)) {
|
||||
throw new JeroBootException("url不能为空");
|
||||
@@ -91,19 +93,32 @@ public class AsmsPostUtil {
|
||||
url += "?" + s.substring(1);
|
||||
}
|
||||
|
||||
ResponseEntity<Result> responseEntity = restTemplate.exchange(url.toString(),
|
||||
HttpMethod.GET, new HttpEntity<>(null, headers), Result.class);
|
||||
ResponseEntity<Result> responseEntity;
|
||||
try {
|
||||
log.info("request url : {}", url);
|
||||
responseEntity = restTemplate.exchange(url.toString(),
|
||||
HttpMethod.GET, new HttpEntity<>(null, headers), Result.class);
|
||||
} catch (Exception e) {
|
||||
log.info("old token is deleting: {}", token);
|
||||
redisUtil.del(ASMS_SYSTEM_AUTH_TOKEN);
|
||||
e.printStackTrace();
|
||||
throw new JeroBootException("操作失败,请稍后重试");
|
||||
}
|
||||
|
||||
if (!responseEntity.getBody().isSuccess()) {
|
||||
throw new JeroBootException("汽车标准数字化平台:请求发送失败");
|
||||
}
|
||||
Map<String, Object> resultMap = (Map<String, Object>) responseEntity.getBody().getResult();
|
||||
if (Objects.isNull(resultMap)) {
|
||||
throw new JeroBootException("返回数据为空");
|
||||
}
|
||||
List<Map<String, String>> mapList = (List<Map<String, String>>) resultMap.get("records");
|
||||
mapList.forEach(eMap -> {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
eMap.forEach((k, v) -> sb.append(k + ":" + v + ","));
|
||||
System.out.println(sb);
|
||||
});
|
||||
if (CollectionUtils.isEmpty(mapList)) {
|
||||
mapList = new ArrayList<>();
|
||||
Map<String, String> result = (Map<String, String>) responseEntity.getBody().getResult();
|
||||
mapList.add(result);
|
||||
}
|
||||
log.info("返回{}条数据", mapList.size());
|
||||
return mapList;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user