/// <summary> /// Compoe os dados para geraçõa de CRI de carga /// </summary> /// <param name="idArquivo"></param> private List <CARD> GeraListaDeCartoesParaCarga(int idArquivo) { List <CARD> lstCriEn = null; try { var prmCard = CriBD.ObtemCartoesCarga(idArquivo); lstCriEn = new List <CARD>(); foreach (CriCartao crt in prmCard) { var cargaPan = CriBD.ObtemParametroCRI(TpStatCode.Carga, crt.IdProduto, idArquivo); this.CompoeCarga(cargaPan, crt.Valor); CriBD.InsereCRICargaDet(idArquivo, cargaPan.RECID, upSight.CartaoCorp.EnumRetornoBase.TipoIdentificacao.PAN, crt.PanProxy, (upSight.CartaoCorp.EnumRetornoBase.StatusCartao)(Convert.ToByte(cargaPan.STATCODE)), crt.Valor); lstCriEn.Add(cargaPan); } } catch (Exception e) { if (Base.TS.TraceError) { Trace.TraceWarning("{0}: {1}", new object[] { "CRTCorp.CRI.CRICN", e }); } } return(lstCriEn); }
/// <summary> /// Compoe os dados para geraçõa de CRI de solicitação /// </summary> /// <param name="idArquivo"></param> private List <CARD> GeraListaDeCartoesParaSolicitacao(int idArquivo) { List <CARD> lstCriEn = null; try { var prmCrg = CriBD.ObtemQuantidadeCartoesEmissao(idArquivo); var criEn = CriBD.ObtemParametroCRI(TpStatCode.Solicitação, prmCrg.IdProduto, idArquivo); lstCriEn = new List <CARD>(); for (int i = 0; i < prmCrg.Quantitade; i++) { this.CompoeCriEn(criEn); lstCriEn.Add(criEn); } } catch (Exception e) { if (Base.TS.TraceError) { Trace.TraceWarning("{0}: {1}", new object[] { "CRTCorp.CRI.CRICN", e }); } } return(lstCriEn); }
/// <summary> /// Gera o arquivio CRI de carga de cartões. /// </summary> /// <param name="idArquivo"></param> public void GeraArquivoCRIDeCarga(int idArquivo) { try { var lstCriEn = this.GeraListaDeCartoesParaCarga(idArquivo); var sw = CriBaseCN.SerializaDados(lstCriEn); string nomeArquivoCompleto; //Serializo os dados e gero o arquivo string pathOrigem = String.Empty; CriBaseCN.GeraArquivoFisicoCRI(sw.ToString(), out nomeArquivoCompleto); string nomeArquivo = Path.GetFileName(nomeArquivoCompleto); var log = new CNLog.Logging(); log.IdEntidade = 1; log.IdUsuario = 1; this.Log = log; var mapArq = new ENLog.MapaArquivos(nomeArquivo, ENLog.TipoArquivo.FISUkArquivoCRIGeracao, nomeArquivoCompleto); log.AtualizaArquivo <ENLog.MapaArquivos>(mapArq, ENLog.StatusProcessamentoArquivo.EmProcessamento, nomeArquivoCompleto, "Inicia processamento de arquivo"); //Insere serviço para processamento do arquivo de retorno CriBD.CriFinaliza(idArquivo, pathOrigem, nomeArquivo); this.InsereLog(mapArq); log.AtualizaArquivo <ENLog.MapaArquivos>(mapArq, ENLog.StatusProcessamentoArquivo.ProcessadoOk, nomeArquivoCompleto, "Finaliza processamento de arquivo"); } catch (Exception e) { if (Base.TS.TraceError) { Trace.TraceWarning("{0}: {1}", new object[] { "CRTCorp.CRI.CRICN", e }); } } }
/// <summary> /// Gera o arquivio CRI de solicitação de cartões. /// </summary> /// <param name="idArquivo"></param> public void GeraArquivoCRIDeSolicitacao(int idArquivo) { try { var lstCriEn = this.GeraListaDeCartoesParaSolicitacao(idArquivo); var sw = CriBaseCN.SerializaDados(lstCriEn); string pathOrigem = String.Empty; CriBaseCN.GeraArquivoFisicoCRI(sw.ToString(), out pathOrigem); CriBD.CriFinaliza(idArquivo, pathOrigem, Path.GetFileName(pathOrigem)); } catch (Exception e) { if (Base.TS.TraceError) { Trace.TraceWarning("{0}: {1}", new object[] { "CRTCorp.CRI.CRICN", e }); } } }
/// <summary> /// Gera os cartões a serem identificados /// </summary> /// <param name="cartao"></param> /// <returns></returns> public static CARD CompoeDadosIdentificacaoSimplifCrtCRI(CriCartao crt, int idArquivo, TpStatCode tpStateCode) { CARD card = new CARD(); CriCN criCn = new CriCN(); var criEn = CriBD.ObtemParametroCRI(tpStateCode, crt.IdProduto, idArquivo); criCn.CompoeCriEn(criEn); //Registro cada item do arquivo(CPF e RECID) CriBD.InsereCRIIdentificacaoDet(idArquivo, crt.Cpf, card.RECID, (crt.PanProxy.Length > 16) ? CriBaseCN.TipoIdentificacao.PROXY : CriBaseCN.TipoIdentificacao.PAN, crt.PanProxy, (CriBaseCN.StatusCartao)Convert.ToByte(card.STATCODE)); var nomeAbreviado = WebServiceBLL.AbreviadorNome(WebCommom.Adapter.TextHelper.TrataTexto(crt.Nome)).Split(new char[] { ' ' }, 2); card.LASTNAME = nomeAbreviado.Last(); card.FIRSTNAME = nomeAbreviado.First(); card.DOB = (crt.DtNascimento.HasValue) ? crt.DtNascimento.Value.ToString("yyyy-MM-dd") : String.Empty; ADDDETLIST addetList = new ADDDETLIST(); addetList.ADDDET = new List <ADDDET>(); ADDDET addet = new ADDDET(); addet.REFCODE = "ACS_CPF"; addet.VALUE = crt.Cpf; addetList.ADDDET.Add(addet); List <String> NomeMae = crt.NomeMae.ToUpper().Split(' ').ToList(); addet = new ADDDET(); addet.REFCODE = "MOTHER_NAME"; addet.VALUE = WebCommom.Adapter.TextHelper.TrataTexto((NomeMae.Count >= 2) ? NomeMae.First() + " " + NomeMae.Last() : NomeMae.First()); addetList.ADDDET.Add(addet); card.ADDDETLIST = addetList; return(card); }