From a4b72664fd52608bef4d959cea918f0805903732 Mon Sep 17 00:00:00 2001 From: RakVhalate Date: Fri, 25 Nov 2022 22:40:17 +1000 Subject: [PATCH] Added some folders. --- {Controllers => APIControllers}/DeletePost.cs | 3 +- {Controllers => APIControllers}/GetPosts.cs | 1 + .../PictureUpload.cs | 15 +++----- {Controllers => APIControllers}/PostPost.cs | 3 ++ .../ShowThreads.cs | 3 +- .../TestPosting.cs | 0 .../APIThreadBuffer.cs | 12 ++++-- .../BufferFill.cs | 9 +++-- DBchat.cs => DBControllers/DBchat.cs | 37 ++++++++++--------- MinIOchat.cs => DBControllers/MinIOchat.cs | 8 ++-- Post.cs => Models/Post.cs | 2 +- NeDvachAPI.csproj | 4 -- Program.cs | 6 +-- 13 files changed, 53 insertions(+), 50 deletions(-) rename {Controllers => APIControllers}/DeletePost.cs (89%) rename {Controllers => APIControllers}/GetPosts.cs (94%) rename {Controllers => APIControllers}/PictureUpload.cs (80%) rename {Controllers => APIControllers}/PostPost.cs (90%) rename {Controllers => APIControllers}/ShowThreads.cs (89%) rename {Controllers => APIControllers}/TestPosting.cs (100%) rename APIThreadBuffer.cs => BufferControllers/APIThreadBuffer.cs (76%) rename BufferFill.cs => BufferControllers/BufferFill.cs (81%) rename DBchat.cs => DBControllers/DBchat.cs (92%) rename MinIOchat.cs => DBControllers/MinIOchat.cs (87%) rename Post.cs => Models/Post.cs (93%) diff --git a/Controllers/DeletePost.cs b/APIControllers/DeletePost.cs similarity index 89% rename from Controllers/DeletePost.cs rename to APIControllers/DeletePost.cs index c7a7e01..ccd0cf9 100644 --- a/Controllers/DeletePost.cs +++ b/APIControllers/DeletePost.cs @@ -1,6 +1,5 @@ using Microsoft.AspNetCore.Mvc; -using System.Data; -using System.Text.Json; +using NeDvachAPI.DBControllers; namespace NeDvachAPI.Controllers { diff --git a/Controllers/GetPosts.cs b/APIControllers/GetPosts.cs similarity index 94% rename from Controllers/GetPosts.cs rename to APIControllers/GetPosts.cs index 02c98f6..294f2c7 100644 --- a/Controllers/GetPosts.cs +++ b/APIControllers/GetPosts.cs @@ -1,4 +1,5 @@ using Microsoft.AspNetCore.Mvc; +using NeDvachAPI.BufferControllers; using System.Text.Json; using System.Web.Http; using HttpGetAttribute = Microsoft.AspNetCore.Mvc.HttpGetAttribute; diff --git a/Controllers/PictureUpload.cs b/APIControllers/PictureUpload.cs similarity index 80% rename from Controllers/PictureUpload.cs rename to APIControllers/PictureUpload.cs index deceed6..27d221e 100644 --- a/Controllers/PictureUpload.cs +++ b/APIControllers/PictureUpload.cs @@ -1,7 +1,5 @@ using Microsoft.AspNetCore.Mvc; -using Microsoft.VisualBasic; -using Microsoft.Win32.SafeHandles; -using System.IO; +using NeDvachAPI.DBControllers; namespace NeDvachAPI.Controllers @@ -9,10 +7,8 @@ namespace NeDvachAPI.Controllers [ApiController] [Route("[controller]")] public class UploadPic : ControllerBase - { - ///Local Buffer File Part - - string filePath; + { + [HttpPost(Name = "UploadPicture")] public async Task ReceivePost([FromForm] IFormFile PostPicture) @@ -20,13 +16,12 @@ namespace NeDvachAPI.Controllers var supportedTypes = new[] { "jpg", "png" }; string receivedFileName = PostPicture.FileName; string fileExt = receivedFileName.Substring((receivedFileName.Length) - 3, 3); - //Console.WriteLine("Тип файла: " + fileExt); if (supportedTypes.Contains(fileExt)) //file type check { - + ///Local Buffer File Part + string filePath; filePath = Directory.GetCurrentDirectory() + "\\Buffer\\" + receivedFileName; Stream picBuffer = new FileStream(filePath, FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite); - //Console.WriteLine("Закидываю файл в " + filePath); PostPicture.CopyTo(picBuffer); picBuffer.Close(); ///MinIo part diff --git a/Controllers/PostPost.cs b/APIControllers/PostPost.cs similarity index 90% rename from Controllers/PostPost.cs rename to APIControllers/PostPost.cs index cf631f3..72dad22 100644 --- a/Controllers/PostPost.cs +++ b/APIControllers/PostPost.cs @@ -1,4 +1,7 @@ using Microsoft.AspNetCore.Mvc; +using NeDvachAPI.BufferControllers; +using NeDvachAPI.DBControllers; +using NeDvachAPI.Models; using System.Text.Json; namespace NeDvachAPI.Controllers diff --git a/Controllers/ShowThreads.cs b/APIControllers/ShowThreads.cs similarity index 89% rename from Controllers/ShowThreads.cs rename to APIControllers/ShowThreads.cs index 70da5a6..6bd4783 100644 --- a/Controllers/ShowThreads.cs +++ b/APIControllers/ShowThreads.cs @@ -1,4 +1,5 @@ using Microsoft.AspNetCore.Mvc; +using NeDvachAPI.BufferControllers; using System.Text.Json; using System.Web.Http; using HttpGetAttribute = Microsoft.AspNetCore.Mvc.HttpGetAttribute; @@ -13,7 +14,7 @@ namespace NeDvachAPI.Controllers [HttpGet(Name = "GetThreads")] public string Get([FromUri] string board) { - string postsJson = JsonSerializer.Serialize(APIThreadBuffer.GetOPPosts()); + string postsJson = JsonSerializer.Serialize(APIThreadBuffer.GetThreadPreviews()); return postsJson; } } diff --git a/Controllers/TestPosting.cs b/APIControllers/TestPosting.cs similarity index 100% rename from Controllers/TestPosting.cs rename to APIControllers/TestPosting.cs diff --git a/APIThreadBuffer.cs b/BufferControllers/APIThreadBuffer.cs similarity index 76% rename from APIThreadBuffer.cs rename to BufferControllers/APIThreadBuffer.cs index 1c8eaa5..111f153 100644 --- a/APIThreadBuffer.cs +++ b/BufferControllers/APIThreadBuffer.cs @@ -1,4 +1,7 @@ -namespace NeDvachAPI +using NeDvachAPI.DBControllers; +using NeDvachAPI.Models; + +namespace NeDvachAPI.BufferControllers { public class APIThreadBuffer { @@ -9,7 +12,7 @@ ThreadsPrewievs = OPPostsToWrite; } - public static List GetOPPosts() + public static List GetThreadPreviews() { return ThreadsPrewievs; } @@ -18,9 +21,9 @@ { Threads = Threads.Append(ThreadToAdd).ToArray(); } - public static List GetThread(int threadId) + public static List GetThread(int threadId) { - if (threadId < Threads.Length + 1 & threadId != 0) + if (threadId < Threads.Length + 1 & threadId != 0) { ; return Threads[threadId - 1]; @@ -33,5 +36,6 @@ { Threads[threadId - 1] = DBchat.PostsList("b", threadId); } + } } diff --git a/BufferFill.cs b/BufferControllers/BufferFill.cs similarity index 81% rename from BufferFill.cs rename to BufferControllers/BufferFill.cs index 1ce4432..fbee6f6 100644 --- a/BufferFill.cs +++ b/BufferControllers/BufferFill.cs @@ -1,4 +1,7 @@ -namespace NeDvachAPI +using NeDvachAPI.DBControllers; +using NeDvachAPI.Models; + +namespace NeDvachAPI.BufferControllers { public class BufferFill { @@ -11,10 +14,10 @@ for (int threadId = 1; threadId <= 4; threadId++) { - APIThreadBuffer.WriteThreadsBuffer(DBchat.PostsList(board , threadId)); + APIThreadBuffer.WriteThreadsBuffer(DBchat.PostsList(board, threadId)); Console.WriteLine("Добавляю буферизую тред " + threadId); } - return true; + return true; } } } diff --git a/DBchat.cs b/DBControllers/DBchat.cs similarity index 92% rename from DBchat.cs rename to DBControllers/DBchat.cs index 425139b..55abb86 100644 --- a/DBchat.cs +++ b/DBControllers/DBchat.cs @@ -1,12 +1,13 @@ -using Npgsql; +using NeDvachAPI.Models; +using Npgsql; using static System.Net.Mime.MediaTypeNames; -namespace NeDvachAPI +namespace NeDvachAPI.DBControllers { public class DBchat { // Obtain connection string information from the portal - + public static List PostsList(string boardName, int thread) { @@ -16,7 +17,7 @@ namespace NeDvachAPI //int postCount = 0; string received = ""; string connString = - String.Format( + string.Format( "Server={0}; User Id={1}; Database={2}; Port={3}; Password={4};SSLMode=Prefer", AuthInfo.DB.Host, AuthInfo.DB.User, @@ -40,7 +41,7 @@ namespace NeDvachAPI // ) // subquery // ORDER BY post_id ASC", conn) ) - using ( var command = new NpgsqlCommand($@" + using (var command = new NpgsqlCommand($@" SELECT * FROM ( SELECT post_id, post_text, content, post_timestamp @@ -48,19 +49,19 @@ namespace NeDvachAPI WHERE thread_id = {thread} ORDER BY post_id DESC ) subquery - ORDER BY post_id ASC", conn) ) + ORDER BY post_id ASC", conn)) { var reader = command.ExecuteReader(); while (reader.Read()) { //received +=( - //string.Format( - //"#{0}: {1}" + "\n", - // reader.GetInt32(0).ToString(), - //reader.GetString(1) - //) - //); + //string.Format( + //"#{0}: {1}" + "\n", + // reader.GetInt32(0).ToString(), + //reader.GetString(1) + //) + //); Post receivedPost = new() { Id = reader.GetInt32(0), @@ -87,7 +88,7 @@ namespace NeDvachAPI //int postCount = 0; string received = ""; string connString = - String.Format( + string.Format( "Server={0}; User Id={1}; Database={2}; Port={3}; Password={4};SSLMode=Prefer", AuthInfo.DB.Host, AuthInfo.DB.User, @@ -156,7 +157,7 @@ namespace NeDvachAPI public static void DbUpdate(string id, string text) { string connString = - String.Format( + string.Format( "Server={0}; User Id={1}; Database={2}; Port={3}; Password={4};SSLMode=Prefer", AuthInfo.DB.Host, AuthInfo.DB.User, @@ -175,7 +176,7 @@ namespace NeDvachAPI command.Parameters.AddWithValue("postText", text); int nRows = command.ExecuteNonQuery(); - Console.Out.WriteLine(String.Format("Number of rows updated={0}", nRows)); + Console.Out.WriteLine(string.Format("Number of rows updated={0}", nRows)); } } @@ -185,7 +186,7 @@ namespace NeDvachAPI public static void SendPost(Post postToSend) //sending post to database { string connString = - String.Format( + string.Format( "Server={0}; User Id={1}; Database={2}; Port={3}; Password={4};SSLMode=Prefer", AuthInfo.DB.Host, AuthInfo.DB.User, @@ -232,7 +233,7 @@ namespace NeDvachAPI public static void DeletePost(string idToDel) //удалялка { string connString = - String.Format( + string.Format( "Server={0}; User Id={1}; Database={2}; Port={3}; Password={4};SSLMode=Prefer", AuthInfo.DB.Host, AuthInfo.DB.User, @@ -253,7 +254,7 @@ namespace NeDvachAPI command.Parameters.AddWithValue("ID", int.Parse(idToDel)); ; int nRows = command.ExecuteNonQuery(); - Console.Out.WriteLine(String.Format("Number of rows updated={0}", nRows)); + Console.Out.WriteLine(string.Format("Number of rows updated={0}", nRows)); } } diff --git a/MinIOchat.cs b/DBControllers/MinIOchat.cs similarity index 87% rename from MinIOchat.cs rename to DBControllers/MinIOchat.cs index 5d22a39..b17b0a0 100644 --- a/MinIOchat.cs +++ b/DBControllers/MinIOchat.cs @@ -3,7 +3,7 @@ using Minio.DataModel; using Minio; using System.Security.Cryptography; -namespace NeDvachAPI +namespace NeDvachAPI.DBControllers { public class MinIOchat { @@ -24,10 +24,10 @@ namespace NeDvachAPI .WithObject(filename) .WithFileName(fileroute) .WithContentType("image/png"); - //.WithServerSideEncryption(ssec); + //.WithServerSideEncryption(ssec); await DvachIo.PutObjectAsync(putObjectArgs); - System.GC.Collect(); - System.GC.WaitForPendingFinalizers(); + GC.Collect(); + GC.WaitForPendingFinalizers(); File.Delete(fileroute); return new JsonResult("http://static.vdk2ch.ru:15555/thread-pics/" + filename); diff --git a/Post.cs b/Models/Post.cs similarity index 93% rename from Post.cs rename to Models/Post.cs index ecd5e59..4021309 100644 --- a/Post.cs +++ b/Models/Post.cs @@ -1,4 +1,4 @@ -namespace NeDvachAPI +namespace NeDvachAPI.Models { public class Post { diff --git a/NeDvachAPI.csproj b/NeDvachAPI.csproj index 5cad396..9e2d64c 100644 --- a/NeDvachAPI.csproj +++ b/NeDvachAPI.csproj @@ -13,8 +13,4 @@ - - - - diff --git a/Program.cs b/Program.cs index 3a0c117..14c57b5 100644 --- a/Program.cs +++ b/Program.cs @@ -1,4 +1,4 @@ -using NeDvachAPI; +using NeDvachAPI.BufferControllers; var builder = WebApplication.CreateBuilder(args); @@ -11,8 +11,8 @@ builder.Services.AddCors(setup => setup.AddDefaultPolicy(policyBuilder => { - policyBuilder.WithOrigins("http://www.vdk2ch.ru:4200").WithMethods("GET", "POST").WithHeaders("*"); - //policyBuilder.WithOrigins("http://localhost:4200").WithMethods("GET", "POST").WithHeaders("*"); + //policyBuilder.WithOrigins("http://www.vdk2ch.ru:4200").WithMethods("GET", "POST").WithHeaders("*"); + policyBuilder.WithOrigins("http://localhost:4200").WithMethods("GET", "POST").WithHeaders("*"); }); });