// // GET: /Authorize/ public ActionResult Index([QueryString] string code) { var authorizationService = new AuthorizationService(); authorizationService.SaveToken(code, User); return View(); }
public OAuthKeyService(AuthorizationService container) { _container = container; }
public string PostSaleInvoice(PelicanSale sale, PelicanContext context = null, Guid?companyFileId = null) { var authorizationService = new AuthorizationService(); context = context ?? PelicanContext.CreateFromApplicationSettings(); companyFileId = companyFileId ?? context.CompanyFileId; var apiContext = authorizationService.GetAuthorizedContext(context, companyFileId.Value); try { if (_taxCode == null) { var taxCodeService = new TaxCodeService(apiContext.ApiConfiguration); var taxCodes = taxCodeService.GetRange(apiContext.CompanyFile, null, apiContext.CompanyFileCredentials); _taxCode = taxCodes.Items.First(_ => _.Code == "GST"); } var service = new ItemInvoiceService(apiContext.ApiConfiguration); var entity = new ItemInvoice(); entity.UID = Guid.NewGuid(); entity.InvoiceType = InvoiceLayoutType.Item; entity.Customer = new CustomerLink { UID = Guid.Parse(sale.Customer.Id) }; entity.Number = string.Format("SJ{0:D5}", _referenceNbr++); entity.Date = DateTime.Today; var invoiceLines = new List <ItemInvoiceLine>(); for (var index = 0; index < sale.SaleableItems.Count(); index++) { var saleableItem = sale.SaleableItems[index]; var item = new ItemInvoiceLine(); item.Item = new ItemLink { UID = Guid.Parse(saleableItem.Id) }; item.RowID = index; item.ShipQuantity = 1; item.Total = Convert.ToDecimal(saleableItem.Price); item.TaxCode = new TaxCodeLink { UID = _taxCode.UID }; invoiceLines.Add(item); } entity.Lines = invoiceLines; entity.TotalAmount = Convert.ToDecimal(sale.SaleableItems.Sum(_ => _.Price)); entity.Comment = "Entered via Pelican"; return(service.Insert(apiContext.CompanyFile, entity, apiContext.CompanyFileCredentials)); } catch (Exception ex) { switch (ex.GetType() .Name) { case "WebException": Debug.WriteLine(FormatMessage((WebException)ex)); break; case "ApiCommunicationException": Debug.WriteLine(FormatMessage((WebException)ex.InnerException)); break; case "ApiOperationException": Debug.WriteLine(ex.Message); break; default: Debug.WriteLine(ex.Message); break; } } return(null); }