public async Task <Squadra> Get(string CodSede, decimal CodSquadra) { _client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("test"); var response = await _client.GetAsync($"{_configuration.GetSection("OracleImplementation").GetSection(CodSede).GetSection("UrlAPISquadre").Value}/GetSquadraByCodSquadra?CodSede={CodSede}&CodSquadra={CodSquadra}").ConfigureAwait(false); response.EnsureSuccessStatusCode(); using HttpContent content = response.Content; string data = await content.ReadAsStringAsync().ConfigureAwait(false); ORASquadre SquadraOracle = JsonConvert.DeserializeObject <ORASquadre>(data); var GetListaPersonaleSquadreById = new GetListaPersonaleSquadreById(_client, _configuration); var ListaPersonaleSquadre = await GetListaPersonaleSquadreById.Get(CodSede, CodSquadra); var GetSQPersonaleSquadreByCodSquadra = new GetSQPersonaleSquadreByCodSquadra(_client, _configuration); var SQPersonaleSquadre = await GetSQPersonaleSquadreByCodSquadra.Get(CodSede, CodSquadra); return(MapSquadraByIdOraInMongoDB(SquadraOracle, ListaPersonaleSquadre, SQPersonaleSquadre, CodSede)); }
public ORASquadre GetSquadraByCodSquadra(string CodSede, decimal CodSquadra) { Connessione InfoCon = _dbContext.GetConnectionFromCodiceSede(CodSede); OracleConnection conn = new OracleConnection(InfoCon.ConnectionString); conn.Open(); OracleCommand cmd = new OracleCommand(); cmd.Connection = conn; cmd.CommandText = " select " + " NVL(S.COD_SQUADRA, 0) as COD_SQUADRA , " + " NVL(S.SIGLA, '') as SIGLA ," + " NVL(S.COD_DISTACCAMENTO, 0) as COD_DISTACCAMENTO ," + " NVL(S.COL_MOB, '') as COL_MOB ," + " NVL(S.PRIORITA_COMANDO, 0) as PRIORITA_COMANDO , " + " NVL(PRIORITA_DISTACCAMENTO, 0) as PRIORITA_DISTACCAMENTO, " + " NVL(SQUADRE_MANSIONE, '') as SQUADRE_MANSIONE ," + " NVL(STAMPA, '') as STAMPA ," + " NVL(SQUADRE_EMERGENZA, '') as SQUADRE_EMERGENZA ," + " NVL(NUMERO_PERSONE, 0) as NUMERO_PERSONE ," + " NVL(VISUALIZZA, '') as VISUALIZZA , " + " NVL(CONTEGGIO_MENSA, '') as CONTEGGIO_MENSA , " + " NVL(SUPPORTO, '') as SUPPORTO " + " FROM SALAOPER.SQUADRE S INNER JOIN " + " SALAOPER.PERSONALE_SQUADRE P_S ON S.COD_SQUADRA = P_S.COD_SQUADRA " + " WHERE TO_CHAR(SYSDATE, 'DD-MM-YYYY') = TO_CHAR(P_S.DATA_SERVIZIO, 'DD-MM-YYYY') " + " AND P_S.ORA_FINE >= (SYSDATE )" + " AND P_S.ORA_INIZIO <= (SYSDATE ) AND SQUADRE_MANSIONE = 'S' AND S.COD_SQUADRA =:COD_SQUADRA " + " GROUP BY " + " P_S.DATA_SERVIZIO, " + " P_S.COD_SQUADRA, " + " NVL(S.COD_SQUADRA, 0) , " + " NVL(S.SIGLA, '') " + ", NVL(S.COD_DISTACCAMENTO, 0) " + ", NVL(S.COL_MOB, '') " + ", NVL(S.PRIORITA_COMANDO, 0) , " + " NVL(PRIORITA_DISTACCAMENTO, 0) , " + " NVL(SQUADRE_MANSIONE, '') " + " , NVL(STAMPA, '') " + " , NVL(SQUADRE_EMERGENZA, '')" + " , NVL(NUMERO_PERSONE, 0) " + " , NVL(VISUALIZZA, '')" + " , NVL(CONTEGGIO_MENSA, '') , " + " NVL(SUPPORTO, '') "; cmd.CommandType = CommandType.Text; cmd.BindByName = true; cmd.Parameters.Add(new OracleParameter("COD_SQUADRA", OracleDbType.Decimal, CodSquadra, ParameterDirection.Input)); OracleDataReader dr = cmd.ExecuteReader(); ORASquadre Squadra = new ORASquadre(); while (dr.Read()) { Squadra.COD_SQUADRA = Utility.Utility.GetDBField(dr, "COD_SQUADRA"); Squadra.SIGLA = Utility.Utility.GetDBField(dr, "SIGLA"); Squadra.COD_DISTACCAMENTO = Utility.Utility.GetDBField(dr, "COD_DISTACCAMENTO"); Squadra.COL_MOB = Utility.Utility.GetDBField(dr, "COL_MOB"); Squadra.PRIORITA_COMANDO = Utility.Utility.GetDBField(dr, "PRIORITA_COMANDO"); Squadra.PRIORITA_DISTACCAMENTO = Utility.Utility.GetDBField(dr, "PRIORITA_DISTACCAMENTO"); Squadra.SQUADRE_MANSIONE = Utility.Utility.GetDBField(dr, "SQUADRE_MANSIONE"); Squadra.STAMPA = Utility.Utility.GetDBField(dr, "STAMPA"); Squadra.SQUADRE_EMERGENZA = Utility.Utility.GetDBField(dr, "SQUADRE_EMERGENZA"); Squadra.NUMERO_PERSONE = Utility.Utility.GetDBField(dr, "NUMERO_PERSONE"); Squadra.VISUALIZZA = Utility.Utility.GetDBField(dr, "VISUALIZZA"); Squadra.CONTEGGIO_MENSA = Utility.Utility.GetDBField(dr, "CONTEGGIO_MENSA"); Squadra.SUPPORTO = Utility.Utility.GetDBField(dr, "SUPPORTO"); } conn.Dispose(); return(Squadra); }
public List <ORASquadre> GetListaSquadre(string CodSede) { List <ORASquadre> ListaSquadre = new List <ORASquadre>(); Connessione InfoCon = _dbContext.GetConnectionFromCodiceSede(CodSede); OracleConnection conn = new OracleConnection(InfoCon.ConnectionString); conn.Open(); OracleCommand cmd = new OracleCommand(); cmd.Connection = conn; cmd.CommandText = " select " + " NVL(S.COD_SQUADRA, 0) as COD_SQUADRA , " + " NVL(S.SIGLA, '') as SIGLA ," + " NVL(S.COD_DISTACCAMENTO, 0) as COD_DISTACCAMENTO ," + " NVL(S.COL_MOB, '') as COL_MOB ," + " NVL(S.PRIORITA_COMANDO, 0) as PRIORITA_COMANDO , " + " NVL(PRIORITA_DISTACCAMENTO, 0) as PRIORITA_DISTACCAMENTO, " + " NVL(SQUADRE_MANSIONE, '') as SQUADRE_MANSIONE ," + " NVL(STAMPA, '') as STAMPA ," + " NVL(SQUADRE_EMERGENZA, '') as SQUADRE_EMERGENZA ," + " NVL(NUMERO_PERSONE, 0) as NUMERO_PERSONE ," + " NVL(VISUALIZZA, '') as VISUALIZZA , " + " NVL(CONTEGGIO_MENSA, '') as CONTEGGIO_MENSA , " + " NVL(SUPPORTO, '') as SUPPORTO , " + " NVL(SQP_S.STATO, '') as STATO " + " FROM SALAOPER.SQUADRE S INNER JOIN " + " SALAOPER.PERSONALE_SQUADRE P_S ON S.COD_SQUADRA = P_S.COD_SQUADRA " + " INNER JOIN SALAOPER.SQ_PERSONALE_SQUADRE SQP_S ON S.COD_SQUADRA = SQP_S.COD_SQUADRA " + " WHERE " + "TO_CHAR(SQP_S.DATA_SERVIZIO, 'DD-MM-YYYY') = TO_CHAR(P_S.DATA_SERVIZIO, 'DD-MM-YYYY') AND (SQP_S.TURNO = P_S.TURNO ) AND " + "TO_CHAR(SYSDATE, 'DD-MM-YYYY') = TO_CHAR(P_S.DATA_SERVIZIO, 'DD-MM-YYYY') " + " AND P_S.ORA_FINE >= (SYSDATE )" + " AND P_S.ORA_INIZIO <= (SYSDATE ) AND SQUADRE_MANSIONE = 'S' " + " GROUP BY " + " P_S.DATA_SERVIZIO, " + " P_S.COD_SQUADRA, " + " NVL(S.COD_SQUADRA, 0) , " + " NVL(S.SIGLA, '') " + ", NVL(S.COD_DISTACCAMENTO, 0) " + ", NVL(S.COL_MOB, '') " + ", NVL(S.PRIORITA_COMANDO, 0) , " + " NVL(PRIORITA_DISTACCAMENTO, 0) , " + " NVL(SQUADRE_MANSIONE, '') " + " , NVL(STAMPA, '') " + " , NVL(SQUADRE_EMERGENZA, '')" + " , NVL(NUMERO_PERSONE, 0) " + " , NVL(VISUALIZZA, '')" + " , NVL(CONTEGGIO_MENSA, '') , " + " NVL(SQP_S.STATO, '') , " + " NVL(SUPPORTO, '') "; cmd.CommandType = CommandType.Text; OracleDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { ORASquadre squadra = new ORASquadre(); squadra.COD_SQUADRA = Utility.Utility.GetDBField(dr, "COD_SQUADRA"); squadra.SIGLA = Utility.Utility.GetDBField(dr, "SIGLA"); squadra.COD_DISTACCAMENTO = Utility.Utility.GetDBField(dr, "COD_DISTACCAMENTO"); squadra.COL_MOB = Utility.Utility.GetDBField(dr, "COL_MOB"); squadra.PRIORITA_COMANDO = Utility.Utility.GetDBField(dr, "PRIORITA_COMANDO"); squadra.PRIORITA_DISTACCAMENTO = Utility.Utility.GetDBField(dr, "PRIORITA_DISTACCAMENTO"); squadra.SQUADRE_MANSIONE = Utility.Utility.GetDBField(dr, "SQUADRE_MANSIONE"); squadra.STAMPA = Utility.Utility.GetDBField(dr, "STAMPA"); squadra.SQUADRE_EMERGENZA = Utility.Utility.GetDBField(dr, "SQUADRE_EMERGENZA"); squadra.NUMERO_PERSONE = Utility.Utility.GetDBField(dr, "NUMERO_PERSONE"); squadra.VISUALIZZA = Utility.Utility.GetDBField(dr, "VISUALIZZA"); squadra.CONTEGGIO_MENSA = Utility.Utility.GetDBField(dr, "CONTEGGIO_MENSA"); squadra.SUPPORTO = Utility.Utility.GetDBField(dr, "SUPPORTO"); squadra.STATO = Utility.Utility.GetDBField(dr, "STATO"); ListaSquadre.Add(squadra); } conn.Dispose(); return(ListaSquadre); }
private Squadra MapSquadraByIdOraInMongoDB(ORASquadre SquadraOracle, List <ORAPersonaleSquadre> ListaPersonaleSquadre, ORASQPersonaleSquadre SQPersonaleSquadre, string CodSede) { ORASquadre OraS = SquadraOracle; List <ORAPersonaleSquadre> ListOraPS = new List <ORAPersonaleSquadre>(); List <Distaccamento> distaccamenti = _getListaDistaccamentiByCodiceSede.GetListaDistaccamenti(CodSede); var d = distaccamenti.Find(x => x.CodDistaccamento.Equals(Decimal.ToInt32(OraS.COD_DISTACCAMENTO))); Sede sedeDistaccamento; if (d != null) { sedeDistaccamento = new Sede(CodSede.ToString() + "." + d.CodDistaccamento.ToString(), d.DescDistaccamento, d.Indirizzo, d.Coordinate, "", "", "", "", ""); Squadra.StatoSquadra Stato; Stato = Squadra.StatoSquadra.InSede; if (SQPersonaleSquadre == null) { Stato = Squadra.StatoSquadra.InSede; } else { switch (SQPersonaleSquadre.STATO.ToString()) { case "L": Stato = Squadra.StatoSquadra.InSede; break; case "A": Stato = Squadra.StatoSquadra.SulPosto; break; case "R": Stato = Squadra.StatoSquadra.InRientro; break; default: Stato = Squadra.StatoSquadra.InSede; break; } } List <Componente> ComponentiSquadra = new List <Componente>(); List <string> ListaCodiciFiscaliComponentiSquadra = new List <string>(); ListOraPS = ListaPersonaleSquadre.FindAll(x => x.COD_SQUADRA.Equals(OraS.COD_SQUADRA)); if (ListOraPS.Count > 0) { foreach (ORAPersonaleSquadre p in ListOraPS) { ListaCodiciFiscaliComponentiSquadra.Add(p.MATDIP); bool capoPartenza = false; bool autista = false; if (p.FLAG_CAPO_SQUADRA.Equals("S")) { capoPartenza = true; } if (p.AUTISTA.Equals("S")) { autista = true; } PersonaleVVF pVVf = _getPersonaleByCF.Get(p.MATDIP, CodSede).Result; Componente c = new Componente(p.QUALIFICA_ABBREV, pVVf.Nominativo, pVVf.Nominativo, capoPartenza, autista, false); c.CodiceFiscale = pVVf.CodFiscale; if (p.ORA_INIZIO.HasValue) { c.OrarioInizio = (DateTime)p.ORA_INIZIO; } if (p.ORA_FINE.HasValue) { c.OrarioInizio = (DateTime)p.ORA_FINE; } ComponentiSquadra.Add(c); } } Squadra squadra = new Squadra(OraS.SIGLA, Stato, ComponentiSquadra, sedeDistaccamento); squadra.Id = OraS.COD_SQUADRA.ToString(); squadra.ListaCodiciFiscaliComponentiSquadra = ListaCodiciFiscaliComponentiSquadra; return(squadra); } else { return(null);//Se il distaccamento è vuoto non viene aggiunta la squadra }; }