mirror of
https://github.com/simon-ding/polaris.git
synced 2026-06-01 15:37:50 +08:00
feat: add upload progress and fix panic
This commit is contained in:
@@ -17,8 +17,9 @@ import (
|
||||
|
||||
type Activity struct {
|
||||
*ent.History
|
||||
Progress int `json:"progress"`
|
||||
SeedRatio float64 `json:"seed_ratio"`
|
||||
Progress int `json:"progress"`
|
||||
SeedRatio float64 `json:"seed_ratio"`
|
||||
UploadProgress float64 `json:"upload_progress"`
|
||||
}
|
||||
|
||||
func (s *Server) GetAllActivities(c *gin.Context) (interface{}, error) {
|
||||
@@ -44,6 +45,9 @@ func (s *Server) GetAllActivities(c *gin.Context) (interface{}, error) {
|
||||
} else {
|
||||
a.SeedRatio = r
|
||||
}
|
||||
if task.UploadProgresser != nil {
|
||||
a.UploadProgress = task.UploadProgresser()
|
||||
}
|
||||
}
|
||||
}
|
||||
activities = append(activities, a)
|
||||
|
||||
@@ -207,6 +207,7 @@ func (c *Client) moveCompletedTask(id int) (err1 error) {
|
||||
if err := stImpl.Copy(filepath.Join(c.db.GetDownloadDir(), torrentName), r.TargetDir); err != nil {
|
||||
return errors.Wrap(err, "move file")
|
||||
}
|
||||
torrent.UploadProgresser = stImpl.UploadProgress
|
||||
|
||||
c.db.SetHistoryStatus(r.ID, history.StatusSeeding)
|
||||
if len(episodeIds) > 0 {
|
||||
@@ -285,6 +286,7 @@ func (c *Client) CheckDownloadedSeriesFiles(m *ent.Media) error {
|
||||
type Task struct {
|
||||
//Processing bool
|
||||
pkg.Torrent
|
||||
UploadProgresser func() float64
|
||||
}
|
||||
|
||||
func (c *Client) DownloadSeriesAllEpisodes(id int) []string {
|
||||
|
||||
@@ -42,7 +42,7 @@ func (s *Server) AddStorage(c *gin.Context) (interface{}, error) {
|
||||
log.Infof("file name: %v", f.Name())
|
||||
}
|
||||
} else if in.Implementation == "alist" {
|
||||
cfg := in.ToWebDavSetting()
|
||||
cfg := in.ToAlistSetting()
|
||||
_, err := storage.NewAlist(&alist.Config{URL: cfg.URL, Username: cfg.User, Password: cfg.Password}, in.TvPath)
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "alist")
|
||||
|
||||
Reference in New Issue
Block a user