Browse Source

新增修改店铺销量定时任务

codingliang 3 tháng trước cách đây
mục cha
commit
8ea2f3bdb0

+ 2 - 2
src/main/java/com/sqx/modules/order/dao/AppOrderDao.java

@@ -117,8 +117,8 @@ public interface AppOrderDao extends BaseMapper<TbOrder> {
     List<TbOrder> temp();
 
     /**
-     * 统计近近30天每个店铺的已完成的订单数量
+     * 统计每个店铺的已完成的订单数量
      * @return 店铺id-订单数量映射列表
      */
-    List<Map<String, Object>> countFinishByShopIdWithLast30Days();
+    List<Map<String, Object>> countFinishGroupByShopId();
 }

+ 1 - 1
src/main/java/com/sqx/modules/order/service/AppOrderService.java

@@ -211,7 +211,7 @@ public interface AppOrderService extends IService<TbOrder> {
       * 统计最近30天内每个店铺的订单完成数量
       * @return 店铺id-订单完成数量映射
       */
-    Map<Long, Integer> countFinishByShopIdWithLast30Days();
+    Map<Long, Integer> countFinishGroupByShopId();
 
     /**
      * 根据订单id查询订单信息,包含订单商品信息

+ 2 - 2
src/main/java/com/sqx/modules/order/service/impl/AppAppOrderServiceImpl.java

@@ -2985,9 +2985,9 @@ public class AppAppOrderServiceImpl extends ServiceImpl<AppOrderDao, TbOrder> im
     }
 
     @Override
-    public Map<Long, Integer> countFinishByShopIdWithLast30Days() {
+    public Map<Long, Integer> countFinishGroupByShopId() {
         // 统计近近30天每个店铺的已完成订单数量
-        List<Map<String, Object>> shopSalesList = baseMapper.countFinishByShopIdWithLast30Days();
+        List<Map<String, Object>> shopSalesList = baseMapper.countFinishGroupByShopId();
         // 转换为ShopId -> OrderCount的Map返回
         return shopSalesList.stream()
                 .filter(map -> map.containsKey("shop_id") && map.containsKey("order_count"))

+ 4 - 4
src/main/java/com/sqx/scheduler/order/OrderScheduler.java

@@ -308,10 +308,10 @@ public class OrderScheduler {
 
     /**
      * 更新店铺销量
-     *  每天1点、10点、13点、22点执行
+     *  每天1点、10点、15点、22点执行
      */
-    // @Async
-    // @Scheduled(cron = "0 0 1,10,13,22 * * ?")
+     @Async
+     @Scheduled(cron = "0 0 1,10,15,22 * * ?")
     public void updateShopSales() {
         RLock lock = null;
         try {
@@ -323,7 +323,7 @@ public class OrderScheduler {
                 return;
             }
             log.info("更新店铺销量任务开始运行");
-            Map<Long, Integer> shopSalesMap = orderService.countFinishByShopIdWithLast30Days();
+            Map<Long, Integer> shopSalesMap = orderService.countFinishGroupByShopId();
             goodsShopService.updateShopSales(shopSalesMap);
             log.info("更新店铺销量任务运行成功");
         } catch (Exception e) {

+ 1 - 1
src/main/resources/mapper/order/OrderMapper.xml

@@ -812,7 +812,7 @@
 
     </select>
 
-    <select id="countFinishByShopIdWithLast30Days" resultType="java.util.Map">
+    <select id="countFinishGroupByShopId" resultType="java.util.Map">
         SELECT
             shop_id,
             COUNT(*) AS order_count