/// <summary> /// Método que gera a listagem de registros de siglas de produtos enquadrados de acordo com o perfil /// para a geração do arquivo fora perfil /// </summary> public void GeraListaExecutaBatchSuitability() { var lSb = new StringBuilder(); string lCliente = string.Empty; try { var lRequest = new ClienteSuitabilityEfetuadoInfo(); lRequest.DtDe = new DateTime(2008, 1, 1); lRequest.DtAte = DateTime.Now; List <SuitabilityClienteProduto> lListaPerfil = ObterProdutoPerfilSuitability(); List <ClienteSuitabilityEfetuadoInfo> lListaSuitability = ObterClientesSuitability(lRequest); lListaSuitability.ForEach(lista => { if (lista.DsPerfil.ToLower() != "arrojado" && lista.DsPerfil.ToLower() != "agressivo") { List <SuitabilityClienteProduto> lSiglas = lListaPerfil.FindAll(siglas => { return(siglas.TipoPerfil.ToLower() == lista.DsPerfil.ToLower()); /* * Acessado - Conservador * CadastroNaoFinalizado - Conservador * MedioRiscoComRendaVariavel - Moderado * MEDIO RISCO COM RENDA VARIAVEL - Moderado * MedioRiscoSemRendaVariavel - Moderado * NaoResponderAgora - Conservador * BaixoRisco - Conservador * MedioRiscoSemRendaVariavel - Moderado */ }); lCliente = " " + lista.CodigoBovespa.ToString().PadLeft(5, ' '); lSiglas.ForEach(sigla => { lCliente += sigla.Produto + " "; }); lCliente = lCliente.Remove(lCliente.LastIndexOf(" "), 5); lSb.Append(lCliente + "\n"); lCliente = string.Empty; } }); this.GerarArquivo(lSb); } catch (Exception ex) { throw ex; } }
/// <summary> /// Método que busca no sql uma listagem de clientes com suitability efetuados ou não em um range de datas /// Procedure: rel_cliente_suitability_efetuados_lst_sp /// </summary> /// <param name="pRequest">Objeto de request de suitability efetuado ou não, range de data De até, e se está realizado ou não</param> /// <returns></returns> private List <ClienteSuitabilityEfetuadoInfo> ObterClientesSuitability(ClienteSuitabilityEfetuadoInfo pRequest) { var lRetorno = new List <ClienteSuitabilityEfetuadoInfo>(); var lAcessaDados = new AcessaDados(); lAcessaDados.ConnectionStringName = gNomeConexaoCadastro; try { using (DbCommand lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "rel_cliente_suitability_efetuados_lst_sp")) { lAcessaDados.AddInParameter(lDbCommand, "@DtDe", DbType.DateTime, pRequest.DtDe); lAcessaDados.AddInParameter(lDbCommand, "@DtAte", DbType.DateTime, pRequest.DtAte); lAcessaDados.AddInParameter(lDbCommand, "@StRealizado", DbType.Int32, 1); var lDataTable = lAcessaDados.ExecuteDbDataTable(lDbCommand); if (lDataTable != null && lDataTable.Rows.Count > 0) { for (int i = 0; i < lDataTable.Rows.Count; i++) { DataRow lRow = lDataTable.Rows[i]; if (lRow["cd_codigo"].ToString() != "") { lRetorno.Add(new ClienteSuitabilityEfetuadoInfo() { CodigoAssessor = lRow["cd_assessor"].ToString() == "" ? 0 : int.Parse(lRow["cd_assessor"].ToString()), CodigoBovespa = int.Parse(lRow["cd_codigo"].ToString()), DsCpfCnpj = lRow["ds_cpfcnpj"].ToString(), DsFonte = lRow["ds_fonte"].ToString(), DsLoginRealizado = lRow["ds_loginrealizado"].ToString(), DsNomeCliente = lRow["ds_nome"].ToString(), DsPerfil = lRow["ds_perfil"].ToString().ToLower() == "baixo risco" ? "Conservador" : lRow["ds_perfil"].ToString(), //lRow["ds_perfil"].ToString(), DsStatus = lRow["ds_status"].ToString(), DtRealizacao = GetDateTimeNulable(lRow["dt_realizacao"]), IdCliente = int.Parse(lRow["id_cliente"].ToString()), StPreenchidoPeloCliente = GetBoolNulable(lRow["st_preenchidopelocliente"]), }); } } } } } catch (Exception ex) { throw ex; } return(lRetorno); }
public TransporteRelatorio_006(ClienteSuitabilityEfetuadoInfo pInfo, string pPrefixoRaiz) { this.Id = pInfo.IdCliente.Value; this.Nome = pInfo.DsNomeCliente; this.CpfCnpj = pInfo.DsCpfCnpj; this.CodigoBovespa = pInfo.CodigoBovespa.ToString(); this.Assessor = pInfo.CodigoAssessor.ToString(); this.UltimaAlteracaoSuitability = pInfo.DtRealizacao == DateTime.MinValue?"":pInfo.DtRealizacao.ToString("dd/MM/yyyy HH:mm:ss"); this.ResultadoDaAnalise = pInfo.DsPerfil; this.Local = pInfo.DsFonte; this.RealizadoPeloCliente = GetPreenchidoCliente(pInfo.StPreenchidoPeloCliente); this.RealizadoPor = pInfo.DsLoginRealizado; this.Status = pInfo.DsStatus; this.ArquivoCiencia = pInfo.DsArquivoCiencia.Replace("~", ""); this.ArquivoCienciaData = pInfo.DtArquivoCiencia; this.PrefixoRaiz = pPrefixoRaiz; this.Respostas = pInfo.DsRespostas.ToString(); this.Peso = pInfo.Peso.ToString(); }
private void ResponderBuscarItensParaListagemSimples() { var lRequest = new ConsultarEntidadeCadastroRequest <ClienteSuitabilityEfetuadoInfo>() { IdUsuarioLogado = base.UsuarioLogado.Id, DescricaoUsuarioLogado = base.UsuarioLogado.Nome }; var lResponse = new ConsultarEntidadeCadastroResponse <ClienteSuitabilityEfetuadoInfo>(); string lPrefixo = this.PrefixoDaRaiz; try { var lInfo = new ClienteSuitabilityEfetuadoInfo() { IdCliente = this.GetCodCliente, DtDe = this.GetDataInicial, DtAte = this.GetDataFinal.Value.AddDays(1D), DsCpfCnpj = this.GetCpfCnpj, CodigoAssessor = this.GetIdAssessor, StRealizado = this.GetRealizado, TipoPessoa = this.GetTipoPessoa }; lRequest.EntidadeCadastro = lInfo; lResponse = this.ServicoPersistenciaCadastro.ConsultarEntidadeCadastro <ClienteSuitabilityEfetuadoInfo>(lRequest); if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK) { if (lResponse.Resultado.Count > 0) { IEnumerable <TransporteRelatorio_006> lLista = from ClienteSuitabilityEfetuadoInfo i in lResponse.Resultado select new TransporteRelatorio_006(i, lPrefixo); if (lLista.Count() >= gTamanhoDaParte) { this.ListaDeResultados = lLista; this.rptRelatorio.DataSource = BuscarParte(1); rowLinhaCarregandoMais.Visible = true; } else { this.rptRelatorio.DataSource = lLista; } this.rptRelatorio.DataBind(); rowLinhaDeNenhumItem.Visible = false; } else { rowLinhaDeNenhumItem.Visible = true; } } } catch (Exception exBusca) { throw exBusca; } }