Merge branch 'develop' into SDK
This commit is contained in:
+144
-1
@@ -1,4 +1,5 @@
|
||||
using Newtonsoft.Json;
|
||||
using MongoDB.Driver;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Converters;
|
||||
using NKC_SDK;
|
||||
using SteamWare;
|
||||
@@ -12,6 +13,148 @@ namespace AppData
|
||||
/// </summary>
|
||||
public class ComLib
|
||||
{
|
||||
#region Gestione persistenza risposte via REST da NESTING
|
||||
|
||||
/// <summary>
|
||||
/// Database corrente MongoDB
|
||||
/// </summary>
|
||||
IMongoDatabase database;
|
||||
/// <summary>
|
||||
/// Init classe ComLib
|
||||
/// </summary>
|
||||
public ComLib()
|
||||
{
|
||||
database = memLayer.ML.getMongoDatabase("NKC");
|
||||
}
|
||||
/// <summary>
|
||||
/// Classe impiego sstatico ComLib...
|
||||
/// </summary>
|
||||
public static ComLib man = new ComLib();
|
||||
|
||||
/// <summary>
|
||||
/// Salva una risposta ricevuta x STIMA
|
||||
/// </summary>
|
||||
/// <param name="nestAnsw">Stringa della risposta JSON ricevuta dal nesting</param>
|
||||
/// <returns></returns>
|
||||
public bool saveEstAnsw(nestReplyBatchInitial nestAnsw)
|
||||
{
|
||||
bool answ = false;
|
||||
try
|
||||
{
|
||||
// definisco filtro
|
||||
var filtBuilder = Builders<nestReplyBatchInitial>.Filter;
|
||||
var filter = filtBuilder.Eq<int>("BatchID", nestAnsw.BatchID);
|
||||
var collRawData = database.GetCollection<nestReplyBatchInitial>("EstimationArchive");
|
||||
// elimino old
|
||||
collRawData.DeleteMany(filter);
|
||||
// aggiungo
|
||||
collRawData.InsertOne(nestAnsw);
|
||||
|
||||
answ = true;
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
/// <summary>
|
||||
/// Salva una risposta ricevuta x NESTING
|
||||
/// </summary>
|
||||
/// <param name="nestAnsw">Stringa della risposta JSON ricevuta dal nesting</param>
|
||||
/// <returns></returns>
|
||||
public bool saveNestAnsw(nestReplyBatchFinal nestAnsw)
|
||||
{
|
||||
bool answ = false;
|
||||
try
|
||||
{
|
||||
// definisco filtro
|
||||
var filtBuilder = Builders<nestReplyBatchFinal>.Filter;
|
||||
var filter = filtBuilder.Eq<int>("BatchID", nestAnsw.BatchID);
|
||||
var collRawData = database.GetCollection<nestReplyBatchFinal>("NestingArchive");
|
||||
// elimino old
|
||||
collRawData.DeleteMany(filter);
|
||||
// aggiungo
|
||||
collRawData.InsertOne(nestAnsw);
|
||||
answ = true;
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
/// <summary>
|
||||
/// Recupero risposta stima salvata
|
||||
/// </summary>
|
||||
/// <param name="BatchID"></param>
|
||||
/// <returns></returns>
|
||||
public nestReplyBatchInitial geEstAnsw(int BatchID)
|
||||
{
|
||||
nestReplyBatchInitial answ = null;
|
||||
try
|
||||
{
|
||||
// definisco filtro
|
||||
var filtBuilder = Builders<nestReplyBatchInitial>.Filter;
|
||||
var filter = filtBuilder.Eq<int>("BatchID", BatchID);
|
||||
var collRawData = database.GetCollection<nestReplyBatchInitial>("EstimationArchive");
|
||||
// recupero
|
||||
answ = collRawData.Find(filter).FirstOrDefault<nestReplyBatchInitial>();
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
/// <summary>
|
||||
/// Recupero risposta nesting salvata
|
||||
/// </summary>
|
||||
/// <param name="BatchID"></param>
|
||||
/// <returns></returns>
|
||||
public nestReplyBatchFinal getNestAnsw(int BatchID)
|
||||
{
|
||||
nestReplyBatchFinal answ = null;
|
||||
try
|
||||
{
|
||||
// definisco filtro
|
||||
var filtBuilder = Builders<nestReplyBatchFinal>.Filter;
|
||||
var filter = filtBuilder.Eq<int>("BatchID", BatchID);
|
||||
var collRawData = database.GetCollection<nestReplyBatchFinal>("NestingArchive");
|
||||
// recupero
|
||||
answ = collRawData.Find(filter).FirstOrDefault<nestReplyBatchFinal>();
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
|
||||
//public object getEstAnsw(int BatchId)
|
||||
//{
|
||||
// List<nestReplyBatchFinal> answ = null;
|
||||
|
||||
// var collNAA = database.GetCollection<nestReplyBatchFinal>("NestAnswArchive");
|
||||
// // oggetto filtraggio x nest answ
|
||||
// var builderNAA = Builders<nestReplyBatchFinal>.Filter;
|
||||
// var filtBatchId = builderNAA.Eq(u => u.BatchID, BatchId);
|
||||
|
||||
// var datiCorrenti = collNAA.Find(filtBatchId);
|
||||
// foreach (var item in datiCorrenti)
|
||||
// {
|
||||
|
||||
// }
|
||||
// return answ;
|
||||
//}
|
||||
|
||||
/// <summary>
|
||||
/// restitusice ultima chiamata REST registrata su REDIS
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static string lastRestAnsw()
|
||||
{
|
||||
string answ = "";
|
||||
// recupero ultima call
|
||||
string redKey = $"{ComLib.redNestAnsw}:LAST_CALL";
|
||||
answ = memLayer.ML.getRSV(redKey);
|
||||
return answ;
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// Wrapper traduzione termini
|
||||
|
||||
@@ -162,6 +162,31 @@ namespace NKC_SDK
|
||||
/// </summary>
|
||||
public double EstimatedWorktime { get; set; } = 0;
|
||||
/// <summary>
|
||||
/// Superficie WORK (lavorata/tagliata) del foglio lavorato (= somma area dei pezzi disposti)
|
||||
/// </summary>
|
||||
public double SurfaceWork { get; set; } = 0;
|
||||
/// <summary>
|
||||
/// Superficie totale del foglio lavorato (= materiale)
|
||||
/// </summary>
|
||||
public double SurfaceTotal { get; set; } = 1;
|
||||
/// <summary>
|
||||
/// Resa (OEE) dell'impiego del materiale
|
||||
/// </summary>
|
||||
public double SurfaceOEE
|
||||
{
|
||||
get
|
||||
{
|
||||
double answ = 0;
|
||||
try
|
||||
{
|
||||
answ = SurfaceWork / SurfaceTotal;
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Programma x printing
|
||||
/// </summary>
|
||||
public string PrintProgram { get; set; } = "";
|
||||
|
||||
@@ -133,6 +133,10 @@ namespace NKC_WF.Controllers
|
||||
int bStatus = 0;
|
||||
// deserializzo come BatchreqIniziale (stima)
|
||||
nestReplyBatchInitial rispStima = JsonConvert.DeserializeObject<nestReplyBatchInitial>(content);
|
||||
|
||||
// 2020.01.16 salvo su mongoDb la risposta...
|
||||
ComLib.man.saveEstAnsw(rispStima);
|
||||
|
||||
// recupero info sul batch /KIT specifico x capire se sia di tipo "validation"
|
||||
bool isValidation = false;
|
||||
var tabOrd = DataLayer.man.taOL.getByBatch(rispStima.BatchID);
|
||||
@@ -222,6 +226,10 @@ namespace NKC_WF.Controllers
|
||||
{
|
||||
// deserializzo come BatchreqFinale
|
||||
nestReplyBatchFinal rispNest = JsonConvert.DeserializeObject<nestReplyBatchFinal>(content);
|
||||
|
||||
// 2020.01.16 salvo su mongoDb la risposta...
|
||||
ComLib.man.saveNestAnsw(rispNest);
|
||||
|
||||
// calcolo status del batch...
|
||||
int bStatus = 2;
|
||||
switch (rispNest.ProcessStatus)
|
||||
|
||||
@@ -69,6 +69,8 @@
|
||||
<add key="RedisConn" value="nkcredis.steamware.net,abortConnect=false,ssl=false,password=nkc.password"/>
|
||||
<add key="RedisConnAdmin" value="nkcredis.steamware.net,abortConnect=false,ssl=false,password=nkc.password,allowAdmin=true"/>
|
||||
<add key="redisDb" value="0"/>
|
||||
<!--MongoDB-->
|
||||
<add key="mdbConnString" value="mongodb://W2019-MONGODB:27017"/>
|
||||
<!--Configurazioni DB per classi referenziate AppData e Steamware dll-->
|
||||
<add key="NKC_WFConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=sa;Password=keyhammer16;"/>
|
||||
<add key="DbConfConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=sa;Password=keyhammer16;"/>
|
||||
|
||||
@@ -1,9 +1,14 @@
|
||||
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_devUtils.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_devUtils" %>
|
||||
<div class="shortcuts">
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="col">
|
||||
<asp:LinkButton runat="server" ID="lbtResetStackBuild" class="shortcut" OnClick="lbtResetStackBuild_Click" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di preparazione Stacks?")'> <i class="fa fa-database shortcut-icon"></i><span class="shortcut-label"><b>Reset</b><br /> Stack building</span> </asp:LinkButton>
|
||||
<asp:LinkButton runat="server" ID="lbtResetNest" class="shortcut" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di Nesting? I Batch torneranno come appena importati e PRIMA di ogni chiamata al NESTING...")' OnClick="checkFixOds"> <i class="fa fa-file-image-o shortcut-icon"></i><span class="shortcut-label"><b>Reset</b><br /> Nesting Calls</span> </asp:LinkButton>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<asp:LinkButton runat="server" ID="lbtResetNest" class="shortcut" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di Nesting? I Batch torneranno come appena importati e PRIMA di ogni chiamata al NESTING...")' OnClick="lbtResetNest_Click"> <i class="fa fa-file-image-o shortcut-icon"></i><span class="shortcut-label"><b>Reset</b><br /> Nesting Calls</span> </asp:LinkButton>
|
||||
</div>
|
||||
<div class="col">
|
||||
<asp:LinkButton runat="server" ID="lbtSaveLastAnsw" class="shortcut" OnClientClick='return confirm("Sicuro di voler salvare ultima risposta NESTING?")' OnClick="lbtSaveLastAnsw_Click" > <i class="fa fa-file-image-o shortcut-icon"></i><span class="shortcut-label"><b>SAVE</b><br /> LAST Call</span> </asp:LinkButton>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
using AppData;
|
||||
using Newtonsoft.Json;
|
||||
using NKC_SDK;
|
||||
using System;
|
||||
|
||||
namespace NKC_WF.WebUserControls
|
||||
@@ -19,5 +21,35 @@ namespace NKC_WF.WebUserControls
|
||||
{
|
||||
DataLayer.man.taBL.resetNesting(-9999);
|
||||
}
|
||||
|
||||
protected void lbtSaveLastAnsw_Click(object sender, EventArgs e)
|
||||
{
|
||||
string content = ComLib.lastRestAnsw();
|
||||
|
||||
// deserializzo.
|
||||
baseNestAnsw batchProcAnsw = JsonConvert.DeserializeObject<baseNestAnsw>(content);
|
||||
|
||||
// se non nullo...
|
||||
if (batchProcAnsw != null)
|
||||
{
|
||||
if (batchProcAnsw.OrderType == oType.BatchRequest)
|
||||
{
|
||||
if (batchProcAnsw.ProcType == 1)
|
||||
{
|
||||
// deserializzo come BatchreqIniziale (stima)
|
||||
nestReplyBatchInitial rispStima = JsonConvert.DeserializeObject<nestReplyBatchInitial>(content);
|
||||
// 2020.01.16 salvo su mongoDb la risposta...
|
||||
ComLib.man.saveEstAnsw(rispStima);
|
||||
}
|
||||
else
|
||||
{
|
||||
// deserializzo come BatchreqFinale
|
||||
nestReplyBatchFinal rispNest = JsonConvert.DeserializeObject<nestReplyBatchFinal>(content);
|
||||
// 2020.01.16 salvo su mongoDb la risposta...
|
||||
ComLib.man.saveNestAnsw(rispNest);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -31,5 +31,14 @@ namespace NKC_WF.WebUserControls
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton lbtResetNest;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lbtSaveLastAnsw.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton lbtSaveLastAnsw;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user