diff --git a/Controllers/ConfigController.cs b/Controllers/ConfigController.cs index 2686e1f..779f010 100644 --- a/Controllers/ConfigController.cs +++ b/Controllers/ConfigController.cs @@ -342,7 +342,11 @@ namespace dy.net.Controllers [HttpGet("mytag")] public async Task GetMyTag() { - return ApiResult.Success(Appsettings.Get("tagName")); + var deploy = Appsettings.Get("deploy"); + var tag = Appsettings.Get("tagName"); + tag = deploy == "fn" ? "fn_" + Appsettings.Get("fnVersion") : tag; + deploy = deploy == "fn" ? "fnos" : "docker"; + return ApiResult.Success(new { tag, deploy }); } [AllowAnonymous] @@ -359,7 +363,7 @@ namespace dy.net.Controllers { if (deploy == "fn")//飞牛 { - return ApiResult.Success(new List { "beta_" + Appsettings.Get("fnVersion") }); + return ApiResult.Success(new List { "fn_" + Appsettings.Get("fnVersion") }); } else { diff --git a/Program.cs b/Program.cs index 398de2a..f5bcfac 100644 --- a/Program.cs +++ b/Program.cs @@ -38,6 +38,7 @@ namespace dy.net // 初始化应用服务 InitApplicationServices(app, isDevelopment); Console.WriteLine(); + app.Run(); } diff --git a/Properties/PublishProfiles/docker.pubxml.user b/Properties/PublishProfiles/docker.pubxml.user index 3e15b8c..c931ce2 100644 --- a/Properties/PublishProfiles/docker.pubxml.user +++ b/Properties/PublishProfiles/docker.pubxml.user @@ -3,7 +3,7 @@ <_PublishTargetUrl>E:\code\dysync\bin\Release\net6.0\publish\ - True|2026-01-15T14:18:57.9835738Z||;True|2026-01-15T22:07:25.4753938+08:00||;True|2026-01-15T22:07:14.8243754+08:00||;True|2026-01-15T21:40:13.2613927+08:00||;True|2026-01-15T20:57:56.6291682+08:00||;True|2026-01-15T20:57:47.1363536+08:00||;True|2026-01-15T20:08:44.4710883+08:00||;True|2026-01-15T20:04:51.8284314+08:00||;False|2026-01-15T20:04:45.3258155+08:00||;True|2026-01-15T19:59:11.7907672+08:00||;True|2026-01-15T01:10:48.9066941+08:00||;True|2026-01-15T01:03:23.6216975+08:00||;True|2026-01-15T01:03:16.3364591+08:00||;False|2026-01-15T01:03:10.5654436+08:00||;True|2026-01-15T00:49:21.6559622+08:00||;True|2026-01-15T00:10:42.7288439+08:00||;True|2026-01-15T00:06:28.4241682+08:00||;True|2026-01-13T22:34:15.2372411+08:00||;True|2026-01-13T22:26:46.4522947+08:00||;True|2026-01-13T22:15:56.9735179+08:00||;True|2026-01-13T22:15:51.8250677+08:00||;False|2026-01-13T22:15:46.6608690+08:00||;True|2026-01-13T22:03:06.4683237+08:00||;False|2026-01-13T22:03:01.2036027+08:00||;True|2026-01-13T21:36:05.8776209+08:00||;True|2026-01-13T21:33:02.0766289+08:00||;False|2026-01-13T21:32:57.1976141+08:00||;True|2026-01-13T19:14:35.2519439+08:00||;True|2026-01-13T15:07:50.0836745+08:00||;False|2026-01-13T15:06:35.5929685+08:00||;True|2026-01-13T10:21:41.6012776+08:00||;True|2026-01-13T09:57:25.4788847+08:00||;True|2026-01-13T09:53:14.4900360+08:00||;True|2026-01-13T09:23:53.6465295+08:00||;True|2026-01-12T22:04:14.5886955+08:00||;False|2026-01-12T22:04:08.2008101+08:00||;True|2026-01-12T21:53:46.9947176+08:00||;True|2026-01-12T21:11:15.8358024+08:00||;True|2026-01-12T21:09:51.8663228+08:00||;True|2026-01-11T21:25:07.5052845+08:00||;False|2026-01-11T21:24:27.5744557+08:00||;True|2026-01-11T19:59:15.4734611+08:00||;False|2026-01-11T19:59:04.9543339+08:00||;True|2026-01-11T18:51:30.6649269+08:00||;True|2026-01-08T21:07:57.5094466+08:00||;True|2026-01-08T14:51:18.2266231+08:00||;True|2026-01-08T14:31:55.1137120+08:00||;True|2026-01-08T00:16:24.4451490+08:00||;True|2026-01-08T00:14:20.7430793+08:00||;True|2026-01-08T00:07:46.7228194+08:00||;True|2026-01-07T23:52:13.3290082+08:00||;True|2026-01-07T23:49:28.4838650+08:00||;True|2026-01-07T23:47:45.1936189+08:00||;True|2026-01-07T23:35:09.7818611+08:00||;True|2026-01-07T23:20:43.7462863+08:00||;True|2026-01-07T23:04:39.5140429+08:00||;False|2026-01-07T23:04:36.5367611+08:00||;True|2026-01-07T22:53:14.6013449+08:00||;True|2026-01-07T22:49:59.9549006+08:00||;True|2026-01-07T22:36:40.0254856+08:00||;False|2026-01-07T22:36:28.8275903+08:00||;True|2026-01-07T21:59:51.4355171+08:00||;True|2026-01-03T21:38:51.4307034+08:00||;True|2026-01-02T19:09:16.9668906+08:00||;False|2026-01-02T19:09:11.7496369+08:00||;True|2026-01-02T15:42:08.2215697+08:00||;True|2026-01-02T09:46:56.1654861+08:00||;True|2026-01-02T09:35:28.0211225+08:00||;True|2026-01-01T23:07:01.9022045+08:00||;False|2026-01-01T23:06:56.0537216+08:00||;True|2026-01-01T22:16:10.2974067+08:00||;True|2026-01-01T22:16:06.2123787+08:00||;False|2026-01-01T22:15:33.3626979+08:00||;True|2026-01-01T22:01:30.7161900+08:00||;True|2026-01-01T21:10:19.3664263+08:00||;True|2026-01-01T21:09:38.6071080+08:00||;True|2025-12-30T11:45:54.5543034+08:00||;True|2025-12-30T09:19:08.3178124+08:00||;True|2025-12-29T18:57:29.7032246+08:00||;True|2025-12-27T14:52:24.4780776+08:00||;False|2025-12-27T14:52:19.5635794+08:00||;True|2025-12-27T14:48:01.6252748+08:00||;False|2025-12-27T14:47:55.7976192+08:00||;True|2025-12-27T14:38:23.9723838+08:00||;True|2025-12-27T13:00:29.8583858+08:00||;True|2025-12-26T22:18:42.4015637+08:00||;True|2025-12-26T22:10:58.5274572+08:00||;True|2025-12-26T22:06:26.3129600+08:00||;True|2025-12-26T22:03:55.6718618+08:00||;False|2025-12-26T22:03:48.3809954+08:00||;True|2025-12-26T22:02:33.1840390+08:00||;True|2025-12-26T22:01:16.1660100+08:00||;True|2025-12-25T00:50:26.1116465+08:00||;True|2025-12-25T00:48:27.3087708+08:00||;True|2025-12-25T00:47:38.4835720+08:00||; + True|2026-01-16T13:00:57.7239379Z||;True|2026-01-16T21:00:03.3912989+08:00||;True|2026-01-16T20:56:08.5505592+08:00||;True|2026-01-16T20:46:32.3067302+08:00||;True|2026-01-15T22:18:57.9835738+08:00||;True|2026-01-15T22:07:25.4753938+08:00||;True|2026-01-15T22:07:14.8243754+08:00||;True|2026-01-15T21:40:13.2613927+08:00||;True|2026-01-15T20:57:56.6291682+08:00||;True|2026-01-15T20:57:47.1363536+08:00||;True|2026-01-15T20:08:44.4710883+08:00||;True|2026-01-15T20:04:51.8284314+08:00||;False|2026-01-15T20:04:45.3258155+08:00||;True|2026-01-15T19:59:11.7907672+08:00||;True|2026-01-15T01:10:48.9066941+08:00||;True|2026-01-15T01:03:23.6216975+08:00||;True|2026-01-15T01:03:16.3364591+08:00||;False|2026-01-15T01:03:10.5654436+08:00||;True|2026-01-15T00:49:21.6559622+08:00||;True|2026-01-15T00:10:42.7288439+08:00||;True|2026-01-15T00:06:28.4241682+08:00||;True|2026-01-13T22:34:15.2372411+08:00||;True|2026-01-13T22:26:46.4522947+08:00||;True|2026-01-13T22:15:56.9735179+08:00||;True|2026-01-13T22:15:51.8250677+08:00||;False|2026-01-13T22:15:46.6608690+08:00||;True|2026-01-13T22:03:06.4683237+08:00||;False|2026-01-13T22:03:01.2036027+08:00||;True|2026-01-13T21:36:05.8776209+08:00||;True|2026-01-13T21:33:02.0766289+08:00||;False|2026-01-13T21:32:57.1976141+08:00||;True|2026-01-13T19:14:35.2519439+08:00||;True|2026-01-13T15:07:50.0836745+08:00||;False|2026-01-13T15:06:35.5929685+08:00||;True|2026-01-13T10:21:41.6012776+08:00||;True|2026-01-13T09:57:25.4788847+08:00||;True|2026-01-13T09:53:14.4900360+08:00||;True|2026-01-13T09:23:53.6465295+08:00||;True|2026-01-12T22:04:14.5886955+08:00||;False|2026-01-12T22:04:08.2008101+08:00||;True|2026-01-12T21:53:46.9947176+08:00||;True|2026-01-12T21:11:15.8358024+08:00||;True|2026-01-12T21:09:51.8663228+08:00||;True|2026-01-11T21:25:07.5052845+08:00||;False|2026-01-11T21:24:27.5744557+08:00||;True|2026-01-11T19:59:15.4734611+08:00||;False|2026-01-11T19:59:04.9543339+08:00||;True|2026-01-11T18:51:30.6649269+08:00||;True|2026-01-08T21:07:57.5094466+08:00||;True|2026-01-08T14:51:18.2266231+08:00||;True|2026-01-08T14:31:55.1137120+08:00||;True|2026-01-08T00:16:24.4451490+08:00||;True|2026-01-08T00:14:20.7430793+08:00||;True|2026-01-08T00:07:46.7228194+08:00||;True|2026-01-07T23:52:13.3290082+08:00||;True|2026-01-07T23:49:28.4838650+08:00||;True|2026-01-07T23:47:45.1936189+08:00||;True|2026-01-07T23:35:09.7818611+08:00||;True|2026-01-07T23:20:43.7462863+08:00||;True|2026-01-07T23:04:39.5140429+08:00||;False|2026-01-07T23:04:36.5367611+08:00||;True|2026-01-07T22:53:14.6013449+08:00||;True|2026-01-07T22:49:59.9549006+08:00||;True|2026-01-07T22:36:40.0254856+08:00||;False|2026-01-07T22:36:28.8275903+08:00||;True|2026-01-07T21:59:51.4355171+08:00||;True|2026-01-03T21:38:51.4307034+08:00||;True|2026-01-02T19:09:16.9668906+08:00||;False|2026-01-02T19:09:11.7496369+08:00||;True|2026-01-02T15:42:08.2215697+08:00||;True|2026-01-02T09:46:56.1654861+08:00||;True|2026-01-02T09:35:28.0211225+08:00||;True|2026-01-01T23:07:01.9022045+08:00||;False|2026-01-01T23:06:56.0537216+08:00||;True|2026-01-01T22:16:10.2974067+08:00||;True|2026-01-01T22:16:06.2123787+08:00||;False|2026-01-01T22:15:33.3626979+08:00||;True|2026-01-01T22:01:30.7161900+08:00||;True|2026-01-01T21:10:19.3664263+08:00||;True|2026-01-01T21:09:38.6071080+08:00||;True|2025-12-30T11:45:54.5543034+08:00||;True|2025-12-30T09:19:08.3178124+08:00||;True|2025-12-29T18:57:29.7032246+08:00||;True|2025-12-27T14:52:24.4780776+08:00||;False|2025-12-27T14:52:19.5635794+08:00||;True|2025-12-27T14:48:01.6252748+08:00||;False|2025-12-27T14:47:55.7976192+08:00||;True|2025-12-27T14:38:23.9723838+08:00||;True|2025-12-27T13:00:29.8583858+08:00||;True|2025-12-26T22:18:42.4015637+08:00||;True|2025-12-26T22:10:58.5274572+08:00||;True|2025-12-26T22:06:26.3129600+08:00||;True|2025-12-26T22:03:55.6718618+08:00||;False|2025-12-26T22:03:48.3809954+08:00||;True|2025-12-26T22:02:33.1840390+08:00||;True|2025-12-26T22:01:16.1660100+08:00||;True|2025-12-25T00:50:26.1116465+08:00||;True|2025-12-25T00:48:27.3087708+08:00||;True|2025-12-25T00:47:38.4835720+08:00||; \ No newline at end of file diff --git a/Properties/PublishProfiles/fn.pubxml.user b/Properties/PublishProfiles/fn.pubxml.user index a8c5000..8b52624 100644 --- a/Properties/PublishProfiles/fn.pubxml.user +++ b/Properties/PublishProfiles/fn.pubxml.user @@ -5,7 +5,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121. <_PublishTargetUrl>E:\code\dysync\bin\Release\net6.0\publish\ - True|2026-01-15T14:26:32.5592635Z||;False|2026-01-15T22:26:22.8207579+08:00||;True|2026-01-15T20:11:16.7025777+08:00||;True|2026-01-15T01:27:08.0668895+08:00||;True|2026-01-15T01:22:47.5988241+08:00||;True|2026-01-15T01:20:09.5613415+08:00||;True|2026-01-15T01:12:37.7594645+08:00||;True|2026-01-15T00:48:09.3576293+08:00||;True|2026-01-15T00:36:39.6208221+08:00||;True|2026-01-15T00:36:29.1250549+08:00||;False|2026-01-15T00:36:18.2658521+08:00||;True|2026-01-13T22:27:04.3807307+08:00||;True|2026-01-08T14:31:13.4473659+08:00||;True|2026-01-08T00:19:20.8948701+08:00||;True|2026-01-07T21:59:04.8702022+08:00||;True|2026-01-03T21:42:41.3864639+08:00||;False|2026-01-03T21:42:26.7041325+08:00||;True|2026-01-02T09:32:11.1396877+08:00||;True|2026-01-01T23:30:38.0205783+08:00||;True|2026-01-01T23:29:35.2877898+08:00||;False|2026-01-01T23:27:39.5930556+08:00||;False|2026-01-01T23:24:52.0996222+08:00||;False|2026-01-01T23:24:09.0444840+08:00||;False|2026-01-01T23:24:06.1610789+08:00||;False|2026-01-01T23:24:03.3178410+08:00||;False|2026-01-01T23:22:56.2224992+08:00||;False|2026-01-01T23:22:47.8246988+08:00||;False|2026-01-01T23:22:43.2890820+08:00||;True|2026-01-01T23:21:03.6027351+08:00||;True|2026-01-01T23:07:57.5938094+08:00||;True|2025-12-29T18:55:45.8262096+08:00||;True|2025-12-28T00:21:04.1648410+08:00||;True|2025-12-28T00:18:49.2137559+08:00||;True|2025-12-28T00:14:18.1456892+08:00||;True|2025-12-28T00:11:06.6645248+08:00||;False|2025-12-28T00:10:49.4906020+08:00||;True|2025-12-27T23:51:57.6426264+08:00||;True|2025-12-27T23:40:08.4783210+08:00||;True|2025-12-27T14:59:32.0605406+08:00||;False|2025-12-27T14:59:21.2076690+08:00||;True|2025-12-27T12:58:06.9934830+08:00||;True|2025-12-27T12:51:45.3402320+08:00||;True|2025-12-27T12:45:49.9795040+08:00||;True|2025-12-27T12:42:13.9395619+08:00||;True|2025-12-27T11:32:35.8851241+08:00||;True|2025-12-27T11:32:11.1199261+08:00||;True|2025-12-27T11:31:34.3939619+08:00||;True|2025-12-26T22:39:54.4903900+08:00||;False|2025-12-26T22:39:38.9956198+08:00||;True|2025-12-26T13:29:16.3817938+08:00||;True|2025-12-26T13:13:27.1756564+08:00||;True|2025-12-26T13:12:27.5681845+08:00||;True|2025-12-25T21:53:39.9851108+08:00||;True|2025-12-25T21:14:06.5238213+08:00||;True|2025-12-25T14:05:40.5153425+08:00||;True|2025-12-25T00:52:42.0632072+08:00||;False|2025-12-25T00:52:36.5033522+08:00||;True|2025-12-24T20:47:03.4244585+08:00||;True|2025-12-24T20:38:49.1905853+08:00||;True|2025-12-24T20:38:18.7336590+08:00||;True|2025-12-24T20:33:27.1126773+08:00||;True|2025-12-24T20:32:29.2799273+08:00||;True|2025-12-23T20:55:43.6793723+08:00||;True|2025-12-23T20:54:55.9960612+08:00||;True|2025-12-21T13:23:11.0272294+08:00||;True|2025-12-21T13:22:56.8339811+08:00||;False|2025-12-21T13:22:50.2395530+08:00||;True|2025-12-21T13:11:36.6129339+08:00||;True|2025-12-21T12:15:18.4086793+08:00||;True|2025-12-21T12:15:11.4448190+08:00||;True|2025-12-20T14:05:36.6224332+08:00||;False|2025-12-20T14:05:28.6359828+08:00||;True|2025-12-20T13:58:30.1641630+08:00||;True|2025-12-20T13:55:16.1759645+08:00||;True|2025-12-20T12:16:22.5224516+08:00||;True|2025-12-19T09:50:16.9517676+08:00||;True|2025-12-19T09:49:47.0871734+08:00||;False|2025-12-19T09:49:36.7638757+08:00||;True|2025-12-19T09:35:13.2489248+08:00||;True|2025-12-14T19:09:59.9031104+08:00||;True|2025-12-13T21:21:10.0022707+08:00||;True|2025-12-11T22:07:16.6229994+08:00||;True|2025-12-11T22:05:56.7363206+08:00||;True|2025-12-11T22:01:07.5862406+08:00||;True|2025-12-11T22:00:43.5796594+08:00||;True|2025-12-08T21:20:37.8369271+08:00||;False|2025-12-08T21:20:21.1646252+08:00||;True|2025-12-08T20:51:50.6845619+08:00||;True|2025-12-08T16:43:45.2425324+08:00||;False|2025-12-08T16:42:23.0308163+08:00||;True|2025-12-08T16:41:52.4103868+08:00||;True|2025-12-08T16:41:49.8972006+08:00||;False|2025-12-08T16:41:39.5343442+08:00||;True|2025-12-08T12:40:19.2430740+08:00||;True|2025-12-08T12:02:30.6005542+08:00||;True|2025-12-08T11:34:29.6673185+08:00||;False|2025-12-08T11:30:56.2857042+08:00||;True|2025-12-08T10:52:43.7427594+08:00||;True|2025-12-08T07:05:03.2845531+08:00||;True|2025-12-07T23:02:10.0037815+08:00||; + True|2026-01-16T13:02:01.3282486Z||;True|2026-01-16T20:48:17.7251563+08:00||;False|2026-01-16T20:48:07.4197962+08:00||;True|2026-01-16T20:46:02.3409269+08:00||;True|2026-01-15T22:26:32.5592635+08:00||;False|2026-01-15T22:26:22.8207579+08:00||;True|2026-01-15T20:11:16.7025777+08:00||;True|2026-01-15T01:27:08.0668895+08:00||;True|2026-01-15T01:22:47.5988241+08:00||;True|2026-01-15T01:20:09.5613415+08:00||;True|2026-01-15T01:12:37.7594645+08:00||;True|2026-01-15T00:48:09.3576293+08:00||;True|2026-01-15T00:36:39.6208221+08:00||;True|2026-01-15T00:36:29.1250549+08:00||;False|2026-01-15T00:36:18.2658521+08:00||;True|2026-01-13T22:27:04.3807307+08:00||;True|2026-01-08T14:31:13.4473659+08:00||;True|2026-01-08T00:19:20.8948701+08:00||;True|2026-01-07T21:59:04.8702022+08:00||;True|2026-01-03T21:42:41.3864639+08:00||;False|2026-01-03T21:42:26.7041325+08:00||;True|2026-01-02T09:32:11.1396877+08:00||;True|2026-01-01T23:30:38.0205783+08:00||;True|2026-01-01T23:29:35.2877898+08:00||;False|2026-01-01T23:27:39.5930556+08:00||;False|2026-01-01T23:24:52.0996222+08:00||;False|2026-01-01T23:24:09.0444840+08:00||;False|2026-01-01T23:24:06.1610789+08:00||;False|2026-01-01T23:24:03.3178410+08:00||;False|2026-01-01T23:22:56.2224992+08:00||;False|2026-01-01T23:22:47.8246988+08:00||;False|2026-01-01T23:22:43.2890820+08:00||;True|2026-01-01T23:21:03.6027351+08:00||;True|2026-01-01T23:07:57.5938094+08:00||;True|2025-12-29T18:55:45.8262096+08:00||;True|2025-12-28T00:21:04.1648410+08:00||;True|2025-12-28T00:18:49.2137559+08:00||;True|2025-12-28T00:14:18.1456892+08:00||;True|2025-12-28T00:11:06.6645248+08:00||;False|2025-12-28T00:10:49.4906020+08:00||;True|2025-12-27T23:51:57.6426264+08:00||;True|2025-12-27T23:40:08.4783210+08:00||;True|2025-12-27T14:59:32.0605406+08:00||;False|2025-12-27T14:59:21.2076690+08:00||;True|2025-12-27T12:58:06.9934830+08:00||;True|2025-12-27T12:51:45.3402320+08:00||;True|2025-12-27T12:45:49.9795040+08:00||;True|2025-12-27T12:42:13.9395619+08:00||;True|2025-12-27T11:32:35.8851241+08:00||;True|2025-12-27T11:32:11.1199261+08:00||;True|2025-12-27T11:31:34.3939619+08:00||;True|2025-12-26T22:39:54.4903900+08:00||;False|2025-12-26T22:39:38.9956198+08:00||;True|2025-12-26T13:29:16.3817938+08:00||;True|2025-12-26T13:13:27.1756564+08:00||;True|2025-12-26T13:12:27.5681845+08:00||;True|2025-12-25T21:53:39.9851108+08:00||;True|2025-12-25T21:14:06.5238213+08:00||;True|2025-12-25T14:05:40.5153425+08:00||;True|2025-12-25T00:52:42.0632072+08:00||;False|2025-12-25T00:52:36.5033522+08:00||;True|2025-12-24T20:47:03.4244585+08:00||;True|2025-12-24T20:38:49.1905853+08:00||;True|2025-12-24T20:38:18.7336590+08:00||;True|2025-12-24T20:33:27.1126773+08:00||;True|2025-12-24T20:32:29.2799273+08:00||;True|2025-12-23T20:55:43.6793723+08:00||;True|2025-12-23T20:54:55.9960612+08:00||;True|2025-12-21T13:23:11.0272294+08:00||;True|2025-12-21T13:22:56.8339811+08:00||;False|2025-12-21T13:22:50.2395530+08:00||;True|2025-12-21T13:11:36.6129339+08:00||;True|2025-12-21T12:15:18.4086793+08:00||;True|2025-12-21T12:15:11.4448190+08:00||;True|2025-12-20T14:05:36.6224332+08:00||;False|2025-12-20T14:05:28.6359828+08:00||;True|2025-12-20T13:58:30.1641630+08:00||;True|2025-12-20T13:55:16.1759645+08:00||;True|2025-12-20T12:16:22.5224516+08:00||;True|2025-12-19T09:50:16.9517676+08:00||;True|2025-12-19T09:49:47.0871734+08:00||;False|2025-12-19T09:49:36.7638757+08:00||;True|2025-12-19T09:35:13.2489248+08:00||;True|2025-12-14T19:09:59.9031104+08:00||;True|2025-12-13T21:21:10.0022707+08:00||;True|2025-12-11T22:07:16.6229994+08:00||;True|2025-12-11T22:05:56.7363206+08:00||;True|2025-12-11T22:01:07.5862406+08:00||;True|2025-12-11T22:00:43.5796594+08:00||;True|2025-12-08T21:20:37.8369271+08:00||;False|2025-12-08T21:20:21.1646252+08:00||;True|2025-12-08T20:51:50.6845619+08:00||;True|2025-12-08T16:43:45.2425324+08:00||;False|2025-12-08T16:42:23.0308163+08:00||;True|2025-12-08T16:41:52.4103868+08:00||;True|2025-12-08T16:41:49.8972006+08:00||;False|2025-12-08T16:41:39.5343442+08:00||;True|2025-12-08T12:40:19.2430740+08:00||;True|2025-12-08T12:02:30.6005542+08:00||;True|2025-12-08T11:34:29.6673185+08:00||; diff --git a/app/src/components/layout/HeaderActions.vue b/app/src/components/layout/HeaderActions.vue index 8e73573..6b8f179 100644 --- a/app/src/components/layout/HeaderActions.vue +++ b/app/src/components/layout/HeaderActions.vue @@ -7,13 +7,17 @@ import DayNightSwitch from '@/components/switch/DayNightSwitch.vue'; import { TagsOutlined, CopyOutlined, GithubOutlined } from '@ant-design/icons-vue'; import Fullscreen from '../fullscreen/Fullscreen.vue'; import { useApiStore } from '@/store'; -import { message, Popover } from 'ant-design-vue'; // 移除 notification +import { message, Popover, Badge } from 'ant-design-vue'; // 新增:导入 Badge 组件用于气泡提示 // 版本数据和当前版本状态 const dyVersions = ref([]); const copyLoading = ref>({}); // 版本 popover 显隐控制 const versionPopoverVisible = ref(false); +// 新增:是否有新版本(用于气泡提示) +const hasNewVersion = ref(false); +// 新增:localStorage 缓存 key(统一命名,方便维护) +const VERSION_CACHE_KEY = 'dysync_version_cache'; // 仓库地址常量 const gitRepos = ref([ @@ -118,27 +122,64 @@ const copyGitUrl = (repo: { name: string; url: string; color: string }) => { doCopy(); }; -// 版本查看方法(获取数据后控制 popover 显隐) +// 新增:统一处理版本数据的方法(提取公共逻辑,避免冗余) +const handleVersionData = (rawData: string[]) => { + const newVersions = [...rawData]; + const versionLen = newVersions.length; + + if (versionLen > 0) { + if (versionLen === 1) { + newVersions[0] = `${newVersions[0]}(最新版)`; + hasNewVersion.value = false; // 只有一个版本,无新版 + } else { + newVersions[0] = `${newVersions[0]}(当前版本)`; + const lastIndex = versionLen - 1; + newVersions[lastIndex] = `${newVersions[lastIndex]}(最新版)`; + // 判断是否有新版本:当前版本 !== 最新版本(去除备注后对比) + const currentVersion = newVersions[0].replace('(当前版本)', '').trim(); + const latestVersion = newVersions[lastIndex].replace('(最新版)', '').trim(); + hasNewVersion.value = currentVersion !== latestVersion; + } + } else { + hasNewVersion.value = false; + } + + return newVersions; +}; + +// 新增:保存版本数据到 localStorage +const saveVersionToLocalStorage = (versionData: string[]) => { + try { + localStorage.setItem(VERSION_CACHE_KEY, JSON.stringify(versionData)); + } catch (error) { + console.warn('版本数据缓存到 localStorage 失败:', error); + } +}; + +// 新增:从 localStorage 获取缓存的版本数据 +const getVersionFromLocalStorage = (): string[] => { + try { + const cacheData = localStorage.getItem(VERSION_CACHE_KEY); + if (cacheData) { + return JSON.parse(cacheData) as string[]; + } + } catch (error) { + console.warn('从 localStorage 读取版本缓存失败:', error); + } + return []; +}; + +// 改造:版本查看方法(获取数据后更新缓存,控制 popover 显隐) const showVersionNotification = () => { useApiStore() .CheckTag() .then((res) => { if (res.code === 0) { - dyVersions.value = res.data; - const versionLen = dyVersions.value.length; - - if (versionLen > 0) { - const newVersions = [...dyVersions.value]; - if (versionLen === 1) { - newVersions[0] = `${newVersions[0]}(最新版)`; - } else { - newVersions[0] = `${newVersions[0]}(当前版本)`; - const lastIndex = versionLen - 1; - newVersions[lastIndex] = `${newVersions[lastIndex]}(最新版)`; - } - dyVersions.value = newVersions; - } - + // 处理版本数据(添加备注、判断新版) + const processedVersions = handleVersionData(res.data); + dyVersions.value = processedVersions; + // 点击后更新 localStorage 缓存 + saveVersionToLocalStorage(processedVersions); // 打开版本 popover versionPopoverVisible.value = true; } else { @@ -151,8 +192,42 @@ const showVersionNotification = () => { }); }; +// 新增:页面加载时自动调用接口获取版本并缓存 +const fetchVersionOnMount = () => { + useApiStore() + .CheckTag() + .then((res) => { + if (res.code === 0) { + // 处理版本数据(添加备注、判断新版) + const processedVersions = handleVersionData(res.data); + dyVersions.value = processedVersions; + // 页面加载时缓存到 localStorage + saveVersionToLocalStorage(processedVersions); + } else { + // 接口失败时,尝试读取本地缓存 + const cacheVersions = getVersionFromLocalStorage(); + if (cacheVersions.length > 0) { + dyVersions.value = handleVersionData(cacheVersions); + } + message.error(res.message); + } + }) + .catch((err) => { + // 接口异常时,尝试读取本地缓存 + const cacheVersions = getVersionFromLocalStorage(); + if (cacheVersions.length > 0) { + dyVersions.value = handleVersionData(cacheVersions); + } + message.error('获取版本列表失败,已加载本地缓存'); + console.error(err); + }); +}; + // 全局注入加载动画样式 onMounted(() => { + // 页面加载时自动调用版本接口 + fetchVersionOnMount(); + if (!document.querySelector('#custom-spin-style')) { const style = document.createElement('style'); style.id = 'custom-spin-style'; @@ -178,7 +253,7 @@ const showGit = () => { - +
@@ -218,14 +293,21 @@ const showGit = () => {
+ +
+ 暂无版本数据 +
- - + + + + - + +
@@ -362,7 +444,7 @@ const showGit = () => { .version-text { display: flex; align-items: center; - maxwidth: calc(100% - 40px); + max-width: calc(100% - 40px); /* 修正:原 maxwidth 拼写错误 */ overflow: hidden; text-overflow: ellipsis; white-space: nowrap; diff --git a/app/src/components/layout/PageFooter.vue b/app/src/components/layout/PageFooter.vue index 38e72d2..a142482 100644 --- a/app/src/components/layout/PageFooter.vue +++ b/app/src/components/layout/PageFooter.vue @@ -1,10 +1,11 @@ @@ -26,14 +34,17 @@ onMounted(() => { {{ yearText }} 抖小云 dysync.net. - @@ -44,6 +55,7 @@ onMounted(() => { // 使用 :root 变量,便于主题切换 --footer-text-color: var(--text-color-secondary, #999); --footer-hover-color: var(--primary-color, #1890ff); + --version-text-color: var(--text-color-tertiary, #666); width: 100%; color: var(--footer-text-color); @@ -68,7 +80,24 @@ onMounted(() => { font-size: 13px; letter-spacing: 0.3px; } - + .version-text { + // 核心修改1:白色文字(醒目,与绿底形成强烈对比) + color: #ffffff; + font-size: 12px; + font-weight: 500; + padding: 2px 6px; // 微调内边距,让绿底区域更饱满,视觉更舒适 + // 核心修改2:柔和绿色背景(两种可选方案,不刺眼、显高级) + // 方案1:推荐!清新柔和绿(适配大多数页面,不张扬,高级感足) + background-color: #722ed1; + // 方案2:稍浅薄荷绿(更明亮,醒目度稍高,适合活泼风格页面) + // background-color: #73d13d; + border-radius: 4px; // 适当增大圆角,更显圆润柔和 + // 核心修改3:调整光效为白色光晕(匹配白字,提升质感,不突兀) + // text-shadow: 0 0 3px rgba(255, 255, 255, 0.8), 0 0 6px rgba(255, 255, 255, 0.4); + // 可选优化:轻微暗角阴影,让绿底更有层次感,不扁平 + // box-shadow: 0 1px 2px rgba(82, 196, 26, 0.2); + transition: all 0.3s ease; + } // 社交链接组自身也是一个 flex 容器 .social-links { display: flex; diff --git a/app/src/pages/mylogs/MyLogs.vue b/app/src/pages/mylogs/MyLogs.vue index 505349f..38734bb 100644 --- a/app/src/pages/mylogs/MyLogs.vue +++ b/app/src/pages/mylogs/MyLogs.vue @@ -141,40 +141,40 @@ body { margin: 0; } -// 日志容器:正常宽度(继承父元素),高度适配 +// 日志容器:自适应高度,无固定上限,保留上下留白 .container { - width: 100%; // 继承父元素宽度,非全屏 - height: calc(100vh - 50px); // 留出顶部表单高度,固定高度不溢出 - padding: 0 8px; // 保留少量左右间距,视觉更友好 + width: 100%; + padding: 0 8px; + margin: 16px 0; // 上下留白,远离屏幕边缘 box-sizing: border-box; - overflow: hidden; // 新增:隐藏容器外溢出内容,避免挤压footer + overflow: hidden; } -// pre样式:继承card-body宽度(核心) +// pre样式:自适应高度,内容过多时内部滚动 .card-width-pre { - width: 100% !important; // 完全继承父元素(card-body)宽度 + width: 100% !important; min-width: 100%; - padding: 8px; // 合理内边距,避免内容贴边 + padding: 8px; margin: 0 !important; white-space: pre-wrap; word-break: break-all; - height: 100%; // 继承card-body高度 - max-height: calc(100vh - 66px); // 新增:严格限制最大高度,避开表单+卡片内边距 + // 核心:最小高度保证容器不塌陷,最大高度限制不超视口一半 + min-height: 200px; + max-height: calc(67vh); // 最多占视口一半,绝对不会满屏 box-sizing: border-box; - overflow-y: auto; // 保留:纵向滚动(优先显示垂直滚动条) - overflow-x: auto; // 保留:横向滚动(日志行过长时) + overflow-y: auto; + overflow-x: auto; font-size: 14px; line-height: 1.5; - // 可选:美化滚动条(适配现代浏览器) + // 滚动条美化(保留) &::-webkit-scrollbar { - width: 6px; // 垂直滚动条宽度 - height: 6px; // 水平滚动条高度 + width: 6px; + height: 6px; } &::-webkit-scrollbar-thumb { border-radius: 3px; background-color: rgba(0, 0, 0, 0.2); } } - .date-control-group { display: flex; align-items: center; diff --git a/app/src/store/coreapi.ts b/app/src/store/coreapi.ts index a6c6995..5332c14 100644 --- a/app/src/store/coreapi.ts +++ b/app/src/store/coreapi.ts @@ -241,7 +241,14 @@ export const useApiStore = defineStore('coreapi', () => { }); } + //检查版本 + async function getVer() { + return http.request>('/api/config/mytag', 'get').then(r => { + return r; + }).finally(() => { + }); + } //检查版本 async function CheckTag() { return http.request>('/api/config/checktag', 'get').then(r => { @@ -364,6 +371,7 @@ export const useApiStore = defineStore('coreapi', () => { } return { + getVer, mp3List, BathRealDelete, DeleteByAuthor, diff --git a/job/DouyinBasicSyncJob.cs b/job/DouyinBasicSyncJob.cs index c5472c6..3312e50 100644 --- a/job/DouyinBasicSyncJob.cs +++ b/job/DouyinBasicSyncJob.cs @@ -156,10 +156,10 @@ namespace dy.net.job var cookies = await GetValidCookies(); if (cookies == null || !cookies.Any()) { - Log.Debug($"{VideoType}-无有效cookie或cookie未开启同步,任务终止!!!"); + Log.Debug($"{VideoType}-无有效cookie或{VideoType}已关闭同步,任务终止!!!"); return; } - Log.Debug($"{VideoType}-共发现{cookies.Count}个有效的cookie,同步任务即将开始..."); + Log.Debug($"{VideoType}-共发现{cookies.Count}个有效的cookie,同步即将开始..."); // 6. 遍历每个有效的Cookie,执行同步操作 foreach (var cookie in cookies) @@ -356,7 +356,7 @@ namespace dy.net.job } catch (Exception ex) { - Log.Error(ex, $"{VideoType}-Cookie[{cookie.Id}]同步出错!!!"); + Log.Error(ex, $"{VideoType}-Cookie[{cookie.Id}]同步出错!!!,{ex.StackTrace}"); } } @@ -369,7 +369,7 @@ namespace dy.net.job var data = await FetchVideoData(cookie, cursor, followed == null ? "" : followed?.SecUid); if (data == null) { - Log.Debug($"{VideoType}-Cookie[{cookie.UserName}]读取数据失败!!!"); + Log.Debug($"{VideoType}-Cookie[{cookie.UserName}]同步数据失败!!!"); break; } @@ -448,7 +448,7 @@ namespace dy.net.job var videos = new List(); foreach (var item in data.AwemeList) { - //if (item.AwemeId!= "7202236830337551616") + //if (item.AwemeId != "7440444948844956985") //{ // continue; //}