// GET: Consignaciones/CreateSavings public IActionResult Create(int?id) { //id == 1 consignaciones prestamo //id == 2 consignaicones ahorro //Consignaicones prestmo //Personas con prestamos activas if (id == 1) { ViewData["personas"] = new SelectList(_prestamoRepository.GetPersonasPrestamoActivoSelectList(), "Key", "Value"); } //Consignacion ahorro //Personas activas y del fondo else { ViewData["personas"] = new SelectList(_personaRepository.getFondoActivos(), "Key", "Value"); } var parametroAnho = _parametrosRepository.Get(x => x.Nombre.Equals("año")).FirstOrDefault(); ViewData["controller"] = _controller; ViewData["action"] = "Nuevo"; Model.ConsignacionMVC consignacion = new Model.ConsignacionMVC(); consignacion.TipoConsignacion = Convert.ToByte(id.Value); consignacion.Fecha = DateTime.Today; consignacion.FechaRegistro = DateTime.Today; consignacion.Id = 0; return(View(consignacion)); }
public async Task <IActionResult> Create([Bind("Id,PersonaId,TipoConsignacion,Valor,Interes,Fecha,FechaStr,FechaRegistro,YearParameter")] Model.ConsignacionMVC consignacion) { if (!FechaValidator(consignacion.Fecha)) { ModelState.AddModelError("Fecha", "La fecha seleccionada no pertenece al año parametrizado"); } if (ModelState.IsValid) { consignacion.Id = 0; var prestamoActivo = _prestamoRepository.GetPrestamoActivoPersona(consignacion.PersonaId); consignacion.PrestamoId = prestamoActivo.Id; await _consignacionRepository.CreateAsync(_mapper.Map <Model.ConsignacionMVC, DTO.ConsignacionDTO>(consignacion)); return(RedirectToAction(nameof(Index))); } if (consignacion.TipoConsignacion == 1) { ViewData["personas"] = new SelectList(_prestamoRepository.GetPersonasPrestamoActivoSelectList(), "Key", "Value"); } //Consignacion ahorro //Personas activas y del fondo else { ViewData["personas"] = new SelectList(_personaRepository.getFondoActivos(), "Key", "Value"); } ViewData["controller"] = _controller; ViewData["action"] = "Nuevo"; return(View(consignacion)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,IdPersona,TipoConsignacion,Valor,Fecha,FechaRegistro")] Model.ConsignacionMVC consignacion) { var prestamoActivo = _prestamoRepository.GetPrestamoActivoPersona(consignacion.PersonaId); if (consignacion.TipoConsignacion == 1) { if (null != prestamoActivo && prestamoActivo.Finalizado) { ModelState.AddModelError("", "La consignación seleccionada no se puede editar porque el prestamo está finalizado"); } else if (null == prestamoActivo) { ModelState.AddModelError("", "La consignación no se puede editar por que no existe un prestamo vigente"); } } if (id != consignacion.Id) { return(NotFound()); } if (FechaValidator(consignacion.Fecha)) { ModelState.AddModelError("Fecha", "La fecha seleccionada no pertenece al año parametrizado"); } if (ModelState.IsValid) { try { await _consignacionRepository.UpdateAsync(ParseToDTO(consignacion)); } catch (DbUpdateConcurrencyException) { if (!ConsignacionExists(consignacion.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } if (consignacion.TipoConsignacion == 1) { ViewData["personas"] = new SelectList(_prestamoRepository.GetPersonasPrestamoActivoSelectList(), "Key", "Value"); } //Consignacion ahorro //Personas activas y del fondo else { ViewData["personas"] = new SelectList(_personaRepository.getFondoActivos(), "Key", "Value"); } return(View(consignacion)); }
private DTO.ConsignacionDTO ParseToDTO(Model.ConsignacionMVC mvc) { return(_mapper.Map <Model.ConsignacionMVC, DTO.ConsignacionDTO>(mvc)); }