fix conflict
This commit is contained in:
commit
849edcdb12
@ -411,7 +411,7 @@ class Sale {
|
|||||||
return $orders;
|
return $orders;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getMultiForStats($orders = array(), $nb_sale)
|
public function getMultiForStats($orders = array(), $nb_sale, $strict = false)
|
||||||
{
|
{
|
||||||
$products = $this->getProducts();
|
$products = $this->getProducts();
|
||||||
|
|
||||||
@ -438,8 +438,14 @@ class Sale {
|
|||||||
|
|
||||||
$multi = array();
|
$multi = array();
|
||||||
foreach ($_orders as $key => $order) {
|
foreach ($_orders as $key => $order) {
|
||||||
if(count($order) >= (int)$nb_sale) {
|
if($strict) {
|
||||||
$multi[] = $key;
|
if(count($order) == (int)$nb_sale) {
|
||||||
|
$multi[] = $key;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(count($order) >= (int)$nb_sale) {
|
||||||
|
$multi[] = $key;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $multi;
|
return $multi;
|
||||||
|
@ -98,7 +98,7 @@ class AdminPrivateSalesLogistique extends AdminTab {
|
|||||||
|
|
||||||
var type = $("#export_form input[name=export_type]:checked").val();
|
var type = $("#export_form input[name=export_type]:checked").val();
|
||||||
|
|
||||||
if(type == 1 || type == 2) {
|
if(type == 1 || type == 2 || type == 4) {
|
||||||
req += "&type="+type;
|
req += "&type="+type;
|
||||||
req += "&lang="+$("input[name=lang]:checked").val();
|
req += "&lang="+$("input[name=lang]:checked").val();
|
||||||
|
|
||||||
@ -467,7 +467,8 @@ class AdminPrivateSalesLogistique extends AdminTab {
|
|||||||
<input type="radio" name="export_type" value="2"> '.$this->l('Etat de la vente').'
|
<input type="radio" name="export_type" value="2"> '.$this->l('Etat de la vente').'
|
||||||
<br />
|
<br />
|
||||||
<input type="radio" name="export_type" value="3"> '.$this->l('Stats de la vente').'
|
<input type="radio" name="export_type" value="3"> '.$this->l('Stats de la vente').'
|
||||||
|
<br />
|
||||||
|
<input type="radio" name="export_type" value="4"> '.$this->l('BDC Logistique').'
|
||||||
|
|
||||||
<h4>'.$this->l('Selection de la langue').'</h4>
|
<h4>'.$this->l('Selection de la langue').'</h4>
|
||||||
<input type="radio" name="lang" value="fr" checked> '.$this->l('Français').'
|
<input type="radio" name="lang" value="fr" checked> '.$this->l('Français').'
|
||||||
|
@ -5,7 +5,7 @@ class MakeStats {
|
|||||||
{
|
{
|
||||||
global $cookie;
|
global $cookie;
|
||||||
$category = new Category($id_cat);
|
$category = new Category($id_cat);
|
||||||
$products = $category->getProductsStats( $cookie->id_lang , "1", "1000000000000000000", "reference",NULL , NULL, FALSE , FALSE );
|
$products = $category->getProductsStats( $cookie->id_lang , "1", "1000000000000000000", "reference",NULL , FALSE, FALSE , FALSE );
|
||||||
|
|
||||||
return $products;
|
return $products;
|
||||||
}
|
}
|
||||||
@ -83,10 +83,37 @@ class MakeStats {
|
|||||||
return $records;
|
return $records;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function getArrayLines($lines, $by_product_price = false)
|
public static function getArrayLines($lines, $by_product_price = false, $id_sale = 0)
|
||||||
{
|
{
|
||||||
$arrayTmp = array();
|
$arrayTmp = array();
|
||||||
$g = 0;
|
$g = 0;
|
||||||
|
|
||||||
|
if ($id_sale>2) {
|
||||||
|
|
||||||
|
$sale = new Sale((int) $id_sale);
|
||||||
|
$id_products = $sale->getProducts();
|
||||||
|
$ids = Db::getInstance()->ExecuteS('
|
||||||
|
SELECT DISTINCT d.`id_order`, CAST(o.`date_add` as DATE) as `date_add`
|
||||||
|
FROM `'._DB_PREFIX_.'order_detail` d
|
||||||
|
LEFT JOIN `'._DB_PREFIX_.'orders` o
|
||||||
|
ON d.`id_order` = o.`id_order`
|
||||||
|
WHERE d.`product_id` IN ('.implode(',', $id_products).'
|
||||||
|
-- SELECT `id_product`
|
||||||
|
-- FROM `'._DB_PREFIX_.'product_ps_cache`
|
||||||
|
-- WHERE `id_sale` = '.(int) $id_sale.'
|
||||||
|
)
|
||||||
|
AND o.`valid` = 1
|
||||||
|
');
|
||||||
|
|
||||||
|
$ids_od = array();
|
||||||
|
foreach ($ids as $key => $id) {
|
||||||
|
$ids_od[] = (int)$id['id_order'];
|
||||||
|
}
|
||||||
|
$all_multi = $sale->getMultiForStats($ids_od, 3);
|
||||||
|
$all_m1 = $sale->getMultiForStats($ids_od, 1, true);
|
||||||
|
$all_m2 = $sale->getMultiForStats($ids_od, 2, true);
|
||||||
|
}
|
||||||
|
|
||||||
foreach($lines as $line)
|
foreach($lines as $line)
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -96,20 +123,20 @@ class MakeStats {
|
|||||||
if(!isset($arrayTmp[$line['product_id']]))
|
if(!isset($arrayTmp[$line['product_id']]))
|
||||||
$arrayTmp[$line['product_id']] = array();
|
$arrayTmp[$line['product_id']] = array();
|
||||||
|
|
||||||
$product_price = MakeStats::getProductPriceWithReduction($line);
|
$product_price = MakeStats::getProductPriceWithReduction($line);
|
||||||
if($by_product_price)
|
if($by_product_price)
|
||||||
{
|
{
|
||||||
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]))
|
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]))
|
||||||
$arrayTmp[$line['product_id']][$line['product_attribute_id']] = array();
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']] = array();
|
||||||
|
|
||||||
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']][$product_price]))
|
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']][$product_price]))
|
||||||
$arrayTmp[$line['product_id']][$line['product_attribute_id']][$product_price] = array('line' => $line, 'total' => 0);
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']][$product_price] = array('line' => $line, 'total' => 0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]))
|
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]))
|
||||||
$arrayTmp[$line['product_id']][$line['product_attribute_id']] = array('line' => $line, 'total' => 0);
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']] = array('line' => $line, 'total' => 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($line['product_quantity'])) {
|
if (isset($line['product_quantity'])) {
|
||||||
$quantity = $line['product_quantity'] - $line['product_quantity_reinjected'];
|
$quantity = $line['product_quantity'] - $line['product_quantity_reinjected'];
|
||||||
@ -118,15 +145,40 @@ class MakeStats {
|
|||||||
}
|
}
|
||||||
$stock = (isset($line['attribute_quantity']))?$line['attribute_quantity']:$line['stock'];
|
$stock = (isset($line['attribute_quantity']))?$line['attribute_quantity']:$line['stock'];
|
||||||
|
|
||||||
if($by_product_price) {
|
if($by_product_price) {
|
||||||
$arrayTmp[$line['product_id']][$line['product_attribute_id']][$product_price]['total'] += $quantity;
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']][$product_price]['total'] += $quantity;
|
||||||
$arrayTmp[$line['product_id']][$line['product_attribute_id']][$product_price]['stock'] = $stock;
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']][$product_price]['stock'] = $stock;
|
||||||
} else {
|
} else {
|
||||||
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['total'] += $quantity;
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['total'] += $quantity;
|
||||||
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['stock'] = $stock;
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['stock'] = $stock;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
if ($id_sale>2) {
|
||||||
|
// multi (order contenant au moins 3 ventes differentes)
|
||||||
|
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]['multi']) && in_array($line['id_order'], $all_multi)) {
|
||||||
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['multi'] = $quantity;
|
||||||
|
} elseif (isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]) && in_array($line['id_order'], $all_multi)) {
|
||||||
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['multi'] += $quantity;
|
||||||
|
}
|
||||||
|
|
||||||
|
// multi 1 (order contenant uniquement 1 vente)
|
||||||
|
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]['m1']) && in_array($line['id_order'], $all_m1)) {
|
||||||
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['m1'] = $quantity;
|
||||||
|
} elseif (isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]['m1']) && in_array($line['id_order'], $all_m1)) {
|
||||||
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['m1'] += $quantity;
|
||||||
|
}
|
||||||
|
|
||||||
|
// multi 2 (order contenant uniquement 2 ventes)
|
||||||
|
if(!isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]['m2']) && in_array($line['id_order'], $all_m2)) {
|
||||||
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['m2'] = $quantity;
|
||||||
|
} elseif (isset($arrayTmp[$line['product_id']][$line['product_attribute_id']]['m2']) && in_array($line['id_order'], $all_m2)) {
|
||||||
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['m2'] += $quantity;
|
||||||
|
}
|
||||||
|
|
||||||
|
// multi 1 + multi 2 (produit dans order contenant uniquement 1 vente et order contenant 2 ventes)
|
||||||
|
$arrayTmp[$line['product_id']][$line['product_attribute_id']]['m1_m2'] = $arrayTmp[$line['product_id']][$line['product_attribute_id']]['m1'] + $arrayTmp[$line['product_id']][$line['product_attribute_id']]['m2'];
|
||||||
|
}
|
||||||
|
}
|
||||||
return $lines = $arrayTmp;
|
return $lines = $arrayTmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,6 +25,7 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
1, //1 : bon de commande
|
1, //1 : bon de commande
|
||||||
2, //2 : état des ventes
|
2, //2 : état des ventes
|
||||||
3, //3 : stats des ventes
|
3, //3 : stats des ventes
|
||||||
|
4, //4 : BDC logistique
|
||||||
);
|
);
|
||||||
|
|
||||||
$lang_id = Tools::getValue('lang', 'fr');
|
$lang_id = Tools::getValue('lang', 'fr');
|
||||||
@ -41,7 +42,8 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
'Remaining quantity' => 'Remaining quantities',
|
'Remaining quantity' => 'Remaining quantities',
|
||||||
'Unit Price' => 'Unit Price',
|
'Unit Price' => 'Unit Price',
|
||||||
'Total Amount' => 'Total Amount',
|
'Total Amount' => 'Total Amount',
|
||||||
'Purchase order' => 'Purchase order',
|
'Purchase order' => 'Purchase order',
|
||||||
|
'Purchase order logistic' => 'Purchase order logistic',
|
||||||
'State order' => 'Sales report',
|
'State order' => 'Sales report',
|
||||||
|
|
||||||
'The number below must be present on each document regarding this order, delivery note, invoice :' => 'The number below must be present on each document regarding this order, delivery note, invoice :',
|
'The number below must be present on each document regarding this order, delivery note, invoice :' => 'The number below must be present on each document regarding this order, delivery note, invoice :',
|
||||||
@ -62,7 +64,8 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
'Remaining quantity' => 'Stock restant',
|
'Remaining quantity' => 'Stock restant',
|
||||||
'Unit Price' => 'PU HT',
|
'Unit Price' => 'PU HT',
|
||||||
'Total Amount' => 'Prix Total HT',
|
'Total Amount' => 'Prix Total HT',
|
||||||
'Purchase order' => 'Bon de commande',
|
'Purchase order' => 'Bon de commande',
|
||||||
|
'Purchase order logistic' => 'Bon de commande logistique',
|
||||||
'State order' => 'Etat des ventes',
|
'State order' => 'Etat des ventes',
|
||||||
'YES' => 'OUI',
|
'YES' => 'OUI',
|
||||||
|
|
||||||
@ -129,15 +132,13 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
$date_to_sql = $date_to;
|
$date_to_sql = $date_to;
|
||||||
|
|
||||||
$sale = Sale::getSaleFromCategory($id_category);
|
$sale = Sale::getSaleFromCategory($id_category);
|
||||||
|
|
||||||
$category = new Category($id_category, $cookie->id_lang);
|
$category = new Category($id_category, $cookie->id_lang);
|
||||||
$products = MakeStats::getProductsByCat($id_category);
|
$products = MakeStats::getProductsByCat($id_category);
|
||||||
|
|
||||||
|
|
||||||
$lines = array();
|
$lines = array();
|
||||||
$array_product = array();
|
$array_product = array();
|
||||||
|
|
||||||
if($type == 1 || $type == 2 || $type == 3) {
|
if($type == 1 || $type == 2 || $type == 3 || $type == 4) {
|
||||||
$arrayProduct = array();
|
$arrayProduct = array();
|
||||||
foreach($products as $product)
|
foreach($products as $product)
|
||||||
$array_product[$product['id_product']] = $arrayProduct[$product['id_product']] = new Product($product['id_product']);
|
$array_product[$product['id_product']] = $arrayProduct[$product['id_product']] = new Product($product['id_product']);
|
||||||
@ -147,14 +148,18 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
$lines = MakeStats::getOrdersByIdsProduct(array_keys($arrayProduct), $order_states, $date_from->getDate('SQL'), $date_to->getDate('SQL'));
|
$lines = MakeStats::getOrdersByIdsProduct(array_keys($arrayProduct), $order_states, $date_from->getDate('SQL'), $date_to->getDate('SQL'));
|
||||||
|
|
||||||
// adding - fev 2016
|
// adding - fev 2016
|
||||||
if ($type == 2) {
|
if ($type == 2 || $type == 4) {
|
||||||
$lines = MakeStats::getDetailsByIdsProduct(array_keys($arrayProduct), $order_states, $date_from->getDate('SQL'), $date_to->getDate('SQL'));
|
$lines = MakeStats::getDetailsByIdsProduct(array_keys($arrayProduct), $order_states, $date_from->getDate('SQL'), $date_to->getDate('SQL'));
|
||||||
}
|
}
|
||||||
// end adding
|
// end adding
|
||||||
|
|
||||||
// for stats
|
// for stats
|
||||||
$lines_tmp = $lines;
|
$lines_tmp = $lines;
|
||||||
$lines = MakeStats::getArrayLines($lines);
|
if ($type == 4) {
|
||||||
|
$lines = MakeStats::getArrayLines($lines, false, $sale->id);
|
||||||
|
} else {
|
||||||
|
$lines = MakeStats::getArrayLines($lines);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
die("Type d'export invalide");
|
die("Type d'export invalide");
|
||||||
}
|
}
|
||||||
@ -236,13 +241,10 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
{
|
{
|
||||||
foreach($arrayProduct as $id_product_attribute => $values)
|
foreach($arrayProduct as $id_product_attribute => $values)
|
||||||
{
|
{
|
||||||
|
//echo "<pre>";var_dump($values);echo "</pre>";
|
||||||
$arrayTmp[$values['line']['product_id']][$values['line']['product_attribute_id']] = $values;
|
$arrayTmp[$values['line']['product_id']][$values['line']['product_attribute_id']] = $values;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// associate position
|
// associate position
|
||||||
$arrayTmp2 = array();
|
$arrayTmp2 = array();
|
||||||
@ -255,7 +257,6 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
|
|
||||||
// ksort($lines2);
|
// ksort($lines2);
|
||||||
|
|
||||||
|
|
||||||
$have_declinaison = false;
|
$have_declinaison = false;
|
||||||
foreach($lines2 as $lines_attributes)
|
foreach($lines2 as $lines_attributes)
|
||||||
{
|
{
|
||||||
@ -277,6 +278,9 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
$extrafields = Category::getSalesInfos(array((int)$category->id_category));
|
$extrafields = Category::getSalesInfos(array((int)$category->id_category));
|
||||||
$title = $lang['State order'] .' '. $category->name . ' - ' . $extrafields[(int)$category->id_category]['sales'][1];
|
$title = $lang['State order'] .' '. $category->name . ' - ' . $extrafields[(int)$category->id_category]['sales'][1];
|
||||||
break;
|
break;
|
||||||
|
case '4':
|
||||||
|
$title = $lang['Purchase order logistic'].' '. $category->name .' - Bébé Boutik '. $date_from->getNomMois() .' '.$date_from->getAnnee();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -284,69 +288,107 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
$firstColumn = 'A';
|
$firstColumn = 'A';
|
||||||
if($have_declinaison === true)
|
if($have_declinaison === true)
|
||||||
{
|
{
|
||||||
if ($type == 1) {
|
if ($type == 4) {
|
||||||
$lastColumn = 'H';
|
$lastColumn = 'K';
|
||||||
|
|
||||||
|
$letter_product_ref_interne = 'B';
|
||||||
|
$letter_product_name = 'C';
|
||||||
|
$letter_product_attribute_name = 'D';
|
||||||
|
$letter_product_ht = 'E';
|
||||||
|
$letter_product_M1_M2 = 'F';
|
||||||
|
$letter_product_multi = 'G';
|
||||||
|
|
||||||
|
$letter_product_colisage = 'H';
|
||||||
|
$letter_product_stock3btk = 'I';
|
||||||
|
$letter_product_missing = 'J';
|
||||||
|
|
||||||
|
$letter_product_total_qty= 'K';
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$lastColumn = 'J';
|
|
||||||
}
|
|
||||||
|
|
||||||
$letter_bdc_title = 'C';
|
if ($type == 1) {
|
||||||
$letter_end_address = 'B';
|
$lastColumn = 'H';
|
||||||
|
} else {
|
||||||
|
$lastColumn = 'J';
|
||||||
|
}
|
||||||
|
|
||||||
$letter_date = 'C';
|
$letter_bdc_title = 'C';
|
||||||
$letter_franco = 'D';
|
$letter_end_address = 'B';
|
||||||
$letter_condition = 'E';
|
|
||||||
|
|
||||||
$letter_product_ean = 'B';
|
$letter_date = 'C';
|
||||||
$letter_product_ref_interne = 'C';
|
$letter_franco = 'D';
|
||||||
$letter_product_name = 'D';
|
$letter_condition = 'E';
|
||||||
$letter_product_attribute_name = 'E';
|
|
||||||
/*$letter_product_qty = 'F';*/
|
|
||||||
|
|
||||||
if ($type == 1) {
|
$letter_product_ean = 'B';
|
||||||
$letter_product_qty = 'F';
|
$letter_product_ref_interne = 'C';
|
||||||
$letter_product_ht = 'G';
|
$letter_product_name = 'D';
|
||||||
$letter_product_total = 'H';
|
$letter_product_attribute_name = 'E';
|
||||||
} else {
|
/*$letter_product_qty = 'F';*/
|
||||||
$letter_product_total_qty = 'F';
|
|
||||||
$letter_product_qty = 'G';
|
if ($type == 1) {
|
||||||
$letter_product_remaining_qty = 'H';
|
$letter_product_qty = 'F';
|
||||||
$letter_product_ht = 'I';
|
$letter_product_ht = 'G';
|
||||||
$letter_product_total = 'J';
|
$letter_product_total = 'H';
|
||||||
|
} else {
|
||||||
|
$letter_product_total_qty = 'F';
|
||||||
|
$letter_product_qty = 'G';
|
||||||
|
$letter_product_remaining_qty = 'H';
|
||||||
|
$letter_product_ht = 'I';
|
||||||
|
$letter_product_total = 'J';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ($type == 1) {
|
if ($type == 4) {
|
||||||
$lastColumn = 'G';
|
$lastColumn = 'J';
|
||||||
|
|
||||||
|
$letter_product_ref_interne = 'B';
|
||||||
|
$letter_product_name = 'C';
|
||||||
|
//$letter_product_attribute_name = 'D';
|
||||||
|
$letter_product_ht = 'D';
|
||||||
|
$letter_product_M1_M2 = 'E';
|
||||||
|
$letter_product_multi = 'F';
|
||||||
|
|
||||||
|
$letter_product_colisage = 'G';
|
||||||
|
$letter_product_stock3btk = 'H';
|
||||||
|
$letter_product_missing = 'I';
|
||||||
|
|
||||||
|
$letter_product_total_qty= 'J';
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$lastColumn = 'I';
|
|
||||||
}
|
|
||||||
|
|
||||||
$letter_bdc_title = 'C';
|
|
||||||
$letter_end_address = 'B';
|
|
||||||
|
|
||||||
$letter_date = 'C';
|
if ($type == 1) {
|
||||||
$letter_franco = 'D';
|
$lastColumn = 'G';
|
||||||
$letter_condition = 'E';
|
} else {
|
||||||
|
$lastColumn = 'I';
|
||||||
|
}
|
||||||
|
|
||||||
|
$letter_bdc_title = 'C';
|
||||||
|
$letter_end_address = 'B';
|
||||||
|
|
||||||
|
$letter_date = 'C';
|
||||||
|
$letter_franco = 'D';
|
||||||
|
$letter_condition = 'E';
|
||||||
|
|
||||||
|
|
||||||
$letter_product_ean = 'B';
|
$letter_product_ean = 'B';
|
||||||
$letter_product_ref_interne = 'C';
|
$letter_product_ref_interne = 'C';
|
||||||
$letter_product_name = 'D';
|
$letter_product_name = 'D';
|
||||||
// $letter_product_attribute_name = 'C';
|
// $letter_product_attribute_name = 'C';
|
||||||
/* $letter_product_qty = 'E';*/
|
/* $letter_product_qty = 'E';*/
|
||||||
|
|
||||||
if ($type == 1) {
|
if ($type == 1) {
|
||||||
$letter_product_qty = 'E';
|
$letter_product_qty = 'E';
|
||||||
$letter_product_ht = 'F';
|
$letter_product_ht = 'F';
|
||||||
$letter_product_total = 'G';
|
$letter_product_total = 'G';
|
||||||
} else {
|
} else {
|
||||||
$letter_product_total_qty = 'E';
|
$letter_product_total_qty = 'E';
|
||||||
$letter_product_qty = 'F';
|
$letter_product_qty = 'F';
|
||||||
$letter_product_remaining_qty = 'G';
|
$letter_product_remaining_qty = 'G';
|
||||||
$letter_product_ht = 'H';
|
$letter_product_ht = 'H';
|
||||||
$letter_product_total = 'I';
|
$letter_product_total = 'I';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -623,61 +665,105 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
|
|
||||||
$i ++;
|
$i ++;
|
||||||
}
|
}
|
||||||
|
if ($type == 4) {
|
||||||
if ($type == 2) {
|
$activeSheet->SetCellValue($firstColumn.$i, $title);
|
||||||
$activeSheet->SetCellValue($firstColumn.$i, $date_of_extract->getJour().' '.$date_of_extract->getNomMois().' '.$date_of_extract->getAnnee());
|
|
||||||
$i++;$i++;
|
$i++;$i++;
|
||||||
}
|
|
||||||
|
|
||||||
$activeSheet->SetCellValue($firstColumn.$i, $lang['Product ID']);
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_ref_interne.$i, $lang['Reference BB']);
|
||||||
$activeSheet->SetCellValue($letter_product_ean.$i, $lang['EAN']);
|
$activeSheet->getStyle($letter_product_ref_interne.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
$activeSheet->getStyle($letter_product_ean.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
|
||||||
$activeSheet->SetCellValue($letter_product_ref_interne.$i, $lang['Reference BB']);
|
|
||||||
$activeSheet->getStyle($letter_product_ref_interne.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
|
||||||
//$activeSheet->getStyle('E'.$i)->getBorders()->setBold(true);
|
|
||||||
|
|
||||||
$activeSheet->SetCellValue($letter_product_name.$i, $lang['Product Name']);
|
$activeSheet->SetCellValue($letter_product_name.$i, $lang['Product Name']);
|
||||||
$activeSheet->getStyle($letter_product_name.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
$activeSheet->getStyle($letter_product_name.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
if($have_declinaison === true) {
|
if($have_declinaison === true) {
|
||||||
$activeSheet->SetCellValue($letter_product_attribute_name.$i, $lang['Attribute']);
|
$activeSheet->SetCellValue($letter_product_attribute_name.$i, $lang['Attribute']);
|
||||||
$activeSheet->getStyle($letter_product_attribute_name.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
$activeSheet->getStyle($letter_product_attribute_name.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
}
|
}
|
||||||
|
|
||||||
$activeSheet->SetCellValue($letter_product_qty.$i, $lang['Quantity']);
|
$activeSheet->setCellValue($letter_product_ht.$i, $lang['Unit Price']);
|
||||||
$activeSheet->getStyle($letter_product_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
$activeSheet->getStyle($letter_product_qty.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
$activeSheet->getStyle($letter_product_qty.$i)->getAlignment()->setWrapText(true);
|
|
||||||
if ($type == 2) {
|
$activeSheet->setCellValue($letter_product_M1_M2.$i, 'M1+M2');
|
||||||
$activeSheet->getStyle($letter_product_qty.$i)->getFill()->applyFromArray(
|
$activeSheet->getStyle($letter_product_M1_M2.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
array(
|
$activeSheet->getStyle($letter_product_M1_M2.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
'type' => PHPExcel_Style_Fill::FILL_SOLID,
|
|
||||||
'rotation' => 0,
|
$activeSheet->setCellValue($letter_product_multi.$i, 'Multi');
|
||||||
'startcolor' => array(
|
$activeSheet->getStyle($letter_product_multi.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
'rgb' => 'D9D9D9'
|
$activeSheet->getStyle($letter_product_multi.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
),
|
|
||||||
'endcolor' => array(
|
$activeSheet->setCellValue($letter_product_colisage.$i, 'Colisage/ferme');
|
||||||
'argb' => 'D9D9D9D9'
|
$activeSheet->getStyle($letter_product_colisage.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
)
|
$activeSheet->getStyle($letter_product_colisage.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
)
|
|
||||||
);
|
$activeSheet->setCellValue($letter_product_stock3btk.$i, 'Stock 3BTK');
|
||||||
$activeSheet->SetCellValue($letter_product_total_qty.$i, $lang['Total quantity']);
|
$activeSheet->getStyle($letter_product_stock3btk.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_stock3btk.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_missing.$i, 'Manquant');
|
||||||
|
$activeSheet->getStyle($letter_product_missing.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_missing.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_total_qty.$i, 'Total qty');
|
||||||
$activeSheet->getStyle($letter_product_total_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
$activeSheet->getStyle($letter_product_total_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
$activeSheet->getStyle($letter_product_total_qty.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
$activeSheet->getStyle($letter_product_total_qty.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
|
||||||
$activeSheet->SetCellValue($letter_product_remaining_qty.$i, $lang['Remaining quantity']);
|
} else {
|
||||||
$activeSheet->getStyle($letter_product_remaining_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
||||||
$activeSheet->getStyle($letter_product_remaining_qty.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
if ($type == 2) {
|
||||||
|
$activeSheet->SetCellValue($firstColumn.$i, $date_of_extract->getJour().' '.$date_of_extract->getNomMois().' '.$date_of_extract->getAnnee());
|
||||||
|
$i++;$i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($firstColumn.$i, $lang['Product ID']);
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_ean.$i, $lang['EAN']);
|
||||||
|
$activeSheet->getStyle($letter_product_ean.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
$activeSheet->SetCellValue($letter_product_ref_interne.$i, $lang['Reference BB']);
|
||||||
|
$activeSheet->getStyle($letter_product_ref_interne.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
//$activeSheet->getStyle('E'.$i)->getBorders()->setBold(true);
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_name.$i, $lang['Product Name']);
|
||||||
|
$activeSheet->getStyle($letter_product_name.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
if($have_declinaison === true) {
|
||||||
|
$activeSheet->SetCellValue($letter_product_attribute_name.$i, $lang['Attribute']);
|
||||||
|
$activeSheet->getStyle($letter_product_attribute_name.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
}
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_qty.$i, $lang['Quantity']);
|
||||||
|
$activeSheet->getStyle($letter_product_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_qty.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_qty.$i)->getAlignment()->setWrapText(true);
|
||||||
|
if ($type == 2) {
|
||||||
|
$activeSheet->getStyle($letter_product_qty.$i)->getFill()->applyFromArray(
|
||||||
|
array(
|
||||||
|
'type' => PHPExcel_Style_Fill::FILL_SOLID,
|
||||||
|
'rotation' => 0,
|
||||||
|
'startcolor' => array(
|
||||||
|
'rgb' => 'D9D9D9'
|
||||||
|
),
|
||||||
|
'endcolor' => array(
|
||||||
|
'argb' => 'D9D9D9D9'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
$activeSheet->SetCellValue($letter_product_total_qty.$i, $lang['Total quantity']);
|
||||||
|
$activeSheet->getStyle($letter_product_total_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_total_qty.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_remaining_qty.$i, $lang['Remaining quantity']);
|
||||||
|
$activeSheet->getStyle($letter_product_remaining_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_remaining_qty.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
}
|
||||||
|
$activeSheet->setCellValue($letter_product_ht.$i, $lang['Unit Price']);
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_total.$i, $lang['Total Amount']);
|
||||||
|
$activeSheet->getStyle($letter_product_total.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_total.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
||||||
}
|
}
|
||||||
$activeSheet->setCellValue($letter_product_ht.$i, $lang['Unit Price']);
|
|
||||||
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
||||||
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($letter_product_total.$i, $lang['Total Amount']);
|
|
||||||
$activeSheet->getStyle($letter_product_total.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
||||||
$activeSheet->getStyle($letter_product_total.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
|
|
||||||
|
|
||||||
$i++;
|
$i++;
|
||||||
$iOri = $i;
|
$iOri = $i;
|
||||||
@ -691,6 +777,56 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
|
|
||||||
switch($type)
|
switch($type)
|
||||||
{
|
{
|
||||||
|
case '4':
|
||||||
|
foreach($lines2 as $lines_attributes)
|
||||||
|
{
|
||||||
|
foreach($lines_attributes as $values)
|
||||||
|
{
|
||||||
|
|
||||||
|
$id_product_attribute = $values['line']['product_attribute_id'];
|
||||||
|
$id_product = $values['line']['product_id'];
|
||||||
|
$current_product = $array_product[$id_product];
|
||||||
|
if($id_product_attribute != 0)
|
||||||
|
{
|
||||||
|
$combination = new Combination($id_product_attribute);
|
||||||
|
if($combination->wholesale_price == 0)
|
||||||
|
$wholesale_price = $current_product->wholesale_price;
|
||||||
|
else
|
||||||
|
$wholesale_price = $combination->wholesale_price;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$wholesale_price = $current_product->wholesale_price;
|
||||||
|
}
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_ref_interne.$i, $values['line']['product_reference']);
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_name.$i, $values['line']['product_name_base']);
|
||||||
|
if($have_declinaison === true)
|
||||||
|
$activeSheet->SetCellValue($letter_product_attribute_name.$i, $values['line']['product_attribute_name_base']);
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_ht.$i, (float)$wholesale_price );
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR );
|
||||||
|
|
||||||
|
if (isset($values['multi'])) {
|
||||||
|
$activeSheet->setCellValue($letter_product_multi.$i, $values['multi']);
|
||||||
|
}
|
||||||
|
if (isset($values['m1_m2'])) {
|
||||||
|
$activeSheet->setCellValue($letter_product_M1_M2.$i, $values['m1_m2']);
|
||||||
|
}
|
||||||
|
|
||||||
|
// colonnes vide
|
||||||
|
// $activeSheet->setCellValue($letter_product_colisage.$i, '');
|
||||||
|
// $activeSheet->setCellValue($letter_product_stock3btk.$i, '');
|
||||||
|
// $activeSheet->setCellValue($letter_product_missing.$i, '');
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_total_qty.$i, '='.$letter_product_M1_M2.$i.'+'.$letter_product_multi.$i.'+'.$letter_product_colisage.$i.'-'.$letter_product_stock3btk.$i.'-'.$letter_product_missing.$i);
|
||||||
|
$activeSheet->getStyle($letter_product_total.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR );
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
case '2':
|
case '2':
|
||||||
foreach($lines2 as $lines_attributes)
|
foreach($lines2 as $lines_attributes)
|
||||||
{
|
{
|
||||||
@ -807,126 +943,149 @@ if(Tools::getValue('action') == 'getOrderForm' && ( ( $id_category = Tools::getV
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$activeSheet->SetCellValue($firstColumn.$i, 'Total');
|
if ($type = 4) {
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getFont()->setBold(true);
|
|
||||||
|
|
||||||
$activeSheet->SetCellValue($letter_product_qty.$i, '=SUM('.$letter_product_qty.($iOri).':'.$letter_product_qty.($i-1).')');
|
$activeSheet->getColumnDimension($firstColumn)->setWidth(10);
|
||||||
$activeSheet->getStyle($letter_product_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
$activeSheet->getColumnDimension($letter_product_ref_interne)->setWidth(25);
|
||||||
$activeSheet->getStyle($letter_product_qty.$i)->getFont()->setBold(true);
|
$activeSheet->getColumnDimension($letter_product_name)->setWidth(40);
|
||||||
if ($type == 2) {
|
if ($have_declinaison === true) {
|
||||||
$activeSheet->getStyle($letter_product_qty.$i)->getFill()->applyFromArray(
|
$activeSheet->getColumnDimension($letter_product_attribute_name)->setWidth(20);
|
||||||
array(
|
}
|
||||||
'type' => PHPExcel_Style_Fill::FILL_SOLID,
|
$activeSheet->getColumnDimension($letter_product_ht)->setWidth(13);
|
||||||
'rotation' => 0,
|
$activeSheet->getColumnDimension($letter_product_multi)->setWidth(13);
|
||||||
'startcolor' => array(
|
$activeSheet->getColumnDimension($letter_product_M1_M2)->setWidth(13);
|
||||||
'rgb' => 'D9D9D9'
|
$activeSheet->getColumnDimension($letter_product_colisage)->setWidth(13);
|
||||||
),
|
$activeSheet->getColumnDimension($letter_product_stock3btk)->setWidth(13);
|
||||||
'endcolor' => array(
|
$activeSheet->getColumnDimension($letter_product_missing)->setWidth(13);
|
||||||
'argb' => 'D9D9D9D9'
|
|
||||||
)
|
|
||||||
)
|
|
||||||
);
|
|
||||||
$activeSheet->SetCellValue($letter_product_total_qty.$i, '=SUM('.$letter_product_total_qty.($iOri).':'.$letter_product_total_qty.($i-1).')');
|
|
||||||
$activeSheet->getStyle($letter_product_total_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
||||||
$activeSheet->getStyle($letter_product_total_qty.$i)->getFont()->setBold(true);
|
|
||||||
|
|
||||||
$activeSheet->SetCellValue($letter_product_remaining_qty.$i, '=SUM('.$letter_product_remaining_qty.($iOri).':'.$letter_product_remaining_qty.($i-1).')');
|
|
||||||
$activeSheet->getStyle($letter_product_remaining_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
||||||
$activeSheet->getStyle($letter_product_remaining_qty.$i)->getFont()->setBold(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
$activeSheet->getStyle($firstColumn.($iOri-1).':'.$lastColumn.$i)->applyFromArray($arrayBorder);
|
|
||||||
|
|
||||||
$i++;
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($letter_product_ht.$i, $lang['Total Amount']);
|
|
||||||
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
|
|
||||||
if($type == 1)
|
|
||||||
$activeSheet->getStyle($letter_product_ht.$i)->getFont()->setBold(true);
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($letter_product_total.$i, '=SUM('.$letter_product_total.($iOri).':'.$letter_product_total.($i-2).')');
|
|
||||||
$activeSheet->getStyle($letter_product_total.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR );
|
|
||||||
|
|
||||||
if($lang_id != 'en')
|
|
||||||
{
|
|
||||||
$i++;
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($letter_product_ht.$i, 'TVA '.$TVA);
|
|
||||||
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
|
|
||||||
if($type == 1)
|
|
||||||
$activeSheet->getStyle($letter_product_ht.$i)->getFont()->setBold(true);
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($letter_product_total.$i, '='.$letter_product_total.($i-1).'*'.($TVA/100) );
|
|
||||||
$activeSheet->getStyle($letter_product_total.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR );
|
|
||||||
|
|
||||||
$i++;
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($letter_product_ht.$i, 'TOTAL TTC');
|
|
||||||
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
|
|
||||||
$activeSheet->getStyle($letter_product_ht.$i)->getFont()->setBold(true);
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($letter_product_total.$i, '='.$letter_product_total.($i-1).'+'.$letter_product_total.($i-2) );
|
|
||||||
$activeSheet->getStyle($letter_product_total.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR );
|
|
||||||
$activeSheet->getStyle($letter_product_total.$i)->getFont()->setBold(true);
|
|
||||||
|
|
||||||
$activeSheet->getStyle($letter_product_ht.($i-3).':'.$lastColumn.$i)->applyFromArray($arrayBorder);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$activeSheet->getStyle($letter_product_ht.($i-1).':'.$lastColumn.$i)->applyFromArray($arrayBorder);
|
|
||||||
}
|
|
||||||
if($type == 1)
|
|
||||||
{
|
|
||||||
$value = Configuration::get('PS_IT_OF_BAS_PAGE_'.$lang_id);
|
|
||||||
if($value != '')
|
|
||||||
{
|
|
||||||
$i++;
|
|
||||||
$value = str_replace('<br />', ' ' , nl2br($value));
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($firstColumn.$i, $value);
|
|
||||||
$activeSheet->mergeCells($firstColumn.$i.':'.$lastColumn.$i );
|
|
||||||
$activeSheet->getRowDimension($i)->setRowHeight(80);
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_TEXT );
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setWrapText(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
$value = Configuration::get('PS_IT_OF_BAS_PAGE_BIS_'.$lang_id);
|
|
||||||
if($value != '')
|
|
||||||
{
|
|
||||||
$i++;
|
|
||||||
$value = str_replace('<br />', ' ' , nl2br($value));
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($firstColumn.$i, $value);
|
|
||||||
$activeSheet->mergeCells($firstColumn.$i.':'.$lastColumn.$i );
|
|
||||||
$activeSheet->getRowDimension($i)->setRowHeight(80);
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setWrapText(true);
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getFont()->getColor()->setRGB('FF0000');
|
|
||||||
$activeSheet->getStyle($firstColumn.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_TEXT );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$activeSheet->getColumnDimension($firstColumn)->setWidth(25);
|
|
||||||
$activeSheet->getColumnDimension($letter_product_ean)->setWidth(25);
|
|
||||||
$activeSheet->getColumnDimension($letter_product_ref_interne)->setWidth(25);
|
|
||||||
$activeSheet->getColumnDimension($letter_product_qty)->setWidth(18);
|
|
||||||
$activeSheet->getColumnDimension($letter_product_name)->setWidth(40);
|
|
||||||
if($have_declinaison === true)
|
|
||||||
$activeSheet->getColumnDimension($letter_product_attribute_name)->setWidth(20);
|
|
||||||
|
|
||||||
$activeSheet->getColumnDimension($letter_product_qty)->setWidth(13);
|
|
||||||
if ($type == 2) {
|
|
||||||
$activeSheet->getColumnDimension($letter_product_total_qty)->setWidth(13);
|
$activeSheet->getColumnDimension($letter_product_total_qty)->setWidth(13);
|
||||||
$activeSheet->getColumnDimension($letter_product_remaining_qty)->setWidth(13);
|
|
||||||
|
$i++;
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($firstColumn.$i, '');
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($firstColumn.$i, 'Total');
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getFont()->setBold(true);
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_qty.$i, '=SUM('.$letter_product_qty.($iOri).':'.$letter_product_qty.($i-1).')');
|
||||||
|
$activeSheet->getStyle($letter_product_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_qty.$i)->getFont()->setBold(true);
|
||||||
|
if ($type == 2) {
|
||||||
|
$activeSheet->getStyle($letter_product_qty.$i)->getFill()->applyFromArray(
|
||||||
|
array(
|
||||||
|
'type' => PHPExcel_Style_Fill::FILL_SOLID,
|
||||||
|
'rotation' => 0,
|
||||||
|
'startcolor' => array(
|
||||||
|
'rgb' => 'D9D9D9'
|
||||||
|
),
|
||||||
|
'endcolor' => array(
|
||||||
|
'argb' => 'D9D9D9D9'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
$activeSheet->SetCellValue($letter_product_total_qty.$i, '=SUM('.$letter_product_total_qty.($iOri).':'.$letter_product_total_qty.($i-1).')');
|
||||||
|
$activeSheet->getStyle($letter_product_total_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_total_qty.$i)->getFont()->setBold(true);
|
||||||
|
|
||||||
|
$activeSheet->SetCellValue($letter_product_remaining_qty.$i, '=SUM('.$letter_product_remaining_qty.($iOri).':'.$letter_product_remaining_qty.($i-1).')');
|
||||||
|
$activeSheet->getStyle($letter_product_remaining_qty.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
||||||
|
$activeSheet->getStyle($letter_product_remaining_qty.$i)->getFont()->setBold(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
$activeSheet->getStyle($firstColumn.($iOri-1).':'.$lastColumn.$i)->applyFromArray($arrayBorder);
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_ht.$i, $lang['Total Amount']);
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
|
||||||
|
if($type == 1)
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getFont()->setBold(true);
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_total.$i, '=SUM('.$letter_product_total.($iOri).':'.$letter_product_total.($i-2).')');
|
||||||
|
$activeSheet->getStyle($letter_product_total.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR );
|
||||||
|
|
||||||
|
if($lang_id != 'en')
|
||||||
|
{
|
||||||
|
$i++;
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_ht.$i, 'TVA '.$TVA);
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
|
||||||
|
if($type == 1)
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getFont()->setBold(true);
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_total.$i, '='.$letter_product_total.($i-1).'*'.($TVA/100) );
|
||||||
|
$activeSheet->getStyle($letter_product_total.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR );
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_ht.$i, 'TOTAL TTC');
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
|
||||||
|
$activeSheet->getStyle($letter_product_ht.$i)->getFont()->setBold(true);
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($letter_product_total.$i, '='.$letter_product_total.($i-1).'+'.$letter_product_total.($i-2) );
|
||||||
|
$activeSheet->getStyle($letter_product_total.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR );
|
||||||
|
$activeSheet->getStyle($letter_product_total.$i)->getFont()->setBold(true);
|
||||||
|
|
||||||
|
$activeSheet->getStyle($letter_product_ht.($i-3).':'.$lastColumn.$i)->applyFromArray($arrayBorder);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$activeSheet->getStyle($letter_product_ht.($i-1).':'.$lastColumn.$i)->applyFromArray($arrayBorder);
|
||||||
|
}
|
||||||
|
if($type == 1)
|
||||||
|
{
|
||||||
|
$value = Configuration::get('PS_IT_OF_BAS_PAGE_'.$lang_id);
|
||||||
|
if($value != '')
|
||||||
|
{
|
||||||
|
$i++;
|
||||||
|
$value = str_replace('<br />', ' ' , nl2br($value));
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($firstColumn.$i, $value);
|
||||||
|
$activeSheet->mergeCells($firstColumn.$i.':'.$lastColumn.$i );
|
||||||
|
$activeSheet->getRowDimension($i)->setRowHeight(80);
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_TEXT );
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setWrapText(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
$value = Configuration::get('PS_IT_OF_BAS_PAGE_BIS_'.$lang_id);
|
||||||
|
if($value != '')
|
||||||
|
{
|
||||||
|
$i++;
|
||||||
|
$value = str_replace('<br />', ' ' , nl2br($value));
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($firstColumn.$i, $value);
|
||||||
|
$activeSheet->mergeCells($firstColumn.$i.':'.$lastColumn.$i );
|
||||||
|
$activeSheet->getRowDimension($i)->setRowHeight(80);
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getAlignment()->setWrapText(true);
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getFont()->getColor()->setRGB('FF0000');
|
||||||
|
$activeSheet->getStyle($firstColumn.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_TEXT );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$activeSheet->getColumnDimension($firstColumn)->setWidth(25);
|
||||||
|
$activeSheet->getColumnDimension($letter_product_ean)->setWidth(25);
|
||||||
|
$activeSheet->getColumnDimension($letter_product_ref_interne)->setWidth(25);
|
||||||
|
$activeSheet->getColumnDimension($letter_product_qty)->setWidth(18);
|
||||||
|
$activeSheet->getColumnDimension($letter_product_name)->setWidth(40);
|
||||||
|
if($have_declinaison === true)
|
||||||
|
$activeSheet->getColumnDimension($letter_product_attribute_name)->setWidth(20);
|
||||||
|
|
||||||
|
$activeSheet->getColumnDimension($letter_product_qty)->setWidth(13);
|
||||||
|
if ($type == 2) {
|
||||||
|
$activeSheet->getColumnDimension($letter_product_total_qty)->setWidth(13);
|
||||||
|
$activeSheet->getColumnDimension($letter_product_remaining_qty)->setWidth(13);
|
||||||
|
}
|
||||||
|
$activeSheet->getColumnDimension($letter_product_ht)->setWidth(13);
|
||||||
|
$activeSheet->getColumnDimension($letter_product_total)->setWidth(13);
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
|
||||||
|
$activeSheet->setCellValue($firstColumn.$i, '');
|
||||||
}
|
}
|
||||||
$activeSheet->getColumnDimension($letter_product_ht)->setWidth(13);
|
|
||||||
$activeSheet->getColumnDimension($letter_product_total)->setWidth(13);
|
|
||||||
|
|
||||||
$i++;
|
|
||||||
|
|
||||||
$activeSheet->setCellValue($firstColumn.$i, '');
|
|
||||||
|
|
||||||
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
|
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
|
||||||
header('Content-Disposition: attachment;filename="'.$title.'.xlsx"');
|
header('Content-Disposition: attachment;filename="'.$title.'.xlsx"');
|
||||||
|
Loading…
Reference in New Issue
Block a user