From 5c5589c0d343437275563a1a84f3a415a4ea16d3 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 17 Jun 2022 16:50:40 +0800
Subject: [PATCH] fix
---
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java | 141 +++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 135 insertions(+), 6 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
index a8d6598..2db036f 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -96,6 +96,24 @@
}
@Override
+ public void changeIdentity(Integer type, Long id, Integer value) {
+ MallMember mallMember = mallMemberMapper.selectById(id);
+ if(mallMember == null) {
+ throw new FebsException("参数错误");
+ }
+
+ if (type == 1) {
+ mallMember.setDirector(value);
+ } else if (type == 2){
+ mallMember.setStoreMaster(value);
+ } else {
+ throw new FebsException("参数错误");
+ }
+
+ this.baseMapper.updateById(mallMember);
+ }
+
+ @Override
public MallMemberVo getMallMemberInfoById(long id) {
MallMemberVo mallMemberVo = mallMemberMapper.getMallMemberInfoById(id);
return mallMemberVo;
@@ -322,15 +340,29 @@
}
BigDecimal bigDecimal = mallSystemPayDto.getAddBalance();
+ boolean isReduce = false;
if(bigDecimal.compareTo(BigDecimal.ZERO) <= 0){
- return new FebsResponse().fail().message("拨付数目需要大于0");
+ isReduce = true;
}
- MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
- mallMemberWallet.setBalance(mallMemberWallet.getBalance().add(bigDecimal));
- mallMemberWalletMapper.updateBalanceWithId(mallMemberWallet);
+ Integer type = mallSystemPayDto.getType();
+ String filedType = "";
+ if (type == 1) {
+ filedType = "balance";
+ } else if (type == 2) {
+ filedType = "score";
+ } else if (type == 3) {
+ filedType = "prizeScore";
+ } else {
+ throw new FebsException("参数错误");
+ }
- mallMoneyFlowService.addMoneyFlow(memberId, bigDecimal, MoneyFlowTypeEnum.SYSTEM.getValue(), null, FlowTypeEnum.BALANCE.getValue());
+ if (isReduce) {
+ iApiMallMemberWalletService.reduce(mallSystemPayDto.getAddBalance().negate(), mallSystemPayDto.getId(), filedType);
+ } else {
+ iApiMallMemberWalletService.add(mallSystemPayDto.getAddBalance(), mallSystemPayDto.getId(), filedType);
+ }
+ mallMoneyFlowService.addMoneyFlow(memberId, bigDecimal, MoneyFlowTypeEnum.SYSTEM.getValue(), null, type);
return new FebsResponse().success();
}
@@ -366,6 +398,32 @@
}
@Override
+ public void resetPwd(String ids, Integer type) {
+ if (StrUtil.isEmpty(ids)) {
+ throw new FebsException("参数错误");
+ }
+ List<String> idList = StrUtil.split(ids, ',');
+
+ for (String s : idList) {
+ Long id = Long.parseLong(s);
+ MallMember member = new MallMember();
+ member.setId(id);
+ member.setCreatedTime(null);
+
+ // 重置交易密码
+ if (type == 1) {
+ String payPwd = SecureUtil.md5("654321");
+ member.setTradePassword(payPwd);
+ // 重置登录密码
+ } else {
+ String pwd = SecureUtil.md5("a123456");
+ member.setPassword(pwd);
+ }
+ this.baseMapper.updateById(member);
+ }
+ }
+
+ @Override
public IPage<MallDataVo> getMallDataList(MallMember mallMember, QueryRequest request) {
Page<MallDataVo> page = new Page<>(request.getPageNum(), request.getPageSize());
IPage<MallDataVo> mallDataVos = this.baseMapper.getMallDataListInPage(page, mallMember);
@@ -390,6 +448,10 @@
if (!MallShopApply.APPLY_ING.equals(apply.getStatus())) {
throw new FebsException("申请已审核, 请勿重复操作");
}
+
+ MallMember member = mallMemberMapper.selectById(apply.getMemberId());
+ member.setStoreMaster(1);
+ mallMemberMapper.updateById(member);
apply.setStatus(MallShopApply.APPLY_AGREE);
mallShopApplyMapper.updateById(apply);
@@ -430,7 +492,15 @@
mallMember.setBindPhone(phone);
mallMember.setLevel(mallUpdateMemberInfoDto.getLevelCode());
mallMemberMapper.updateById(mallMember);
-
+ if(mallUpdateMemberInfoDto.getBalance() == null){
+ throw new FebsException("请输入正确的余额");
+ }
+ if(mallUpdateMemberInfoDto.getScore() == null){
+ throw new FebsException("请输入正确的赠送积分");
+ }
+ if(mallUpdateMemberInfoDto.getPrizeScore() == null){
+ throw new FebsException("请输入正确的竞猜积分");
+ }
BigDecimal balance = mallUpdateMemberInfoDto.getBalance();
if(BigDecimal.ZERO.compareTo(balance) > 0){
throw new FebsException("请输入正确的余额");
@@ -450,4 +520,63 @@
mallMemberWalletMapper.updateById(mallMemberWallet);
return new FebsResponse().success();
}
+
+ @Override
+ public MallMember findByInviteId(String inviteId) {
+
+ return this.baseMapper.selectInfoByInviteId(inviteId);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void modifyReferer(MallMember member) {
+ MallMember referer = this.baseMapper.selectInfoByInviteId(member.getReferrerId());
+ if (referer == null) {
+ throw new FebsException("推荐人不存在");
+ }
+ String refererId = member.getReferrerId();
+
+ member = this.baseMapper.selectById(member.getId());
+
+ String beforeReferer = member.getReferrerId();
+ member.setReferrerId(refererId);
+ String refererIds = refererIds(refererId);
+ member.setReferrerIds(refererIds);
+ this.baseMapper.updateById(member);
+
+ List<MallMember> childs = this.baseMapper.selectByRefererId(member.getInviteId());
+ if (CollUtil.isEmpty(childs)) {
+ return;
+ }
+
+ for (MallMember child : childs) {
+ child.setReferrerIds(member.getInviteId() + "," + refererIds);
+ this.baseMapper.updateById(child);
+ }
+ }
+
+ private String refererIds(String parentId) {
+ boolean flag = false;
+ if (StrUtil.isBlank(parentId)) {
+ flag = true;
+ }
+ String ids = "";
+ while (!flag) {
+ if (StrUtil.isBlank(ids)) {
+ ids += parentId;
+ } else {
+ ids += ("," + parentId);
+ }
+ MallMember parentMember = this.baseMapper.selectInfoByInviteId(parentId);
+ if (parentMember == null) {
+ break;
+ }
+ parentId = parentMember.getReferrerId();
+ if (StrUtil.isBlank(parentMember.getReferrerId())) {
+ flag = true;
+ }
+ }
+
+ return ids;
+ }
}
--
Gitblit v1.9.1