抢单账号配置

This commit is contained in:
2026-06-01 01:12:34 +08:00
parent aab61368bc
commit fb5f7dfd7d
11 changed files with 428 additions and 14 deletions

View File

@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.rj.dto.hxr.HxrAdminUserApiContext;
import com.rj.dto.hxr.HxrUserRow;
import com.rj.entity.LbDailyUserTrade;
import com.rj.entity.LbDailyUserTradeReport;
@@ -25,6 +26,7 @@ import com.rj.mapper.LbPurchaseApplyMapper;
import com.rj.mapper.LbUserMapper;
import com.rj.service.HxrAdminUserService;
import com.rj.service.ILbPurchaseApplyService;
import com.rj.service.ILbThirdIntegrationConfigService;
import jakarta.servlet.ServletOutputStream;
import jakarta.servlet.http.HttpServletResponse;
import lombok.extern.slf4j.Slf4j;
@@ -71,6 +73,9 @@ public class LbPurchaseApplyServiceImpl
@Autowired
private HxrAdminUserService hxrAdminUserService;
@Autowired
private ILbThirdIntegrationConfigService lbThirdIntegrationConfigService;
@Autowired
private LbUserMapper lbUserMapper;
@@ -907,6 +912,22 @@ public class LbPurchaseApplyServiceImpl
return result;
}
String tid = tenantId.trim();
Optional<HxrAdminUserApiContext> apiContextOpt =
lbThirdIntegrationConfigService.resolveAdminUserApiContext(tid);
if (apiContextOpt.isEmpty()) {
result.put("success", false);
result.put("message",
"未找到该租户的第三方集成配置,或配置未启用、URL/凭证不完整(请检查 lb_third_integration_config)");
result.put("totalRecords", userIds.size());
result.put("successCount", 0);
result.put("failCount", userIds.size());
result.put("details", List.of());
result.put("tenantId", tid);
return result;
}
HxrAdminUserApiContext apiContext = apiContextOpt.get();
List<Map<String, Object>> details = new ArrayList<>();
int ok = 0;
int fail = 0;
@@ -926,7 +947,8 @@ public class LbPurchaseApplyServiceImpl
try {
Integer maxOrderForApi = maxOrder == 0 ? null : maxOrder;
boolean updated =
hxrAdminUserService.updateUserVipFields(userId, maxOrderForApi, vipTimeStr, isVip);
hxrAdminUserService.updateUserVipFields(
userId, maxOrderForApi, vipTimeStr, isVip, apiContext);
if (updated) {
one.put("success", true);
one.put("message", "user/update 成功");
@@ -985,6 +1007,24 @@ public class LbPurchaseApplyServiceImpl
return result;
}
String tid = tenantId.trim();
Optional<HxrAdminUserApiContext> apiContextOpt =
lbThirdIntegrationConfigService.resolveAdminUserApiContext(tid);
if (apiContextOpt.isEmpty()) {
result.put("success", false);
result.put("message",
"未找到该租户的第三方集成配置,或配置未启用、URL/凭证不完整(请检查 lb_third_integration_config)");
result.put("totalRecords", rows.size());
result.put("successCount", 0);
result.put("failCount", rows.size());
result.put("details", List.of());
result.put("applyDateStart", applyDateStart);
result.put("applyDateEnd", applyDateEnd);
result.put("tenantId", tid);
return result;
}
HxrAdminUserApiContext apiContext = apiContextOpt.get();
Set<String> tradeMatchedNicknames = ctx.tradeMatchedNicknames();
List<Map<String, Object>> details = new ArrayList<>();
int ok = 0;
@@ -1010,7 +1050,7 @@ public class LbPurchaseApplyServiceImpl
String vipTimeStr = HxrAdminUserService.formatVipTime(vipTime);
one.put("viptime", vipTimeStr);
Optional<HxrUserRow> userOpt = hxrAdminUserService.fetchFirstUserByMobile(phone);
Optional<HxrUserRow> userOpt = hxrAdminUserService.fetchFirstUserByMobile(phone, apiContext);
if (userOpt.isEmpty()) {
one.put("success", false);
one.put("message", "user/select 无用户或接口失败");
@@ -1031,7 +1071,7 @@ public class LbPurchaseApplyServiceImpl
}
one.put("maxOrder", maxOrder);
boolean updated =
hxrAdminUserService.updateUserVipFields(hxrUserId, maxOrder, vipTimeStr);
hxrAdminUserService.updateUserVipFields(hxrUserId, maxOrder, vipTimeStr, 1, apiContext);
if (updated) {
one.put("success", true);
one.put("message", "user/update 成功");