/**
     * Salva o paciente no banco.
     */
    public void saveMovement()
    {
        var muscles = musculos.text.Split(',');

        string movunderscored    = (nomeMovimento.text).Replace(' ', '_');
        string physiounderscored = (GlobalController.instance.admin.persona.nomePessoa).Replace(' ', '_');

        string pathSave = GlobalController.instance.admin.idPessoa + "-";

        pathSave += physiounderscored + "/";
        pathSave += movunderscored + "-";
        pathSave += DateTime.Now.ToString("HHmmss", System.Globalization.DateTimeFormatInfo.InvariantInfo);

        Movimento.Insert(GlobalController.instance.admin.idFisioterapeuta,
                         nomeMovimento.text, descricao.text, pathSave);

        List <Movimento> movementsList = Movimento.Read();

        foreach (var muscle in muscles)
        {
            name = new string((from c in muscle where char.IsLetterOrDigit(c) select c).ToArray());
            if (!checkMuscle(name))
            {
                Musculo.Insert(name);
                List <Musculo> musclesList = Musculo.Read();
                MovimentoMusculo.Insert(musclesList[musclesList.Count - 1].idMusculo, movementsList[movementsList.Count - 1].idMovimento);
            }
        }

        GlobalController.instance.movement = movementsList[movementsList.Count - 1];
        SceneManager.LoadScene("Clinic");
    }
        public static void TestMusculoUpdate()
        {
            using (var conn = new SqliteConnection(GlobalController.path))
            {
                conn.Open();

                Musculo.Insert("bíceps");
                Musculo.Insert("tríceps");
                Musculo.Insert("quadríceps");

                Musculo.Update(3, "quintríceps");
                Musculo.Update(2, "quadríceps");

                var check = "SELECT * FROM MUSCULO;";

                var id     = 0;
                var result = "";
                int i      = 1;

                string[] x = new string[] { "", "b", "quadr", "quintr" };

                using (var cmd = new SqliteCommand(check, conn))
                {
                    using (IDataReader reader = cmd.ExecuteReader())
                    {
                        try
                        {
                            while (reader.Read())
                            {
                                if (!reader.IsDBNull(0))
                                {
                                    id = reader.GetInt32(0);
                                    Assert.AreEqual(id, i);
                                }

                                if (!reader.IsDBNull(1))
                                {
                                    result = reader.GetString(1);
                                    string z = x[i] + "íceps";
                                    Assert.AreEqual(result, z);
                                }

                                i++;
                            }
                        }
                        finally
                        {
                            reader.Dispose();
                            reader.Close();
                        }
                    }
                    cmd.Dispose();
                }
                conn.Dispose();
                conn.Close();
            }
        }
    /**
     * Salva o Movimento no banco.
     */
    public void saveMovement()
    {
        List <InputField> allInputs = new List <InputField>();

        allInputs.Add(nomeMovimento);
        allInputs.Add(musculos);
        allInputs.Add(descricao);

        if (ValidInput(allInputs))
        {
            foreach (var x in allInputs)
            {
                ApplyColor(x, 1);
            }

            var muscles = musculos.text.Split(',');

            string movunderscored    = (nomeMovimento.text).Replace(' ', '_');
            string physiounderscored = (GlobalController.instance.admin.persona.nomePessoa).Replace(' ', '_');

            string pathSave = GlobalController.instance.admin.idPessoa + "-";

            pathSave += physiounderscored + "/";
            pathSave += movunderscored + "-";
            pathSave += DateTime.Now.ToString("HHmmss", System.Globalization.DateTimeFormatInfo.InvariantInfo);

            Movimento.Insert(GlobalController.instance.admin.idFisioterapeuta,
                             nomeMovimento.text, pathSave + ".points", descricao.text);

            List <Movimento> movementsList = Movimento.Read();

            foreach (var muscle in muscles)
            {
                name = new string((from c in muscle where char.IsLetterOrDigit(c) select c).ToArray());
                if (!checkMuscle(name))
                {
                    Musculo.Insert(name);
                    List <Musculo> musclesList = Musculo.Read();
                    MovimentoMusculo.Insert(musclesList[musclesList.Count - 1].idMusculo, movementsList[movementsList.Count - 1].idMovimento);
                }
            }

            GlobalController.patientOrPhysio   = true;
            GlobalController.instance.movement = movementsList[movementsList.Count - 1];
            if (GlobalController.Sensor == false)
            {
                Flow.StaticRealtimeGraphKinectPhysio();
            }
            else
            {
                Flow.StaticRealtimeGraphUDPPhysio();
            }
        }
    }
        public void TestMovimentoMusculoRead()
        {
            using (var conn = new SqliteConnection(GlobalController.path))
            {
                conn.Open();

                Pessoa.Insert("fake name1", "m", "1995-01-01", "6198732711", null);
                Pessoa.Insert("fake name2", "m", "1995-01-02", "6198732712", null);

                Fisioterapeuta.Insert(1, "abracadabra1", "demais1", null, null);
                Fisioterapeuta.Insert(2, "abracadabra2", "demais2", "DF", "123424");

                Movimento.Insert(1, "Movimento1", "Musculo Redondo Maior", null);
                Movimento.Insert(2, "Movimento2", "Musculo Redondo Maior", "Dificuldade nesse local");

                Musculo.Insert("bíceps");
                Musculo.Insert("tríceps");

                MovimentoMusculo.Insert(1, 1);
                MovimentoMusculo.Insert(1, 2);
                MovimentoMusculo.Insert(2, 1);
                MovimentoMusculo.Insert(2, 2);

                List <MovimentoMusculo> allMuscMov = MovimentoMusculo.Read();

                for (int i = 1, j = 1, k = 1; i <= allMuscMov.Count; i++, k = 3 - k)
                {
                    Assert.AreEqual(allMuscMov[i - 1].idMusculo, j);
                    Assert.AreEqual(allMuscMov[i - 1].idMovimento, k);
                    if (i == 2)
                    {
                        j++;
                    }
                }

                conn.Dispose();
                conn.Close();
            }

            return;
        }
        public static void TestMusculoReadValue()
        {
            using (var conn = new SqliteConnection(GlobalController.path))
            {
                conn.Open();

                Musculo.Insert("bíceps");
                Musculo.Insert("tríceps");
                Musculo.Insert("quadríceps");

                string[] x = new string[] { "", "b", "tr", "quadr" };

                for (int i = 1; i <= 3; ++i)
                {
                    Musculo musculo = Musculo.ReadValue(i);
                    Assert.AreEqual(musculo.idMusculo, i);
                    Assert.AreEqual(musculo.nomeMusculo, (x[i] + "íceps"));
                }

                conn.Dispose();
                conn.Close();
            }
        }
        public static void TestMusculoRead()
        {
            using (var conn = new SqliteConnection(GlobalController.path))
            {
                conn.Open();

                Musculo.Insert("bíceps");
                Musculo.Insert("tríceps");
                Musculo.Insert("quadríceps");

                List <Musculo> allMuscs = Musculo.Read();

                string[] x = new string[] { "", "b", "tr", "quadr" };

                for (int i = 1; i <= allMuscs.Count; ++i)
                {
                    Assert.AreEqual(allMuscs[i - 1].idMusculo, i);
                    Assert.AreEqual(allMuscs[i - 1].nomeMusculo, (x[i] + "íceps"));
                }

                conn.Dispose();
                conn.Close();
            }
        }
        public void TestMovimentoMusculoDeleteValue()
        {
            using (var conn = new SqliteConnection(GlobalController.path))
            {
                conn.Open();

                Pessoa.Insert("fake name1", "m", "1995-01-01", "6198732711", null);
                Pessoa.Insert("fake name2", "m", "1995-01-02", "6198732712", null);

                Fisioterapeuta.Insert(1, "abracadabra1", "demais1", null, null);
                Fisioterapeuta.Insert(2, "abracadabra2", "demais2", "DF", "123424");

                Movimento.Insert(1, "Movimento1", "Musculo Redondo Maior", null);
                Musculo.Insert("bíceps");

                MovimentoMusculo.Insert(1, 1);

                var check = "SELECT EXISTS(SELECT 1 FROM 'MOVIMENTOMUSCULO' WHERE \"idMusculo\" = \"1\" AND \"idMovimento\" = \"1\" LIMIT 1)";

                var id = 0;
                using (var cmd = new SqliteCommand(check, conn))
                {
                    using (IDataReader reader = cmd.ExecuteReader())
                    {
                        try
                        {
                            while (reader.Read())
                            {
                                if (!reader.IsDBNull(0))
                                {
                                    id = reader.GetInt32(0);
                                }
                            }
                        }
                        finally
                        {
                            reader.Dispose();
                            reader.Close();
                        }
                    }
                    cmd.Dispose();
                }

                Assert.AreEqual(id, 1);
                MovimentoMusculo.DeleteValue(1, 1);

                id = 0;
                using (var cmd = new SqliteCommand(check, conn))
                {
                    using (IDataReader reader = cmd.ExecuteReader())
                    {
                        try
                        {
                            while (reader.Read())
                            {
                                if (!reader.IsDBNull(0))
                                {
                                    id = reader.GetInt32(0);
                                }
                            }
                        }
                        finally
                        {
                            reader.Dispose();
                            reader.Close();
                        }
                    }
                    cmd.Dispose();
                }

                Assert.AreEqual(id, 0);

                conn.Dispose();
                conn.Close();
            }
            return;
        }
        public void TestMovimentoMusculoInsert()
        {
            using (var conn = new SqliteConnection(GlobalController.path))
            {
                conn.Open();

                Pessoa.Insert("fake name1", "m", "1995-01-01", "6198732711", null);
                Pessoa.Insert("fake name2", "m", "1995-01-02", "6198732712", null);

                Fisioterapeuta.Insert(1, "abracadabra1", "demais1", null, null);
                Fisioterapeuta.Insert(2, "abracadabra2", "demais2", "DF", "123424");

                Movimento.Insert(1, "Movimento1", "Musculo Redondo Maior", null);
                Movimento.Insert(2, "Movimento2", "Musculo Redondo Maior", "Dificuldade nesse local");

                Musculo.Insert("bíceps");
                Musculo.Insert("tríceps");

                MovimentoMusculo.Insert(1, 1);
                MovimentoMusculo.Insert(1, 2);
                MovimentoMusculo.Insert(2, 1);
                MovimentoMusculo.Insert(2, 2);

                var check = "SELECT * FROM MOVIMENTOMUSCULO;";

                var id = 0;
                int i  = 1;
                int j  = 1;
                int k  = 1;
                using (var cmd = new SqliteCommand(check, conn))
                {
                    using (IDataReader reader = cmd.ExecuteReader())
                    {
                        try
                        {
                            while (reader.Read())
                            {
                                if (!reader.IsDBNull(0))
                                {
                                    id = reader.GetInt32(0);
                                    Assert.AreEqual(id, j);
                                }

                                if (!reader.IsDBNull(1))
                                {
                                    id = reader.GetInt32(1);
                                    Assert.AreEqual(id, i);
                                }

                                i = 3 - i;
                                if (k == 2)
                                {
                                    j++;
                                }
                                k++;
                            }
                        }
                        finally
                        {
                            reader.Dispose();
                            reader.Close();
                        }
                    }
                    cmd.Dispose();
                }
                conn.Dispose();
                conn.Close();
            }
            return;
        }
        public static void TestMusculoDeleteValue()
        {
            using (var conn = new SqliteConnection(GlobalController.path))
            {
                conn.Open();

                Musculo.Insert("bíceps");

                var check = "SELECT EXISTS(SELECT 1 FROM 'MUSCULO' WHERE \"idMusculo\" = \"1\" LIMIT 1)";

                var result = 0;
                using (var cmd = new SqliteCommand(check, conn))
                {
                    using (IDataReader reader = cmd.ExecuteReader())
                    {
                        try
                        {
                            while (reader.Read())
                            {
                                if (!reader.IsDBNull(0))
                                {
                                    result = reader.GetInt32(0);
                                }
                            }
                        }
                        finally
                        {
                            reader.Dispose();
                            reader.Close();
                        }
                    }
                    cmd.Dispose();
                }

                Assert.AreEqual(result, 1);
                Musculo.DeleteValue(1);

                result = 0;
                using (var cmd = new SqliteCommand(check, conn))
                {
                    using (IDataReader reader = cmd.ExecuteReader())
                    {
                        try
                        {
                            while (reader.Read())
                            {
                                if (!reader.IsDBNull(0))
                                {
                                    result = reader.GetInt32(0);
                                }
                            }
                        }
                        finally
                        {
                            reader.Dispose();
                            reader.Close();
                        }
                    }
                    cmd.Dispose();
                }

                Assert.AreEqual(result, 0);

                conn.Dispose();
                conn.Close();
            }
        }
예제 #10
0
    /**
     * Salva o Movimento no banco.
     */
    public void saveMovement()
    {
        List <InputField> allInputs = new List <InputField>();

        allInputs.Add(nomeMovimento);
        allInputs.Add(musculos);
        allInputs.Add(descricao);

        if (ValidInput(allInputs))
        {
            foreach (var x in allInputs)
            {
                ApplyColor(x, 1);
            }

            var muscles = GetWords(musculos.text);

            string movunderscored    = (nomeMovimento.text).Replace(' ', '_');
            string physiounderscored = (GlobalController.instance.admin.persona.nomePessoa).Replace(' ', '_');

            StringBuilder path = new StringBuilder();
            path.Append(GlobalController.instance.admin.idPessoa + "-");
            path.Append(physiounderscored + "/");
            path.Append(movunderscored + "-");
            path.Append(DateTime.Now.ToString("HHmmss", System.Globalization.DateTimeFormatInfo.InvariantInfo));
            path.Append(".points");

            string pathSave = path.ToString();

            Movimento.Insert(GlobalController.instance.admin.idFisioterapeuta,
                             nomeMovimento.text,
                             pathSave,
                             descricao.text);

            var lastMovement = Movimento.GetLast();
            GlobalController.instance.movement = lastMovement;

            foreach (var muscle in muscles)
            {
                if (!checkMuscle(muscle))
                {
                    Musculo.Insert(muscle);
                    Musculo lastMusculo = Musculo.GetLast();
                    MovimentoMusculo.Insert(lastMusculo.idMusculo, lastMovement.idMovimento);
                }
                else
                {
                    Musculo musculoExistente = presentMuscle(muscle);
                    MovimentoMusculo.Insert(musculoExistente.idMusculo, lastMovement.idMovimento);
                }
            }

            GlobalController.patientOrPhysio = true;


            // Checks the sensor choice from the file

            StringBuilder sensorPath = new StringBuilder();
            sensorPath.Append("sensor.choice");

            string choicePath = sensorPath.ToString();

            if (File.Exists(choicePath))             // User has already chosen a sensor
            {
                string line      = File.ReadAllText(choicePath);
                int    fileValue = Convert.ToInt32(line);

                if (fileValue.Equals(0))                   // Kinect selected
                {
                    GlobalController.Sensor = false;
                }
                else if (fileValue.Equals(1))                   // UDP selected
                {
                    GlobalController.Sensor = true;
                }
            }
            else             // Kinect is default value
            {
                GlobalController.Sensor = false;
            }

            // Redirects user to correct scene

            if (GlobalController.Sensor == false)
            {
                Flow.StaticRealtimeGraphKinectPhysio();
            }
            else
            {
                Flow.StaticRealtimeGraphUDPPhysio();
            }
        }
    }