public async Task <string> SaveInvoiceIn(InvoiceInEditModel input) { var invoice = this.invoiceIns.All().FirstOrDefault(i => i.Id == input.Id); invoice.Number = input.Number; invoice.CreateDate = input.CreateDate; invoice.ReceiveDate = input.ReceiveDate; invoice.DueDays = input.DueDays; invoice.VATReasonId = input.VATReasonId; foreach (var orderTo in input.OrderTos) { var recDocInput = orderTo.DocumentationRecievedDocumentation; var recDoc = invoice.OrderTos.FirstOrDefault(o => o.Id == orderTo.Id).Documentation.RecievedDocumentation; recDoc = this.mapper.Map <DocumentationInputModel, Documentation>(recDocInput, recDoc); } foreach (var orderTo in invoice.OrderTos) { if (!input.OrderTos.Any(o => o.Id == orderTo.Id)) { orderTo.InvoiceInId = null; } } this.invoiceIns.Update(invoice); await this.invoiceIns.SaveChangesAsync(); return(invoice.Id); }
public async Task <IActionResult> Finish(InvoiceInEditModel input) { var invoiceId = await this.invoicesService.SaveInvoiceIn(input); if (this.ordersService.ValidateFinishModel(input.OrderTos)) { await this.invoicesService.UpdateInvoiceInStatusAsync(invoiceId, InvoiceStatusNames.AwaitingPayment.ToString()); this.notyfService.Success(this.localizer["Invoice filed."]); } else { this.notyfService.Error(this.localizer["Error"]); return(this.RedirectToAction("Incomplete")); } return(this.RedirectToAction("Filed")); }
public async Task <IActionResult> SaveIn(InvoiceInEditModel input) { await this.invoicesService.SaveInvoiceIn(input); return(this.RedirectToAction("Incomplete")); }