Example #1
0
        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);
        }
Example #2
0
        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);
        }
Example #3
0
        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
            };
        }