public void FinalizaInstancia(FormFinalizacionRequest request, int id_proceso_instancia) { var proceso_instancia = this.procesoInstanciaRepositorio.ListarUno(x => x.id_proceso_instancia == id_proceso_instancia); if (proceso_instancia == null) { this.Abort(404, "Recurso no encontrado"); } try { proceso_instancia.cantidad_final = request.cantidad; proceso_instancia.fecha_finalizacion = request.fecha_finalizacion; proceso_instancia.tipo_finalizacion = request.tipo_finalizacion; proceso_instancia.motivo_finalizacion = request.motivo; proceso_instancia.estado = "1"; proceso_instancia.DAT_PROCESO_PLAZO.ToList().ForEach(x => { if (string.IsNullOrEmpty(x.estado)) { x.estado = "1"; x.anotacion = request.motivo; x.fecha_final = request.fecha_finalizacion; } }); this.procesoInstanciaRepositorio.Actualizar(proceso_instancia); this.unitOfWork.Guardar(); } catch (Exception e) { Abort(500, "Ocurrió un error interno", null, e); } }
public ActionResult FinalizarInstancia(int id, int id_proceso_instancia, FormFinalizacionRequest request, UserInformation user) { return(this.TryCatch(() => { var esProcurador = user.MiAplicacion.Exists(x => x.NombreRol == "Procurador"); this.procesoService.CanUpdateProceso(id, user.Id, esProcurador); this.detailProcesoService.FinalizaInstancia(request, id_proceso_instancia); var instancias = this.detailProcesoService.ListarInstancias(id); return this.JsonResponse(true, 200, "Se finalizó la instancia", new { instancias }); })); }
public void Finalizar(int id, FormFinalizacionRequest request) { var proceso = this.procesoRepositorio.ListarUno(x => x.id == id); try { using (TransactionScope scope = new TransactionScope()) { proceso.ESTADO_PROCESO = 1; proceso.ESTADO_ARCHIVAMIENTO = request.estado_archivamiento; proceso.TIPO_FINALIZACION = Convert.ToInt32(request.tipo_finalizacion); proceso.RESOLUCION_FINALIZACION = request.resolucion; proceso.FECHA_FINALIZACION = request.fecha_finalizacion.Value.ToString("dd/MM/yyyy"); proceso.MOTIVO_FINALIZACION = request.motivo; proceso.MONTO_FINALIZACION = request.cantidad; proceso.AUDIT_FINALIZACION = DateTime.Now; proceso.ID_TIPO_MONTO = request.id_tipo_monto; proceso.USUARIO_FINALIZACION = request.usuario; proceso.DAT_PROCESO_INSTANCIA.ToList().ForEach(x => { if (string.IsNullOrEmpty(x.estado)) { x.estado = "1"; x.fecha_finalizacion = request.fecha_finalizacion; x.tipo_finalizacion = request.estado_archivamiento.ToString(); x.cantidad_final = request.cantidad; x.motivo_finalizacion = request.motivo; x.DAT_PROCESO_PLAZO.ToList().ForEach(p => { if (string.IsNullOrEmpty(p.estado)) { p.estado = "1"; p.anotacion = request.motivo; p.fecha_final = request.fecha_finalizacion; } }); } }); this.unitOfWork.Guardar(); scope.Complete(); } } catch (Exception e) { Abort(500, "Ocurrió un error interno", null, e); } }
public ActionResult Finalizar(int id, FormFinalizacionRequest request, UserInformation user) { return(this.TryCatch(() => { if (!user.MiAplicacion.Exists(x => x.NombreRol == "Procurador")) { Response.StatusCode = 401; return this.JsonResponse(true, 401, "No está autorizado para realizar esta acción"); } request.usuario = user.UserName; this.procesoService.Finalizar(id, request); return this.JsonResponse(true, 200, "Proceso Finalizado"); })); }