@@ -320,9 +320,10 @@ public class JDUtil {
OrderFetchStrategy strategy = new Days3090Strategy ( ) ;
for ( WXUtil . SuperAdmin admin : super_admins . values ( ) ) {
try {
fetchOrders ( strategy , admin . getAppKey ( ) , admin . getSecretKey ( ) ) ;
int count = fetchOrders ( strategy , admin . getAppKey ( ) , admin . getSecretKey ( ) ) ;
logger . info ( " 账号{} 3090订单拉取完成, 新增{}条 " , admin . getAppKey ( ) . substring ( 18 ) , count ) ;
} catch ( Exception e ) {
logger . error ( " 账号{}拉取异常: {} " , admin . getAppKey ( ) . substring ( 18 ) , e . getMessage ( ) ) ;
logger . error ( " 账号 {} 拉取异常: {} " , admin . getAppKey ( ) . substring ( 18 ) , e . getMessage ( ) ) ;
}
}
} catch ( Exception ex ) {
@@ -343,9 +344,10 @@ public class JDUtil {
OrderFetchStrategy strategy = new Days1430Strategy ( ) ; // 需补充Days1430Strategy实现
for ( WXUtil . SuperAdmin admin : super_admins . values ( ) ) {
try {
fetchOrders ( strategy , admin . getAppKey ( ) , admin . getSecretKey ( ) ) ;
int count = fetchOrders ( strategy , admin . getAppKey ( ) , admin . getSecretKey ( ) ) ;
logger . info ( " 账号{} 1430订单拉取完成, 新增{}条 " , admin . getAppKey ( ) . substring ( 18 ) , count ) ;
} catch ( Exception e ) {
logger . error ( " 账号{}拉取异常: {} " , admin . getAppKey ( ) . substring ( 18 ) , e . getMessage ( ) ) ;
logger . error ( " 账号 {} 拉取异常: {} " , admin . getAppKey ( ) . substring ( 18 ) , e . getMessage ( ) ) ;
}
}
} catch ( Exception ex ) {
@@ -366,9 +368,11 @@ public class JDUtil {
super_admins . values ( ) . parallelStream ( ) . forEach ( admin - > {
if ( Util . isAnyEmpty ( admin . getAppKey ( ) , admin . getSecretKey ( ) ) ) return ;
try {
fetchOrders ( strategy , admin . getAppKey ( ) , admin . getSecretKey ( ) ) ;
int count = fetchOrders ( strategy , admin . getAppKey ( ) , admin . getSecretKey ( ) ) ;
logger . info ( " 账号{} 0714订单拉取完成, 新增{}条 " , admin . getAppKey ( ) . substring ( 18 ) , count ) ;
} catch ( Exception e ) {
logger . error ( " 账号{}0714拉取异常: {} " , admin . getAppKey ( ) . substring ( 18 ) , e . getMessage ( ) ) ;
logger . error ( " 账号 {} 0714拉取异常: {} " , admin . getAppKey ( ) . substring ( 18 ) , e . getMessage ( ) ) ;
}
} ) ;
} catch ( Exception ex ) {
@@ -528,6 +532,7 @@ public class JDUtil {
// 订单总数,已付款,已取消,佣金总计
content . append ( " 今日统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( todayOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( todayOrders . size ( ) - todayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( todayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( todayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( todayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -544,6 +549,8 @@ public class JDUtil {
List < OrderRow > yesterdayOrders = filterOrdersByDate ( orderRows , 1 ) ;
content . append ( " 昨日统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( yesterdayOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( yesterdayOrders . size ( ) - yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -560,6 +567,8 @@ public class JDUtil {
List < OrderRow > last3DaysOrders = filterOrdersByDate ( orderRows , 3 ) ;
content . append ( " 三日统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( last3DaysOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( last3DaysOrders . size ( ) - last3DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( last3DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( last3DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( last3DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -576,6 +585,7 @@ public class JDUtil {
List < OrderRow > last7DaysOrders = filterOrdersByDate ( orderRows , 7 ) ;
content . append ( " 七日统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( last7DaysOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( last7DaysOrders . size ( ) - last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -592,6 +602,8 @@ public class JDUtil {
List < OrderRow > last30DaysOrders = filterOrdersByDate ( orderRows , 30 ) ;
content . append ( " 一个月统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( last30DaysOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( last30DaysOrders . size ( ) - last30DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( last30DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( last30DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( last30DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -609,6 +621,8 @@ public class JDUtil {
List < OrderRow > last60DaysOrders = filterOrdersByDate ( orderRows , 60 ) ;
content . append ( " 两个月统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( last60DaysOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( last60DaysOrders . size ( ) - last60DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( last60DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( last60DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( last60DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -625,6 +639,8 @@ public class JDUtil {
content = new StringBuilder ( ) ;
List < OrderRow > last90DaysOrders = filterOrdersByDate ( orderRows , 90 ) ;
content . append ( " 订单总数: " ) . append ( last90DaysOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( last90DaysOrders . size ( ) - last90DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( last90DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( last90DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( last90DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -645,6 +661,8 @@ public class JDUtil {
content . append ( " 本月统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( thisMonthOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( thisMonthOrders . size ( ) - thisMonthOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( thisMonthOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( thisMonthOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( thisMonthOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -668,6 +686,8 @@ public class JDUtil {
content . append ( " 上个月统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( lastMonthOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( lastMonthOrders . size ( ) - lastMonthOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( lastMonthOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( lastMonthOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( lastMonthOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -687,6 +707,8 @@ public class JDUtil {
content = new StringBuilder ( ) ;
content . append ( " 总统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( orderRows . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( orderRows . size ( ) - orderRows . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( orderRows . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( orderRows . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( orderRows . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -707,6 +729,8 @@ public class JDUtil {
// 订单总数,已付款,已取消,佣金总计
content . append ( " 今日统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( todayOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( todayOrders . size ( ) - todayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( todayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( todayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( todayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -716,7 +740,7 @@ public class JDUtil {
content . append ( " \ r " + " 违规佣金: " ) . append ( getStreamForWeiGui ( todayOrders ) . mapToDouble ( orderRow - > orderRow . getEstimateCosPrice ( ) * orderRow . getCommissionRate ( ) * 0 . 01 ) . sum ( ) ) ;
if ( ! todayOrders . isEmpty ( ) ) {
if ( ! todayOrders . isEmpty ( ) ) {
orderUtil . orderToWxBatch ( todayOrders ) ;
}
@@ -731,6 +755,8 @@ public class JDUtil {
yesterdayOrders . removeAll ( todayOrders ) ;
content . append ( " 昨日统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( yesterdayOrders . size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消): " ) . append ( yesterdayOrders . size ( ) - yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款: " ) . append ( yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
@@ -739,7 +765,7 @@ public class JDUtil {
content . append ( " 已完成佣金: " ) . append ( yesterdayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . mapToDouble ( OrderRow : : getEstimateFee ) . sum ( ) ) ;
content . append ( " \ r " + " 违规佣金: " ) . append ( getStreamForWeiGui ( yesterdayOrders ) . mapToDouble ( orderRow - > orderRow . getEstimateCosPrice ( ) * orderRow . getCommissionRate ( ) * 0 . 01 ) . sum ( ) ) ;
if ( ! yesterdayOrders . isEmpty ( ) ) {
if ( ! yesterdayOrders . isEmpty ( ) ) {
orderUtil . orderToWxBatch ( todayOrders ) ;
}
@@ -748,21 +774,24 @@ public class JDUtil {
}
case " 七日订单 " : {
content = new StringBuilder ( ) ;
List < OrderRow > sevend ayOrders = filterOrdersByDate ( orderRows , 1 ) ;
List < OrderRow > last7D ays Orders = filterOrdersByDate ( orderRows , 1 ) ;
List < OrderRow > todayOrders = filterOrdersByDate ( orderRows , 0 ) ;
sevend ayOrders. removeAll ( todayOrders ) ;
last7D ays Orders. removeAll ( todayOrders ) ;
content . append ( " 七日统计: \ n " ) ;
content . append ( " 订单总数: " ) . append ( sevend ayOrders. size ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款 : " ) . append ( sevend ayOrders. stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( sevendayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( sevendayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 违规: " ) . append ( getStreamForWeiGui ( sevendayOrders ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款佣金: " ) . append ( sevendayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . mapToDouble ( OrderRow : : getEstimateFee ) . sum ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成佣金: " ) . append ( sevendayOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . mapToDouble ( OrderRow : : getEstimateFee ) . sum ( ) ) ;
content . append ( " \ r " + " 违规佣金: " ) . append ( getStreamForWeiGui ( sevendayOrders ) . mapToDouble ( orderRow - > orderRow . getEstimateCosPrice ( ) * orderRow . getCommissionRate ( ) * 0 . 01 ) . sum ( ) ) ;
content . append ( " 订单总数: " ) . append ( last7D ays Orders. size ( ) ) . append ( " \ r " ) ;
content . append ( " 订单总数(不含取消) : " ) . append ( last7DaysOrders . size ( ) - last7D ays Orders. stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
if ( ! sevendayOrders . isEmpty ( ) ) {
orderUtil . orderToWxBatch ( sevendayOrders ) ;
content . append ( " 已付款: " ) . append ( last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已取消: " ) . append ( last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) ! = 16 & & orderRow . getValidCode ( ) ! = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成: " ) . append ( last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 违规: " ) . append ( getStreamForWeiGui ( last7DaysOrders ) . count ( ) ) . append ( " \ r " ) ;
content . append ( " 已付款佣金: " ) . append ( last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 16 ) . mapToDouble ( OrderRow : : getEstimateFee ) . sum ( ) ) . append ( " \ r " ) ;
content . append ( " 已完成佣金: " ) . append ( last7DaysOrders . stream ( ) . filter ( orderRow - > orderRow . getValidCode ( ) = = 17 ) . mapToDouble ( OrderRow : : getEstimateFee ) . sum ( ) ) ;
content . append ( " \ r " + " 违规佣金: " ) . append ( getStreamForWeiGui ( last7DaysOrders ) . mapToDouble ( orderRow - > orderRow . getEstimateCosPrice ( ) * orderRow . getCommissionRate ( ) * 0 . 01 ) . sum ( ) ) ;
if ( ! last7DaysOrders . isEmpty ( ) ) {
orderUtil . orderToWxBatch ( last7DaysOrders ) ;
}
contents . add ( content ) ;
@@ -1178,7 +1207,7 @@ public class JDUtil {
// 新增礼金流程处理方法
private void handleGiftMoneyFlow ( String fromWxid , String message , UserInteractionState state ) {
if ( " 京 礼金" . equals ( message ) ) {
if ( " 礼金 " . equals ( message ) ) {
state . reset ( ) ; // 重置流程
wxUtil . sendTextMessage ( fromWxid , " 流程已重置,请重新开始 " , 1 , fromWxid ) ;
return ;
@@ -1375,7 +1404,6 @@ public class JDUtil {
STEP_CASHBACK_TRACK
}
private GiftMoneyStep currentStep ; // 新增当前步骤字段
private String lastInteractionTime ;
private ProcessState currentState ;
private Map < String , String > collectedFields ; // 用于存储收集到的字段值
@@ -1402,23 +1430,15 @@ public class JDUtil {
updateLastInteractionTime ( ) ;
}
}
// 增强京东链接解析的正则表达式
private String parseSkuFromUrl ( String url ) {
Pattern pattern = Pattern . compile ( " /( \\ d+)( \\ .html| \\ ?) " ) ; // 支持更多链接格式
Matcher matcher = pattern . matcher ( url ) ;
return matcher . find ( ) ? matcher . group ( 1 ) : null ;
}
// 改进金额验证提示
private boolean isValidAmount ( String input ) {
String fromWxid = " " ;
if ( ! input . matches ( " ^ \\ d+( \\ . \\ d{1,2})?$ " ) ) {
wxUtil . sendTextMessage ( fromWxid , " 金额格式错误,请输入数字(可包含两位小数) \ n示例: 50 或 29.9 " , 1 , fromWxid ) ;
return false ;
// 推荐使用枚举管理状态
public enum ProcessState {
INIT , GIFT_MONEY_FLOW , DISINFECTANT_CABINET
}
return true ;
public enum GiftMoneyStep {
STEP_PRODUCT_LINK , STEP_AMOUNT , STEP_QUANTITY
}
}
// 限流异常类(需自定义)