Пример #1
0
 function leadtimeFilterQuery($status, $date_start, $date_end, $query_prefix = '', $query_suffix = '')
 {
     global $LEADTIME_PROD_STATUS;
     $query = '';
     if (!is_null($date_start) && !is_null($date_end)) {
         //change to mysql format for filter usage
         $date_start = generateMysqlDateFromGerman($date_start);
         $date_end = generateMysqlDateFromGerman($date_end);
         $date_column_to_filter = in_array($status, $LEADTIME_PROD_STATUS) ? 'op.leadtime_start_date' : 'o.date_purchased';
         $query .= " {$date_column_to_filter} BETWEEN '{$date_start} 00:00:00' AND '{$date_end} 23:59:59' ";
         if ($query_prefix != '') {
             $query = " {$query_prefix} {$query} ";
         }
         if ($query_suffix != '') {
             $query .= " {$query_suffix} ";
         }
     }
     return $query;
 }
Пример #2
0
 /**
  * Update check date of this improvement
  * @param String $check_date
  */
 public function updateCheckDate($check_date)
 {
     if (strpos($check_date, '.') !== false) {
         $check_date = generateMysqlDateFromGerman($check_date);
     }
     $sda = array();
     $sda['check_date'] = $check_date;
     tep_db_perform('improvements', $sda, 'update', "improvements_id = {$this->id}");
     $this->check_date = $check_date;
 }
use_class('jng_sp_orders');
use_class('products_ean');
use_class('bins');
$class_sp = new jng_sp();
$class_jo = new jng_sp_orders();
$class_ean = new products_ean();
$class_bin = new bins();
$ean_collection = array();
$orders = array();
$orders_barcode = array();
$jng_sp_id = tep_db_prepare_input($_GET['spid']);
$destination = tep_db_prepare_input($_GET['dest']);
$order_type = tep_db_prepare_input($_GET['ot']);
$date_send = tep_db_prepare_input($_GET['datesend']);
$box_switch_time = $_GET['bst'] == '' ? array() : explode(',', tep_db_prepare_input($_GET['bst']));
$date_filter = generateMysqlDateFromGerman($date_send);
if ($jng_sp_id == '' || $date_filter == '') {
    exit;
}
$sp_detail = $class_sp->retrieveDetail($jng_sp_id);
$amvdsl = loadAMVDsendListWithSSCC($jng_sp_id, $destination, $order_type, $date_filter, $box_switch_time);
$asns = $amvdsl['asns'];
$orders = $amvdsl['orders'];
$orders_data = $amvdsl['orders_data'];
$orders_products = $amvdsl['orders_products'];
$orders_sscc = $amvdsl['orders_sscc'];
$box_total = count($orders_sscc);
class PDF extends PDF_Draw
{
    public $header_date;
    public $printed_po;
 $filter = array();
 $filter[] = "jo.confirm_status='0'";
 $filter_having = array();
 $filer_order_date = false;
 if (isset($_POST['postArgs'])) {
     foreach ($_POST['postArgs'] as $fname => $fval) {
         $fval = tep_db_prepare_input($fval);
         if ($fval != '' && $fval != 'SHOWALL') {
             switch ($fname) {
                 case 'sales_partner':
                     $jng_sp_id = $fval;
                     $filter[] = "jo.jng_sp_id={$jng_sp_id}";
                     break;
                 case 'order_date':
                     $filer_order_date = true;
                     $filer_order_date_value = generateMysqlDateFromGerman($fval);
                     $filter[] = "jo.order_date LIKE '{$filer_order_date_value}%'";
                     break;
                 case 'products_id':
                     $filter[] = "p.products_id='{$fval}'";
                     break;
                 case 'products_ean':
                     $filter[] = "joi.products_ean='{$fval}'";
                     break;
                 case 'stars':
                     $filter[] = "p.stars={$fval}";
                     break;
                 case 'sp_delivered_ge':
                     $filter[] = "jid.sp_delivered>={$fval}";
                     break;
                 case 'sp_delivered_le':
        $content .= '<h3 style="margin-top:20px;">Final Step &raquo; Print Packing Slip</h3>';
        $content .= '<div class="box ui-corner-all w500">';
        $content .= '<input type="button" id="sscc-print-slip" class="button" value="Download Packing Slip" title="Click here to download packing slip in pdf format" />';
        $content .= '</div>';
        //.box
    } else {
        $content .= '<h3 class="red">Tab Content Not Found</h3>';
    }
    echo utf8_encode($content);
    exit;
}
if (isset($_GET['modext'])) {
    if ($_GET['modext'] == 'raweanlist') {
        $spid = tep_db_prepare_input($_GET['spid']);
        $datefilter = tep_db_prepare_input($_GET['datefilter']);
        $datefilter_sql = generateMysqlDateFromGerman($datefilter);
        $amvdsl = loadAMVDsendList($spid, $datefilter_sql);
        $table = array();
        $row = array();
        $row['date'] = 'Date of delivery';
        $row['oid'] = 'PO Number';
        $row['ean'] = 'EAN';
        $row['asin'] = 'ASIN';
        $row['name'] = 'Title';
        $row['qty'] = 'Quantity';
        $row['cost'] = 'Cost / Product';
        $row['total'] = 'Total Cost';
        $table[] = $row;
        foreach ($amvdsl['orders'] as $oid) {
            foreach ($amvdsl['orders_products'][$oid] as $ean => $op) {
                $row = array();
Пример #6
0
 public function update($jng_sp_id = null, $name = null, $create_date = null, $create_by = null, $status = null)
 {
     if (!is_null($create_date) && $create_date === '') {
         $create_date = 'null';
     } elseif (strpos($create_date, '.') !== false) {
         $create_date = generateMysqlDateFromGerman($create_date);
     }
     $sda = array();
     if (!is_null($jng_sp_id)) {
         $sda['jng_sp_id'] = $jng_sp_id;
         $this->jng_sp_id = $jng_sp_id;
     }
     if (!is_null($name)) {
         $sda['preorder_name'] = $name;
         $this->name = $name;
     }
     if (!is_null($create_date)) {
         $sda['create_date'] = $create_date;
         $this->create_date = $create_date;
     }
     if (!is_null($create_by)) {
         $sda['create_by'] = $create_by;
         $this->create_by = $create_by;
     }
     if (!is_null($status)) {
         $sda['status'] = $status;
         $this->status = $status;
     }
     if (count($sda) > 0) {
         tep_db_perform('jng_sp_preorders', $sda, 'update', "jng_sp_preorders_id={$this->id}");
     }
 }
<?php

/**
 * Description of depotordershistory
 *
 * @author IT TEAM BONOFACTUM
 * @created Dec 12, 2013 3:13:24 PM
 */
use_class('depot_orders');
use_class('forecasting');
$pid = tep_db_prepare_input($_GET['pid']);
$aid = tep_db_prepare_input($_GET['aid']);
$days_per_page = 30;
if (isset($_POST['me_action'])) {
    if ($_POST['me_action'] == 'LOADHISTORY') {
        $start_date = generateMysqlDateFromGerman($_POST['start_date']);
        $page_count = $_POST['page_count'];
        $filter_end_ts = strtotime("{$start_date} -" . $days_per_page * ($page_count - 1) . ' days');
        $filter_end_date = date('Y-m-d', $filter_end_ts);
        $filter_start_ts = strtotime("{$filter_end_date} -" . ($days_per_page - 1) . " days");
        $filter_start_date = date('Y-m-d', $filter_start_ts);
        $filter_start_date .= ' 00:00:00';
        $filter_end_date .= ' 23:59:59';
        $alldates = getDatesBetween($filter_start_date, $filter_end_date);
        $alldates_desc = array_reverse($alldates);
        $data = array();
        foreach ($alldates_desc as $date) {
            $data[$date] = array();
            $data[$date]['refill_manual'] = 0;
            $data[$date]['refill_auto'] = 0;
            $data[$date]['total_sold_promo'] = 0;
Пример #8
0
 private function leadtimeFilterQuery($status, $field_leadtime, $field_order_date, $date_start, $date_end, $query_prefix = '', $query_suffix = '')
 {
     global $LEADTIME_PROD_STATUS;
     $query = '';
     if (!is_null($date_start) && $date_start != '' && !is_null($date_end) && $date_end != '') {
         //change to mysql format for filter usage
         $date_start = generateMysqlDateFromGerman($date_start);
         $date_end = generateMysqlDateFromGerman($date_end);
         $date_column_to_filter = in_array($status, $LEADTIME_PROD_STATUS) ? $field_leadtime : $field_order_date;
         $query .= " {$date_column_to_filter} >= '{$date_start} 00:00:00' AND {$date_column_to_filter} <= '{$date_end} 23:59:59' ";
         if ($query_prefix != '') {
             $query = " {$query_prefix} {$query} ";
         }
         if ($query_suffix != '') {
             $query .= " {$query_suffix} ";
         }
     }
     return $query;
 }
/**
 * Description of outsourcingoverview
 *
 * @author IT TEAM BONOFACTUM
 * @created Oct 7, 2013 10:35:36 PM
 */
use_class('depot_orders');
use_class('products_minierp');
$class_do = new depot_orders();
$class_pm = new products_minierp();
$jng_sp_id = '5';
$whid = WAREHOUSE_ID_PRODUCTS_HAMBURG;
if (isset($_POST['me_action'])) {
    if ($_POST['me_action'] == 'LOADOVERVIEW') {
        $shipping_window_range_start = generateMysqlDateFromGerman($_POST['shipwin_rs']);
        $shipping_window_range_end = generateMysqlDateFromGerman($_POST['shipwin_re']);
        $show_only_nostock = $_POST['nostock_filter'] == 'NOSTOCK';
        $show_only_nostock2 = $_POST['nostock_filter'] == 'NOSTOCK2';
        $q = "SELECT joi.products_ean, joi.products_id, joi.products_articles_id AS articles_id";
        $q .= ", joi.status, joi.stock_status, SUM(joi.order_quantity) AS total_qty";
        $q .= ", p.products_image, p.stars, p.products_model";
        $q .= ", IFNULL(pa.length, pnc.products_length) AS length";
        $q .= " FROM jng_sp_orders jo";
        $q .= " INNER JOIN jng_sp_orders_items joi ON joi.jng_sp_orders_id=jo.jng_sp_orders_id AND joi.status NOT IN (10,12)";
        $q .= " INNER JOIN products p ON p.products_id=joi.products_id AND p.is_outsourced=1";
        $q .= " LEFT JOIN products_non_configurator pnc ON pnc.products_id=joi.products_id";
        $q .= " INNER JOIN products_stock ps ON ps.jng_warehouses_id={$whid} AND ps.products_id=joi.products_id AND ps.articles_id=joi.products_articles_id";
        $q .= " LEFT JOIN products_articles pa ON pa.products_articles_id=joi.products_articles_id";
        $q .= " WHERE jo.jng_sp_id={$jng_sp_id} AND (";
        $q .= " (joi.shipping_window_open>='{$shipping_window_range_start}' AND joi.shipping_window_open<='{$shipping_window_range_end}')";
        $q .= " OR (joi.shipping_window_close>='{$shipping_window_range_start}' AND shipping_window_close<='{$shipping_window_range_end}')";
Пример #10
0
 public function updateCheckEDate($check_date)
 {
     if (strpos($check_date, '.') !== false) {
         $check_date = generateMysqlDateFromGerman($check_date);
     }
     $sda = array();
     $sda['edate'] = $check_date;
     tep_db_perform('promoboxes', $sda, 'update', "id_promoboxes={$this->id}");
     $this->edate = $check_date;
 }
        $result .= '<tr><td>Gross Profit in %</td><td class="tar">' . $gross_profit_pct_text . '</td><td class="tar">-</td></tr>';
        $result .= '<tr><td>Marketing Cost Fix</td><td class="tar">' . $cost_mkt_fix_text . '</td><td class="tar">' . $cost_mkt_fix_avg_text . '</td></tr>';
        $result .= '<tr><td>Marketing Cost Variable</td><td class="tar">' . $cost_mkt_var_text . '</td><td class="tar">' . $cost_mkt_var_avg_text . '</td></tr>';
        $result .= '<tr><td>Other Cost Fix</td><td class="tar">' . $cost_oth_fix_text . '</td><td class="tar">' . $cost_oth_fix_avg_text . '</td></tr>';
        $result .= '<tr><td>Other Cost Variable</td><td class="tar">' . $cost_oth_var_text . '</td><td class="tar">' . $cost_oth_var_avg_text . '</td></tr>';
        $result .= '<tr><td class="bold">Value Contribution</td><td class="bold tar">' . $vc_text . '</td><td class="bold tar">' . $vc_avg_text . '</td></tr>';
        $result .= '<tr><td class="bold">Value Contribution in %</td><td class="bold tar">' . $vc_pct_text . '</td><td class="bold tar">-</td></tr>';
        $result .= '</table>';
        echo utf8_encode($result);
        exit;
    } elseif ($_POST['me_action'] == 'RECALCULATECOGS') {
        $jng_sp_id = tep_db_prepare_input($_POST['jng_sp_id']);
        $start_date_raw = tep_db_prepare_input($_POST['start_date']);
        $start_date = generateMysqlDateFromGerman($start_date_raw);
        $end_date_raw = tep_db_prepare_input($_POST['end_date']);
        $end_date = generateMysqlDateFromGerman($end_date_raw);
        $bgst = Product::getOldProductFunction()->retrieveBestGoodSettings();
        ReportCOGS::recalculateData($jng_sp_id, $start_date, $end_date);
        $result = '<span class="green">Requested Data has been successfully' . " recalculated!</span>";
        echo utf8_encode($result);
        exit;
    }
}
if (isset($_FILES['b2b_order_import'])) {
    $file = $_FILES['b2b_order_import'];
    $jng_sp_id = tep_db_prepare_input($_POST['jng_sp_id']);
    $bgst = Product::getOldProductFunction()->retrieveBestGoodSettings();
    if ($jng_sp_id == '5') {
        if ($file['type'] == 'text/xml' || isFileTypeMSExcel($file['type'])) {
            set_time_limit(0);
            ini_set('memory_limit', '512M');
Пример #12
0
 /**
  * Update booking detail, send null to skip update of specific detail
  * @param String $date
  * @param String $name
  * @param Int $status
  * @param String $create_by
  */
 public function update($date = null, $name = null, $status = null, $create_by = null)
 {
     if (!is_null($date) && $date === '') {
         $date = 'null';
     } elseif (strpos($date, '.') !== false) {
         $date = generateMysqlDateFromGerman($date);
     }
     $sda = array();
     if (!is_null($date)) {
         $sda['booking_date'] = $date;
         $this->date = $date;
     }
     if (!is_null($name)) {
         $sda['booking_name'] = $name;
         $this->name = $name;
     }
     if (!is_null($status)) {
         $sda['booking_status'] = $status;
         $this->status = $status;
     }
     if (!is_null($create_by)) {
         $sda['create_by'] = $create_by;
         $this->create_by = $create_by;
     }
     if (count($sda) > 0) {
         tep_db_perform('products_stock_booking', $sda, 'update', "booking_id={$this->id}");
         if (isset($sda['booking_status'])) {
             $sda_items = array('booking_status' => $sda['booking_status']);
             tep_db_perform('products_stock_booking_items', $sda_items, 'update', "booking_id={$this->id}");
             $this->recalcActiveBooking();
         }
     }
 }
 if (isset($_POST['postArgs'])) {
     foreach ($_POST['postArgs'] as $fname => $fval) {
         $fval = tep_db_prepare_input($fval);
         if ($fval != '' && $fval != 'SHOWALL') {
             switch ($fname) {
                 case 'sortby':
                     $sorting[] = $fval;
                     break;
                 case 'sales_partner':
                     $jng_sp_id = $fval;
                     break;
                 case 'start_date':
                     $start_date = generateMysqlDateFromGerman($fval);
                     break;
                 case 'end_date':
                     $end_date = generateMysqlDateFromGerman($fval);
                     break;
                 case 'stars':
                     $filter_stars = $fval;
                     break;
                 case 'total_quantity_ge':
                     //having filter will conflict with the php filter, so we dont need it
                     //$havings[] = "total_quantity>=$fval";
                     $filter_totalqty_ge = $fval;
                     break;
                 case 'total_quantity_le':
                     //having filter will conflict with the php filter, so we dont need it
                     //$havings[] = "total_quantity<=$fval";
                     $filter_totalqty_le = $fval;
                     break;
                 case 'total_net_sales_ge':