mirror of
https://github.com/ProudMuBai/GoFilm.git
synced 2026-02-27 23:34:42 +08:00
collect failed manage
This commit is contained in:
71
server/logic/CollectLogic.go
Normal file
71
server/logic/CollectLogic.go
Normal file
@@ -0,0 +1,71 @@
|
||||
package logic
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"server/model/system"
|
||||
"server/plugin/spider"
|
||||
)
|
||||
|
||||
type CollectLogic struct {
|
||||
}
|
||||
|
||||
var CollectL *CollectLogic
|
||||
|
||||
// ------------------------------------------------------ 采集站点管理 ------------------------------------------------------
|
||||
|
||||
// GetFilmSourceList 获取采集站列表数据
|
||||
func (cl *CollectLogic) GetFilmSourceList() []system.FilmSource {
|
||||
// 返回当前已添加的采集站列表信息
|
||||
return system.GetCollectSourceList()
|
||||
}
|
||||
|
||||
// GetFilmSource 获取ID对应的采集源信息
|
||||
func (cl *CollectLogic) GetFilmSource(id string) *system.FilmSource {
|
||||
return system.FindCollectSourceById(id)
|
||||
}
|
||||
|
||||
// UpdateFilmSource 更新采集源信息
|
||||
func (cl *CollectLogic) UpdateFilmSource(s system.FilmSource) error {
|
||||
return system.UpdateCollectSource(s)
|
||||
}
|
||||
|
||||
// SaveFilmSource 保存采集源信息
|
||||
func (cl *CollectLogic) SaveFilmSource(s system.FilmSource) error {
|
||||
return system.AddCollectSource(s)
|
||||
}
|
||||
|
||||
// DelFilmSource 删除采集源信息
|
||||
func (cl *CollectLogic) DelFilmSource(id string) error {
|
||||
// 先查找是否存在对应ID的站点信息
|
||||
s := system.FindCollectSourceById(id)
|
||||
if s == nil {
|
||||
return errors.New("当前资源站信息不存在, 请勿重复操作")
|
||||
}
|
||||
// 如果是主站点则返回提示禁止直接删除
|
||||
if s.Grade == system.MasterCollect {
|
||||
return errors.New("主站点无法直接删除, 请先降级为附属站点再进行删除")
|
||||
}
|
||||
system.DelCollectResource(id)
|
||||
return nil
|
||||
}
|
||||
|
||||
// ------------------------------------------------------ 采集记录管理 ------------------------------------------------------
|
||||
|
||||
// GetRecordList 获取采集记录列表
|
||||
func (cl *CollectLogic) GetRecordList(params system.RecordRequestVo) []system.FailureRecord {
|
||||
return system.FailureRecordList(params)
|
||||
}
|
||||
|
||||
// CollectRecover 恢复采集
|
||||
func (cl *CollectLogic) CollectRecover(id int) error {
|
||||
// 通过ID获取完整的失败记录信息
|
||||
fr := system.FindRecordById(uint(id))
|
||||
// 如果获取失败记录信息为空, 则不进行后续操作
|
||||
if fr == nil {
|
||||
return errors.New("采集重试执行失败: 失败记录信息获取异常")
|
||||
}
|
||||
// 执行恢复采集, 恢复对应的采集数据
|
||||
go spider.SingleRecoverSpider(fr)
|
||||
|
||||
return nil
|
||||
}
|
||||
@@ -1,7 +1,6 @@
|
||||
package logic
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"server/model/system"
|
||||
)
|
||||
|
||||
@@ -10,42 +9,6 @@ type ManageLogic struct {
|
||||
|
||||
var ML *ManageLogic
|
||||
|
||||
// GetFilmSourceList 获取采集站列表数据
|
||||
func (ml *ManageLogic) GetFilmSourceList() []system.FilmSource {
|
||||
// 返回当前已添加的采集站列表信息
|
||||
return system.GetCollectSourceList()
|
||||
}
|
||||
|
||||
// GetFilmSource 获取ID对应的采集源信息
|
||||
func (ml *ManageLogic) GetFilmSource(id string) *system.FilmSource {
|
||||
return system.FindCollectSourceById(id)
|
||||
}
|
||||
|
||||
// UpdateFilmSource 更新采集源信息
|
||||
func (ml *ManageLogic) UpdateFilmSource(s system.FilmSource) error {
|
||||
return system.UpdateCollectSource(s)
|
||||
}
|
||||
|
||||
// SaveFilmSource 保存采集源信息
|
||||
func (ml *ManageLogic) SaveFilmSource(s system.FilmSource) error {
|
||||
return system.AddCollectSource(s)
|
||||
}
|
||||
|
||||
// DelFilmSource 删除采集源信息
|
||||
func (ml *ManageLogic) DelFilmSource(id string) error {
|
||||
// 先查找是否存在对应ID的站点信息
|
||||
s := system.FindCollectSourceById(id)
|
||||
if s == nil {
|
||||
return errors.New("当前资源站信息不存在, 请勿重复操作")
|
||||
}
|
||||
// 如果是主站点则返回提示禁止直接删除
|
||||
if s.Grade == system.MasterCollect {
|
||||
return errors.New("主站点无法直接删除, 请先降级为附属站点再进行删除")
|
||||
}
|
||||
system.DelCollectResource(id)
|
||||
return nil
|
||||
}
|
||||
|
||||
// GetSiteBasicConfig 获取网站基本配置信息
|
||||
func (ml *ManageLogic) GetSiteBasicConfig() system.BasicConfig {
|
||||
return system.GetSiteBasic()
|
||||
|
||||
Reference in New Issue
Block a user