public async Task CreatInvoice(NewBillDTO dto) { var user = await ServiceUnitOfWork.AccountRepository.FindAsync(dto.UserBill.Id); var trainings = new List <DAL.App.DTO.Training>(); var bill = new Bill() { AppUserId = dto.UserBill.Id, Deadline = dto.Deadline, Total = dto.Total, }; bill = ServiceRepository.AddNewBill(bill); await ServiceUnitOfWork.SaveChangesAsync(); foreach (var trainingdto in dto.Trainings) { var trainingInBill = new TrainingInBill() { BillId = bill.Id, TrainingId = trainingdto.Id }; await ServiceUnitOfWork.TrainingInBillRepository.AddNewTrainingInBill(trainingInBill); var training = await ServiceUnitOfWork.TrainingRepository.FindAsync(trainingdto.Id); trainings.Add(training); } await ServiceUnitOfWork.SaveChangesAsync(); }
public static BLL.App.DTO.Bill MapFromDAL(DAL.App.DTO.Bill bill) { var res = bill == null ? null : new BLL.App.DTO.Bill { Id = bill.Id, ClientId = bill.ClientId, Client = ClientMapper.MapFromDAL(bill.Client), ArrivalFee = bill.ArrivalFee, SumWithoutTaxes = bill.SumWithoutTaxes, TaxPercent = bill.TaxPercent, FinalSum = bill.FinalSum, DateTime = bill.DateTime, InvoiceNr = bill.InvoiceNr, Comment = bill.Comment, WorkObjectId = bill.WorkObjectId, // BillLines = bill.BillLines.Select(e => BillLineMapper.MapFromDAL(e)).ToList(), // Payments = bill.Payments.Select(e => PaymentMapper.MapFromDAL(e)).ToList(), WorkObject = WorkObjectMapper.MapFromDAL(bill.WorkObject) }; return(res); }