mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-21 11:35:12 +08:00
218 lines
8.9 KiB
Java
218 lines
8.9 KiB
Java
package com.jsowell.api.thirdparty;
|
||
|
||
import com.alibaba.fastjson2.JSON;
|
||
import com.jsowell.common.annotation.Anonymous;
|
||
import com.jsowell.common.enums.thirdparty.ThirdPartyReturnCodeEnum;
|
||
import com.jsowell.common.exception.BusinessException;
|
||
import com.jsowell.common.response.RestApiResponse;
|
||
import com.jsowell.pile.dto.PushRealTimeInfoDTO;
|
||
import com.jsowell.pile.dto.QueryOperatorInfoDTO;
|
||
import com.jsowell.pile.dto.QueryStationInfoDTO;
|
||
import com.jsowell.pile.thirdparty.CommonParamsDTO;
|
||
import com.jsowell.thirdparty.lianlian.common.CommonResult;
|
||
import com.jsowell.thirdparty.platform.service.ThirdPartyPlatformService;
|
||
import org.springframework.beans.factory.annotation.Autowired;
|
||
import org.springframework.beans.factory.annotation.Qualifier;
|
||
import org.springframework.web.bind.annotation.*;
|
||
|
||
import javax.servlet.http.HttpServletRequest;
|
||
import java.util.Map;
|
||
|
||
/**
|
||
* 宁夏平台Controller
|
||
*/
|
||
@Anonymous
|
||
@RestController
|
||
@RequestMapping("/ningxia")
|
||
public class NingXiaController extends ThirdPartyBaseController {
|
||
|
||
private final String platformName = "宁夏平台";
|
||
|
||
@Autowired
|
||
@Qualifier("ninaXiaPlatformServiceImpl")
|
||
private ThirdPartyPlatformService platformLogic;
|
||
|
||
/**
|
||
* 获取token接口
|
||
* http://localhost:8080/evcs/v1/query_token
|
||
*/
|
||
@PostMapping("/v1/query_token")
|
||
public CommonResult<?> queryToken(@RequestBody CommonParamsDTO dto) {
|
||
logger.info("{}-请求令牌 params:{}", platformName, JSON.toJSONString(dto));
|
||
try {
|
||
Map<String, String> map = platformLogic.queryToken(dto);
|
||
logger.info("{}-请求令牌 result:{}", platformName, JSON.toJSONString(map));
|
||
return CommonResult.success(0, "请求令牌成功!", map.get("Data"), map.get("Sig"));
|
||
} catch (Exception e) {
|
||
logger.error("{}- 请求令牌接口 异常", platformName, e);
|
||
return CommonResult.failed("获取token发生异常");
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 查询运营商信息
|
||
* 接口名称:supervise_query_operator_info
|
||
* 使用方法:由数据提供方实现此接口,数据需求方调用
|
||
* 接口频率:每天一次或多次
|
||
* 超时时间:120秒
|
||
*/
|
||
@PostMapping("/v1/supervise_query_operator_info")
|
||
public CommonResult<?> queryOperatorInfo(HttpServletRequest request, @RequestBody CommonParamsDTO dto) {
|
||
logger.info("{}-查询运营商信息 params:{}", platformName, JSON.toJSONString(dto));
|
||
try {
|
||
// 校验令牌
|
||
boolean verifyToken = verifyToken(request.getHeader("Authorization"));
|
||
if (!verifyToken) {
|
||
// 校验失败
|
||
return CommonResult.failed(ThirdPartyReturnCodeEnum.TOKEN_ERROR);
|
||
}
|
||
|
||
// 校验签名
|
||
if (!verifySignature(dto)) {
|
||
// 签名错误
|
||
return CommonResult.failed(ThirdPartyReturnCodeEnum.SIGN_ERROR);
|
||
}
|
||
|
||
// 解析入参
|
||
QueryOperatorInfoDTO paramDTO = parseParamsDTO(dto, QueryOperatorInfoDTO.class);
|
||
|
||
// 执行逻辑
|
||
Map<String, String> map = platformLogic.queryOperatorInfo(paramDTO);
|
||
logger.info("{}-查询运营商信息 result:{}", platformName, JSON.toJSONString(map));
|
||
return CommonResult.success(0, "操作成功!", map.get("Data"), map.get("Sig"));
|
||
} catch (BusinessException e) {
|
||
return CommonResult.failed(Integer.parseInt(e.getCode()), e.getMessage());
|
||
} catch (Exception e) {
|
||
logger.error("{}-查询运营商信息 异常", platformName, e);
|
||
return CommonResult.failed("查询运营商信息发生异常");
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 查询充换电站信息
|
||
* 接口名称: supervise_query_stations_info
|
||
* 使用方法:由数据提供方实现此接口,数据需求方调用
|
||
* 接口频率:每天一次或多次
|
||
* 超时时间:120秒
|
||
*/
|
||
@PostMapping("/v1/supervise_query_stations_info")
|
||
public CommonResult<?> queryStationsInfo(HttpServletRequest request, @RequestBody CommonParamsDTO dto) {
|
||
logger.info("{}-查询运营商信息 params:{}", platformName, JSON.toJSONString(dto));
|
||
try {
|
||
// 校验令牌
|
||
boolean verifyToken = verifyToken(request.getHeader("Authorization"));
|
||
if (!verifyToken) {
|
||
// 校验失败
|
||
return CommonResult.failed(ThirdPartyReturnCodeEnum.TOKEN_ERROR);
|
||
}
|
||
|
||
// 校验签名
|
||
if (!verifySignature(dto)) {
|
||
// 签名错误
|
||
return CommonResult.failed(ThirdPartyReturnCodeEnum.SIGN_ERROR);
|
||
}
|
||
QueryStationInfoDTO paramDTO = parseParamsDTO(dto, QueryStationInfoDTO.class);
|
||
Map<String, String> map = platformLogic.queryStationsInfo(paramDTO);
|
||
logger.info("{}-查询运营商信息 result:{}", platformName, JSON.toJSONString(map));
|
||
return CommonResult.success(0, "请求令牌成功!", map.get("Data"), map.get("Sig"));
|
||
} catch (Exception e) {
|
||
logger.error("{}-查询运营商信息 异常", platformName, e);
|
||
return CommonResult.failed("查询运营商信息发生异常");
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 查询充换电站状态信息
|
||
* supervise_query_station_status
|
||
*/
|
||
@PostMapping("/v1/supervise_query_station_status")
|
||
public CommonResult<?> queryStationStatus(HttpServletRequest request, @RequestBody CommonParamsDTO dto) {
|
||
logger.info("{}-查询充换电站状态信息 params:{}", platformName, JSON.toJSONString(dto));
|
||
try {
|
||
// 校验令牌
|
||
if (!verifyToken(request.getHeader("Authorization"))) {
|
||
// 校验失败
|
||
return CommonResult.failed(ThirdPartyReturnCodeEnum.TOKEN_ERROR);
|
||
}
|
||
|
||
// 校验签名
|
||
if (!verifySignature(dto)) {
|
||
// 签名错误
|
||
return CommonResult.failed(ThirdPartyReturnCodeEnum.SIGN_ERROR);
|
||
}
|
||
|
||
// 解析入参
|
||
QueryStationInfoDTO paramDTO = parseParamsDTO(dto, QueryStationInfoDTO.class);
|
||
|
||
// 执行逻辑
|
||
Map<String, String> map = platformLogic.queryStationStatus(paramDTO);
|
||
logger.info("{}-查询充换电站状态信息 result:{}", platformName, JSON.toJSONString(map));
|
||
return CommonResult.success(0, "查询充换电站状态信息成功!", map.get("Data"), map.get("Sig"));
|
||
} catch (Exception e) {
|
||
logger.error("{}-查询充换电站状态信息异常", platformName, e);
|
||
return CommonResult.failed("查询充换电站状态信息发生异常");
|
||
}
|
||
}
|
||
|
||
|
||
/**
|
||
* 推送充电设备接口状态信息
|
||
* @param dto
|
||
* @return
|
||
*/
|
||
@PostMapping("/v1/supervise_notification_station_status")
|
||
public RestApiResponse<?> superviseNotificationStationStatus(@RequestBody PushRealTimeInfoDTO dto) {
|
||
RestApiResponse<?> response = null;
|
||
String result = null;
|
||
try {
|
||
result = platformLogic.notificationStationStatus(dto);
|
||
response = new RestApiResponse<>(result);
|
||
} catch (Exception e) {
|
||
logger.error("宁夏平台推送充电设备接口状态信息 error", e);
|
||
return new RestApiResponse<>(e);
|
||
}
|
||
logger.info("宁夏平台推送充电设备接口状态信息 result:{}", result);
|
||
return response;
|
||
}
|
||
|
||
/**
|
||
* 推送充电状态信息
|
||
* @param dto
|
||
* @return
|
||
*/
|
||
@GetMapping("/v1/supervise_notification_equip_charge_status/{orderCode}")
|
||
public RestApiResponse<?> superviseNotificationEquipChargeStatus(@PathVariable("orderCode") String orderCode) {
|
||
RestApiResponse<?> response = null;
|
||
String result = null;
|
||
try {
|
||
result = platformLogic.notificationEquipChargeStatus(orderCode);
|
||
response = new RestApiResponse<>(result);
|
||
} catch (Exception e) {
|
||
logger.error("宁夏平台推送充电状态信息 error", e);
|
||
return new RestApiResponse<>(e);
|
||
}
|
||
logger.info("宁夏平台推送充电状态信息 result:{}", result);
|
||
return response;
|
||
}
|
||
|
||
/**
|
||
* 推送充电站历史充电订单信息
|
||
* @param orderCode
|
||
* @return
|
||
*/
|
||
@GetMapping("/v1/supervise_notification_charge_order_info_history/{orderCode}")
|
||
public RestApiResponse<?> notificationChargeOrderInfoHistory(@PathVariable("orderCode") String orderCode) {
|
||
RestApiResponse<?> response = null;
|
||
String result = null;
|
||
try {
|
||
result = platformLogic.notificationChargeOrderInfoHistory(orderCode);
|
||
response = new RestApiResponse<>(result);
|
||
} catch (Exception e) {
|
||
logger.error("宁夏平台推送充电站历史充电订单信息 error", e);
|
||
return new RestApiResponse<>(e);
|
||
}
|
||
logger.info("宁夏平台推送充电站历史充电订单信息 result:{}", result);
|
||
return response;
|
||
}
|
||
}
|