예제 #1
0
 public bool IsFileScanner()
 {
     string[] files_scanner_ids = { "20403", "20404", "20405", "20406", "20407"
                                    ,        "20501", "20502", "20503", "20504", "20505"
                                    ,        "20506", "20507" };
     foreach (var id in IDs.Split(';'))
     {
         if (!String.IsNullOrEmpty(id) && files_scanner_ids.Contains(id))
         {
             return(true);
         }
     }
     return(false);
 }
예제 #2
0
        private void loadStorage()
        {
            MyIniParseResult result;

            if (Storage != "" && ini.TryParse(Storage, out result))
            {
                String IDs;
                String sec = "Save";
                ini.Get(sec, "lastID").TryGetInt32(out lastID);
                ini.Get(sec, "lastConfig").TryGetString(out lastConfig);
                ini.Get(sec, "tickCounter").TryGetInt32(out tickCounter);
                ini.Get(sec, "name").TryGetString(out name);
                ini.Get(sec, "debug").TryGetBoolean(out debug);
                ini.Get(sec, "maxSpeed").TryGetDouble(out maxSpeed);
                ini.Get(sec, "brakeDist").TryGetDouble(out brakeDist);
                ini.Get(sec, "IDs").TryGetString(out IDs);

                String[] stationIDs = IDs.Split(' ');

                String  stationName;
                int     stationStopTime;
                int     stationOffset;
                String  positionString;
                Vector3 stationPosition;

                foreach (String ID in stationIDs)
                {
                    sec = "Station " + ID;
                    ini.Get(sec, "name").TryGetString(out stationName);
                    ini.Get(sec, "stopTime").TryGetInt32(out stationStopTime);
                    ini.Get(sec, "offset").TryGetInt32(out stationOffset);
                    ini.Get(sec, "position").TryGetString(out positionString);
                    String[] coords = positionString.Split(' ');
                    stationPosition = new Vector3(float.Parse(coords[0]), float.Parse(coords[1]), float.Parse(coords[2]));


                    Station temp = new Station(stationPosition, int.Parse(ID), stationName);
                    temp.stopTime = stationStopTime;
                    temp.offset   = stationOffset;
                    stations.Add(temp);
                }



                /* IMPORTANT:
                 * print current state to custom data
                 */
            }
        }
예제 #3
0
        public int EjecutarActividadesRutinarias(string actividadesR, int AUDI_UsuarioEdita)
        {
            //Formato de actividadesR = HIAR_Interno;ACRU_Interno;HIAR_FechaEjecutadoAnterior|HIAR_Interno;ACRU_Interno;HIAR_FechaEjecutadoAnterior
            int result = 0;

            if (actividadesR != "")
            {
                EjecucionActividadesRDAO ejecDAO = new EjecucionActividadesRDAO();
                HistorialAR  historialAR         = null;
                HistorialAR  AuxHistorialAR      = null;
                ActividadR   actividadR          = null;
                string[]     IDAct = actividadesR.Split('|');
                ControlGrupo CG    = new ControlGrupo();
                foreach (string IDs in IDAct)
                {
                    string[] ID = IDs.Split(';');

                    actividadR = new ActividadR();
                    ActividadRDAO actDAO = new ActividadRDAO();
                    actividadR.HIAR_Interno = Convert.ToInt32(ID[0]);

                    actividadR.HIAR_FechaEjecutado = DateTime.ParseExact(ID[2], "dd/MM/yyyy", null);
                    //actividadR.HIAR_FechaEjecutado = Convert.ToDateTime(ID[2]);

                    //Ejecutamos la actividad rutinaria
                    int res = ejecDAO.EjecutarActividadesRutinarias(actividadR, AUDI_UsuarioEdita);

                    if (res > 0)
                    {
                        //ahora iniciamos una nueva actividad rutinaria
                        HistorialARDAO histAR_DAO = new HistorialARDAO();
                        AuxHistorialAR = new HistorialAR();//para datos auxiliares
                        AuxHistorialAR.HIAR_Interno = actividadR.HIAR_Interno;
                        AuxHistorialAR          = histAR_DAO.ObtenerHistorialActividadRutinaria(AuxHistorialAR);
                        actividadR.ACRU_Interno = Convert.ToInt32(ID[1]);

                        historialAR = new HistorialAR();
                        historialAR.HIAR_Interno = null;
                        historialAR.ACRU_Interno = actividadR.ACRU_Interno;
                        //ultima fecha de ejecucion
                        historialAR.HIAR_FechaEjecucionAnterior = actividadR.HIAR_FechaEjecutado;

                        //1)obtenemos las frecuencias de la actividad rutinaria
                        actividadR = actDAO.ObtenerActividadPorId(actividadR);
                        if (actividadR != null)
                        {
                            switch (actividadR.ACRU_UnidadFrecuencia)//calculamos las siguientes fechas
                            {
                            case "M":
                                historialAR.HIAR_SiguienteFecha = historialAR.HIAR_FechaEjecucionAnterior.Value.AddMonths(actividadR.ACRU_Frecuencia);
                                break;

                            case "S":

                                historialAR.HIAR_SiguienteFecha = historialAR.HIAR_FechaEjecucionAnterior.Value.AddDays(actividadR.ACRU_Frecuencia * 7);
                                break;

                            case "D":
                                historialAR.HIAR_SiguienteFecha = historialAR.HIAR_FechaEjecucionAnterior.Value.AddDays(actividadR.ACRU_Frecuencia);
                                break;
                            }
                            historialAR.HIAR_Estado = "I";
                            if (AuxHistorialAR.EQUI_Interno != null)
                            {
                                historialAR.LOCA_Interno = null;
                                historialAR.EQUI_Interno = AuxHistorialAR.EQUI_Interno;
                            }
                            else
                            {
                                historialAR.EQUI_Interno = null;
                                historialAR.LOCA_Interno = AuxHistorialAR.LOCA_Interno;
                            }
                            res = histAR_DAO.InsertarHistorialAR(historialAR, AUDI_UsuarioEdita, null);
                            if (res > 0)
                            {
                                result++;
                            }
                            else
                            {
                                //corregimos la ejecucion de la actividad---anulamos la ejecucion de la actividad
                                ejecDAO.AnularEjecutarActividadesRutinarias(actividadR, AUDI_UsuarioEdita);
                            }
                        }
                        else
                        {
                            //corregimos la ejecucion de la actividad---anulamos la ejecucion de la actividad
                            ejecDAO.AnularEjecutarActividadesRutinarias(actividadR, AUDI_UsuarioEdita);
                        }
                    }
                }
                return(result);
            }
            else
            {
                return(0);
            }
        }