public static void ApplyTo(this EinsatzCreateModel model, Entities.Einsatz entity) { entity.Anmerkungen = model.Anmerkungen; entity.TaetigkeitId = (int)model.Taetigkeit; entity.Hilfesuchender = model.Hilfesuchender; entity.VermitteltDurch = model.VermitteltDurch; entity.VermitteltAm = model.VermitteltAm.UtcDateTime; entity.Dauer = model.Dauer; }
public async Task <Einsatz> AddEinsatz(string helferId, EinsatzCreateModel createModel) { var helfer = await _db.Helfer.SingleOrDefaultAsync(p => p.Id == helferId) ?? throw new InvalidOperationException($"Helfer {helferId} not found"); var einsatz = new Entities.Einsatz { Helfer = helfer, Id = Guid.NewGuid().ToString() }; createModel.ApplyTo(einsatz); _db.Add(einsatz); helfer.istAusgelastet = createModel.HelferAusgelastet; await _db.SaveChangesAsync(); return(Projector.EinsatzProjection.Compile().Invoke(einsatz)); }