diff --git a/db/20230905标准法规库.sql b/db/20230905标准法规库.sql index f53ad816..3c49d3f7 100644 --- a/db/20230905标准法规库.sql +++ b/db/20230905标准法规库.sql @@ -257,4 +257,17 @@ CREATE TABLE `laws_contact_manage` alter table laws_contact_manage comment '联络人管理'; +DROP TABLE IF EXISTS `laws_asms_open_api`; +CREATE TABLE `laws_asms_open_api` +( + `id` varchar(36) NOT NULL PRIMARY KEY COMMENT '主键ID', + `api_name` varchar(200) COMMENT 'api名称', + `api_url` varchar(200) COMMENT 'api路径', + `dict_id` varchar(50) COMMENT '数据字典id', + `api_type` varchar(5) COMMENT '接口类型(1字典,2分标委,3法规)', + `query_param_json` text COMMENT '参数map' +) COMMENT = '汽车标准数字化平台ASMS开放API接口管理'; +alter table laws_asms_open_api + comment '汽车标准数字化平台ASMS开放API接口管理'; + diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/controller/LawsAsmsOpenApiController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/controller/LawsAsmsOpenApiController.java new file mode 100644 index 00000000..9155b725 --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/controller/LawsAsmsOpenApiController.java @@ -0,0 +1,176 @@ +package com.jero.modules.docking.asms.api.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +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.baomidou.mybatisplus.core.metadata.IPage; +import lombok.extern.slf4j.Slf4j; +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; +import org.apache.commons.lang3.StringUtils; +import org.apache.poi.ss.formula.functions.T; + + + /** + * @Description: 汽车标准数字化平台ASMS开放API接口管理 + * @Author: jero-boot + * @Date: 2023-10-18 + * @Version: V1.0 + */ +@Api(tags="汽车标准数字化平台ASMS开放API接口管理") +@RestController +@RequestMapping("/docking/asms/api/lawsAsmsOpenApi") +@Slf4j +public class LawsAsmsOpenApiController extends JeroController { + @Autowired + private ILawsAsmsOpenApiService lawsAsmsOpenApiService; + + /** + * 分页列表查询 + * + * @param lawsAsmsOpenApi + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @AutoLog(value = "汽车标准数字化平台ASMS开放API接口管理-分页列表查询") + @ApiOperation(value="汽车标准数字化平台ASMS开放API接口管理-分页列表查询", notes="汽车标准数字化平台ASMS开放API接口管理-分页列表查询") + @GetMapping(value = "/page") + public Result> queryPageList(LawsAsmsOpenApi lawsAsmsOpenApi, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + IPage pageList = lawsAsmsOpenApiService.queryPage(lawsAsmsOpenApi, pageNo, pageSize, req); + return Result.OK(pageList); + } + + /** + * 列表查询 + * + * @param lawsAsmsOpenApi + * @param req + * @return + */ + @AutoLog(value = "汽车标准数字化平台ASMS开放API接口管理-列表查询") + @ApiOperation(value="汽车标准数字化平台ASMS开放API接口管理-列表查询", notes="汽车标准数字化平台ASMS开放API接口管理-列表查询") + @GetMapping(value = "/list") + public Result> queryList(LawsAsmsOpenApi lawsAsmsOpenApi, HttpServletRequest req) { + List list = lawsAsmsOpenApiService.queryList(lawsAsmsOpenApi, req); + return Result.OK(list); + } + + /** + * 添加 + * + * @param lawsAsmsOpenApi + * @return + */ + @AutoLog(value = "汽车标准数字化平台ASMS开放API接口管理-添加") + @ApiOperation(value="汽车标准数字化平台ASMS开放API接口管理-添加", notes="汽车标准数字化平台ASMS开放API接口管理-添加") + @PostMapping(value = "/add") + public Result add(@Validated @RequestBody LawsAsmsOpenApi lawsAsmsOpenApi) { + lawsAsmsOpenApiService.add(lawsAsmsOpenApi); + return Result.OK("操作成功!"); + } + + /** + * 编辑 + * + * @param lawsAsmsOpenApi + * @return + */ + @AutoLog(value = "汽车标准数字化平台ASMS开放API接口管理-编辑") + @ApiOperation(value="汽车标准数字化平台ASMS开放API接口管理-编辑", notes="汽车标准数字化平台ASMS开放API接口管理-编辑") + @PostMapping(value = "/edit") + public Result edit(@Validated @RequestBody LawsAsmsOpenApi lawsAsmsOpenApi) { + lawsAsmsOpenApiService.editById(lawsAsmsOpenApi); + return Result.OK("操作成功!"); + } + + /** + * 通过id删除 + * + * @param map + * @return + */ + @AutoLog(value = "汽车标准数字化平台ASMS开放API接口管理-通过id删除") + @ApiOperation(value="汽车标准数字化平台ASMS开放API接口管理-通过id删除", notes="汽车标准数字化平台ASMS开放API接口管理-通过id删除") + @PostMapping(value = "/delete") + public Result delete(@RequestBody Map map) { + if(!map.containsKey("id") || StringUtils.isEmpty(map.get("id"))){ + return Result.error("请选择数据!"); + } + lawsAsmsOpenApiService.deleteById(map.get("id")); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param map + * @return + */ + @AutoLog(value = "汽车标准数字化平台ASMS开放API接口管理-批量删除") + @ApiOperation(value="汽车标准数字化平台ASMS开放API接口管理-批量删除", notes="汽车标准数字化平台ASMS开放API接口管理-批量删除") + @PostMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestBody Map map) { + if(!map.containsKey("ids") || StringUtils.isEmpty(map.get("ids"))){ + return Result.error("请选择数据!"); + } + this.lawsAsmsOpenApiService.deleteByIds(Arrays.asList(map.get("ids").split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + @AutoLog(value = "汽车标准数字化平台ASMS开放API接口管理-通过id查询") + @ApiOperation(value="汽车标准数字化平台ASMS开放API接口管理-通过id查询", notes="汽车标准数字化平台ASMS开放API接口管理-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + LawsAsmsOpenApi lawsAsmsOpenApi = lawsAsmsOpenApiService.queryById(id); + if(lawsAsmsOpenApi==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(lawsAsmsOpenApi); + } + + /** + * 导出excel + * + * @param request + * @param lawsAsmsOpenApi + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, LawsAsmsOpenApi lawsAsmsOpenApi) { + return super.exportXls(request, lawsAsmsOpenApi, LawsAsmsOpenApi.class, "汽车标准数字化平台ASMS开放API接口管理"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, LawsAsmsOpenApi.class); + } + +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/entity/LawsAsmsOpenApi.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/entity/LawsAsmsOpenApi.java new file mode 100644 index 00000000..2973204e --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/entity/LawsAsmsOpenApi.java @@ -0,0 +1,60 @@ +package com.jero.modules.docking.asms.api.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; + + +/** + * @Description: 汽车标准数字化平台ASMS开放API接口管理 + * @Author: jero-boot + * @Date: 2023-10-18 + * @Version: V1.0 + */ +@Data +@TableName("laws_asms_open_api") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="laws_asms_open_api对象", description="汽车标准数字化平台ASMS开放API接口管理") +public class LawsAsmsOpenApi implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键ID*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键ID") + private java.lang.String id; + /**api名称*/ + @Excel(name = "api名称", width = 15) + @ApiModelProperty(value = "api名称") + private java.lang.String apiName; + /**api路径*/ + @Excel(name = "api路径", width = 15) + @ApiModelProperty(value = "api路径") + private java.lang.String apiUrl; + /**数据字典id*/ + @Excel(name = "数据字典id", width = 15) + @ApiModelProperty(value = "数据字典id") + private java.lang.String dictId; + /**接口类型(1字典,2分标委,3法规)*/ + @Excel(name = "接口类型(1字典,2分标委,3法规)", width = 15) + @ApiModelProperty(value = "接口类型(1字典,2分标委,3法规)") + private java.lang.String apiType; + /**参数map*/ + @Excel(name = "参数map", width = 15) + @ApiModelProperty(value = "参数map") + private java.lang.String queryParamJson; +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/LawsAsmsOpenApiMapper.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/LawsAsmsOpenApiMapper.java new file mode 100644 index 00000000..6b4d11e5 --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/LawsAsmsOpenApiMapper.java @@ -0,0 +1,17 @@ +package com.jero.modules.docking.asms.api.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 汽车标准数字化平台ASMS开放API接口管理 + * @Author: jero-boot + * @Date: 2023-10-18 + * @Version: V1.0 + */ +public interface LawsAsmsOpenApiMapper extends BaseMapper { + +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/xml/LawsAsmsOpenApiMapper.xml b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/xml/LawsAsmsOpenApiMapper.xml new file mode 100644 index 00000000..db7ea632 --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/xml/LawsAsmsOpenApiMapper.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/ILawsAsmsOpenApiService.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/ILawsAsmsOpenApiService.java new file mode 100644 index 00000000..753cb7eb --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/ILawsAsmsOpenApiService.java @@ -0,0 +1,76 @@ +package com.jero.modules.docking.asms.api.service; + +import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi; +import com.baomidou.mybatisplus.extension.service.IService; +import javax.servlet.http.HttpServletRequest; +import com.baomidou.mybatisplus.core.metadata.IPage; +import java.util.List; + +/** + * @Description: 汽车标准数字化平台ASMS开放API接口管理 + * @Author: jero-boot + * @Date: 2023-10-18 + * @Version: V1.0 + */ +public interface ILawsAsmsOpenApiService extends IService { + + /** + * 分页查询 + * + * @param lawsAsmsOpenApi + * @param pageNo + * @param pageSize + * @param req + * @return + */ + IPage queryPage(LawsAsmsOpenApi lawsAsmsOpenApi, Integer pageNo, Integer pageSize, HttpServletRequest req); + + /** + * 列表查询 + * + * @param lawsAsmsOpenApi + * @param req + * @return + */ + List queryList(LawsAsmsOpenApi lawsAsmsOpenApi, HttpServletRequest req); + + /** + * 保存 + * + * @param lawsAsmsOpenApi + * @return + */ + void add(LawsAsmsOpenApi lawsAsmsOpenApi); + + /** + * 更新 + * + * @param lawsAsmsOpenApi + * @return + */ + void editById(LawsAsmsOpenApi lawsAsmsOpenApi); + + /** + * 通过id删除 + * + * @param id + * @return + */ + void deleteById(String id); + + /** + * 批量删除 + * + * @param ids + * @return + */ + void deleteByIds(List ids); + + /** + * 通过id查询 + * + * @param id + * @return + */ + LawsAsmsOpenApi queryById(String id); +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java new file mode 100644 index 00000000..8cff10ae --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java @@ -0,0 +1,112 @@ +package com.jero.modules.docking.asms.api.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +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 org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import com.jero.common.exception.JeroBootException; +import java.util.List; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.common.system.query.QueryGenerator; +import javax.servlet.http.HttpServletRequest; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; + + +/** + * @Description: 汽车标准数字化平台ASMS开放API接口管理 + * @Author: jero-boot + * @Date: 2023-10-18 + * @Version: V1.0 + */ +@Service +@Transactional(rollbackFor = JeroBootException.class) +public class LawsAsmsOpenApiServiceImpl extends ServiceImpl implements ILawsAsmsOpenApiService { + + + /** + * 分页查询 + * + * @param lawsAsmsOpenApi + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @Override + public IPage queryPage(LawsAsmsOpenApi lawsAsmsOpenApi, Integer pageNo, Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(lawsAsmsOpenApi, req.getParameterMap()); + Page page = new Page<>(pageNo, pageSize); + return page(page, queryWrapper); + } + + /** + * 列表查询 + * + * @param lawsAsmsOpenApi + * @param req + * @return + */ + @Override + public List queryList(LawsAsmsOpenApi lawsAsmsOpenApi, HttpServletRequest req) { + return list(QueryGenerator.initQueryWrapper(lawsAsmsOpenApi, req.getParameterMap())); + } + + /** + * 保存 + * + * @param lawsAsmsOpenApi + * @return + */ + @Override + public void add(LawsAsmsOpenApi lawsAsmsOpenApi) { + save(lawsAsmsOpenApi); + } + + /** + * 更新 + * + * @param lawsAsmsOpenApi + * @return + */ + @Override + public void editById(LawsAsmsOpenApi lawsAsmsOpenApi) { + saveOrUpdate(lawsAsmsOpenApi); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @Override + public void deleteById(String id) { + removeById(id); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @Override + public void deleteByIds(List ids) { + removeByIds(ids); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + @Override + public LawsAsmsOpenApi queryById(String id) { + return getById(id); + } +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/AsmsController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/AsmsController.java new file mode 100644 index 00000000..10f52ece --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/AsmsController.java @@ -0,0 +1,30 @@ +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 getInfo(String uri, Map map) { + List> mapList = asmsPostUtil.sendGetReq(uri, map); + return Result.OK(mapList); + } +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/IAsmsOpenApi.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/IAsmsOpenApi.java new file mode 100644 index 00000000..e2c22c34 --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/IAsmsOpenApi.java @@ -0,0 +1,9 @@ +package com.jero.modules.docking.asms.service; + +/** + * @Author: liao + * @Date: 2023/10/17 14:51 + * @Description: 汽车标准数字化化平台ASMS + */ +public interface IAsmsOpenApi { +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/AsmsOpenApiImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/AsmsOpenApiImpl.java new file mode 100644 index 00000000..34f34f5e --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/AsmsOpenApiImpl.java @@ -0,0 +1,16 @@ +package com.jero.modules.docking.asms.service.impl; + +import com.jero.modules.docking.asms.service.IAsmsOpenApi; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +/** + * @Author: liao + * @Date: 2023/10/17 14:52 + * @Description: 汽车标准数字化化平台ASMS + */ +@Service +@Slf4j +public class AsmsOpenApiImpl implements IAsmsOpenApi { + +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/util/AsmsPostUtil.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/util/AsmsPostUtil.java new file mode 100644 index 00000000..6af69adc --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/util/AsmsPostUtil.java @@ -0,0 +1,107 @@ +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 org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +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; + +/** + * @Author: liao + * @Date: 2023/10/17 15:12 + * @Description: 远程调用 + */ +@Component +public class AsmsPostUtil { + + @Autowired + private RestTemplate restTemplate; + @Autowired + private RedisUtil redisUtil; + @Value("${asms.host}") + private String host; + @Value("${asms.username}") + private String username; + @Value("${asms.password}") + private String password; + @Value("${asms.expire}") + private Long expire; + // 汽车标准数字化平台ASMS权限验证token + private final static String ASMS_SYSTEM_AUTH_TOKEN = "ASMS_SYSTEM_AUTH_TOKEN"; + + /** + * @Author: liao + * @Date: 2023/10/17 15:43 + * @Description: 获取token字符串 + **/ + private String getToken() { + // 从redis中获取token + String token = (String) redisUtil.get(ASMS_SYSTEM_AUTH_TOKEN); + // 如果token为空则重新获取 + if (StringUtils.isBlank(token)) { + Map map = new HashMap<>(); + map.put("username", username); + map.put("password", password); + ResponseEntity responseEntity = restTemplate.postForEntity(host + "xiaobodata/openApi/login", map, Result.class); + if (!responseEntity.getBody().isSuccess()) { + throw new JeroBootException("汽车标准数字化平台:token获取失败"); + } + Map resultMap = (Map) responseEntity.getBody().getResult(); + token = resultMap.get("token"); + // 将新获取的token存入redis + redisUtil.set(ASMS_SYSTEM_AUTH_TOKEN, token, expire * 60 * 60); + } + return token; + } + + /** + * @Author: liao + * @Date: 2023/10/17 16:33 + * @Description: 发送get请求 + * uri:接口地址 + * map:参数map + **/ + public List> sendGetReq(String uri, Map map) { + // 准备请求头 + HttpHeaders headers = new HttpHeaders(); + headers.set("Content-Type", "application/x-www-form-urlencoded"); + headers.set("X-Access-Token", getToken()); + + // 准备url + String url = host + uri; + if (!Objects.isNull(map)) { + StringBuilder sb = new StringBuilder(); + map.forEach((k, v) -> sb.append("&" + k + "=" + v)); + String s = sb.toString(); + url += "?" + s.substring(1); + } + + ResponseEntity responseEntity = restTemplate.exchange(url.toString(), + HttpMethod.GET, new HttpEntity<>(null, headers), Result.class); + + if (!responseEntity.getBody().isSuccess()) { + throw new JeroBootException("汽车标准数字化平台:请求发送失败"); + } + Map resultMap = (Map) responseEntity.getBody().getResult(); + List> mapList = (List>) resultMap.get("records"); + mapList.forEach(eMap -> { + StringBuilder sb = new StringBuilder(); + eMap.forEach((k, v) -> sb.append(k + ":" + v + ",")); + System.out.println(sb); + }); + return mapList; + } + +} diff --git a/laws-single-startup/src/main/resources/application-dev.yml b/laws-single-startup/src/main/resources/application-dev.yml index 85eaaa03..ee5f24f1 100644 --- a/laws-single-startup/src/main/resources/application-dev.yml +++ b/laws-single-startup/src/main/resources/application-dev.yml @@ -383,6 +383,16 @@ hiwork: # 统一消息集成 messageUrl: taskapi/task.basedata/notice/noticeCalls/send +# 汽车标准数字化平台ASMS +asms: + host: http://standard.catarc.org.cn/ + # 测试账号用户名 + username: ceshi + # 测试账号密码 + password: Catarc@333 + # token过期时间(单位:小时) + expire: 48 + # 单点登录配置(所有配置信息需要协调注册,现在都为假) oauth: # 客户端应用注册ID diff --git a/laws-single-startup/src/test/java/com/jero/modules/standard/domestic/StandardTest.java b/laws-single-startup/src/test/java/com/jero/modules/standard/domestic/StandardTest.java index 7bb78df4..1ac8caa7 100644 --- a/laws-single-startup/src/test/java/com/jero/modules/standard/domestic/StandardTest.java +++ b/laws-single-startup/src/test/java/com/jero/modules/standard/domestic/StandardTest.java @@ -1,6 +1,7 @@ package com.jero.modules.standard.domestic; import com.jero.JeroSystemSingleApplication; +import com.jero.modules.docking.asms.util.AsmsPostUtil; import com.jero.modules.laws.standard.entity.LawsDomesticStandard; import com.jero.modules.laws.standard.service.ILawsDomesticStandardService; import org.junit.Test; @@ -20,6 +21,8 @@ public class StandardTest { @Autowired private ILawsDomesticStandardService lawsDomesticStandardService; + @Autowired + private AsmsPostUtil asmsPostUtil; @Test public void getByIdTest() { @@ -27,4 +30,9 @@ public class StandardTest { System.out.println(byId); } + @Test + public void testAsmsPost() { + asmsPostUtil.sendGetReq("/countriesregions/list", null); + } + }