public async Task <IActionResult> PuantajEkleAsync([FromBody] List <PuantajEkleResource> pEkleResourceList)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(pEkleResourceList));
            }

            var secenekler = await secenekListesiRepository.GetAllAsync();

            foreach (var pEkleResource in pEkleResourceList)
            {
                var personelId = pEkleResource.uid;
                var puantajlar = pEkleResource.cells.Select(c => {
                    var secenek        = secenekler.FirstOrDefault(s => s.Id == c.value);
                    var date           = DateTime.Parse(c.date, new CultureInfo("tr-TR", true));
                    var puantajGirdisi = new PuantajGirdisi {
                        PersonelId = personelId, Tarih = date, SecenekId = secenek.Id
                    };
                    return(puantajGirdisi);
                });

                var today = DateTime.Today;
                if (!(puantajlar.Any(p => today.Year > p.Tarih.Year ||
                                     (today.Month > p.Tarih.Month && today.Day > 10))) ||
                    User.IsInRole("ÜstDüzeyYetkili") ||
                    User.IsInRole("SistemYöneticisi"))
                {
                    await puantajRepository.AddOrUpdateAsync(puantajlar.ToList());

                    var result = await unitOfWork.CompleteAsync();

                    var tarihler  = string.Join(",", puantajlar.Select(p => p.Tarih));
                    var logString = String.Format("{0} adlı kullanıcı {1} id li personel üzerinde şu {2} üzerinde  puantaj değişiklikliği yaptı", User.Identity.Name, personelId, tarihler);
                    Log.Information(logString);
                }
            }


            return(Ok(Json("tamamlandı")));
        }
        public async Task <IActionResult> KisiselPuantajGecmisiEkle(long Id, IFormFile excel)
        {
            var pEkleResource = await puantajOku(excel.OpenReadStream(), Id);

            var personelId = pEkleResource.uid;
            var puantajlar = pEkleResource.cells.Select(c => {
                var date           = DateTime.Parse(c.date, new CultureInfo("tr-TR", true));
                var puantajGirdisi = new PuantajGirdisi {
                    PersonelId = personelId, Tarih = date, SecenekId = c.value
                };
                return(puantajGirdisi);
            });

            await puantajRepository.AddOrUpdateAsync(puantajlar.ToList());

            var tarihler = string.Join(",", puantajlar.Select(p => p.Tarih));

            var result = await unitOfWork.CompleteAsync();

            var logString = String.Format("{0} adlı kullanıcı {1} id li personelin puantaj geçmişini ekledi.", User.Identity.Name, personelId);

            return(Redirect($"/Puantaj/Kisisel/{Id}"));
        }
Exemplo n.º 3
0
 public void Delete(PuantajGirdisi entity)
 {
     puantajlar.Remove(entity);
 }
Exemplo n.º 4
0
        public void Update(PuantajGirdisi entity)
        {
            puantajlar.Attach(entity);

            dbContext.Entry(entity).State = EntityState.Modified;
        }
Exemplo n.º 5
0
 public async Task AddAsync(PuantajGirdisi entity)
 {
     await puantajlar.AddAsync(entity);
 }