This commit is contained in:
Leo
2025-12-14 00:00:49 +08:00
parent 9a8c7b1039
commit 317ab03c7c
7 changed files with 111 additions and 25 deletions

View File

@@ -24,6 +24,7 @@ import com.ruoyi.common.utils.http.HttpUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
@@ -53,9 +54,20 @@ public class BatchPublishServiceImpl implements IBatchPublishService
@Autowired
private IJDOrderService jdOrderService;
// 京东接口配置
private final static String requestUrl = "http://192.168.8.88:6666/jd/";
@Value("${jarvis.server.jarvis-java.base-url:http://127.0.0.1:6666}")
private String jarvisJavaBaseUrl;
@Value("${jarvis.server.jarvis-java.jd-api-path:/jd}")
private String jdApiPath;
private final static String skey = "2192057370ef8140c201079969c956a3";
/**
* 获取JD接口请求URL
*/
private String getRequestUrl() {
return jarvisJavaBaseUrl + jdApiPath + "/";
}
@Autowired
private IOuterIdGeneratorService outerIdGeneratorService;
@@ -183,7 +195,7 @@ private String cleanForbiddenPhrases(String text) {
*/
private String generatePromotionContent(Map<String, String> requestBody) {
try {
String url = requestUrl + "generatePromotionContent";
String url = getRequestUrl() + "generatePromotionContent";
JSONObject param = new JSONObject();
param.put("skey", skey);
param.put("promotionContent", requestBody.get("promotionContent"));

View File

@@ -11,8 +11,10 @@ import org.slf4j.LoggerFactory;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import org.springframework.beans.factory.annotation.Value;
import javax.annotation.Resource;
import javax.annotation.PostConstruct;
import java.net.URLEncoder;
import java.util.Calendar;
import java.util.Date;
@@ -27,18 +29,31 @@ public class LogisticsServiceImpl implements ILogisticsService {
private static final String REDIS_WAYBILL_KEY_PREFIX = "logistics:waybill:order:";
private static final String REDIS_LOCK_KEY_PREFIX = "logistics:lock:order:";
private static final String EXTERNAL_API_URL = "http://192.168.8.88:5001/fetch_logistics?tracking_url=";
private static final String PUSH_URL = "https://wxts.van333.cn/wx/send/pdd";
private static final String PUSH_TOKEN = "super_token_b62190c26";
private static final String CONFIG_KEY_PREFIX = "logistics.push.touser.";
private static final long LOCK_EXPIRE_SECONDS = 300; // 锁过期时间5分钟防止死锁
@Value("${jarvis.server.logistics.base-url:http://127.0.0.1:5001}")
private String logisticsBaseUrl;
@Value("${jarvis.server.logistics.fetch-path:/fetch_logistics}")
private String logisticsFetchPath;
private String externalApiUrlTemplate;
@Resource
private StringRedisTemplate stringRedisTemplate;
@Resource
private ISysConfigService sysConfigService;
@PostConstruct
public void init() {
externalApiUrlTemplate = logisticsBaseUrl + logisticsFetchPath + "?tracking_url=";
logger.info("物流服务地址已初始化: {}", externalApiUrlTemplate);
}
@Override
public boolean isOrderProcessed(Long orderId) {
if (orderId == null) {
@@ -86,7 +101,7 @@ public class LogisticsServiceImpl implements ILogisticsService {
return false;
}
// 构建外部接口URL
String externalUrl = EXTERNAL_API_URL + URLEncoder.encode(logisticsLink, "UTF-8");
String externalUrl = externalApiUrlTemplate + URLEncoder.encode(logisticsLink, "UTF-8");
logger.info("调用外部接口获取物流信息 - 订单ID: {}, URL: {}", orderId, externalUrl);
// 在服务端执行HTTP请求

View File

@@ -9,6 +9,7 @@ import com.ruoyi.jarvis.service.ISocialMediaService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
@@ -29,8 +30,8 @@ public class SocialMediaServiceImpl implements ISocialMediaService
@Autowired(required = false)
private StringRedisTemplate redisTemplate;
// jarvis_java 服务地址
private final static String JARVIS_BASE_URL = "http://192.168.8.88:6666";
@Value("${jarvis.server.jarvis-java.base-url:http://127.0.0.1:6666}")
private String jarvisBaseUrl;
// Redis Key 前缀
private static final String REDIS_KEY_PREFIX = "social_media:prompt:";
@@ -66,7 +67,7 @@ public class SocialMediaServiceImpl implements ISocialMediaService
try {
// 调用 jarvis_java 的接口
String url = JARVIS_BASE_URL + "/jarvis/social-media/extract-keywords";
String url = jarvisBaseUrl + "/jarvis/social-media/extract-keywords";
JSONObject requestBody = new JSONObject();
requestBody.put("productName", productName);
@@ -125,7 +126,7 @@ public class SocialMediaServiceImpl implements ISocialMediaService
try {
// 调用 jarvis_java 的接口
String url = JARVIS_BASE_URL + "/jarvis/social-media/generate-content";
String url = jarvisBaseUrl + "/jarvis/social-media/generate-content";
JSONObject requestBody = new JSONObject();
requestBody.put("productName", productName);
if (originalPrice != null) {
@@ -196,7 +197,7 @@ public class SocialMediaServiceImpl implements ISocialMediaService
try {
// 调用 jarvis_java 的接口
String url = JARVIS_BASE_URL + "/jarvis/social-media/generate-complete";
String url = jarvisBaseUrl + "/jarvis/social-media/generate-complete";
JSONObject requestBody = new JSONObject();
if (StringUtils.isNotEmpty(productImageUrl)) {
requestBody.put("productImageUrl", productImageUrl);