OK delete planned items

This commit is contained in:
Samuele Locatelli
2021-06-24 11:51:05 +02:00
parent 3f8f649d16
commit a0ead11b3f
11 changed files with 116 additions and 81 deletions
+23
View File
@@ -458,6 +458,29 @@ namespace GWMS.Data.Controllers
return done;
}
/// <summary>
/// Elimina un item WeekPlan
/// </summary>
/// <param name="selRecord"></param>
/// <returns></returns>
public bool WeekPlanDelete(WeekPlanModel selRecord)
{
bool done = false;
try
{
var item2del = dbCtx
.DbSetPlantSupplWeekPlan
.Where(x => x.WeekPlanId == selRecord.WeekPlanId)
.FirstOrDefault();
dbCtx.DbSetPlantSupplWeekPlan.Remove(item2del);
dbCtx.SaveChanges();
done = true;
}
catch (Exception exc)
{ }
return done;
}
/// <summary>
/// Aggiorna un item WeekPlan
/// </summary>
+71 -47
View File
@@ -9,6 +9,7 @@
@inject MessageService AppMService
@inject GWMSDataService DataService
@inject IConfiguration Configuration
@inject IJSRuntime JSRuntime
<div class="card">
<div class="card-header bg-info text-light">
@@ -18,43 +19,7 @@
<EditForm Model="@_currItem">
<DataAnnotationsValidator />
<div class="row">
<div class="col-9 col-lg-10">
<div class="row mb-2">
<div class="col-4">
<div class="input-group input-group-sm">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-puzzle-piece"></i></span>
</div>
<select @bind="_currItem.DayNum" class="form-control" title="Giorno">
@foreach (var itemVal in Enum.GetValues(typeof(DayOfWeek)))
{
<option>@itemVal</option>
}
</select>
</div>
</div>
<div class="col-4">
<div class="input-group input-group-sm">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-user"></i></span>
</div>
<select @bind="_currItem.DeliveryHour" class="form-control" title="Ora">
@for (int iHour = 0; iHour < 24; iHour++)
{
<option>@iHour</option>
}
</select>
</div>
</div>
<div class="col-4">
<div class="input-group input-group-sm">
<div class="input-group-prepend">
<span class="input-group-text"><i class="far fa-user"></i></span>
</div>
<InputText @bind-Value="_currItem.Note" class="form-control" title="Qty" />
</div>
</div>
</div>
<div class="col-10 col-lg-11">
<div class="row">
<div class="col-4">
<div class="input-group">
@@ -114,18 +79,61 @@
</div>
</div>
</div>
<div class="row mt-2">
<div class="col-2">
<div class="input-group input-group-sm">
<div class="input-group-prepend">
<span class="input-group-text">
<i class="fas fa-calendar-day"></i>
</span>
</div>
<select @bind="_currItem.DayNum" class="form-control" title="Giorno">
@foreach (var itemVal in Enum.GetValues(typeof(DayOfWeek)))
{
<option>@itemVal</option>
}
</select>
</div>
</div>
<div class="col-2">
<div class="input-group input-group-sm">
<div class="input-group-prepend">
<span class="input-group-text">
<i class="far fa-clock"></i>
</span>
</div>
<select @bind="_currItem.DeliveryHour" class="form-control" title="Ora">
@for (int iHour = 0; iHour < 24; iHour++)
{
<option>@iHour</option>
}
</select>
</div>
</div>
<div class="col-4">
<div class="input-group input-group-sm">
<div class="input-group-prepend">
<span class="input-group-text">
<i class="far fa-sticky-note"></i>
</span>
</div>
<InputText @bind-Value="_currItem.Note" class="form-control" title="Qty" />
</div>
</div>
<div class="col-2">
@if (showSave)
{
<button type="button" class="btn btn-sm btn-outline-success btn-block" value="Save" @onclick="saveUpdate">Save <i class="far fa-save"></i></button>
}
</div>
<div class="col-2">
<button type="button" class="btn btn-sm btn-outline-warning btn-block" value="Cancel" @onclick="cancelUpdate">Cancel <i class="fas fa-ban"></i></button>
</div>
</div>
</div>
<div class="col-3 col-lg-2">
<div class="mb-2">
@if (showSave)
{
<button type="button" class="btn btn-sm btn-outline-success btn-block" value="Save" @onclick="saveUpdate">Save <i class="far fa-save"></i></button>
}
</div>
<div>
<button type="button" class="btn btn-sm btn-outline-warning btn-block" value="Cancel" @onclick="cancelUpdate">Cancel <i class="fas fa-ban"></i></button>
</div>
<div class="col-2 col-lg-1">
<button type="button" class="btn btn-sm btn-danger btn-block" value="Delete" @onclick="deleteRecord">Delete <i class="fas fa-trash"></i></button>
</div>
</div>
</EditForm>
@@ -196,6 +204,22 @@
}
}
private async Task deleteRecord()
{
if (!await JSRuntime.InvokeAsync<bool>("confirm", $"Sicuro di voler eliminare la consegna selezionata??"))
return;
if (_currItem != null)
{
DataService.WeekPlanDelete(_currItem);
await DataUpdated.InvokeAsync(1);
}
else
{
Console.WriteLine("User null!");
}
}
private async Task cancelUpdate()
{
await DataReset.InvokeAsync(0);
+15
View File
@@ -299,6 +299,21 @@ namespace GWMS.UI.Data
}
}
public async void WeekPlanDelete(WeekPlanModel currItem)
{
try
{
//dbController.ResetController();
dbController.WeekPlanDelete(currItem);
string cacheKey = $"DATA:WEEKPLAN:List";
var redisDataList = Encoding.UTF8.GetBytes("");
await distributedCache.SetAsync(cacheKey, redisDataList, cacheOpt(true));
}
catch
{
}
}
public async Task<List<WeekPlanModel>> WeekPlanGet()
{
List<WeekPlanModel> dbResult = new List<WeekPlanModel>();
+4 -31
View File
@@ -11,7 +11,7 @@ using System.Threading.Tasks;
namespace GWMS.UI.Pages
{
public partial class WeekPlan : ComponentBase, IDisposable
public partial class WeekPlan : ComponentBase
{
#region Private Fields
@@ -182,28 +182,18 @@ namespace GWMS.UI.Pages
protected void EditRecord(int WeekPlanId)
{
currRecord = null;
var findRecord = ListRecords
.Where(x => x.WeekPlanId == WeekPlanId)
.FirstOrDefault();
currRecord = findRecord;
}
protected void ForceReload(int newNum)
{
numRecord = newNum;
}
protected void ForceReloadPage(int newNum)
{
currPage = newNum;
}
protected override async Task OnInitializedAsync()
{
AppMService.ShowSearch = false;
AppMService.PageName = "Planner Consegne";
AppMService.PageIcon = "fas fa-calendar pr-2";
AppMService.EA_SearchUpdated += OnSeachUpdated;
await ReloadAllData();
}
@@ -215,10 +205,11 @@ namespace GWMS.UI.Pages
await ReloadData();
}
protected void ResetData()
protected async Task ResetData()
{
DataService.rollBackEdit(currRecord);
currRecord = null;
await ReloadData();
}
protected void Select(WeekPlanModel selRecord)
@@ -248,23 +239,5 @@ namespace GWMS.UI.Pages
}
#endregion Protected Methods
#region Public Methods
public void Dispose()
{
AppMService.EA_SearchUpdated -= OnSeachUpdated;
}
public async void OnSeachUpdated()
{
await InvokeAsync(() =>
{
Task task = UpdateData();
StateHasChanged();
});
}
#endregion Public Methods
}
}
+1 -1
View File
@@ -1,5 +1,5 @@
@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');
@import url('fonts.min.css');
@import url('fonts.css');
h1,
h2,
h3,
+1 -1
View File
@@ -1,5 +1,5 @@
@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');
@import url('fonts.min.css');
@import url('fonts.css');
h1, h2, h3, h4, h5, h6, b, display-1, display-2, display-3, display-4 {
/*font-family: 'Roboto', sans-serif;*/
+1 -1
View File
@@ -1 +1 @@
@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');@import url('fonts.min.css');h1,h2,h3,h4,h5,h6,b,display-1,display-2,display-3,display-4{font-family:'Lato',sans-serif;}html,body{font-family:'Roboto Condensed',sans-serif;}a,.btn-link{color:#0366d6;}.btn-primary{color:#fff;background-color:#1b6ec2;border-color:#1861ac;}.content{padding-top:1.1rem;}.valid.modified:not([type=checkbox]){outline:1px solid #26b050;}.invalid{outline:1px solid #f00;}.validation-message{color:#f00;}#blazor-error-ui{background:#ffffe0;bottom:0;box-shadow:0 -1px 2px rgba(0,0,0,.2);display:none;left:0;padding:.6rem 1.25rem .7rem 1.25rem;position:fixed;width:100%;z-index:1000;}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem;}.shortcuts{text-align:center;}.shortcuts .shortcut-icon{font-size:2rem;}.shortcuts .shortcut{min-width:9rem;min-height:5rem;display:inline-block;padding:.66666667rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut-sm{min-width:4.5rem;min-height:3rem;display:inline-block;padding:.25rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut-sm .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut-sm:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut-sm:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut:hover .shortcut-icon{color:#c93;}.shortcuts .shortcut-sm:hover .shortcut-icon{color:#666;}.shortcuts .shortcut-label{display:block;margin-top:.75em;font-weight:400;color:#666;}@media(max-width:992px){.shortcuts .shortcut{min-width:8rem;min-height:4rem;}}
@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');@import url('fonts.css');h1,h2,h3,h4,h5,h6,b,display-1,display-2,display-3,display-4{font-family:'Lato',sans-serif;}html,body{font-family:'Roboto Condensed',sans-serif;}a,.btn-link{color:#0366d6;}.btn-primary{color:#fff;background-color:#1b6ec2;border-color:#1861ac;}.content{padding-top:1.1rem;}.valid.modified:not([type=checkbox]){outline:1px solid #26b050;}.invalid{outline:1px solid #f00;}.validation-message{color:#f00;}#blazor-error-ui{background:#ffffe0;bottom:0;box-shadow:0 -1px 2px rgba(0,0,0,.2);display:none;left:0;padding:.6rem 1.25rem .7rem 1.25rem;position:fixed;width:100%;z-index:1000;}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem;}.shortcuts{text-align:center;}.shortcuts .shortcut-icon{font-size:2rem;}.shortcuts .shortcut{min-width:9rem;min-height:5rem;display:inline-block;padding:.66666667rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut-sm{min-width:4.5rem;min-height:3rem;display:inline-block;padding:.25rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut-sm .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut-sm:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut-sm:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut:hover .shortcut-icon{color:#c93;}.shortcuts .shortcut-sm:hover .shortcut-icon{color:#666;}.shortcuts .shortcut-label{display:block;margin-top:.75em;font-weight:400;color:#666;}@media(max-width:992px){.shortcuts .shortcut{min-width:8rem;min-height:4rem;}}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB