Ejemplo n.º 1
0
        public String doacao_CheckInDoacao(int userId, int idDoacao, int idSolicitacao, int idHemo)
        {
            Doacao doacao = new Doacao();
            Solicitacoes sol = new Solicitacoes();

            doacao.idDoacao         = idDoacao;
            doacao.usuarioDoador    = userId;
            doacao.idSolicitacao    = idSolicitacao;
            doacao.idHemocentro     = idHemo;
            sol.codDoacao           = idDoacao;

            List<Boolean> json = new List<Boolean>();
            JavaScriptSerializer jsonClient = new JavaScriptSerializer();
            NotificacaoPush push = new NotificacaoPush();

            if (doacao.checkInDonation())
            {
                push.pushNotificacao(sol.getUsuarioSolicitador(), "Nova doação efetuada. Parabéns! <3");
                json.Insert(0, true);
            }
            else
            {
                push.pushNotificacao(userId, "Check-In efetuado fora da área do hemocentro.");
                json.Insert(0, false);
            }

            return jsonClient.Serialize(json);
        }
Ejemplo n.º 2
0
        public String doacao_InserirNovaDoacao(int userId, int idDonation)
        {
            Doacao doacao = new Doacao();
            doacao.idSolicitacao = idDonation;
            doacao.usuarioDoador = userId;

            List<Boolean> json = new List<Boolean>();
            if(doacao.insertDoacao()){
                json.Insert(0, true);
                NotificacaoPush push = new NotificacaoPush();
                push.pushNotificacao(userId, "Uma pretenção de doação foi aberta para sua solicitação");
            }
            else
            {
                json.Insert(0, false);
            }

            JavaScriptSerializer jsonClient = new JavaScriptSerializer();
            return jsonClient.Serialize(json);
        }
Ejemplo n.º 3
0
    public void sendNotPush(int userId, int idHemocentro, int idSolicitacao)
    {
        using (SqlConnection conn = new SqlConnection(connectionString))
        {
            conn.Open();

            try
            {
                String cmdInsert = "SELECT USU_IdUsuario, USU_Lat, USU_Long FROM TB_Usuarios WHERE USU_IdUsuario <> @userId and USU_StatusApto = 1 and USU_NotificacaoPush = 1 and USU_Long > 0 and USU_Lat > 0";
                String cmdHemo = "Select HEM_Lat, HEM_Long from TB_Hemocentros where HEM_IdHemocentro = @idHemo";

                SqlCommand getHemoData = new SqlCommand(cmdHemo, conn);
                getHemoData.Parameters.AddWithValue("@idHemo", idHemocentro);

                SqlDataReader hemoData = getHemoData.ExecuteReader();

                double hemoLat = 0;
                double hemoLog = 0;
                if (hemoData.Read())
                {
                    hemoLat = hemoData.GetDouble(0);
                    hemoLog = hemoData.GetDouble(1);
                }
                hemoData.Close();

                SqlCommand checkusr = new SqlCommand(cmdInsert, conn);
                checkusr.Parameters.AddWithValue("@userId", userId);

                SqlDataReader reader = checkusr.ExecuteReader();

                calcDistance calc = new calcDistance();
                NotificacaoPush push = new NotificacaoPush();

                foreach (DbDataRecord recordUser in reader)
                {
                    if (calc.calcDistances(hemoLat, hemoLog, recordUser.GetDouble(1), recordUser.GetDouble(2)) <= 10)
                    {
                        push.pushNotificacao(recordUser.GetInt32(0), "A Solicitação de número " + idSolicitacao + " foi aberta próximo a você.");
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.ToString());
            }
            finally
            {
                conn.Close();
            }
        }
    }