From 195ad99c81b04d9314cb7bb191c1b1fb2eff1308 Mon Sep 17 00:00:00 2001 From: chenlin Date: Fri, 28 Feb 2025 16:46:48 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E6=96=B0=E5=A2=9E=E5=95=86=E5=9F=8E?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E6=A3=80=E6=B5=8B=E7=9A=84=E5=AE=9A=E6=97=B6?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=EF=BC=8C=E7=94=A8=E6=9D=A5=E6=8F=90=E9=86=92?= =?UTF-8?q?=E8=BF=90=E8=90=A5=E4=BA=BA=E5=91=98=E5=8F=91=E8=B4=A7=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/admin/models/mall.go | 41 ++++++++++++++++++++++++++++++++++++++++ cmd/api/server.go | 12 ++++++++++++ 2 files changed, 53 insertions(+) diff --git a/app/admin/models/mall.go b/app/admin/models/mall.go index 39e85d2..6ac5e10 100644 --- a/app/admin/models/mall.go +++ b/app/admin/models/mall.go @@ -1700,3 +1700,44 @@ GROUP BY b.goods_id return list } + +// CheckOnDeliverMall 检测有无待发货的订单,及时提醒运营同事 +func CheckOnDeliverMall() { + var orders []GoodsOrder + err := orm.Eloquent.Table("goods_order").Where("state = ?", GoodsOrderStateOnDeliver).Find(&orders).Error + if err != nil { + logger.Errorf("Failed to query orders: %v", err) + return + } + + if len(orders) == 0 { + logger.Info("No pending delivery orders.") + return + } + + // 获取需要通知的手机号列表 + var phoneNumbers = []string{"15019230751", "18025373706"} // 示例多个手机号 + + // 短信通知逻辑 + message := fmt.Sprintf("【明慧科技】温馨提示:小程序商城有%d个待发货订单,请及时处理。", len(orders)) + err = GtSendMessage(phoneNumbers, message) + status := 1 + if err != nil { + status = 2 + logger.Error(err.Error()) + } + + // 记录短信发送情况 + for _, phone := range phoneNumbers { + smsSend := &ExpireMemberSmsSend{ + Message: message, + SendTime: time.Now(), + Tel: phone, + Status: uint32(status), + } + err = orm.Eloquent.Create(&smsSend).Error + if err != nil { + logger.Errorf("Failed to create SMS record: ", err) + } + } +} diff --git a/cmd/api/server.go b/cmd/api/server.go index 06847f1..c08c9df 100644 --- a/cmd/api/server.go +++ b/cmd/api/server.go @@ -207,6 +207,18 @@ func run() error { fmt.Println("err:", err) } + // 检测小程序商城有无待发货订单 + err = s.Every(1).Day().At("09:00").Do(models.CheckOnDeliverMall) + if err != nil { + fmt.Println("err:", err) + } + + // 检测小程序商城有无待发货订单 + err = s.Every(1).Day().At("14:00").Do(models.CheckOnDeliverMall) + if err != nil { + fmt.Println("err:", err) + } + <-s.Start() }()