247 lines
5.7 KiB
C#
247 lines
5.7 KiB
C#
using SteamWare;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Web;
|
|
|
|
namespace AppData
|
|
{
|
|
public class utils
|
|
{
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="filePath"></param>
|
|
/// <returns></returns>
|
|
public static string getPath(string filePath)
|
|
{
|
|
string answ = "";
|
|
try
|
|
{
|
|
answ = HttpContext.Current.Server.MapPath(filePath);
|
|
}
|
|
catch (Exception exc)
|
|
{
|
|
logger.lg.scriviLog($"Eccezione in decodifica path in persorso relativo all'app:{Environment.NewLine}{exc}", tipoLog.EXCEPTION);
|
|
}
|
|
return answ;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Classe che rappresenta la richiesta di AZIONI al NESTING
|
|
/// </summary>
|
|
public struct commandRequest
|
|
{
|
|
/// <summary>
|
|
/// ID del processo richiesto (generato in fase di import)
|
|
/// </summary>
|
|
public int BatchID { get; set; }
|
|
/// <summary>
|
|
/// Richiesta per il nesting: DoNesting / HaltNesting
|
|
/// </summary>
|
|
public string ActionRequested { get; set; }
|
|
}
|
|
/// <summary>
|
|
/// Classe che rappresenta la richiesta di processing di NESTING da inserire in REDIS
|
|
/// </summary>
|
|
public struct batchRequest
|
|
{
|
|
/// <summary>
|
|
/// ID del processo richiesto (generato in fase di import)
|
|
/// </summary>
|
|
public int BatchID { get; set; }
|
|
/// <summary>
|
|
/// Elenco ordini richeisti da processare / nestare
|
|
/// </summary>
|
|
public List<Order> Orders { get; set; }
|
|
}
|
|
/// <summary>
|
|
/// Struttura Ordine passata a NESTING
|
|
/// </summary>
|
|
public struct Order
|
|
{
|
|
/// <summary>
|
|
/// Cod ordine di NKC
|
|
/// </summary>
|
|
public string OrderCod { get; set; }
|
|
/// <summary>
|
|
/// Codice ordine esterno da cliente (HFA)
|
|
/// </summary>
|
|
public string OrderExtCode { get; set; }
|
|
/// <summary>
|
|
/// Plant di destinazione
|
|
/// </summary>
|
|
public string DestPlant { get; set; }
|
|
/// <summary>
|
|
/// Quantità di oggetti da produrre x singola riga di ordine
|
|
/// </summary>
|
|
public int OrderQty { get; set; }
|
|
/// <summary>
|
|
/// Elenco Items da produrre x ordine
|
|
/// </summary>
|
|
public List<Item> Items { get; set; }
|
|
}
|
|
/// <summary>
|
|
/// Struttura Item passata a NESTING
|
|
/// </summary>
|
|
public struct Item
|
|
{
|
|
/// <summary>
|
|
/// Cod ITEM di NKC
|
|
/// </summary>
|
|
public int ItemId { get; set; }
|
|
/// <summary>
|
|
/// Codice ITEM esterno da cliente (HFA)
|
|
/// </summary>
|
|
public string ItemExtCode { get; set; }
|
|
/// <summary>
|
|
/// Quantità di Item per SINGOLO ordine
|
|
/// </summary>
|
|
public int ItemrQty { get; set; }
|
|
/// <summary>
|
|
/// ID del materiale dell'item
|
|
/// </summary>
|
|
public int MatID { get; set; }
|
|
/// <summary>
|
|
/// Path del disegno CAD dell'item da produrre x NESTING
|
|
/// </summary>
|
|
public string CadFilePath { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Classe che rappresenta stato ordine ricevutovia REDIS da NESTING
|
|
/// </summary>
|
|
public class orderStatus
|
|
{
|
|
/// <summary>
|
|
/// ID del processo di Nesting in corso (generato in fase di import)
|
|
/// </summary>
|
|
public string BatchID { get; set; }
|
|
/// <summary>
|
|
/// Status del procesos di nesting
|
|
/// </summary>
|
|
public procStatus ProcessStatus { get; set; }
|
|
/// <summary>
|
|
/// Note libere del nesting
|
|
/// </summary>
|
|
public string ProcessNotes { get; set; }
|
|
/// <summary>
|
|
/// Tempo di processing del Nesting espresso in Secondi
|
|
/// </summary>
|
|
public double ProcessingRuntime { get; set; }
|
|
/// <summary>
|
|
/// Tempo STIMATO di taglio calcolato dal Nesting espresso in Secondi
|
|
/// </summary>
|
|
public double EstimatedWorktime { get; set; }
|
|
}
|
|
/// <summary>
|
|
/// Enum degli stati ammessi epr il Nesting
|
|
/// </summary>
|
|
public enum procStatus
|
|
{
|
|
waiting = 0,
|
|
running,
|
|
error,
|
|
completed,
|
|
aborted,
|
|
accepted,
|
|
refused
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Valori decodificati
|
|
/// </summary>
|
|
public class decodedData
|
|
{
|
|
/// <summary>
|
|
/// Tipo codice decodificato
|
|
/// </summary>
|
|
public codeType codeType { get; set; } = codeType.UNK;
|
|
/// <summary>
|
|
/// Codice decodificato
|
|
/// </summary>
|
|
public string code { get; set; } = "";
|
|
/// <summary>
|
|
/// Codice decodificato in formato INT
|
|
/// </summary>
|
|
public int codeInt { get; set; } = 0;
|
|
/// <summary>
|
|
/// Descrizione associata
|
|
/// </summary>
|
|
public string description { get; set; } = "";
|
|
/// <summary>
|
|
/// Dato letto RAW
|
|
/// </summary>
|
|
public string rawData { get; set; } = "";
|
|
}
|
|
/// <summary>
|
|
/// Tipi di barcode gestiti
|
|
/// </summary>
|
|
public enum codeType
|
|
{
|
|
UNK = 0,
|
|
Item,
|
|
ItemGeneric,
|
|
Material,
|
|
Sheet,
|
|
Stack,
|
|
Batch,
|
|
Cart,
|
|
Bin,
|
|
BinProcessed,
|
|
SecScreen
|
|
}
|
|
/// <summary>
|
|
/// tipologia di report (FILE rdlc) gestito in stampa...
|
|
/// </summary>
|
|
public enum reportRichiesto
|
|
{
|
|
cartLabel,
|
|
paintLabelPre,
|
|
paintLabelPost,
|
|
partLabel,
|
|
stackLabel
|
|
}
|
|
/// <summary>
|
|
/// tipologia di DOCUMENTO gestito in stampa...
|
|
/// </summary>
|
|
public enum tipoDocumento
|
|
{
|
|
/// <summary>
|
|
/// Etichetta per un BIN (pre esecuzione compito, es verniciatura)
|
|
/// </summary>
|
|
docBinPre,
|
|
/// <summary>
|
|
/// Etichetta per un BIN (POST esecuzione compito, es verniciatura)
|
|
/// </summary>
|
|
docBinPost,
|
|
/// <summary>
|
|
/// Etichetta per un CART
|
|
/// </summary>
|
|
docCart,
|
|
/// <summary>
|
|
/// Docuemtno per singolo ITEM:
|
|
/// - QR code
|
|
/// - num cart/bin
|
|
/// - T/P/* (se va fatto qualcosa di speciale)
|
|
/// - codice dmtx leggibile (es IT000023) su NUOVA riga
|
|
/// </summary>
|
|
docPart,
|
|
/// <summary>
|
|
/// doc per STACK
|
|
/// </summary>
|
|
docStack,
|
|
/// <summary>
|
|
/// NON DEFINITO
|
|
/// </summary>
|
|
docND
|
|
}
|
|
//public enum tipoSelettore
|
|
//{
|
|
// cdc,
|
|
// cellaMagazzino,
|
|
// magazzino,
|
|
// UDC_byPart
|
|
//}
|