Esempio n. 1
0
        /// <summary>
        /// Fondea múltiples barcazas de una sola vez.
        /// </summary>
        /// <param name="etapa_id"></param>
        /// <param name="barcaza_id"></param>
        /// <param name="riocanal"></param>
        /// <param name="pos"></param>
        /// <param name="fecha"></param>
        /// <returns></returns>
        public ActionResult fondear_barcazas_multiple(int etapa_id, string barcaza_id, string riocanal, string pos, string fecha)
        {
            var latlon = DaoLib.parsePos(pos);

            List <int>      etapas     = new List <int>();
            List <int>      barcazas   = new List <int>();
            List <string>   riocanales = new List <string>();
            List <decimal?> lats       = new List <decimal?>();
            List <decimal?> lons       = new List <decimal?>();
            List <string>   fechas     = new List <string>();

            foreach (string barcaza in barcaza_id.Split(','))
            {
                if (!String.IsNullOrEmpty(barcaza))
                {
                    etapas.Add(Convert.ToInt32(etapa_id));
                    barcazas.Add(Convert.ToInt32(barcaza));

                    riocanales.Add(riocanal);
                    lats.Add(latlon[0]);
                    lons.Add(latlon[1]);
                    fechas.Add(fecha);
                }
            }

            DaoLib.fondear_barcazas_multiple(etapas.ToArray(), barcazas.ToArray(), riocanales.ToArray(), lats.ToArray(), lons.ToArray(), fechas.ToArray());

            // Para actualizar listado de barcazas de viaje. HACK
            DaoLib.actualizar_listado_de_barcazas(etapa_id.ToString());

            return(RedirectToAction("ver", "Carga", new { etapa_id = etapa_id, refresh_viajes = "1" }));
        }