public List <ORASQPersonaleSquadre> GetListaSQPersonaleSquadre(string CodSede) { List <ORASQPersonaleSquadre> ListaSQPersonaleSquadre = new List <ORASQPersonaleSquadre>(); DBContext context = new DBContext(); Connessione InfoCon = context.GetConnectionFromCodiceSede(CodSede); OracleConnection conn = new OracleConnection(InfoCon.ConnectionString); conn.Open(); OracleCommand cmd = new OracleCommand(); cmd.Connection = conn; cmd.CommandText = "select "+ "NVL(COD_SQUADRA, 0) as COD_SQUADRA, "+ "NVL(TURNO, '') as TURNO, "+ "NVL(DATA_SERVIZIO, '') as DATA_SERVIZIO, "+ "NVL(STATO, '') as STATO, "+ "NVL(SIGLA, '') as SIGLA, "+ "NVL(COD_DISTACCAMENTO, 0) as COD_DISTACCAMENTO, "+ "NVL(SQUADRA_EMERGENZA, '') as SQUADRA_EMERGENZA, "+ "NVL(VISUALIZZA, '') as VISUALIZZA "+ "FROM SALAOPER.SQ_PERSONALE_SQUADRE " + " where STATO IN ('L','A','R') "; cmd.CommandType = CommandType.Text; OracleDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { ORASQPersonaleSquadre ORASQPs = new ORASQPersonaleSquadre(); ORASQPs.COD_SQUADRA = Utility.Utility.GetDBField(dr, "COD_SQUADRA"); ORASQPs.TURNO = Utility.Utility.GetDBField(dr, "TURNO"); ORASQPs.DATA_SERVIZIO = Utility.Utility.GetDBField(dr, "DATA_SERVIZIO"); ORASQPs.STATO = Utility.Utility.GetDBField(dr, "STATO"); ORASQPs.SIGLA = Utility.Utility.GetDBField(dr, "SIGLA"); ORASQPs.COD_DISTACCAMENTO = Utility.Utility.GetDBField(dr, "COD_DISTACCAMENTO"); ORASQPs.SQUADRA_EMERGENZA = Utility.Utility.GetDBField(dr, "SQUADRA_EMERGENZA"); ORASQPs.VISUALIZZA = Utility.Utility.GetDBField(dr, "VISUALIZZA"); ListaSQPersonaleSquadre.Add(ORASQPs); } conn.Dispose(); return(ListaSQPersonaleSquadre); }
public ORASQPersonaleSquadre GetSQPersonaleSquadreByCodSquadra(string CodSede, decimal CodSquadra) { DBContext context = new DBContext(); Connessione InfoCon = context.GetConnectionFromCodiceSede(CodSede); OracleConnection conn = new OracleConnection(InfoCon.ConnectionString); conn.Open(); OracleCommand cmd = new OracleCommand(); cmd.Connection = conn; cmd.CommandText = "select "+ "NVL(COD_SQUADRA, 0) as COD_SQUADRA, "+ "NVL(TURNO, '') as TURNO, "+ "NVL(DATA_SERVIZIO, '') as DATA_SERVIZIO, "+ "NVL(STATO, '') as STATO, "+ "NVL(SIGLA, '') as SIGLA, "+ "NVL(COD_DISTACCAMENTO, 0) as COD_DISTACCAMENTO, "+ "NVL(SQUADRA_EMERGENZA, '') as SQUADRA_EMERGENZA, "+ "NVL(VISUALIZZA, '') as VISUALIZZA "+ "FROM SALAOPER.SQ_PERSONALE_SQUADRE WHERE COD_SQUADRA =:COD_SQUADRA" + " AND STATO IN ('L','A','R') " + "and TO_CHAR(SYSDATE , 'DD-MM-YYYY') = TO_CHAR(DATA_SERVIZIO, 'DD-MM-YYYY') "; cmd.CommandType = CommandType.Text; cmd.BindByName = true; cmd.Parameters.Add(new OracleParameter("COD_SQUADRA", OracleDbType.Decimal, CodSquadra, ParameterDirection.Input)); OracleDataReader dr = cmd.ExecuteReader(); ORASQPersonaleSquadre ORASQPs = new ORASQPersonaleSquadre(); while (dr.Read()) { ORASQPs.COD_SQUADRA = Utility.Utility.GetDBField(dr, "COD_SQUADRA"); ORASQPs.TURNO = Utility.Utility.GetDBField(dr, "TURNO"); ORASQPs.DATA_SERVIZIO = Utility.Utility.GetDBField(dr, "DATA_SERVIZIO"); ORASQPs.STATO = Utility.Utility.GetDBField(dr, "STATO"); ORASQPs.SIGLA = Utility.Utility.GetDBField(dr, "SIGLA"); ORASQPs.COD_DISTACCAMENTO = Utility.Utility.GetDBField(dr, "COD_DISTACCAMENTO"); ORASQPs.SQUADRA_EMERGENZA = Utility.Utility.GetDBField(dr, "SQUADRA_EMERGENZA"); ORASQPs.VISUALIZZA = Utility.Utility.GetDBField(dr, "VISUALIZZA"); } conn.Dispose(); return(ORASQPs); }
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 }; }