Commit bb3cbffe authored by liqin's avatar liqin 💬

Merge branch 'master' of http://111.203.232.171:8888/licc/shop-mall into master

parents 7f44559d 77206465
...@@ -214,4 +214,18 @@ public interface UsersMapper extends BaseMapper<User> { ...@@ -214,4 +214,18 @@ public interface UsersMapper extends BaseMapper<User> {
* @return * @return
*/ */
User getuserByBeInvitedCode(String beInvitedCode); User getuserByBeInvitedCode(String beInvitedCode);
/**
* 获取在团队中处于同一位置的用户集合
* @param beInvitedCode
* @return
*/
List<User> getListUserByBeInvitedCode(String beInvitedCode);
/**
* 通过邀请码获取用户信息
* @param inviteCode
* @return
*/
User getUserByInviteCode(String inviteCode);
} }
...@@ -411,4 +411,22 @@ ...@@ -411,4 +411,22 @@
invite_code = #{be_invited_code} invite_code = #{be_invited_code}
</select> </select>
<select id="getListUserByBeInvitedCode" resultType="cn.wisenergy.model.app.User">
select
<include refid="cols_all"/>
from
<include refid="table"/>
where
be_invited_code = #{be_invited_code}
</select>
<select id="getUserByInviteCode" resultType="cn.wisenergy.model.app.User">
select
<include refid="cols_all"/>
from
<include refid="table"/>
where
invite_code = #{inviteCode}
</select>
</mapper> </mapper>
...@@ -7,4 +7,11 @@ public interface AerialDeliveryUserService { ...@@ -7,4 +7,11 @@ public interface AerialDeliveryUserService {
* 空投池用户随机分配推荐人邀请码 * 空投池用户随机分配推荐人邀请码
*/ */
void aerialDeliveryUserRand(); void aerialDeliveryUserRand();
/**
* 设置邀请码接口
* @param userId 当前用户id
* @param userInvitedId 推荐人用户id
*/
void userSetBeinviteCode(String userId, String userInvitedId);
} }
...@@ -8,7 +8,7 @@ import cn.wisenergy.model.app.TeamUserInfo; ...@@ -8,7 +8,7 @@ import cn.wisenergy.model.app.TeamUserInfo;
import cn.wisenergy.model.app.User; import cn.wisenergy.model.app.User;
import cn.wisenergy.service.app.AerialDeliveryUserService; import cn.wisenergy.service.app.AerialDeliveryUserService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.checkerframework.checker.index.qual.LengthOf; import org.bouncycastle.pqc.crypto.newhope.NHOtherInfoGenerator;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -61,10 +61,9 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService ...@@ -61,10 +61,9 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService
List<User> aerialDeliveryUserList = usersMapper.getAerialDeliveryUserBeforOneMonth(before,now); List<User> aerialDeliveryUserList = usersMapper.getAerialDeliveryUserBeforOneMonth(before,now);
if (aerialDeliveryUserList.size()>0){ if (aerialDeliveryUserList.size()>0){
for (User user : aerialDeliveryUserList) { for (User user : aerialDeliveryUserList) {
int userLevel = user.getUserLevel();
Integer id = user.getId(); Integer id = user.getId();
String userId = user.getUserId(); String userId = user.getUserId();
log.info("当前用户id--------------"+userId+"当前用户等级----------------"+userLevel); log.info("当前用户id--------------"+userId);
//2、随机获取比当前用户早注册的用户 //2、随机获取比当前用户早注册的用户
User randUser = usersMapper.randOneGetUserByUserId(id); User randUser = usersMapper.randOneGetUserByUserId(id);
String randUserId = randUser.getUserId(); String randUserId = randUser.getUserId();
...@@ -73,147 +72,166 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService ...@@ -73,147 +72,166 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService
//2.2、设置当前用户的推荐人邀请码为 随机用户的inviteCode //2.2、设置当前用户的推荐人邀请码为 随机用户的inviteCode
user.setBeInvitedCode(inviteCode); user.setBeInvitedCode(inviteCode);
usersMapper.edit(user); usersMapper.edit(user);
//3、随机用户的直推表数据维护 userSetBeinviteCode(userId,randUserId);
RecommendUser recommendUserMapperByRandUser = recommendUserMapper.getByUserId(randUser.getUserId());
if (userLevel == 0){
//普通用户数量 + 1
Integer normalUserNum = recommendUserMapperByRandUser.getNormalUserNum();
recommendUserMapperByRandUser.setNormalUserNum(normalUserNum +1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 1){
//幼苗用户数量 + 1
Integer seedlingNum = recommendUserMapperByRandUser.getSeedlingNum();
recommendUserMapperByRandUser.setSeedlingNum(seedlingNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 2){
//青铜用户数量 + 1
Integer bronzeTreeNum = recommendUserMapperByRandUser.getBronzeTreeNum();
recommendUserMapperByRandUser.setBronzeTreeNum(bronzeTreeNum + 1 );
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 3){
//白银用户数量 + 1
Integer silverTreeNum = recommendUserMapperByRandUser.getSilverTreeNum();
recommendUserMapperByRandUser.setSilverTreeNum(silverTreeNum + 1 );
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 4){
//黄金用户数量 + 1
Integer goldTreeNum = recommendUserMapperByRandUser.getGoldTreeNum();
recommendUserMapperByRandUser.setGoldTreeNum(goldTreeNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 5){
//农场主用户数量 + 1
Integer farmerNum = recommendUserMapperByRandUser.getFarmerNum();
recommendUserMapperByRandUser.setFarmerNum(farmerNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 6){
//森林之星用户数量 + 1
Integer forestStartNum = recommendUserMapperByRandUser.getForestStartNum();
recommendUserMapperByRandUser.setForestStartNum(forestStartNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 7){
//西田森合伙人用户数量 + 1
Integer partnerNum = recommendUserMapperByRandUser.getPartnerNum();
recommendUserMapperByRandUser.setFarmerNum(partnerNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}
//4、用户的团队表数据维护
teamUserInfoByAerialDelivery(randUserId,userId);
//5、查看当前用户是否要进行升级
userLevelService.userLevelUpgrade(randUser.getUserId());
} }
} }
log.info("--------------------------空投池用户随机分派开始执行完成---------------------------------"); log.info("--------------------------空投池用户随机分派开始执行完成---------------------------------");
} }
@Override
public void userSetBeinviteCode(String userId, String userInvitedId){
//3、上级用户的直推表数据维护
recommendInfoDataPreserve(userId,userInvitedId);
//4、用户的团队表数据维护
Map<String, Integer> teamDataMap = teamUserInfoByAerialDelivery(userInvitedId, userId);
//4.1获取当前团队中最上级的用户对象
User highUser = highUser(userId);
if (null != highUser){
//4.2 最上级用户id
String highUserId = highUser.getUserId();
//4.1整体团队数据维护
teamData(teamDataMap, highUserId);
}
//5、查看当前用户是否要进行升级
userLevelService.userLevelUpgrade(userInvitedId);
}
/**
* 直推数据维护
* @param userId 当前用户id
* @param beInvitedCodeUserId 推荐人id
*/
public void recommendInfoDataPreserve(String userId,String beInvitedCodeUserId){
User byUserId = usersMapper.getByUserId(userId);
int userLevel = byUserId.getUserLevel();
RecommendUser recommendUserMapperByRandUser = recommendUserMapper.getByUserId(beInvitedCodeUserId);
if (userLevel == 0){
//普通用户数量 + 1
Integer normalUserNum = recommendUserMapperByRandUser.getNormalUserNum();
recommendUserMapperByRandUser.setNormalUserNum(normalUserNum +1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 1){
//幼苗用户数量 + 1
Integer seedlingNum = recommendUserMapperByRandUser.getSeedlingNum();
recommendUserMapperByRandUser.setSeedlingNum(seedlingNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 2){
//青铜用户数量 + 1
Integer bronzeTreeNum = recommendUserMapperByRandUser.getBronzeTreeNum();
recommendUserMapperByRandUser.setBronzeTreeNum(bronzeTreeNum + 1 );
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 3){
//白银用户数量 + 1
Integer silverTreeNum = recommendUserMapperByRandUser.getSilverTreeNum();
recommendUserMapperByRandUser.setSilverTreeNum(silverTreeNum + 1 );
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 4){
//黄金用户数量 + 1
Integer goldTreeNum = recommendUserMapperByRandUser.getGoldTreeNum();
recommendUserMapperByRandUser.setGoldTreeNum(goldTreeNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 5){
//农场主用户数量 + 1
Integer farmerNum = recommendUserMapperByRandUser.getFarmerNum();
recommendUserMapperByRandUser.setFarmerNum(farmerNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 6){
//森林之星用户数量 + 1
Integer forestStartNum = recommendUserMapperByRandUser.getForestStartNum();
recommendUserMapperByRandUser.setForestStartNum(forestStartNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}else if (userLevel == 7){
//西田森合伙人用户数量 + 1
Integer partnerNum = recommendUserMapperByRandUser.getPartnerNum();
recommendUserMapperByRandUser.setFarmerNum(partnerNum + 1);
recommendUserMapper.updateById(recommendUserMapperByRandUser);
}
}
/** /**
* 团队数据维护 * 团队数据维护
* @param beInvitedUserId 推荐人userId * @param beInvitedUserId 推荐人userId
* @param userId 当前用户的userId * @param userId 当前用户的userId
*/ */
private void teamUserInfoByAerialDelivery(String beInvitedUserId, String userId) { public Map<String, Integer> teamUserInfoByAerialDelivery(String beInvitedUserId, String userId) {
TeamUserInfo teamUserInfoByIntvitedUser = teamUserInfoMapper.getByUserId(beInvitedUserId); TeamUserInfo teamUserInfoByIntvitedUser = teamUserInfoMapper.getByUserId(beInvitedUserId);
TeamUserInfo teamUserInfoByUserId = teamUserInfoMapper.getByUserId(userId); TeamUserInfo teamUserInfoByUserId = teamUserInfoMapper.getByUserId(userId);
//1、当前用户团队中各等级的用户数量 Map<String, Integer> teamDataMap = new ConcurrentHashMap<String, Integer>();
Integer normalUserNumUser = teamUserInfoByUserId.getNormalUserNum(); if (null != teamUserInfoByUserId){
Integer seedlingNumUser = teamUserInfoByUserId.getSeedlingNum();
Integer bronzeTreeNumUser = teamUserInfoByUserId.getBronzeTreeNum();
Integer silverTreeNumUser = teamUserInfoByUserId.getSilverTreeNum();
Integer goldTreeNumUser = teamUserInfoByUserId.getGoldTreeNum();
Integer farmerNumUser = teamUserInfoByUserId.getFarmerNum();
Integer forestStartNumUser = teamUserInfoByUserId.getForestStartNum();
Integer partnerNumUser = teamUserInfoByUserId.getPartnerNum();
//2、推荐人的团队中各等级的用户数量 //1、当前用户团队中各等级的用户数量
Integer normalUserNumTeamIntvitedUser = teamUserInfoByIntvitedUser.getNormalUserNum(); Integer normalUserNumUser = teamUserInfoByUserId.getNormalUserNum();
Integer seedlingNumIntvitedUser = teamUserInfoByIntvitedUser.getSeedlingNum(); Integer seedlingNumUser = teamUserInfoByUserId.getSeedlingNum();
Integer bronzeTreeNumIntvitedUser = teamUserInfoByIntvitedUser.getBronzeTreeNum(); Integer bronzeTreeNumUser = teamUserInfoByUserId.getBronzeTreeNum();
Integer silverTreeNumIntvitedUser = teamUserInfoByIntvitedUser.getSilverTreeNum(); Integer silverTreeNumUser = teamUserInfoByUserId.getSilverTreeNum();
Integer goldTreeNumIntvitedUser = teamUserInfoByIntvitedUser.getGoldTreeNum(); Integer goldTreeNumUser = teamUserInfoByUserId.getGoldTreeNum();
Integer farmerNumIntvitedUser = teamUserInfoByIntvitedUser.getFarmerNum(); Integer farmerNumUser = teamUserInfoByUserId.getFarmerNum();
Integer forestStartNumIntvitedUser = teamUserInfoByIntvitedUser.getForestStartNum(); Integer forestStartNumUser = teamUserInfoByUserId.getForestStartNum();
Integer partnerNumIntvitedUser = teamUserInfoByIntvitedUser.getPartnerNum(); Integer partnerNumUser = teamUserInfoByUserId.getPartnerNum();
//3、最终团队各个等级的人数 推荐人用户本身的数量 + 当前用户的数量 + 当前用户自身(1) //2、推荐人的团队中各等级的用户数量
Integer resultTeamNormalNum = normalUserNumTeamIntvitedUser + normalUserNumUser; Integer normalUserNumTeamIntvitedUser = teamUserInfoByIntvitedUser.getNormalUserNum();
Integer resultTeamSeedlingNum = seedlingNumIntvitedUser + seedlingNumUser; Integer seedlingNumIntvitedUser = teamUserInfoByIntvitedUser.getSeedlingNum();
Integer resultTeamBronzeTreeNum = bronzeTreeNumIntvitedUser + bronzeTreeNumUser; Integer bronzeTreeNumIntvitedUser = teamUserInfoByIntvitedUser.getBronzeTreeNum();
Integer resultTeamSilverTreeNum = silverTreeNumIntvitedUser + silverTreeNumUser; Integer silverTreeNumIntvitedUser = teamUserInfoByIntvitedUser.getSilverTreeNum();
Integer resultTeamGoldTreeNum = goldTreeNumIntvitedUser + goldTreeNumUser; Integer goldTreeNumIntvitedUser = teamUserInfoByIntvitedUser.getGoldTreeNum();
Integer resultTeamFarmerNum = farmerNumIntvitedUser + farmerNumUser; Integer farmerNumIntvitedUser = teamUserInfoByIntvitedUser.getFarmerNum();
Integer resultTeamForestStartNum = forestStartNumIntvitedUser + forestStartNumUser; Integer forestStartNumIntvitedUser = teamUserInfoByIntvitedUser.getForestStartNum();
Integer resultTeamPartnerNum = partnerNumIntvitedUser + partnerNumUser; Integer partnerNumIntvitedUser = teamUserInfoByIntvitedUser.getPartnerNum();
//3.1、判断当前用户的等级 //3、最终团队各个等级的人数 推荐人用户本身的数量 + 当前用户的数量
User byUserId = usersMapper.getByUserId(userId); Integer resultTeamNormalNum = normalUserNumTeamIntvitedUser + normalUserNumUser;
if (null != byUserId){ Integer resultTeamSeedlingNum = seedlingNumIntvitedUser + seedlingNumUser;
int userLevel = byUserId.getUserLevel(); Integer resultTeamBronzeTreeNum = bronzeTreeNumIntvitedUser + bronzeTreeNumUser;
if (0 == userLevel){ Integer resultTeamSilverTreeNum = silverTreeNumIntvitedUser + silverTreeNumUser;
resultTeamNormalNum = resultTeamNormalNum + 1; Integer resultTeamGoldTreeNum = goldTreeNumIntvitedUser + goldTreeNumUser;
}if (1 == userLevel){ Integer resultTeamFarmerNum = farmerNumIntvitedUser + farmerNumUser;
resultTeamSeedlingNum = resultTeamSeedlingNum + 1; Integer resultTeamForestStartNum = forestStartNumIntvitedUser + forestStartNumUser;
}if (2 == userLevel){ Integer resultTeamPartnerNum = partnerNumIntvitedUser + partnerNumUser;
resultTeamBronzeTreeNum = resultTeamBronzeTreeNum + 1;
}if (3 == userLevel){
resultTeamSilverTreeNum = resultTeamSilverTreeNum + 1;
}if (4 == userLevel){
resultTeamGoldTreeNum = resultTeamGoldTreeNum + 1;
}if (5 == userLevel){
resultTeamFarmerNum = resultTeamFarmerNum + 1;
}if (6 == userLevel){
resultTeamForestStartNum = resultTeamForestStartNum + 1;
}if (7 == userLevel){
resultTeamPartnerNum = resultTeamPartnerNum + 1;
}
}
Map<String, Integer> teamDataMap = new ConcurrentHashMap<String, Integer>(); //3.1、判断当前用户的等级
teamDataMap.put("resultTeamNormalNum",resultTeamNormalNum); User byUserId = usersMapper.getByUserId(userId);
teamDataMap.put("resultTeamSeedlingNum",resultTeamSeedlingNum); if (null != byUserId){
teamDataMap.put("resultTeamBronzeTreeNum",resultTeamBronzeTreeNum); int userLevel = byUserId.getUserLevel();
teamDataMap.put("resultTeamSilverTreeNum",resultTeamSilverTreeNum); if (0 == userLevel){
teamDataMap.put("resultTeamGoldTreeNum",resultTeamGoldTreeNum); resultTeamNormalNum = resultTeamNormalNum + 1;
teamDataMap.put("resultTeamFarmerNum",resultTeamFarmerNum); }if (1 == userLevel){
teamDataMap.put("resultTeamForestStartNum",resultTeamForestStartNum); resultTeamSeedlingNum = resultTeamSeedlingNum + 1;
teamDataMap.put("resultTeamPartnerNum",resultTeamPartnerNum); }if (2 == userLevel){
//4.1 根据当前用户向上维护数据 resultTeamBronzeTreeNum = resultTeamBronzeTreeNum + 1;
upWardDataPreserve(teamDataMap,beInvitedUserId); }if (3 == userLevel){
resultTeamSilverTreeNum = resultTeamSilverTreeNum + 1;
}if (4 == userLevel){
resultTeamGoldTreeNum = resultTeamGoldTreeNum + 1;
}if (5 == userLevel){
resultTeamFarmerNum = resultTeamFarmerNum + 1;
}if (6 == userLevel){
resultTeamForestStartNum = resultTeamForestStartNum + 1;
}if (7 == userLevel){
resultTeamPartnerNum = resultTeamPartnerNum + 1;
}
}
//4.2 根据当前用户向下维护数据(包括当前用户自身) teamDataMap.put("resultTeamNormalNum",resultTeamNormalNum);
downWardDataPreserve(teamDataMap,userId); teamDataMap.put("resultTeamSeedlingNum",resultTeamSeedlingNum);
} teamDataMap.put("resultTeamBronzeTreeNum",resultTeamBronzeTreeNum);
teamDataMap.put("resultTeamSilverTreeNum",resultTeamSilverTreeNum);
teamDataMap.put("resultTeamGoldTreeNum",resultTeamGoldTreeNum);
teamDataMap.put("resultTeamFarmerNum",resultTeamFarmerNum);
teamDataMap.put("resultTeamForestStartNum",resultTeamForestStartNum);
teamDataMap.put("resultTeamPartnerNum",resultTeamPartnerNum);
/** }
* 根据推荐人的id向上进行团队数据维护 return teamDataMap;
* @param teamDataMap 团队表数据
* @param beInvitedUserId 当前用户的推荐人id
*/
private void upWardDataPreserve(Map<String, Integer> teamDataMap, String beInvitedUserId) {
User userById = usersMapper.getByUserId(beInvitedUserId); }
TeamUserInfo teamUserInfoMapperByUserId = teamUserInfoMapper.getByUserId(beInvitedUserId);
//整体团队数据维护
public void teamData(Map<String, Integer> teamDataMap, String userId){
//最上级用户对象
User user = usersMapper.getByUserId(userId);
TeamUserInfo teamUserInfoMapperByUserId = teamUserInfoMapper.getByUserId(userId);
teamUserInfoMapperByUserId.setNormalUserNum(teamDataMap.get("resultTeamNormalNum")); teamUserInfoMapperByUserId.setNormalUserNum(teamDataMap.get("resultTeamNormalNum"));
teamUserInfoMapperByUserId.setSeedlingNum(teamDataMap.get("resultTeamSeedlingNum")); teamUserInfoMapperByUserId.setSeedlingNum(teamDataMap.get("resultTeamSeedlingNum"));
teamUserInfoMapperByUserId.setBronzeTreeNum(teamDataMap.get("resultTeamBronzeTreeNum")); teamUserInfoMapperByUserId.setBronzeTreeNum(teamDataMap.get("resultTeamBronzeTreeNum"));
...@@ -222,54 +240,38 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService ...@@ -222,54 +240,38 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService
teamUserInfoMapperByUserId.setFarmerNum(teamDataMap.get("resultTeamFarmerNum")); teamUserInfoMapperByUserId.setFarmerNum(teamDataMap.get("resultTeamFarmerNum"));
teamUserInfoMapperByUserId.setForestStartNum(teamDataMap.get("resultTeamForestStartNum")); teamUserInfoMapperByUserId.setForestStartNum(teamDataMap.get("resultTeamForestStartNum"));
teamUserInfoMapperByUserId.setPartnerNum(teamDataMap.get("resultTeamPartnerNum")); teamUserInfoMapperByUserId.setPartnerNum(teamDataMap.get("resultTeamPartnerNum"));
//修改团队用户数据
teamUserInfoMapper.updateById(teamUserInfoMapperByUserId); teamUserInfoMapper.updateById(teamUserInfoMapperByUserId);
//推荐人的用户表对象
User invitedUserId = usersMapper.getByUserId(beInvitedUserId);
//推荐人的推荐人用户对象
//todo: 推荐人用户id获取推荐人的上级用户
User user = usersMapper.getuserByBeInvitedCode(invitedUserId.getBeInvitedCode());
if (null != user){ if (null != user){
String userId = user.getUserId(); String inviteCode = user.getInviteCode();
upWardDataPreserve(teamDataMap,userId); List<User> listUserByBeInvitedCode = usersMapper.getListUserByBeInvitedCode(inviteCode);
}else { if (listUserByBeInvitedCode.size() >0){
return; for (User user1 : listUserByBeInvitedCode) {
TeamUserInfo teamUserInfoMapperByUserId1 = teamUserInfoMapper.getByUserId(user1.getUserId());
teamUserInfoMapperByUserId1.setNormalUserNum(teamDataMap.get("resultTeamNormalNum"));
teamUserInfoMapperByUserId1.setSeedlingNum(teamDataMap.get("resultTeamSeedlingNum"));
teamUserInfoMapperByUserId1.setBronzeTreeNum(teamDataMap.get("resultTeamBronzeTreeNum"));
teamUserInfoMapperByUserId1.setSilverTreeNum(teamDataMap.get("resultTeamSilverTreeNum"));
teamUserInfoMapperByUserId1.setGoldTreeNum(teamDataMap.get("resultTeamGoldTreeNum"));
teamUserInfoMapperByUserId1.setFarmerNum(teamDataMap.get("resultTeamFarmerNum"));
teamUserInfoMapperByUserId1.setForestStartNum(teamDataMap.get("resultTeamForestStartNum"));
teamUserInfoMapperByUserId1.setPartnerNum(teamDataMap.get("resultTeamPartnerNum"));
teamUserInfoMapper.updateById(teamUserInfoMapperByUserId1);
teamData(teamDataMap, user1.getUserId());
}
}
} }
} }
/** //查询顶级用户
* 根据推荐人的id向下进行团队数据维护 public User highUser(String userId) {
* @param teamDataMap 团队数据 User byUserId = usersMapper.getByUserId(userId);
* @param userId 当前用户的id String beInvitedCode = byUserId.getBeInvitedCode();
*/ User userByInviteCode = null;
private void downWardDataPreserve(Map<String, Integer> teamDataMap, String userId) { while (!"1".equals(beInvitedCode) && !"88888888".equals(beInvitedCode)){
userByInviteCode = usersMapper.getUserByInviteCode(beInvitedCode);
TeamUserInfo teamUserInfoMapperByUserId = teamUserInfoMapper.getByUserId(userId); beInvitedCode = userByInviteCode.getBeInvitedCode();
teamUserInfoMapperByUserId.setNormalUserNum(teamDataMap.get("resultTeamNormalNum"));
teamUserInfoMapperByUserId.setSeedlingNum(teamDataMap.get("resultTeamSeedlingNum"));
teamUserInfoMapperByUserId.setBronzeTreeNum(teamDataMap.get("resultTeamBronzeTreeNum"));
teamUserInfoMapperByUserId.setSilverTreeNum(teamDataMap.get("resultTeamSilverTreeNum"));
teamUserInfoMapperByUserId.setGoldTreeNum(teamDataMap.get("resultTeamGoldTreeNum"));
teamUserInfoMapperByUserId.setFarmerNum(teamDataMap.get("resultTeamFarmerNum"));
teamUserInfoMapperByUserId.setForestStartNum(teamDataMap.get("resultTeamForestStartNum"));
teamUserInfoMapperByUserId.setPartnerNum(teamDataMap.get("resultTeamPartnerNum"));
//当前用户对象中获取当前用户的邀请码
User userByUserId = usersMapper.getByUserId(userId);
String inviteCode = userByUserId.getInviteCode();
//获取当前用户的所有下一级用户
List<User> listByIntvitedCode = usersMapper.getListByIntvitedCode(inviteCode);
//当前用户有下级用户
if (listByIntvitedCode.size() > 0){
for (User user : listByIntvitedCode) {
String downUserId = user.getUserId();
downWardDataPreserve(teamDataMap,downUserId);
}
}else {
//当前用户没有下级用户是退出
return;
} }
return userByInviteCode;
} }
} }
...@@ -68,7 +68,6 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper, User> impleme ...@@ -68,7 +68,6 @@ public class UserLevelServiceImpl extends ServiceImpl<UsersMapper, User> impleme
orderMapper.updateById(orderInfo); orderMapper.updateById(orderInfo);
} }
log.info("-------------------------用户升级结束--------------------------------------"); log.info("-------------------------用户升级结束--------------------------------------");
} }
@Override @Override
......
...@@ -4,6 +4,7 @@ import org.springframework.boot.SpringApplication; ...@@ -4,6 +4,7 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.web.servlet.MultipartAutoConfiguration; import org.springframework.boot.autoconfigure.web.servlet.MultipartAutoConfiguration;
import org.springframework.cache.annotation.EnableCaching; import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.EnableScheduling;
import springfox.documentation.swagger2.annotations.EnableSwagger2; import springfox.documentation.swagger2.annotations.EnableSwagger2;
...@@ -14,6 +15,7 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2; ...@@ -14,6 +15,7 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
@SpringBootApplication(exclude = {MultipartAutoConfiguration.class}) @SpringBootApplication(exclude = {MultipartAutoConfiguration.class})
@EnableSwagger2 @EnableSwagger2
@EnableScheduling @EnableScheduling
@Configuration
public class Application { public class Application {
public static void main(String[] args) { public static void main(String[] args) {
SpringApplication.run(Application.class, args); SpringApplication.run(Application.class, args);
......
package cn.wisenergy.web.config; package cn.wisenergy.web.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.multipart.MultipartResolver;
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
/** /**
* 文件上传配置 * 文件上传配置
* *
* @author wyy * @author wyy
* @date 2019-08-22 19:20 * @date 2019-08-22 19:20
*/ */
//@Configuration @Configuration
//public class FileUploadConfig { public class FileUploadConfig {
//
// /** /**
// * 重新定义文件上传对象【springBoot request转化成MultipartHttpServletRequest】 * 重新定义文件上传对象【springBoot request转化成MultipartHttpServletRequest】
// */ */
// @Bean(name = "multipartResolver") @Bean(name = "multipartResolver")
// public MultipartResolver multipartResolver() { public MultipartResolver multipartResolver() {
// CommonsMultipartResolver resolver = new CommonsMultipartResolver(); CommonsMultipartResolver resolver = new CommonsMultipartResolver();
// resolver.setDefaultEncoding("UTF-8"); resolver.setDefaultEncoding("UTF-8");
// resolver.setResolveLazily(true); resolver.setResolveLazily(true);
// resolver.setMaxInMemorySize(1024 * 1024 * 1024); resolver.setMaxInMemorySize(1024 * 1024 * 1024);
// resolver.setMaxUploadSize(1024 * 1024 * 1024); resolver.setMaxUploadSize(1024 * 1024 * 1024);
// resolver.setMaxUploadSizePerFile(1024 * 1024 * 1024); resolver.setMaxUploadSizePerFile(1024 * 1024 * 1024);
// return resolver; return resolver;
// } }
//
//} }
spring: spring:
main:
allow-bean-definition-overriding: true
# jackson时间格式化
jackson:
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
servlet:
multipart:
max-file-size: 1024MB
max-request-size: 2048MB
enabled: true
mvc:
throw-exception-if-no-handler-found: true
datasource: datasource:
type: com.alibaba.druid.pool.DruidDataSource type: com.alibaba.druid.pool.DruidDataSource
druid: druid:
......
spring: spring:
main:
allow-bean-definition-overriding: true
# jackson时间格式化
jackson:
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
servlet:
multipart:
max-file-size: 1024MB
max-request-size: 2048MB
enabled: true
datasource: datasource:
type: com.alibaba.druid.pool.DruidDataSource type: com.alibaba.druid.pool.DruidDataSource
druid: druid:
...@@ -32,6 +43,7 @@ spring: ...@@ -32,6 +43,7 @@ spring:
wall: wall:
config: config:
multi-statement-allow: true multi-statement-allow: true
#/www/server/redis/src/redis-server #/www/server/redis/src/redis-server
redis: redis:
open: false # 是否开启redis缓存 true开启 false关闭 open: false # 是否开启redis缓存 true开启 false关闭
......
...@@ -6,6 +6,8 @@ server: ...@@ -6,6 +6,8 @@ server:
min-spare: 30 min-spare: 30
max-swallow-size: 1024MB max-swallow-size: 1024MB
max-http-form-post-size: 1024MB max-http-form-post-size: 1024MB
# 1 073 741 824
port: 8997 port: 8997
servlet: servlet:
context-path: /shop-mall context-path: /shop-mall
...@@ -25,7 +27,6 @@ spring: ...@@ -25,7 +27,6 @@ spring:
max-file-size: 1024MB max-file-size: 1024MB
max-request-size: 2048MB max-request-size: 2048MB
enabled: true enabled: true
resolve-lazily: true
mvc: mvc:
throw-exception-if-no-handler-found: true throw-exception-if-no-handler-found: true
# resources: # resources:
......
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