예제 #1
0
        public async Task <IHttpActionResult> Reseta()
        {
            try
            {
                foreach (var item in db.Cabecas)
                {
                    db.Cabecas.Remove(item);
                }

                foreach (var item in db.BracoDireitoes)
                {
                    db.BracoDireitoes.Remove(item);
                }

                foreach (var item in db.BracoEsquerdoes)
                {
                    db.BracoEsquerdoes.Remove(item);
                }

                await db.SaveChangesAsync();

                var cabeca    = db.Cabecas.ToList();
                var bEsquerdo = db.BracoDireitoes.ToList();
                var bDireito  = db.BracoEsquerdoes.ToList();

                if (cabeca.Count == 0)
                {
                    Cabeca item = new Cabeca();
                    item.Inclinacao = 0;
                    item.Rotacao    = 0;
                    db.Cabecas.Add(item);
                    await db.SaveChangesAsync();
                }

                if (bEsquerdo.Count == 0)
                {
                    BracoEsquerdo item = new BracoEsquerdo();
                    item.Cotovelo = 0;
                    item.Pulso    = 0;
                    db.BracoEsquerdoes.Add(item);
                    await db.SaveChangesAsync();
                }

                if (bDireito.Count == 0)
                {
                    BracoDireito item = new BracoDireito();
                    item.Cotovelo = 0;
                    item.Pulso    = 0;
                    db.BracoDireitoes.Add(item);
                    await db.SaveChangesAsync();
                }


                return(Ok(GetSituacaoAtual()));
            }
            catch (WebException we)
            {
                return(BadRequest(we.Message));
            }
        }
예제 #2
0
        public async Task <IHttpActionResult> Get()
        {
            try
            {
                var allCabeca    = db.Cabecas.ToList();
                var allBEsquerdo = db.BracoDireitoes.ToList();
                var allBDireito  = db.BracoEsquerdoes.ToList();

                if (allCabeca.Count == 0)
                {
                    Cabeca item = new Cabeca();
                    item.Inclinacao = 0;
                    item.Rotacao    = 0;
                    db.Cabecas.Add(item);
                    await db.SaveChangesAsync();
                }

                if (allBEsquerdo.Count == 0)
                {
                    BracoEsquerdo item = new BracoEsquerdo();
                    item.Cotovelo = 0;
                    item.Pulso    = 0;
                    db.BracoEsquerdoes.Add(item);
                    await db.SaveChangesAsync();
                }

                if (allBDireito.Count == 0)
                {
                    BracoDireito item = new BracoDireito();
                    item.Cotovelo = 0;
                    item.Pulso    = 0;
                    db.BracoDireitoes.Add(item);
                    await db.SaveChangesAsync();
                }

                var cabeca    = db.Cabecas.ToList().LastOrDefault();
                var bDireito  = db.BracoDireitoes.ToList().LastOrDefault();
                var bEsquerdo = db.BracoEsquerdoes.ToList().LastOrDefault();

                Robo robo = new Robo();
                robo.cabeca        = cabeca;
                robo.bracoDireito  = bDireito;
                robo.bracoEsquerdo = bEsquerdo;
                return(Ok(robo));
            }
            catch (WebException we)
            {
                return(BadRequest(we.Message));
            }
        }
예제 #3
0
        public void MoverCotoveloBracoEsquerdo(int estado)
        {
            if (!Enum.IsDefined(typeof(CotoveloEstado), estado))
            {
                return;
            }

            if (!ValidarProgressao((int)BracoEsquerdo.Cotovelo.Estado, estado))
            {
                return;
            }

            BracoEsquerdo.MoverCotovelo(estado);
        }
예제 #4
0
        public void RotacionarPulsoBracoEsquerdo(int estado)
        {
            if (!Enum.IsDefined(typeof(PulsoEstado), estado))
            {
                return;
            }

            if (!ValidarProgressao((int)BracoEsquerdo.Pulso.Estado, estado))
            {
                return;
            }

            BracoEsquerdo.RotacionarPulso(estado);
        }
예제 #5
0
        public async Task <IHttpActionResult> DescontrairBracoEsquerdo()
        {
            try
            {
                var bEsquerdo = db.BracoEsquerdoes.ToList().LastOrDefault();
                if (bEsquerdo.Cotovelo >= 1)
                {
                    BracoEsquerdo item = new BracoEsquerdo();
                    item.Cotovelo = bEsquerdo.Cotovelo - 1;
                    item.Pulso    = bEsquerdo.Pulso;
                    db.BracoEsquerdoes.Add(item);
                    await db.SaveChangesAsync();

                    return(Ok(GetSituacaoAtual()));
                }
                return(BadRequest());
            }
            catch (WebException we)
            {
                return(BadRequest(we.Message));
            }
        }
예제 #6
0
 public Robo()
 {
     Cabeca        = new Cabeca();
     BracoDireito  = new BracoDireito();
     BracoEsquerdo = new BracoEsquerdo();
 }