1、定时清理订单
This commit is contained in:
@ -26,6 +26,25 @@ type MemberRecharge struct {
|
|||||||
service.Service
|
service.Service
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (e MemberRecharge) CleanExpiredOrder() error {
|
||||||
|
expireTime := time.Now().Add(5 * time.Minute)
|
||||||
|
ctx := context.Background()
|
||||||
|
|
||||||
|
err := e.Orm.Transaction(func(tx *gorm.DB) error {
|
||||||
|
if err1 := tx.Model(&models.MemberRecharge{}).Where("expire_time <? and status =1", expireTime).Updates(map[string]interface{}{"status": 6, "updated_at": time.Now()}).Error; err1 != nil {
|
||||||
|
return err1
|
||||||
|
}
|
||||||
|
|
||||||
|
if err1 := receiveaddressmanager.CleanExpiredAmountLocks(ctx, redishelper.DefaultRedis.GetClient()); err1 != nil {
|
||||||
|
return err1
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
})
|
||||||
|
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
// 获取订单状态
|
// 获取订单状态
|
||||||
func (e MemberRecharge) GetOrderStatus(req *dto.MemberRechargeGetOrderStatusReq, userId int) (int, error) {
|
func (e MemberRecharge) GetOrderStatus(req *dto.MemberRechargeGetOrderStatusReq, userId int) (int, error) {
|
||||||
var data models.MemberRecharge
|
var data models.MemberRecharge
|
||||||
|
|||||||
@ -10,11 +10,12 @@ import (
|
|||||||
// 字典 key 可以配置到 自动任务 调用目标 中;
|
// 字典 key 可以配置到 自动任务 调用目标 中;
|
||||||
func InitJob() {
|
func InitJob() {
|
||||||
jobList = map[string]JobExec{
|
jobList = map[string]JobExec{
|
||||||
"ExamplesOne": ExamplesOne{},
|
"ExamplesOne": ExamplesOne{},
|
||||||
"TrxPaymentJob": TrxPaymentJob{},
|
"TrxPaymentJob": TrxPaymentJob{},
|
||||||
"CliProxyTrafficsJob": CliProxyJob{},
|
"CliProxyTrafficsJob": CliProxyJob{},
|
||||||
"RenewalJob": RenewalJob{},
|
"RenewalJob": RenewalJob{},
|
||||||
"ExpireProxyJob": ExpireProxyJob{},
|
"ExpireProxyJob": ExpireProxyJob{},
|
||||||
|
"CleanExpiredOrderJob": CleanExpiredOrderJob{},
|
||||||
// ...
|
// ...
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -26,3 +26,15 @@ func (j ExpireProxyJob) Exec(args interface{}) error {
|
|||||||
|
|
||||||
return memberRenewalService.ExpireProxy()
|
return memberRenewalService.ExpireProxy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type CleanExpiredOrderJob struct{}
|
||||||
|
|
||||||
|
// 清理过期订单
|
||||||
|
func (t CleanExpiredOrderJob) Exec(arg interface{}) error {
|
||||||
|
// expireTime := time.Now().Add(5 * time.Minute)
|
||||||
|
rechargeLogService := service.MemberRecharge{}
|
||||||
|
rechargeLogService.Orm = GetDb()
|
||||||
|
rechargeLogService.Log = logger.NewHelper(logger.DefaultLogger)
|
||||||
|
|
||||||
|
return rechargeLogService.CleanExpiredOrder()
|
||||||
|
}
|
||||||
|
|||||||
@ -67,3 +67,14 @@ func TestExpireJob(t *testing.T) {
|
|||||||
t.Error(err)
|
t.Error(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestCleanExpireProxy(t *testing.T) {
|
||||||
|
initSetting()
|
||||||
|
|
||||||
|
job := CleanExpiredOrderJob{}
|
||||||
|
|
||||||
|
err := job.Exec(nil)
|
||||||
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user