This commit is contained in:
雷欧(林平凡)
2025-06-11 17:40:56 +08:00
parent 4f97e84f18
commit efb9b41a57
3 changed files with 35 additions and 12 deletions

View File

@@ -2,6 +2,7 @@ package cn.van.business.repository;
import cn.van.business.model.jd.JDOrder;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;
import java.util.Date;
@@ -40,4 +41,8 @@ public interface JDOrderRepository extends JpaRepository<JDOrder, Long> {
// 并且按日期降序排序
List<JDOrder> findByAddressOrderByOrderTimeDesc(String address);
//select * from jd_order jo where jo.address like "%江苏%" or jo.remark like "%150%" or jo.order_id like "%320%" or jo.buyer like "兽"
@Query("select jo from JDOrder jo where jo.address like %?1% or jo.remark like %?1% or jo.orderId like %?1% or jo.buyer like %?1%")
List<JDOrder> searchOrder(String order);
}

View File

@@ -2078,7 +2078,7 @@ public class JDUtil {
return null; // 没有带日期或格式错误,返回 null
}
public void LD(String input, String fromWxid) {
public void manman(String input, String fromWxid) {
// 1⃣ 调用封装好的方法提取日期
LocalDate userDate = parseUserDateIfPresent(input);
@@ -2378,6 +2378,33 @@ public class JDUtil {
// 发送给微信
sendOrderToWxByOrderD(order.toString(), fromWxid);
}else if (input.startsWith("慢搜")) {
String order = input.replace("慢搜", "");
List<JDOrder> jdOrders = jdOrderRepository.searchOrder(order);
StringBuilder sb = new StringBuilder();
if (!jdOrders.isEmpty()) {
if (jdOrders.size() > 10){
sb.append("搜索结果过多请缩小搜索范围。只输出10条最新信息\n\r");
jdOrders = jdOrders.subList(0, 10);
}
for (JDOrder jdOrder : jdOrders) {
sb.append("单:").append(jdOrder.getOrderId()).append("\n")
.append("分销标记:").append(jdOrder.getDistributionMark()).append("\n")
.append("型号:").append(jdOrder.getModelNumber()).append("\n")
.append("链接:").append(jdOrder.getLink()).append("\n")
.append("下单付款:").append(jdOrder.getPaymentAmount()).append("\n")
.append("后返金额:").append(jdOrder.getRebateAmount()).append("\n")
.append("地址:").append(jdOrder.getAddress()).append("\n")
.append("物流链接:").append(jdOrder.getLogisticsLink()).append("\n")
.append("订单号:").append(jdOrder.getOrderId()).append("\n")
.append("下单人:").append(jdOrder.getBuyer()).append("\n")
.append("下单时间:").append(jdOrder.getOrderTime()).append("\n")
.append("备注:").append(jdOrder.getRemark()).append("\n");
}
}else {
sb.append("未找到匹配的订单。");
}
wxUtil.sendTextMessage(fromWxid, sb.toString(), 1, fromWxid, false);
}

View File

@@ -3,11 +3,7 @@ package cn.van.business.util;
import cn.van.business.enums.FromType;
import cn.van.business.model.wx.WxMessage;
import cn.van.business.repository.SettingRepository;
import cn.van.business.repository.WxMessageDataForChatRepository;
import cn.van.business.repository.WxUserRepository;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -15,11 +11,6 @@ import org.springframework.context.annotation.Lazy;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import static cn.van.business.util.WXUtil.*;
@@ -112,9 +103,9 @@ public class WxMessageConsumer {
}
// 录单群
if ((chatRoom_JD_Order.contains(fromWxid))){
if (msg.startsWith("") || msg.startsWith("慢单") || msg.startsWith("录单") || msg.startsWith("TF") || msg.startsWith("H")) {
if (msg.startsWith("") || msg.startsWith("慢单") || msg.startsWith("录单") || msg.startsWith("TF") || msg.startsWith("H") || msg.startsWith("慢搜")) {
//logger.info("录单");
jdUtils.LD(msg, fromWxid);
jdUtils.manman(msg, fromWxid);
return;
}
}