public static async Task <(PoseBillingResult BillingResult, long Payload, string OrderId)> InAppProductProcess(InAppPurchase inAppPurchase, string appPackageName, string purchaseToken) { ProductPurchase poductPurchase = await _androidPublisher.Purchases.Products.Get(appPackageName, inAppPurchase.ProductId, purchaseToken).ExecuteAsync(); if (!long.TryParse(poductPurchase.DeveloperPayload, out long payLoad)) { return(null, 0, ""); } PoseBillingResult billingResult = new PoseBillingResult(); switch (poductPurchase.PurchaseState) { case 0: billingResult.PurchaseStateType = PosePurchaseStateType.Purchased; break; case 1: billingResult.PurchaseStateType = PosePurchaseStateType.Canceled; break; case 2: billingResult.PurchaseStateType = PosePurchaseStateType.Pending; break; } DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0); DateTime purchaseTime = origin.AddMilliseconds(poductPurchase.PurchaseTimeMillis ?? 0); billingResult.MemberRoleType = inAppPurchase.OfferRoleType; billingResult.RoleExpireTime = purchaseTime.AddDays(inAppPurchase.OfferPeriod); billingResult.ProductId = inAppPurchase.ProductId; return(billingResult, payLoad, poductPurchase.OrderId); }
protected void rptRecentActivity_OnItemDataBound(object sender, RepeaterItemEventArgs e) { if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem)) { ProductPurchase dataItem = (ProductPurchase)e.Item.DataItem; Label label = e.Item.FindControl("lblTransactionXID") as Label; if (dataItem.TransactionXID != string.Empty) { label.Text = dataItem.TransactionXID; } else { label.Visible = false; } Label label2 = e.Item.FindControl("lblPrice") as Label; if (dataItem.Price > 0M) { label2.Text = string.Format("${0:#,#.00}", dataItem.Price); } else { label2.Text = " -"; } } }
public async Task <IActionResult> Edit(int id, [Bind("Id,PurchaseDate,PurchasePrice,Discount,FinalPrice,Status,CreatedDate,CreatedBy,ModifiedDate,ModifiedBy")] ProductPurchase productPurchase) { if (id != productPurchase.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(productPurchase); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ProductPurchaseExists(productPurchase.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(productPurchase)); }
public virtual void InitPurchase() { ProductPurchase.Init(); productPurchase = ProductPurchase.instance;//gameObject.AddComponent<ProductPurchase>(); productPurchase.EnableProductUnlocks = ENABLE_PRODUCT_UNLOCKS; }
public async Task <ProductPurchase> PurchaseProduct(ProductPurchase productPurchase, [Service] IMediator mediator, [Service] ILogger <ProductPurchaseMutation> logger) { try { var purchaseCommand = new ProductPurchaseCommand() { ProductPurchase = productPurchase }; return(await mediator.Send(purchaseCommand)); //messageBus.DeclareExchange("MyShop", "topic"); //if (messageBus.PublishMessage(new { userId, shopId, productType }, "PurchaseProduct", "MyShop")) //{ // return true; //} } catch (Exception ex) { logger.LogError(LoggerEvents.GenerateEventId(LoggerEventType.UnknownPurchaseProductMutationException), ex, $"{nameof(ProductPurchaseMutation)} PurchaseProduct encountered exception with ShopId: {productPurchase.ShopId},ProductType: {productPurchase.ProductType},UserId: {productPurchase.UserId}"); throw; } }
public async Task <IActionResult> Edit(int id, [Bind("ProductPurchaseId,BatchNumber,Comment,Cost,DateTime,Expiry,LocationId,ProductId,SupplierId,Timestamp,VersionNumber,Volume")] ProductPurchase val) { if (val.ProductPurchaseId != id) { return(NotFound()); } this.FixNullFields(val); if (ModelState.IsValid) { try { _context.Update(val); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!Exists(val.ProductPurchaseId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["LocationId"] = new SelectList(_context.Location, "LocationId", "Name", val.LocationId); ViewData["ProductId"] = new SelectList(_context.Product, "ProductId", "Description", val.ProductId); ViewData["SupplierId"] = new SelectList(_context.Contact, "ContactId", "Name", val.SupplierId); return(View(val)); }
protected void GenerateProductKey_Click(object sender, EventArgs e) { var productPackage = CommerceCommon.GetProductPackage(base.CurrentSueetieProduct.ProductID); var purchase2 = new ProductPurchase { UserID = base.CurrentSueetieUserID, CartLinkID = CommerceCommon.GetCartLinkList(base.CurrentSueetieProduct.ProductID).Find(p => p.LicenseTypeID == 1).CartLinkID, ProductID = base.CurrentSueetieProduct.ProductID, PurchaseKey = CommerceCommon.GeneratePurchaseKey(), ActionID = 2 }; var productPurchase = purchase2; var num = Purchases.RecordPurchase(productPurchase); var spt = (SueetiePackageType)Enum.ToObject(typeof(SueetiePackageType), productPackage.PackageTypeID); var productLicense = new ProductLicense { License = LicensingCommon.CreateLicenseKey(SueetieLicenseType.Free, spt), PackageTypeID = productPackage.PackageTypeID, LicenseTypeID = 1, Version = productPackage.Version, UserID = base.CurrentSueetieUserID, CartLinkID = productPurchase.CartLinkID, PurchaseID = num }; Licenses.CreateProductLicense(productLicense); this.ltLicenseGeneration.Text = SueetieLocalizer.GetMarketplaceString("license_created_message"); this.ltNewLicense.Text = productLicense.License; this.SetActivePanel(this.pnlLicenseGeneration); }
// Converting purchase items to stock public int ProcessPurchaseInward(DateTime inDate, bool IsLocal) { using (VoyagerContext db = new VoyagerContext()) { int ctr = 0; var data = db.ImportPurchases.Where(c => c.IsDataConsumed == false && DbFunctions.TruncateTime(c.GRNDate) == DbFunctions.TruncateTime(inDate)).OrderBy(c => c.InvoiceNo).ToList(); if (data != null && data.Count() > 0) { ProductPurchase PurchasedProduct = null; foreach (var item in data) { int pid = CreateProductItem(db, item); if (pid != -999) { CreateStockItem(db, item, pid); } PurchasedProduct = CreatePurchaseInWard(db, item, PurchasedProduct); PurchasedProduct.PurchaseItems.Add(CreatePurchaseItem(db, item, pid, IsLocal)); item.IsDataConsumed = true; db.Entry(item).State = EntityState.Modified; ctr++; } if (PurchasedProduct != null) { db.ProductPurchases.Add(PurchasedProduct); } db.SaveChanges(); } return(ctr); }//end of using }
protected void Download_Click(object sender, EventArgs e) { if (!this.IsFileAvailable) { base.Response.Redirect(base.Request.RawUrl + "&r=1"); return; } ProductPurchase productPurchase = new ProductPurchase { ProductID = base.CurrentSueetieProduct.ProductID, UserID = base.CurrentSueetieUserID, PurchaseKey = this.PurchaseKey, CartLinkID = -1, ActionID = 1 }; Purchases.RecordPurchase(productPurchase); string sourceFileName = this.CurrentSueetieProduct.ResolveFilePath(this.Server); base.Response.AddHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(sourceFileName)); base.Response.Clear(); base.Response.ContentType = "application/zip"; this.Response.WriteFile(sourceFileName); base.Response.End(); }
public async Task <IActionResult> Edit(string id, [Bind("Id,ReferenceInternal,ReferenceExternal,PurchaseDate,TotalPrice,TotalVat,TotalQuantity,Note,IsVatPaid,ReceivingCost,IsActive,Meta,IsDeleted,CreatedBy,UpdatedBy,DeletedBy,CreatedAt,DeletedAt,SupplierId,TransectionTypeOId")] ProductPurchase productPurchase) { if (id != productPurchase.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(productPurchase); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ProductPurchaseExists(productPurchase.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["SupplierId"] = new SelectList(_context.Suppliers, "Id", "Id", productPurchase.SupplierId); ViewData["TransectionTypeOId"] = new SelectList(_context.TransectionType, "Id", "Id", productPurchase.TransectionTypeOId); return(View(productPurchase)); }
public ActionResult DeleteConfirmed(int id) { ProductPurchase productPurchase = db.ProductPurchases.Find(id); db.ProductPurchases.Remove(productPurchase); db.SaveChanges(); return(RedirectToAction("Index")); }
protected void rptPurchases_OnItemDataBound(object sender, RepeaterItemEventArgs e) { if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem)) { ProductPurchase dataItem = (ProductPurchase)e.Item.DataItem; Label label = e.Item.FindControl("lblTitle") as Label; label.Text = CommerceHelper.PurchasedProductTitle(dataItem); } }
protected override void OnOpenNew() { Purchase = new ProductPurchase { Date = DateTime.Now, Account = ContextManager.ActiveAccounts.FirstOrDefault(), Supplier = ContextManager.ActiveSuppliers.FirstOrDefault() }; }
public ProductPurchase CreatePurchaseInWard(VoyagerContext db, ImportPurchase purchase, ProductPurchase product) { if (product != null) { if (purchase.InvoiceNo == product.InvoiceNo) { product.TotalAmount += (purchase.CostValue + purchase.TaxAmt); product.ShippingCost += 0;//TODO: add option for adding shipping cost for fabric product.TotalBasicAmount += purchase.CostValue; product.TotalTax += purchase.TaxAmt; product.TotalQty += purchase.Quantity; } else { db.ProductPurchases.Add(product); db.SaveChanges(); product = new ProductPurchase { InvoiceNo = purchase.InvoiceNo, InWardDate = purchase.GRNDate, InWardNo = purchase.GRNNo, IsPaid = false, PurchaseDate = purchase.InvoiceDate, ShippingCost = 0,//TODO: add option for adding shipping cost for fabric TotalBasicAmount = purchase.CostValue, TotalTax = purchase.TaxAmt, TotalQty = purchase.Quantity, TotalAmount = purchase.CostValue + purchase.TaxAmt,// TODO: Check for actual DATA. Remarks = "", SupplierID = GetSupplierIdOrAdd(db, purchase.SupplierName), StoreId = StoreID }; product.PurchaseItems = new List <PurchaseItem> (); } } else { product = new ProductPurchase { InvoiceNo = purchase.InvoiceNo, InWardDate = purchase.GRNDate, InWardNo = purchase.GRNNo, IsPaid = false, PurchaseDate = purchase.InvoiceDate, ShippingCost = 0,//TODO: add option for adding shipping cost for fabric TotalBasicAmount = purchase.CostValue, TotalTax = purchase.TaxAmt, TotalQty = purchase.Quantity, TotalAmount = purchase.CostValue + purchase.TaxAmt,// TODO: Check for actual DATA. Remarks = "", SupplierID = GetSupplierIdOrAdd(db, purchase.SupplierName), StoreId = StoreID }; product.PurchaseItems = new List <PurchaseItem> (); } return(product); }
public async Task <IActionResult> Create([Bind("Id,PurchaseDate,PurchasePrice,Discount,FinalPrice,Status,CreatedDate,CreatedBy,ModifiedDate,ModifiedBy")] ProductPurchase productPurchase) { if (ModelState.IsValid) { _context.Add(productPurchase); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(productPurchase)); }
private void FixNullFields(ProductPurchase val) { if (String.IsNullOrWhiteSpace(val.BatchNumber)) { val.BatchNumber = "N/A"; } if (String.IsNullOrWhiteSpace(val.Comment)) { val.Comment = "N/A"; } }
public ActionResult Edit([Bind(Include = "ProductPurchaseId,InWardNo,InWardDate,PurchaseDate,InvoiceNo,TotalQty,TotalBasicAmount,ShippingCost,TotalTax,TotalAmount,Remarks,SupplierID,IsPaid")] ProductPurchase productPurchase) { if (ModelState.IsValid) { db.Entry(productPurchase).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.SupplierID = new SelectList(db.Suppliers, "SupplierID", "SuppilerName", productPurchase.SupplierID); return(View(productPurchase)); }
public ActionResult Edit([Bind(Include = "Id,Id_User,DateP,DateLimit,Id_LatePayment,status,TotalAmount")] ProductPurchase productPurchase) { if (ModelState.IsValid) { db.Entry(productPurchase).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.Id_LatePayment = new SelectList(db.LatePayment, "Id", "TypeIncrement", productPurchase.Id_LatePayment); ViewBag.Id_User = new SelectList(db.Users, "Id", "Credentials", productPurchase.Id_User); return(View(productPurchase)); }
public override List <ProductPurchaseOutp> ComputeMatches() { var l2 = ListTwo .GroupBy(l => l.ProductID) .ToDictionary(p => p.Key); return(ListOne .Select(listOne => { decimal wap = 0; ProductPurchase minp = null; if (l2.TryGetValue(listOne.ProductID, out var matches)) { long qsum = 0; decimal psum = 0; decimal min = decimal.MaxValue; foreach (var m in matches) { long quantity = (long)m.Quantity * m.GlobalQuantity; var price = m.Price; qsum += quantity; psum += quantity * price; if (price < min) { minp = m; min = price; } } if (qsum != 0) { wap = psum / qsum; } } return new ProductPurchaseOutp { ProductID = listOne.ProductID, ROQ = listOne.Price, RUQ = listOne.Quantity, RPQ = listOne.GlobalQuantity, RV = listOne.Price * listOne.Quantity * listOne.GlobalQuantity, BMPProduct = minp, WAP = wap }; }) .Where(p => p != null) .ToList()); }
public IActionResult Create(ProductPurchase model) { var gateway = config.GetGateway(); var request = new TransactionRequest { Amount = Convert.ToDecimal(60), PaymentMethodNonce = model.Nonce, Customer = new CustomerRequest //Adds customer since they have not booked before { FirstName = model.FirstName, LastName = model.LastName, Email = model.Email, Phone = model.PhoneNumber, Id = model.userid }, Options = new TransactionOptionsRequest { SubmitForSettlement = true }, BillingAddress = new AddressRequest { FirstName = model.FirstName, LastName = model.LastName, StreetAddress = model.AddressLine1, ExtendedAddress = model.AddressLine2, Locality = model.City, PostalCode = model.PostCode }, }; //request.LineItems = cart.CartItems.Select(x => new Braintree.TransactionLineItemRequest //{ // Name = x.Product.Name, // Description = x.Product.Description, // ProductCode = x.ProductID.ToString(), // Quantity = x.Quantity, // UnitAmount = x.Product.Price, // TotalAmount = x.Product.Price * x.Quantity, // LineItemKind = Braintree.TransactionLineItemKind.DEBIT //}).ToArray(); Result <Transaction> result = gateway.Transaction.Sale(request); if (result.IsSuccess()) { //EmailDetails(newReservation).Wait(); return(View("Success")); } return(View("Failure")); }
// GET: ProductPurchases/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProductPurchase productPurchase = db.ProductPurchases.Find(id); if (productPurchase == null) { return(HttpNotFound()); } return(View(productPurchase)); }
private void Window_Loaded(object sender, RoutedEventArgs e) { CollectionViewSource productPurchasesViewSource = ((CollectionViewSource) (FindResource("ProductPurchasesViewSource"))); CurrentPurchase = new ProductPurchase { Product = CurrentProduct, PurchaseDate = DateTime.Now, }; productPurchasesViewSource.Source = new List <ProductPurchase> { CurrentPurchase }; }
// GET: ProductPurchases/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProductPurchase productPurchase = db.ProductPurchases.Find(id); if (productPurchase == null) { return(HttpNotFound()); } ViewBag.SupplierID = new SelectList(db.Suppliers, "SupplierID", "SuppilerName", productPurchase.SupplierID); return(View(productPurchase)); }
public async Task <IActionResult> Create([Bind("ProductPurchaseId,BatchNumber,Comment,Cost,DateTime,Expiry,LocationId,ProductId,SupplierId,Timestamp,VersionNumber,Volume")] ProductPurchase val) { this.FixNullFields(val); if (ModelState.IsValid) { _context.Add(val); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["LocationId"] = new SelectList(_context.Location, "LocationId", "Name", val.LocationId); ViewData["ProductId"] = new SelectList(_context.Product, "ProductId", "Description", val.ProductId); ViewData["SupplierId"] = new SelectList(_context.Contact, "ContactId", "Name", val.SupplierId); return(View(val)); }
public async Task <IActionResult> Create([Bind("ProductPurchaseId,InWardNo,InWardDate,PurchaseDate,InvoiceNo,TotalQty,TotalBasicAmount,ShippingCost,TotalTax,TotalAmount,Remarks,SupplierID,IsPaid")] ProductPurchase productPurchase) { if (ModelState.IsValid) { HelperUtil.IsSessionSet(HttpContext); int storeid = HelperUtil.GetStoreID(HttpContext); productPurchase.StoreId = storeid; _context.Add(productPurchase); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["SupplierID"] = new SelectList(_context.Suppliers, "SupplierID", "SuppilerName", productPurchase.SupplierID); return(PartialView(productPurchase)); }
public static void EvaluateModel(MLContext mlContext, IDataView testDataView, ITransformer model) { Console.WriteLine("=============== Evaluating the model ==============="); var prediction = model.Transform(testDataView); var metrics = mlContext.Regression.Evaluate(prediction); var predictionEngine = mlContext.Model.CreatePredictionEngine <ProductPurchase, ProductPurchasePrediction>(model); var testInput = new ProductPurchase { userId = 1, productId = 100 }; var productPrediction = predictionEngine.Predict(testInput); Console.WriteLine(productPrediction); }
// GET: ProductPurchases/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProductPurchase productPurchase = db.ProductPurchase.Find(id); if (productPurchase == null) { return(HttpNotFound()); } ViewBag.Id_LatePayment = new SelectList(db.LatePayment, "Id", "TypeIncrement", productPurchase.Id_LatePayment); ViewBag.Id_User = new SelectList(db.Users, "Id", "Credentials", productPurchase.Id_User); return(View(productPurchase)); }
public void AddOrder(ProductPurchase purchase, int notificationAttempts) { if (this.PurchaseHistory == null) { this.PurchaseHistory = new List<PurchaseTag>(); } this.PurchaseHistory.Add(new PurchaseTag {Date = purchase.Timestamp, Quantity = purchase.Quantity}); if (purchase.Timestamp > this.LastOrderTimestamp) { this.LastStockCount = purchase.StockLeft; this.NotificationCounter = notificationAttempts; this.LastOrderTimestamp = purchase.Timestamp; } }
public void AddOrder(ProductPurchase purchase, int notificationAttempts) { if (this.PurchaseHistory == null) { this.PurchaseHistory = new List <PurchaseTag>(); } this.PurchaseHistory.Add(new PurchaseTag { Date = purchase.Timestamp, Quantity = purchase.Quantity }); if (purchase.Timestamp > this.LastOrderTimestamp) { this.LastStockCount = purchase.StockLeft; this.NotificationCounter = notificationAttempts; this.LastOrderTimestamp = purchase.Timestamp; } }
public async Task <IActionResult> Orders(string id) { var user = await this.userManager.GetUserAsync(User); var product = await this.db.Products.FirstOrDefaultAsync(p => p.Id.Equals(id)); var purchase = new Purchase { OrderDate = DateTime.Now, User = user, UserId = user.Id, IsBought = false }; var productPurchase = new ProductPurchase() { PurchaseId = purchase.Id, Purchase = purchase, ProductId = product.Id, Product = product, }; this.db.ProductsPurchases.Add(productPurchase); purchase.TotalOrderPrice = productPurchase.Product.Price; var autoShippingPurchase = new AutoShippingPurchase() { InitialOrderDate = purchase.OrderDate, CustomerId = user.Id, Customer = user }; autoShippingPurchase.NextReorderDispatchDate = autoShippingPurchase.InitialOrderDate.AddDays(31); autoShippingPurchase.ProductPurchases.Add (productPurchase); autoShippingPurchase.TotalOrderPrice = product.Price; this.db.SubscribedPurchases.Add(autoShippingPurchase); await this.db.SaveChangesAsync(); return(await Task.Run(() => this.RedirectToAction("Orders"))); }
public void SubscriptionCalculatesCostCorrectly_WithAlteredCostPurchases() { _subscription.ProductsPurchased.Add(SubscriptionHelper.GetPurchase(_subscription, 1, _now.AddDays(1), price: 10)); _subscription.ProductsPurchased.Add(SubscriptionHelper.GetPurchase(_subscription, 1, _now.AddDays(2), price: 15)); _subscription.ProductsPurchased.Add(SubscriptionHelper.GetPurchase(_subscription, 1, _now.AddDays(4), price: 22.5f)); _subscription.ProductsPurchased.Add(SubscriptionHelper.GetPurchase(_subscription, 1, _now.AddDays(-20), price: 100)); _subscription.ProductsPurchased.Add(SubscriptionHelper.GetPurchase(_subscription, 1, _now.AddDays(1000), price: 0)); var product = new Product { DurationMonths = 1, PriceUSD = 100, TaxUSD = 100 }; var purchase = new ProductPurchase(product, _subscription); _subscription.ProductsPurchased.Add(purchase); Assert.AreEqual(10 + 15 + 22.5f + 100 + 100, _subscription.TotalPurchaseCostUSD); product.PriceUSD = 50; Assert.AreEqual(10 + 15 + 22.5f + 100 + 100, _subscription.TotalPurchaseCostUSD); }