private void NotificacionCalificadoConcepto(ConceptViewModel pConceptViewModel) { var base_url = ConfigurationManager.AppSettings["site.url"]; UserBL userBL = new UserBL(); UserViewModel investigador = userBL.ObtenerUser(pConceptViewModel.user_id_created.Value); SendEmailNotificationBL oSendEmailNotificationBL = new SendEmailNotificationBL(); NotificationConceptViewModel oNotificationConceptViewModel = new NotificationConceptViewModel(); oNotificationConceptViewModel.name = investigador.contact_name; oNotificationConceptViewModel.url_view_concept = base_url + @"/Concept"; oNotificationConceptViewModel.to = investigador.user_email; oNotificationConceptViewModel.url_politicas = ConfigurationManager.AppSettings["site.url.politicas"]; oNotificationConceptViewModel.url_contacto = ConfigurationManager.AppSettings["site.url.contacto"]; oNotificationConceptViewModel.url_privacidad = ConfigurationManager.AppSettings["site.url.privacidad"]; oNotificationConceptViewModel.draft_law_title = pConceptViewModel.title; oSendEmailNotificationBL.EnviarNotificacionConcepto(oNotificationConceptViewModel, "notificacion.concept.calificado"); NotificationBL oNotificationBL = new NotificationBL(); NotificationViewModel pNotificationViewModel = new NotificationViewModel(); pNotificationViewModel.user_id = investigador.id; pNotificationViewModel.message = "El concepto con número '" + pConceptViewModel.concept_id + "' ha sido calificado."; pNotificationViewModel.url = @"/Concept"; oNotificationBL.Agregar(pNotificationViewModel); }
public JsonResult Crear([Bind(Include = "investigator_id,user_id,first_name,second_name,last_name,second_last_name,gender_id,mobile_phone," + "birthdate_text,user_email,user_pass,document_type_id,doc_nro,nationality_id,contract_name,phone,address,user_pass2,institution_id," + "investigation_group_id,program_id,interest_areas,address_country_id,department_id,address_municipality_id,commissions,educational_institution_id,education_level_id,CVLAC")] InvestigatorViewModel pViewModel) { // TODO: Add insert logic here if (pViewModel == null) { return(Json(new { message_error = "Datos inavalidos", status = "0", })); } pViewModel.investigator_id = 0; pViewModel.user_id_created = 0; pViewModel.birthdate = DateTime.ParseExact(pViewModel.birthdate_text, "dd/MM/yyyy", CultureInfo.InvariantCulture); var user_pass = pViewModel.user_pass; pViewModel.user_pass = Helper.Encripta(pViewModel.user_pass); pViewModel.user_name = pViewModel.first_name + " " + pViewModel.second_name + " " + pViewModel.last_name + " " + pViewModel.second_last_name; pViewModel.user_name = pViewModel.user_name.Replace(" ", " ").Replace(" ", " "); pViewModel.contact_name = pViewModel.user_name; string user_code = Guid.NewGuid().ToString(); pViewModel.user_code_activate = user_code; UserBL oBL = new UserBL(); var user_id = oBL.AgregarInvestigador(pViewModel); SendEmailNotificationBL oSendEmailNotificationBL = new SendEmailNotificationBL(); NotificationGeneralAccountViewModel oNotification = new NotificationGeneralAccountViewModel(); oNotification.url_activar_cuenta = ConfigurationManager.AppSettings["site.url"] + "/Account/Activar/?code=" + user_code; oNotification.url_home = ConfigurationManager.AppSettings["site.url"]; oNotification.url_politicas = ConfigurationManager.AppSettings["site.url.politicas"]; oNotification.url_contacto = ConfigurationManager.AppSettings["site.url.contacto"]; oNotification.url_privacidad = ConfigurationManager.AppSettings["site.url.privacidad"]; oNotification.name = pViewModel.contact_name; oNotification.to = pViewModel.user_email; oSendEmailNotificationBL.EnviarNotificacionActivarCuenta(oNotification); return(Json(new { // this is what datatables wants sending back status = "1", })); }
public JsonResult Recuperar([Bind(Include = "user_email")] LoginViewModel pLoginModel) { UserBL oUserBL = new UserBL(); UserViewModel oUserViewModel = oUserBL.ObtenerUser(pLoginModel.user_email); SendEmailNotificationBL oSendEmailNotificationBL = new SendEmailNotificationBL(); if (oUserViewModel == null || oUserViewModel.id <= 0) { return(Json(new { message_error = "No hay una cuenta asociada al correo electrónico ingresado.", status = "0", })); } if (oUserViewModel.user_status_id == 2) { return(Json(new { message_error = "El usuario esta en inactivo. Por favor comuniquese con el administrador del sistema para activar su cuenta", status = "0", })); } string user_code = Guid.NewGuid().ToString(); oUserBL.ActualizarCodigoRecuperar(oUserViewModel.id, user_code); NotificationGeneralAccountViewModel oNotification = new NotificationGeneralAccountViewModel(); oNotification.url_recuperar_cuenta = ConfigurationManager.AppSettings["site.url"] + "/Account/CambiarPassword/?code=" + user_code; oNotification.url_home = ConfigurationManager.AppSettings["site.url"]; oNotification.url_politicas = ConfigurationManager.AppSettings["site.url.politicas"]; oNotification.url_contacto = ConfigurationManager.AppSettings["site.url.contacto"]; oNotification.url_privacidad = ConfigurationManager.AppSettings["site.url.privacidad"]; oNotification.name = oUserViewModel.contact_name; oNotification.to = oUserViewModel.user_email; oSendEmailNotificationBL.EnviarNotificacionRecuperarCuenta(oNotification); return(Json(new { // this is what datatables wants sending back status = "1", })); }
public ActionResult Crear([Bind(Include = "id,user_name,user_email,user_email2,user_pass,document_type_id,doc_nro,nationality_id,contact_name,phone,address,user_role_id,user_status_id,institution_ids,address_country_id,department_id,address_municipality_id")] UserViewModel pUserViewModel) { // TODO: Add insert logic here if (pUserViewModel == null) { return(HttpNotFound()); } pUserViewModel.id = 0; pUserViewModel.user_id_created = AuthorizeUserAttribute.UsuarioLogeado().user_id; pUserViewModel.user_pass = Helper.Encripta(Guid.NewGuid().ToString()); string user_code = Guid.NewGuid().ToString(); pUserViewModel.user_code_recover = user_code; UserBL oUserBL = new UserBL(); oUserBL.Agregar(pUserViewModel); SendEmailNotificationBL oSendEmailNotificationBL = new SendEmailNotificationBL(); NotificationGeneralAccountViewModel oNotification = new NotificationGeneralAccountViewModel(); oNotification.url_recuperar_cuenta = ConfigurationManager.AppSettings["site.url"] + "/Account/CambiarPassword/?code=" + user_code; oNotification.url_home = ConfigurationManager.AppSettings["site.url"]; oNotification.url_politicas = ConfigurationManager.AppSettings["site.url.politicas"]; oNotification.url_contacto = ConfigurationManager.AppSettings["site.url.contacto"]; oNotification.url_privacidad = ConfigurationManager.AppSettings["site.url.privacidad"]; oNotification.name = pUserViewModel.contact_name; oNotification.to = pUserViewModel.user_email; oSendEmailNotificationBL.EnviarNotificacionNuevaCuenta(oNotification); return(RedirectToAction("Index")); }
private void NotificacionNuevaSolicitud(ConsultationViewModel pConsultationViewModel, string subject) { var base_url = ConfigurationManager.AppSettings["site.url"]; UserBL userBL = new UserBL(); List <UserViewModel> evaluadores = userBL.ObtenerPorPermiso(118);// 12 = perfil evaluador foreach (UserViewModel evaluador in evaluadores) { SendEmailNotificationBL oSendEmailNotificationBL = new SendEmailNotificationBL(); NotificationGeneralAccountViewModel oNotificationConceptViewModel = new NotificationGeneralAccountViewModel(); oNotificationConceptViewModel.name = evaluador.contact_name; oNotificationConceptViewModel.url_solicitud_concepto = base_url + @"/Consultation/Ver/" + pConsultationViewModel.consultation_id; oNotificationConceptViewModel.to = evaluador.user_email; oNotificationConceptViewModel.url_home = ConfigurationManager.AppSettings["site.url"]; oNotificationConceptViewModel.url_politicas = ConfigurationManager.AppSettings["site.url.politicas"]; oNotificationConceptViewModel.url_contacto = ConfigurationManager.AppSettings["site.url.contacto"]; oNotificationConceptViewModel.url_privacidad = ConfigurationManager.AppSettings["site.url.privacidad"]; oSendEmailNotificationBL.EnviarNotificacionSolicitudConcepto(oNotificationConceptViewModel, subject); NotificationBL oNotificationBL = new NotificationBL(); NotificationViewModel pNotificationViewModel = new NotificationViewModel(); pNotificationViewModel.user_id = evaluador.id; pNotificationViewModel.message = "Hay una nueva solicitud de concepto con número '" + pConsultationViewModel.consultation_id + "'"; pNotificationViewModel.url = @"/Consultation/Ver/" + pConsultationViewModel.consultation_id; oNotificationBL.Agregar(pNotificationViewModel); } }
static void Main(string[] args) { try { new Program(); logger.Info("Inicio Proceso: Notificacion.Nuevos.Proyectos.Ley"); DraftLawBL oDraftLawBL = new DraftLawBL(); List <DraftLawViewModel> list = oDraftLawBL.ObtenerNotificables(); logger.Info("Proceso Notificacion.Nuevos.Proyectos.Ley: " + list.Count()); if (list.Count() > 0) { UserBL oUserBL = new UserBL(); List <InvestigatorViewModel> investigadores = oUserBL.ObtenerInvestigadores(); SendEmailNotificationBL oSendEmailNotificationBL = new SendEmailNotificationBL(); foreach (InvestigatorViewModel investigador in investigadores) { try { logger.Info("Inicio Investigador: " + investigador.contact_name); List <DraftLawViewModel> proyectos_asociados = list.Where(a => investigador.commissions.Contains(a.commission_id.Value) && investigador.interest_areas.Contains(a.interest_area_id.Value)).ToList(); logger.Info("Proyectyso Nuevos: " + proyectos_asociados.Count()); if (proyectos_asociados != null && proyectos_asociados.Count > 0) { NotificationDraftLawViewModel oNotification = new NotificationDraftLawViewModel(); oNotification.name = investigador.contact_name; oNotification.url = ConfigurationManager.AppSettings["site.url"] + "/Investigator/MisProyectosLey"; oNotification.to = investigador.user_email; oNotification.DraftLaws = proyectos_asociados; oNotification.url_home = ConfigurationManager.AppSettings["site.url"]; oNotification.url_politicas = ConfigurationManager.AppSettings["site.url.politicas"]; oNotification.url_contacto = ConfigurationManager.AppSettings["site.url.contacto"]; oNotification.url_privacidad = ConfigurationManager.AppSettings["site.url.privacidad"]; oSendEmailNotificationBL.EnviarNotificacionInvestigadorProyectosNuevos(oNotification); NotificationBL oNotificationBL = new NotificationBL(); NotificationViewModel pNotificationViewModel = new NotificationViewModel(); pNotificationViewModel.user_id = investigador.user_id; pNotificationViewModel.message = "Se han registrado proyecto(s) de ley de sus áreas de interés"; pNotificationViewModel.url = @"/Investigator/MisProyectosLey"; oNotificationBL.Agregar(pNotificationViewModel); } logger.Info("Fin Investigador: " + investigador.contact_name); } catch (Exception ex) { logger.Info("Error en Notificacion.Nuevos.Proyectos.Ley:"); logger.Info("Mensaje: " + ex.Message); logger.Info("StackTrace: " + ex.StackTrace); logger.Error("Notificacion.Nuevos.Proyectos.Ley: ", ex); } } oDraftLawBL.ActualizarNotificacion(list); } logger.Info("Fin de Proceso: Notificacion.Nuevos.Proyectos.Ley"); } catch (Exception ex) { logger.Info("Error en Notificacion.Nuevos.Proyectos.Ley:"); logger.Info("Mensaje: " + ex.Message); logger.Info("StackTrace: " + ex.StackTrace); logger.Error("Notificacion.Nuevos.Proyectos.Ley: ", ex); } }
public IHttpActionResult EnviarNotificacion(ConceptSendNotification filter) { var base_url = ConfigurationManager.AppSettings["site.url"]; UserBL userBL = new UserBL(); UserViewModel congresista = userBL.ObtenerUser(filter.user_id); ConceptBL oConceptBL = new ConceptBL(); var concept = oConceptBL.Obtener(filter.concept_id); InvestigatorViewModel investigador = userBL.ObtenerInvestigator(concept.investigator_id.Value); SendEmailNotificationBL oSendEmailNotificationBL = new SendEmailNotificationBL(); if (filter.solicitud_datos_investigador == 1) { NotificationConceptMovil oNotificationViewModel = new NotificationConceptMovil(); oNotificationViewModel.concept_id = concept.concept_id; oNotificationViewModel.contact_data_name = investigador.contact_name; oNotificationViewModel.contact_data_phone = investigador.phone; oNotificationViewModel.contact_data_email = investigador.user_email; oNotificationViewModel.name = congresista.contact_name; // oNotificationViewModel.to = congresista.user_email; oNotificationViewModel.url_politicas = ConfigurationManager.AppSettings["site.url.politicas"]; oNotificationViewModel.url_contacto = ConfigurationManager.AppSettings["site.url.contacto"]; oNotificationViewModel.url_privacidad = ConfigurationManager.AppSettings["site.url.privacidad"]; oSendEmailNotificationBL.EnviarNotificacionMovil(oNotificationViewModel, "notificacion.movil.investigator.data"); } if (filter.solicitud_ampliacion == 1) { NotificationConceptMovil oNotificationViewModel = new NotificationConceptMovil(); oNotificationViewModel.concept_id = concept.concept_id; oNotificationViewModel.contact_data_name = congresista.contact_name; oNotificationViewModel.contact_data_phone = congresista.phone; oNotificationViewModel.contact_data_email = congresista.user_email; oNotificationViewModel.name = investigador.contact_name; oNotificationViewModel.message = filter.message; oNotificationViewModel.url_politicas = ConfigurationManager.AppSettings["site.url.politicas"]; oNotificationViewModel.url_contacto = ConfigurationManager.AppSettings["site.url.contacto"]; oNotificationViewModel.url_privacidad = ConfigurationManager.AppSettings["site.url.privacidad"]; oSendEmailNotificationBL.EnviarNotificacionMovil(oNotificationViewModel, "notificacion.movil.congresista.data"); } var result = new { data = 1 }; return(Ok(result)); }