public static decimal GetMargineOperativo(SALDto sal, CommessaDto commessa) { try { if (commessa != null) { decimal margineOperativo = 0; var statoCommessa = commessa.Stato; if (statoCommessa == Tipi.StatoCommessa.Chiusa.ToString()) { var importoLavori = UtilityValidation.GetDecimal(commessa.Importo); var totaleFattureAcquisto = UtilityValidation.GetDecimal(sal.TotaleFattureAcquisto); margineOperativo = importoLavori - totaleFattureAcquisto; } else { var data = UtilityValidation.GetData(sal.Data); margineOperativo = GetMargineOperativo(commessa, data); } return(margineOperativo); } } catch (Exception ex) { UtilityError.Write(ex); } return(0); }
public static decimal GetTotaleIncassi(SALDto sal, CommessaDto commessa) { try { if (commessa != null) { decimal totale = 0; var statoCommessa = commessa.Stato; if (statoCommessa == Tipi.StatoCommessa.Chiusa.ToString()) { totale = UtilityValidation.GetDecimal(sal.TotaleIncassi); } else { var data = UtilityValidation.GetData(sal.Data); var committenti = commessa.Committentes; totale = GetTotaleIncassi(committenti, data); } return(totale); } } catch (Exception ex) { UtilityError.Write(ex); } return(0); }
public static decimal GetTotaleFattureAcquisto(SALDto sal, CommessaDto commessa) { try { if (commessa != null) { decimal totale = 0; var statoCommessa = commessa.Stato; if (statoCommessa == Tipi.StatoCommessa.Chiusa.ToString()) { totale = UtilityValidation.GetDecimal(sal.TotaleFattureAcquisto); } else { var data = UtilityValidation.GetData(sal.Data); var fornitori = commessa.Fornitores; totale = GetTotaleFattureAcquisto(fornitori, data); } return(totale); } } catch (Exception ex) { UtilityError.Write(ex); } return(0); }
public static string GetStatoDescrizione(SALDto sal, CommessaDto commessa) { try { var statoDescrizione = "N/D"; if (sal != null) { if (commessa != null) { var statoCommessa = commessa.Stato; if (statoCommessa == Tipi.StatoCommessa.Chiusa.ToString()) { statoDescrizione = sal.Stato; } else { var data = UtilityValidation.GetData(sal.Data); var importoLavori = UtilityValidation.GetDecimal(commessa.Importo); var margine = UtilityValidation.GetDecimal(commessa.Margine); var margineOperativo = GetMargineOperativo(commessa, data); var statoSAL = GetStato(commessa, data); var _statoDescrizione = GetStatoDescrizione(importoLavori, margine, margineOperativo, statoSAL); statoDescrizione = _statoDescrizione.ToString(); } } } return(statoDescrizione); } catch (Exception ex) { UtilityError.Write(ex); } return(null); }
private void BindViewTotali(SALDto obj) { try { if (obj != null) { var viewModel = new Commessa.CommessaViewModel(); var commessa = viewModel.ReadCommessa(obj); if (commessa != null) { var data = UtilityValidation.GetData(editData.Value); var fornitori = commessa.Fornitores; var committenti = commessa.Committentes; var totaleFattureAcquisto = BusinessLogic.SAL.GetTotaleFattureAcquisto(fornitori, data); var totaleFattureVendita = BusinessLogic.SAL.GetTotaleFattureVendita(committenti, data); var totalePagamenti = BusinessLogic.SAL.GetTotalePagamenti(fornitori, data); var totaleIncassi = BusinessLogic.SAL.GetTotaleIncassi(committenti, data); var statoDescrizione = BusinessLogic.SAL.GetStatoDescrizione(obj, commessa); editStato.Value = statoDescrizione; editTotaleFattureAcquisto.Value = totaleFattureAcquisto; editTotaleFattureVendita.Value = totaleFattureVendita; editTotalePagamenti.Value = totalePagamenti; editTotaleIncassi.Value = totaleIncassi; } } } catch (Exception ex) { UtilityError.Write(ex); } }
public static string GetDenominazione(SALDto sal, CommessaDto commessa) { try { var denominazione = "SAL " + GetCodifica(sal) + " | COMMESSA " + BusinessLogic.Commessa.GetCodifica(commessa); return(denominazione); } catch (Exception ex) { UtilityError.Write(ex); } return(null); }
public CommessaDto ReadCommessa(SALDto sal) { try { var wcf = new WcfService.Service(); var commessaId = sal.CommessaId; var obj = wcf.ReadCommessa(commessaId, true); return(obj); } catch (Exception ex) { UtilityError.Write(ex); } return(null); }
public static string GetCodifica(SALDto sal) { try { if (sal != null) { string codfica = "SAL " + sal.Codice + " DEL " + UtilityValidation.GetDataND(sal.Data); return(codfica); } } catch (Exception ex) { UtilityError.Write(ex); } return(null); }
public static string GetDenominazione(string codice, DateTime data, CommessaDto commessa) { try { var sal = new SALDto() { Codice = codice, Data = data }; var denominazione = GetDenominazione(sal, commessa); return(denominazione); } catch (Exception ex) { UtilityError.Write(ex); } return(null); }
private void CheckSALs() { try { AddLog("Check stato avanzamento lavori per le commesse di lavorazione... ", "OK"); var wcf = new WcfService.Service(); var stati = BusinessLogic.Tipi.GetStatiCommesseInLavorazione(); var commesse = wcf.ReadCommesse(stati); if (commesse != null) { foreach (var commessa in commesse) { var lastSal = (from q in commessa.SALs orderby q.Id descending select q).Take(1).FirstOrDefault(); if (lastSal == null || IsTimeoutSal(lastSal)) { var sal = new SALDto(); sal.CommessaId = commessa.Id; sal.Codice = BusinessLogic.SAL.GetNewCodice(commessa); sal.Data = DateTime.Now; sal.Denominazione = BusinessLogic.SAL.GetDenominazione(sal, commessa);; sal.Note = "SAL CREATO CON PROCEDURA AUTOMATICA"; sal.TotaleFattureAcquisto = BusinessLogic.SAL.GetTotaleFattureAcquisto(sal, commessa); sal.TotaleFattureVendita = BusinessLogic.SAL.GetTotaleFattureVendita(sal, commessa); sal.TotaleIncassi = BusinessLogic.SAL.GetTotaleIncassi(sal, commessa); sal.TotalePagamenti = BusinessLogic.SAL.GetTotalePagamenti(sal, commessa); sal.Stato = BusinessLogic.SAL.GetStatoDescrizione(sal, commessa); var newSal = wcf.CreateSAL(sal); if (newSal != null) { AddLog("Creazione SAL per la commessa " + BusinessLogic.Commessa.GetCodifica(commessa) + "... ", "OK"); } } } } } catch (Exception ex) { UtilityError.Write(ex); } }
private bool IsTimeoutSal(SALDto sal) { try { if (sal != null) { int timeout = 7; //in giorni --> da parametrizzare in tabella impostazioni var data = UtilityValidation.GetData(sal.Data); var now = DateTime.Now; var elapsed = now.Subtract(data).TotalDays; if (elapsed >= timeout) { return(true); } } } catch (Exception ex) { UtilityError.Write(ex); } return(false); }