update 充电桩主动申请充电逻辑优化

This commit is contained in:
Guoqs
2025-07-05 14:29:59 +08:00
parent b008891f53
commit 6011f27e42
5 changed files with 165 additions and 77 deletions

View File

@@ -2,6 +2,7 @@ package com.jsowell.pile.mapper;
import com.jsowell.pile.domain.MemberBasicInfo;
import com.jsowell.pile.dto.QueryMemberInfoDTO;
import com.jsowell.pile.vo.base.ConfirmStartChargingMemberVO;
import com.jsowell.pile.vo.base.MerchantInfoVO;
import com.jsowell.pile.vo.uniapp.customer.MemberVO;
import com.jsowell.pile.vo.uniapp.customer.MerchantVipVO;
@@ -127,4 +128,8 @@ public interface MemberBasicInfoMapper {
* @return
*/
List<MemberVO> getMemberInfoByPlateNumber(@Param("plateNumber") String plateNumber);
ConfirmStartChargingMemberVO queryMemberInfoByCardCode(@Param("cardCode") String cardCode, @Param("merchantId") String merchantId);
ConfirmStartChargingMemberVO queryMemberInfoByVinCode(@Param("vinCode") String vinCode, @Param("cardCode") String merchantId);
}

View File

@@ -5,6 +5,7 @@ import com.jsowell.pile.dto.CreateMerchantVipDTO;
import com.jsowell.pile.dto.PlatformTesterDTO;
import com.jsowell.pile.dto.QueryMemberInfoDTO;
import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
import com.jsowell.pile.vo.base.ConfirmStartChargingMemberVO;
import com.jsowell.pile.vo.uniapp.customer.*;
import com.jsowell.pile.vo.web.MemberDetailsVO;
import com.jsowell.pile.vo.web.PlatformTesterVO;
@@ -169,4 +170,8 @@ public interface MemberBasicInfoService {
* @return
*/
MemberDetailsVO queryMemberDetails(UniAppQueryMemberBalanceDTO dto);
ConfirmStartChargingMemberVO queryMemberInfoByCardCode(String physicsCard, String merchantId, String stationId);
ConfirmStartChargingMemberVO queryByVinCode(String vinCode, String merchantId, String stationId);
}

View File

@@ -15,21 +15,16 @@ import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.SecurityUtils;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.id.IdUtils;
import com.jsowell.pile.domain.MemberBasicInfo;
import com.jsowell.pile.domain.MemberPlateNumberRelation;
import com.jsowell.pile.domain.MemberWalletInfo;
import com.jsowell.pile.domain.MemberWalletLog;
import com.jsowell.pile.domain.*;
import com.jsowell.pile.dto.CreateMerchantVipDTO;
import com.jsowell.pile.dto.PlatformTesterDTO;
import com.jsowell.pile.dto.QueryMemberInfoDTO;
import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
import com.jsowell.pile.mapper.MemberBasicInfoMapper;
import com.jsowell.pile.mapper.MemberPlateNumberRelationMapper;
import com.jsowell.pile.mapper.MemberWalletInfoMapper;
import com.jsowell.pile.mapper.MemberWalletLogMapper;
import com.jsowell.pile.mapper.*;
import com.jsowell.pile.service.*;
import com.jsowell.pile.util.MerchantUtils;
import com.jsowell.pile.util.UserUtils;
import com.jsowell.pile.vo.base.ConfirmStartChargingMemberVO;
import com.jsowell.pile.vo.base.MerchantInfoVO;
import com.jsowell.pile.vo.uniapp.customer.*;
import com.jsowell.pile.vo.web.MemberDetailsVO;
@@ -59,8 +54,8 @@ public class MemberBasicInfoServiceImpl implements MemberBasicInfoService {
@Autowired
private MemberBasicInfoMapper memberBasicInfoMapper;
// @Autowired
// private MemberWalletInfoMapper memberWalletInfoMapper;
@Autowired
private PileStationWhitelistMapper pileStationWhitelistMapper;
@Autowired
private MemberWalletInfoService memberWalletInfoService;
@@ -773,4 +768,44 @@ public class MemberBasicInfoServiceImpl implements MemberBasicInfoService {
.build();
}
/**
* 根据卡号查询会员信息
* @param cardCode
* @param merchantId
* @return
*/
@Override
public ConfirmStartChargingMemberVO queryMemberInfoByCardCode(String cardCode, String merchantId, String stationId) {
ConfirmStartChargingMemberVO memberVO = memberBasicInfoMapper.queryMemberInfoByCardCode(cardCode, merchantId);
if (memberVO == null) {
return null;
}
BigDecimal principalBalance = memberVO.getPrincipalBalance() != null ? memberVO.getPrincipalBalance() : BigDecimal.ZERO;
BigDecimal giftBalance = memberVO.getGiftBalance() != null ? memberVO.getGiftBalance() : BigDecimal.ZERO;
memberVO.setTotalBalance(principalBalance.add(giftBalance));
// 是否为平台测试员
memberVO.setPlatformTesterFlag(selectPlatformTesterStatus(memberVO.getMemberId()).getStatus());
// 查询会员在站点是否是白名单用户
PileStationWhitelist whitelist = pileStationWhitelistMapper.queryWhitelistByMemberId(stationId, memberVO.getMemberId());
memberVO.setStationWhiteListFlag(whitelist != null ? Constants.ONE : Constants.ZERO);
return memberVO;
}
@Override
public ConfirmStartChargingMemberVO queryByVinCode(String vinCode, String merchantId, String stationId) {
ConfirmStartChargingMemberVO memberVO = memberBasicInfoMapper.queryMemberInfoByVinCode(vinCode, merchantId);
if (memberVO == null) {
return null;
}
BigDecimal principalBalance = memberVO.getPrincipalBalance() != null ? memberVO.getPrincipalBalance() : BigDecimal.ZERO;
BigDecimal giftBalance = memberVO.getGiftBalance() != null ? memberVO.getGiftBalance() : BigDecimal.ZERO;
memberVO.setTotalBalance(principalBalance.add(giftBalance));
// 是否为平台测试员
memberVO.setPlatformTesterFlag(selectPlatformTesterStatus(memberVO.getMemberId()).getStatus());
// 查询会员在站点是否是白名单用户
PileStationWhitelist whitelist = pileStationWhitelistMapper.queryWhitelistByMemberId(stationId, memberVO.getMemberId());
memberVO.setStationWhiteListFlag(whitelist != null ? Constants.ONE : Constants.ZERO);
return null;
}
}