优化启动程序时初始化数据的代码逻辑
This commit is contained in:
@ -260,7 +260,7 @@ func (r JobService) ExecJobById(id string) (err error) {
|
||||
|
||||
func (r JobService) InitJob() error {
|
||||
jobs, _ := r.jobRepository.FindByFunc(constant.FuncCheckAssetStatusJob)
|
||||
if jobs == nil {
|
||||
if len(jobs) == 0 {
|
||||
job := model.Job{
|
||||
ID: utils.UUID(),
|
||||
Name: "资产状态检测",
|
||||
|
31
pkg/service/num.go
Normal file
31
pkg/service/num.go
Normal file
@ -0,0 +1,31 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
|
||||
"next-terminal/server/model"
|
||||
"next-terminal/server/repository"
|
||||
)
|
||||
|
||||
type NumService struct {
|
||||
numRepository *repository.NumRepository
|
||||
}
|
||||
|
||||
func NewNumService(numRepository *repository.NumRepository) *NumService {
|
||||
return &NumService{numRepository: numRepository}
|
||||
}
|
||||
|
||||
func (r NumService) InitNums() error {
|
||||
nums, err := r.numRepository.FindAll()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(nums) == 0 {
|
||||
for i := 0; i <= 30; i++ {
|
||||
if err := r.numRepository.Create(&model.Num{I: strconv.Itoa(i)}); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
@ -15,18 +15,21 @@ func NewSessionService(sessionRepository *repository.SessionRepository) *Session
|
||||
return &SessionService{sessionRepository: sessionRepository}
|
||||
}
|
||||
|
||||
func (r SessionService) Fix() {
|
||||
sessions, _ := r.sessionRepository.FindByStatus(constant.Connected)
|
||||
if sessions == nil {
|
||||
return
|
||||
func (r SessionService) FixSessionState() error {
|
||||
sessions, err := r.sessionRepository.FindByStatus(constant.Connected)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for i := range sessions {
|
||||
session := model.Session{
|
||||
Status: constant.Disconnected,
|
||||
DisconnectedTime: utils.NowJsonTime(),
|
||||
if len(sessions) > 0 {
|
||||
for i := range sessions {
|
||||
session := model.Session{
|
||||
Status: constant.Disconnected,
|
||||
DisconnectedTime: utils.NowJsonTime(),
|
||||
}
|
||||
|
||||
_ = r.sessionRepository.UpdateById(&session, sessions[i].ID)
|
||||
}
|
||||
|
||||
_ = r.sessionRepository.UpdateById(&session, sessions[i].ID)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
@ -58,21 +58,23 @@ func (r UserService) InitUser() (err error) {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (r UserService) FixedOnlineState() error {
|
||||
func (r UserService) FixedUserOnlineState() error {
|
||||
// 修正用户登录状态
|
||||
onlineUsers, err := r.userRepository.FindOnlineUsers()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for i := range onlineUsers {
|
||||
logs, err := r.loginLogRepository.FindAliveLoginLogsByUserId(onlineUsers[i].ID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(logs) == 0 {
|
||||
if err := r.userRepository.UpdateOnline(onlineUsers[i].ID, false); err != nil {
|
||||
if len(onlineUsers) > 0 {
|
||||
for i := range onlineUsers {
|
||||
logs, err := r.loginLogRepository.FindAliveLoginLogsByUserId(onlineUsers[i].ID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(logs) == 0 {
|
||||
if err := r.userRepository.UpdateOnline(onlineUsers[i].ID, false); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
|
Reference in New Issue
Block a user