Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
Tankaikai
2024-12-31 16:29:53 +08:00
5 changed files with 44 additions and 36 deletions

View File

@@ -52,7 +52,3 @@ public class InviteAchievementServiceImpl extends ServiceImpl<InviteAchievementM
.ge(InviteAchievement::getCount, signCount));
}
}

View File

@@ -22,13 +22,16 @@ public class UserIntegralServiceImpl extends ServiceImpl<UserIntegralDao, UserIn
@Override
public UserIntegral selectById(Long id) {
UserIntegral userIntegral = baseMapper.selectOne(new LambdaQueryWrapper<UserIntegral>().eq(UserIntegral::getUserId, id));
if (userIntegral == null) {
userIntegral = new UserIntegral();
userIntegral.setUserId(id);
userIntegral.setIntegralNum(0);
userIntegralDao.insert(userIntegral);
}
// UserIntegral userIntegral = baseMapper.selectOne(new LambdaQueryWrapper<UserIntegral>().eq(UserIntegral::getUserId, id));
// if (userIntegral == null) {
// userIntegral = new UserIntegral();
// userIntegral.setUserId(id);
// userIntegral.setIntegralNum(0);
// userIntegralDao.insert(userIntegral);
// }
// return userIntegral;
UserIntegral userIntegral = new UserIntegral();
userIntegral.setUserId(id);
return userIntegral;
}

View File

@@ -7,6 +7,7 @@ import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sqx.common.utils.DateUtils;
import com.sqx.modules.app.entity.InviteAchievement;
import com.sqx.modules.app.entity.UserEntity;
@@ -40,11 +41,9 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CompletableFuture;
@Component
public class TempOrdersTask {
@@ -77,7 +76,6 @@ public class TempOrdersTask {
private String profiles;
private final InviteAchievementService inviteAchievementService;
private Logger logger = LoggerFactory.getLogger(getClass());
public TempOrdersTask(InviteAchievementService inviteAchievementService) {
@@ -101,7 +99,7 @@ public class TempOrdersTask {
for (Orders order : orders) {
ThreadUtil.sleep(100);
PayDetails payDetails = payDetailsDao.selectByOrderId(order.getOrdersNo());
PayDetails payDetails = payDetailsDao.selectOneByLimit(order.getOrdersNo());
if (payDetails == null) {
order.setStatus(3);
ordersDao.updateById(order);
@@ -150,27 +148,11 @@ public class TempOrdersTask {
order.setStatus(1);
order.setPayTime(DateUtils.format(new Date()));
UserEntity user = userService.selectUserById(order.getUserId());
UserEntity byUser = userService.queryByInvitationCode(user.getInviterCode());
Map<String, Object> map = inviteService.updateInvite(byUser, DateUtil.now(), user.getUserId(), order.getPayMoney());
Object oneUserId = map.get("oneUserId");
if (oneUserId != null) {
order.setOneUserId(Long.parseLong(String.valueOf(oneUserId)));
order.setOneMoney(new BigDecimal(String.valueOf(map.get("oneMoney"))));
}
Object twoUserId = map.get("twoUserId");
if (twoUserId != null) {
order.setTwoUserId(Long.parseLong(String.valueOf(twoUserId)));
order.setTwoMoney(new BigDecimal(String.valueOf(map.get("twoMoney"))));
}
Object sysUserId = map.get("sysUserId");
if (sysUserId != null) {
order.setSysUserId(Long.parseLong(String.valueOf(sysUserId)));
order.setQdMoney(new BigDecimal(String.valueOf(map.get("qdMoney"))));
}
ordersService.updateById(order);
ordersService.insertOrders(order);
UserEntity user = userService.selectUserById(order.getUserId());
UserEntity byUser = userService.queryByInvitationCode(user.getInviterCode());
if (byUser != null) {
InviteAchievement inviteAchievement = inviteAchievementService.getByUserId(user.getUserId());
if (inviteAchievement == null) {
@@ -185,10 +167,29 @@ public class TempOrdersTask {
inviteAchievementService.incrCount(inviteAchievement.getId(), 1);
}
}
ThreadUtil.execAsync(() -> {
ThreadUtil.sleep(1000);
activities(user, byUser);
});
ThreadUtil.execAsync(() -> {
inviteService.updateInvite(byUser, DateUtil.now(), user.getUserId(), order.getPayMoney());
});
//Map<String, Object> map = inviteService.updateInvite(byUser, DateUtil.now(), user.getUserId(), order.getPayMoney());
// Object oneUserId = map.get("oneUserId");
// if (oneUserId != null) {
// order.setOneUserId(Long.parseLong(String.valueOf(oneUserId)));
// order.setOneMoney(new BigDecimal(String.valueOf(map.get("oneMoney"))));
// }
// Object twoUserId = map.get("twoUserId");
// if (twoUserId != null) {
// order.setTwoUserId(Long.parseLong(String.valueOf(twoUserId)));
// order.setTwoMoney(new BigDecimal(String.valueOf(map.get("twoMoney"))));
// }
// Object sysUserId = map.get("sysUserId");
// if (sysUserId != null) {
// order.setSysUserId(Long.parseLong(String.valueOf(sysUserId)));
// order.setQdMoney(new BigDecimal(String.valueOf(map.get("qdMoney"))));
// }
}
@Transactional
@@ -200,6 +201,7 @@ public class TempOrdersTask {
InviteAchievement inviteAchievement = inviteAchievementService.getByUserId(user.getUserId());
// 首次达标
int signCount = Integer.parseInt(commonRepository.findOne(913).getValue());
logger.info("{}签到次数: {}", user.getUserName(), inviteAchievement.getCount());
if (inviteAchievement.getState() == 0 && inviteAchievement.getCount() >= signCount) {
//满3笔
String amount = commonRepository.findOne(912).getValue();
@@ -240,7 +242,7 @@ public class TempOrdersTask {
new LambdaQueryWrapper<InviteAchievement>()
.eq(InviteAchievement::getSourceUserId, sourceUser.getUserId())
.eq(InviteAchievement::getState, 1));
logger.info("邀请人员: {}", count);
//count 邀请的已达标人数
completAwardService.list(new QueryWrapper<CompletAward>().eq("invite_count", count).eq("status", 1)).forEach(completAward -> {
QueryWrapper<UserMoneyDetails> moneyDetailsQuery = new QueryWrapper<>();

View File

@@ -7,6 +7,7 @@ import com.sqx.modules.pay.entity.PayDetails;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
@@ -21,6 +22,8 @@ public interface PayDetailsDao extends BaseMapper<PayDetails> {
PayDetails selectByRemark(@Param("remark") String remark);
PayDetails selectByOrderId(@Param("orderId") String orderId);
PayDetails selectOneByLimit(@Param("orderId") String ordersNo);
PayDetails selectByTradeNo(@Param("tradeNo") String tradeNo);

View File

@@ -15,6 +15,10 @@
select * from pay_details d where d.order_id=#{orderId}
</select>
<select id="selectOneByLimit" resultType="com.sqx.modules.pay.entity.PayDetails">
select * from pay_details d where d.order_id=#{orderId} order by id desc limit 1
</select>
<select id="selectByTradeNo" resultType="com.sqx.modules.pay.entity.PayDetails">
select * from pay_details d where d.trade_no=#{tradeNo}
</select>