예제 #1
0
        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));
        }
예제 #2
0
        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));
        }