From 632c756b319e4add2093f86cf545b81b22dfcbf2 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 09 Jun 2022 14:03:39 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java |   77 ++++++++++++++++++++++++++++++--------
 1 files changed, 60 insertions(+), 17 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 d6a1e7b..b4b8d81 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
@@ -6,6 +6,7 @@
 import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
 import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
 import cc.mrbird.febs.common.exception.FebsException;
+import cc.mrbird.febs.common.utils.LoginUserUtil;
 import cc.mrbird.febs.common.utils.MallUtils;
 import cc.mrbird.febs.mall.dto.*;
 import cc.mrbird.febs.mall.entity.*;
@@ -20,11 +21,13 @@
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.crypto.SecureUtil;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.xmlbeans.impl.store.Query;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -192,17 +195,10 @@
 
     @Override
     public AdminAgentLevelUpdateInfoVo getAgentLevelUpdateInfoById(long id) {
-        AdminAgentLevelUpdateInfoVo adminAgentLevelUpdateInfoVo = new AdminAgentLevelUpdateInfoVo();
         DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectById(id);
         String value = dataDictionaryCustom.getValue();
         //{"directIncome":36,"lastCnt":3,"orderCnt":500,"orderType":2,"teamIncome":6,"teamIncomeType":2}
-        JSONObject jsonObject = JSONObject.parseObject(value);
-        adminAgentLevelUpdateInfoVo.setDirectIncome(new BigDecimal((jsonObject.get("directIncome")==null?0:jsonObject.get("directIncome")).toString()));
-        adminAgentLevelUpdateInfoVo.setLastCnt(Integer.parseInt((jsonObject.get("lastCnt")==null?0:jsonObject.get("lastCnt")).toString()));
-        adminAgentLevelUpdateInfoVo.setOrderCnt(Integer.parseInt((jsonObject.get("orderCnt")==null?0:jsonObject.get("orderCnt")).toString()));
-        adminAgentLevelUpdateInfoVo.setOrderType(Integer.parseInt(jsonObject.get("orderType").toString()));
-        adminAgentLevelUpdateInfoVo.setTeamIncome(new BigDecimal((jsonObject.get("teamIncome")==null?0:jsonObject.get("teamIncome")).toString()));
-        adminAgentLevelUpdateInfoVo.setTeamIncomeType(Integer.parseInt(jsonObject.get("orderType").toString()));
+        AdminAgentLevelUpdateInfoVo adminAgentLevelUpdateInfoVo = JSONObject.parseObject(value, AdminAgentLevelUpdateInfoVo.class);
         adminAgentLevelUpdateInfoVo.setId(id);
         return adminAgentLevelUpdateInfoVo;
     }
@@ -210,15 +206,9 @@
     @Override
     public FebsResponse agentLevelUpdate(AgentLevelUpdateDto agentLevelUpdateDto) {
         DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectById(agentLevelUpdateDto.getId());
-        AgentLevelUpdateDto agentLevelUpdateDtoJson = new AgentLevelUpdateDto();
-        agentLevelUpdateDtoJson.setDirectIncome(agentLevelUpdateDto.getDirectIncome());
-        agentLevelUpdateDtoJson.setLastCnt(agentLevelUpdateDto.getLastCnt());
-        agentLevelUpdateDtoJson.setOrderCnt(agentLevelUpdateDto.getOrderCnt());
-        agentLevelUpdateDtoJson.setTeamIncome(agentLevelUpdateDto.getTeamIncome());
-        agentLevelUpdateDtoJson.setOrderType(agentLevelUpdateDto.getOrderType());
-        agentLevelUpdateDtoJson.setTeamIncomeType(agentLevelUpdateDto.getTeamIncomeType());
-        JSONObject jsonObject = (JSONObject)JSONObject.toJSON(agentLevelUpdateDtoJson);
-        dataDictionaryCustom.setValue(jsonObject.toString());
+
+        agentLevelUpdateDto.setId(null);
+        dataDictionaryCustom.setValue(JSONObject.toJSONString(agentLevelUpdateDto));
         dataDictionaryCustomMapper.updateById(dataDictionaryCustom);
         return new FebsResponse().success();
     }
@@ -415,4 +405,57 @@
         apply.setStatus(MallShopApply.APPLY_DISAGREE);
         mallShopApplyMapper.updateById(apply);
     }
+
+    @Override
+    @Transactional
+    public FebsResponse updateMemberInfo(MallUpdateMemberInfoDto mallUpdateMemberInfoDto) {
+        Long memberId = mallUpdateMemberInfoDto.getId();
+        MallMember mallMember = mallMemberMapper.selectById(memberId);
+        if(ObjectUtil.isEmpty(mallMember)){
+            return new FebsResponse().fail().message("系统繁忙,请刷新页面重试");
+        }
+        String phone = mallUpdateMemberInfoDto.getPhone();
+        if(StrUtil.isEmpty(phone)){
+            throw new FebsException("请输入手机号码");
+        }
+        if(!phone.equals(mallMember.getPhone())){
+            QueryWrapper<MallMember> objectQueryWrapper = new QueryWrapper<>();
+            objectQueryWrapper.eq("phone",phone);
+            List<MallMember> mallMembers = this.baseMapper.selectList(objectQueryWrapper);
+            if(CollUtil.isNotEmpty(mallMembers)){
+                throw new FebsException("手机号码已绑定过账号");
+            }
+        }
+        mallMember.setPhone(phone);
+        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("请输入正确的余额");
+        }
+        BigDecimal score = mallUpdateMemberInfoDto.getScore();
+        if(BigDecimal.ZERO.compareTo(score) > 0){
+            throw new FebsException("请输入正确的赠送积分");
+        }
+        BigDecimal prizeScore = mallUpdateMemberInfoDto.getPrizeScore();
+        if(BigDecimal.ZERO.compareTo(prizeScore) > 0){
+            throw new FebsException("请输入正确的竞猜积分");
+        }
+        MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
+        mallMemberWallet.setBalance(balance);
+        mallMemberWallet.setScore(score);
+        mallMemberWallet.setPrizeScore(prizeScore);
+        mallMemberWalletMapper.updateById(mallMemberWallet);
+        return new FebsResponse().success();
+    }
 }

--
Gitblit v1.9.1