From 3d4bb077ccea0d79f034addd302c4c1dc363200f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20=C5=A0taleker?= Date: Sat, 28 Feb 2026 11:46:09 +0100 Subject: [PATCH] print --- .../Pages/Projects/CreateEditPartItem.cshtml | 25 ++- .../Pages/Projects/PrintPartItem.cshtml | 209 ++++++++++++++++++ .../Pages/Projects/PrintPartItem.cshtml.cs | 62 ++++++ 3 files changed, 286 insertions(+), 10 deletions(-) create mode 100644 EveryThing/Pages/Projects/PrintPartItem.cshtml create mode 100644 EveryThing/Pages/Projects/PrintPartItem.cshtml.cs diff --git a/EveryThing/Pages/Projects/CreateEditPartItem.cshtml b/EveryThing/Pages/Projects/CreateEditPartItem.cshtml index 61922dd..fb31762 100644 --- a/EveryThing/Pages/Projects/CreateEditPartItem.cshtml +++ b/EveryThing/Pages/Projects/CreateEditPartItem.cshtml @@ -165,17 +165,22 @@ - diff --git a/EveryThing/Pages/Projects/PrintPartItem.cshtml b/EveryThing/Pages/Projects/PrintPartItem.cshtml new file mode 100644 index 0000000..c933b4a --- /dev/null +++ b/EveryThing/Pages/Projects/PrintPartItem.cshtml @@ -0,0 +1,209 @@ +@page +@using System.Web +@using EveryThing.Models.Invoice +@using Org.BouncyCastle.Asn1 +@model EveryThing.Pages.Projects.PrintPartItem + +@{ + ViewData["Title"] = "Izpis"; + Layout = "~/Pages/Layouts/_Layout.cshtml"; +} + + + +

+ + Projekti / Izpis + +

+ +
+ + +
+@Html.AntiForgeryToken() + +@section Scripts { + @{await Html.RenderPartialAsync("_ValidationScriptsPartial");} + + + + + +} \ No newline at end of file diff --git a/EveryThing/Pages/Projects/PrintPartItem.cshtml.cs b/EveryThing/Pages/Projects/PrintPartItem.cshtml.cs new file mode 100644 index 0000000..9725a16 --- /dev/null +++ b/EveryThing/Pages/Projects/PrintPartItem.cshtml.cs @@ -0,0 +1,62 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Identity; +using Microsoft.AspNetCore.Mvc; +using Microsoft.AspNetCore.Mvc.RazorPages; +using Microsoft.EntityFrameworkCore; +using EveryThing.Data; +using EveryThing.Models; +using EveryThing.Models.Project; +using EveryThing.Models.Transport; +using DocumentFormat.OpenXml.Wordprocessing; +using System.ComponentModel.DataAnnotations; + +namespace EveryThing.Pages.Projects +{ + [Authorize(Roles = "Administrator,InvoicingUser,ProjecThingUser")] + public class PrintPartItem : PageModel + { + + + private readonly ApplicationDbContext _context; + private readonly UserManager _userManager; + + public ProjectPartItem PartItem { get; set; } + + public IList Operations { get; set; } + + public PrintPartItem(ApplicationDbContext context, UserManager userManager) + { + _context = context; + _userManager = userManager; + } + + public async Task OnGetAsync(int id) + { + var user = _userManager.GetUserAsync(User).Result; + + PartItem = await _context.ProjectPartItems + .Include(x => x.ProjectPart) + .ThenInclude(x => x.Project) + .ThenInclude(x => x.Company) + .Include(x => x.Material) + .Include(x => x.Item) + .FirstOrDefaultAsync(x => x.IdProjectPartItem == id && x.ProjectPart.Project.Company.IdCompany == user.IdCompanyFk); + + if (PartItem == null) + return NotFound(); + + + Operations = await _context.ProjectPartItemOperations + .Include(x => x.Operation) + .Where(x => x.IdProjectPartItemFk == PartItem.IdProjectPartItem) + .ToListAsync(); + + + return Page(); + } + } +}