1
This commit is contained in:
5
.idea/misc.xml
generated
5
.idea/misc.xml
generated
@@ -8,10 +8,7 @@
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8(202)" project-jdk-type="JavaSDK">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
<component name="ProjectType">
|
||||
<option name="id" value="jpab" />
|
||||
</component>
|
||||
</project>
|
||||
2
.idea/vcs.xml
generated
2
.idea/vcs.xml
generated
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||
<mapping directory="" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
1
pom.xml
1
pom.xml
@@ -103,6 +103,7 @@
|
||||
<plugin>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||
<version>${spring-boot.version}</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
@@ -13,6 +13,7 @@ public class ValidCodeConverter {
|
||||
private static final Map<Integer, String> codeDescriptions = new HashMap<>();
|
||||
|
||||
static {
|
||||
codeDescriptions.put(-100, "无变化");
|
||||
codeDescriptions.put(-1, "未知");
|
||||
codeDescriptions.put(2, "无效-拆单");
|
||||
codeDescriptions.put(3, "无效-取消");
|
||||
|
||||
@@ -209,7 +209,7 @@ public class JDUtils {
|
||||
/**
|
||||
* 菜单:
|
||||
* 今日统计
|
||||
* 昨天统计
|
||||
* 昨日统计
|
||||
* 最近七天统计
|
||||
* 最近一个月统计
|
||||
* 今天订单
|
||||
@@ -221,10 +221,10 @@ public class JDUtils {
|
||||
content = "菜单:京粉 +命令 \n 如: 京粉 今日统计\r";
|
||||
content += "今日统计\r";
|
||||
content += "昨天统计\r";
|
||||
content += "最近七天统计\r";
|
||||
content += "最近一个月统计\r";
|
||||
content += "今天订单\r";
|
||||
content += "昨天订单\r";
|
||||
content += "七日统计\r";
|
||||
content += "一个月统计\r";
|
||||
content += "今日订单\r";
|
||||
content += "昨日订单\r";
|
||||
content += "刷新三天\r";
|
||||
break;
|
||||
case "今日统计": {
|
||||
@@ -239,9 +239,11 @@ public class JDUtils {
|
||||
|
||||
break;
|
||||
}
|
||||
case "昨天统计": {
|
||||
case "昨日统计": {
|
||||
List<OrderRow> yesterdayOrders = filterOrdersByDate(orderRows, 1);
|
||||
content = "昨天统计:";
|
||||
List<OrderRow> todayOrders = filterOrdersByDate(orderRows, 0);
|
||||
yesterdayOrders.removeAll(todayOrders);
|
||||
content = "昨日统计:";
|
||||
content += "订单总数:" + yesterdayOrders.size() + "\r";
|
||||
content += "已付款:" + yesterdayOrders.stream().filter(orderRow -> orderRow.getValidCode() == 16).count() + "\r";
|
||||
content += "已取消:" + yesterdayOrders.stream().filter(orderRow -> orderRow.getValidCode() != 16).count() + "\r";
|
||||
@@ -249,25 +251,25 @@ public class JDUtils {
|
||||
|
||||
break;
|
||||
}
|
||||
case "最近七天统计":
|
||||
case "七日统计":
|
||||
List<OrderRow> last7DaysOrders = filterOrdersByDate(orderRows, 7);
|
||||
content = "最近七天统计:";
|
||||
content = "七日统计:";
|
||||
content += "订单总数:" + last7DaysOrders.size() + "\r";
|
||||
content += "已付款:" + last7DaysOrders.stream().filter(orderRow -> orderRow.getValidCode() == 16).count() + "\r";
|
||||
content += "已取消:" + last7DaysOrders.stream().filter(orderRow -> orderRow.getValidCode() != 16).count() + "\r";
|
||||
content += "佣金总计:" + last7DaysOrders.stream().filter(orderRow -> orderRow.getValidCode() == 16).mapToDouble(OrderRow::getEstimateFee).sum();
|
||||
|
||||
break;
|
||||
case "最近一个月统计":
|
||||
case "一个月统计":
|
||||
List<OrderRow> last30DaysOrders = filterOrdersByDate(orderRows, 30);
|
||||
content = "最近一个月统计:";
|
||||
content = "一个月统计:";
|
||||
content += "订单总数:" + last30DaysOrders.size() + "\r";
|
||||
content += "已付款:" + last30DaysOrders.stream().filter(orderRow -> orderRow.getValidCode() == 16).count() + "\r";
|
||||
content += "已取消:" + last30DaysOrders.stream().filter(orderRow -> orderRow.getValidCode() != 16).count() + "\r";
|
||||
content += "佣金总计:" + last30DaysOrders.stream().filter(orderRow -> orderRow.getValidCode() == 16).mapToDouble(OrderRow::getEstimateFee).sum();
|
||||
|
||||
break;
|
||||
case "今天订单": {
|
||||
case "今日订单": {
|
||||
List<OrderRow> todayOrders = filterOrdersByDate(orderRows, 0);
|
||||
// 订单总数,已付款,已取消,佣金总计
|
||||
content = "今日统计:";
|
||||
@@ -283,9 +285,9 @@ public class JDUtils {
|
||||
|
||||
break;
|
||||
}
|
||||
case "昨天订单": {
|
||||
case "昨日订单": {
|
||||
List<OrderRow> yesterdayOrders = filterOrdersByDate(orderRows, 1);
|
||||
content = "昨天统计:";
|
||||
content = "昨日统计:";
|
||||
content += "订单总数:" + yesterdayOrders.size() + "\r";
|
||||
content += "已付款:" + yesterdayOrders.stream().filter(orderRow -> orderRow.getValidCode() == 16).count() + "\r";
|
||||
content += "已取消:" + yesterdayOrders.stream().filter(orderRow -> orderRow.getValidCode() != 16).count() + "\r";
|
||||
@@ -328,6 +330,13 @@ public class JDUtils {
|
||||
}
|
||||
content = "刷新三天成功,耗时" + (System.currentTimeMillis() - start) / 1000 + "秒\r" + "刷新订单数:" + count;
|
||||
}
|
||||
case "刷新两个月": {
|
||||
long start = System.currentTimeMillis();
|
||||
|
||||
fetchHistoricalOrders();
|
||||
content = "刷新两个月,耗时" + (System.currentTimeMillis() - start) / 1000 + "秒\r";
|
||||
|
||||
}
|
||||
}
|
||||
if (content != null) {
|
||||
wxUtil.sendTextMessage(WXUtil.super_admin_wxid, content, 1, WXUtil.super_admin_wxid);
|
||||
@@ -350,7 +359,7 @@ public class JDUtils {
|
||||
if (isAutoFlush && lastValidCode.equals(newValidCode)) {
|
||||
} else {
|
||||
String content;
|
||||
content = getFormattedOrderInfo(orderRow);
|
||||
content = getFormattedOrderInfo(orderRow, Util.isEmpty(oldValidCode) ? -100 : Integer.parseInt(oldValidCode));
|
||||
|
||||
// 推送
|
||||
wxUtil.sendTextMessage(WXUtil.super_admin_wxid, content, 1, WXUtil.super_admin_wxid);
|
||||
@@ -363,7 +372,7 @@ public class JDUtils {
|
||||
|
||||
}
|
||||
|
||||
public String getFormattedOrderInfo(OrderRow orderRow) {
|
||||
public String getFormattedOrderInfo(OrderRow orderRow, Integer oldValidCode) {
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
ValidCodeConverter converter = new ValidCodeConverter();
|
||||
String orderInfo =
|
||||
@@ -380,9 +389,14 @@ public class JDUtils {
|
||||
+ "实际计算佣金的金额:" + orderRow.getActualCosPrice() + "\r"
|
||||
+ "下单时间:" + formatter.format(orderRow.getOrderTime()) + "\r"
|
||||
+ "完成时间:" + (orderRow.getFinishTime() != null ? formatter.format(orderRow.getFinishTime()) : "未完成") + "\r\n"
|
||||
+ "订单状态:" + (converter.getCodeDescription(orderRow.getValidCode())) + "\r";
|
||||
+ "最新订单状态:" + (converter.getCodeDescription(orderRow.getValidCode())) + "\r";
|
||||
if (oldValidCode != -100) {
|
||||
orderInfo = "订单状态从 :" + (converter.getCodeDescription(oldValidCode)) + " --变成-- " +
|
||||
(converter.getCodeDescription(orderRow.getValidCode())) + "\r" + orderInfo;
|
||||
}
|
||||
|
||||
return orderInfo + "祝 财源滚滚";
|
||||
|
||||
return orderInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -496,12 +510,12 @@ public class JDUtils {
|
||||
LocalDateTime startDate = LocalDateTime.now().minusMonths(2).truncatedTo(ChronoUnit.HOURS);
|
||||
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
LocalDateTime lastHour = now.minusHours(1).withMinute(0).withSecond(0).withNano(0);
|
||||
LocalDateTime lastHour = now.truncatedTo(ChronoUnit.HOURS);
|
||||
|
||||
|
||||
while (!startDate.isEqual(lastHour)) {
|
||||
startDate = startDate.plusHours(1);
|
||||
UnionOpenOrderRowQueryResponse response = fetchOrdersForDateTime(startDate, false); // 假的代表历史订单
|
||||
|
||||
if (response != null) {
|
||||
int code = response.getQueryResult().getCode();
|
||||
if (code == 200) {
|
||||
@@ -520,7 +534,7 @@ public class JDUtils {
|
||||
}
|
||||
}
|
||||
}
|
||||
startDate = startDate.plusHours(1);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,6 +11,13 @@ spring:
|
||||
url: jdbc:mysql://134.175.126.60:33306/jd?characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8
|
||||
username: root
|
||||
password: mysql_7sjTXH
|
||||
hikari:
|
||||
maximum-pool-size: 200 # 最大连接数
|
||||
minimum-idle: 5 # 最小空闲连接数
|
||||
idle-timeout: 30000 # 空闲连接超时时间(毫秒)
|
||||
max-lifetime: 2000000 # 最大生命周期(毫秒)
|
||||
connection-timeout: 30000 # 连接超时时间(毫秒)
|
||||
pool-name: SpringBootHikariCP # 连接池名字
|
||||
#redis配置
|
||||
redis:
|
||||
host: 134.175.126.60
|
||||
@@ -19,7 +26,7 @@ spring:
|
||||
timeout: 1800000
|
||||
lettuce:
|
||||
pool:
|
||||
max-active: 20
|
||||
max-active: 200
|
||||
#最大阻塞等待时间(负数表示没限制)
|
||||
max-wait: -1
|
||||
max-idle: 5
|
||||
|
||||
Reference in New Issue
Block a user