public async void InvoicesManager_SaveInvoiceAsync_DoesntFail() { var sut = new InvoicesManager(_mockLog.Object, _mqPublisher.Object, _invoiceRepository.Object, _invoiceEntityService.Object); await sut.SaveInvoiceAsync(new Invoice(new InvoiceData())); // Assert.NotNull(retVal); }
public async void InvoicesManager_GetInvoiceAsync_NotNull() { var sut = new InvoicesManager(_mockLog.Object, _mqPublisher.Object, _invoiceRepository.Object, _invoiceEntityService.Object); var retVal = await sut.GetInvoiceAsync("TEST"); Assert.NotNull(retVal); }
public async void InvoicesManager_GetInvoicesAsync_IsEmpty() { var sut = new InvoicesManager(_mockLog.Object, _mqPublisher.Object, _invoiceRepository.Object, _invoiceEntityService.Object); var retVal = await sut.GetInvoicesAsync(); Assert.True(retVal.Count == 0); }
public async Task <IActionResult> PrintInvoice(string id) { Stream stream = await InvoicesManager.PrintInvoiceAsync(this.AuthenticationProvider, id); if (stream == null) { return(null); // returns a NotFoundResult with Status404NotFound response. } return(File(stream, "application/octet-stream", "FR." + id + ".pdf")); // returns a FileStreamResult }
public async Task <ActionResult <string> > PostInvoiceAsync([FromBody] OrderResource product) { try { return(new ActionResult <string>(await InvoicesManager.CreateInvoiceMiddlewareAsync(this.AuthenticationProvider, product))); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task <ActionResult <string> > PostInvoice(Guid id) { try { return(new ActionResult <string>(await InvoicesManager.GetInvoiceAsync(this.AuthenticationProvider, id))); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task <string> PaymentFacade(PaymentMethodInfoViewModel paymentInfo, PayedItemViewModel payedItem, decimal?amount = null, string urlOk = null, string urlCancel = null) { if (string.IsNullOrEmpty(payedItem.PayedItemId)) { throw new ArgumentException("Идентификаторът на платения елемент е задължителен!"); } var payedItemInfo = await PayedItemsManager.Get(payedItem.PayedItemCode) ?? throw new ArgumentException("Кодът не съществува!"); if (payedItemInfo.Amount == 0.0M && amount != null) { payedItemInfo.Amount = (decimal)amount; } else if (payedItemInfo.Amount == 0.0M && amount == null) { throw new ArgumentException("Цената на продуктът/услугата не е определена! Моля свържете се с екипът ни за корекция!"); } ePayQueryViewModel ePayInfo = await InvoicesManager.CreateInvoiceForSending(payedItemInfo.Amount, payedItem.PayedItemId, payedItemInfo.Description, payedItem.PayedItemCode); // Payment Logic if (paymentInfo.PaymentMethod.ToUpper() == "EASYPAY") { if (!IsEasyPayModelValid(paymentInfo, payedItem)) { throw new ServicesValidationException(); } var easyPayCode = await GetEasyPayCode(ePayInfo, paymentInfo, payedItem); return(easyPayCode); } else { if (!IsEPayModelValid(paymentInfo, payedItem)) { throw new ServicesValidationException(); } if (string.IsNullOrEmpty(urlOk) || string.IsNullOrEmpty(urlCancel)) { throw new ServicesValidationException(); } return(EPayFacade(ePayInfo, paymentInfo.PaymentMethod, urlOk, urlCancel)); } }
public UnitOfWork(ApplicationDbContext context) { this.context = context; Claims = new ClaimManager(context); Departments = new DepartmentManager(context); DepartmentProjects = new DepartmentProjectsManager(context); Engineers = new EngineerManager(context); //EngineerSubTasks = new EngineerSubTasksManager(context); SubTaskSessions = new SubTaskSessionManager(context); Projects = new ProjectManager(context); SubTasks = new SubTaskManager(context); Tasks = new TaskManager(context); Teams = new TeamManager(context); TeamTasks = new TeamTasksManager(context); Invoices = new InvoicesManager(context); InoviceItems = new InvoiceItemManager(context); Dependency = new DependencyManager(context); Notification = new NotificationManager(context); NotificationUsers = new NotificationUsersManager(context); Files = new FilesManager(context); Comments = new CommentManager(context); Holiday = new HolidayManager(context); }
// Handle Notiications recieved via oneSignal and take appropriate actions private static async void HandleNotificationOpened(OSNotificationOpenedResult result) { OSNotificationPayload payload = result.notification.payload; Dictionary <string, object> additionalData = payload.additionalData; string message = payload.body; string actionID = result.action.actionID; var extraMessage = "Notification opened with text: " + message; if (additionalData != null) { string id = ""; // the id of the object to open string kind = ""; // the kind of object the id belongs to and take relevant action to open page based on this if (additionalData.ContainsKey("id")) { id = (additionalData["id"].ToString()); } if (additionalData.ContainsKey("kind")) { kind = (additionalData["kind"].ToString()); } switch (kind) { case "Document": { Document obj; if (await CrossConnectivity.Current.IsRemoteReachable("https://www.google.com")) { obj = await DocumentsManager.GetAsync(id); } else { obj = await new StorageService <Document>().GetItemAsync(id); } if (obj != null) { await(tabbedNavigation._tabs[0].BindingContext as FreshBasePageModel).CoreMethods.PushPageModel <AddDocumentViewModel>(obj, true, Device.RuntimePlatform == Device.iOS); } break; } case "Teledeclaration": { Teledeclaration obj; if (await CrossConnectivity.Current.IsRemoteReachable("https://www.google.com")) { obj = await TeledeclarationsManager.GetAsync(id); } else { obj = await new StorageService <Teledeclaration>().GetItemAsync(id); } if (obj != null) { await(tabbedNavigation._tabs[0].BindingContext as FreshBasePageModel).CoreMethods.PushPageModel <TeledeclarationSecureActionViewModel>(obj, true, true); } break; } case "Ordonnance": { Ordonnance obj; if (await CrossConnectivity.Current.IsRemoteReachable("https://www.google.com")) { obj = await OrdonnanceManager.GetAsync(id); } else { obj = await new StorageService <Ordonnance>().GetItemAsync(id); } if (obj != null) { if (tabbedNavigation != null) { await tabbedNavigation.SwitchSelectedRootPageModel <OrdonnancesListViewModel>(); } await(tabbedNavigation._tabs[2].BindingContext as FreshBasePageModel).CoreMethods.PushPageModel <OrdonnanceCreateEditViewModel>(obj, true); } break; } case "InvoiceToSecure": { if (await CrossConnectivity.Current.IsRemoteReachable("https://www.google.com")) { var request = new GetListRequest(20, 1, sortField: "createdAt", sortDirection: SortDirectionEnum.Desc); var invoices = await InvoicesManager.GetListAsync(request); if (invoices != null && invoices.rows != null && invoices.rows.Count > 0) { var invoice = invoices.rows.First(); if (invoice.FilePath.Contains(".pdf")) { await(tabbedNavigation._tabs[0].BindingContext as FreshBasePageModel).CoreMethods.PushPageModel <SecuriseBillsViewModel>(invoice, true); } else { await(tabbedNavigation._tabs[0].BindingContext as FreshBasePageModel).CoreMethods.PushPageModel <OrdonnanceViewViewModel>(invoice, true); } } } break; } default: break; } } }
public async Task <MiddlewareResponse> GetStateInvoiceProcessAsync(Guid id) { return(await InvoicesManager.GetStateInvoiceMiddlewareAsync(this.AuthenticationProvider, id)); }
public async Task <List <MiddlewareResponse> > PostBulkInvoiceAsync([FromBody] List <OrderResource> orders) { return(await InvoicesManager.CreateBulkInvoiceMiddlewareAsync(this.AuthenticationProvider, orders)); }