Files
zmkgC/task/demo.go
2025-07-07 20:11:59 +08:00

82 lines
2.3 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
* @desc:测试定时任务
* @company:云南省奇讯科技有限公司
* @Author: yixiaohu
* @Date: 2021/7/16 15:52
*/
package task
import (
"context"
"fmt"
"github.com/gogf/gf/v2/os/gtime"
"github.com/tiger1103/gfast/v3/internal/app/system/dao"
"github.com/tiger1103/gfast/v3/internal/app/system/model"
"github.com/tiger1103/gfast/v3/internal/app/system/model/do"
"github.com/tiger1103/gfast/v3/internal/app/system/service"
wxDao "github.com/tiger1103/gfast/v3/internal/app/wxApplet/dao"
"github.com/tiger1103/gfast/v3/third/thirdParty"
)
func Test1(ctx context.Context) {
fmt.Println("无参测试")
service.SysJobLog().Add(ctx, &do.SysJobLog{
TargetName: "test1",
CreatedAt: gtime.Now(),
Result: "无参测试运行成功",
})
}
func Test2(ctx context.Context) {
//1、获取到app用户表中项目id为60的且没有删除的所有用户
columns := dao.BusConstructionUser.Columns()
var listData []*model.DiSanFang
dao.BusConstructionUser.Ctx(ctx).As("a").
LeftJoin(wxDao.SysProjectTeamMember.Table()+" as b", "b.team_id = a.team_id and b.openid=a.openid").
Where("a."+columns.ProjectId, 60).
WhereNotNull("a." + columns.SfzNumber).
Fields("a.*,b.post_id").Scan(&listData)
//2、调用第三方接口
if listData != nil && len(listData) > 0 {
//处理得到数据
var rr []*thirdParty.RealUser
for _, datum := range listData {
//判断是否是班长
classManagerFlag := "0"
if datum.PostId == "10" {
classManagerFlag = "1"
}
rr = append(rr, &thirdParty.RealUser{
UserName: datum.UserName,
ClassManagerFlag: classManagerFlag,
Phone: datum.Phone,
Sex: datum.Sex,
CardType: "0",
CardNumber: datum.SfzNumber,
UserType: "0",
Nation: datum.SfzNation,
Birthday: datum.SfzBirth,
Address: datum.SfzSite,
CardStartTime: datum.SfzStart,
CardEndTime: datum.SfzEnd,
Pic: "http://xny.yj-3d.com:7363" + datum.PacePhoto,
})
}
//调用
batchSize := 10
total := len(rr)
for start := 0; start < total; start += batchSize {
end := start + batchSize
if end > total {
end = total
}
batch := rr[start:end]
err := thirdParty.SendRy(ctx, batch)
if err != nil {
fmt.Println("发送田东人员信息失败", err)
}
}
}
}