public IActionResult AssignToProcedure([FromBody] RoomAssignmentModel data)
        {
            try
            {
                Db.Connection.Open();
                var cmd = Db.Connection.CreateCommand() as MySqlCommand;
                cmd.CommandText = string.Format(@"SELECT * FROM patalpos_uzimtumas where patalpa_id = {0}", data.RoomId);
                var res = cmd.ExecuteReader().Read();
                Db.Connection.Close();

                if (res)
                {
                    return(StatusCode(500, "Patalpos priskirti nepavyko patikrinkite kas ją naudoja."));
                }
                else
                {
                    Db.Connection.Open();
                    cmd.CommandText = (string.Format(@"INSERT INTO patalpos_uzimtumas(patalpa_id, nuo, iki) VALUES ({0}, '{1}', '{2}')", data.RoomId, data.From.Date, data.To.Date));
                    cmd.ExecuteNonQuery();
                    Db.Connection.Close();

                    Db.Connection.Open();
                    cmd.CommandText = string.Format(@"UPDATE proceduros_tipas SET patalpa_id = CONCAT('{0}', ';') WHERE id = {1}", data.RoomId, data.ProcType);
                    cmd.ExecuteNonQuery();
                    Db.Connection.Close();
                }
                return(Ok());
            }
            catch (Exception e)
            {
                return(StatusCode(500, "Patalpos priskirti nepavyko patikrinkite kas ją naudoja."));
            }
        }
        public IActionResult AssignToDoctor([FromBody] RoomAssignmentModel data)
        //public IActionResult AssignToDoctor([FromRoute] int id, [FromBody] int tabNum, [FromBody] DateTime from, [FromBody] DateTime to)
        {
            try
            {
                Db.Connection.Open();
                var cmd = Db.Connection.CreateCommand() as MySqlCommand;
                cmd.CommandText = string.Format(@"SELECT * FROM patalpos_uzimtumas where patalpa_id = {0}", data.RoomId);
                var res = cmd.ExecuteReader().Read();
                Db.Connection.Close();

                if (res)
                {
                    return(StatusCode(500, "Patalpos priskirti nepavyko patikrinkite kas ją naudoja."));
                }
                else
                {
                    Db.Connection.Open();
                    cmd.CommandText = (string.Format(@"UPDATE personalo_darbuotojai SET fk_PATALPAnr = {0} WHERE tabelio_numeris = {1}", data.RoomId, data.TabNum));
                    cmd.ExecuteNonQuery();

                    cmd.CommandText = (string.Format(@"INSERT INTO patalpos_uzimtumas (patalpa_id, nuo, iki) VALUES ({0}, '{1}', '{2}')", data.RoomId, data.From.Date, data.To.Date));
                    cmd.ExecuteNonQuery();
                    Db.Connection.Close();
                }
                return(Ok());
            }
            catch (Exception e)
            {
                return(StatusCode(500, "Patalpos priskirti nepavyko patikrinkite kas ją naudoja."));
            }
        }
        public IActionResult AssignToPatient([FromBody] RoomAssignmentModel data)
        {
            try
            {
                Db.Connection.Open();
                var cmd = Db.Connection.CreateCommand() as MySqlCommand;
                cmd.CommandText = string.Format(@"SELECT * FROM patalpos_uzimtumas where patalpa_id = {0} and pacientas_asmensk = {1}", data.RoomId, data.PatientCode);
                var res = cmd.ExecuteReader().Read();
                Db.Connection.Close();

                Db.Connection.Open();
                cmd.CommandText = string.Format(@"SELECT *
                                                FROM patalpos_uzimtumas pu 
                                                JOIN patalpos p on pu.patalpa_id = p.nr
                                                WHERE pu.pacientas_asmensk IS NOT NULL AND p.nr = {0}
                                                GROUP BY pu.patalpa_id
                                                HAVING COUNT(pu.patalpa_id) < p.vietu_sk", data.RoomId);
                var res2 = cmd.ExecuteReader().Read();
                Db.Connection.Close();

                if (res || !res2)
                {
                    return(StatusCode(500, "Patalpos priskirti nepavyko patikrinkite kas ją naudoja."));
                }
                else
                {
                    Db.Connection.Open();
                    cmd.CommandText = string.Format(@"INSERT INTO patalpos_uzimtumas(patalpa_id, nuo, iki, pacientas_asmensk) VALUES ({0}, '{1}', '{2}', {3})", data.RoomId, data.From.Date, data.To.Date, data.PatientCode);
                    cmd.ExecuteNonQuery();
                    Db.Connection.Close();

                    Db.Connection.Open();
                    cmd.CommandText = string.Format(@"UPDATE pacientas SET fk_PATALPAid = {0} WHERE fk_ASMENINE_INFOasmens_kodas = {1}", data.RoomId, data.PatientCode);
                    cmd.ExecuteNonQuery();
                    Db.Connection.Close();
                }
                return(Ok());
            }
            catch (Exception e)
            {
                return(StatusCode(500, "Patalpos priskirti nepavyko patikrinkite kas ją naudoja."));
            }
        }