From 1691d8ee8fe10799d98b296625fd30183407ef25 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 28 六月 2024 12:17:22 +0800
Subject: [PATCH] 新增操作类型增加基础操作类型和仓库id来支持库存盘点
---
task/tasklist.go | 38 +++++++++++++++++++++++++++++++++-----
1 files changed, 33 insertions(+), 5 deletions(-)
diff --git a/task/tasklist.go b/task/tasklist.go
index d2063b0..ec6298b 100644
--- a/task/tasklist.go
+++ b/task/tasklist.go
@@ -3,15 +3,43 @@
import (
"github.com/go-co-op/gocron"
"time"
+ "wms/pkg/logx"
+ "wms/service"
)
-var s *gocron.Scheduler
+var dynamicScheduler *gocron.Scheduler
func init() {
- s = gocron.NewScheduler(time.UTC)
+ dynamicScheduler = gocron.NewScheduler(time.Local)
}
-func Init() {
- s.Every(1).Month().Do(MonthStats) //姣忔湀鍒濇墽琛屼竴娆�
+func Init() error {
+ return StartDynamicTask()
+}
- s.StartAsync()
+func StartDynamicTask() (err error) {
+ sysCfgService := service.NewSystemConfigService()
+ day, timeStr, err := sysCfgService.GetInventoryCutOffPoint()
+ if err != nil {
+ return
+ }
+ if day != 0 && timeStr != "" {
+ _, err = dynamicScheduler.Every(1).Month(day).At(timeStr).Do(MonthStats) //姣忔湀鍒濇墽琛屼竴娆�
+ if err != nil {
+ logx.Errorf("init task err:%v", err)
+ return err
+ }
+ }
+ if dynamicScheduler.Len() == 0 {
+ return
+ }
+ dynamicScheduler.StartAsync()
+ return nil
+}
+
+func RestartDynamicTask() error {
+ if dynamicScheduler != nil {
+ dynamicScheduler.Stop()
+ dynamicScheduler.Clear()
+ }
+ return StartDynamicTask()
}
--
Gitblit v1.8.0