示例#1
0
        public static string CrearSolicitud(AlumnoServWS.Alumno alumno, ApoderadoServWS.Apoderado apoderado)
        {
            try
            {
                NivelesServWS.NivelesServiceClient nivelClient = new NivelesServWS.NivelesServiceClient();
                NivelesServWS.Niveles niveles = nivelClient.Obtener(alumno.Nivel, alumno.Grado);
                if (niveles != null)
                {
                    ApoderadoServWS.ApoderadoServiceClient servicioApoderado = new ApoderadoServWS.ApoderadoServiceClient();
                    servicioApoderado.Crear(apoderado);
                    alumno.IdNivel = niveles.IdNivel;
                    AlumnoServWS.AlumnoServiceClient alumnoServiceClient = new AlumnoServWS.AlumnoServiceClient();
                    alumnoServiceClient.Crear(alumno);

                    SolicitudServiceClient solicitudService = new SolicitudServiceClient();
                    Solicitud solicitud = new Solicitud()
                    {
                        NroDniAlumno    = alumno.DNI,
                        NroDniApoderado = alumno.NroDniApoderado,
                        IdNivel         = alumno.IdNivel,
                        Tipo            = "Nuevo",
                        Estado          = "Pendiente",
                        FechaSolicitud  = DateTime.Now
                    };
                    Solicitud solicitudCreado = solicitudService.Crear(solicitud);
                    return("OK");
                }
                return("ERROR");
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
示例#2
0
        public static String Grabar(SolicitudServWS.Solicitud solicitud, ApoderadoServWS.Apoderado apoderado)
        {
            try
            {
                SolicitudServiceClient solicitudService = new SolicitudServiceClient();
                //Solicitud solicitud = new Solicitud()
                //{
                //    NroDniAlumno = txtDNI.Value,
                //    NroDniApoderado = txtDNIApoderado.Value,
                //    Certificado = txtCertificado.Value,
                //    IdNivel = int.Parse(txtIdNivel.Value),
                //    Tipo = txtTipo.Value,
                //    Estado = txtEstado.Value,
                //    Observaciones = txtObservaciones.Value,
                //    FechaSolicitud = DateTime.ParseExact(txtSolicitud.Value, "dd/MM/yyyy", null),
                //    FechaCita = DateTime.Now,
                //    FechaRespuesta = DateTime.Now,
                //    IdPreMatricula = int.Parse(txtIdPreMatricula.Value)
                //};

                Solicitud solicitudModificado = solicitudService.Modificar(solicitud);
                string    ls_serviciocorreo   = WebConfigurationManager.AppSettings["servicioCorreo"];

                if (ls_serviciocorreo == null)
                {
                    ls_serviciocorreo = "";
                }

                if (solicitud.Estado == "Citado" && ls_serviciocorreo != "" && apoderado.Correo != "")
                {
                    //Correo desde el servicio
                    JavaScriptSerializer js = new JavaScriptSerializer();
                    MensajeCorreoRequest solicitudCorreo = new MensajeCorreoRequest()
                    {
                        emisor       = "*****@*****.**",
                        clave        = "sitece$2019",
                        destinatario = apoderado.Correo,
                        asunto       = "Citación del Colegio Maristas",
                        mensaje      = "Sr(a) " + apoderado.Nombres + ", Ud está citado al colegio el día " + solicitud.FechaCita.ToString("dd/MM/yyyy")
                    };

                    string         jsonSolicitud = js.Serialize(solicitudCorreo);
                    byte[]         ByteCorreo    = Encoding.UTF8.GetBytes(jsonSolicitud);
                    HttpWebRequest request       = WebRequest.Create(ls_serviciocorreo) as HttpWebRequest;
                    request.Method        = "POST";
                    request.ContentLength = ByteCorreo.Length;
                    request.ContentType   = "application/json";
                    var rqt = request.GetRequestStream();

                    rqt.Write(ByteCorreo, 0, ByteCorreo.Length);
                    HttpWebResponse       rsp             = (HttpWebResponse)request.GetResponse();
                    StreamReader          reader          = new StreamReader(rsp.GetResponseStream());
                    string                tramaJson       = reader.ReadToEnd();
                    MensajeCorreoResponse respuestaCorreo = js.Deserialize <MensajeCorreoResponse>(tramaJson);

                    //Correo electrónico Cola
                    var ironMq = IronSharp.IronMQ.Client.New(new IronClientConfig {
                        ProjectId = WebConfigurationManager.AppSettings["IronProjectId"], Token = WebConfigurationManager.AppSettings["IronToken"], Host = "mq-aws-eu-west-1-1.iron.io", Scheme = "http", Port = 80
                    });

                    MensajeCorreoRequest cor = new MensajeCorreoRequest()
                    {
                        emisor       = "*****@*****.**",
                        clave        = "sitece$2019",
                        destinatario = apoderado.Correo,
                        asunto       = "Citación del Colegio Maristas",
                        mensaje      = "Sr(a) " + apoderado.Nombres + ", Ud está citado al colegio el día " + solicitud.FechaCita.ToString("dd/MM/yyyy")
                    };
                    QueueClient queue     = ironMq.Queue("mensajeCorreo");
                    string      messageId = queue.Post(cor);

                    //SMS Cola
                    if (apoderado.NroCelular != "")
                    {
                        MensajeTextoRequest men = new MensajeTextoRequest()
                        {
                            nroCelular = apoderado.NroCelular,
                            mensaje    = "Sr(a) " + apoderado.Nombres + ", Ud está citado al colegio el día " + solicitud.FechaCita.ToString("dd/MM/yyyy")
                        };
                        QueueClient queue2     = ironMq.Queue("mensajeTexto");
                        string      messageId2 = queue2.Post(men);
                    }
                }
                return("OK");
            }
            catch (FaultException <SolicitudServWS.ManejadorException> error)
            {
                throw new Exception("ERROR: " + error.Message + ", " + error.Detail.Descripcion);
            }
        }