refacfor: controller using areas

BREAKING CHANGES: restructure directory
main
Yuri Dimas 2025-10-14 15:38:22 +07:00
parent 7abc93e99f
commit 751dd71312
No known key found for this signature in database
GPG Key ID: 4A421F9108FB5D2C
19 changed files with 44 additions and 30 deletions

View File

@ -41,14 +41,16 @@
<div class="drawer md:drawer-open"> <div class="drawer md:drawer-open">
<input id="my-drawer-2" type="checkbox" class="drawer-toggle" /> <input id="my-drawer-2" type="checkbox" class="drawer-toggle" />
<div class="drawer-content"> <div class="drawer-content">
@await Html.PartialAsync("_Navbar") <!-- Navbar -->
<partial name="~/Areas/Shared/Layouts/App/_Navbar.cshtml" />
<!-- Page content here --> <!-- Page content here -->
<main class="container mx-auto p-6"> <main class="container mx-auto p-6">
@RenderBody() @RenderBody()
</main> </main>
</div> </div>
<div class="drawer-side z-50 lg:z-0"> <div class="drawer-side z-50 lg:z-0">
@await Html.PartialAsync("_Sidebar") <!-- Sidebar -->
<partial name="~/Areas/Shared/Layouts/App/_Sidebar.cshtml" />
</div> </div>
</div> </div>

View File

@ -0,0 +1,2 @@
@using BankSampahApp
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

View File

@ -0,0 +1,13 @@
using Microsoft.AspNetCore.Mvc;
namespace BankSampahApp.Areas.Sudin.Controllers
{
[Area("Sudin")]
public class DashboardController : Controller
{
public IActionResult Index()
{
return View();
}
}
}

View File

@ -1,10 +1,11 @@
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
namespace BankSampahApp.Controllers namespace BankSampahApp.Areas.Sudin.Controllers
{ {
[Area("Sudin")]
public class DataBankSampahController : Controller public class DataBankSampahController : Controller
{ {
public ActionResult Index() public IActionResult Index()
{ {
return View(); return View();
} }

View File

@ -1,7 +1,8 @@
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
namespace BankSampahApp.Controllers namespace BankSampahApp.Areas.Sudin.Controllers
{ {
[Area("Sudin")]
public class DataOfftakerController : Controller public class DataOfftakerController : Controller
{ {
public IActionResult Index() public IActionResult Index()

View File

@ -1,7 +1,8 @@
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
namespace BankSampahApp.Controllers namespace BankSampahApp.Areas.Sudin.Controllers
{ {
[Area("Sudin")]
public class TransaksiLaporanController : Controller public class TransaksiLaporanController : Controller
{ {
public IActionResult Index() public IActionResult Index()

View File

@ -1,6 +1,6 @@
@{ @{
Layout = "_LayoutApp";
ViewData["Title"] = "Dashboard"; ViewData["Title"] = "Dashboard";
ViewData["Role"] = "sudin";
ViewData["DashboardActive"] = "menu-active"; ViewData["DashboardActive"] = "menu-active";
} }

View File

@ -1,5 +1,4 @@
@{ @{
Layout = "_LayoutApp";
ViewData["Title"] = "Data Bank Sampah"; ViewData["Title"] = "Data Bank Sampah";
ViewData["DataBankSampahActive"] = "menu-active"; ViewData["DataBankSampahActive"] = "menu-active";
} }
@ -55,7 +54,7 @@
<div class="card bg-white"> <div class="card bg-white">
<div class="card-body p-2"> <div class="card-body p-2">
@await Html.PartialAsync("Components/Table/_Control") <partial name="~/Areas/Shared/Components/Table/_Control.cshtml" />
<div class="overflow-x-auto"> <div class="overflow-x-auto">
<table class="table-zebra table"> <table class="table-zebra table">
<!-- head --> <!-- head -->
@ -190,6 +189,6 @@
</tbody> </tbody>
</table> </table>
</div> </div>
@await Html.PartialAsync("Components/Table/_Pagination") <partial name="~/Areas/Shared/Components/Table/_Pagination.cshtml" />
</div> </div>
</div> </div>

View File

@ -1,5 +1,4 @@
@{ @{
Layout = "_LayoutApp";
ViewData["Title"] = "Data Offtaker"; ViewData["Title"] = "Data Offtaker";
ViewData["DataOfftakerActive"] = "menu-active"; ViewData["DataOfftakerActive"] = "menu-active";
} }
@ -49,7 +48,7 @@
<div class="card bg-white"> <div class="card bg-white">
<div class="card-body p-2"> <div class="card-body p-2">
@await Html.PartialAsync("Components/Table/_Control") <partial name="~/Areas/Shared/Components/Table/_Control.cshtml" />
<div class="overflow-x-auto"> <div class="overflow-x-auto">
<table class="table-zebra table"> <table class="table-zebra table">
<!-- head --> <!-- head -->
@ -181,6 +180,6 @@
</tbody> </tbody>
</table> </table>
</div> </div>
@await Html.PartialAsync("Components/Table/_Pagination") <partial name="~/Areas/Shared/Components/Table/_Pagination.cshtml" />
</div> </div>
</div> </div>

View File

@ -1,5 +1,4 @@
@{ @{
Layout = "_LayoutApp";
ViewData["Title"] = "Transaksi Laporan"; ViewData["Title"] = "Transaksi Laporan";
ViewData["TransaksiLaporanActive"] = "menu-active"; ViewData["TransaksiLaporanActive"] = "menu-active";
} }

View File

@ -0,0 +1,2 @@
@using BankSampahApp
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

View File

@ -0,0 +1,3 @@
@{
Layout = "/Areas/Shared/Layouts/App/_Layout.cshtml";
}

View File

@ -34,4 +34,10 @@
<None Include=".gitlab\merge_request_templates\Default.md" /> <None Include=".gitlab\merge_request_templates\Default.md" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Folder Include="Areas\Shared\Layouts\LandingPage\" />
<Folder Include="Areas\Sudin\Data\" />
<Folder Include="Areas\Sudin\Models\" />
</ItemGroup>
</Project> </Project>

View File

@ -1,14 +0,0 @@
using Microsoft.AspNetCore.Mvc;
namespace BankSampahApp.Controllers
{
public class DashboardController : Controller
{
// GET: DashboardController
public ActionResult Index()
{
return View();
}
}
}

View File

@ -116,8 +116,8 @@ app.UseAuthorization();
// Map routes with .NET 9 improvements // Map routes with .NET 9 improvements
app.MapControllerRoute( app.MapControllerRoute(
name: "default", name: "areas",
pattern: "{controller=Home}/{action=Index}/{id?}"); pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}");
// Health check endpoint // Health check endpoint
app.MapGet("/health", () => Results.Ok(new { app.MapGet("/health", () => Results.Ok(new {