public void CalcularDetrafNacionalResumidoCredito(string dataInicial, string dataFinal, string eotOrigem, string eotDestino, modalidadeLigacao ModalidadeLigacao, tipoDetraf TipoDetraf, int tipo) { DetrafDal objDetrafDal = new DetrafDal(); DETRAF.LOGGER.Logger objLogger = new DETRAF.LOGGER.Logger(); DataTable dt; dt = objDetrafDal.CalcularDetrafNacionalResumidoCredito(dataInicial, dataFinal, eotOrigem, eotDestino, tipo); string eotCredor = ""; string eotDevedor = ""; string periodoRef = ""; string periodoTraf = ""; string poi = ""; string tipoRelatorio = ""; string descriptor = ""; string grupoHorario = ""; string mensagem = ""; string tarifa; string qtdChamadas; string duracaoSegundos; string valorLiquido; string valorImposto; string valorBruto; double qtdChamadasAux; double duracaoSegundosAux; decimal valorLiquidoAux; decimal valorImpostoAux; decimal valorBrutoAux; double qtdChamadasTotal = 0; double duracaoSegundosTotal = 0; decimal valorLiquidoTotal = 0; decimal valorImpostoTotal = 0; decimal valorBrutoTotal = 0; foreach (DataRow dr in dt.Rows) { eotCredor = dr["EOT_CREDOR"].ToString(); eotDevedor = dr["EOT_DEVEDOR"].ToString(); periodoRef = dr["PERIODO_REF"].ToString(); periodoTraf = dr["PERIODO_TRAF"].ToString(); poi = dr["POI"].ToString(); tipoRelatorio = dr["TIPO_RELATORIO"].ToString(); descriptor = dr["DESCRIPTOR"].ToString(); grupoHorario = dr["GRUPO_HORARIO"].ToString(); tarifa = dr["TARIFA"].ToString(); qtdChamadas = dr["QTD_CHAMADAS"].ToString(); duracaoSegundos = dr["DURACAO_SEGUNDOS"].ToString(); valorLiquido = dr["VALOR_LIQUIDO"].ToString(); valorImposto = dr["VALOR_IMPOSTO"].ToString(); valorBruto = dr["VALOR_BRUTO"].ToString(); qtdChamadasAux = Convert.ToDouble(qtdChamadas); duracaoSegundosAux = Convert.ToDouble(duracaoSegundos) / 60; valorLiquidoAux = Convert.ToDecimal(valorLiquido); valorImpostoAux = Convert.ToDecimal(valorImposto); valorBrutoAux = Convert.ToDecimal(valorBruto); mensagem = eotCredor + ";" + eotDevedor + ";" + periodoRef + ";" + periodoTraf + ";" + poi + ";" + tipoRelatorio + ";" + descriptor + ";" + grupoHorario + ";" + qtdChamadas.ToString() + ";" + duracaoSegundosAux.ToString() + ";" + tarifa + ";" + valorLiquido.ToString() + ";" + valorImposto.ToString() + ";" + valorBruto.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafNacionalResumidoCredito.csv", mensagem); qtdChamadasTotal += qtdChamadasAux; duracaoSegundosTotal += duracaoSegundosAux; valorLiquidoTotal += valorLiquidoAux; valorImpostoTotal += valorImpostoAux; valorBrutoTotal += valorBrutoAux; } mensagem = eotCredor + ";" + eotDevedor + ";" + periodoRef + ";" + periodoTraf + ";" + poi + ";1;;;" + qtdChamadasTotal.ToString() + ";" + duracaoSegundosTotal.ToString() + ";;" + valorLiquidoTotal.ToString() + ";" + valorImpostoTotal.ToString() + ";" + valorBrutoTotal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafNacionalResumidoCredito.csv", mensagem); objDetrafDal = null; objLogger = null; dt = null; }
public void CalcularDetrafNacionalDetalhadoCredito(string dataInicial, string dataFinal, string eotOrigem, string eotDestino, modalidadeLigacao ModalidadeLigacao, tipoDetraf TipoDetraf, int tipo) { DetrafDal objDetrafDal = new DetrafDal(); DETRAF.LOGGER.Logger objLogger = new DETRAF.LOGGER.Logger(); DataTable dt; dt = objDetrafDal.CalcularDetrafNacionalDetalhadoCredito(dataInicial, dataFinal, eotOrigem, eotDestino, tipo); string mensagem = ""; string clid = ""; string eot_origem = ""; string localidade_origem = ""; string dst = ""; string eot_destino = ""; string localidade_destino = ""; string billsec = ""; string data = ""; string hora = ""; string entrante = ""; string sainte = ""; string tipo_ligacao = ""; string modalidade_ligacao = ""; string billsec_cobrado = ""; string tarifa = ""; string valor_cobrado = ""; foreach (DataRow dr in dt.Rows) { clid = dr["clid"].ToString(); eot_origem = dr["eot_origem"].ToString(); localidade_origem = dr["localidade_origem"].ToString(); dst = dr["dst"].ToString(); eot_destino = dr["eot_destino"].ToString(); localidade_destino = dr["localidade_destino"].ToString(); billsec = dr["billsec"].ToString(); data = dr["data"].ToString(); hora = dr["hora"].ToString(); entrante = dr["entrante"].ToString(); sainte = dr["sainte"].ToString(); tipo_ligacao = dr["tipo_ligacao"].ToString(); modalidade_ligacao = dr["modalidade_ligacao"].ToString(); billsec_cobrado = dr["billsec_cobrado"].ToString(); tarifa = dr["tarifa"].ToString(); valor_cobrado = dr["valor"].ToString(); mensagem = clid + ";" + eot_origem + ";" + localidade_origem + ";" + dst + ";" + eot_destino + ";" + localidade_destino + ";" + billsec + ";" + data + ";" + hora + ";" + entrante + ";" + sainte + ";" + tipo_ligacao + ";" + modalidade_ligacao + ";" + billsec_cobrado + ";" + tarifa + ";" + valor_cobrado; objLogger.GravarCSV(@"C:/detraf/detalhado/DetrafNacionalDetalhadoCredito.csv", mensagem); } objDetrafDal = null; objLogger = null; dt = null; }
public void CalcularDetrafLocalDesbalanceamento(string dataInicial, string dataFinal, string eotOrigem, string eotDestino, modalidadeLigacao ModalidadeLigacao, tipoDetraf TipoDetraf) { DataTable dt = null; DetrafDal objDetrafDal = new DetrafDal(); PrecoDal objPrecoDal = new PrecoDal(); //Local Local = Desbalanceamento dt = objDetrafDal.CalcularDetrafLocalDesbalanceamento(dataInicial, dataFinal, eotOrigem, eotDestino); double segundos_normal_credito = 0; double segundos_reduzido_credito = 0; double segundos_normal_debito = 0; double segundos_reduzido_debito = 0; foreach (DataRow dr in dt.Rows) { segundos_normal_credito = Convert.ToDouble(dr["normal_credito"]); segundos_reduzido_credito = Convert.ToDouble(dr["reduzido_credito"]); segundos_normal_debito = Convert.ToDouble(dr["normal_debito"]); segundos_reduzido_debito = Convert.ToDouble(dr["reduzido_debito"]); } double minutos_normal_credito = Math.Round(segundos_normal_credito / 60, 2); double minutos_normal_debito = Math.Round(segundos_normal_debito / 60, 2); double total_minutos_normal = Math.Round(minutos_normal_credito + minutos_normal_debito, 2); double limite_superior_normal = Math.Round(total_minutos_normal * 0.55, 2); double excesso_limite_superior_normal = 0; int eot_turl_normal; int eot_turl_reduzido; if (minutos_normal_debito <= minutos_normal_credito) { eot_turl_normal = Convert.ToInt32(eotOrigem); excesso_limite_superior_normal = minutos_normal_credito - limite_superior_normal; dt = objPrecoDal.ConsultarTabela(eot_turl_normal, "tabela_turl"); foreach (DataRow dr in dt.Rows) { ValorHorarioNormal = Convert.ToDouble(dr["valor_horario_normal"]); } EotDevedorNormal = Convert.ToInt32(eotDestino); } else { eot_turl_normal = Convert.ToInt32(eotDestino); excesso_limite_superior_normal = minutos_normal_debito - limite_superior_normal; dt = objPrecoDal.ConsultarTabela(eot_turl_normal, "tabela_turl"); foreach (DataRow dr in dt.Rows) { ValorHorarioNormal = Convert.ToDouble(dr["valor_horario_normal"]); } EotDevedorNormal = Convert.ToInt32(eotOrigem); } double minutos_reduzido_credito = segundos_reduzido_credito / 60; double minutos_reduzido_debito = segundos_reduzido_debito / 60; double total_minutos_reduzido = minutos_reduzido_credito + minutos_reduzido_debito; double limite_superior_reduzido = total_minutos_reduzido * 0.55; double excesso_limite_superior_reduzido = 0; if (minutos_reduzido_debito <= minutos_reduzido_credito) { eot_turl_reduzido = Convert.ToInt32(eotOrigem); excesso_limite_superior_reduzido = minutos_reduzido_credito - limite_superior_reduzido; dt = objPrecoDal.ConsultarTabela(eot_turl_reduzido, "tabela_turl"); foreach (DataRow dr in dt.Rows) { ValorHorarioReduzido = Convert.ToDouble(dr["valor_horario_reduzido"]); } EotDevedorReduzido = Convert.ToInt32(eotDestino); } else { eot_turl_reduzido = Convert.ToInt32(eotDestino); excesso_limite_superior_reduzido = minutos_reduzido_debito - limite_superior_reduzido; dt = objPrecoDal.ConsultarTabela(eot_turl_reduzido, "tabela_turl"); foreach (DataRow dr in dt.Rows) { ValorHorarioReduzido = Convert.ToDouble(dr["valor_horario_reduzido"]); } EotDevedorReduzido = Convert.ToInt32(eotOrigem); } CreditoHorarioNormal = minutos_normal_credito; DebitoHorarioNormal = minutos_normal_debito; TotalHorarioNormal = total_minutos_normal; LimiteSuperiorNormal = limite_superior_normal; ExcessoNormal = excesso_limite_superior_normal; ValorBrutoNormal = ExcessoNormal * ValorHorarioNormal; CreditoHorarioReduzido = minutos_reduzido_credito; DebitoHorarioReduzido = minutos_reduzido_debito; TotalHorarioReduzido = total_minutos_reduzido; LimiteSuperiorReduzido = limite_superior_reduzido; ExcessoReduzido = excesso_limite_superior_reduzido; ValorBrutoReduzido = ExcessoReduzido * ValorHorarioReduzido; DETRAF.LOGGER.Logger objLogger = new DETRAF.LOGGER.Logger(); string linha = ""; linha = "Creditos Minutos Normal;" + CreditoHorarioNormal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Debitos Minutos Normal;" + DebitoHorarioNormal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Total Normal;" + TotalHorarioNormal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Limite Superior Normal;" + LimiteSuperiorNormal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Excesso Normal;" + ExcessoNormal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Tarifa Normal;" + ValorHorarioNormal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Valor Bruto Normal;" + ValorBrutoNormal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "EOT Devedor Normal;" + EotDevedorNormal.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = ""; objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Creditos Minutos Reduzido;" + CreditoHorarioReduzido.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Debitos Minutos Reduzido;" + DebitoHorarioReduzido.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Total Reduzido;" + TotalHorarioReduzido.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Limite Superior Reduzido;" + LimiteSuperiorReduzido.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Excesso Reduzido;" + ExcessoReduzido.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Tarifa Reduzido;" + ValorHorarioReduzido.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "Valor Bruto Reduzido;" + ValorBrutoReduzido.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); linha = "EOT Devedor Reduzido;" + EotDevedorReduzido.ToString(); objLogger.GravarCSV(@"C:/detraf/resumido/DetrafLocalDesbalanceamento.csv", linha); objLogger = null; objDetrafDal = null; objPrecoDal = null; }