Skip to main content

Changelog: Dedek - 2026-06-04

Daily Changelog - Waste Vantage Legacy

Overview

Today's changes by Dedek focus on enhancing Stripe credit card payment stability, fixing order status calculations for paid main invoices, adjusting inventory stock decrement logic, correcting GST calculations for GST-exclusive suppliers, and resolving extra services line-item pricing glitches.


Added

  • Stripe Checkout Confirmation Helper (resources/js/components/SkipBinStripe.vue)
    • Added computed property confirmationUrl to dynamically build the Stripe card charge attempt URL path.

Changed

  • Stripe Charge Card Parameters (app/Http/Controllers/...)
    • Updated credit card charging processes across multiple controllers (OrderController, InvoiceController, PaymentController, BillingController, etc.) to explicitly pass 'payment_method_types' => ['card'].
    • Adapted code to retrieve Stripe charge IDs via $stripeCharge->asStripePaymentIntent() and latest_charge, providing backward compatibility with modern Stripe Payment Intents API.
  • GST Display & Calculations (resources/js/components/order-management/)
    • Revised OrderPriceSummary.vue and OrderManagement.vue to respect GST-exclusive supplier configurations, calculating grand totals as baseTotal + gstAmount (instead of just baseTotal), and displaying labels dynamically (e.g. "Bin ex.GST" or "Extras ex.GST").
  • Stripe Element Mounting Lifecycle (resources/js/libs/stripe-setup.js)
    • Refactored Stripe card initialization to keep a single stripeInstance and avoid mounting duplicate card input fields during page navigation or modal reopens.

Fixed

  • Order Status Decrement Calculation (app/Repositories/OrderRepository.php)
    • Updated setOrderStatus() to verify if a main invoice is already paid ($isPaidMainInvoice). This ensures that status decrement flags and the created_at timestamp are not overwritten for already-paid orders.
  • Inventory Stock Decrement Logic (app/Repositories/PricingRepository.php)
    • Fixed decrementPricingDateStock() to deduct stock by $detail->quantity instead of a hardcoded value of 1.
    • Refined lookups to filter by both waste_type_id and category fields, and implemented proper fallbacks to initialize PricingDate entries based on VIP, business, or vendor classification.
  • Order Skip Bin Detail Loading (app/Http/Controllers/Admin/OrderSkipBinController.php)
    • Added a conditional query load check to only apply the order_detail_id null filter if the skip bin order is marked as a rental, preventing SQL issues on regular skip bin orders.
  • Extra Service Line-Item Pricing Glitch (resources/js/components/order-management/)
    • Introduced unit_price within the more_extras service row arrays inside OrderManagement.vue and OrderSiteDetails.vue.
    • Separated unit pricing inputs from total cost computations, preventing quantity changes from corrupting the display value.

Removed

  • None.