Ejemplo n.º 1
0
        public async Task <ActionResult> EditaAdmin(AdminListDetailsBeacon model)
        {
            DataService dataService = new DataService();

            if (ModelState.IsValid)
            {
                Admin novoAdmin = new Admin();
                if (User.Identity.Name == "toze")
                {
                    novoAdmin.name     = model.EditaAdminViewModel.Nome;
                    novoAdmin.username = model.EditaAdminViewModel.Username;
                    novoAdmin.email    = model.EditaAdminViewModel.Email;
                    novoAdmin.password = model.EditaAdminViewModel.Password;
                }
                else
                {
                    string pass = sha256_hash(model.EditaAdminViewModel.Password);
                    novoAdmin.name     = model.EditaAdminViewModel.Nome;
                    novoAdmin.username = model.EditaAdminViewModel.Username;
                    novoAdmin.email    = model.EditaAdminViewModel.Email;
                    novoAdmin.password = pass;
                }

                if (User.Identity.Name == "toze")
                {
                    List <BA> baaa = new List <BA>();
                    baaa = dataService.GetBAAsync();
                    int max = 0;
                    int i   = 0;
                    for (i = 0; i < baaa.Count(); i++)
                    {
                        if (max < baaa[i].baID)
                        {
                            max = baaa[i].baID;
                        }
                    }
                    for (i = 0; i < model.listaDetailsBeacon.Count(); i++)
                    {
                        if (model.listaDetailsBeacon[i].addAdmin == true && baaa.FirstOrDefault(x => x.beaconID == model.listaDetailsBeacon[i].beaconID && x.adminemail == model.EditaAdminViewModel.Email) == null)
                        {
                            max = max + 1;
                            BA ba = new BA();
                            ba.baID       = max;
                            ba.adminemail = model.EditaAdminViewModel.Email;
                            ba.beaconID   = model.listaDetailsBeacon[i].beaconID;
                            bool verdade = dataService.AddBaAsync(ba);
                        }
                        else if (baaa.FirstOrDefault(x => model.listaDetailsBeacon[i].addAdmin == true && x.beaconID == model.listaDetailsBeacon[i].beaconID && x.adminemail == model.EditaAdminViewModel.Email) != null)
                        {
                            continue;
                        }
                        else
                        {
                            for (int j = 0; j < baaa.Count(); j++)
                            {
                                if (baaa[j].adminemail == model.EditaAdminViewModel.Email && baaa[j].beaconID == model.listaDetailsBeacon[i].beaconID)
                                {
                                    dataService.DeletaBAAsync(baaa[j].baID);
                                    break;
                                }
                            }
                        }
                    }
                }

                bool a = await dataService.UpdateAdmin(novoAdmin);

                if (a == true)
                {
                    Success(string.Format("'<b>{0}</b>' edited with success!", model.EditaAdminViewModel.Nome), true);
                    return(RedirectToAction("Index", "Home"));
                }
                ModelState.AddModelError("", "User already registered");
            }


            return(View(model));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> EditaAdmin(String id)
        {
            Admin admin                     = new Admin();
            EditaAdminViewModel ad          = new EditaAdminViewModel();
            DataService         dataService = new DataService();

            if (User.Identity.Name == "toze")
            {
                admin = await dataService.GetAdminByIdAsync(id);

                ad.Username        = admin.username;
                ad.Email           = admin.email;
                ad.Nome            = admin.name;
                ad.ConfirmPassword = admin.password;
                ad.Password        = admin.password;
            }
            else
            {
                admin = await dataService.GetAdminByIdAsync(id);

                ad.Username = admin.username;
                ad.Email    = admin.email;
                ad.Nome     = admin.name;
                //ad.ConfirmPassword = admin.password;
                //ad.Password = admin.password;
            }



            List <Beacon> beacon = new List <Beacon>();

            beacon = dataService.GetBeaconAsync();
            List <ListaBeaconD> be = new List <ListaBeaconD>();
            ListaBeaconD        bea;

            for (int i = 0; i < beacon.Count; i++)
            {
                bea = new ListaBeaconD();

                bea.beaconID   = beacon[i].beaconID;
                bea.majorvalue = beacon[i].majorvalue;
                bea.minorvalue = beacon[i].minorvalue;
                bea.model      = beacon[i].model;
                String[] state = beacon[i].name.Split('-');
                bea.name = state[1];


                List <BA> ba = new List <BA>();
                ba = dataService.GetBAAsync();
                for (int j = 0; j < ba.Count; j++)
                {
                    if (ba[j].adminemail == admin.email && ba[j].beaconID == beacon[i].beaconID)
                    {
                        bea.addAdmin = true;
                        break;
                    }

                    else
                    {
                        bea.addAdmin = false;
                    }
                }

                be.Add(bea);
            }


            AdminListDetailsBeacon objBind = new AdminListDetailsBeacon();

            objBind.EditaAdminViewModel = ad;
            objBind.listaDetailsBeacon  = be;

            return(View(objBind));
        }