activities per day

 avatar
unknown
plain_text
23 days ago
2.3 kB
2
Indexable
public function get_activities_per_day() {
    $sql = "
        SELECT 
            (
                COALESCE(Rep_Qty, 0) +
                COALESCE(Rep_Qty_Delivered, 0) +
                COALESCE(Order_Qty, 0) +
                COALESCE(Sales_Qty, 0) +
                COALESCE(Returns_Qty, 0) +
                COALESCE(Shipment_Qty, 0) +
                (COALESCE(Purchase_Qty, 0) * 0.25) +
                COALESCE(SMP_Total_Offers, 0) +
                COALESCE(QC_Count, 0)
            ) / NULLIF(Working_Days, 0) AS Activities_per_Day
        FROM (
            SELECT
                (SELECT COUNT(DISTINCT page_id) FROM isellpt_isystem_new.tbl_status_history WHERE page = 'repairs' AND status_text LIKE '%Add New%') AS Rep_Qty,
                (SELECT COUNT(DISTINCT page_id) FROM isellpt_isystem_new.tbl_status_history WHERE page = 'repairs' AND status_text LIKE '%Delivered%') AS Rep_Qty_Delivered,
                (SELECT COUNT(DISTINCT page_id) FROM isellpt_isystem_new.tbl_status_history WHERE page = 'clientorders' AND status_text LIKE '%Processing%') AS Order_Qty,
                (SELECT COUNT(DISTINCT id) FROM isellpt_isystem_new.tbl_sales WHERE created_date1 IN (SELECT Date FROM isellpt_isystem_new.tbl_dates WHERE IsWorkingDay = 1) AND status = 'complete') AS Sales_Qty,
                (SELECT COUNT(DISTINCT id) FROM isellpt_isystem_new.tbl_returns WHERE created_date1 IN (SELECT Date FROM isellpt_isystem_new.tbl_dates WHERE IsWorkingDay = 1) AND status <> 'delete') AS Returns_Qty,
                (SELECT COUNT(DISTINCT id) FROM isellpt_isystem_new.tbl_deliveries WHERE status = 1) AS Shipment_Qty,
                (SELECT SUM(quantity) FROM isellpt_isystem_new.tbl_stocklog WHERE type = 'Purchase' AND action = 'increase') AS Purchase_Qty,
                (SELECT COUNT(DISTINCT page_id) FROM isellpt_isystem_new.tbl_status_history WHERE page = 'buybackhistory' AND status_text LIKE '%Oferta submetida%') AS SMP_Total_Offers,
                (SELECT COUNT(*) FROM isellpt_isystem_new.tbl_status_history WHERE QC_Status IS NOT NULL) AS QC_Count,
                (SELECT COUNT(*) FROM isellpt_isystem_new.tbl_dates WHERE IsWorkingDay = 1) AS Working_Days
        ) AS SubMeasures;
    ";

    $query = $this->db->query($sql);
    return $query->row();
}
Editor is loading...
Leave a Comment