示例#1
0
        public async Task <ActionResult> AllLeaders()
        {
            ViewBag.Url = Url.Action("AllLeaders");
            List <Leader> AllLeaderList = await LeaderWebAPI.GetAllLeaders();

            var LeaderViewIndex = GetNames(AllLeaderList);

            return(View(LeaderViewIndex));
        }
示例#2
0
        public ActionResult Create(LeaderViewModel leader)
        {
            Guid c = Guid.NewGuid();

            leader.LeaderTitle.Chave = c.ToString().Replace("-", "");
            LeaderWebAPI.SaveLeaderAsync(leader.LeaderTitle);
            if (leader.LeaderToInsert?.Count > 0)
            {
                SaveNewLeaderFromExistsLeader(leader);
            }
            return(RedirectToAction("AllLeaders").Success("Dirigente cadastrado com sucesso"));
        }
示例#3
0
        public async Task <ActionResult> Delete(string key, bool isTitle = false)
        {
            if (isTitle)
            {
                List <Leader> leaderList = await LeaderWebAPI.GetLeadersByKey(key);

                foreach (var item in leaderList)
                {
                    DeleteLeader(item.Chave);
                }
            }
            return(RedirectToAction("AllLeaders").Success("Dirigente excluido com sucesso."));
        }
示例#4
0
        private void SaveNewLeaderFromExistsLeader(LeaderViewModel leader)
        {
            var leaderRoot = leader.LeaderTitle;

            foreach (var item in leader.LeaderToInsert)
            {
                Guid c = Guid.NewGuid();
                LeaderWebAPI.SaveLeaderAsync(new Leader
                {
                    Chave = leaderRoot.Chave + "_" + c.ToString().Replace("-", ""),
                    Valor = item
                });
            }
        }
示例#5
0
        public async Task <ActionResult> Edit(string key)
        {
            ViewBag.Url = Url.Action("AllLeaders");
            if (!String.IsNullOrEmpty(key?.Trim()))
            {
                var leaderFound = await LeaderWebAPI.GetLeadersByKey(key);

                if (leaderFound?.Count > 0)
                {
                    var leaderMapped = GetNames(leaderFound).FirstOrDefault();
                    return(View(leaderMapped));
                }
            }
            return(RedirectToAction("AllLeaders"));
        }
示例#6
0
 public ActionResult Edit(LeaderViewModel leader)
 {
     if (leader.LeaderToInsert?.Count > 0)
     {
         SaveNewLeaderFromExistsLeader(leader);
     }
     if (leader.LeaderToDelete?.Count > 0)
     {
         foreach (var item in leader.LeaderToDelete)
         {
             DeleteLeader(item);
         }
     }
     if (leader.LeaderContentList?.Count > 0)
     {
         var leaderDistinct = leader.LeaderContentList.GroupBy(e => e.Chave).Select(t => t.FirstOrDefault()).ToList();
         foreach (var item in leaderDistinct)
         {
             LeaderWebAPI.UpdateLeaderAsync(item);
         }
     }
     LeaderWebAPI.UpdateLeaderAsync(leader.LeaderTitle);
     return(RedirectToAction("AllLeaders").Success("Dirigente editado com sucesso"));
 }
示例#7
0
 private void DeleteLeader(string key)
 {
     LeaderWebAPI.DeleteLeaderAsync(key);
 }