Merge branch 'dev' into HuiFu

# Conflicts:
#	jsowell-admin/src/test/java/SpringBootTestController.java
#	jsowell-pile/pom.xml
This commit is contained in:
2023-05-11 15:00:36 +08:00
39 changed files with 1657 additions and 134 deletions

View File

@@ -32,6 +32,24 @@ public class LianLianController extends BaseController {
private LianLianService lianLianService;
@PostMapping("/pushStationInfo")
public RestApiResponse<?> pushStationInfo(@RequestBody QueryStationInfoDTO dto) {
logger.info("推送联联平台充电站信息 params:{}", JSONObject.toJSONString(dto));
RestApiResponse<?> response = null;
try {
lianLianService.pushStationInfo(Long.parseLong(dto.getStationID()));
response = new RestApiResponse<>();
}catch (BusinessException e) {
logger.error("推送联联平台充电站信息 error",e);
response = new RestApiResponse<>(e.getCode(), e.getMessage());
}catch (Exception e) {
logger.error("推送联联平台充电站信息 error", e);
response = new RestApiResponse<>(e);
}
logger.info("推送联联平台充电站信息 result:{}", response);
return response;
}
/**
* 联联平台查询充电站信息
* http://localhost:8080/LianLian/query_stations_info
@@ -58,6 +76,7 @@ public class LianLianController extends BaseController {
/**
* 联联平台查询充电站状态信息
* http://localhost:8080/LianLian/query_station_status
* @param StationIDs
* @return
*/
@@ -84,6 +103,8 @@ public class LianLianController extends BaseController {
/**
* 查询统计信息
* http://localhost:8080/LianLian/query_station_stats
*
* @param dto
* @return
*/
@@ -107,6 +128,7 @@ public class LianLianController extends BaseController {
/**
* 请求设备认证
* http://localhost:8080/LianLian/query_equip_auth
* @param dto
* @return
*/
@@ -130,6 +152,7 @@ public class LianLianController extends BaseController {
/**
* 请求启动充电
* http://localhost:8080/LianLian/query_start_charge
* @param dto
* @return
*/
@@ -153,6 +176,7 @@ public class LianLianController extends BaseController {
/**
* 查询充电状态
* http://localhost:8080/LianLian/query_equip_charge_status/{startChargeSeq}
* @param startChargeSeq
* @return
*/
@@ -176,6 +200,7 @@ public class LianLianController extends BaseController {
/**
* 请求停止充电
* http://localhost:8080/LianLian/query_stop_charge
* @param dto
* @return
*/

View File

@@ -842,6 +842,15 @@ public class OrderService {
MemberVO memberVO = memberService.getMemberInfoByMemberId(orderBasicInfo.getMemberId());
vo.setMemberInfo(memberVO);
try {
// 因为原来的数据在redis中是永久保存所以这里做下查询详情的时候发现已经是完成的订单redis数据存到表中
if (StringUtils.equals(orderBasicInfo.getOrderStatus(), OrderStatusEnum.ORDER_COMPLETE.getValue())) {
// 如果是已完成的订单把redis中的实时数据存到表中
orderBasicInfoService.realTimeMonitorDataRedis2DB(orderBasicInfo.getTransactionCode(), orderBasicInfo.getOrderCode());
}
} catch (Exception e) {
log.error("后管查询订单详情时把redis中的实时数据存到表发生异常", e);
}
return vo;
}
@@ -934,10 +943,17 @@ public class OrderService {
UniAppOrderVO.BillingDetails billingDetails = new UniAppOrderVO.BillingDetails();
BeanUtils.copyBeanProp(billingDetails, orderDetail);
vo.setBillingDetails(billingDetails);
// orderDetail.getSharpElectricityPrice()
}
try {
// 因为原来的数据在redis中是永久保存所以这里做下查询详情的时候发现已经是完成的订单redis数据存到表中
if (StringUtils.equals(orderBasicInfo.getOrderStatus(), OrderStatusEnum.ORDER_COMPLETE.getValue())) {
// 如果是已完成的订单把redis中的实时数据存到表中
orderBasicInfoService.realTimeMonitorDataRedis2DB(orderBasicInfo.getTransactionCode(), orderBasicInfo.getOrderCode());
}
} catch (Exception e) {
log.error("后管查询订单详情时把redis中的实时数据存到表发生异常", e);
}
return vo;
}

View File

@@ -13,15 +13,12 @@ import com.jsowell.common.core.domain.ykc.TransactionRecordsData;
import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.enums.ykc.OrderStatusEnum;
import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.util.BytesUtil;
import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.DictUtils;
import com.jsowell.common.util.JWTUtils;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.YKCUtils;
import com.jsowell.common.util.*;
import com.jsowell.common.util.http.HttpUtils;
import com.jsowell.common.util.id.SnUtils;
import com.jsowell.common.util.id.SnowflakeIdWorker;
import com.jsowell.common.util.ip.AddressUtils;
import com.jsowell.common.util.lianlian.LianLianUtils;
import com.jsowell.netty.command.ykc.IssueQRCodeCommand;
import com.jsowell.netty.command.ykc.ProofreadTimeCommand;
import com.jsowell.netty.handler.HeartbeatRequestHandler;
@@ -33,14 +30,7 @@ import com.jsowell.pile.domain.PileBillingDetail;
import com.jsowell.pile.domain.PileBillingTemplate;
import com.jsowell.pile.domain.PileStationInfo;
import com.jsowell.pile.domain.WxpayCallbackRecord;
import com.jsowell.pile.dto.BasicPileDTO;
import com.jsowell.pile.dto.BatchCreatePileDTO;
import com.jsowell.pile.dto.ImportBillingTemplateDTO;
import com.jsowell.pile.dto.QueryOrderDTO;
import com.jsowell.pile.dto.QueryPileDTO;
import com.jsowell.pile.dto.QueryStationDTO;
import com.jsowell.pile.dto.RefundableWxPayOrderData;
import com.jsowell.pile.dto.WeixinPayDTO;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.mapper.MemberBasicInfoMapper;
import com.jsowell.pile.mapper.PileBillingTemplateMapper;
import com.jsowell.pile.service.IOrderBasicInfoService;
@@ -59,6 +49,8 @@ import com.jsowell.service.MemberService;
import com.jsowell.service.OrderService;
import com.jsowell.service.PileRemoteService;
import com.jsowell.service.PileService;
import com.jsowell.thirdparty.domain.StationInfo;
import com.jsowell.thirdparty.service.LianLianService;
import com.jsowell.wxpay.common.WeChatPayParameter;
import com.jsowell.wxpay.dto.AppletTemplateMessageSendDTO;
import com.jsowell.wxpay.dto.WeChatRefundDTO;
@@ -77,13 +69,7 @@ import org.springframework.util.StopWatch;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
@ActiveProfiles("dev")
@SpringBootTest(classes = JsowellApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@@ -161,6 +147,13 @@ public class SpringBootTestController {
@Autowired
private AdapayService adapayService;
@Autowired
private LianLianService lianLianService;
static final String MAC_KEY = "53TtFpc4gdVZbF3x";
static final String ALGORITHM_MAC = "HmacMD5";
@Test
public void testCreateAdapay() {
adapayService.createTransactionObject();
@@ -190,6 +183,7 @@ public class SpringBootTestController {
}
}
@Test
public void testupdateElecAmount() {
orderBasicInfoService.updateElecAmount();
@@ -201,6 +195,70 @@ public class SpringBootTestController {
System.out.println(pileAuthCard);
}
@Test
public void testLianLian() throws Exception {
// Long stationId = 2L;
// // 通过id查询站点相关信息
// PileStationInfo pileStationInfo = pileStationInfoService.selectPileStationInfoById(stationId);
// // 组装联联平台所需要的数据格式
// StationInfo info = StationInfo.builder()
// .StationID(String.valueOf(stationId))
// .OperatorID(Constants.OPERATORID_LIANLIAN)
// .EquipmentOwnerID(Constants.OPERATORID_LIANLIAN)
// .StationName(pileStationInfo.getStationName())
// .IsAloneApply(Integer.valueOf(pileStationInfo.getAloneApply()))
// .IsPublicParkingLot(Integer.valueOf(pileStationInfo.getPublicParking()))
// .CountryCode(pileStationInfo.getCountryCode())
// .AreaCode(pileStationInfo.getAreaCode())
// .Address(pileStationInfo.getAddress())
// .ServiceTel(pileStationInfo.getServiceTel())
// .StationType(Integer.valueOf(pileStationInfo.getStationType()))
// .StationStatus(Integer.valueOf(pileStationInfo.getStationStatus()))
// .ParkNums(Integer.valueOf(pileStationInfo.getParkNums()))
// .StationLng(new BigDecimal(pileStationInfo.getStationLng()))
// .StationLat(new BigDecimal(pileStationInfo.getStationLat()))
// .Construction(Integer.valueOf(pileStationInfo.getConstruction()))
// .OpenAllDay(Integer.valueOf(pileStationInfo.getOpenAllDay()))
// // .MinElectricityPrice()
// // .ElectricityFee()
// // .ServiceFee()
// .ParkFree(Integer.valueOf(pileStationInfo.getParkFree()))
// // .ParkFee()
// .Payment(pileStationInfo.getPayment())
// .SupportOrder(Integer.valueOf(pileStationInfo.getSupportOrder()))
// // .equipmentInfos()
// // .ParkFeeType()
// .ToiletFlag(Integer.valueOf(pileStationInfo.getToiletFlag()))
// .StoreFlag(Integer.valueOf(pileStationInfo.getStoreFlag()))
// .RestaurantFlag(Integer.valueOf(pileStationInfo.getRestaurantFlag()))
// .LoungeFlag(Integer.valueOf(pileStationInfo.getLoungeFlag()))
// .CanopyFlag(Integer.valueOf(pileStationInfo.getCanopyFlag()))
// .PrinterFlag(Integer.valueOf(pileStationInfo.getPrinterFlag()))
// .BarrierFlag(Integer.valueOf(pileStationInfo.getBarrierFlag()))
// .ParkingLockFlag(Integer.valueOf(pileStationInfo.getParkingLockFlag()))
//
// .build();
// List<EquipmentInfo> pileList = lianLianService.getPileList(pileStationInfo);
// if (CollectionUtils.isNotEmpty(pileList)) {
// info.setEquipmentInfos(pileList); // 充电设备信息列表
// }
String url = "http://testdataexchange.evchargeonline.com:82/shevcs/v1/" + "notification_stationInfo";
JSONObject json = new JSONObject();
json.put("OperatorID", "MA1JLFUU8");
json.put("OperatorSecret", "Nh62XxllR5OjAzFj");
// json.put("StationInfo", info);
LianLianGetTokenDTO dto = new LianLianGetTokenDTO();
dto.setOperatorId("987654321");
dto.setOperatorSecret("1234567890abcdef");
String token = lianLianService.getToken(dto);
System.out.println("token:" + token);
}
@Test
public void testRefundForBalance() {
BigDecimal refundAmount = new BigDecimal("2");