Jun 2025 - Jun 2025 4 min read

Eramart ERP Panel

Centralized purchasing, inventory, and finance reporting across multi-branch retail operations.

Role
Full-Stack Laravel Developer
Type
Retail ERP
Status
Completed
Stack
Laravel Blade jQuery MySQL

ERP Eramart

🟒 Status: Live β€” currently in active development

Role: Full-Stack Laravel Developer
Contribution: Top Contributor (899 commits)

🎯 Business Context & Goals

  • Retail and distribution business with complex multi-branch operations.
  • Needed a single ERP panel to unify purchasing, inventory, and finance flows.
  • Reduce manual reconciliation and spreadsheet-based reporting across departments.

🧩 My Role & Responsibilities

  • Led end-to-end development of reporting, purchasing, and payment modules.
  • Designed database structures and query patterns for high-volume transactional data.
  • Collaborated with finance and operations teams to encode real-world workflows.

πŸ“Š Impact & Outcomes

  • Centralized visibility into purchasing and stock positions across branches.
  • Faster financial and operational reporting through automated, exportable dashboards.
  • Reduced human error by enforcing validation, workflow status tracking, and standardized documents.

Tech Stack

  • Frontend: PHP 7.4+, Laravel 8.x
  • Backend: Blade Templates, jQuery, Bootstrap 4
  • Database: MySQL
  • Deployment: DataTables, Select2, SweetAlert2, AutoNumeric, DomPDF, PhpSpreadsheet
  • Version Control: Git, GitLab

✨ Key Features Developed

1. πŸ“Š Store Reporting System

Developed a comprehensive reporting module with 4 sub-modules for purchasing analytics:

Purchase Request Report

  • Server-side DataTables with row grouping by supplier
  • Summary and detail view modes with expand/collapse functionality
  • Multi-format export: PDF, Excel, RTF (Word)
  • Real-time KPI summary (total items, total value)
  • Status tracking integration with Purchase Order

Purchase Order Report

  • Dynamic filtering by date range, supplier, branch, and status
  • DataTables row grouping with subtotals per group
  • Status badges for visual order tracking
  • Discount and tax breakdown columns
  • Grand total calculation with proper currency formatting

Purchase Receipt Report

  • Summary view for quick overview
  • Detailed view with itemized breakdown
  • Print-optimized layouts (portrait/landscape)
  • Date formatting localization

Purchase Invoice Report

  • Summary and detail views with toggle
  • A4 landscape PDF generation
  • Excel export with company logo header
  • Proper number formatting (avoiding scientific notation)

Technical Highlights:

// Server-side DataTables with complex joins
$query = PurchaseOrder::select([
    DB::raw('GROUP_CONCAT(th_purchase_order.no_po) as rowgroup'),
    'mh_supplier.nm_supplier',
    DB::raw('SUM(total_nilai) as nilai')
])
->leftJoin('mh_supplier', 'th_purchase_order.id_mh_supplier', '=', 'mh_supplier.id_mh_supplier')
->groupBy('th_purchase_order.id_mh_supplier');

🎬 Video Demo


2. πŸ’³ List of Payment (LOP) Module

Payment management system for supplier invoices and returns:

  • Parent Supplier Validation - Hierarchical supplier organization with validation against parent supplier
  • Transaction Types - Support for both invoice (Faktur) and return (Retur) payments
  • Financial Fields - Shipping cost (ongkos kirim), stamp duty (materai) integration
  • Audit Trail - Comprehensive logging for DPP and PPN changes
  • DO Number Reference - Delivery order tracking in payment context
  • SweetAlert2 Integration - Modern UX for approve/cancel confirmations

🎬 Video Demo


3. πŸ“„ Invoice Receipt (Tanda Terima Faktur) Module

Invoice receipt management with tax calculation features:

  • PPN Validation - Warning modal when PPN difference β‰₯ Rp 500
  • DPP Calculation - Support for both 11% and 12% rates
  • Manual PPN Flag - Tracking for manually filled PPN values
  • Materai & Shipping - Additional cost field integration
  • Print Layout - Custom page size (4.8in x 5.5in) for receipt printing
  • AJAX Form Handling - Asynchronous submission with SweetAlert2 feedback

🎬 Video Demo


4. πŸ“¦ Banded Item (Product Bundling) System

Product bundling/packaging system for composite items:

  • Barcode Scanner Integration - Real-time barcode scanning with status indicator
  • Stock Validation - Zero-stock warning with SweetAlert2 notifications
  • Decimal Quantity Support - Handles KG units with decimal precision
  • AutoNumeric Integration - Proper number input formatting
  • Production Tracking - Quantity production with print layout

Technical Highlights:

// Barcode scanner with status indicator
$('#barcodeInput').on('input', function() {
    const code = $(this).val();
    searchProductByBarcode(code).then(product => {
        if (product.stock <= 0) {
            Swal.fire('Warning', 'Stock habis!', 'warning');
        }
        addToDetailTable(product);
    });
});

🎬 Video Demo


5. πŸ’° Cash Expenditure (Bukti Kas Keluar) Module

Cash outflow documentation and approval system:

  • Audit Logging - Track all changes with user attribution
  • TTHO Link Management - Invoice receipt linking/unlinking
  • Enhanced Print View - Company details and formatted layouts
  • Date Filtering - Quick date filters with DataTables integration

🎬 Video Demo


6. πŸ”§ Technical Improvements & Infrastructure

DataTables Optimization

  • Server-side processing for large datasets
  • Custom column filtering with search by specific fields
  • Row grouping with expandable/collapsible sections

Excel Export Enhancement

  • Company logo integration in headers
  • Auto-column sizing
  • Custom row/column dimensions
  • Number format preservation (avoiding scientific notation)

UX Improvements

  • SweetAlert2 migration from native alerts/confirms
  • Select2 enhanced dropdowns with AJAX search
  • Form validation with specific error messages
  • IMask integration for formatted inputs

Database Migrations

  • Schema updates for new features
  • Data migration scripts
  • Menu system management

πŸ“ˆ Achievements & Impact

MetricValue
Total Commits899 (Top Contributor)
Team Size10+ developers
Contribution Period2024 - Present
Modules Developed6 major modules
Reports Created4 complete report modules

πŸ› οΈ Skills Demonstrated

Technical Skills

  • Backend Development - Laravel MVC architecture, Eloquent ORM, Query Builder
  • Frontend Development - jQuery, Blade templating, responsive design
  • Database Management - MySQL, complex queries, migrations
  • API Integration - RESTful endpoints, AJAX handling
  • Export/Import - PDF, Excel, RTF generation
  • Version Control - Git workflow, branch management, merge requests

Soft Skills

  • Problem Solving - Debugging complex business logic
  • Code Quality - Consistent commit messages, clean code practices
  • Collaboration - Team git workflow with development/main branches
  • Documentation - Code comments, migration descriptions

Interested in a similar solution for your business?
Let’s connect β†’