Commit 09e2841f authored by m1991's avatar m1991

Merge remote-tracking branch 'origin/master'

parents 558b2f11 89927325
......@@ -41,7 +41,6 @@ public interface UsersMapper extends BaseMapper<User> {
*/
int delById(@Param("id") Integer id);
List<User> getList(Map<String, Object> map);
List<User> findAll();
......@@ -52,6 +51,12 @@ public interface UsersMapper extends BaseMapper<User> {
void save(User user);
/**
* 获取用户信息
* @return 用户信息
*/
User getUserById(@Param("id") Long id);
/**
* 获取用户信息
*
......
......@@ -106,6 +106,16 @@
order by create_time desc
</select>
<select id="getUserById" resultType="cn.wisenergy.model.app.User" parameterType="java.lang.Long">
select
<include refid="cols_all"/>
from
<include refid="table"/>
<where>
id=#{id}
</where>
</select>
<select id="getByUserId" resultType="cn.wisenergy.model.app.User" parameterType="string">
select
id,user_id,password,head_image,user_level,cross_border_line,id_card_number,fans_nickname,fans_id, invite_code,
......
......@@ -232,7 +232,7 @@ public class AccountManager {
//更新月收益
if (!CollectionUtils.isEmpty(accountInfoList)) {
for (AccountInfo accountInfo : accountInfoList) {
int count = accountMapper.updateById(accountInfo);
int count = accountMapper.edit(accountInfo);
if (count == 0) {
return false;
}
......
......@@ -7,17 +7,18 @@ import cn.wisenergy.model.vo.AerialDeliveryVo;
import java.util.Map;
/**
* @author 86187
* @author 86187
* @ Description: 用户接口
* @ Author : 86187
* @ Date : 2021/1/6 16:08
* @author 86187
*/
public interface UserService {
/**
* 获取用户信息
*
* @param userId 用户id
* @return 用户信息
*/
......@@ -25,8 +26,11 @@ public interface UserService {
R<Integer> getById1(String userId);
User getUserById(Long id);
/**
* 获取用户信息
*
* @param userId 用户id
* @return 用户信息
*/
......@@ -65,6 +69,7 @@ public interface UserService {
/**
* 设置用户头像
*
* @param userId 用户id
* @param headImage 头像图片地址
* @return true or false
......@@ -73,6 +78,7 @@ public interface UserService {
/**
* 设置页面 -邀请码填写
*
* @param userId 用户id
* @param inviteCode 邀请人邀请码
* @return true or false
......
......@@ -5,10 +5,7 @@ import cn.wisenergy.common.utils.R;
import cn.wisenergy.mapper.*;
import cn.wisenergy.model.app.*;
import cn.wisenergy.model.enums.MemberPercentEnum;
import cn.wisenergy.model.enums.RebateStatusEnum;
import cn.wisenergy.model.enums.TradeRecordEnum;
import cn.wisenergy.model.enums.TradeStatusEnum;
import cn.wisenergy.model.enums.*;
import cn.wisenergy.model.vo.TeamPerformanceSortVo;
import cn.wisenergy.service.Manager.PublicManager;
import cn.wisenergy.service.app.AccountService;
......@@ -159,7 +156,13 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo>
String userId = entity.getKey();
//1)、统计当前用户月度业绩
double userCount = entity.getValue();
tempMap.put(userId, userCount);
if (tempMap.containsKey(entity.getKey())) {
double teamMoney = userCount + tempMap.get(entity.getKey());
tempMap.put(entity.getKey(), teamMoney);
} else {
//key 不存在,加入集合 当前用户团队绩效
tempMap.put(entity.getKey(), userCount);
}
//2)、获取当前用户的上级用户列表
List<User> userList = getByList(userId);
......@@ -171,11 +174,11 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo>
//3)、统计当前用户的上级用户团队绩效
//key 存在 当前用户团队绩效 + 上级用户团队绩效
if (tempMap.containsKey(userInfo.getUserId())) {
double teamMoney = userCount + map.get(userInfo.getUserId());
map.put(userInfo.getUserId(), teamMoney);
double teamMoney = userCount + tempMap.get(userInfo.getUserId());
tempMap.put(userInfo.getUserId(), teamMoney);
} else {
//key 不存在,加入集合 当前用户团队绩效
map.put(userInfo.getUserId(), userCount);
tempMap.put(userInfo.getUserId(), userCount);
}
}
}
......@@ -196,7 +199,6 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo>
performance.setMonthTeamPerformance(BigDecimal.valueOf(entity.getValue()));
performance.setUserLevel(user.getUserLevel());
performance.setYearMonth(yearMonth);
teamPerformanceMapper.add(performance);
addList.add(performance);
} else {
teamPerformance.setMonthTeamPerformance(BigDecimal.valueOf(entity.getValue()));
......@@ -267,6 +269,11 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo>
List<AccountInfo> accountInfoList = new ArrayList<>();
List<TradeRecord> tradeRecordList = new ArrayList<>();
for (TeamPerformance user : list) {
//用户是普通用户的,不计算最大进步奖
if (user.getUserLevel().equals(UserLevelEnum.NORMAL_USER.getCode())) {
continue;
}
//获取最大进步奖 百分比
MemberPercent memberPercent = memberPercentMapper.getByLevelAndType(user.getUserLevel(), 3);
......@@ -274,11 +281,18 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo>
double userTeamPerformance = user.getMonthTeamPerformance().doubleValue();
double percent = memberPercent.getPercent().doubleValue();
double income = number * 3980 * percent * userTeamPerformance / twentyTotal;
double income = Math.floor(number * 3980 * percent * userTeamPerformance / twentyTotal);
//获取账户信息
AccountInfo accountInfo = accountMapper.getByUserId(user.getUserId());
accountInfo.setEarningsMonth(new BigDecimal(income));
//用户月收益 =其他收益+最大进步奖收益
BigDecimal earningsMonth = accountInfo.getEarningsMonth().add(BigDecimal.valueOf(income));
accountInfo.setEarningsMonth(earningsMonth);
//用户总收益 =其他总收益 + earningsMonth
BigDecimal earningsTotal = accountInfo.getEarningsTotal().add(BigDecimal.valueOf(income));
accountInfo.setEarningsTotal(earningsTotal);
accountInfoList.add(accountInfo);
//添加交易流水记录
......@@ -286,7 +300,8 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo>
tradeRecord.setUserId(user.getUserId());
tradeRecord.setTradeType(TradeRecordEnum.PROGRESS_PRIZE.getCode());
tradeRecord.setTradeNo(null);
tradeRecord.setStatus(TradeStatusEnum.ALREADY_SETTLE_ACCOUNTS.getCode());
tradeRecord.setStatus(TradeStatusEnum.NO_SETTLE_ACCOUNTS.getCode());
tradeRecord.setMoney(BigDecimal.valueOf(income));
tradeRecordList.add(tradeRecord);
}
......
......@@ -114,7 +114,14 @@ public class MonthTaskServiceImpl implements MonthTaskService {
String userId = entity.getKey();
//1)、统计当前用户月度业绩
double userCount = entity.getValue();
tempMap.put(userId, userCount);
//key 存在 当前用户团队绩效 + 上级用户团队绩效
if (tempMap.containsKey(entity.getKey())) {
double teamMoney = userCount + tempMap.get(entity.getKey());
tempMap.put(entity.getKey(), teamMoney);
} else {
//key 不存在,加入集合 当前用户团队绩效
tempMap.put(entity.getKey(), userCount);
}
//2)、获取当前用户的上级用户列表
List<User> userList = accountService.getByList(userId);
......@@ -126,11 +133,11 @@ public class MonthTaskServiceImpl implements MonthTaskService {
//3)、统计当前用户的上级用户团队绩效
//key 存在 当前用户团队绩效 + 上级用户团队绩效
if (tempMap.containsKey(userInfo.getUserId())) {
double teamMoney = userCount + map.get(userInfo.getUserId());
map.put(userInfo.getUserId(), teamMoney);
double teamMoney = userCount + tempMap.get(userInfo.getUserId());
tempMap.put(userInfo.getUserId(), teamMoney);
} else {
//key 不存在,加入集合 当前用户团队绩效
map.put(userInfo.getUserId(), userCount);
tempMap.put(userInfo.getUserId(), userCount);
}
}
}
......@@ -151,7 +158,6 @@ public class MonthTaskServiceImpl implements MonthTaskService {
performance.setMonthTeamPerformance(BigDecimal.valueOf(entity.getValue()));
performance.setUserLevel(user.getUserLevel());
performance.setYearMonth(yearMonth);
teamPerformanceMapper.add(performance);
addList.add(performance);
} else {
teamPerformance.setMonthTeamPerformance(BigDecimal.valueOf(entity.getValue()));
......@@ -160,8 +166,8 @@ public class MonthTaskServiceImpl implements MonthTaskService {
}
//4、更新账户月度绩效
boolean updateBool=accountManager.updateAccountPerformanceMonth(addList, updateList);
if(!updateBool){
boolean updateBool = accountManager.updateAccountPerformanceMonth(addList, updateList);
if (!updateBool) {
return R.ok(1, false);
}
......@@ -214,6 +220,11 @@ public class MonthTaskServiceImpl implements MonthTaskService {
List<AccountInfo> accountInfoList = new ArrayList<>();
List<TradeRecord> tradeRecordList = new ArrayList<>();
for (TeamPerformance user : list) {
//用户是普通用户的,不计算最大进步奖
if (user.getUserLevel().equals(UserLevelEnum.NORMAL_USER.getCode())) {
continue;
}
//获取最大进步奖 百分比
MemberPercent memberPercent = memberPercentMapper.getByLevelAndType(user.getUserLevel(), 3);
......@@ -221,11 +232,18 @@ public class MonthTaskServiceImpl implements MonthTaskService {
double userTeamPerformance = user.getMonthTeamPerformance().doubleValue();
double percent = memberPercent.getPercent().doubleValue();
double income = number * 3980 * percent * userTeamPerformance / twentyTotal;
double income = Math.floor(number * 3980 * percent * userTeamPerformance / twentyTotal);
//获取账户信息
AccountInfo accountInfo = accountMapper.getByUserId(user.getUserId());
accountInfo.setEarningsMonth(new BigDecimal(income));
//用户月收益 =其他收益+最大进步奖收益
BigDecimal earningsMonth = accountInfo.getEarningsMonth().add(BigDecimal.valueOf(income));
accountInfo.setEarningsMonth(earningsMonth);
//用户总收益 =其他总收益 + earningsMonth
BigDecimal earningsTotal = accountInfo.getEarningsTotal().add(BigDecimal.valueOf(income));
accountInfo.setEarningsTotal(earningsTotal);
accountInfoList.add(accountInfo);
//添加交易流水记录
......@@ -234,6 +252,7 @@ public class MonthTaskServiceImpl implements MonthTaskService {
tradeRecord.setTradeType(TradeRecordEnum.PROGRESS_PRIZE.getCode());
tradeRecord.setTradeNo(null);
tradeRecord.setStatus(TradeStatusEnum.ALREADY_SETTLE_ACCOUNTS.getCode());
tradeRecord.setMoney(BigDecimal.valueOf(income));
tradeRecordList.add(tradeRecord);
}
......
......@@ -56,6 +56,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
@Override
public void userLevelUp(){
//1.获取数据库订单数据
log.info("------------------------用户升级开始----------------------------------");
List<OrderInfo> ordersByLevelStatus = orderMapper.getByLevelStatus(0);
for (OrderInfo orderInfo : ordersByLevelStatus) {
String buyerId = orderInfo.getBuyerId();
......@@ -64,6 +65,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
orderInfo.setLevelStatus(1);
orderMapper.updateById(orderInfo);
}
log.info("-------------------------用户升级结束--------------------------------------");
}
@Override
......@@ -605,7 +607,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
BigDecimal cultivatingPrize = cultivatingPrizeMapper.getcultivatingPrizeByUserLevel(level).getCultivatingPrize();
if (1 != bronzeTree) {
//给上级用户幼苗等级培育奖
//给上级用户青铜等级培育奖
//1.上级用户本月收益 ++
AccountInfo beIntivedUserAccount = accountMapper.getByUserId(inviteUserId);
BigDecimal earningsMonth = beIntivedUserAccount.getEarningsMonth();
......@@ -625,7 +627,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
//3.修改培育奖记录状态 ==1
bronzeTree = 1;
cultivatingPrizeInfo.setSeedling(bronzeTree);
cultivatingPrizeInfo.setBronzeTree(bronzeTree);
cultivatingPrizeInfoMapper.updateById(cultivatingPrizeInfo);
}
} else if (3 == level) {
......@@ -634,7 +636,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
BigDecimal cultivatingPrize = cultivatingPrizeMapper.getcultivatingPrizeByUserLevel(level).getCultivatingPrize();
if (1 != silverTree) {
//给上级用户幼苗等级培育奖
//给上级用户白银等级培育奖
//1.上级用户本月收益 ++
AccountInfo beIntivedUserAccount = accountMapper.getByUserId(inviteUserId);
BigDecimal earningsMonth = beIntivedUserAccount.getEarningsMonth();
......@@ -654,7 +656,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
//3.修改培育奖记录状态 ==1
silverTree = 1;
cultivatingPrizeInfo.setSeedling(silverTree);
cultivatingPrizeInfo.setSilverTree(silverTree);
cultivatingPrizeInfoMapper.updateById(cultivatingPrizeInfo);
}
} else if (4 == level) {
......@@ -663,7 +665,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
BigDecimal cultivatingPrize = cultivatingPrizeMapper.getcultivatingPrizeByUserLevel(level).getCultivatingPrize();
if (1 != goldTree) {
//给上级用户幼苗等级培育奖
//给上级用户黄金等级培育奖
//1.上级用户本月收益 ++
AccountInfo beIntivedUserAccount = accountMapper.getByUserId(inviteUserId);
BigDecimal earningsMonth = beIntivedUserAccount.getEarningsMonth();
......@@ -683,7 +685,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
//3.修改培育奖记录状态 ==1
goldTree = 1;
cultivatingPrizeInfo.setSeedling(goldTree);
cultivatingPrizeInfo.setGoldTree(goldTree);
cultivatingPrizeInfoMapper.updateById(cultivatingPrizeInfo);
}
} else if (5 == level) {
......@@ -692,7 +694,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
BigDecimal cultivatingPrize = cultivatingPrizeMapper.getcultivatingPrizeByUserLevel(level).getCultivatingPrize();
if (1 != farmer) {
//给上级用户幼苗等级培育奖
//给上级用户农场主等级培育奖
//1.上级用户本月收益 ++
AccountInfo beIntivedUserAccount = accountMapper.getByUserId(inviteUserId);
BigDecimal earningsMonth = beIntivedUserAccount.getEarningsMonth();
......@@ -712,7 +714,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
//3.修改培育奖记录状态 ==1
farmer = 1;
cultivatingPrizeInfo.setSeedling(farmer);
cultivatingPrizeInfo.setFarmer(farmer);
cultivatingPrizeInfoMapper.updateById(cultivatingPrizeInfo);
}
} else if (6 == level) {
......@@ -721,7 +723,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
BigDecimal cultivatingPrize = cultivatingPrizeMapper.getcultivatingPrizeByUserLevel(level).getCultivatingPrize();
if (1 != forestStart) {
//给上级用户幼苗等级培育奖
//给上级用户森林之星等级培育奖
//1.上级用户本月收益 ++
AccountInfo beIntivedUserAccount = accountMapper.getByUserId(inviteUserId);
BigDecimal earningsMonth = beIntivedUserAccount.getEarningsMonth();
......@@ -741,7 +743,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
//3.修改培育奖记录状态 ==1
forestStart = 1;
cultivatingPrizeInfo.setSeedling(forestStart);
cultivatingPrizeInfo.setForestStart(forestStart);
cultivatingPrizeInfoMapper.updateById(cultivatingPrizeInfo);
}
} else if (7 == level) {
......@@ -750,7 +752,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
BigDecimal cultivatingPrize = cultivatingPrizeMapper.getcultivatingPrizeByUserLevel(level).getCultivatingPrize();
if (1 != partner) {
//给上级用户幼苗等级培育奖
//给上级用户西田森合伙人等级培育奖
//1.上级用户本月收益 ++
AccountInfo beIntivedUserAccount = accountMapper.getByUserId(inviteUserId);
BigDecimal earningsMonth = beIntivedUserAccount.getEarningsMonth();
......@@ -770,7 +772,7 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper,User> implemen
//3.修改培育奖记录状态 ==1
partner = 1;
cultivatingPrizeInfo.setSeedling(partner);
cultivatingPrizeInfo.setPartner(partner);
cultivatingPrizeInfoMapper.updateById(cultivatingPrizeInfo);
}
}
......
package cn.wisenergy.service.app.impl;
import cn.wisenergy.common.utils.*;
import cn.wisenergy.common.utils.R;
import cn.wisenergy.common.utils.RedisKeyUtils;
import cn.wisenergy.common.utils.RedisUtils;
import cn.wisenergy.common.utils.ShareCodeUtil;
import cn.wisenergy.mapper.RecommendUserMapper;
import cn.wisenergy.mapper.TeamUserInfoMapper;
import cn.wisenergy.mapper.UsersMapper;
......@@ -17,7 +20,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.*;
/**
......@@ -53,6 +55,11 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
return R.ok(usersMapper.ByUserId(userId));
}
@Override
public User getUserById(Long id) {
return this.usersMapper.getUserById(id);
}
@Override
public User getByUserId(String userId) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment