예제 #1
0
        public ServiceResult <Nothing> SnimiDozvoljeneAkcije(int ulogaId, SnimiDozvoljeneAkcijeRequestModel model)
        {
            var stareDozvoljeneAkcije = context.PravoAkcijaUloge.Where(a => a.UlogaId == ulogaId)
                                        .ToList();

            var zaBrisanje = stareDozvoljeneAkcije.Where(st => model.Akcije
                                                         .All(a => a != st.PravoAkcijaId))
                             .ToList();

            var nove = model.Akcije.Where(a => stareDozvoljeneAkcije
                                          .All(st => st.PravoAkcijaId != a))
                       .ToList();

            var nevazeciTokeni = context.Tokeni.Where(a => a.UlogaId == ulogaId && a.DatumIsteka > DateTime.Now).ToList();

            foreach (var token in nevazeciTokeni)
            {
                token.DatumIsteka = DateTime.Now.AddMinutes(-1);
            }

            context.PravoAkcijaUloge.RemoveRange(zaBrisanje);

            context.PravoAkcijaUloge.AddRange(
                nove.Select(n => new PravoAkcijaUloga
            {
                PravoAkcijaId = n,
                UlogaId       = ulogaId
            })
                );

            context.SaveChanges();

            return(Ok());
        }
예제 #2
0
        public IActionResult SnimiDozvoljeneAkcije(int ulogaId, [FromBody] SnimiDozvoljeneAkcijeRequestModel model)
        {
            var result = ulogaService.SnimiDozvoljeneAkcije(ulogaId, model);

            return(Convert(result));
        }