Compare commits

...

3 Commits

Author SHA1 Message Date
8349ce5b41 styling 2026-03-04 20:28:19 +01:00
aa85143ff3 brisanje pobrise se operacije 2026-03-04 20:27:54 +01:00
99d61af1a1 tiskanje opombe, poti nacrtov
stolpec naslednja operacija,
popravljeno brisanje
popravljeno da nafila samo privzete operacije in ne vec doda v kooepracije
posiljanje dodano skp
2026-03-04 20:19:23 +01:00
8 changed files with 57 additions and 9 deletions

View File

@@ -170,10 +170,13 @@ namespace EveryThing.Pages.Invoices
var password = emailSettings["Password"];
var fromEmail = emailSettings["FromEmail"];
var fromName = emailSettings["FromName"];
var bcc = emailSettings["Bcc"];
var mimeMessage = new MimeMessage();
mimeMessage.From.Add(new MailboxAddress(fromName, fromEmail));
mimeMessage.To.Add(new MailboxAddress(invoice.Partner.Title, invoice.Partner.Email));
if (!string.IsNullOrWhiteSpace(bcc))
mimeMessage.Bcc.Add(MailboxAddress.Parse(bcc));
mimeMessage.Subject = invoice.InvoiceNumberFull;
var bodyBuilder = new BodyBuilder

View File

@@ -204,7 +204,7 @@
</div>
}
<table class="table">
<table id="tblOperations" class="table">
<thead>
<tr>
<th class="w-100">Naziv</th>
@@ -477,7 +477,7 @@
<a class="btn btn-xs icon-btn btn-outline-danger borderless" data-state="danger" href="javascript:;" onclick="deleteProjectPartItemOperation(${op.idProjectPartItemOperation}, this);" title="Izbriši"><i class="fas fa-times"></i></a>
</td>
</tr>`;
$('table.table tbody').append(row);
$('#tblOperations tbody').append(row);
$('#selProjectPartItemOperation option[value="' + op.idCodeTableOperation + '"]').remove();
});
$('#selProjectPartItemOperation').trigger('change');
@@ -529,7 +529,7 @@
<a class="btn btn-xs icon-btn btn-outline-danger borderless" data-state="danger" href="javascript:;" onclick="deleteProjectPartItemOperation(${id}, this);" title="Izbriši"><i class="fas fa-times"></i></a>
</td>
</tr>`;
$('table.table tbody').append(row);
$('#tblOperations tbody').append(row);
$('#selProjectPartItemOperation option[value="' + idCodeTableOperation + '"]').remove();
$('#selProjectPartItemOperation').trigger('change');
} else {

View File

@@ -35,6 +35,20 @@
<br/>
@Html.DisplayFor(modelItem => Model.MaterialDimensions)
</td>
<td>
@{
var ops = Model.ProjectPartItemOperation;
var nextOp = ops?.Where(x => !x.Finished).OrderBy(x => x.Order).FirstOrDefault();
}
@if (ops != null && ops.Any() && nextOp == null)
{
<span class="badge badge-success"><i class="fas fa-check"></i>&nbsp;Vse zaključeno</span>
}
else
{
@(nextOp?.Operation?.Title ?? "")
}
</td>
<td class="table-number">
@(Model.NumberOfItems.ToString("0.00", new CultureInfo("sl-SI")))
<br/>

View File

@@ -644,6 +644,9 @@
<br/>
Dimenzije surovca
</th>
<th>
Naslednja operacija
</th>
<th class="table-header-number">
<div data-toggle="tooltip" data-placement="top" title="Število kosov<br/>Število kompletov" data-html="true">
Kos

View File

@@ -91,6 +91,9 @@ namespace EveryThing.Pages.Projects
.ThenInclude(x => x.Material)
.Include(c => c.ProjectPartProjectPartItem)
.ThenInclude(x => x.Item)
.Include(c => c.ProjectPartProjectPartItem)
.ThenInclude(x => x.ProjectPartItemOperation)
.ThenInclude(x => x.Operation)
.Where(x => x.IdProjectFk == id)
.OrderBy(x => x.ProjectPartNumber).ThenBy(x => x.IdProjectPart)
.ToListAsync();
@@ -192,6 +195,8 @@ namespace EveryThing.Pages.Projects
.Include(x => x.Material)
.Include(x => x.ProjectPart)
.ThenInclude(x => x.Project)
.Include(x => x.ProjectPartItemOperation)
.ThenInclude(x => x.Operation)
.First(x => x.IdProjectPartItem == id);
return Partial("DetailsPartItem", item);
@@ -639,14 +644,19 @@ namespace EveryThing.Pages.Projects
if (projectPart != null)
{
foreach (var projectPartItem in _context.ProjectPartItems.Where(x => x.IdProjectPartFk == projectPart.IdProjectPart).ToList())
{
_context.ProjectPartItems.Remove(projectPartItem);
}
_context.ProjectParts.Remove(projectPart);
foreach (var projectPartItem in _context.ProjectPartItems.Where(x => x.IdProjectPartFk == projectPart.IdProjectPart).ToList())
{
var operations = _context.ProjectPartItemOperations
.Where(x => x.IdProjectPartItemFk == projectPartItem.IdProjectPartItem)
.ToList();
_context.ProjectPartItemOperations.RemoveRange(operations);
_context.ProjectPartItems.Remove(projectPartItem);
}
_context.ProjectParts.Remove(projectPart);
_context.SaveChanges();
projectPart.Project = null;
projectPart.ProjectPartProjectPartItem = null;
}
else
{

View File

@@ -21,6 +21,7 @@
</div>
<input id="inpTblMaterialDimensions_@(Model.Item.IdProjectPartItem.ToString())" asp-for="Item.MaterialDimensions" class="form-control" style="width: 100%"/>
</td>
<td class="table-eddit"></td>
<td class="table-eddit table-number-edit">
<input id="inpTblNumberOfItems_@(Model.Item.IdProjectPartItem.ToString())" asp-for="Item.NumberOfItems" class="form-control" style="width: 100%" />
<input id="inpTblNumberOfSets_@(Model.Item.IdProjectPartItem.ToString())" asp-for="Item.NumberOfSets" class="form-control" style="width: 100%" />

View File

@@ -82,6 +82,22 @@
<strong class="font-weight-semibold">@Html.DisplayFor(modelItem => Model.PartItem.NumberOfItems)</strong>
</div>
@if (!string.IsNullOrEmpty(Model.PartItem.ProjectPart.PathOfPlans))
{
<div class="mb-3" style="margin-top: 0 !important; margin-bottom: 0 !important;">
<label style="margin-top: 0 !important; margin-bottom: 0 !important;">Pot načrtov</label>:&nbsp;
<strong class="font-weight-semibold">@Html.DisplayFor(modelItem => Model.PartItem.ProjectPart.PathOfPlans)</strong>
</div>
}
@if (!string.IsNullOrEmpty(Model.PartItem.Note))
{
<div class="mb-3" style="margin-top: 0 !important; margin-bottom: 0 !important;">
<br />
<i class="">@Html.DisplayFor(modelItem => Model.PartItem.Note)</i>
</div>
}
<br/>
<h6>Operacije</h6>

View File

@@ -9,7 +9,8 @@
"Username": "cnc-paradiz@no-reply.si",
"Password": "52svchwokzce#ss",
"FromEmail": "cnc-paradiz@no-reply.si",
"FromName": "CNC - Paradiž"
"FromName": "CNC - Paradiž",
"Bcc": "david.staleker@gmail.com"
},
"Logging": {
"LogLevel": {