add 联联平台 推送订单结算信息、查询订单结算信息 接口

This commit is contained in:
Lemon
2023-05-22 13:50:19 +08:00
parent a8cc05b588
commit 7ff3db1141
7 changed files with 144 additions and 12 deletions

View File

@@ -195,7 +195,13 @@ public class SpringBootTestController {
// lianLianService.pushStopChargeResult("C27680791529");
// 推送充电订单信息
lianLianService.pushChargeOrderInfo("C27680791529");
// lianLianService.pushChargeOrderInfo("C27680791529");
// 推送订单结算信息
// lianLianService.pushOrderSettlementInfo("C27680791529");
// 查询订单结算信息
lianLianService.queryOrderSettlementInfo("C27680791529");
}

View File

@@ -0,0 +1,51 @@
package com.jsowell.pile.dto;
import com.alibaba.fastjson2.annotation.JSONField;
import lombok.Data;
import java.math.BigDecimal;
/**
* 推送订单结算信息DTO
*
* @author JS-ZZA
* @date 2023/5/22 11:02
*/
@Data
public class PushOrderSettlementDTO {
/**
* 充电订单号
*/
@JSONField(name = "StartChargeSeq")
private String startChargeSeq;
/**
* 充电设备接口编码
*/
@JSONField(name = "ConnectorID")
private String connectorID;
/**
* 累计充电量
*/
@JSONField(name = "TotalPower")
private BigDecimal totalPower;
/**
* 累计总金额
*/
@JSONField(name = "TotalMoney")
private BigDecimal totalMoney;
/**
* 是否出租车订单
*/
@JSONField(name = "TaxiOrder")
private BigDecimal taxiOrder;
/**
* 结算金额
*/
@JSONField(name = "SettlementMoney")
private BigDecimal settlementMoney;
}

View File

@@ -102,7 +102,7 @@ public interface OrderBasicInfoMapper {
* 修改订单详情
* @param orderDetail 订单详情
*/
void updateOrderDetail(OrderDetail orderDetail);
int updateOrderDetail(OrderDetail orderDetail);
/**
* 通过订单号查询订单基本信息

View File

@@ -63,6 +63,13 @@ public interface IOrderBasicInfoService {
*/
int updateOrderBasicInfo(OrderBasicInfo orderBasicInfo);
/**
* 修改订单详情
* @param orderDetail
* @return
*/
int updateOrderDetail(OrderDetail orderDetail);
// 清订单缓存
void cleanCacheByOrderCode(String orderCode, String transactionCode);

View File

@@ -406,7 +406,17 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
return i;
}
@Override
/**
* 修改订单详情
* @param orderDetail
* @return
*/
@Override
public int updateOrderDetail(OrderDetail orderDetail) {
return orderBasicInfoMapper.updateOrderDetail(orderDetail);
}
@Override
public void cleanCacheByOrderCode(String orderCode, String transactionCode) {
logger.debug("清除订单缓存 orderCode:{}, transactionCode:{}", orderCode, transactionCode);
List<String> keys = Lists.newArrayList();

View File

@@ -121,4 +121,18 @@ public interface LianLianService {
* @return
*/
String pushChargeOrderInfo(String orderCode);
/**
* 推送订单结算信息
* @param dto
* @return
*/
String pushOrderSettlementInfo(PushOrderSettlementDTO dto);
/**
* 查询订单结算信息
* @param orderCode
* @return
*/
String queryOrderSettlementInfo(String orderCode);
}

View File

@@ -910,6 +910,59 @@ public class LianLianServiceImpl implements LianLianService {
return result;
}
/**
* 推送订单结算信息
* @param dto
* @return
*/
@Override
public String pushOrderSettlementInfo(PushOrderSettlementDTO dto) {
String orderCode = dto.getStartChargeSeq();
JSONObject json = new JSONObject();
json.put("StartChargeSeq", orderCode);
json.put("ConnectorID", dto.getConnectorID());
int confirmResult = Constants.one;
// 根据订单号查询订单信息
OrderBasicInfo orderInfo = orderBasicInfoService.getOrderInfoByOrderCode(orderCode);
OrderDetail orderDetail = orderBasicInfoService.getOrderDetailByOrderCode(orderCode);
if (orderInfo == null || orderDetail == null) {
return null;
}
// 都不为空,根据传过来的数据进行修改数据库信息
confirmResult = Constants.zero;
orderDetail.setTotalUsedElectricity(dto.getTotalPower()); // 累计充电量
orderDetail.setTotalOrderAmount(dto.getTotalMoney()); // 累计总金额
orderBasicInfoService.updateOrderDetail(orderDetail);
json.put("ConfirmResult", confirmResult);
String jsonString = JSONObject.toJSONString(json);
return jsonString;
}
/**
* 查询订单结算信息
* @param orderCode
* @return
*/
@Override
public String queryOrderSettlementInfo(String orderCode) {
String url = TEST_URL + "query_order_settlement_info";
JSONObject json = new JSONObject();
json.put("StartChargeSeq", orderCode);
String jsonString = JSONObject.toJSONString(json);
// 获取令牌
String token = getToken(OPERATOR_ID, OPERATOR_SECRET);
if (StringUtils.isBlank(token)){
return null;
}
// 发送请求
String result = HttpRequestUtil.sendPost(token, jsonString, url, DATA_SECRET, DATA_SECRETIV, OPERATOR_ID, SIG_SECRET);
return result;
}
// private ChargeDetail setChargeDetail(OrderBasicInfo orderBasicInfo, OrderDetail orderDetail) {
// ChargeDetail detail = new ChargeDetail();
//
@@ -922,8 +975,6 @@ public class LianLianServiceImpl implements LianLianService {
// detail.setDetailSeviceMoney();
// }
// TODO 推送充电订单信息 notification_charge_order_info
// TODO 推送订单对账结果信息 check_charge_orders
@@ -934,13 +985,6 @@ public class LianLianServiceImpl implements LianLianService {
}
// TODO 推送订单结算信息 notification_order_settlement_info
// TODO 查询订单结算信息 query_order_settlement_info
/**
* 获取桩列表信息
* @param pileStationInfo