private void GetLigacaoNaoFinalizada() { retorno.SqlExec = "q7"; //busca ligação que iniciou e não teve resultado var dados = funcdb.ExecSql("SELECT cc.CODIGO FROM campanhas_clientes cc inner join clientes cli on cli.CODIGO = cc.CLIENTE " + " WHERE cc.CONCLUIDO = 'SIM' AND coalesce(cc.RESULTADO,0) = 0 AND cc.DATA_HORA_LIG >= 0 " + " AND cc.OPERADOR_LIGACAO = " + retorno.id.ToString() + " and cli.ATIVO = 'SIM' LIMIT 1; "); if (dados.Count > 0) { retorno.CODIGO = Convert.ToInt32(dados[0]); } }
public IHttpActionResult ConfirmarPedido([FromUri] Pedido dados) { FuncoesBanco f = new FuncoesBanco(dblocal); var id = f.ExecSql("select id from SP_GRAVAR_PEDIDO_WEB(" + dados.id + ", " + dados.CodUsr + ", " + dados.Mesa + ", '" + dados.Total.ToString().Replace(",", ".") + "')"); if (id != null && id.Count > 0) { dados.id = Convert.ToInt32(id[0]); } int ii = 0; if (dados.Produtos is string) { PRODUTO i = JsonConvert.DeserializeObject <PRODUTO>(dados.Produtos); f.ExecSql("select id from SP_GRAVAR_PEDIDO_ITEM_WEB(" + dados.id + ", " + dados.CodUsr + ", " + dados.Mesa + ", '" + i.PRODN3VLRVENDA.ToString().Replace(",", ".") + "', " + i.QTD.ToString() + "," + ii + ", " + i.id + ")"); } else { foreach (dynamic item in dados.Produtos) { ii++; PRODUTO i = JsonConvert.DeserializeObject <PRODUTO>(item); f.ExecSql("select id from SP_GRAVAR_PEDIDO_ITEM_WEB(" + dados.id + ", " + dados.CodUsr + ", " + dados.Mesa + ", '" + i.PRODN3VLRVENDA.ToString().Replace(",", ".") + "', " + i.QTD.ToString() + "," + ii + ", " + i.id + ")"); } } retorno.id = dados.id; return(CreatedAtRoute("DefaultApi", new { id = retorno.id }, retorno)); // return Ok(retorno); }
private void GetValores(int id, DateTime?datainicial, DateTime?datafinal) { if (datainicial == null) { datainicial = DateTime.Now; } if (datafinal == null) { datafinal = DateTime.Now; } var x = " select (AVG(XX.PRODUTIVIDADE)) PRODUTIVIDADE, SUM(XX.DISCADAS) DISCADAS, " + " SUM(XX.CONTATOS) CONTATOS, AVG(XX.CONTATOS * 100 / XX.DISCADAS) APROVEITAMENTO, SUM(XX.PEDIDOS) PEDIDOS FROM " + " (SELECT ((( (if ((select sum(time_to_sec(cr.LIGACAO_FINALIZADA) - time_to_sec(cr.LIGACAO_RECEBIDA)) " + " from chamadas_receptivo cr where cr.operador = o.codigo and DATE(cr.LIGACAO_RECEBIDA) between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ) + ( " + " select(sum(time_to_sec(data_hora_fim) - time_to_sec(data_hora_lig))) as tempo_falando " + " from campanhas_clientes " + " where " + " OPERADOR_LIGACAO = o.codigo " + " and DATE(data_hora_lig)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ) " + " is null,if ( " + " (select sum(time_to_sec(cr.LIGACAO_FINALIZADA) - time_to_sec(cr.LIGACAO_RECEBIDA)) " + " from chamadas_receptivo cr " + " where cr.operador = o.codigo " + " and DATE(cr.LIGACAO_RECEBIDA)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ) is null,(select(sum(time_to_sec(data_hora_fim) - time_to_sec(data_hora_lig))) as tempo_falando " + " from campanhas_clientes where OPERADOR_LIGACAO = o.codigo " + " and DATE(data_hora_lig)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ),( " + " select sum(time_to_sec(cr.LIGACAO_FINALIZADA) - time_to_sec(cr.LIGACAO_RECEBIDA)) " + " from chamadas_receptivo cr " + " where cr.operador = o.codigo " + " and DATE(cr.LIGACAO_RECEBIDA)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " )),( " + " select sum(time_to_sec(cr.LIGACAO_FINALIZADA) - time_to_sec(cr.LIGACAO_RECEBIDA)) " + " from chamadas_receptivo cr " + " where cr.operador = o.codigo " + " and DATE(cr.LIGACAO_RECEBIDA)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ) + ( " + " select(sum(time_to_sec(data_hora_fim) - time_to_sec(data_hora_lig))) as tempo_falando " + " from campanhas_clientes where " + " OPERADOR_LIGACAO = o.codigo " + " and DATE(data_hora_lig)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "')))))*100)/ " + " (if (((select sum(time_to_sec(l.tempo_logado)) as tempo_logado from login_ativo_receptivo l " + " where " + " o.codigo = l.operador " + " and modulo = 'Ativo' " + " and DATE(entrada)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ) -(( " + " select sum(ligacoes_ok) " + " from login_ativo_receptivo l " + " where modulo ='Ativo' " + " and l.OPERADOR = o.codigo " + " and DATE(entrada)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ) *1)) is null,0,(( " + " select " + " sum(time_to_sec(l.tempo_logado)) as tempo_logado from login_ativo_receptivo l " + " where " + " o.codigo = l.operador " + " and modulo = 'Ativo' " + " and DATE(entrada)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ) -(( " + " select sum(ligacoes_ok) " + " from login_ativo_receptivo l " + " where modulo = 'Ativo' " + " and l.OPERADOR = o.codigo " + " and DATE(entrada)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " ) *1))) + if ((select " + " sum(time_to_sec(l.tempo_logado)) as tempo_logado from login_ativo_receptivo l " + " where o.codigo = l.operador " + " and modulo = 'Receptivo' " + " and DATE(entrada)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "')is null,0,(select " + " sum(time_to_sec(l.tempo_logado)) as tempo_logado from login_ativo_receptivo l " + " where o.codigo = l.operador " + " and modulo = 'Receptivo' " + " and DATE(entrada)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "')) " + " - (SELECT IFNULL(SUM(TIME_TO_SEC(p.DATA_HORA_FIM) - TIME_TO_SEC(p.DATA_HORA)), 0) AS TEMPO_PAUSA FROM pausas_realizadas p inner join motivos_pausa mp on mp.CODIGO = p.COD_PAUSA and mp.PRODUTIVIDADE = 'SIM' WHERE DATE(p.DATA_HORA)between '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' and p.OPERADOR = o.codigo) " + " ) AS PRODUTIVIDADE, " + " CAST(COUNT(distinct cc.CODIGO) AS CHAR) AS DISCADAS, " + " CAST(SUM(IF(r.ECONTATO = 'SIM', 1, 0)) AS CHAR) AS CONTATOS, " + " CAST(SUM(IF(r.EPEDIDO = 'SIM', 1, 0)) AS CHAR) AS PEDIDOS FROM operadores o " + " LEFT JOIN campanhas_clientes cc ON (cc.OPERADOR_LIGACAO = o.CODIGO AND cc.OPERADOR_LIGACAO > 0 " + " AND DATE(cc.DT_RESULTADO) BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "') " + " LEFT JOIN resultados r ON(r.CODIGO = cc.RESULTADO) " + " LEFT JOIN campanhas c ON(c.CODIGO = cc.CAMPANHA) " + " WHERE o.CODIGO = " + id.ToString() + ") as XX "; FuncoesBanco f = new FuncoesBanco(dblocal); List <dynamic> MyList = f.CollectionFromSql(x, new Dictionary <string, object> { }).ToList(); foreach (dynamic item in MyList) { if (!DBNull.Equals(item.PRODUTIVIDADE, DBNull.Value)) { PRODUTIVIDADE = Convert.ToDouble(item.PRODUTIVIDADE); } else { PRODUTIVIDADE = 0; } if (!DBNull.Equals(item.DISCADAS, DBNull.Value)) { DISCADAS = Convert.ToInt32(item.DISCADAS); } else { DISCADAS = 0; } if (!DBNull.Equals(item.CONTATOS, DBNull.Value)) { CONTATOS = Convert.ToInt32(item.CONTATOS); } else { CONTATOS = 0; } if (!DBNull.Equals(item.APROVEITAMENTO, DBNull.Value)) { APROVEITAMENTO = Convert.ToDouble(item.APROVEITAMENTO); } else { APROVEITAMENTO = 0; } if (!DBNull.Equals(item.PEDIDOS, DBNull.Value)) { PEDIDOS = Convert.ToInt32(item.PEDIDOS); } else { PEDIDOS = 0; } } x = "SELECT cli.ESTADO, SUM(cc.VALOR) as VALOR FROM compras cc " + " JOIN clientes cli on cli.CODIGO = cc.CLIENTE AND cli.ESTADO <> '' " + " WHERE cc.OPERADOR > 0 AND cc.DATA BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " group by cli.ESTADO having SUM(cc.VALOR) > 0 ORDER BY COUNT(cc.CODIGO) DESC "; if (VendasPorEstado == null) { MyList = f.CollectionFromSql(x, new Dictionary <string, object> { }).ToList(); VendasPorEstado = MyList; } x = "SELECT meta.OPERADOR,o.LOGIN, sum(meta.VALOR_META) as META " + " FROM operadores_meta meta JOIN operadores o on o.CODIGO = meta.OPERADOR WHERE CAST(CONCAT(meta.ANO, '-', meta.MES, '-01') AS DATE) BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " group by meta.OPERADOR,o.LOGIN "; if (MetasXVendas == null) { MyList = f.CollectionFromSql(x, new Dictionary <string, object> { }).ToList(); MetasXVendas = MyList; foreach (var m in MetasXVendas) { x = "SELECT SUM(cc.VALOR) as VALOR FROM compras cc " + " WHERE cc.OPERADOR = " + m.OPERADOR + " AND cc.DATA BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' "; var valor = f.ExecSql(x); if (valor != null && valor.Count > 0) { m.VALOR_VENDA = Convert.ToDouble(valor[0]); } else { m.VALOR_VENDA = 0; } x = " select p.VALOR from campanhas_clientes a inner join propostas p on p.LIGACAO = a.CODIGO " + " WHERE a.OPERADOR = " + m.OPERADOR + " AND a.DT_RESULTADO BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' "; valor = f.ExecSql(x); if (valor != null && valor.Count > 0) { m.VALOR_PROPOSTA = Convert.ToDouble(valor[0]); } else { m.VALOR_PROPOSTA = 0; } } } }
private void GetValores(int id, DateTime?datainicial, DateTime?datafinal) { if (datainicial == null) { datainicial = DateTime.Now; } if (datafinal == null) { datafinal = DateTime.Now; } FuncoesBanco f = new FuncoesBanco(dblocal); var x = GetSQLProcutividade(id, datainicial, datafinal); List <dynamic> MyList = f.CollectionFromSql(x, new Dictionary <string, object> { }).ToList(); foreach (dynamic item in MyList) { if (!DBNull.Equals(item.PRODUTIVIDADE, DBNull.Value)) { PRODUTIVIDADE = Convert.ToDouble(item.PRODUTIVIDADE); } else { PRODUTIVIDADE = 0; } if (!DBNull.Equals(item.DISCADAS, DBNull.Value)) { DISCADAS = Convert.ToInt32(item.DISCADAS); } else { DISCADAS = 0; } if (!DBNull.Equals(item.CONTATOS, DBNull.Value)) { CONTATOS = Convert.ToInt32(item.CONTATOS); } else { CONTATOS = 0; } if (!DBNull.Equals(item.APROVEITAMENTO, DBNull.Value)) { APROVEITAMENTO = Convert.ToDouble(item.APROVEITAMENTO); } else { APROVEITAMENTO = 0; } if (!DBNull.Equals(item.PEDIDOS, DBNull.Value)) { PEDIDOS = Convert.ToInt32(item.PEDIDOS); } else { PEDIDOS = 0; } } x = "SELECT cli.ESTADO, SUM(cc.VALOR) as VALOR FROM compras cc " + " JOIN clientes cli on cli.CODIGO = cc.CLIENTE AND cli.ESTADO <> '' " + " WHERE cc.OPERADOR > 0 AND cc.DATA BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " group by cli.ESTADO having SUM(cc.VALOR) > 0 ORDER BY COUNT(cc.CODIGO) DESC "; if (VendasPorEstado == null) { MyList = f.CollectionFromSql(x, new Dictionary <string, object> { }).ToList(); VendasPorEstado = MyList; } x = "SELECT meta.OPERADOR,o.LOGIN, sum(meta.VALOR_META) as META " + " FROM operadores_meta meta JOIN operadores o on o.CODIGO = meta.OPERADOR WHERE CAST(CONCAT(meta.ANO, '-', meta.MES, '-01') AS DATE) BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' " + " group by meta.OPERADOR,o.LOGIN "; if (MetasXVendas == null) { MyList = f.CollectionFromSql(x, new Dictionary <string, object> { }).ToList(); MetasXVendas = MyList; foreach (var m in MetasXVendas) { x = "SELECT SUM(cc.VALOR) as VALOR FROM compras cc " + " WHERE cc.OPERADOR = " + m.OPERADOR + " AND cc.DATA BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' "; var valor = f.ExecSql(x); if (valor != null && valor.Count > 0) { m.VALOR_VENDA = Convert.ToDouble(valor[0]); } else { m.VALOR_VENDA = 0; } x = " select p.VALOR from campanhas_clientes a inner join propostas p on p.LIGACAO = a.CODIGO " + " WHERE a.OPERADOR = " + m.OPERADOR + " AND a.DT_RESULTADO BETWEEN '" + String.Format("{0:yyyy-MM-dd}", datainicial) + "' AND '" + String.Format("{0:yyyy-MM-dd}", datafinal) + "' "; valor = f.ExecSql(x); if (valor != null && valor.Count > 0) { m.VALOR_PROPOSTA = Convert.ToDouble(valor[0]); } else { m.VALOR_PROPOSTA = 0; } } } }
public dynamic ConfirmarPedido(Pedido dados) { FuncoesBanco f = new FuncoesBanco(dblocal); if (dados.id < 0) { dados.id = 0; } var id = f.ExecSql("select id from SP_GRAVAR_PEDIDO_WEB(" + dados.id + ", " + dados.CodUsr + ", " + dados.Mesa + ", '" + dados.Total.ToString().Replace(",", ".") + "' , '" + dados.OBS.Trim() + "')"); if (id != null && id.Count > 0) { dados.id = Convert.ToInt32(id[0]); } int ii = 0; if (dados.Produtos is string) { PRODUTO i = JsonConvert.DeserializeObject <PRODUTO>(dados.Produtos); f.ExecSql("select id from SP_GRAVAR_PEDIDO_ITEM_WEB(" + dados.id + ", " + dados.CodUsr + ", " + dados.Mesa + ", '" + i.PRODN3VLRVENDA.ToString().Replace(",", ".") + "', " + i.QTD.ToString() + "," + ii + ", " + i.id + ")"); } else { PRODUTO i = new PRODUTO(); foreach (dynamic item in dados.Produtos) { foreach (dynamic filho in item) { foreach (dynamic campo in filho) { if (filho.Name == "id") { i.id = (int)campo.Value; } else if (filho.Name == "PRODN3VLRVENDA") { i.PRODN3VLRVENDA = campo.Value; } else if (filho.Name == "QTD") { i.QTD = (int)campo.Value; } } } ii++; //item;//JsonConvert.DeserializeObject<PRODUTO>(item); f.ExecSql("select id from SP_GRAVAR_PEDIDO_ITEM_WEB(" + dados.id + ", " + dados.CodUsr + ", " + dados.Mesa + ", '" + i.PRODN3VLRVENDA.ToString().Replace(",", ".") + "', " + i.QTD.ToString() + "," + ii + ", " + i.id + ")"); } } //retorno.id = dados.id; return(dados); }