Example #1
0
        public ActionResult AddEditArchivoIngreso(Int32?ArchivoIngresoId, Int32 IngresoId, Int32 EdificioId)
        {
            AddEditArchivoIngresoViewModel ViewModel = new AddEditArchivoIngresoViewModel();

            ViewModel.ArchivoIngresoId = ArchivoIngresoId;
            ViewModel.IngresoId        = IngresoId;
            ViewModel.EdificioId       = EdificioId;
            ViewModel.Fill(CargarDatosContext());
            return(View(ViewModel));
        }
Example #2
0
        public ActionResult AddEditArchivoIngreso(AddEditArchivoIngresoViewModel ViewModel)
        {
            if (!ModelState.IsValid)
            {
                ViewModel.Fill(CargarDatosContext());
                TryUpdateModel(ViewModel);
                return(View(ViewModel));
            }
            try
            {
                using (var transacionscope = new TransactionScope())
                {
                    Ingreso  ingreso          = context.Ingreso.FirstOrDefault(x => x.IngresoId == ViewModel.IngresoId);
                    string   _rutaarchivoserv = Server.MapPath("~");
                    Edificio edificio         = context.Edificio.FirstOrDefault(x => x.EdificioId == ViewModel.EdificioId);
                    if (ViewModel.ArchivoIngresoId.HasValue)
                    {
                        ArchivoIngreso _Archivo = context.ArchivoIngreso.FirstOrDefault(x => x.ArchivoIngresoId == ViewModel.ArchivoIngresoId.Value);
                        _Archivo.Nombre = ViewModel.Archivo.FileName; //ViewModel.Nombre;

                        string _rutaarchivodir = _rutaarchivoserv + Path.Combine("Resources/Files", edificio.Acronimo);
                        if (!System.IO.Directory.Exists(_rutaarchivodir))
                        {
                            Directory.CreateDirectory(_rutaarchivodir);
                        }
                        _rutaarchivodir = Path.Combine(_rutaarchivodir, ingreso.UnidadTiempo.Descripcion);
                        if (!System.IO.Directory.Exists(_rutaarchivodir))
                        {
                            Directory.CreateDirectory(_rutaarchivodir);
                        }

                        string _nombrearc = edificio.EdificioId + "_" + DateTime.Now.Ticks.ToString() + "_" + _Archivo.ArchivoIngresoId + Path.GetExtension(ViewModel.Archivo.FileName);
                        _rutaarchivodir = Path.Combine(_rutaarchivodir, _nombrearc);

                        _Archivo.Ruta = _nombrearc;
                        ViewModel.Archivo.SaveAs(_rutaarchivodir);
                        context.Entry(_Archivo).State = System.Data.Entity.EntityState.Modified;
                    }
                    else
                    {
                        ArchivoIngreso _Archivo = new ArchivoIngreso();
                        _Archivo.Nombre = ViewModel.Archivo.FileName; //ViewModel.Nombre;

                        string _rutaarchivodir = _rutaarchivoserv + Path.Combine("Resources/Files", edificio.Acronimo);
                        if (!System.IO.Directory.Exists(_rutaarchivodir))
                        {
                            Directory.CreateDirectory(_rutaarchivodir);
                        }
                        _rutaarchivodir = Path.Combine(_rutaarchivodir, ingreso.UnidadTiempo.Descripcion);
                        if (!System.IO.Directory.Exists(_rutaarchivodir))
                        {
                            Directory.CreateDirectory(_rutaarchivodir);
                        }

                        string _nombrearc = edificio.EdificioId + "_" + DateTime.Now.Ticks.ToString() + "_" + _Archivo.ArchivoIngresoId + Path.GetExtension(ViewModel.Archivo.FileName);
                        _rutaarchivodir        = Path.Combine(_rutaarchivodir, _nombrearc);
                        _Archivo.Ruta          = _nombrearc;
                        _Archivo.Estado        = ConstantHelpers.EstadoActivo;
                        _Archivo.FechaRegistro = DateTime.Now;
                        _Archivo.IngresoId     = ViewModel.IngresoId;
                        ViewModel.Archivo.SaveAs(_rutaarchivodir);
                        context.ArchivoIngreso.Add(_Archivo);
                    }
                    context.SaveChanges();
                    transacionscope.Complete();
                    PostMessage(MessageType.Success);
                }
            }
            catch { InvalidarContext(); PostMessage(MessageType.Error); }
            return(RedirectToAction("LstArchivoIngresoAdmin", new { IngresoId = ViewModel.IngresoId, EdificioId = ViewModel.EdificioId }));
        }