PageRenderTime 37ms CodeModel.GetById 15ms RepoModel.GetById 1ms app.codeStats 0ms

/ITELCA_CONTROLESTUDIOS/Controllers/SolicitudesController.cs

https://gitlab.com/oscarsalazarsevilla/ITELCA
C# | 301 lines | 240 code | 56 blank | 5 comment | 16 complexity | 25ea7dd08f497425705cbe6814511fd5 MD5 | raw file
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. using ITELCA_CLASSLIBRARY.Models;
  7. using ITELCA_CONTROLESTUDIOS.Models.ViewModels;
  8. using ITELCA_CLASSLIBRARY.Services;
  9. namespace ITELCA_CONTROLESTUDIOS.Controllers
  10. {
  11. [Authorize(Roles = "ADMINISTRADOR,COORDINADOR,ESTUDIANTE,CAJERO")]
  12. public class SolicitudesController : Controller
  13. {
  14. SolicitudesViewModel vistaModeloSolicitud;
  15. //SelectList activo;
  16. SelectList sede;
  17. OFERTASCURSOS ofertaCurso;
  18. public void IniciarVista(SOLICITUDES solicitud)
  19. {
  20. USUARIOS usuario = new ServicioUsuario().ObtenerPorLogin(User.Identity.Name);
  21. string esEstudiante="No";
  22. SelectList ListaCursosActivos = new SelectList(new ServicioOfertaCurso().ObtenerDiccionarioCursosActivos(), "Key", "Value");
  23. if (solicitud != null)
  24. {
  25. ofertaCurso = new ServicioOfertaCurso().ObtenerPorClave(Int32.Parse(solicitud.MATRICULASCURSOS.OFERTA_CURSO_ID.ToString()));
  26. sede = new SelectList(new ServicioSede().ObtenerTodos(), "SEDE_ID", "NOMBRE");
  27. }
  28. else
  29. {
  30. sede = new SelectList(new ServicioSede().ObtenerTodos(), "SEDE_ID", "NOMBRE");
  31. }
  32. vistaModeloSolicitud = new SolicitudesViewModel(solicitud, sede, usuario, null, ofertaCurso, esEstudiante, ListaCursosActivos);
  33. }
  34. public ActionResult Listar()
  35. {
  36. return View();
  37. }
  38. public ActionResult Procesar(int id)
  39. {
  40. SOLICITUDES solic = new ServicioSolicitudes().ObtenerPorClave(id);
  41. if (solic != null)
  42. {
  43. IniciarVista(solic);
  44. return View(vistaModeloSolicitud);
  45. }
  46. else
  47. {
  48. TempData["mensaje"] = "Solicitud no Encontrada";
  49. return RedirectToAction("Listar");
  50. }
  51. }
  52. [HttpPost]
  53. public JsonResult CambiarEstadoSolicitud(string id_solicitud)
  54. {
  55. List<object> lista = new List<object>();
  56. ServicioSolicitudes servicioSolicitudes = new ServicioSolicitudes();
  57. SOLICITUDES solicitud = servicioSolicitudes.ObtenerPorClave(Int32.Parse(id_solicitud));
  58. solicitud.ESTADO_SOLICITUD = 2;
  59. if (servicioSolicitudes.Modificar(solicitud))
  60. {
  61. lista.Add(new
  62. {
  63. success = true,
  64. mensaje = "Solicitud modificada con exito."
  65. });
  66. return Json(lista, JsonRequestBehavior.AllowGet);
  67. }
  68. lista.Add(new
  69. {
  70. success = false,
  71. mensaje = "Ocurrio un error al procesar la Solicitud."
  72. });
  73. return Json(lista, JsonRequestBehavior.AllowGet);
  74. }
  75. public ActionResult Nueva()
  76. {
  77. IniciarVista(null);
  78. return View(vistaModeloSolicitud);
  79. }
  80. [HttpGet]
  81. public ActionResult ConstanciaNotas()
  82. {
  83. IniciarViewModelFormularioSolicitud();
  84. return View(vistaModeloSolicitud);
  85. }
  86. [HttpPost]
  87. public JsonResult ConstanciaNotas([Bind(Prefix = "solicitud")] SOLICITUDES solicitud, FormCollection form)
  88. {
  89. List<object> lista = new List<object>();
  90. solicitud.TIPOSOLICITUD_ID = 1; // Constancia Notas
  91. solicitud.USUARIO_ID = new ServicioUsuario().ObtenerPorLogin(User.Identity.Name).USUARIO_ID;
  92. string msg = new ServicioSolicitudes().Guardar(solicitud);
  93. if (msg == "true")
  94. {
  95. lista.Add(new
  96. {
  97. success = true,
  98. mensaje = "Solicitud creada con exito."
  99. });
  100. return Json(lista, JsonRequestBehavior.AllowGet);
  101. }
  102. lista.Add(new
  103. {
  104. success = false,
  105. mensaje = "Ocurrio un error al procesar la Solicitud. " + msg
  106. });
  107. return Json(lista, JsonRequestBehavior.AllowGet);
  108. }
  109. [HttpPost]
  110. public JsonResult ConstanciaEstudios([Bind(Prefix = "solicitud")] SOLICITUDES solicitud, FormCollection form)
  111. {
  112. List<object> lista = new List<object>();
  113. solicitud.TIPOSOLICITUD_ID = 2; // Constancia Estudios
  114. solicitud.USUARIO_ID = new ServicioUsuario().ObtenerPorLogin(User.Identity.Name).USUARIO_ID;
  115. string msg = new ServicioSolicitudes().Guardar(solicitud);
  116. if (msg == "true"){
  117. lista.Add(new
  118. {
  119. success = true,
  120. mensaje = "Solicitud creada con exito."
  121. });
  122. return Json(lista, JsonRequestBehavior.AllowGet);
  123. }
  124. lista.Add(new
  125. {
  126. success = false,
  127. mensaje = "Ocurrio un error al procesar la Solicitud. "+msg
  128. });
  129. return Json(lista, JsonRequestBehavior.AllowGet);
  130. }
  131. [HttpPost]
  132. public JsonResult CartaPasantias([Bind(Prefix = "solicitud")] SOLICITUDES solicitud, FormCollection form)
  133. {
  134. List<object> lista = new List<object>();
  135. //solicitud.MATRICULASCURSOS.ALUMNO_ID = new ServicioUsuario().ObtenerPorLogin(User.Identity.Name).USUARIO_ID;
  136. solicitud.TIPOSOLICITUD_ID = 3; // Carta Pasantias
  137. solicitud.USUARIO_ID = new ServicioUsuario().ObtenerPorLogin(User.Identity.Name).USUARIO_ID;
  138. string msg = new ServicioSolicitudes().Guardar(solicitud);
  139. if (msg == "true")
  140. {
  141. lista.Add(new
  142. {
  143. success = true,
  144. mensaje = "Solicitud creada con exito."
  145. });
  146. return Json(lista, JsonRequestBehavior.AllowGet);
  147. }
  148. lista.Add(new
  149. {
  150. success = false,
  151. mensaje = "Ocurrio un error al procesar la Solicitud. "+msg
  152. });
  153. return Json(lista, JsonRequestBehavior.AllowGet);
  154. }
  155. [HttpPost]
  156. public JsonResult CambioTurno([Bind(Prefix = "solicitud")] SOLICITUDES solicitud, FormCollection form)
  157. {
  158. List<object> lista = new List<object>();
  159. /*solicitud.MATRICULASCURSOS.ALUMNO_ID = new ServicioUsuario().ObtenerPorLogin(User.Identity.Name).USUARIO_ID;
  160. MATRICULASCURSOS matriculaCurso = new ServicioMatriculaCurso().ObtenerPorClaves(int.Parse(solicitud.MATRICULA_CURSO_ID.ToString()), int.Parse(solicitud.MATRICULASCURSOS.ALUMNO_ID.ToString()));
  161. solicitud.TURNO_ID = Decimal.Parse(matriculaCurso.TURNO_ID.ToString());*/
  162. solicitud.TIPOSOLICITUD_ID = 6; // Cambio Turno
  163. solicitud.USUARIO_ID = new ServicioUsuario().ObtenerPorLogin(User.Identity.Name).USUARIO_ID;
  164. string msg = new ServicioSolicitudes().Guardar(solicitud);
  165. if (msg == "true")
  166. {
  167. lista.Add(new
  168. {
  169. success = true,
  170. mensaje = "Solicitud creada con exito."
  171. });
  172. return Json(lista, JsonRequestBehavior.AllowGet);
  173. }
  174. lista.Add(new
  175. {
  176. success = false,
  177. mensaje = "Ocurrio un error al procesar la Solicitud. "+msg
  178. });
  179. return Json(lista, JsonRequestBehavior.AllowGet);
  180. }
  181. [HttpGet]
  182. public ActionResult ConstanciaEstudios()
  183. {
  184. IniciarViewModelFormularioSolicitud();
  185. return View(vistaModeloSolicitud);
  186. }
  187. [HttpGet]
  188. public ActionResult CartaPasantias()
  189. {
  190. IniciarViewModelFormularioSolicitud();
  191. return View(vistaModeloSolicitud);
  192. }
  193. [HttpGet]
  194. public ActionResult CambioTurno()
  195. {
  196. IniciarViewModelFormularioSolicitud();
  197. return View(vistaModeloSolicitud);
  198. }
  199. public void IniciarViewModelFormularioSolicitud()
  200. {
  201. string esEstudiante = "No";
  202. SelectList ListaMatriculaCursos;
  203. SelectList ListaCursosActivos = new SelectList(new ServicioOfertaCurso().ObtenerDiccionarioCursosActivos(), "Key", "Value");
  204. USUARIOS usuario = new ServicioUsuario().ObtenerPorLogin(User.Identity.Name);
  205. if (usuario.ROLES.Any(b => b.NOMBRE == "ESTUDIANTE"))
  206. {
  207. esEstudiante = "Si";
  208. ListaMatriculaCursos = new SelectList(new ServicioMatriculaCurso().ObtenerTodosPorAlumno(usuario.USUARIO_ID), "Key", "Value");
  209. }
  210. else {
  211. usuario = null;
  212. Dictionary<string, string> Dictionary = new Dictionary<string, string>();
  213. ListaMatriculaCursos = new SelectList(Dictionary, "Key", "Value");
  214. }
  215. vistaModeloSolicitud = new SolicitudesViewModel(null, null, usuario, ListaMatriculaCursos, null, esEstudiante, ListaCursosActivos);
  216. }
  217. [HttpPost]
  218. public JsonResult Eliminar(int id)
  219. {
  220. return Json(new ServicioSolicitudes().Eliminar(id));
  221. }
  222. [HttpPost]
  223. public JsonResult ObtenerData(string sidx, string sord, int page, int rows, string filters)
  224. {
  225. object resultado = new ServicioSolicitudes().ObtenerDataGrid(sidx, sord, page, rows, filters);
  226. return Json(resultado);
  227. }
  228. [HttpPost]
  229. public JsonResult ObtenerCursosInscritosPorAlumno(string USUARIO_ID)
  230. {
  231. object resultado = new ServicioMatriculaCurso().ObtenerCursosInscritosPorAlumno(decimal.Parse(USUARIO_ID));
  232. return Json(resultado);
  233. }
  234. [HttpPost]
  235. public bool ObtenerNotasporAlumnoyCurso(string cedula, string matriculaCurso)
  236. {
  237. return new ServicioMatriculaCurso().ObtenerNotasporAlumnoyCurso(decimal.Parse(cedula), Int32.Parse(matriculaCurso));
  238. }
  239. [HttpPost]
  240. public bool validarReimpresion(string solicitud_id)
  241. {
  242. return new ServicioSolicitudes().ValidarReimpresion(Int32.Parse(solicitud_id), Session["NombreUsuario"].ToString());
  243. }
  244. }
  245. }