From 90545682b6646e60914267990b689b1db8c6300d Mon Sep 17 00:00:00 2001 From: mmrbnjd Date: Sun, 31 Mar 2024 01:33:17 +0330 Subject: [PATCH] ... --- Back/Controllers/BaseController.cs | 11 ++- Back/Data/Models/Blog.cs | 2 +- Back/Program.cs | 2 +- Back/Services/ServBase.cs | 20 ++++- Shared/DTOs/BlogDto.cs | 25 +++++++ TaxPayerFull.sln | 4 +- TaxPayerFull/Layout/Blog.razor | 106 ++++----------------------- TaxPayerFull/Layout/ItemBlog.razor | 36 +++++++++ TaxPayerFull/Layout/Lheadertop.razor | 19 +++-- TaxPayerFull/Layout/Rank.razor | 2 +- TaxPayerFull/Program.cs | 3 +- 11 files changed, 120 insertions(+), 110 deletions(-) create mode 100644 Shared/DTOs/BlogDto.cs create mode 100644 TaxPayerFull/Layout/ItemBlog.razor diff --git a/Back/Controllers/BaseController.cs b/Back/Controllers/BaseController.cs index f96497c..7472719 100644 --- a/Back/Controllers/BaseController.cs +++ b/Back/Controllers/BaseController.cs @@ -14,9 +14,14 @@ namespace Back.Controllers { _sBase = sBase; } - [HttpGet("BasePrice")] - public async Task>> GetBasePrice() + [HttpGet("Pricing")] + public async Task>> Pricing() => Ok(await _sBase.GetBasePrice()); - + [HttpGet("DateTimeServer")] + public async Task> DateTimeServer() + => Ok(DateTime.Now); + [HttpGet("LastBlog/{Count}")] + public async Task>> LastBlog(int Count) + => Ok(await _sBase.GetBlog(Count)); } } diff --git a/Back/Data/Models/Blog.cs b/Back/Data/Models/Blog.cs index e0cd55c..ced5f7c 100644 --- a/Back/Data/Models/Blog.cs +++ b/Back/Data/Models/Blog.cs @@ -5,7 +5,7 @@ public int ID { get; set; } public string Title { get; set; } public string Text { get; set; } - public byte[]? Photo { get; set; } + public string? Photo { get; set; } public string Date { get; set; } public string Time { get; set; } public bool Status { get; set; } diff --git a/Back/Program.cs b/Back/Program.cs index 9ce6563..d4de335 100644 --- a/Back/Program.cs +++ b/Back/Program.cs @@ -24,7 +24,7 @@ builder.Services.AddCors(options => options.AddPolicy(origins, policy => { - policy.WithOrigins("http://localhost:5107") + policy.WithOrigins("https://localhost:7224") .AllowAnyHeader() .AllowAnyMethod(); }); diff --git a/Back/Services/ServBase.cs b/Back/Services/ServBase.cs index 11eb442..c6de2fb 100644 --- a/Back/Services/ServBase.cs +++ b/Back/Services/ServBase.cs @@ -8,20 +8,34 @@ namespace Back.Services public class ServBase { private readonly IAsyncRepository _repoPricing; - public ServBase(IAsyncRepository repoPricing) + private readonly IAsyncRepository _repoBlog; + public ServBase(IAsyncRepository repoPricing, IAsyncRepository repoBlog) { _repoPricing = repoPricing; + _repoBlog = repoBlog; } public async Task> GetBasePrice() { return await _repoPricing.GetAll().Select(x => new BasePriceDto { Price = x.Price, - CalculationType = x.CalculationTypeID==1 ? "واحدی" - : x.CalculationTypeID == 1 && x.PermissionID==16 ? "هر ارسال" + CalculationType = x.CalculationTypeID == 1 && x.PermissionID == 16 ? "هر ارسال" + :x.CalculationTypeID== 1 && x.PermissionID != 16 ? "واحدی" : x.CalculationTypeID == 2 ? "نامحدود" : "روزانه", PermissionID=x.PermissionID, }).ToListAsync(); } + public async Task> GetBlog(int count) + { + return await _repoBlog.Get(w=>w.Status).OrderByDescending(o=>o.ID).Take(count) + .Select(s=>new BlogDto + { + Title = s.Title, + Date=s.Date, + ID=s.ID, + Photo=string.IsNullOrEmpty(s.Photo) ? "blog-grid-1.jpg" : s.Photo + }) + .ToListAsync(); + } } } diff --git a/Shared/DTOs/BlogDto.cs b/Shared/DTOs/BlogDto.cs new file mode 100644 index 0000000..30bff82 --- /dev/null +++ b/Shared/DTOs/BlogDto.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Shared.DTOs +{ + public class BlogDto + { + public int ID { get; set; } + public string Title { get; set; } + public string? Photo { get; set; } + public string Date { get; set; } + } + public class BlogDtoFull + { + public int ID { get; set; } + public string Title { get; set; } + public string Text { get; set; } + public string? Photo { get; set; } + public string Date { get; set; } + public string Time { get; set; } + } +} diff --git a/TaxPayerFull.sln b/TaxPayerFull.sln index 0aac316..27fa31c 100644 --- a/TaxPayerFull.sln +++ b/TaxPayerFull.sln @@ -5,9 +5,9 @@ VisualStudioVersion = 17.9.34723.18 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Front", "TaxPayerFull\Front.csproj", "{0D25B253-4DAC-4D94-9BAD-C1E02F35F58B}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Back", "Back\Back.csproj", "{94DE9132-9D4E-468B-9BC4-134957BF48FE}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Back", "Back\Back.csproj", "{94DE9132-9D4E-468B-9BC4-134957BF48FE}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shared", "Shared\Shared.csproj", "{07963EE9-ADA6-4A30-890B-6643BA332D3A}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Shared", "Shared\Shared.csproj", "{07963EE9-ADA6-4A30-890B-6643BA332D3A}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/TaxPayerFull/Layout/Blog.razor b/TaxPayerFull/Layout/Blog.razor index 04fb338..9231c58 100644 --- a/TaxPayerFull/Layout/Blog.razor +++ b/TaxPayerFull/Layout/Blog.razor @@ -1,4 +1,6 @@ -
+@using Shared.DTOs +@inject HttpClient _hc +
@@ -9,96 +11,11 @@
-
-
-
- -
-
-
-
- نرم افزار مدیریت -
-
- 28 آذر, 1402 -
-
- -
-
- -
-
-
محمد محمدی
- مدیر سایت -
-
-
-
-
-
-
-
- -
-
-
-
- نرم افزار مدیریت -
-
- 28 آذر, 1402 -
-
- -
-
- -
-
-
محمد محمدی
- مدیر سایت -
-
-
-
-
-
-
-
- -
-
-
-
- نرم افزار مدیریت= -
-
- 28 آذر, 1402 -
-
- -
-
- -
-
-
محمد محمدی
- مدیر سایت -
-
-
-
-
+ @foreach (var item in items) + { + + } +
ادامه...
@@ -106,5 +23,10 @@
@code { - + List items = new List(); + protected override async Task OnInitializedAsync() + { + items = await _hc.GetFromJsonAsync>("Base/LastBlog/3"); + await base.OnInitializedAsync(); + } } diff --git a/TaxPayerFull/Layout/ItemBlog.razor b/TaxPayerFull/Layout/ItemBlog.razor new file mode 100644 index 0000000..bf7d6d6 --- /dev/null +++ b/TaxPayerFull/Layout/ItemBlog.razor @@ -0,0 +1,36 @@ +@using Shared.DTOs + +
+
+
+ +
+
+
+
+ @Item.Title.Split(':')[0] +
+
+ @Item.Date +
+
+ +
+
+ +
+
+
مهدی ربیع نژاد
+ مدیر سایت +
+
+
+
+
+ +@code { + [Parameter] + public BlogDto? Item { get; set; } +} diff --git a/TaxPayerFull/Layout/Lheadertop.razor b/TaxPayerFull/Layout/Lheadertop.razor index 7d26c88..aee687b 100644 --- a/TaxPayerFull/Layout/Lheadertop.razor +++ b/TaxPayerFull/Layout/Lheadertop.razor @@ -1,4 +1,5 @@ @using System.Globalization +@inject HttpClient _hc
@@ -21,18 +22,24 @@ @code { - + DateTime dtserver = DateTime.Now; + protected override async Task OnInitializedAsync() + { + dtserver = await _hc.GetFromJsonAsync("Base/DateTimeServer"); + await base.OnInitializedAsync(); + } } @functions{ - public static string GetTodyPersianDatetime() + public string GetTodyPersianDatetime() { + PersianCalendar pcDate = new PersianCalendar(); - int persianYear = pcDate.GetYear(DateTime.Now); - int persianMonth = pcDate.GetMonth(DateTime.Now); - int persianDay = pcDate.GetDayOfMonth(DateTime.Now); + int persianYear = pcDate.GetYear(dtserver); + int persianMonth = pcDate.GetMonth(dtserver); + int persianDay = pcDate.GetDayOfMonth(dtserver); string _DayOfWeek = ""; - switch (DateTime.Now.DayOfWeek) + switch (dtserver.DayOfWeek) { case DayOfWeek.Saturday: _DayOfWeek = " شنبه "; diff --git a/TaxPayerFull/Layout/Rank.razor b/TaxPayerFull/Layout/Rank.razor index 041e177..c0bcb2a 100644 --- a/TaxPayerFull/Layout/Rank.razor +++ b/TaxPayerFull/Layout/Rank.razor @@ -99,7 +99,7 @@ List Models = new List(); protected override async Task OnParametersSetAsync() { - Models = await _hc.GetFromJsonAsync>("Base/BasePrice"); + Models = await _hc.GetFromJsonAsync>("Base/Pricing"); await base.OnParametersSetAsync(); } diff --git a/TaxPayerFull/Program.cs b/TaxPayerFull/Program.cs index 6a5e860..65ce1af 100644 --- a/TaxPayerFull/Program.cs +++ b/TaxPayerFull/Program.cs @@ -7,8 +7,9 @@ var builder = WebAssemblyHostBuilder.CreateDefault(args); builder.RootComponents.Add("#app"); builder.RootComponents.Add("head::after"); -builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri("http://localhost:5271/api/") }); +builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri("https://localhost:7075/api/") }); CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("fa-Ir"); await builder.Build().RunAsync(); +