private void UpdateRoteiro() { using (var connection = DbConnectionFactory.GetInstance()) { var query = @"update RoteirosColeta set OrdemSeg = case when OrdemSeg is null then OrdemSeg else @ordem end, OrdemTer = case when OrdemTer is null then OrdemTer else @ordem end, OrdemQua = case when OrdemQua is null then OrdemQua else @ordem end, OrdemQui = case when OrdemQui is null then OrdemQui else @ordem end, OrdemSex = case when OrdemSex is null then OrdemSex else @ordem end, OrdemSab = case when OrdemSab is null then OrdemSab else @ordem end, OrdemDom = case when OrdemDom is null then OrdemDom else @ordem end where id = @Id"; foreach (var item in roteiros.Where(x => x.NovaOrdemTer != x.OrdemTer)) { try { connection.Execute(query, new { item.Id, ordem = item.NovaOrdemTer }); } catch (Exception ex) { } } } }
static void Main(string[] args) { int idx = 0; IDbConnection conn = null; try { var ini = DateTime.Now; //var count = 0; using (conn = DbConnectionFactory.GetInstance()) { //count = conn.QuerySingle<int>("select count(*) from PlanejadoVsRealizado"); while (true) { Console.Write("Obtendo registros"); var lst = conn.Query <PlanejadoVsRealizado>(@"select top 10 Id=PlanejadoVsRealizadoId from PlanejadoVsRealizadoRoteiro group by PlanejadoVsRealizadoId having COUNT(*) <> MAX(OrdemRoteiro)", commandTimeout: int.MaxValue).ToList(); Console.WriteLine(" - obtidos"); if (lst.Count == 0) { break; } foreach (var item in lst) { Console.Write("{0}º fazendo", ++idx); var id = item.Id; conn.Execute(@"update PlanejadoVsRealizadoRoteiro set OrdemRoteiro = tab.OrdemRoteiro from ( select id, OrdemRoteiro = ROW_NUMBER() OVER(ORDER BY HorarioPlanejado, OrdemRoteiro) from PlanejadoVsRealizadoRoteiro where PlanejadoVsRealizadoId = @id ) tab where PlanejadoVsRealizadoRoteiro.Id = tab.Id", new { id }); Console.WriteLine(" - feito"); } } } var fim = DateTime.Now; Console.WriteLine("{0} - {1} - {2}", ini, fim, fim.Subtract(ini)); } catch (Exception ex) { Console.WriteLine(); Console.WriteLine("Erro: " + ex.Message); } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } Console.ReadKey(); } }
private List <RoteirosColeta> ObterRoteiros() { List <RoteirosColeta> ret = null; var query = @"select * from RoteirosColeta where TipoColeta = @tipoColeta and Setor = @setor and OrdemTer is not null order by OrdemTer"; using (var connection = DbConnectionFactory.GetInstance()) { ret = connection.Query <RoteirosColeta>(query, new { tipoColeta, setor }).ToList(); } return(ret); }
private void CreateRoteiro() { Cursor.Current = Cursors.WaitCursor; try { using (var connection = DbConnectionFactory.GetInstance()) { var queryDel = @"delete from RoteirosColeta where setor = @setor"; connection.Execute(queryDel, new { setor = txtNovoSetor.Text }); var query = @"insert into RoteirosColeta (CEPD,CEPE,Tipo,Titulo,Preposicao,Logradouro,Inicio,Fim,Distrito,SubPrefeitura,Frequencia,HorarioSeg,HorarioTer,HorarioQua,HorarioQui,HorarioSex,HorarioSab,HorarioDom,TipoColeta,Longitude,Latitude,Setor,NumeroIniD,NumeroFimD,NumeroIniE,NumeroFimE,DataAlteracao,IdMaptitude,TurnoOperacionalId,Lat,Lng,FormaColeta,OrdemSeg,OrdemTer,OrdemQua,OrdemQui,OrdemSex,OrdemSab,OrdemDom) select CEPD,CEPE,Tipo,Titulo,Preposicao,Logradouro,Inicio,Fim,Distrito,SubPrefeitura,Frequencia,HorarioSeg,HorarioTer,HorarioQua,HorarioQui,HorarioSex,HorarioSab,HorarioDom,TipoColeta,Longitude,Latitude,@setor,NumeroIniD,NumeroFimD,NumeroIniE,NumeroFimE,DataAlteracao,IdMaptitude,TurnoOperacionalId,Lat,Lng,FormaColeta, case when OrdemSeg is null then OrdemSeg else @ordem end, case when OrdemTer is null then OrdemTer else @ordem end, case when OrdemQua is null then OrdemQua else @ordem end, case when OrdemQui is null then OrdemQui else @ordem end, case when OrdemSex is null then OrdemSex else @ordem end, case when OrdemSab is null then OrdemSab else @ordem end, case when OrdemDom is null then OrdemDom else @ordem end from RoteirosColeta where id = @Id"; foreach (var item in roteiros) { try { connection.Execute(query, new { item.Id, ordem = item.NovaOrdemTer, setor = txtNovoSetor.Text }); } catch (Exception ex) { } } } } catch (Exception) { throw; } finally { Cursor.Current = Cursors.Default; } }