Subquery and Filter Eloquent Laravel using Yajra Datatables

Viewed 47

I want to view bonus recapitulation from transaction and i try write code in phpmyadmin like

SELECT
tbl2.name, b.nama_bonus,
SUM(
    CASE
        WHEN b.nama_bonus REGEXP 'saldo' THEN tbl2.jumlah_transaksi * b.nominal_bonus
        WHEN b.nama_bonus REGEXP 'bintang' AND tbl2.nama_kategori REGEXP 'transfer' THEN FLOOR(tbl2.total_nominal_transaksi / b.keterangan_bonus)
        ELSE FLOOR(tbl2.total_nominal_transaksi / b.keterangan_bonus)
    END
) AS bonus_member
FROM
(    
    SELECT tbl1.*, u.name, pc.nama_kategori, COUNT(tbl1.nominal_transaksi) AS jumlah_transaksi, SUM(tbl1.nominal_transaksi) AS total_nominal_transaksi FROM
    (
        SELECT no_invoice, product_category_id, nominal_transaksi, user_id, status_transaksi_id FROM transactions
        WHERE status_transaksi_id = 1
    ) AS tbl1
    JOIN users u ON u.id = tbl1.user_id
    JOIN product_categories pc ON pc.id = tbl1.product_category_id
    GROUP BY u.id, pc.id
) AS tbl2
JOIN bonus b ON b.product_category_id = tbl2.product_category_id
GROUP BY b.nama_bonus, tbl2.name
ORDER BY tbl2.name

And the result is result query image

how to implement mysql code with eloquent using yajra datatables and also filter the data?

0 Answers
Related