mirror of
https://github.com/bufanyun/hotgo.git
synced 2025-12-27 10:36:00 +08:00
发布v2.8.4版本,更新内容请查看:https://github.com/bufanyun/hotgo/tree/v2.0/docs/guide-zh-CN/addon-version-upgrade.md
This commit is contained in:
@@ -1,117 +1,97 @@
|
||||
// Package tcpserver
|
||||
// @Link https://github.com/bufanyun/hotgo
|
||||
// @Copyright Copyright (c) 2023 HotGo CLI
|
||||
// @Author Ms <133814250@qq.com>
|
||||
// @License https://github.com/bufanyun/hotgo/blob/master/LICENSE
|
||||
package tcpserver
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/gogf/gf/v2/errors/gerror"
|
||||
"github.com/gogf/gf/v2/util/gconv"
|
||||
"hotgo/api/servmsg"
|
||||
"hotgo/internal/consts"
|
||||
"hotgo/internal/model/input/msgin"
|
||||
)
|
||||
|
||||
// CronDelete 删除任务
|
||||
func (s *sTCPServer) CronDelete(ctx context.Context, in *msgin.CronDelete) (err error) {
|
||||
clients := s.serv.GetGroupClients(consts.TCPClientGroupCron)
|
||||
func (s *sTCPServer) CronDelete(ctx context.Context, in *servmsg.CronDeleteReq) (err error) {
|
||||
clients := s.serv.GetGroupClients(consts.LicenseGroupCron)
|
||||
if len(clients) == 0 {
|
||||
err = gerror.New("没有在线的定时任务服务")
|
||||
return
|
||||
}
|
||||
|
||||
for _, client := range clients {
|
||||
res, err := s.serv.RpcRequest(ctx, client, in)
|
||||
if err != nil {
|
||||
return err
|
||||
var res servmsg.CronDeleteRes
|
||||
if err = s.serv.RequestScan(ctx, client, in, &res); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
var resp = new(msgin.ResponseCronDelete)
|
||||
if err = gconv.Scan(res, &resp); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = resp.GetError(); err != nil {
|
||||
return err
|
||||
if err = res.GetError(); err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
// CronEdit 编辑任务
|
||||
func (s *sTCPServer) CronEdit(ctx context.Context, in *msgin.CronEdit) (err error) {
|
||||
clients := s.serv.GetGroupClients(consts.TCPClientGroupCron)
|
||||
func (s *sTCPServer) CronEdit(ctx context.Context, in *servmsg.CronEditReq) (err error) {
|
||||
clients := s.serv.GetGroupClients(consts.LicenseGroupCron)
|
||||
if len(clients) == 0 {
|
||||
err = gerror.New("没有在线的定时任务服务")
|
||||
return
|
||||
}
|
||||
|
||||
for _, client := range clients {
|
||||
res, err := s.serv.RpcRequest(ctx, client, in)
|
||||
if err != nil {
|
||||
return err
|
||||
var res servmsg.CronEditRes
|
||||
if err = s.serv.RequestScan(ctx, client, in, &res); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
var resp = new(msgin.ResponseCronEdit)
|
||||
if err = gconv.Scan(res, &resp); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = resp.GetError(); err != nil {
|
||||
return err
|
||||
if err = res.GetError(); err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
// CronStatus 修改任务状态
|
||||
func (s *sTCPServer) CronStatus(ctx context.Context, in *msgin.CronStatus) (err error) {
|
||||
clients := s.serv.GetGroupClients(consts.TCPClientGroupCron)
|
||||
func (s *sTCPServer) CronStatus(ctx context.Context, in *servmsg.CronStatusReq) (err error) {
|
||||
clients := s.serv.GetGroupClients(consts.LicenseGroupCron)
|
||||
if len(clients) == 0 {
|
||||
err = gerror.New("没有在线的定时任务服务")
|
||||
return
|
||||
}
|
||||
|
||||
for _, client := range clients {
|
||||
res, err := s.serv.RpcRequest(ctx, client, in)
|
||||
if err != nil {
|
||||
return err
|
||||
var res servmsg.CronStatusRes
|
||||
if err = s.serv.RequestScan(ctx, client, in, &res); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
var resp = new(msgin.ResponseCronStatus)
|
||||
if err = gconv.Scan(res, &resp); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = resp.GetError(); err != nil {
|
||||
return err
|
||||
if err = res.GetError(); err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
// CronOnlineExec 执行一次任务
|
||||
func (s *sTCPServer) CronOnlineExec(ctx context.Context, in *msgin.CronOnlineExec) (err error) {
|
||||
clients := s.serv.GetGroupClients(consts.TCPClientGroupCron)
|
||||
func (s *sTCPServer) CronOnlineExec(ctx context.Context, in *servmsg.CronOnlineExecReq) (err error) {
|
||||
clients := s.serv.GetGroupClients(consts.LicenseGroupCron)
|
||||
if len(clients) == 0 {
|
||||
err = gerror.New("没有在线的定时任务服务")
|
||||
return
|
||||
}
|
||||
|
||||
for _, client := range clients {
|
||||
res, err := s.serv.RpcRequest(ctx, client, in)
|
||||
if err != nil {
|
||||
return err
|
||||
var res servmsg.CronOnlineExecRes
|
||||
if err = s.serv.RequestScan(ctx, client, in, &res); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
var resp = new(msgin.ResponseCronOnlineExec)
|
||||
if err = gconv.Scan(res, &resp); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = resp.GetError(); err != nil {
|
||||
return err
|
||||
if err = res.GetError(); err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user