运营商VIP

This commit is contained in:
2023-11-24 14:36:59 +08:00
parent f2fac36715
commit f7a8d48b69
7 changed files with 137 additions and 27 deletions

View File

@@ -0,0 +1,33 @@
package com.jsowell.pile.dto;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
/**
* 新增运营商vip DTO
*/
@Getter
@Setter
public class CreateMerchantVipDTO {
/**
* 手机号
*/
private String mobileNumber;
/**
* 所属运营商id
*/
private String targetMerchantId;
/**
* 操作类型
*/
private String type;
/**
* 金额
*/
private BigDecimal updatePrincipalBalance;
}

View File

@@ -1,6 +1,7 @@
package com.jsowell.pile.service;
import com.jsowell.pile.domain.MemberBasicInfo;
import com.jsowell.pile.dto.CreateMerchantVipDTO;
import com.jsowell.pile.dto.PlatformTesterDTO;
import com.jsowell.pile.dto.QueryMemberInfoDTO;
import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
@@ -147,4 +148,6 @@ public interface IMemberBasicInfoService {
List<MemberBalanceVO> getMemberRefundAmount(List<String> memberIds);
List<MerchantVipVO> queryMerchantVipList(QueryMemberInfoDTO dto);
void createMerchantVip(CreateMerchantVipDTO dto);
}

View File

@@ -17,6 +17,7 @@ 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.dto.CreateMerchantVipDTO;
import com.jsowell.pile.dto.PlatformTesterDTO;
import com.jsowell.pile.dto.QueryMemberInfoDTO;
import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
@@ -322,17 +323,19 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
return null;
}
BigDecimal totalAccountAmount = BigDecimal.ZERO;
BigDecimal principalBalance = BigDecimal.ZERO;
if (StringUtils.isNotBlank(merchantId)) {
try {
BigDecimal totalAccountAmount = BigDecimal.ZERO;
BigDecimal principalBalance = BigDecimal.ZERO;
MemberWalletInfo memberWalletInfo = memberWalletInfoService.selectByMemberId(memberId, merchantId);
if (memberWalletInfo != null) {
totalAccountAmount = memberWalletInfo.getPrincipalBalance();
principalBalance = memberWalletInfo.getPrincipalBalance();
}
vo.setTotalAccountAmount(totalAccountAmount);
vo.setPrincipalBalance(principalBalance);
} catch (Exception e) {
log.error("查询用户余额异常 memberId:{}, merchantId:{}", memberId, merchantId, e);
}
vo.setTotalAccountAmount(totalAccountAmount);
vo.setPrincipalBalance(principalBalance);
// 查询用户车牌号
MemberPlateNumberRelation memberPlateNumberRelation = new MemberPlateNumberRelation();
@@ -490,4 +493,24 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
return resultList;
}
@Override
public void createMerchantVip(CreateMerchantVipDTO dto) {
// 查询一级运营商
String firstLevelMerchantId = pileMerchantInfoService.getFirstLevelMerchantIdByMerchantId(dto.getTargetMerchantId());
if (StringUtils.isBlank(firstLevelMerchantId)) {
throw new BusinessException("", "没有查询到以及运营商信息");
}
// 根据手机号查询会员信息
MemberBasicInfo memberBasicInfo = memberBasicInfoMapper.selectInfoByMobileNumberAndMerchantId(dto.getMobileNumber(), firstLevelMerchantId);
if (memberBasicInfo == null) {
throw new BusinessException("", "根据手机号没有查询到会员信息");
}
UpdateMemberBalanceDTO updateMemberBalanceDTO = new UpdateMemberBalanceDTO();
updateMemberBalanceDTO.setMemberId(memberBasicInfo.getMemberId());
updateMemberBalanceDTO.setType(dto.getType());
updateMemberBalanceDTO.setUpdatePrincipalBalance(dto.getUpdatePrincipalBalance());
updateMemberBalanceDTO.setTargetMerchantId(dto.getTargetMerchantId());
updateMemberBalance(updateMemberBalanceDTO);
}
}