Example #1
0
     //$result .= $result2.$result3.$resultCloser;
     //$result .= $result2;
     $result .= '</div>';
     //#kpi-sourcing-content
     $result .= '<div style="clear:both;">&nbsp;</div>';
 } elseif ($_GET['week-sum'] == 'KPI-PROD') {
     $class_pm = new products_minierp();
     $kpi_prod_config = load_config('kpi-settings');
     $bgst = $class_pm->retrieveBestGoodSettings();
     $atmu = $bgst['antitarnishmaxusage'];
     $atmul = $bgst['antitarnishmaxusageliters'];
     $daily_capacity = '2x Daily Capacity';
     //we no longer use backlog limit settings
     //$backlog_limit  = 'Min Backlog to Skip Refill';
     $antitarnish_usage = 'Max Antitarnish Liquid Usage';
     $backlog = queryCurrentBacklog($kpi_prod_config['kpi-production-daily-capacity']);
     $refresh_kpi_tables = tep_db_prepare_input($_POST['refresh_kt']);
     if (isset($_POST['seldate'])) {
         $seldate = tep_db_prepare_input($_POST['seldate']);
         $seldate_ts = strtotime($seldate);
         $seldate_ts_start = $seldate_ts - 7 * 86400;
         $filterdate_start = date('Y-m-d', $seldate_ts_start);
         $filterdate_end = date('Y-m-d', $seldate_ts);
     } else {
         $filterdate_start = date('Y-m-d', strtotime('-7 days'));
         $filterdate_end = date('Y-m-d');
     }
     $update_ss_log = isset($_POST['update_ss_log']) ? tep_db_prepare_input($_POST['update_ss_log']) : '';
     $update_ss_val = isset($_POST['update_ss_val']) ? tep_db_prepare_input($_POST['update_ss_val']) : '';
     if ($update_ss_log != '' && $update_ss_val >= 0) {
         tep_db_perform('production_target', array($update_ss_log => $update_ss_val), 'update', "date_id = '{$seldate}'");
Example #2
0
function expectedShippingDateFromHH($lowest_status, $lowest_status_date, $depot_print_confirmed = false)
{
    $final_date_format = 'd.m.Y';
    $final_date_prefix = 'Expected Shipment Date from HH is on';
    $final_date_suffix = '';
    $ISTODAY = false;
    $ISTOMORROW = false;
    $DATE_START_DAY = date('N', $lowest_status_date);
    $DATE_TODAY = date($final_date_format);
    $DATE_TOMORROW = date($final_date_format, strtotime("+1 day"));
    $status_add_backlog = array('2', '3', '4');
    //orders in this status will be added with production backlog calculation
    $days_to_add_config = array('1' => -1, '2' => 8, '3' => 5, '4' => 4, '5' => 3, '6' => 3, '7' => 2, '8' => 0, '9' => -1, '10' => -1, '11' => -1, '12' => -1);
    $days_to_add = $days_to_add_config[$lowest_status];
    if ($days_to_add < 0) {
        $class = 'notice';
        $result = 'N/A';
    } else {
        $class = '';
        //Backlog Adjustment
        if (in_array($lowest_status, $status_add_backlog)) {
            $days_to_add += queryCurrentBacklog();
        }
        //Weekend Adjustment (2 days = saturday, sunday)
        if ($days_to_add > 5) {
            $days_to_add += floor($days_to_add / 5) * 2;
        } else {
            if ($DATE_START_DAY == 7) {
                $days_to_add += 1;
            } elseif ($DATE_START_DAY + $days_to_add > 5) {
                $days_to_add += 2;
            }
        }
        $result_ts = strtotime(date('Y-m-d H:i:s', $lowest_status_date) . " +{$days_to_add} days");
        $dayfall = date('N', $result_ts);
        if ($dayfall == 6 || $dayfall == 7) {
            //if still fall on saturday (6), add 2 days
            //if still fall on sunday   (7), add 1 day
            $dayfall_add = $dayfall == 6 ? 2 : 1;
            $result_ts = strtotime(date('Y-m-d H:i:s', $result_ts) . " +{$dayfall_add} days");
        }
        if ($result_ts < time()) {
            $final_date_prefix = '!!! Order should have been sent on';
            $final_date_suffix = ' &sdot; <span class="notice">Please check late reason with related Team based on latest status!</span>';
            $class = 'red';
        }
        $result = date($final_date_format, $result_ts);
        if ($result == $DATE_TODAY) {
            $ISTODAY = true;
        } elseif ($result == $DATE_TOMORROW) {
            $ISTOMORROW = true;
        }
    }
    if ($ISTODAY || $ISTOMORROW) {
        $final_date_prefix = 'Expected Shipment Date from HH is';
        $final_date_suffix = '';
        $class = '';
        $result = date('G') >= 14 && !$depot_print_confirmed || $ISTOMORROW ? 'Tomorrow (' . $DATE_TOMORROW . ')' : 'Today (' . $DATE_TODAY . ')';
    }
    if ($class != '') {
        $class = ' class="' . $class . '"';
    }
    return '<span' . $class . '>' . $final_date_prefix . ' ' . $result . '</span>' . $final_date_suffix;
}
 use_class('orders');
 use_class('jng_sp_orders');
 $class_o = new orders();
 $class_jo = new jng_sp_orders();
 $default_late_days = 2;
 $late_days = array();
 $late_days[1] = $default_late_days + 2;
 $late_days[2] = $default_late_days + 1;
 $late_days[3] = $default_late_days;
 $late_days[4] = $default_late_days;
 $late_days[5] = $default_late_days;
 $sp_tograb = array('2' => 'Otto');
 $sp_idlist = implode(',', array_keys($sp_tograb));
 $late_days_used = $late_days[$today_day];
 $order_status_limit = date('Y-m-d', strtotime("-{$late_days_used} days"));
 $backlog = queryCurrentBacklog();
 $q = "(";
 $q .= "SELECT 'JG' AS type, 0 AS jng_sp_id, o.orders_id, o.date_purchased AS order_date, o.customers_name, o.customers_email_address AS customers_email";
 $q .= ", op.orders_products_id AS items_id, op.order_item_count, IFNULL(do.status, op.status) AS status, MAX(IFNULL(dosh.update_time, opsh.status_date)) AS status_date, op.products_model AS product_id, op.products_name AS product_name";
 $q .= " FROM orders o";
 $q .= " INNER JOIN orders_products op ON op.orders_id=o.orders_id AND (op.status IN (2,3,4) OR (op.status=8 AND op.stock_status!='D')) AND op.products_name NOT LIKE '%\"%'";
 $q .= " LEFT  JOIN orders_products_delay_notification opdn ON opdn.orders_products_id=op.orders_products_id";
 $q .= " LEFT JOIN orders_products_status_history opsh ON opsh.orders_products_id=op.orders_products_id AND opsh.status=op.status";
 $q .= " LEFT JOIN depot_orders do ON do.trans_type='JG' AND do.trans_id=op.orders_products_id AND op.status=8 AND do.status IN (2,3,4)";
 $q .= " LEFT JOIN depot_orders_status_history dosh ON dosh.depot_orders_id=do.depot_orders_id AND dosh.status=do.status";
 $q .= " WHERE opdn.orders_products_id IS NULL";
 $q .= " AND (op.status IN (2,3,4) OR (op.status=8 AND do.depot_orders_id IS NOT NULL))";
 $q .= " AND IF(op.status=8, DATE(dosh.update_time)<=DATE('{$order_status_limit}'), DATE(opsh.status_date)<=DATE('{$order_status_limit}'))";
 $q .= " GROUP BY op.orders_products_id";
 $q .= " ORDER BY o.orders_id, op.order_item_count";
 $q .= ") UNION (";