Aggiunta in sessione valori temp redis...

This commit is contained in:
Samuele E. Locatelli
2018-10-24 18:30:47 +02:00
parent b8a9f60933
commit 862ea99deb
4 changed files with 162 additions and 8 deletions
+2 -2
View File
@@ -12,7 +12,7 @@
</div>
</div>
<div class="row">
<div class="col">
<div class="col-12">
<ol>
<li><s>cmd x reset e ripartire a fare NUOVO kit</s></li>
<li><s>lettura del barcode</s></li>
@@ -25,7 +25,7 @@
<li>controllo kit completo</li>
<li>comando conferma e crea KIT</li>
<li>lascio filtro OPR/articolo x mostrare ordine (nei 2 modi rosso/verde)</li>
<li>cmd x reset e ripartire a fare NUOVO kit</li>
<li><s>cmd x reset e ripartire a fare NUOVO kit</s></li>
</ol>
<asp:HiddenField ID="hlLastInput" runat="server" />
<asp:Label runat="server" ID="lblOut" CssClass="text-danger" />
+100 -4
View File
@@ -1,5 +1,8 @@
using SteamWare;
using Newtonsoft.Json;
using SteamWare;
using System;
using System.Collections.Generic;
using System.Text;
namespace MoonProAdmin.WebUserControls
{
@@ -26,7 +29,6 @@ namespace MoonProAdmin.WebUserControls
#endregion
#region variabili in sessione
/// <summary>
@@ -128,7 +130,6 @@ namespace MoonProAdmin.WebUserControls
memLayer.ML.setSessionVal(string.Format("codGruppo_{0}", uid), value);
}
}
/// <summary>
/// titolo pagina
/// </summary>
@@ -139,6 +140,90 @@ namespace MoonProAdmin.WebUserControls
return devicesAuthProxy.getPage(Request.Url).Replace(".aspx", "");
}
}
/// <summary>
/// Oggetto KIT in composizione gestito in sessione
/// </summary>
public OrdineProdKit OrdineKit
{
get
{
OrdineProdKit answ;
string serVal = memLayer.ML.StringSessionObj(string.Format("OrdineKit_{0}", uid));
// deserializzo SE C'E'...
if (serVal != "")
{
//var objDeser = memLayer.ML.deserializeVal(serVal);
//answ = (OrdineProdKit)objDeser;
answ = JsonConvert.DeserializeObject<OrdineProdKit>(serVal);
}
else
{
answ = new OrdineProdKit();
}
return answ;
}
set
{
// serializzo...
//string serVal = memLayer.ML.serializeVal(value);
string serVal = JsonConvert.SerializeObject(value);
// salvo
memLayer.ML.setSessionVal(string.Format("OrdineKit_{0}", uid), serVal);
}
}
/// <summary>
/// Aggiunge (in obj OrdineKit) l'ordine coi parametri indicati
/// </summary>
/// <param name="codOrd"></param>
/// <param name="codArt"></param>
/// <param name="descArt"></param>
/// <param name="qta"></param>
/// <returns></returns>
public bool addOrdArt(string codOrd, string codArt, string descArt, int qta)
{
bool answ = false;
var currOrd = OrdineKit;
// creo oggetto articolo
Articolo newArt = new Articolo
{
Codice = codArt,
Descrizione = descArt
};
// creo un nuovo oggetto OrdineArticolo
OrdineProdArt newOrdArt = new OrdineProdArt
{
OrdNum = codOrd,
ArtOrd = newArt,
Qta = qta
};
var orderList = new List<OrdineProdArt>();
// se nullo inizializzo...
if (currOrd == null || currOrd.Codice == null)
{
orderList.Add(newOrdArt);
currOrd = new OrdineProdKit
{
OrdNum = "000000",
Codice = "KIT_UNKNOWN",
Qta = 1,
OrdiniArt = orderList
};
}
else
{
#if true
// se ci fosse riga la cancello...
currOrd.OrdiniArt.Remove(newOrdArt);
#endif
// aggiungo SOLO la riga articolo
currOrd.OrdiniArt.Add(newOrdArt);
}
// salvo ordine...
OrdineKit = currOrd;
answ = true;
return answ;
}
#endregion
/// <summary>
@@ -170,7 +255,7 @@ namespace MoonProAdmin.WebUserControls
public void doUpdate()
{
// aggiorno label...
messOut = lastInput;
messOut = "";
// controllo input (reset/inizio o salva...)
if (lastInput == regExp_KO)
{
@@ -192,6 +277,17 @@ namespace MoonProAdmin.WebUserControls
{
}
//riporto gli ordini caricati...
StringBuilder sb = new StringBuilder();
var currOrd = OrdineKit;
sb.AppendLine(string.Format("OrdNum:{0}, TemplateKIT: {1}, Qta: {2}<br/>", currOrd.OrdNum, currOrd.Codice, currOrd.Qta));
foreach (var item in OrdineKit.OrdiniArt)
{
sb.AppendLine(string.Format("OrdNum:{0}, CodArt: {1}, Descr: {2}, Qta: {3}<br/>", item.OrdNum, item.ArtOrd.Codice, item.ArtOrd.Descrizione, item.Qta));
}
// accodo...
messOut += sb.ToString();
}
private void doReset()