diff --git a/SHERPA.BBM.UI/Pages/Docs.razor b/SHERPA.BBM.UI/Pages/Docs.razor
index f8ed1f9..c4a9ce5 100644
--- a/SHERPA.BBM.UI/Pages/Docs.razor
+++ b/SHERPA.BBM.UI/Pages/Docs.razor
@@ -65,11 +65,11 @@
|
+ Attivo |
+ Tipo |
Cod |
Descript |
- Id |
Data ins |
- Type |
|
@@ -78,11 +78,11 @@
{
| |
+ SetActive(record)" /> |
+ @record.DocType |
@record.CodDoc |
@record.Descript |
- @record.DocId |
@record.DataIns.ToString("yyyy.MM.dd HH:mm") |
- @record.DocType |
|
}
@@ -224,6 +224,12 @@
currItem = currRecord;
}
+ protected void SetActive(SHERPA.BBM.DatabaseModels.DocsModel currRecord)
+ {
+ // imposto ad attivo SOLO il DOC corrente tra quelli della negoziazione
+ BBMService.DocSetActive(currRecord);
+ }
+
protected void ShowResources(SHERPA.BBM.DatabaseModels.DocsModel currRecord)
{
// rimando...
diff --git a/SHERPA.BBM/Controllers/BBMController.cs b/SHERPA.BBM/Controllers/BBMController.cs
index 1fec69b..3ff1726 100644
--- a/SHERPA.BBM/Controllers/BBMController.cs
+++ b/SHERPA.BBM/Controllers/BBMController.cs
@@ -293,7 +293,7 @@ namespace SHERPA.BBM.Controllers
{
var currData = dbCtx
.DbSetDocs
- .Where(x => x.CodDoc == updItem.CodDoc)
+ .Where(x => x.DocId == updItem.DocId)
.FirstOrDefault();
if (currData != null)
{
@@ -313,6 +313,38 @@ namespace SHERPA.BBM.Controllers
return done;
}
+ ///
+ /// Aggiorna un item Doc come ACTIVE (e inactive gli altri della stessa negoziazione)
+ ///
+ ///
+ ///
+ public bool DocSetActive(DatabaseModels.DocsModel updItem)
+ {
+ bool done = false;
+ try
+ {
+ var currData = dbCtx
+ .DbSetDocs
+ .Where(x => x.DocId == updItem.DocId)
+ .FirstOrDefault()
+ .IsActive=true;
+
+ var otherData = dbCtx
+ .DbSetDocs
+ .Where(x => x.NegotiationId == updItem.NegotiationId && x.DocId != updItem.DocId)
+ .ToList();
+ foreach (var item in otherData)
+ {
+ item.IsActive = false;
+ }
+ dbCtx.SaveChanges();
+ done = true;
+ }
+ catch
+ { }
+ return done;
+ }
+
///
/// Aggiunge un nuovo item
///