public static Color GetFlagBackColor(LetterFlag flag) { switch (flag) { case LetterFlag.Red: return(Color.FromArgb(207, 93, 96)); case LetterFlag.Blue: return(Color.FromArgb(92, 131, 180)); case LetterFlag.Yellow: return(Color.FromArgb(255, 193, 96)); case LetterFlag.Green: return(Color.FromArgb(139, 180, 103)); case LetterFlag.Complete: return(Color.White); default: return(Color.Empty); } }
// METHODS. public static int GetFlagImageIndex(LetterFlag flag) { switch (flag) { case LetterFlag.Red: return(11); case LetterFlag.Blue: return(12); case LetterFlag.Yellow: return(13); case LetterFlag.Green: return(14); case LetterFlag.Complete: return(15); default: return(16); } }
private void ValidateCen(Detalle detalle, bool isCreditor) { try { if (detalle.Folio > 0 && detalle.IsParticipant) // Facturada { Flag = LetterFlag.Green; // DEFAULT. if (detalle.DTEDef != null) { DTEDefTypeDocumento dte = (DTEDefTypeDocumento)detalle.DTEDef.Item; if (dte.Encabezado.IdDoc.FmaPago != DTEDefTypeDocumentoEncabezadoIdDocFmaPago.Crédito) // VALIDE FORMA PAGO. { Flag = LetterFlag.Yellow; FmaPago = true; } if (dte.Referencia != null) { DTEDefTypeDocumentoReferencia referencia = dte.Referencia.FirstOrDefault(x => x.TpoDocRef.ToUpper() == "SEN"); if (referencia != null && detalle.Instruction != null) { if (string.IsNullOrEmpty(referencia.NroLinRef)) { NroLinRef = true; } if (Compare(referencia.FolioRef, detalle.Instruction.PaymentMatrix.ReferenceCode, true) == -1) // DE01724A17C14S0015 { Flag = LetterFlag.Red; FolioRef = true; } if (Compare(referencia.RazonRef, detalle.Instruction.PaymentMatrix.NaturalKey, true) == -1) // SEN_[RBPA][Ene18-Dic18][R][V02] { Flag = LetterFlag.Red; RazonRef = true; } if (string.IsNullOrEmpty(referencia.FchRef.ToString())) { FchRef = true; } } else { // NO REF CEN. Flag = LetterFlag.Red; FolioRef = true; RazonRef = true; TpoDocRef = true; } } else { // NO REFS. Flag = LetterFlag.Red; FolioRef = true; RazonRef = true; TpoDocRef = true; } // Valide Instruction (Only Debtor) if (detalle.Instruction == null && isCreditor == false) { Flag = LetterFlag.Red; FolioRef = true; RazonRef = true; TpoDocRef = true; } else { // Valide Amount if (Convert.ToUInt32(dte.Encabezado.Totales.MntNeto) != detalle.Instruction.Amount) { Flag = LetterFlag.Blue; } } // Valide excluide // Enel Distribución Chile S.A. & Chilquinta Energía S.A && Cge S.A // 96800570 / 96813520 / 76411321 if ((detalle.RutReceptor == "96800570" || detalle.RutReceptor == "96813520" || detalle.RutReceptor == "76411321") && (isCreditor == false)) { Flag = LetterFlag.Clear; } } else { // No Xml Flag = LetterFlag.Red; } } else { // No facturada & No participant Flag = LetterFlag.Clear; } } catch (Exception) { throw; } }