浏览代码

去除 19037 端口,合并到 19035,更改监控的目录的时候,需要重启软件

Signed-off-by: allan716 <[email protected]>
allan716 3 年之前
父节点
当前提交
f6775405be

+ 3 - 10
.gitignore

@@ -7,20 +7,13 @@
 /**/config.yaml
 /*.zip
 /*.rar
-/dist
-/emby_helper/Logs/*.log
-/internal/Logs/*.log
-/internal/pkg/hot_fix/settings.db
-/settings.db
-/*.exe
-/cmd/chinesesubfinder/*.exe
-/internal/pkg/sub_timeline_fixer/*.html
+/**/*.log
+/**/settings.db
+/**/*.exe
 TestData/*
-TestData/
 /something.yaml
 /.rod
 /cmd/GetCAPTCHA
-/.idea
 /*.iml
 /**/ChineseSubFinderSettings.json
 /**/*.db

+ 17 - 9
internal/backend/controllers/v1/controller_base.go

@@ -1,10 +1,10 @@
 package v1
 
 import (
-	"github.com/allanpk716/ChineseSubFinder/pkg/types/backend"
 	"net/http"
 
-	"github.com/allanpk716/ChineseSubFinder/internal/backend/controllers/base"
+	"github.com/allanpk716/ChineseSubFinder/pkg/types/backend"
+
 	"github.com/allanpk716/ChineseSubFinder/pkg/lock"
 	"github.com/allanpk716/ChineseSubFinder/pkg/logic/cron_helper"
 	"github.com/allanpk716/ChineseSubFinder/pkg/sub_formatter"
@@ -14,10 +14,9 @@ import (
 )
 
 type ControllerBase struct {
-	log                     *logrus.Logger
-	cronHelper              *cron_helper.CronHelper
-	StaticFileSystemBackEnd *base.StaticFileSystemBackEnd
-
+	log                                 *logrus.Logger
+	cronHelper                          *cron_helper.CronHelper
+	pathUrlMap                          map[string]string
 	videoScanAndRefreshHelper           *video_scan_and_refresh_helper.VideoScanAndRefreshHelper
 	videoScanAndRefreshHelperIsRunning  bool
 	videoScanAndRefreshHelperLocker     lock.Lock
@@ -26,9 +25,9 @@ type ControllerBase struct {
 
 func NewControllerBase(log *logrus.Logger, cronHelper *cron_helper.CronHelper) *ControllerBase {
 	cb := &ControllerBase{
-		log:                     log,
-		cronHelper:              cronHelper,
-		StaticFileSystemBackEnd: base.NewStaticFileSystemBackEnd(log),
+		log:        log,
+		cronHelper: cronHelper,
+		pathUrlMap: make(map[string]string),
 		// 这里因为不进行任务的添加,仅仅是扫描,所以 downloadQueue 可以为 nil
 		videoScanAndRefreshHelper: video_scan_and_refresh_helper.NewVideoScanAndRefreshHelper(
 			sub_formatter.GetSubFormatter(log, cronHelper.Settings.AdvancedSettings.SubNameFormatter),
@@ -39,6 +38,15 @@ func NewControllerBase(log *logrus.Logger, cronHelper *cron_helper.CronHelper) *
 	return cb
 }
 
+func (cb ControllerBase) SetPathUrlMapItem(path string, url string) {
+	cb.pathUrlMap[path] = url
+}
+
+// GetPathUrlMap x://电影 -- /movie_dir_0  or x://电视剧 -- /series_dir_0
+func (cb *ControllerBase) GetPathUrlMap() map[string]string {
+	return cb.pathUrlMap
+}
+
 func (cb *ControllerBase) Close() {
 	cb.cronHelper.Stop()
 	cb.videoScanAndRefreshHelper.Cancel()

+ 0 - 3
internal/backend/controllers/v1/settings.go

@@ -59,9 +59,6 @@ func (cb ControllerBase) SettingsHandler(c *gin.Context) {
 			if err != nil {
 				return
 			}
-			// 重新设置本地的静态文件服务器
-			cb.StaticFileSystemBackEnd.Stop()
-			cb.StaticFileSystemBackEnd.Start(cb.cronHelper.Settings.CommonSettings)
 
 			c.JSON(http.StatusOK, backend.ReplyCommon{Message: "Settings Save Success"})
 		}

+ 1 - 1
internal/backend/controllers/v1/video_list.go

@@ -77,7 +77,7 @@ func (cb *ControllerBase) RefreshVideoListHandler(c *gin.Context) {
 			return
 		}
 
-		pathUrlMap := cb.StaticFileSystemBackEnd.GetPathUrlMap()
+		pathUrlMap := cb.GetPathUrlMap()
 
 		MovieInfos, SeasonInfos := cb.videoScanAndRefreshHelper.ScrabbleUpVideoList(scanVideoResult, pathUrlMap)
 

+ 19 - 1
internal/backend/routers/base_router.go

@@ -1,6 +1,9 @@
 package routers
 
 import (
+	"fmt"
+	"net/http"
+
 	"github.com/allanpk716/ChineseSubFinder/internal/backend/controllers/base"
 	v1 "github.com/allanpk716/ChineseSubFinder/internal/backend/controllers/v1"
 	"github.com/allanpk716/ChineseSubFinder/internal/backend/middle"
@@ -13,8 +16,23 @@ func InitRouter(fileDownloader *file_downloader.FileDownloader, router *gin.Engi
 
 	cbBase := base.NewControllerBase(fileDownloader)
 	cbV1 := v1.NewControllerBase(fileDownloader.Log, cronHelper)
+	// --------------------------------------------------
 	// 静态文件服务器
-	cbV1.StaticFileSystemBackEnd.Start(fileDownloader.Settings.CommonSettings)
+	// 添加电影的
+	for i, path := range fileDownloader.Settings.CommonSettings.MoviePaths {
+
+		nowUrl := "/movie_dir_" + fmt.Sprintf("%d", i)
+		cbV1.SetPathUrlMapItem(path, nowUrl)
+		router.StaticFS(nowUrl, http.Dir(path))
+	}
+	// 添加连续剧的
+	for i, path := range fileDownloader.Settings.CommonSettings.SeriesPaths {
+
+		nowUrl := "/series_dir_" + fmt.Sprintf("%d", i)
+		cbV1.SetPathUrlMapItem(path, nowUrl)
+		router.StaticFS(nowUrl, http.Dir(path))
+	}
+	// --------------------------------------------------
 	// 基础的路由
 	router.GET("/system-status", cbBase.SystemStatusHandler)