public async Task <BakimModel> GetirBakimAsync(int id) { BakimEntity bakim = new BakimEntity(); BakimModel bakimModel = new BakimModel(); bakim = await _bakimRep.FirstOrDefaultAsync(a => a.Id == id); return(Mapper.Map <BakimEntity, BakimModel>(bakim)); }
public async Task <BakimModel> KaydetBakimAsync(BakimModel model) { BakimEntity bakim = model.Id > 0 ? await _bakimRep.FirstOrDefaultAsync(m => m.Id == model.Id) : null; if (null == bakim) { // yeni bakımlar beklemede oluşur model.Durum = (int)Enums.BakimDurum.Beklemede; model.Tarihi = model.BaslangicTarihi; if (model.Tip == (int)Enums.BakimTip.Planli || model.Tip == (int)Enums.BakimTip.Periyodik) { // kaç adet bakım olacağı hesaplanlanmalı ve tarihi de not alınmalı TimeSpan ts = model.BitisTarihi.Subtract(model.BaslangicTarihi); int dateDiff = int.Parse(ts.TotalDays.ToString()); int BakimSayisi = dateDiff / model.Period; for (int i = 0; i < BakimSayisi; i++) { model.Tarihi = model.Tarihi.AddDays(model.Period); bakim = Mapper.Map <BakimModel, BakimEntity>(model); await _bakimRep.AddAsync(bakim); await _uow.SaveChangesAsync(); } } else { model.Tarihi = model.BaslangicTarihi; bakim = Mapper.Map <BakimModel, BakimEntity>(model); await _bakimRep.AddAsync(bakim); await _uow.SaveChangesAsync(); } } else { Mapper.Map(model, bakim); await _bakimRep.UpdateAsync(bakim); await _uow.SaveChangesAsync(); } return(Mapper.Map <BakimEntity, BakimModel>(bakim)); }