Merge remote-tracking branch '群晖/master'

# Conflicts:
#	src/main/java/cn/van/business/util/JDUtil.java
This commit is contained in:
雷欧(林平凡)
2025-03-25 14:54:07 +08:00

View File

@@ -677,9 +677,12 @@ private void handleGiftMoneyFlow(String fromWxid, String message, UserInteractio
}
try {
String skuId = "";
double amount = 0.0;
String owner = "自营";
switch (state.getCurrentStep()) {
case STEP_PRODUCT_LINK:
String skuId = parseSkuFromUrl(message);
skuId = parseSkuFromUrl(message);
logger.debug("用户 {} 输入商品链接:{}, 解析出SKU: {}", fromWxid, message, skuId); // 新增
if (skuId == null) {
wxUtil.sendTextMessage(fromWxid, "❌ 商品链接格式错误,请重新输入", 1, fromWxid);
@@ -693,18 +696,13 @@ private void handleGiftMoneyFlow(String fromWxid, String message, UserInteractio
// return;
//}
//BigFieldGoodsResp productInfo = queryResult.getData()[0];
//String owner = productInfo.getOwner();
//state.getCollectedFields().put("skuId", skuId);
//state.getCollectedFields().put("productInfo", productInfo.getBaseBigFieldInfo().getWdis());
//state.getCollectedFields().put("owner", owner);
//
//logger.debug("商品信息已收集SKU={}, Owner={}, WDIS={}", skuId, owner, productInfo.getBaseBigFieldInfo().getWdis()); // 新增
// 这两行临时代码
String productInfo = skuId;
String owner = "自营";
BigFieldGoodsResp productInfo = queryResult.getData()[0];
owner = productInfo.getOwner();
state.getCollectedFields().put("skuId", skuId);
state.getCollectedFields().put("productInfo", productInfo.getBaseBigFieldInfo().getWdis());
state.getCollectedFields().put("owner", owner);
logger.debug("商品信息已收集SKU={}, Owner={}, WDIS={}", skuId, owner, productInfo.getBaseBigFieldInfo().getWdis()); // 新增
state.setCurrentStep(STEP_AMOUNT);
String prompt = String.format("商品信息:\n%s请输入开通金额",
productInfo);
@@ -718,7 +716,7 @@ private void handleGiftMoneyFlow(String fromWxid, String message, UserInteractio
return;
}
double amount = Double.parseDouble(message);
amount = Double.parseDouble(message);
logger.debug("校验金额:{} 元商品价格的80%{}", amount, 0.8 * Double.parseDouble(state.getCollectedFields().get("price"))); // 新增
if (amount < 1 || amount > 0.8 * Double.parseDouble(state.getCollectedFields().get("price"))) {
wxUtil.sendTextMessage(fromWxid, "❌ 金额需≥1元且≤商品价格的80%", 1, fromWxid);