Ejemplo n.º 1
0
        public void TestMethodModificarSolicitud()
        {
            DateTime fecSolicitud = new DateTime(2019, 4, 7);
            DateTime fecRpta      = new DateTime(2019, 4, 7);
            DateTime fecCita      = new DateTime(2019, 4, 10);
            SolicitudServiceClient solicitudService = new SolicitudServiceClient();
            Solicitud solicitud = solicitudService.Obtener(0, "44553322");

            solicitud.Estado         = "Citado";
            solicitud.FechaCita      = fecCita;
            solicitud.FechaRespuesta = fecRpta;
            solicitud.Observaciones  = "Ninguno";
            Solicitud solicitudCreado = solicitudService.Modificar(solicitud);

            Assert.AreEqual("44553322", solicitudCreado.NroDniAlumno);
            Assert.AreEqual("66553322", solicitudCreado.NroDniApoderado);
            Assert.AreEqual(3, solicitudCreado.IdNivel);
            Assert.AreEqual("Antiguo", solicitudCreado.Tipo);
            Assert.AreEqual("Citado", solicitudCreado.Estado);
            Assert.AreEqual(fecSolicitud.Date, solicitud.FechaSolicitud.Date);
            Assert.AreEqual(fecRpta.Date, solicitud.FechaRespuesta.Date);
            Assert.AreEqual(fecCita.Date, solicitud.FechaCita.Date);
            Assert.AreEqual("Ninguno", solicitudCreado.Observaciones);
        }
Ejemplo n.º 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);
            }
        }