add 汽车标准数字化平台ASMS开放API接口管理(未完成)
This commit is contained in:
@@ -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接口管理';
|
||||
|
||||
|
||||
|
||||
+176
@@ -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<LawsAsmsOpenApi, ILawsAsmsOpenApiService> {
|
||||
@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<IPage<LawsAsmsOpenApi>> queryPageList(LawsAsmsOpenApi lawsAsmsOpenApi,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
IPage<LawsAsmsOpenApi> 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<List<LawsAsmsOpenApi>> queryList(LawsAsmsOpenApi lawsAsmsOpenApi, HttpServletRequest req) {
|
||||
List<LawsAsmsOpenApi> 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<T> 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<T> 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<T> delete(@RequestBody Map<String, String> 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<T> deleteBatch(@RequestBody Map<String, String> 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<LawsAsmsOpenApi> 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<LawsAsmsOpenApi> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, LawsAsmsOpenApi.class);
|
||||
}
|
||||
|
||||
}
|
||||
+60
@@ -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;
|
||||
}
|
||||
+17
@@ -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<LawsAsmsOpenApi> {
|
||||
|
||||
}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
<?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">
|
||||
<id column="id" property="id" />
|
||||
<result column="api_name" property="apiName" />
|
||||
<result column="api_url" property="apiUrl" />
|
||||
<result column="dict_id" property="dictId" />
|
||||
<result column="api_type" property="apiType" />
|
||||
<result column="query_param_json" property="queryParamJson" />
|
||||
</resultMap>
|
||||
</mapper>
|
||||
+76
@@ -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<LawsAsmsOpenApi> {
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param lawsAsmsOpenApi
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
IPage<LawsAsmsOpenApi> queryPage(LawsAsmsOpenApi lawsAsmsOpenApi, Integer pageNo, Integer pageSize, HttpServletRequest req);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @param lawsAsmsOpenApi
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
List<LawsAsmsOpenApi> 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<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
LawsAsmsOpenApi queryById(String id);
|
||||
}
|
||||
+112
@@ -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<LawsAsmsOpenApiMapper, LawsAsmsOpenApi> implements ILawsAsmsOpenApiService {
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param lawsAsmsOpenApi
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public IPage<LawsAsmsOpenApi> queryPage(LawsAsmsOpenApi lawsAsmsOpenApi, Integer pageNo, Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<LawsAsmsOpenApi> queryWrapper = QueryGenerator.initQueryWrapper(lawsAsmsOpenApi, req.getParameterMap());
|
||||
Page<LawsAsmsOpenApi> page = new Page<>(pageNo, pageSize);
|
||||
return page(page, queryWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @param lawsAsmsOpenApi
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<LawsAsmsOpenApi> 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<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public LawsAsmsOpenApi queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
}
|
||||
+30
@@ -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<Object> getInfo(String uri, Map<String, String> map) {
|
||||
List<Map<String, String>> mapList = asmsPostUtil.sendGetReq(uri, map);
|
||||
return Result.OK(mapList);
|
||||
}
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
package com.jero.modules.docking.asms.service;
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/10/17 14:51
|
||||
* @Description: 汽车标准数字化化平台ASMS
|
||||
*/
|
||||
public interface IAsmsOpenApi {
|
||||
}
|
||||
+16
@@ -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 {
|
||||
|
||||
}
|
||||
+107
@@ -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<String, String> map = new HashMap<>();
|
||||
map.put("username", username);
|
||||
map.put("password", password);
|
||||
ResponseEntity<Result> responseEntity = restTemplate.postForEntity(host + "xiaobodata/openApi/login", map, Result.class);
|
||||
if (!responseEntity.getBody().isSuccess()) {
|
||||
throw new JeroBootException("汽车标准数字化平台:token获取失败");
|
||||
}
|
||||
Map<String, String> resultMap = (Map<String, String>) 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<Map<String, String>> sendGetReq(String uri, Map<String, String> 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<Result> responseEntity = restTemplate.exchange(url.toString(),
|
||||
HttpMethod.GET, new HttpEntity<>(null, headers), Result.class);
|
||||
|
||||
if (!responseEntity.getBody().isSuccess()) {
|
||||
throw new JeroBootException("汽车标准数字化平台:请求发送失败");
|
||||
}
|
||||
Map<String, Object> resultMap = (Map<String, Object>) responseEntity.getBody().getResult();
|
||||
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);
|
||||
});
|
||||
return mapList;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -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
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user