mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 11:05:18 +08:00
update
This commit is contained in:
@@ -160,6 +160,9 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
||||
@Autowired
|
||||
private PileRemoteService pileRemoteService;
|
||||
|
||||
@Autowired
|
||||
private IPileStationWhitelistService pileStationWhitelistService;
|
||||
|
||||
/**
|
||||
* 条件查询订单基本信息
|
||||
*
|
||||
@@ -1579,25 +1582,40 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
||||
*/
|
||||
@Override
|
||||
public Map<String, Object> generateOrderByCard(GenerateOrderDTO dto) throws Exception {
|
||||
// 通过memberId获取账户余额
|
||||
MemberVO memberVO = memberBasicInfoService.queryMemberInfoByMemberId(dto.getMemberId());
|
||||
if (memberVO == null) {
|
||||
throw new BusinessException(ReturnCodeEnum.CODE_GET_MEMBER_ACCOUNT_AMOUNT_ERROR);
|
||||
}
|
||||
BigDecimal totalAccountAmount = memberVO.getTotalAccountAmount();
|
||||
if (totalAccountAmount.compareTo(BigDecimal.ZERO) <= 0) {
|
||||
throw new BusinessException(ReturnCodeEnum.CODE_BALANCE_IS_INSUFFICIENT);
|
||||
}
|
||||
// BigDecimal totalAccountAmount = BigDecimal.ZERO;
|
||||
BigDecimal accountBalance = BigDecimal.ZERO;
|
||||
String payMode;
|
||||
// 判断当前用户是否为平台测试员
|
||||
PlatformTesterVO platformTesterVO = memberBasicInfoService.selectPlatformTesterStatus(dto.getMemberId());
|
||||
PileBasicInfo pileBasicInfo = pileBasicInfoService.selectPileBasicInfoBySN(dto.getPileSn());
|
||||
PileStationWhitelist pileStationWhitelist = pileStationWhitelistService.queryWhitelistByMemberId(String.valueOf(pileBasicInfo.getStationId()), dto.getMemberId());
|
||||
|
||||
if(platformTesterVO != null && StringUtils.equals(Constants.ONE, platformTesterVO.getStatus())) {
|
||||
// 是平台测试员
|
||||
dto.setChargeAmount(new BigDecimal("500"));
|
||||
dto.setPayMode(OrderPayModeEnum.PAYMENT_OF_WHITELIST.getValue());
|
||||
}
|
||||
dto.setChargeAmount(totalAccountAmount); // 充电金额
|
||||
dto.setPayMode(OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue()); // 1-余额支付
|
||||
accountBalance = new BigDecimal("500");
|
||||
payMode = OrderPayModeEnum.PAYMENT_OF_WHITELIST.getValue();
|
||||
|
||||
}else if(pileStationWhitelist != null) {
|
||||
// 站点白名单
|
||||
accountBalance = new BigDecimal("500");
|
||||
payMode = OrderPayModeEnum.PAYMENT_OF_WHITELIST.getValue();
|
||||
} else {
|
||||
// 通过memberId获取账户余额
|
||||
MemberVO memberVO = memberBasicInfoService.queryMemberInfoByMemberId(dto.getMemberId());
|
||||
if (memberVO == null) {
|
||||
throw new BusinessException(ReturnCodeEnum.CODE_GET_MEMBER_ACCOUNT_AMOUNT_ERROR);
|
||||
}
|
||||
if (accountBalance.compareTo(BigDecimal.ZERO) <= 0) {
|
||||
throw new BusinessException(ReturnCodeEnum.CODE_BALANCE_IS_INSUFFICIENT);
|
||||
}
|
||||
accountBalance = memberVO.getTotalAccountAmount();
|
||||
payMode = OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue();
|
||||
// accountBalance = memberVO.getTotalAccountAmount();
|
||||
// dto.setChargeAmount(totalAccountAmount); // 充电金额
|
||||
// dto.setPayMode(OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue()); // 1-余额支付
|
||||
}
|
||||
dto.setChargeAmount(accountBalance);
|
||||
dto.setPayMode(payMode);
|
||||
/*
|
||||
生成订单
|
||||
*/
|
||||
@@ -1623,14 +1641,14 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
||||
Map<String, Object> map = Maps.newHashMap();
|
||||
map.put("orderCode", basicInfo.getOrderCode());
|
||||
map.put("transactionCode", basicInfo.getTransactionCode());
|
||||
map.put("accountBalance", totalAccountAmount);
|
||||
map.put("accountBalance", accountBalance);
|
||||
|
||||
logger.info("生成订单 result:{}", JSON.toJSONString(map));
|
||||
|
||||
// 支付订单
|
||||
PayOrderDTO payOrderDTO = new PayOrderDTO();
|
||||
payOrderDTO.setOrderCode(basicInfo.getOrderCode());
|
||||
payOrderDTO.setPayAmount(totalAccountAmount);
|
||||
payOrderDTO.setPayAmount(accountBalance);
|
||||
payOrderDTO.setPayMode(dto.getPayMode());
|
||||
payOrderDTO.setMemberId(dto.getMemberId());
|
||||
// payOrderDTO.setCode();
|
||||
|
||||
Reference in New Issue
Block a user