]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
fix part 019
authorAlexander Smirnov <fredeom@mail.ru>
Wed, 22 May 2024 10:47:31 +0000 (13:47 +0300)
committerAlexander Smirnov <fredeom@mail.ru>
Wed, 22 May 2024 10:47:31 +0000 (13:47 +0300)
60 files changed:
erp24/modul/shipment/fields/auto_purchase_formula.php
erp24/modul/shipment/fields/auto_purchase_formula_all.php
erp24/modul/shipment/fields/cost_price_auto.php
erp24/modul/shipment/fields/cost_price_summ.php
erp24/modul/shipment/fields/delta_sales4week_supplier.php
erp24/modul/shipment/fields/delta_sales7_and_supplier.php
erp24/modul/shipment/fields/delta_zakup.php
erp24/modul/shipment/fields/division_auto.php
erp24/modul/shipment/fields/division_auto_all.php
erp24/modul/shipment/fields/division_auto_need.php
erp24/modul/shipment/fields/division_auto_need_all.php
erp24/modul/shipment/fields/division_hand.php
erp24/modul/shipment/fields/division_price_summ.php
erp24/modul/shipment/fields/division_ratio.php
erp24/modul/shipment/fields/division_store.php
erp24/modul/shipment/fields/division_store_hand.php
erp24/modul/shipment/fields/division_store_ratio.php
erp24/modul/shipment/fields/division_store_summ.php
erp24/modul/shipment/fields/division_summ.php
erp24/modul/shipment/fields/division_summ_all.php
erp24/modul/shipment/fields/entrance_cnt_7days.php
erp24/modul/shipment/fields/goods_in_transit.php
erp24/modul/shipment/fields/min_lot.php
erp24/modul/shipment/fields/min_order.php
erp24/modul/shipment/fields/order_supplier_sum.php
erp24/modul/shipment/fields/price_zakup_summ.php
erp24/modul/shipment/fields/purchase_fact_difference.php
erp24/modul/shipment/fields/purchase_logistic.php
erp24/modul/shipment/fields/purchase_price.php
erp24/modul/shipment/fields/purchase_price_zakup.php
erp24/modul/shipment/fields/purchase_summ.php
erp24/modul/shipment/fields/quantity.php
erp24/modul/shipment/fields/quantity_fact.php
erp24/modul/shipment/fields/quantity_rejection.php
erp24/modul/shipment/fields/quantity_rejection_delta.php
erp24/modul/shipment/fields/quantity_storage.php
erp24/modul/shipment/fields/quantity_warehouseman_fact.php
erp24/modul/shipment/fields/quantity_warehouseman_fact_defective_related.php
erp24/modul/shipment/fields/quantity_warehouseman_fact_related.php
erp24/modul/shipment/fields/quantity_warehouseman_fact_summ.php
erp24/modul/shipment/fields/quantity_zakup_fact.php
erp24/modul/shipment/fields/quantity_zakup_fact_sum.php
erp24/modul/shipment/fields/quantity_zakup_fact_summ.php
erp24/modul/shipment/fields/quantity_zakup_new.php
erp24/modul/shipment/fields/sales_4weeks_cnt.php
erp24/modul/shipment/fields/sales_7day_amount_division.php
erp24/modul/shipment/fields/sales_7day_division.php
erp24/modul/shipment/fields/sales_amount.php
erp24/modul/shipment/fields/sales_cnt.php
erp24/modul/shipment/fields/sales_division_4weeks_cnt_avg.php
erp24/modul/shipment/fields/scheduled_delivery_cnt.php
erp24/modul/shipment/fields/score.php
erp24/modul/shipment/fields/storehouse_balance.php
erp24/modul/shipment/fields/storehouse_balance_store.php
erp24/modul/shipment/fields/write_downs.php
erp24/modul/shipment/fields/write_offs_4week_cnt_avg.php
erp24/modul/shipment/fields/write_offs_4week_sum.php
erp24/modul/shipment/fields/write_offs_comments.php
erp24/modul/shipment/fields/write_offs_division.php
erp24/modul/shipment/fields/write_offs_sum.php

index 22a1d529ae13cde7f721c2b04d8982db4540a603..febebf0df3db820d6b50e5644aed4229e4b90301 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-global $orderId, $products, $orderStoresArrayRelation, $storesOrderArray;
+global $orderId, $products, $orderStoresArrayRelation, $storesOrderArray, $data_up;
 
 // округляет до определенного числа
 function ceilCoef($number, $rate = 1)
index e00aaf2390842928fe217c498c622c6181e4aff6..237f9418992054d60a908d8c34680f7017c1008a 100644 (file)
@@ -1,9 +1,13 @@
-<?
+<?php
 
-  $data=$db::getRows("SELECT product_id,sum(value) as value FROM store_orders_fields_data WHERE 
+global $orderId, $orderStoresArrayRelation_in, $data_up;
+
+  $sql = "SELECT product_id,sum(value) as value FROM store_orders_fields_data WHERE 
   field_name='auto_purchase_formula' AND value>0
   AND store_id $orderStoresArrayRelation_in
-  AND order_id='$orderId' AND color='' AND store_id!='' group by product_id");
-     foreach($data as $row) {
-       $data_up[$row["product_id"]][0][0] +=(int)$row["value"];
-     }  
+  AND order_id='$orderId' AND color='' AND store_id!='' group by product_id";
+//    var_dump($sql); die;
+    $data=$db::getRows($sql);
+    foreach($data as $row) {
+        $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
+    }
index 1ee7d22ce5d7014e378b4840de7f904182c578c8..a93bf91738942235698d5ef9954f050ffa094c8b 100644 (file)
@@ -1,10 +1,15 @@
- <?
- $data=$db::getRows("SELECT sum(value) as value,color FROM store_orders_fields_data WHERE 
+ <?php
+
+ global $orderId, $orderStoresArrayRelation_in, $data_up;
+
+ $sql = "SELECT sum(value) as value,color FROM store_orders_fields_data WHERE 
   field_name='purchase_logistic' AND value>0
   AND store_id $orderStoresArrayRelation_in
-  AND order_id='$orderId'  AND store_id=''  group by color");
-     foreach($data as $row) {
+  AND order_id='$orderId'  AND store_id=''  group by color";
+//    var_dump($sql); die;
+    $data=$db::getRows($sql);
+    foreach($data as $row) {
         if(empty($row["color"])) $row["color"]=0;
-        $data_up[0][0][$row["color"]] +=(int)$row["value"];        
+        $data_up[0][0][$row["color"]] +=(int)$row["value"];
         $data_up[0][0][0] +=(int)$row["value"];
-     }  
\ No newline at end of file
+    }
\ No newline at end of file
index 1a5f301bbf2c81435d4346b3f5f01c8531031957..b8d9a01fd00cf3f42f0d3148b8c0a823a548ac45 100644 (file)
@@ -1,42 +1,44 @@
-<?
+<?php
+
+global $orderId, $data_up, $productsColorsArray, $products, $FiledsDataArray;
+
 // считаем сумму в долларах куплено по факту
- $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT  product_id, value, if(color='',0,color) as color
+$FiledsDataArray=[];
+$sql = "SELECT  product_id, value, if(color='',0,color) as color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id=''
 AND field_name IN ('quantity_zakup_fact')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
   $FiledsDataArray["quantity_zakup_fact"][$row["product_id"]][0][$row["color"]] += (int)$row["value"];
 }
 
-$dataF=$db::getRows("SELECT   product_id, value, if(color='',0,color) as color
+$sql = "SELECT   product_id, value, if(color='',0,color) as color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id=''
 AND field_name IN ('cost_price')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql,[$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray["cost_price"][$row["product_id"]][0][$row["color"]] = round($row["value"],2);
+    $FiledsDataArray["cost_price"][$row["product_id"]][0][$row["color"]] = round($row["value"],2);
 }
 
 
 
  //пробегаемся по всем продуктам 
 foreach($products as $productId => $name) {
-    
-         $s = $FiledsDataArray["cost_price"][$productId][0][0] * $FiledsDataArray["quantity_zakup_fact"][$productId][0][0];
-         $data_up[$productId][0][0] =$s ;     
-    
-        foreach($productsColorsArray[$productId] as $color) {
-         $color=trim($color);    
-         $s = $FiledsDataArray["quantity_zakup_fact"][$productId][0][$color] * $FiledsDataArray["cost_price"][$productId][0][$color];
-         $data_up[$productId][0][$color] +=$s ; 
-        }
-        
-        
-
+    $s = ($FiledsDataArray["cost_price"][$productId][0][0] ?? 0) * ($FiledsDataArray["quantity_zakup_fact"][$productId][0][0] ?? 0);
+    $data_up[$productId][0][0] = $s;
+    foreach($productsColorsArray[$productId] as $color) {
+        $color=trim($color);
+        $s = ($FiledsDataArray["quantity_zakup_fact"][$productId][0][$color] ?? 0) * ($FiledsDataArray["cost_price"][$productId][0][$color] ?? 0);
+        $data_up[$productId][0][$color] = ($data_up[$productId][0][$color] ?? 0) + $s ;
+    }
 }
  
 
index 213c9520f2564db446b47434699bd094561b6448..25cb0090e239111bcf5ae99f603aabc8f6ddf449 100644 (file)
@@ -3,34 +3,28 @@
 global $orderId, $data_up, $prices;
 
 $data_sales4week_summ=[];
-  $data=$db::getRows("SELECT product_id, store_id,
+$sql = "SELECT product_id, store_id,
   sum(CASE WHEN field_name='quantity_zakup_new' THEN value ELSE 0 END) as quantity_zakup_new,
     sum(CASE WHEN field_name='sales_4weeks_cnt' THEN value ELSE 0 END) as sales_4weeks_cnt
     FROM store_orders_fields_data WHERE field_name in('quantity_zakup_new','sales_4weeks_cnt') AND value>0
-  AND order_id='$orderId' AND color='' AND store_id!='' group by product_id,store_id");
-     foreach($data as $row) {
-      if($row["sales_4weeks_cnt"]>0) { 
-          
-          $delta=$row["quantity_zakup_new"]-$row["sales_4weeks_cnt"];
-          $data_up[$row["product_id"]][$row["store_id"]][0] +=$delta;
-          $data_up[$row["product_id"]][0][0] +=$delta;   
-          
-          
-          $delta_percent=round(($row["quantity_zakup_new"]/$row["sales_4weeks_cnt"])*100);
-          $data_up[$row["product_id"]][$row["store_id"]][0] +=$delta_percent;
-        
-          
-          
-          
-          if($row["sales_4weeks_cnt"]){
-          $data_sales4week_summ_val=ceil($row["sales_4weeks_cnt"]*$prices[$row["product_id"]]);
-          $data_sales4week_summ[$row["product_id"]][$row["store_id"]][0] +=$data_sales4week_summ_val;    
-          $data_sales4week_summ[$row["product_id"]][NULL][0] +=$data_sales4week_summ_val;             
-            
-          //  echo"<br> ".$row["product_id"]." = ".$row["sales_4weeks_cnt"]."  * ".$prices[$row["product_id"]]." = $data_sales4week_summ_val";
-            }
-        }
-          
-  }  
+  AND order_id='$orderId' AND color='' AND store_id!='' group by product_id,store_id";
+//var_dump($sql); die;
+$data=$db::getRows($sql);
+foreach($data as $row) {
+    if($row["sales_4weeks_cnt"]>0) {
+        $delta = ($row["quantity_zakup_new"] ?? 0) - ($row["sales_4weeks_cnt"] ?? 0);
+        $data_up[$row["product_id"]][$row["store_id"]][0] = ($data_up[$row["product_id"]][$row["store_id"]][0] ?? 0) + $delta;
+        $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + $delta;
+        $delta_percent = $row["sales_4weeks_cnt"] > 0 ? round(($row["quantity_zakup_new"]/$row["sales_4weeks_cnt"])*100) : 0;
+        $data_up[$row["product_id"]][$row["store_id"]][0] = ($data_up[$row["product_id"]][$row["store_id"]][0] ?? 0) + $delta_percent;
+
+        $data_sales4week_summ_val = ceil(($row["sales_4weeks_cnt"] ?? 0) * ($prices[$row["product_id"]] ?? 0));
+        $data_sales4week_summ[$row["product_id"]][$row["store_id"]][0] =
+            ($data_sales4week_summ[$row["product_id"]][$row["store_id"]][0] ?? 0) + $data_sales4week_summ_val;
+        $data_sales4week_summ[$row["product_id"]][NULL][0] = ($data_sales4week_summ[$row["product_id"]][NULL][0] ?? 0) + $data_sales4week_summ_val;
+
+        //  echo"<br> ".$row["product_id"]." = ".$row["sales_4weeks_cnt"]."  * ".$prices[$row["product_id"]]." = $data_sales4week_summ_val";
+    }
+}
 insert_store_orders_fields($data_up,"delta_sales4week_supplier_percent");  
 insert_store_orders_fields($data_sales4week_summ,"sales_4weeks_sum");  
index a4e18a24d742664d0c474ea6c7eebd3cee783b34..029ec741ba3e490c358e2ee46f7a31f94d8e5391 100644 (file)
@@ -7,7 +7,7 @@ global $orderId, $data_up;
     sum(CASE WHEN field_name='sales_cnt' THEN value ELSE 0 END) as sales_cnt
     FROM store_orders_fields_data WHERE field_name in('quantity_zakup_new','sales_cnt') AND value>0
   AND order_id='$orderId' AND color='' AND store_id!='' group by product_id,store_id";
-
+//var_dump($sql); die;
     $data=$db::getRows($sql);
 
     foreach($data as $row) {
index 5108004bf207480dd8e7d1ba8b41969df86719ef..564c5f0a89d028c1a439336d4bc928b6b076d800 100644 (file)
@@ -1,19 +1,23 @@
-<?
+<?php
+
+global $orderId, $data_up, $FiledsDataArray, $products;
 
 $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value
+$sql = "SELECT field_name, product_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND color=''
 AND store_id='',
 AND field_name IN ('quantity_zakup_fact','quantity_zakup')
-AND value!=0",[$orderId]);
-foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]]=(int)$row["value"];
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql,[$orderId]);
+foreach($dataF as $row) {
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]] = (int)$row["value"];
 }
- //пробегаемся по всем продуктам 
-foreach($products as $productId => $name) {
-   $data_up[$productId][0][0]= round($FiledsDataArray["quantity_zakup_fact"][$productId] / $FiledsDataArray["quantity_zakup"][$productId],2);
 
+//пробегаемся по всем продуктам
+foreach($products as $productId => $name) {
+    $data_up[$productId][0][0] = ($FiledsDataArray["quantity_zakup"][$productId] ?? 0) > 0 ? round(($FiledsDataArray["quantity_zakup_fact"][$productId] ?? 0) / $FiledsDataArray["quantity_zakup"][$productId],2) : 0;
 }
  
index 3ddedc4c7c28736209810982e0fc1c1d1bebd340..0d0b8257855d786848e2581abe923ddf7ac034e4 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-global $whereInProductsId, $orderStoresArrayRelation_in, $orderId, $products, $orderStoresArrayRelation;
+global $whereInProductsId, $orderStoresArrayRelation_in, $orderId, $products, $orderStoresArrayRelation, $data_up, $FiledsDataArray;
 
 // округляет до определенного числа
 function ceilCoef($number, $rate = 1)
@@ -16,13 +16,17 @@ function ceilCoef($number, $rate = 1)
 //echo"<br>division_auto $whereInProductsId";
 
 $min_lot=[];
-$data=$db::getRows("SELECT id,min_lot FROM products_1c_options WHERE id $whereInProductsId");
-foreach($data as $row)  $min_lot[$row["id"]]=$row["min_lot"]; 
+$sql = "SELECT id,min_lot FROM products_1c_options WHERE id $whereInProductsId";
+//var_dump($sql); die;
+$data=$db::getRows($sql);
+foreach($data as $row) {
+    $min_lot[$row["id"]] = $row["min_lot"];
+}
 
 
 
 $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value
+$sql = "SELECT field_name, product_id, store_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
@@ -30,42 +34,40 @@ AND field_name IN ('division_auto_need')
  AND value!=0
  AND color=''
  AND store_id!=''
-",[$orderId]);
+";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]]=(int)$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]] = (int)$row["value"];
 }
 
 
-$dataF=$db::getRows("SELECT field_name, product_id, value
+$sql = "SELECT field_name, product_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND field_name IN ( 'division_ratio')
 AND store_id='' AND color=''
-AND value!='0'",[$orderId]);
+AND value!='0'";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]]=$row["value"];
-  
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]] = $row["value"];
 }
 
-
-
 //пробегаемся по всем продуктам 
 foreach($products as $productId => $name) {
-  //    echo"<br> <h2>$name</h2>";
-  foreach($orderStoresArrayRelation as $storeId ) {  
-      
-    $division_ratio=$FiledsDataArray["division_ratio"][$productId] ?? 0;
-    if(empty($division_ratio)) $division_ratio=1;
-        $d=($FiledsDataArray["division_auto_need"][$productId][$storeId] ?? 0) * $division_ratio;
-        $data_up[$productId][$storeId][0]=ceilCoef($d,$min_lot[$productId]);
-        
-        
- //   echo"<br>$name  division_auto_need=".$FiledsDataArray["division_auto_need"][$productId][$storeId]."   * division_ratio=".$division_ratio." d=$d min_lot=".$min_lot[$productId]."  ";
-  }
- // $data_up[$productId][0][0] +=$FiledsData["division_auto"][$productId][0][0]; 
-  
-
+    //    echo"<br> <h2>$name</h2>";
+    foreach($orderStoresArrayRelation as $storeId ) {
+        $division_ratio = $FiledsDataArray["division_ratio"][$productId] ?? 0;
+        if(empty($division_ratio)) {
+            $division_ratio=1;
+        }
+        $d = ($FiledsDataArray["division_auto_need"][$productId][$storeId] ?? 0) * $division_ratio;
+        $data_up[$productId][$storeId][0] = ceilCoef($d,$min_lot[$productId]);
+        //   echo"<br>$name  division_auto_need=".$FiledsDataArray["division_auto_need"][$productId][$storeId]."   * division_ratio=".$division_ratio." d=$d min_lot=".$min_lot[$productId]."  ";
+    }
+    // $data_up[$productId][0][0] +=$FiledsData["division_auto"][$productId][0][0];
 }
 
 
index 1092e4853c116a24f228a60b3830ccbf1fbb8f85..2d77af6ba4dd3131af2479551b432e2cdb49f5b0 100644 (file)
@@ -2,17 +2,17 @@
 
 global $orderId, $orderStoresArrayRelation_in, $data_up;
 
-  $sql = "SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
+$sql = "SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
   field_name='division_auto' AND value>0
   AND store_id $orderStoresArrayRelation_in
   AND order_id='$orderId'  AND store_id!='' group by product_id, color";
-//    var_dump($sql); die;
-    $data=$db::getRows($sql);
+//var_dump($sql); die;
+$data = $db::getRows($sql);
 
-    foreach($data as $row) {
-        if(empty($row["color"]))  {
-            $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
-        } else {
-            $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
-        }
+foreach($data as $row) {
+    if(empty($row["color"]))  {
+        $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
+    } else {
+        $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
     }
+}
index 3ea04437564285cd5a53decb9b7f0a9b778a1f6a..cc597be4b5c2468e03fb5c2fd6d17bb2a99b5b66 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-global $orderId, $orderStoresArrayRelation, $products, $storesOrderArray;
+global $orderId, $orderStoresArrayRelation, $products, $storesOrderArray, $data_up, $FiledsDataArray;
 
 echo"<h1>division_auto_need</h1>";
 
@@ -13,59 +13,66 @@ function roundCoefficientLot($number, $rate = 1)
 }
 
 
-$FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value
+$FiledsDataArray = [];
+$sql = "SELECT field_name, product_id, store_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? AND color=''
 AND field_name IN ('entrance_cnt_7days','sales_cnt','quantity','quantity_fact','min_lot','min_order')
-",[$orderId]);
+";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]]=(int)$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]] = (int)$row["value"];
 }
 
 //print_r($FiledsData);
 $storesArray[0]="Всего";
 foreach($products as $product_id => $name) {
-     $min_order  = $FiledsDataArray["min_order"][$product_id][""] ?? 0;
-     $min_lot=$FiledsDataArray["min_lot"][$product_id][""] ?? 0;
-     echo"<div>
-     <h6 class=\"fs-3\">$name</h6>  формула = продажи_7_дней + запас_на_2дня + полнограмма - продажи_7дней
-     <b> минимальный заказ $min_order шт., квант (мин. лот деления) = $min_lot</b> ";
+    $min_order = $FiledsDataArray["min_order"][$product_id][""] ?? 0;
+    $min_lot = $FiledsDataArray["min_lot"][$product_id][""] ?? 0;
+    echo"<div>
+    <h6 class=\"fs-3\">$name</h6>  формула = продажи_7_дней + запас_на_2дня + полнограмма - продажи_7дней
+    <b> минимальный заказ $min_order шт., квант (мин. лот деления) = $min_lot</b> ";
 
-     if(empty($min_lot)) $min_lot=1;
- echo"<div class=\"table-responsive\"><table class=\"table table2 table-sm table-bordered table-hover table-striped\">
+    if (empty($min_lot)) {
+     $min_lot=1;
+    }
+    echo"<div class=\"table-responsive\"><table class=\"table table2 table-sm table-bordered table-hover table-striped\">
  <thead class=\"table-light\"><tr><td>магазин</td><td>продажи 7 дней</td> <td>запас 2 дня</td>
  <td>полнограмма</td> <td>потребность</td></tr></thead><tbody>";
-  foreach($orderStoresArrayRelation as $storeId) {  
-    $sale_7day = $FiledsDataArray["sales_cnt"][$product_id][$storeId] ?? 0;
-   $quantity = $FiledsDataArray["quantity"][$product_id][$storeId] ?? 0;
-   $quantity_fact =$FiledsDataArray["quantity_fact"][$product_id][$storeId] ?? 0;
-  // считаем запас на 2 дня
-   $sale_2day=ceil(2*($sale_7day/7));
-    // если факт продаж будет больше чем факт - перприсваеиваем
-      if(($quantity_fact-$sale_7day)>0) {
-       $saleweek1=$quantity_fact-$sale_7day ; 
-       $zakaz= $sale_7day + $sale_2day +  $quantity - $saleweek1;       
-       }
-      else  $zakaz= $sale_7day + $sale_2day +  $quantity ;    
+    foreach($orderStoresArrayRelation as $storeId) {
+        $sale_7day = $FiledsDataArray["sales_cnt"][$product_id][$storeId] ?? 0;
+        $quantity = $FiledsDataArray["quantity"][$product_id][$storeId] ?? 0;
+        $quantity_fact =$FiledsDataArray["quantity_fact"][$product_id][$storeId] ?? 0;
+        // считаем запас на 2 дня
+        $sale_2day=ceil(2*($sale_7day/7));
+        // если факт продаж будет больше чем факт - перприсваеиваем
+        if (($quantity_fact-$sale_7day)>0) {
+            $saleweek1=$quantity_fact-$sale_7day ;
+            $zakaz= $sale_7day + $sale_2day + $quantity - $saleweek1;
+        } else {
+            $zakaz= $sale_7day + $sale_2day + $quantity ;
+        }
 
-     $zakaz=roundCoefficientLot($zakaz, $min_lot);
-     if($zakaz<0) $zakaz=0;
-     if(empty($sale_2day)) $sale_2day="";
-     if(empty($sale_7day)) $sale_7day="";
-     if(empty($zakaz)) $zakaz=$quantity;
-     
+        $zakaz=roundCoefficientLot($zakaz, $min_lot);
+        if($zakaz<0) $zakaz=0;
+        if(empty($sale_2day)) $sale_2day="";
+        if(empty($sale_7day)) $sale_7day="";
+        if(empty($zakaz)) $zakaz=$quantity;
 
-       $data_up[$product_id][$storeId][0] =$zakaz;
-       $data_up[$product_id][0][0] = ($data_up[$product_id][0][0] ?? 0) + $zakaz;
 
-// формула = продажи_7_дней + запас_на_2дня + полнограмма - продажи_7дней
-     echo"<tr><td>".($storesOrderArray[$storeId]??'')."</td><td>$sale_7day</td>
-     <td>$sale_2day</td><td>$quantity</td><td>";
-     if(!empty($zakaz)) echo"<span class=\"btn btn-sm btn-wating\">$zakaz</span>";
-   
-     echo'</td></tr>';    
-   }
- echo'</tbody></table></div></div>';       
+        $data_up[$product_id][$storeId][0] = $zakaz;
+        $data_up[$product_id][0][0] = ($data_up[$product_id][0][0] ?? 0) + $zakaz;
+
+        // формула = продажи_7_дней + запас_на_2дня + полнограмма - продажи_7дней
+        echo"<tr><td>".($storesOrderArray[$storeId]??'')."</td><td>$sale_7day</td>
+        <td>$sale_2day</td><td>$quantity</td><td>";
+        if(!empty($zakaz)) {
+            echo"<span class=\"btn btn-sm btn-wating\">$zakaz</span>";
+        }
+
+        echo'</td></tr>';
+    }
+    echo'</tbody></table></div></div>';
 }
 
index cfbb915c3ad5ee63b00be541774eb88286a39436..a0c61c56df859046dd63f87fc3ded125feaa73c6 100644 (file)
@@ -2,16 +2,16 @@
 
 global $orderId, $orderStoresArrayRelation_in, $data_up;
 
-  $sql = "SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
+$sql = "SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
   field_name='division_auto_need' AND value>0
   AND store_id $orderStoresArrayRelation_in
   AND order_id='$orderId'  AND store_id!='' group by product_id, color";
 //  var_dump($sql); die;
-  $data=$db::getRows($sql);
-    foreach($data as $row) {
-       if (empty($row["color"]))  {
-            $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
-       } else {
-            $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
-       }
+$data = $db::getRows($sql);
+foreach($data as $row) {
+    if (empty($row["color"]))  {
+        $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
+    } else {
+        $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
     }
+}
index d9de13714c131f2ae7f1a76bea9d6ca65557cb5c..c3e46d40b8790399552dc33752d364be31f83dfa 100644 (file)
@@ -1,11 +1,17 @@
 <?php
 
-  $data=$db::getRows("SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
+global $orderId, $orderStoresArrayRelation_in, $data_up;
+
+$sql = "SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
   field_name='division_hand' AND value>0
   AND store_id $orderStoresArrayRelation_in
-  AND order_id='$orderId'  AND store_id!=''  group by product_id, store_id,color");
-     foreach($data as $row) {
-        if(empty($row["color"])) $row["color"]=0;
-        $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
-        $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
-     }  
\ No newline at end of file
+  AND order_id='$orderId'  AND store_id!=''  group by product_id, store_id,color";
+//var_dump($sql); die;
+$data=$db::getRows($sql);
+foreach($data as $row) {
+    if(empty($row["color"])) {
+        $row["color"] = 0;
+    }
+    $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
+    $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
+}
\ No newline at end of file
index 331b2416b87f65397d537fce8fa83fe146bbfaeb..35e846f0ad61c5863dc072b5a270250731537cad 100644 (file)
@@ -4,45 +4,41 @@ global $orderId, $orderStoresArrayRelation_in, $products, $orderStoresArrayRelat
 
 $prices=[];
 
-$dataF=$db::getRows("SELECT  product_id, value
+$sql = "SELECT  product_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND color=''
 AND store_id=''
 AND field_name IN ('purchase_price')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $prices[$row["product_id"]]=$row["value"];
+    $prices[$row["product_id"]] = $row["value"];
 }
 
 
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value
+$sql = "SELECT field_name, product_id, store_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND color=''
 AND store_id!=''
 AND field_name IN ('division_summ')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]]=$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]] = $row["value"];
 }
 
-
-
-
-
-
-
 $data_up = $data_up ?? [];
 //пробегаемся по всем продуктам 
 foreach($products as $productId => $name) {
-      foreach($orderStoresArrayRelation ?? [] as $storeId ) {
-
+    foreach($orderStoresArrayRelation ?? [] as $storeId ) {
         $division_summ = $FiledsDataArray["division_summ"][$productId][$storeId] ?? 0;
-
         $s=round($prices[$productId] * $division_summ);
         $data_up[$productId][0][0] = ($data_up[$productId][0][0] ?? 0) + $s;
         $data_up[$productId][$storeId][0] = $s;
-      }
+    }
 }
\ No newline at end of file
index 8d59ed6defe9d8df35952a2c01c7de32caaf14f1..f1f193be1326b10427b1baa5f2155d43c371138b 100644 (file)
@@ -1,52 +1,52 @@
 <?php
 
-global $orderId, $products, $productsColorsArray;
+global $orderId, $products, $productsColorsArray, $FiledsDataArray;
 
 $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value,color
+$sql = "SELECT field_name, product_id, store_id, value,color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id=''
 AND field_name IN ('division_auto_need_all','quantity_warehouseman_fact')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  if(empty($row["color"])) $row["color"]=0; 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]]=(int)$row["value"];
+    if (empty($row["color"])) {
+        $row["color"]=0;
+    }
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]] = (int)$row["value"];
 }
 
 //пробегаемся по всем продуктам 
 foreach($products as $productId => $name) {
$division_auto_need_all=$FiledsDataArray["division_auto_need_all"][$productId][0];
$quantity_warehouseman_fact=$FiledsDataArray["quantity_warehouseman_fact"][$productId][0];
   $division_auto_need_all = $FiledsDataArray["division_auto_need_all"][$productId][0] ?? 0;
   $quantity_warehouseman_fact = $FiledsDataArray["quantity_warehouseman_fact"][$productId][0] ?? 0;
 
 
-$html .="<br><b>$name</b>  division_auto_need_all=".$FiledsDataArray["division_auto_need_all"][$productId][0]."
+    $html .="<br><b>$name</b>  division_auto_need_all=". ($FiledsDataArray["division_auto_need_all"][$productId][0] ?? 0)."
 Сумма потребности =".$division_auto_need_all."
 Сумма получаено по факту  ".$quantity_warehouseman_fact."";  
 
-$division_ratio=1;
-if($division_auto_need_all > $quantity_warehouseman_fact) { 
-$division_ratio=round($quantity_warehouseman_fact/$division_auto_need_all,2);    
-    
-$html .="<font color=red>-меньше!</font>";
-$html .=" применяем коэффициент $division_ratio = ".($FiledsDataArray["division_ratio"][$productId][0] ?? '')." ";
-    
-}
- $data_up[$productId][0][0] =$division_ratio;
+    $division_ratio=1;
+    if($division_auto_need_all > $quantity_warehouseman_fact) {
+        $division_ratio = $division_auto_need_all > 0 ? round($quantity_warehouseman_fact/$division_auto_need_all,2) : 0;
+        $html .="<font color=red>-меньше!</font>";
+        $html .=" применяем коэффициент $division_ratio = ".($FiledsDataArray["division_ratio"][$productId][0] ?? '')." ";
+    }
+    $data_up[$productId][0][0] = $division_ratio;
  
  
-        foreach($productsColorsArray[$productId] ?? [] as $color) {
-         $color=trim($color);  
-           $division_ratio=1;
-           if($FiledsDataArray["division_auto_need_all"][$productId][$color] > $FiledsDataArray["quantity_warehouseman_fact"][$productId][$color]) { 
-              $division_ratio=round($FiledsDataArray["quantity_warehouseman_fact"][$productId][$color]/$FiledsDataArray["division_auto_need_all"][$productId][$color],2);    
-          }
-          $data_up[$productId][0][$color] =$division_ratio ; 
-      }
-
-$html .="<font color=red>коэффициент $division_ratio</font>";
-
+    foreach($productsColorsArray[$productId] ?? [] as $color) {
+        $color = trim($color);
+        $division_ratio = 1;
+        if(($FiledsDataArray["division_auto_need_all"][$productId][$color] ?? 0) > ($FiledsDataArray["quantity_warehouseman_fact"][$productId][$color] ?? 0)) {
+            $division_ratio = round($FiledsDataArray["quantity_warehouseman_fact"][$productId][$color] / $FiledsDataArray["division_auto_need_all"][$productId][$color],2);
+        }
+        $data_up[$productId][0][$color] = $division_ratio;
+    }
+
+    $html .="<font color=red>коэффициент $division_ratio</font>";
 }
 
 echo"$html";
-
index d9de0b26b05b616415b0dfe77653a191ff73d816..9a875afd0214ce47d802d7397216e875915d6976 100644 (file)
@@ -3,22 +3,26 @@ global $orderId,
        $orderStoresArrayRelation_in,
        $orderStoresArrayRelation,
        $products,
-       $productsColorsArray
-
+       $productsColorsArray,
+       $data_up,
+       $FiledsDataArray
        ;
 
 $FiledsDataArray=[];
 
-
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value,color
+$sql = "SELECT field_name, product_id, store_id, value,color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id=''
 AND field_name IN ('division_store_ratio','min_lot')
-AND value!=0 group by field_name, product_id, store_id, value,color ",[$orderId]);
+AND value!=0 group by field_name, product_id, store_id, value,color ";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  if(empty($row["color"])) $row["color"]=0;   
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][0][$row["color"]]=$row["value"];
+    if (empty($row["color"])) {
+        $row["color"] = 0;
+    }
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][0][$row["color"]] = $row["value"];
 }
 
 
@@ -33,55 +37,58 @@ function roundCoefficientLot2($number, $rate = 1)
 }
 
 
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value,color
+$sql = "SELECT field_name, product_id, store_id, value,color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND store_id!=''
 AND field_name IN ('quantity_zakup_new')
-AND value!=0 ",[$orderId]);
+AND value!=0 ";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  if(empty($row["color"])) $row["color"]=0;   
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]][$row["color"]] +=(int)$row["value"];
+    if (empty($row["color"])) {
+        $row["color"] = 0;
+    }
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]][$row["color"]] =
+        ($FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]][$row["color"]] ?? 0) + (int)$row["value"];
 }
 
 
 
 
- //пробегаемся по всем продуктам 
+//пробегаемся по всем продуктам
 foreach($products as $productId => $name) {
- // цикл по магазинам    
-  foreach($orderStoresArrayRelation as $storeId ) {  
-  // $s = $FiledsDataArray["division_store"][$productId][$storeId][0];
-   
-   $ceil = ($FiledsDataArray["quantity_zakup_new"][$productId][$storeId][0] ?? 0) * ($FiledsDataArray["division_store_ratio"][$productId][0][0] ?? 0);
-   //округляем до мини мального лота деления
-   $ceil=roundCoefficientLot2($ceil,$FiledsDataArray["min_lot"][$productId][0][0] ?? 0);
-   
-    $data_up[$productId][$storeId][0] =$ceil;  
- if(!empty($FiledsDataArray["quantity_zakup_new"][$productId][$storeId][0]))  
- //echo"<br> $name   $storeId min_lot=".$FiledsDataArray["min_lot"][$productId][0][0]." заказ магазина=".$FiledsDataArray["quantity_zakup_new"][$productId][$storeId][0]."     * division_store_ratio=".$FiledsDataArray["division_store_ratio"][$productId][0][0]." = $ceil";
-    
-    $data_up[$productId][0][0] +=$ceil ; 
-      // цикл по цвету товара
-       foreach($productsColorsArray[$productId] ?? [] as $color) {
-       $color=trim($color);   
-       
-      $ceil=$FiledsDataArray["quantity_zakup_new"][$productId][$storeId][$color]  * $FiledsDataArray["division_store_ratio"][$productId][0][$color];
-      //округляем до мини мального лота деления
-      $ceil=roundCoefficientLot2($ceil,$FiledsDataArray["min_lot"][$productId][0][$color]);
-      $data_up[$productId][$storeId][$color] = $ceil;
-    /*  
-       echo"<br> $name  $color $storeId  min_lot =
-       ".$FiledsDataArray["min_lot"][$productId][0][$color]."
-       ".$FiledsDataArray["quantity_zakup_new"][$productId][$storeId][$color]."  
-   * ".$FiledsDataArray["division_store_ratio"][$productId][0][$color]." = $ceil";
-   */
-      }
-    
-  }
+    // цикл по магазинам
+    foreach($orderStoresArrayRelation as $storeId ) {
+        // $s = $FiledsDataArray["division_store"][$productId][$storeId][0];
+
+        $ceil = ($FiledsDataArray["quantity_zakup_new"][$productId][$storeId][0] ?? 0) * ($FiledsDataArray["division_store_ratio"][$productId][0][0] ?? 0);
+        //округляем до мини мального лота деления
+        $ceil=roundCoefficientLot2($ceil,$FiledsDataArray["min_lot"][$productId][0][0] ?? 0);
+
+        $data_up[$productId][$storeId][0] = $ceil;
+
+//        if (!empty($FiledsDataArray["quantity_zakup_new"][$productId][$storeId][0]))
+        //echo"<br> $name   $storeId min_lot=".$FiledsDataArray["min_lot"][$productId][0][0]." заказ магазина=".$FiledsDataArray["quantity_zakup_new"][$productId][$storeId][0]."     * division_store_ratio=".$FiledsDataArray["division_store_ratio"][$productId][0][0]." = $ceil";
+
+
+        $data_up[$productId][0][0] = ($data_up[$productId][0][0] ?? 0) + $ceil;
+        // цикл по цвету товара
+        foreach($productsColorsArray[$productId] ?? [] as $color) {
+            $color=trim($color);
+
+            $ceil = ($FiledsDataArray["quantity_zakup_new"][$productId][$storeId][$color] ?? 0) * ($FiledsDataArray["division_store_ratio"][$productId][0][$color] ?? 0);
+            //округляем до минимального лота деления
+            $ceil = roundCoefficientLot2($ceil, $FiledsDataArray["min_lot"][$productId][0][$color] ?? 0);
+            $data_up[$productId][$storeId][$color] = $ceil;
+            /*
+            echo"<br> $name  $color $storeId  min_lot =
+            ".$FiledsDataArray["min_lot"][$productId][0][$color]."
+            ".$FiledsDataArray["quantity_zakup_new"][$productId][$storeId][$color]."
+            * ".$FiledsDataArray["division_store_ratio"][$productId][0][$color]." = $ceil";
+            */
+        }
+    }
 }
  
index 915fae5868b2d12e5abb290877ab64ca0c09db4b..170cf5240e8658861a152f64a323d0f3027dfe5d 100644 (file)
@@ -1,22 +1,29 @@
-<?
-  $data=$db::getRows("SELECT product_id,sum(value) as value FROM store_orders_fields_data WHERE 
+<?php
+
+global $orderId, $data_up, $orderStoresArrayRelation_in, $products;
+
+$sql = "SELECT product_id,sum(value) as value FROM store_orders_fields_data WHERE 
   field_name='division_store_hand' AND value!=0
   AND store_id $orderStoresArrayRelation_in
   AND color=''
-  AND order_id=?  AND store_id!='' group by product_id",[$orderId]);
-     foreach($data as $row) {
-       $data_up[$row["product_id"]][0][0] +=(int)$row["value"];
-   }  
+  AND order_id=?  AND store_id!='' group by product_id";
+//var_dump($sql); var_dump($orderId); die;
+$data = $db::getRows($sql, [$orderId]);
+foreach($data as $row) {
+    $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
+}
      
      
-  $data=$db::getRows("SELECT product_id,sum(value) as value, color FROM store_orders_fields_data WHERE 
+$sql = "SELECT product_id,sum(value) as value, color FROM store_orders_fields_data WHERE 
   field_name='division_store_hand' AND value!=0
   AND store_id $orderStoresArrayRelation_in
   AND color!=''
-  AND order_id=?  AND store_id!='' group by product_id,color",[$orderId]);
-     foreach($data as $row) {
-       $data_up[$row["product_id"]][0][$row["color"]] +=(int)$row["value"];  
-       $data_up[$row["product_id"]][0][0] +=(int)$row["value"];
-       
-       echo"<br>  +".$products[$row["product_id"]]."  ".$row["color"]." = ".(int)$row["value"]."  ";
-     }  
\ No newline at end of file
+  AND order_id=?  AND store_id!='' group by product_id,color";
+//var_dump($sql); var_dump($orderId); die;
+$data = $db::getRows($sql, [$orderId]);
+foreach($data as $row) {
+    $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
+    $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
+
+    echo"<br>  +". ($products[$row["product_id"]] ?? 0) . "  " . ($row["color"] ?? 0) ." = " . (int)$row["value"] . "  ";
+}
index f2066253838311ce1099bf4da779bdb33b4d6984..d0778b18d05751bb9d46d635d8ecd59f50e91616 100644 (file)
@@ -1,59 +1,63 @@
 <?php
 
-global $orderId, $orderStoresArrayRelation_in, $products, $productsColorsArray;
+global $orderId, $data_up, $orderStoresArrayRelation_in, $products, $productsColorsArray, $FiledsDataArray;
 
 //echo"<h5>Коэффицент деления division_stpore_ratio</h5>";
 $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value,color
+$sql = "SELECT field_name, product_id, value,color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id=''
 AND field_name IN ('quantity_warehouseman_fact')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  if(empty($row["color"])) $row["color"]=0; 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]]=(int)$row["value"];
+    if (empty($row["color"])) {
+        $row["color"] = 0;
+    }
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]] = (int)$row["value"];
 }
 
 
 $potreb=[];
-  $data=$db::getRows("SELECT product_id, value,color FROM store_orders_fields_data WHERE 
+$sql = "SELECT product_id, value,color FROM store_orders_fields_data WHERE 
   field_name='quantity_zakup_new' AND value>0
   AND store_id $orderStoresArrayRelation_in
   AND order_id='$orderId'  
-  AND store_id!=''");
-     foreach($data as $row) {
-       if(empty($row["color"])) $row["color"]=0; 
-       $potreb[$row["product_id"]][$row["color"]] +=(int)$row["value"];
-     }  
+  AND store_id!=''";
+//var_dump($sql);
+$data=$db::getRows($sql);
+foreach($data as $row) {
+    if (empty($row["color"])) {
+        $row["color"] = 0;
+    }
+    $potreb[$row["product_id"]][$row["color"]] = ($potreb[$row["product_id"]][$row["color"]] ?? 0) + (int)$row["value"];
+}
 
-//пробегаемся по всем продуктам 
+//пробегаемся по всем продуктам
+$html = $html ?? '';
 foreach($products as $productId => $name) {
- $potreb_all = $potreb[$productId][0] ?? 0;
- $quantity_warehouseman_fact=$FiledsDataArray["quantity_warehouseman_fact"][$productId][0];
-
-
-$html .="<br><b>$name</b> потребность =".$potreb_all."шт., получено по факту=".$quantity_warehouseman_fact."шт.";  
-
-$division_store_ratio=1;
-if($potreb_all > $quantity_warehouseman_fact) { 
-$division_store_ratio=round($quantity_warehouseman_fact/$potreb_all,2);    
-}
-$html .="коэффициент <font color=red>$division_store_ratio</font>";   
- $data_up[$productId][0][0] =$division_store_ratio;
-        foreach($productsColorsArray[$productId] ?? [] as $color) {
-         $color=trim($color);  
-           $division_store_ratio=1;
-           if($potreb[$productId][$color] > $FiledsDataArray["quantity_warehouseman_fact"][$productId][$color]) { 
-              $division_store_ratio=round($FiledsDataArray["quantity_warehouseman_fact"][$productId][$color]/$potreb[$productId][$color],2);    
-          }
-          $data_up[$productId][0][$color] =$division_store_ratio ; 
+    $potreb_all = $potreb[$productId][0] ?? 0;
+    $quantity_warehouseman_fact = $FiledsDataArray["quantity_warehouseman_fact"][$productId][0] ?? 0;
+
+    $html .="<br><b>$name</b> потребность =".$potreb_all."шт., получено по факту=".$quantity_warehouseman_fact."шт.";
+
+    $division_store_ratio = 1;
+    if($potreb_all > $quantity_warehouseman_fact) {
+        $division_store_ratio = round($quantity_warehouseman_fact / $potreb_all,2);
+    }
+    $html .= "коэффициент <font color=red>$division_store_ratio</font>";
+    $data_up[$productId][0][0] = $division_store_ratio;
+
+    foreach($productsColorsArray[$productId] ?? [] as $color) {
+        $color = trim($color);
+        $division_store_ratio = 1;
+        if (($potreb[$productId][$color] ?? 0) > ($FiledsDataArray["quantity_warehouseman_fact"][$productId][$color] ?? 0)) {
+            $division_store_ratio = round(($FiledsDataArray["quantity_warehouseman_fact"][$productId][$color] ?? 0) / $potreb[$productId][$color],2);
         }
-
+        $data_up[$productId][0][$color] = $division_store_ratio;
+    }
 }
 
 //echo"$html";
-
index ec6dae012e336087b0f1f12d22b177ec0e005207..c7b80e9b601bd561603bc3cc0590dea1a164ff1c 100644 (file)
@@ -1,46 +1,39 @@
 <?php
 
-global $orderId, $orderStoresArrayRelation_in, $products, $orderStoresArrayRelation, $productsColorsArray;
+global $orderId, $data_up, $FiledsDataArray, $orderStoresArrayRelation_in, $products, $orderStoresArrayRelation, $productsColorsArray;
 
 $data_up=[];
- $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value,color
+$FiledsDataArray=[];
+$sql = "SELECT field_name, product_id, store_id, value,color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND store_id!=''
 AND color!=''
 AND field_name IN ('division_store','division_store_hand')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
- // if(empty($row["color"])) $row["color"]=0;   
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]][$row["color"]]=(int)$row["value"];
+    // if(empty($row["color"])) $row["color"]=0;
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]][$row["color"]] = (int)$row["value"];
 }
- //пробегаемся по всем продуктам 
-foreach($products as $productId => $name) {
- // echo"<br> <h2>$name</h2>";
-  foreach($orderStoresArrayRelation as $storeId ) {  
-  //  $s = $FiledsDataArray["division_store"][$productId][$storeId][0] + $FiledsDataArray["division_store_hand"][$productId][$storeId][0];
-  //  $data_up[$productId][$storeId][0] +=$s ; 
-   // $data_up[$productId][0][0] +=$s ; 
-    
-       foreach($productsColorsArray[$productId] ?? [] as $color) {
-       $color=trim($color);   
-       $s = ($FiledsDataArray["division_store"][$productId][$storeId][$color] ?? 0) + ($FiledsDataArray["division_store_hand"][$productId][$storeId][$color] ?? 0);
-       $data_up[$productId][$storeId][$color] = ($data_up[$productId][$storeId][$color] ?? 0) + $s;
-       $data_up[$productId][0][$color] = ($data_up[$productId][0][$color] ?? 0) + $s;
-       
-      
-      
-      
-    //  if($color=="белый" and !empty($s))  echo"<br> $color =$s ";
-       
-       
-       
-      }
-    
-  }
 
+//пробегаемся по всем продуктам
+foreach($products as $productId => $name) {
+    // echo"<br> <h2>$name</h2>";
+    foreach ($orderStoresArrayRelation as $storeId) {
+        //  $s = $FiledsDataArray["division_store"][$productId][$storeId][0] + $FiledsDataArray["division_store_hand"][$productId][$storeId][0];
+        //  $data_up[$productId][$storeId][0] +=$s ;
+        // $data_up[$productId][0][0] +=$s ;
+        foreach ($productsColorsArray[$productId] ?? [] as $color) {
+            $color = trim($color);
+            $s = ($FiledsDataArray["division_store"][$productId][$storeId][$color] ?? 0) + ($FiledsDataArray["division_store_hand"][$productId][$storeId][$color] ?? 0);
+            $data_up[$productId][$storeId][$color] = ($data_up[$productId][$storeId][$color] ?? 0) + $s;
+            $data_up[$productId][0][$color] = ($data_up[$productId][0][$color] ?? 0) + $s;
+            //  if($color=="белый" and !empty($s))  echo"<br> $color =$s ";
+        }
+    }
 }
 
 //print_r($data_up["0f42fcb0-f647-11e9-a2be-b42e991aff6c"][0]);
@@ -50,26 +43,26 @@ foreach($products as $productId => $name) {
 
  
 $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value,color
+$sql = "SELECT field_name, product_id, store_id, value,color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND store_id!=''
 AND color=''
 AND field_name IN ('division_store','division_store_hand')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]][0] = +(int)$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]][0] = ($FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]][0] ?? 0) + (int)$row["value"];
 }
- //пробегаемся по всем продуктам 
+
+//пробегаемся по всем продуктам
 foreach($products as $productId => $name) {
-//  echo"<br> <h2>$name</h2>";
-  foreach($orderStoresArrayRelation as $storeId ) {  
-  $s = ($FiledsDataArray["division_store"][$productId][$storeId][0] ?? 0) + ($FiledsDataArray["division_store_hand"][$productId][$storeId][0] ?? 0);
-  $data_up[$productId][$storeId][0] = ($data_up[$productId][$storeId][0] ?? 0) + (int)$s;
-  $data_up[$productId][0][0] = ($data_up[$productId][0][0] ?? 0) + (int)$s;
-  }
+    //  echo"<br> <h2>$name</h2>";
+    foreach($orderStoresArrayRelation as $storeId ) {
+        $s = ($FiledsDataArray["division_store"][$productId][$storeId][0] ?? 0) + ($FiledsDataArray["division_store_hand"][$productId][$storeId][0] ?? 0);
+        $data_up[$productId][$storeId][0] = ($data_up[$productId][$storeId][0] ?? 0) + (int)$s;
+        $data_up[$productId][0][0] = ($data_up[$productId][0][0] ?? 0) + (int)$s;
+    }
 }
-
-
-
index b3dd2c7580fefae503da903e02eab7fdb7c8e651..8e2683c88e4d8a8bc939859fce3a42dbcea01094 100644 (file)
@@ -1,35 +1,30 @@
 <?php
 
-global $orderId, $orderStoresArrayRelation_in, $products, $orderStoresArrayRelation;
+global $orderId, $data_up, $orderStoresArrayRelation_in, $products, $orderStoresArrayRelation;
 
- $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, store_id, value
+$FiledsDataArray=[];
+$sql = "SELECT field_name, product_id, store_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND color=''
 AND store_id!=''
 AND field_name IN ('division_auto','division_hand')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]]=(int)$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["store_id"]] = (int)$row["value"];
 }
- //пробегаемся по всем продуктам 
-foreach($products as $productId => $name) {
-//  echo"<br> <h2>$name</h2>";
-  foreach($orderStoresArrayRelation as $storeId ) {  
-    
-
-      
-     $s = ($FiledsDataArray["division_auto"][$productId][$storeId] ?? 0) + ($FiledsDataArray["division_hand"][$productId][$storeId] ?? 0);
-    $data_up[$productId][$storeId][0] = ($data_up[$productId][$storeId][0] ?? 0) + $s ;
-    $data_up[$productId][0][0] = ($data_up[$productId][0][0] ?? 0) + $s ;
-    
 
-    
-  }
-  
-// echo" <br>  =".$data_up[$productId][0][0]." "; 
-  
+//пробегаемся по всем продуктам
+foreach($products as $productId => $name) {
+    //  echo"<br> <h2>$name</h2>";
+    foreach ($orderStoresArrayRelation as $storeId) {
+        $s = ($FiledsDataArray["division_auto"][$productId][$storeId] ?? 0) + ($FiledsDataArray["division_hand"][$productId][$storeId] ?? 0);
+        $data_up[$productId][$storeId][0] = ($data_up[$productId][$storeId][0] ?? 0) + $s ;
+        $data_up[$productId][0][0] = ($data_up[$productId][0][0] ?? 0) + $s ;
+    }
+    // echo" <br>  =".$data_up[$productId][0][0]." ";
 }
  
index 1de15abddbccf59407497a1c75e9cca64d958d8c..a084c910ae7489fb1be5fa986a1484ecc109d6b1 100644 (file)
@@ -2,15 +2,17 @@
 
 global $orderId, $orderStoresArrayRelation_in, $data_up;
 
-  $data=$db::getRows("SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
+$sql = "SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
   field_name='division_summ' AND value>0
   AND store_id $orderStoresArrayRelation_in
   AND order_id='$orderId'  
-  AND store_id!='' group by product_id, color");
-     foreach($data as $row) {
-         if (empty($row["color"])) {
-             $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
-         } else {
-             $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
-         }
-     }
+  AND store_id!='' group by product_id, color";
+//var_dump($sql); die;
+$data = $db::getRows($sql);
+foreach($data as $row) {
+    if (empty($row["color"])) {
+        $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
+    } else {
+        $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
+    }
+}
index 614541dd3aef230000fcb825cca0af9af604fd33..0d535aa324376b97cf55f6452045aab1d1a4efed 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-global $date_start_sale, $whereInProductsId;
+global $date_start_sale, $whereInProductsId, $data_up;
 
 /*date_start - 7 day получили период поставок
 Выбираем закупки входящие в этот период по дате старта продаж 
@@ -9,6 +9,7 @@ global $date_start_sale, $whereInProductsId;
 
 if (!empty($date_start_sale)) {
     $sql = "SELECT id FROM store_orders WHERE status>=6 AND date_start <='$date_start_sale' AND date_start>='$date_start_sale'::date -interval '7 day'";
+//    var_dump($sql); die;
     $data = $db::getRows($sql);
     $whereInOrderId = "";
     $i = 0;
@@ -21,7 +22,9 @@ if (!empty($date_start_sale)) {
 
 
 if(!empty($whereInOrderId)) {
-    $data=$db::getRows("SELECT product_id, store_id, value FROM store_orders_fields_data WHERE  order_id IN ($whereInOrderId) AND product_id $whereInProductsId AND field_name='division_summ' AND color='' AND value>0 group by product_id, store_id");
+    $sql = "SELECT product_id, store_id, value FROM store_orders_fields_data WHERE  order_id IN ($whereInOrderId) AND product_id $whereInProductsId AND field_name='division_summ' AND color='' AND value>0 group by product_id, store_id";
+//    var_dump($sql); die;
+    $data=$db::getRows($sql);
     foreach($data as $row) {
         $data_up[$row["product_id"]][$row["store_id"]]["0"] = $row["value"];
         $data_up[$row["product_id"]][0]["0"] = ($data_up[$row["product_id"]][0]["0"] ?? 0) + $row["value"];
index f7ccc56469951be8432762af657abca510e40ea1..8066d6a4b77534a946cb8cc2fc7610eea5cc745f 100644 (file)
@@ -1,31 +1,37 @@
 <?php
 
-global $orderId, $order_date_add;
+global $orderId, $data_up, $order_date_add;
 
 if(!empty($order_date_add) && $order_date_add!='000-00-00') {
-$sql = "SELECT  id FROM store_orders
-WHERE date_add<='$order_date_add' AND date_add>='$order_date_add' - interval 7 day";
-var_dump($sql); die;
-$dataOrders2=$db::getRows($sql);
+    $sql = "SELECT  id FROM store_orders
+    WHERE date_add<='$order_date_add' AND date_add>='$order_date_add' - interval 7 day";
+    //var_dump($sql); die;
+    $dataOrders2 = $db::getRows($sql);
 
-//echo"<b>Товар в пути участвуют заказы:</b>";
-$k=0; $w_orders="";
-foreach($dataOrders2 as $row) { 
-  if($k>0) $w_orders.=" ,";    $w_orders.= "'".$row["id"]."'";  $k++; 
-  //  echo"<br> id=".$row["id"]."  дата старта:".$row["date_add"]." ".$row["name"]."";
-  }
+    //echo"<b>Товар в пути участвуют заказы:</b>";
+    $k=0; $w_orders="";
+    foreach($dataOrders2 as $row) {
+      if ($k>0) {
+          $w_orders.=" ,";
+      }
+      $w_orders .= "'" . $row["id"] . "'";
+      $k++;
+      //  echo"<br> id=".$row["id"]."  дата старта:".$row["date_add"]." ".$row["name"]."";
+    }
 
-if(!empty($w_orders)) { 
-$w_orders=" AND order_id IN($w_orders) AND order_id!='$orderId'";  
+    if(!empty($w_orders)) {
+        $w_orders=" AND order_id IN($w_orders) AND order_id!='$orderId'";
 
- $data2=$db::getRows("SELECT sum(value) as value, product_id, if(color='',0,color) as color 
- FROM store_orders_fields_data 
- WHERE field_name='quantity_zakup_fact' AND value>0 
- $w_orders group by product_id,color");
-      foreach($data2 as $row2) {
-        $data_up[$row2["product_id"]][0][$row2["color"]]=$row2["value"];   
-      //   echo"<br> ".$products[$row2["product_id"]]." = ".$row2["value"]." ";
-   }   
-}
+        $sql = "SELECT sum(value) as value, product_id, if(color='',0,color) as color 
+     FROM store_orders_fields_data 
+     WHERE field_name='quantity_zakup_fact' AND value>0 
+     $w_orders group by product_id,color";
+//        var_dump($sql); die;
+        $data2=$db::getRows($sql);
+
+        foreach($data2 as $row2) {
+            $data_up[$row2["product_id"]][0][$row2["color"]] = $row2["value"];
+            //   echo"<br> ".$products[$row2["product_id"]]." = ".$row2["value"]." ";
+        }
+    }
 }
\ No newline at end of file
index 346dc4f5314a6001c7ecda517f6d9ad1e8569fc5..7d1fd424d6dbb49c1cbdcf923e1a469e527ff542 100644 (file)
@@ -4,7 +4,9 @@ global $whereInProductsId, $data_up;
 
 
 if ($whereInProductsId != " in ()") {
-    $data = $db::getRows("SELECT id,min_lot FROM products_1c_options WHERE id $whereInProductsId");
+    $sql = "SELECT id,min_lot FROM products_1c_options WHERE id $whereInProductsId";
+//    var_dump($sql); die;
+    $data = $db::getRows($sql);
     foreach ($data as $row) {
         $data_up[$row["id"]][0][0] = $row["min_lot"];
     }
index 0f1c611791408336b37739de299bbb988a0b4f66..c2142fbb0602cd6c32e71b8f2e0ce7e5d42dac8b 100644 (file)
@@ -1,9 +1,11 @@
 <?php
 
-global $whereInProductsId;
+global $whereInProductsId, $data_up;
 
 if ($whereInProductsId != " in ()") {
-    $data = $db::getRows("SELECT id,min_order FROM products_1c_options WHERE id $whereInProductsId");
+    $sql = "SELECT id,min_order FROM products_1c_options WHERE id $whereInProductsId";
+//    var_dump($sql); die;
+    $data = $db::getRows($sql);
     foreach ($data as $row) {
         $data_up[$row["id"]][0][0] = $row["min_order"];
     }
index 9e640097f8e1a11c11804fc9eaf5e0ef604d5a3a..70986ffeb763f5e2bcf082875fd2a5682f123589 100644 (file)
@@ -1,19 +1,22 @@
 <?php
 
-global $orderId;
+global $orderId, $data_up;
 
-  $prices=[];
-  $sql = "SELECT product_id, value FROM store_orders_fields_data WHERE  field_name='purchase_price' AND value>0  AND order_id=" . ($orderId ?? 0). "  AND store_id='' AND color='' group by product_id, value";
+$prices=[];
+$sql = "SELECT product_id, value FROM store_orders_fields_data WHERE  field_name='purchase_price' AND value>0  AND order_id=" . ($orderId ?? 0). "  AND store_id='' AND color='' group by product_id, value";
 //  var_dump($sql); die;
-  $data=$db::getRows($sql);
-     foreach($data as $row) $prices[$row["product_id"]]=$row["value"];
-  $sql = "SELECT product_id,sum(value) as value, store_id FROM store_orders_fields_data WHERE field_name='quantity_zakup_new' AND value>0
+$data = $db::getRows($sql);
+foreach($data as $row) {
+    $prices[$row["product_id"]] = $row["value"];
+}
+
+$sql = "SELECT product_id,sum(value) as value, store_id FROM store_orders_fields_data WHERE field_name='quantity_zakup_new' AND value>0
   AND order_id=" . ($orderId ?? 0) . " AND color='' AND store_id!='' group by product_id,store_id";
 //  var_dump($sql); die;
-  $data=$db::getRows($sql);
-     foreach($data as $row) {
-       $s=intval($row["value"] * $prices[$row["product_id"]]);
-      //  echo"<br> ".$row["product_id"]."  ".$row["value"]." * ".$prices[$row["product_id"]]." = $s ";
-       $data_up[$row["product_id"]][$row["store_id"]][0] =$s;
-       $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + $s;
-   }  
+$data=$db::getRows($sql);
+foreach($data as $row) {
+    $s = intval(($row["value"] ?? 0) * ($prices[$row["product_id"]] ?? 0));
+    //  echo"<br> ".$row["product_id"]."  ".$row["value"]." * ".$prices[$row["product_id"]]." = $s ";
+    $data_up[$row["product_id"]][$row["store_id"]][0] =$s;
+    $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + $s;
+}
index 08ff232d3e2fe23ff6ad26048f158c5309bae75b..49cf628b01c27b681a5f9b3c104afddd8dab8ad7 100644 (file)
@@ -3,16 +3,16 @@
 global $FiledsDataArray, $orderId, $products, $data_up;
 
 $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value
+$sql = "SELECT field_name, product_id, value
 FROM store_orders_fields_data 
 WHERE order_id=? AND color='' AND store_id=''
-AND field_name IN ('purchase_price_zakup','quantity_zakup_fact')",[$orderId]);
-
+AND field_name IN ('purchase_price_zakup','quantity_zakup_fact')";
+//var_dump($sql); var_dump($orderId); die;
+$dataF=$db::getRows($sql, [$orderId]);
 foreach($dataF as $row) {
-    $FiledsDataArray[$row["field_name"]][$row["product_id"]]=$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]] = $row["value"];
 }
 
-
 foreach($products ?? [] as $product_id => $name){
     $data_up[$product_id][0][0] = round(($FiledsDataArray["purchase_price_zakup"][$product_id] ?? 0) * ($FiledsDataArray["quantity_zakup_fact"][$product_id] ?? 0),2);
 }
index a7c826c49dad287533e977a641aa9b9d8fe53d86..23494c896a45cb5b90b5f73de313922cda197e7f 100644 (file)
@@ -1,23 +1,27 @@
 <?php
 
+global $orderId, $data_up, $FiledsDataArray, $products, $orderStoresArrayRelation;
+
 $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value
+$sql = "SELECT field_name, product_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND color=''
 AND store_id=''
 AND field_name IN ('quantity_warehouseman_fact','quantity_zakup_fact')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]]=(int)$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]] = (int)$row["value"];
 }
- //пробегаемся по всем продуктам 
+
+//пробегаемся по всем продуктам
 foreach($products as $productId => $name) {
-  //    echo"<br> <h2>$name</h2>";
-  foreach($orderStoresArrayRelation as $storeId ) {  
-      
-    $data_up[$productId][0][0] = ( $FiledsDataArray["quantity_warehouseman_fact"][$productId] - $FiledsDataArray["quantity_zakup_fact"][$productId] ); 
-  }
-  
+    //    echo"<br> <h2>$name</h2>";
+    foreach($orderStoresArrayRelation as $storeId ) {
+        $data_up[$productId][0][0] = (($FiledsDataArray["quantity_warehouseman_fact"][$productId] ?? 0)
+            - ($FiledsDataArray["quantity_zakup_fact"][$productId] ?? 0));
+    }
 }
  
index 9f550b0be84c76eca00b4dedbdb75ccebb426f69..4c272d3d7f4ac005d7371a00390f7985a9e0ae73 100644 (file)
@@ -1,4 +1,5 @@
-<?
+<?php
+
 /*
   $data=$db::getRows("SELECT sum(value) as value,color FROM store_orders_fields_data WHERE 
   field_name='purchase_logistic' AND value>0
index de74b54f08ec94fedb471d1049b51da8007eb073..3bca480e507f92de93327d767d4255415d8586f0 100644 (file)
@@ -4,6 +4,7 @@ global $whereInProductsId, $data_up;
 
 if ($whereInProductsId != " in ()") {
     $sql = "SELECT product_id, price FROM prices WHERE product_id $whereInProductsId";
+//    var_dump($sql); die;
     $data = $db::getRows($sql);
 
     foreach ($data as $row) {
index 37e27aeb054fb2fcb5e1d96a5ffe9f2ccb215704..e5d0c5a535225c1357d8b3814140c1c6a1f2b81f 100644 (file)
@@ -1,4 +1,5 @@
-<?
+<?php
+
 /*
 $FiledsDataArray=[];
 $dataF=$db::getRows("SELECT field_name, product_id, store_id, value
index 09eaa6f179ce0fc824ae7e49fe75f9826ab468ab..85f7257907724288a4f1d6fbabb71a21fd416c4d 100644 (file)
@@ -1,21 +1,21 @@
 <?php
 
-global $orderId, $products, $FiledsDataArray;
+global $orderId, $products, $FiledsDataArray, $data_up;
 
-$FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value
+$FiledsDataArray = [];
+$sql = "SELECT field_name, product_id, value
 FROM store_orders_fields_data 
 WHERE order_id=? AND color='' AND store_id=''
-AND field_name IN ('purchase_price','quantity_zakup_fact')",[$orderId]);
+AND field_name IN ('purchase_price','quantity_zakup_fact')";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]]=$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]] = $row["value"];
 }
 
-
 foreach($products ?? [] as $product_id => $name){
-     // розничная цена в рублях на сумму закупки по факту закупщиком
-           $data_up[$product_id][0][0] = round(($FiledsDataArray["purchase_price"][$product_id] ?? 0) * ($FiledsDataArray["quantity_zakup_fact"][$product_id] ?? 0));
-
-}  
+    // розничная цена в рублях на сумму закупки по факту закупщиком
+    $data_up[$product_id][0][0] = round(($FiledsDataArray["purchase_price"][$product_id] ?? 0) * ($FiledsDataArray["quantity_zakup_fact"][$product_id] ?? 0));
+}
 
 
index 9d067797c72f50cbf9e8ad852fd575f8c089bec9..e6e7267ca5dbe81814506d0b566db737d471dbf5 100644 (file)
@@ -7,6 +7,7 @@ if ($whereInProductsId != " in ()") {
 FROM store_planogram WHERE quantity>0 
 AND product_id  $whereInProductsId
 AND store_id $orderStoresArrayRelation_in group by product_id, color, store_id, quantity";
+//    var_dump($sql); die;
     $store_planogram = $db::getRows($sql);
 
     foreach ($store_planogram as $row) {
index 7e0c30579a869f21c6bb8858885e032ccbad1cbf..b2c41f7d347cb81cfb659e188a83e92d4c67dede 100644 (file)
@@ -2,14 +2,16 @@
 
 global $orderStoresArrayRelation_in, $whereInProductsId, $data_up;
 
-$date_id=$db::getValue("SELECT date_id FROM store_products_fact order by date_id DESC LIMIT 1");
+$sql = "SELECT date_id FROM store_products_fact order by date_id DESC LIMIT 1";
+//var_dump($sql); die;
+$date_id = $db::getValue($sql);
 
 if ($whereInProductsId != " in ()") {
     $sql = "SELECT product_id,quantity, store_id,color FROM store_products_fact WHERE quantity>0 
 AND date_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND product_id $whereInProductsId";
-
+//    var_dump($sql); var_dump($date_id); die;
     $store_products_fact = $db::getRows($sql, [$date_id]);
     foreach ($store_products_fact as $row) {
         $data_up[$row["product_id"]][$row["store_id"]][$row["color"]] = ($data_up[$row["product_id"]][$row["store_id"]][$row["color"]] ?? 0) + $row["quantity"];
index 675e7653aa40a39cb73be1cb1e254a62c3b34fb4..a4abe2dafcb3fabac023b6d4630c24fed41379c0 100644 (file)
@@ -1,2 +1,2 @@
-<?
+<?php
 
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..a81436628ee704d656ba217b034c1adbf3dc4835 100644 (file)
@@ -0,0 +1 @@
+<?php
\ No newline at end of file
index f0c1d14822bfcb37ddd27fadf868b044e8c6a451..7559ab10d1551305d2f6276f92d4db4e0a6d2bf6 100644 (file)
@@ -3,9 +3,11 @@
 global $whereInProductsId, $orderStoresArrayRelation_in, $data_up;
 
 if ($whereInProductsId != " in ()") {
-    $data2 = $db::getRows("SELECT product_id,store_id,quantity FROM balances WHERE quantity>0 
+    $sql = "SELECT product_id,store_id,quantity FROM balances WHERE quantity>0 
 AND  product_id $whereInProductsId 
-AND store_id $orderStoresArrayRelation_in");
+AND store_id $orderStoresArrayRelation_in";
+//    var_dump($sql); die;
+    $data2 = $db::getRows($sql);
     foreach ($data2 as $row2) {
         $data_up[$row2["product_id"]][$row2["store_id"]][0] = ($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? 0) + $row2["quantity"];
         $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $row2["quantity"];
index 16c821ee6df5f546159060923445e7ef2495e956..67f226ebbc01bd7cb1e9eabec0bd710569ca6ff9 100644 (file)
@@ -1,9 +1,13 @@
-<?
+<?php
 
-  $data2=$db::getRows("SELECT product_id,sum(value) as value FROM store_orders_fields_data WHERE 
+global $orderId, $data_up, $orderStoresArrayRelation_in;
+
+$sql = "SELECT product_id,sum(value) as value FROM store_orders_fields_data WHERE 
   field_name='quantity_warehouseman_fact' AND value>0
   AND store_id $orderStoresArrayRelation_in
-  AND order_id='$orderId' AND color='' AND store_id!='' group by product_id");
-     foreach($data2 as $row2) {
-       $data_up[$row2["product_id"]][0][0] +=(int)$row2["value"];
-     }  
+  AND order_id=" . ($orderId ?? 0) . " AND color='' AND store_id!='' group by product_id";
+//var_dump($sql); die;
+$data2=$db::getRows($sql);
+foreach($data2 as $row2) {
+    $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + (int)$row2["value"];
+}
index 3be8cc2d91a687b9f25ad54153488415c2add793..3057fef0f75171d8b4c2d36512cf1441cea3d7d0 100644 (file)
@@ -1,24 +1,34 @@
-<?
+<?php
+
+global $orderId, $data_up, $whereInProductsId;
 
 // считаем получено по факту кладовщиком от закупок частей.
-$data=$db::getRows("SELECT id FROM store_orders WHERE related_order_id='$orderId'");
+$sql = "SELECT id FROM store_orders WHERE related_order_id=" . ($orderId ?? 0);
+//var_dump($sql); die;
+$data = $db::getRows($sql);
 $whereInOrderId="";
 $i=0;
 foreach($data as $row) {
-  $whereInOrderId .=" '".$row["id"]."' ";
-    if($i<(count($data)-1)) $whereInOrderId .=" , ";
-     $i++;   
+    $whereInOrderId .=" '".$row["id"]."' ";
+    if ($i<(count($data)-1)) {
+        $whereInOrderId .=" , ";
+    }
+    $i++;
 }
 
 if(!empty($whereInOrderId)) {
-
-$data=$db::getRows("SELECT order_id,product_id, sum(value) value, color FROM store_orders_fields_data WHERE 
-order_id IN ($whereInOrderId) AND product_id $whereInProductsId 
-AND field_name='quantity_warehouseman_defective' AND store_id=''  AND value>0 group by order_id,product_id,color");
-  foreach($data as $row) {
-  if(!empty($row["color"])) $data_up[$row["product_id"]][0][$row["color"]] +=$row["value"];
-  if(empty($row["color"]))   $data_up[$row["product_id"]][0][0] +=$row["value"];     
-   //echo"<br> order=".$row["order_id"]."  ".$products[$row["product_id"]]." =  ".$row["color"]." =   ".$row["value"]."";   
-  
-  }
+    $sql = "SELECT order_id,product_id, sum(value) value, color FROM store_orders_fields_data WHERE 
+    order_id IN ($whereInOrderId) AND product_id $whereInProductsId 
+    AND field_name='quantity_warehouseman_defective' AND store_id=''  AND value>0 group by order_id,product_id,color";
+//    var_dump($sql); die;
+    $data = $db::getRows($sql);
+    foreach($data as $row) {
+        if (!empty($row["color"])) {
+            $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + $row["value"];
+        }
+        if (empty($row["color"])) {
+            $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + $row["value"];
+        }
+        //echo"<br> order=".$row["order_id"]."  ".$products[$row["product_id"]]." =  ".$row["color"]." =   ".$row["value"]."";
+    }
 }
\ No newline at end of file
index d540a78048ffd4eb7e62d1f3c8e42891d06f7093..dfe508251d3d8b7c80228ba020da463751e5713e 100644 (file)
@@ -1,26 +1,30 @@
-<?
+<?php
+
+global $orderId, $data_up, $whereInProductsId;
 
 // считаем получено по факту кладовщиком от закупок частей.
-$data=$db::getRows("SELECT id FROM store_orders WHERE related_order_id='$orderId'");
+$sql = "SELECT id FROM store_orders WHERE related_order_id=" . ($orderId ?? 0);
+//var_dump($sql); die;
+$data = $db::getRows($sql);
 $whereInOrderId="";
 $i=0;
 foreach($data as $row) {
-  $whereInOrderId .=" '".$row["id"]."' ";
-    if($i<(count($data)-1)) $whereInOrderId .=" , ";
-     $i++;   
+    $whereInOrderId .=" '".$row["id"]."' ";
+    if ($i<(count($data)-1)) {
+        $whereInOrderId .=" , ";
+    }
+    $i++;
 }
 
-if(!empty($whereInOrderId)) {
-
-$data=$db::getRows("SELECT product_id, sum(value) value, if(color='',0,color) as color FROM store_orders_fields_data WHERE 
+if (!empty($whereInOrderId)) {
+    $data=$db::getRows("SELECT product_id, sum(value) value, if(color='',0,color) as color FROM store_orders_fields_data WHERE 
 order_id IN ($whereInOrderId) AND product_id $whereInProductsId 
 AND field_name='quantity_warehouseman_fact' AND store_id=''  AND value>0 group by product_id,color");
-  foreach($data as $row) {
-      
-  $data_up[$row["product_id"]][0][$row["color"]]=$row["value"];
-  if(empty($row["color"])) $data_up[$row["product_id"]][0][0] +=$row["value"]; 
-  
-  // echo"<br> ".$row["product_id"]." =  store_id=".$row["store_id"]."  ".$row["value"]."";   
-  
-  }
+    foreach($data as $row) {
+        $data_up[$row["product_id"]][0][$row["color"]] = $row["value"];
+        if (empty($row["color"])) {
+            $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + $row["value"];
+        }
+        // echo"<br> ".$row["product_id"]." =  store_id=".$row["store_id"]."  ".$row["value"]."";
+    }
 }
\ No newline at end of file
index 36d3896b79daffd5613c95bb29eb092b220fba62..71179b1149c59401ff350bd8f62152aab79a231a 100644 (file)
@@ -1,33 +1,49 @@
-<?
+<?php
+
+global $orderId, $data_up, $whereInProductsId;
 
 // считаем получено по факту кладовщиком от закупок частей.
-$data=$db::getRows("SELECT id FROM store_orders WHERE related_order_id='$orderId'");
+$sql = "SELECT id FROM store_orders WHERE related_order_id=" . ($orderId ?? 0);
+//var_dump($sql); die;
+$data = $db::getRows($sql);
 $whereInOrderId="";
 $i=0;
 foreach($data as $row) {
-  $whereInOrderId .=" '".$row["id"]."' ";
-    if($i<(count($data)-1)) $whereInOrderId .=" , ";
-     $i++;   
+    $whereInOrderId .= " '" . $row["id"] . "' ";
+    if ($i<(count($data)-1)) {
+        $whereInOrderId .= " , ";
+    }
+    $i++;
 }
 
 if(!empty($whereInOrderId)) {
-
-$data=$db::getRows("SELECT order_id,product_id, sum(value) value, color FROM store_orders_fields_data WHERE 
+    $sql = "SELECT order_id,product_id, sum(value) value, color FROM store_orders_fields_data WHERE 
 order_id IN ($whereInOrderId) AND product_id $whereInProductsId 
-AND field_name in('quantity_warehouseman_defective','quantity_warehouseman_fact') AND store_id=''  AND value>0 group by order_id,product_id,color");
-  foreach($data as $row) {
-  if(!empty($row["color"])) $data_up[$row["product_id"]][0][$row["color"]] +=$row["value"];
-  if(empty($row["color"]))   $data_up[$row["product_id"]][0][0] +=$row["value"];     
-   //echo"<br> order=".$row["order_id"]."  ".$products[$row["product_id"]]." =  ".$row["color"]." =   ".$row["value"]."";   
+AND field_name in('quantity_warehouseman_defective','quantity_warehouseman_fact') AND store_id=''  AND value>0 group by order_id,product_id,color";
+//    var_dump($sql); die;
+    $data = $db::getRows($sql);
+    foreach($data as $row) {
+        if (!empty($row["color"])) {
+            $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + $row["value"];
+        }
+        if (empty($row["color"])) {
+            $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + $row["value"];
+        }
+        //echo"<br> order=".$row["order_id"]."  ".$products[$row["product_id"]]." =  ".$row["color"]." =   ".$row["value"]."";
     }
 }
 
-
-$data=$db::getRows("SELECT order_id,product_id, sum(value) value, color FROM store_orders_fields_data WHERE 
+$sql = "SELECT order_id,product_id, sum(value) value, color FROM store_orders_fields_data WHERE 
 order_id=? AND product_id $whereInProductsId 
-AND field_name in('quantity_warehouseman_defective','quantity_warehouseman_fact') AND store_id=''  AND value>0 group by order_id,product_id,color",[$orderId]);
-  foreach($data as $row) {
-  if(!empty($row["color"])) $data_up[$row["product_id"]][0][$row["color"]] +=$row["value"];
-  if(empty($row["color"]))   $data_up[$row["product_id"]][0][0] +=$row["value"];     
-   //echo"<br> order=".$row["order_id"]."  ".$products[$row["product_id"]]." =  ".$row["color"]." =   ".$row["value"]."";   
+AND field_name in('quantity_warehouseman_defective','quantity_warehouseman_fact') AND store_id=''  AND value>0 group by order_id,product_id,color";
+//var_dump($sql); var_dump($orderId); die;
+$data = $db::getRows($sql, [$orderId]);
+foreach($data as $row) {
+    if (!empty($row["color"])) {
+        $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + $row["value"];
+    }
+    if (empty($row["color"])) {
+        $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + $row["value"];
     }
+    //echo"<br> order=".$row["order_id"]."  ".$products[$row["product_id"]]." =  ".$row["color"]." =   ".$row["value"]."";
+}
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..b3d9bbc7f3711e882119cd6b3af051245d859d04 100644 (file)
@@ -0,0 +1 @@
+<?php
index 9b45e4a09861bf5c9efa25465b71a0b8ba9501ca..6fdf5d07c36593821a07551729eb4adf24f11229 100644 (file)
@@ -1,22 +1,26 @@
 <?php
 
-$FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value
+global $orderId, $data_up, $products, $orderStoresArrayRelation, $FiledsDataArray;
+
+$FiledsDataArray = [];
+$sql = "SELECT field_name, product_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND color=''
 AND store_id=''
 AND field_name IN ('quantity_zakup_fact','purchase_price')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $FiledsDataArray[$row["field_name"]][$row["product_id"]]=$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]] = $row["value"];
 }
- //пробегаемся по всем продуктам 
+
+//пробегаемся по всем продуктам
 foreach($products as $productId => $name) {
-  //    echo"<br> <h2>$name</h2>";
-  foreach($orderStoresArrayRelation as $storeId ) {  
-          $data_up[$productId][0][0] = round( $FiledsDataArray["purchase_price"][$productId] * $FiledsDataArray["quantity_zakup_fact"][$productId] ); 
-  }
-  
+    //    echo"<br> <h2>$name</h2>";
+    foreach($orderStoresArrayRelation as $storeId ) {
+        $data_up[$productId][0][0] = round( ($FiledsDataArray["purchase_price"][$productId] ?? 0) * ($FiledsDataArray["quantity_zakup_fact"][$productId] ?? 0));
+    }
 }
  
index 5d77bdcc95b25ba0d733600d9cb0b3c811ad0a48..2c6d5bd17df618b98871d632341f2c41bed637e0 100644 (file)
@@ -1,24 +1,28 @@
-<?
+<?php
 
+global $orderId, $data_up, $orderStoresArrayRelation_in;
  
-  $data=$db::getRows("SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
+$sql = "SELECT product_id,sum(value) as value,color FROM store_orders_fields_data WHERE 
   field_name='quantity_zakup_new' AND value>0
   AND store_id $orderStoresArrayRelation_in
   AND store_id!=''
-  AND order_id=? AND color!='' AND store_id!='' group by product_id,store_id,color",[$orderId]);
-     foreach($data as $row) {
-       $data_up[$row["product_id"]][0][$row["color"]] +=(int)$row["value"];  
-     //  $data_up[$row["product_id"]][0][0] +=(int)$row["value"];   
-   //   echo"<br>Всего quantity_zakup_new ".$products[$row["product_id"]]." = ".$row["value"]."  ";
-     }  
+  AND order_id=? AND color!='' AND store_id!='' group by product_id,store_id,color";
+//var_dump($sql); var_dump($orderId); die;
+$data = $db::getRows($sql, [$orderId]);
+foreach($data as $row) {
+    $data_up[$row["product_id"]][0][$row["color"]] = ($data_up[$row["product_id"]][0][$row["color"]] ?? 0) + (int)$row["value"];
+    //  $data_up[$row["product_id"]][0][0] +=(int)$row["value"];
+    //   echo"<br>Всего quantity_zakup_new ".$products[$row["product_id"]]." = ".$row["value"]."  ";
+}
      
      
-  $data=$db::getRows("SELECT product_id,sum(value) as value FROM store_orders_fields_data WHERE 
+$sql = "SELECT product_id,sum(value) as value FROM store_orders_fields_data WHERE 
   field_name='quantity_zakup_new' AND value>0
   AND store_id $orderStoresArrayRelation_in
   AND store_id!=''
-  AND order_id=? AND color='' AND store_id!='' group by product_id",[$orderId]);
-     foreach($data as $row) {
-       $data_up[$row["product_id"]][0][0] +=(int)$row["value"];   
-
-     }       
+  AND order_id=? AND color='' AND store_id!='' group by product_id";
+//var_dump($sql); var_dump($orderId); die;
+$data = $db::getRows($sql, [$orderId]);
+foreach($data as $row) {
+    $data_up[$row["product_id"]][0][0] = ($data_up[$row["product_id"]][0][0] ?? 0) + (int)$row["value"];
+}
index c42895eef68c76d8dddd34a6158ddd4a7ff5397f..0270c459294099e13549571d264bb2e81ec45595 100644 (file)
@@ -1,18 +1,20 @@
 <?php
 
-global $whereInProductsId, $orderStoresArrayRelation_in, $date_start_sale;
+global $whereInProductsId, $orderStoresArrayRelation_in, $date_start_sale, $data_up;
 
-$day_sales=7*4;
-$data_up=[];
+$day_sales = 7 * 4;
+$data_up = [];
 if (!empty($date_start_sale)) {
-    $data2 = $db::getRows("SELECT i.product_id, s.store_id_1c as store_id,sum(CASE WHEN s.operation='Продажа' THEN i.quantity ELSE 0 END) as sale_cnt, sum(CASE WHEN s.operation='Возврат' THEN i.quantity ELSE 0 END) as vozvr_cnt
+    $sql = "SELECT i.product_id, s.store_id_1c as store_id,sum(CASE WHEN s.operation='Продажа' THEN i.quantity ELSE 0 END) as sale_cnt, sum(CASE WHEN s.operation='Возврат' THEN i.quantity ELSE 0 END) as vozvr_cnt
 FROM sales as s, sales_products as i 
 WHERE s.id=i.check_id AND  i.product_id  $whereInProductsId
 
 AND s.store_id_1c $orderStoresArrayRelation_in
-AND s.date<='$date_start_sale 00:00:00' AND s.date>='$date_start_sale'::date -interval '$day_sales day' group BY i.product_id, s.store_id_1c ");
+AND s.date<='$date_start_sale 00:00:00' AND s.date>='$date_start_sale'::date -interval '$day_sales day' group BY i.product_id, s.store_id_1c ";
+//    var_dump($sql); die;
+    $data2 = $db::getRows($sql);
     foreach ($data2 as $row2) {
-        $cnt = round(($row2["sale_cnt"] - $row2["vozvr_cnt"]) / 4);
+        $cnt = round((($row2["sale_cnt"] ?? 0)  - ($row2["vozvr_cnt"] ?? 0)) / 4);
         if (!empty($cnt)) {
             $data_up[$row2["product_id"]][$row2["store_id"]][0] = ($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? 0) + $cnt;
             $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $cnt;
index e26d455385f1dcad9197ff9dd29eaaf74b9381a4..7a3a443f54056b5966c5e8412b2498b695d72ab7 100644 (file)
@@ -1,33 +1,39 @@
 <?php
 
-global $productGroupArray, $configGroupProducts, $orderStoresArrayRelation_in, $date_start_division;
+global $data_up, $productGroupArray, $configGroupProducts, $orderStoresArrayRelation_in, $date_start_division;
 
 // пробегаем по каждому типу товара и группируем запросы к БД
-foreach($productGroupArray as $group =>$pArray) {   
-$day_sales=$configGroupProducts[$group]["day_sales"] ?? 0;
-//echo"<br>+++ <h1>$group дней $day_sales</h1> "; 
+foreach($productGroupArray as $group => $pArray) {
+    $day_sales=$configGroupProducts[$group]["day_sales"] ?? 0;
+    //echo"<br>+++ <h1>$group дней $day_sales</h1> ";
 
-//собираем условие по выборке товаров
-$whereInProductsId_in="";
-$j=0;
-foreach($pArray as $prodId) {if($j>0) $whereInProductsId_in .=",";      $whereInProductsId_in .="'$prodId'";   $j++;}  
+    //собираем условие по выборке товаров
+    $whereInProductsId_in="";
+    $j=0;
+    foreach($pArray as $prodId) {
+        if ($j>0) {
+            $whereInProductsId_in .=",";
+        }
+        $whereInProductsId_in .="'$prodId'";
+        $j++;
+    }
 
-if(!empty($whereInProductsId_in)) {      
-$sql = "SELECT i.product_id, sum(CASE WHEN s.operation='Продажа' THEN i.summ ELSE 0 END) as sale, s.store_id_1c as store_id, sum(CASE WHEN s.operation='Возврат' THEN i.summ ELSE 0 END) as vozvr
-FROM sales as s, sales_products as i 
-WHERE s.id=i.check_id 
-AND i.product_id in($whereInProductsId_in) 
-AND s.store_id_1c $orderStoresArrayRelation_in
- AND s.date<='$date_start_division 00:00:00' AND s.date>='$date_start_division'::date -interval '$day_sales day' group BY i.product_id, s.store_id, s.operation, s.store_id_1c";
-//var_dump($sql); die;
-$data2=$db::getRows($sql);
-foreach($data2 as $row2) { 
-$sale=$row2["sale"]-$row2["vozvr"];
-$sale=(int)$sale;
-if(!empty($sale)) {
-$data_up[$row2["product_id"]][$row2["store_id"]][0]=$sale;
-$data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $sale;
+    if (!empty($whereInProductsId_in)) {
+        $sql = "SELECT i.product_id, sum(CASE WHEN s.operation='Продажа' THEN i.summ ELSE 0 END) as sale, s.store_id_1c as store_id, sum(CASE WHEN s.operation='Возврат' THEN i.summ ELSE 0 END) as vozvr
+        FROM sales as s, sales_products as i 
+        WHERE s.id=i.check_id 
+        AND i.product_id in($whereInProductsId_in) 
+        AND s.store_id_1c $orderStoresArrayRelation_in
+         AND s.date<='$date_start_division 00:00:00' AND s.date>='$date_start_division'::date -interval '$day_sales day' group BY i.product_id, s.store_id, s.operation, s.store_id_1c";
+        //var_dump($sql); die;
+        $data2 = $db::getRows($sql);
+        foreach($data2 as $row2) {
+            $sale = ($row2["sale"] ?? 0) - ($row2["vozvr"] ?? 0);
+            $sale = (int)$sale;
+            if(!empty($sale)) {
+                $data_up[$row2["product_id"]][$row2["store_id"]][0] = $sale;
+                $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $sale;
+            }
+        }
+    }
 }
-}
-}
-}
\ No newline at end of file
index 3884e7faaa6d4dabe2584ab0a65735298ed027e8..019ddeef0ee626ec307f72772d38e8343b601108 100644 (file)
@@ -1,35 +1,40 @@
 <?php
 
-global $productGroupArray, $configGroupProducts, $orderStoresArrayRelation_in, $date_start_division;
+global $data_up, $productGroupArray, $configGroupProducts, $orderStoresArrayRelation_in, $date_start_division;
 
 // пробегаем по каждому типу товара и группируем запросы к БД
 foreach($productGroupArray as $group =>$pArray) {
-$day_sales=$configGroupProducts[$group]["day_sales"] ?? 0;
-//echo"<br>+++ <h1>$group дней $day_sales</h1> "; 
+    $day_sales = $configGroupProducts[$group]["day_sales"] ?? 0;
+    //echo"<br>+++ <h1>$group дней $day_sales</h1> ";
 
-//собираем условие по выборке товаров
-$whereInProductsId_in="";
-$j=0;
-foreach($pArray as $prodId) {if($j>0) $whereInProductsId_in .=",";      $whereInProductsId_in .="'$prodId'";   $j++;}  
+    //собираем условие по выборке товаров
+    $whereInProductsId_in="";
+    $j=0;
+    foreach ($pArray as $prodId) {
+        if ($j>0) {
+            $whereInProductsId_in .=",";
+        }
+        $whereInProductsId_in .="'$prodId'";
+        $j++;
+    }
 
-if(!empty($whereInProductsId_in)) {    
-    
-$data2=$db::getRows("SELECT i.product_id, s.store_id_1c as store_id, sum(CASE WHEN s.operation='Продажа' THEN i.quantity ELSE 0 END) as sale_cnt,
-sum(CASE WHEN s.operation='Возврат' THEN i.quantity ELSE 0 END) as vozvr_cnt
-FROM sales as s, sales_products as i 
-WHERE s.id=i.check_id AND  i.product_id  in($whereInProductsId_in)  
-AND s.store_id_1c $orderStoresArrayRelation_in
-AND s.date<='$date_start_division 00:00:00'
-AND s.date>='$date_start_division'::date -interval '$day_sales day' group BY i.product_id, s.store_id_1c, s.operation  ");
-  foreach($data2 as $row2) { 
-   $cnt=$row2["sale_cnt"]-$row2["vozvr_cnt"];
-   $cnt=(int)$cnt;
-    if(!empty($cnt)) {
-      $data_up[$row2["product_id"]][$row2["store_id"]][0]=$cnt;
-      $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $cnt;
-   }
- }
-} 
-
-}
\ No newline at end of file
+    if (!empty($whereInProductsId_in)) {
+        $sql = "SELECT i.product_id, s.store_id_1c as store_id, sum(CASE WHEN s.operation='Продажа' THEN i.quantity ELSE 0 END) as sale_cnt,
+    sum(CASE WHEN s.operation='Возврат' THEN i.quantity ELSE 0 END) as vozvr_cnt
+    FROM sales as s, sales_products as i 
+    WHERE s.id=i.check_id AND  i.product_id  in($whereInProductsId_in)  
+    AND s.store_id_1c $orderStoresArrayRelation_in
+    AND s.date<='$date_start_division 00:00:00'
+    AND s.date>='$date_start_division'::date -interval '$day_sales day' group BY i.product_id, s.store_id_1c, s.operation  ");
+//        var_dump($sql); die;
+        $data2 = $db::getRows($sql);
+        foreach ($data2 as $row2) {
+            $cnt = ($row2["sale_cnt"] ?? 0) - ($row2["vozvr_cnt"] ?? 0);
+            $cnt = (int)$cnt;
+            if (!empty($cnt)) {
+                $data_up[$row2["product_id"]][$row2["store_id"]][0] = $cnt;
+                $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $cnt;
+            }
+        }
+    }
+}
index d6cbd1d2839ea81ccb018ef4686cfbcc5926246a..3d11f083f7e94fe94b43e282d9b68b57576c79ba 100644 (file)
@@ -4,34 +4,37 @@ global $productGroupArray, $configGroupProducts, $whereInProductsId, $orderStore
 
 //массив с товарами из данной закупки разнесенных по категориям
 foreach($productGroupArray as $group =>$pArray) {   
+    //собираем условие по выборке товаров
+    $whereInProductsId_in="";
+    $j=0;
+    foreach($pArray as $prodId) {
+        if ($j>0) {
+            $whereInProductsId_in .=",";
+        }
+        $whereInProductsId_in .="'$prodId'";
+        $j++;
+    }
 
-
-//собираем условие по выборке товаров
-$whereInProductsId_in="";
-$j=0;
-foreach($pArray as $prodId) {
-    
-    if($j>0) $whereInProductsId_in .=",";      $whereInProductsId_in .="'$prodId'";   $j++;}  
-
-if(!empty($whereInProductsId_in)) {   
-$day_sales=$configGroupProducts[$group]["day_sales"] ?? 0; // массив группы товаров с данными за какоц период считать статистику в днях
-}
+    if (!empty($whereInProductsId_in)) {
+        $day_sales = $configGroupProducts[$group]["day_sales"] ?? 0; // массив группы товаров с данными за какой период считать статистику в днях
+    }
 }
 
 if (!empty($date_start_sale)) {
-    $data2 = $db::getRows("SELECT i.product_id, s.store_id_1c as store_id,sum(CASE WHEN s.operation='Продажа' THEN i.summ ELSE 0 END) as sale_cnt, sum(CASE WHEN s.operation='Возврат' THEN i.summ ELSE 0 END) as vozvr_cnt
-FROM sales as s, sales_products as i 
-WHERE s.id=i.check_id AND  
-i.product_id $whereInProductsId
-AND s.store_id_1c $orderStoresArrayRelation_in
-AND s.date<='$date_start_sale 00:00:00' AND s.date>='$date_start_sale'::date -interval '7 day' group BY i.product_id, s.store_id_1c  ");
+    $sql = "SELECT i.product_id, s.store_id_1c as store_id,sum(CASE WHEN s.operation='Продажа' THEN i.summ ELSE 0 END) as sale_cnt, sum(CASE WHEN s.operation='Возврат' THEN i.summ ELSE 0 END) as vozvr_cnt
+    FROM sales as s, sales_products as i 
+    WHERE s.id=i.check_id AND  
+    i.product_id $whereInProductsId
+    AND s.store_id_1c $orderStoresArrayRelation_in
+    AND s.date<='$date_start_sale 00:00:00' AND s.date>='$date_start_sale'::date -interval '7 day' group BY i.product_id, s.store_id_1c  ";
+//    var_dump($sql); die;
+    $data2 = $db::getRows($sql);
     foreach ($data2 as $row2) {
-        $cnt = $row2["sale_cnt"] - $row2["vozvr_cnt"];
+        $cnt = ($row2["sale_cnt"] ?? 0) - ($row2["vozvr_cnt"] ?? 0);
         $cnt = (int)$cnt;
         if (!empty($cnt)) {
             $data_up[$row2["product_id"]][$row2["store_id"]][0] = ($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? 0) + $cnt;
             $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $cnt;
-
             //  echo"<br> sales_amount ".$products[$row2["product_id"]]." ".$row2["store_id"]." $cnt ";
         }
     }
index 0edbca33fc48078e00139f9718d2605c5a91d941..a38e134d0510f021df53883f714fca38ab47dd60 100644 (file)
@@ -2,8 +2,8 @@
 
 global $whereInProductsId, $orderStoresArrayRelation_in, $date_start_sale, $data_up;
 
-$data_up=[];
-$day_sales=7;
+$data_up = [];
+$day_sales = 7;
 
 if (!empty($date_start_sale)) {
     $sql = "SELECT i.product_id, s.store_id_1c as store_id, sum(CASE WHEN s.operation='Продажа' THEN i.quantity ELSE 0 END) as sale_cnt, sum(CASE WHEN s.operation='Возврат' THEN i.quantity ELSE 0 END) as vozvr_cnt
@@ -11,9 +11,10 @@ FROM sales as s, sales_products as i
 WHERE s.id=i.check_id AND  i.product_id  $whereInProductsId
  AND s.store_id_1c $orderStoresArrayRelation_in
 AND s.date<='$date_start_sale 00:00:00' AND s.date>='$date_start_sale'::date -interval '$day_sales day' group BY i.product_id, s.store_id_1c  ";
+//    var_dump($sql); die;
     $data2 = $db::getRows($sql);
     foreach ($data2 as $row2) {
-        $cnt = $row2["sale_cnt"] - $row2["vozvr_cnt"];
+        $cnt = ($row2["sale_cnt"] ?? 0) - ($row2["vozvr_cnt"] ?? 0);
         $cnt = (int)$cnt;
         if (!empty($cnt)) {
             $data_up[$row2["product_id"]][$row2["store_id"]][0] = ($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? 0) + $cnt;
index 30f578cb8f08947e1c9b72bbd0f80bc6de0d9f1f..30da1ec888e79a10aff238a5ac9a102f89af8dad 100644 (file)
@@ -2,17 +2,19 @@
 
 global $whereInProductsId, $orderStoresArrayRelation_in, $date_start_division, $data_up;
 
-$day_sales=7*4;
-$data2=$db::getRows("SELECT i.product_id, s.store_id_1c as store_id,sum(CASE WHEN s.operation='Продажа' THEN i.quantity ELSE 0 END) as sale_cnt, sum(CASE WHEN s.operation='Возврат' THEN i.quantity ELSE 0 END) as vozvr_cnt
+$day_sales = 7*4;
+$sql = "SELECT i.product_id, s.store_id_1c as store_id,sum(CASE WHEN s.operation='Продажа' THEN i.quantity ELSE 0 END) as sale_cnt, sum(CASE WHEN s.operation='Возврат' THEN i.quantity ELSE 0 END) as vozvr_cnt
 FROM sales as s, sales_products as i 
 WHERE s.id=i.check_id AND  i.product_id  $whereInProductsId
 
 AND store_id_1c $orderStoresArrayRelation_in
-AND s.date<='$date_start_division 00:00:00' AND s.date>=('$date_start_division'::date - '$day_sales day'::interval) group BY i.product_id, s.store_id_1c ");
-  foreach($data2 as $row2) { 
-   $cnt=round(($row2["sale_cnt"]-$row2["vozvr_cnt"])/4);
-    if(!empty($cnt)) {
-      $data_up[$row2["product_id"]][$row2["store_id"]][0] =($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? 0) + $cnt;
-      $data_up[$row2["product_id"]][0][0] =($data_up[$row2["product_id"]][0][0] ?? 0) + $cnt;
-   }
- }
+AND s.date<='$date_start_division 00:00:00' AND s.date>=('$date_start_division'::date - '$day_sales day'::interval) group BY i.product_id, s.store_id_1c ";
+//var_dump($sql); die;
+$data2 = $db::getRows($sql);
+foreach($data2 as $row2) {
+    $cnt = round((($row2["sale_cnt"] ?? 0) - ($row2["vozvr_cnt"] ?? 0))/4);
+    if (!empty($cnt)) {
+        $data_up[$row2["product_id"]][$row2["store_id"]][0] = ($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? 0) + $cnt;
+        $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $cnt;
+    }
+}
index c6c6ad884163fc51b9c99cc47df64e40e457bc78..3098fe30a3df81479c265c644e399d6d084d6148 100644 (file)
@@ -1,30 +1,34 @@
 <?php
 
-global $whereInProductsId;
+global $whereInProductsId, $data_up;
 
 /* scheduled_delivery_cnt
 «Плановая поставка» новая ячейка
 Берем закупки со статусом «Товар в пути» - с этим товаром - на каждый магазин сколько заказа магазин из ячееки «Заказ закупщика NEW»  AND date_start <='$date_start_sale' AND date_start>='$date_start_sale' -interval 27 day
 */
 
-$data=$db::getRows("SELECT id FROM store_orders WHERE status=5");
+$sql = "SELECT id FROM store_orders WHERE status=5";
+//var_dump($sql); die;
+$data = $db::getRows($sql);
 $whereInOrderId="";
 $i=0;
 foreach($data as $row) {
-  $whereInOrderId .=" '".$row["id"]."' ";
-    if($i<(count($data)-1)) $whereInOrderId .=" , ";
-     $i++;   
+    $whereInOrderId .= " '" . $row["id"] . "' ";
+    if ($i<(count($data)-1)) {
+        $whereInOrderId .= " , ";
+    }
+    $i++;
 }
 
 if(!empty($whereInOrderId) && $whereInProductsId != " in ()") {
 
-$sql = "SELECT product_id, store_id, value FROM store_orders_fields_data WHERE 
+    $sql = "SELECT product_id, store_id, value FROM store_orders_fields_data WHERE 
 order_id IN ($whereInOrderId) AND product_id $whereInProductsId 
 AND field_name='quantity_zakup_new' AND color='' AND value>0 group by product_id, store_id, value";
-$data=$db::getRows($sql);
-  foreach($data as $row) {
-  $data_up[$row["product_id"]][$row["store_id"]]["0"]=$row["value"];
-  $data_up[$row["product_id"]][0]["0"] = ($data_up[$row["product_id"]][0]["0"] ?? 0) + $row["value"];     // echo"<br> ".$row["product_id"]." =  store_id=".$row["store_id"]."  ".$row["value"]."";
-  
-  }
-}
\ No newline at end of file
+//    var_dump($sql); die;
+    $data=$db::getRows($sql);
+    foreach($data as $row) {
+        $data_up[$row["product_id"]][$row["store_id"]]["0"] = $row["value"];
+        $data_up[$row["product_id"]][0]["0"] = ($data_up[$row["product_id"]][0]["0"] ?? 0) + $row["value"];     // echo"<br> ".$row["product_id"]." =  store_id=".$row["store_id"]."  ".$row["value"]."";
+    }
+}
index 32bb3944a24da862accd8b058d6ac3a40453d5ea..104ba3dc442f8df6139bf3dd16ac5423f877d681 100644 (file)
@@ -1,73 +1,68 @@
-<?
+<?php
 
- $scoreArr=[];
-$dataF=$db::getRows("SELECT  product_id, store_id, value
+global $orderId, $data_up, $orderStoresArrayRelation_in, $products, $orderStoresArrayRelation, $productsColorsArray;
+
+$scoreArr = [];
+$sql = "SELECT  product_id, store_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND color=''
 AND store_id!=''
 AND field_name IN ('score')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $scoreArr[$row["product_id"]][$row["store_id"]]=(int)$row["value"];
+    $scoreArr[$row["product_id"]][$row["store_id"]] = (int)$row["value"];
 }
- //пробегаемся по всем продуктам 
+
+//пробегаемся по всем продуктам
 foreach($products as $productId => $name) {
-//  echo"<br> <h2>$name</h2>";
-$scoreall=0; $cnt=0;
-  foreach($orderStoresArrayRelation as $storeId ) {  
-    if($scoreArr[$productId][$storeId]>0) {  
-    $scoreall += $scoreArr[$productId][$storeId];
-    $cnt++;
+    //  echo"<br> <h2>$name</h2>";
+    $scoreall = 0;
+    $cnt = 0;
+    foreach($orderStoresArrayRelation as $storeId ) {
+        if (($scoreArr[$productId][$storeId] ?? 0) > 0) {
+            $scoreall += $scoreArr[$productId][$storeId];
+            $cnt++;
+        }
+    }
+    if ($scoreall > 0) {
+        $data_up[$productId][0][0] = round($scoreall / $cnt,2) ;
     }
-  }
-if($scoreall>0) $data_up[$productId][0][0] =round($scoreall/$cnt,2) ;   
-
-
 }
 
-
-
-
- $scoreArr=[];
-$dataF=$db::getRows("SELECT  product_id, store_id, value,color
+$scoreArr=[];
+$sql = "SELECT  product_id, store_id, value,color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND store_id $orderStoresArrayRelation_in
 AND color!=''
 AND store_id!=''
 AND field_name IN ('score')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-  $scoreArr[$row["product_id"]][$row["store_id"]][$row["color"]]=(int)$row["value"];
+    $scoreArr[$row["product_id"]][$row["store_id"]][$row["color"]] = (int)$row["value"];
 }
- //пробегаемся по всем продуктам 
-foreach($products as $productId => $name) {
-//  echo"<br> <h2>$name</h2>";
-
-   foreach($productsColorsArray[$productId] as $color) {
-     $color=trim($color);
-     $scoreall=0; $cnt=0;
-     foreach($orderStoresArrayRelation as $storeId ) {  
-      
-       if($scoreArr[$productId][$storeId][$color]>0) {  
-         $scoreall += $scoreArr[$productId][$storeId][$color];
-          $cnt++;
-       }
-      }
-      if($scoreall>0) $data_up[$productId][0][$color]=round($scoreall/$cnt,2) ;   
 
+//пробегаемся по всем продуктам
+foreach($products as $productId => $name) {
+    //  echo"<br> <h2>$name</h2>";
+    foreach($productsColorsArray[$productId] as $color) {
+         $color = trim($color);
+         $scoreall = 0;
+         $cnt = 0;
+         foreach($orderStoresArrayRelation as $storeId ) {
+            if ($scoreArr[$productId][$storeId][$color] > 0) {
+                $scoreall += $scoreArr[$productId][$storeId][$color];
+                $cnt++;
+            }
+        }
+        if ($scoreall > 0) {
+            $data_up[$productId][0][$color] = round($scoreall/$cnt,2);
+        }
     }
-
-
 }
-
-   
-
-
-
-
-
-
index 99c8e426840e5a4b77402eb70025d24f4a636e1a..2aa786059c591360dc17d3fbc92fdf97841cf572 100644 (file)
@@ -1,19 +1,23 @@
 <?php
 
-global $orderId, $products, $productsColorsArray;
+global $orderId, $products, $productsColorsArray, $data_up, $FiledsDataArray;
 
-$FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value, color
+$FiledsDataArray = [];
+$sql = "SELECT field_name, product_id, value, color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 
 AND store_id=''
 AND field_name IN ('quantity_warehouseman_fact','division_summ')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-    if(!$row["color"]) $row["color"]=0;
-     $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]] =
-         ($FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]] ?? 0) + (int)$row["value"];
+    if (!$row["color"]) {
+        $row["color"]=0;
+    }
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]] =
+        ($FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]] ?? 0) + (int)$row["value"];
 }
 
 
@@ -21,9 +25,8 @@ foreach($dataF as $row) {
 foreach($products ?? [] as $productId => $nameProduct) {
     // echo"<br>$nameProduct ".$FiledsDataArray["quantity_warehouseman_fact"][$productId][0] ." -  ".$FiledsDataArray["division_store_summ"][$productId][0]."";
     $data_up[$productId][0][0] = ($FiledsDataArray["quantity_warehouseman_fact"][$productId][0] ?? 0) -  ($FiledsDataArray["division_summ"][$productId][0] ?? 0);
-
     foreach($productsColorsArray[$productId] ?? [] as $color) {
-        $color=trim($color);
+        $color = trim($color);
         $data_up[$productId][0][$color] = ($FiledsDataArray["quantity_warehouseman_fact"][$productId][$color] ?? 0) - ($FiledsDataArray["division_summ"][$productId][$color] ?? 0);
     }
-}
\ No newline at end of file
+}
index 77b13ffca3c5f9ffaa40d0594b5c664e51162e69..dd946d99a9680dcbae503f200ccf7b3a3af52eb8 100644 (file)
@@ -1,47 +1,44 @@
-<?
+<?php
 
+global $orderId, $data_up, $FiledsDataArray, $products;
 
 $FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value
+$sql = "SELECT field_name, product_id, value
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND color=''
 AND store_id=''
 AND field_name IN ('quantity_warehouseman_fact','division_store_summ')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-     $FiledsDataArray[$row["field_name"]][$row["product_id"]][0] =(int)$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][0] = (int)$row["value"];
 }
 
-
 //echo"<h1>Storehouse_balance</h1>";
 foreach($products as $productId => $nameProduct) {
-         $data_up[$productId][0][0]=$FiledsDataArray["quantity_warehouseman_fact"][$productId][0] -  $FiledsDataArray["division_store_summ"][$productId][0];
+    $data_up[$productId][0][0] = ($FiledsDataArray["quantity_warehouseman_fact"][$productId][0] ?? 0) - ($FiledsDataArray["division_store_summ"][$productId][0] ?? 0);
 } 
 
-
-
-
-$FiledsDataArray=[];
-$dataF=$db::getRows("SELECT field_name, product_id, value, color
+$FiledsDataArray= [];
+$sql = "SELECT field_name, product_id, value, color
 FROM store_orders_fields_data WHERE 
 order_id=? 
 AND color!=''
 AND store_id=''
 AND field_name IN ('quantity_warehouseman_fact','division_store_summ')
-AND value!=0",[$orderId]);
+AND value!=0";
+//var_dump($sql); var_dump($orderId); die;
+$dataF = $db::getRows($sql, [$orderId]);
 foreach($dataF as $row) { 
-     $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]] =(int)$row["value"];
+    $FiledsDataArray[$row["field_name"]][$row["product_id"]][$row["color"]] = (int)$row["value"];
 }
 
-
 //echo"<h1>Storehouse_balance</h1>";
 foreach($products as $productId => $nameProduct) {
-          foreach($productsColorsArray[$productId] ?? [] as $color) {
-         $color=trim($color);  
-         $data_up[$productId][0][$color]=$FiledsDataArray["quantity_warehouseman_fact"][$productId][$color] -  $FiledsDataArray["division_store_summ"][$productId][$color];
-         } 
-
-} 
-
+    foreach($productsColorsArray[$productId] ?? [] as $color) {
+        $color = trim($color);
+        $data_up[$productId][0][$color] = ($FiledsDataArray["quantity_warehouseman_fact"][$productId][$color] ?? 0) - ($FiledsDataArray["division_store_summ"][$productId][$color] ?? 0);
+    }
+}
index d27dfd50e9b8059604f60baee36b23b4babb2099..841b10c050669488ee7d0e3f8eb01a56278083c6 100644 (file)
@@ -3,19 +3,21 @@
 global $orderStoresArrayRelation_in, $whereInProductsId, $date_start_sale, $data_up;
 
 //списания за 7 дней- недельное списание от даты старта / 4 = среднее за неделю
-$periodDaysStats=7;
+$periodDaysStats = 7;
 if(!empty($orderStoresArrayRelation_in) && !empty($date_start_sale)) {
-$data2=$db::getRows("SELECT p.product_id,sum(p.quantity) as cnt, w.store_id
-FROM write_offs as w, write_offs_products as p 
-WHERE p.write_offs_id=w.id  AND w.type='Брак' 
-AND p.product_id $whereInProductsId 
-AND w.store_id $orderStoresArrayRelation_in
-AND w.date<='$date_start_sale 00:00:00' AND w.date>='$date_start_sale'::date -interval '$periodDaysStats day' group BY p.product_id,w.store_id");
- foreach($data2 as $row2)   { 
-  $a=round($row2["cnt"]);   
-   if(!empty($a)) {
-   $data_up[$row2["product_id"]][$row2["store_id"]][0] = ($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? 0) + $a;
-   $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $a;
- }
- }
- }
\ No newline at end of file
+    $sql = "SELECT p.product_id,sum(p.quantity) as cnt, w.store_id
+    FROM write_offs as w, write_offs_products as p 
+    WHERE p.write_offs_id=w.id  AND w.type='Брак' 
+    AND p.product_id $whereInProductsId 
+    AND w.store_id $orderStoresArrayRelation_in
+    AND w.date<='$date_start_sale 00:00:00' AND w.date>='$date_start_sale'::date -interval '$periodDaysStats day' group BY p.product_id,w.store_id";
+    //var_dump($sql); die;
+    $data2 = $db::getRows($sql);
+    foreach($data2 as $row2) {
+        $a = round($row2["cnt"] ?? 0);
+        if(!empty($a)) {
+            $data_up[$row2["product_id"]][$row2["store_id"]][0] = ($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? 0) + $a;
+            $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $a;
+        }
+    }
+}
\ No newline at end of file
index 4453c0dd426aac5e758c38d05e96dbbca5356d3c..836f047047b8ef874d6e3f271ce5dfd5886c569a 100644 (file)
@@ -13,12 +13,13 @@ AND p.product_id $whereInProductsId
 AND w.store_id $orderStoresArrayRelation_in
 AND w.date<='$date_start_sale 00:00:00' 
 AND w.date>='$date_start_sale'::date -interval '$periodDaysStats day' group BY p.product_id,w.store_id";
-    $data2=$db::getRows($sql);
-    foreach($data2 as $row2) {
-        $a = round($row2["cnt"]/4);
+//    var_dump($sql); die;
+    $data2 = $db::getRows($sql);
+    foreach ($data2 as $row2) {
+        $a = round(($row2["cnt"] ?? 0)/4);
         if(!empty($a)) {
             $data_up[$row2["product_id"]][$row2["store_id"]][0] = $a;
             $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $a;
         }
     }
-}
\ No newline at end of file
+}
index abf89658cbbb54293fd39d47531eea2bf9242b39..df5189d46c293f540705bd862e85f55c5f1041b8 100644 (file)
@@ -3,7 +3,7 @@
 global $orderStoresArrayRelation_in, $whereInProductsId, $date_start_sale;
 
 //списания за 4 недели среднее - 4-х недельное списание от даты старта / 4 = среднее за неделю в рублях
-$periodDaysStats=28;
+$periodDaysStats = 28;
 if(!empty($orderStoresArrayRelation_in) && !empty($date_start_sale)) {
     $sql = "SELECT p.product_id,p.summ, w.store_id
 FROM write_offs as w, write_offs_products as p 
@@ -12,9 +12,10 @@ AND p.product_id $whereInProductsId
 AND w.store_id $orderStoresArrayRelation_in
 AND w.date<='$date_start_sale 00:00:00' 
 AND w.date>='$date_start_sale'::date -interval '$periodDaysStats day' group BY p.product_id,w.store_id, p.summ";
-    $data2=$db::getRows($sql);
+//    var_dump($sql); die;
+    $data2 = $db::getRows($sql);
     foreach($data2 as $row2)   {
-        $a=round ($row2["summ"]/4) ;
+        $a = round(($row2["summ"] ?? 0) / 4);
         if(!empty($a)) {
             $data_up[$row2["product_id"]][$row2["store_id"]][0] = $a;
             $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $a;
index 27ee3d6587bad13b2b75dd98c4bc940fc9791235..709a07bdbb876a075ef4f745df0f3b870ba83ade 100644 (file)
@@ -2,19 +2,28 @@
 
 global $productGroupArray, $configGroupProducts, $orderStoresArrayRelation_in, $data_up;
 
-foreach($productGroupArray as $group =>$pArray) {
-  $periodDaysStats=$configGroupProducts[$group]["day_write_offs"] ?? 0;
-   //echo"<br>+++  <h1>Списание $group дней $periodDaysStats</h1> "; 
-  //собираем условие по выборке товаров
-  $whereInProductsId_in="";
-  $j=0;
- foreach($pArray as $prodId) {if($j>0) $whereInProductsId_in .=",";      $whereInProductsId_in .="'$prodId'";   $j++;}  
+foreach($productGroupArray as $group => $pArray) {
+    $periodDaysStats = $configGroupProducts[$group]["day_write_offs"] ?? 0;
+    //echo"<br>+++  <h1>Списание $group дней $periodDaysStats</h1> ";
+    //собираем условие по выборке товаров
+    $whereInProductsId_in="";
+    $j=0;
+    foreach ($pArray as $prodId) {
+        if ($j>0) {
+            $whereInProductsId_in .= ",";
+        }
+        $whereInProductsId_in .= "'$prodId'";
+        $j++;
+    }
 
-  if(!empty($whereInProductsId_in)) {     
-    if($periodDaysStats==7) $periodDaysStats_where=14;
-     else $periodDaysStats_where=$periodDaysStats;
-    
-     $date_start_sale2=date("Y-m-d");
+    if (!empty($whereInProductsId_in)) {
+        if ($periodDaysStats==7) {
+            $periodDaysStats_where = 14;
+        } else {
+            $periodDaysStats_where = $periodDaysStats;
+        }
+
+        $date_start_sale2 = date("Y-m-d");
         $sql = "SELECT p.product_id,sum(c.quantity) as cnt, w.store_id, c.comment_id
         FROM write_offs as w, write_offs_products as p,  write_offs_comments as c
         WHERE p.write_offs_id=w.id  
@@ -26,11 +35,13 @@ foreach($productGroupArray as $group =>$pArray) {
         AND w.date<='$date_start_sale2 00:00:00' 
         AND w.date>='$date_start_sale2'::date -interval '$periodDaysStats_where day'
         group BY p.product_id,w.store_id, c.comment_id";
-//    var_dump($sql); die;
-     $data2=$db::getRows($sql);
-     foreach($data2 as $row2) {
-            $a=$row2["comment_id"]."=".$row2["cnt"]."шт. ";  
-           if(!empty($a))  $data_up[$row2["product_id"]][$row2["store_id"]][0] .=$a;
-     }
-  }
+//        var_dump($sql); die;
+        $data2 = $db::getRows($sql);
+        foreach($data2 as $row2) {
+            $a = ($row2["comment_id"] ?? 0) . "=" . ($row2["cnt"] ?? 0) . "шт. ";
+            if (!empty($a)) {
+                $data_up[$row2["product_id"]][$row2["store_id"]][0] = ($data_up[$row2["product_id"]][$row2["store_id"]][0] ?? '') .$a;
+            }
+        }
+    }
 }
\ No newline at end of file
index 6ac851e37fee6a628d53484573c493abb9877b04..40ca9013122974aac3d0eb3e15f9a9f8ff74d1d7 100644 (file)
@@ -1,33 +1,39 @@
 <?php
 
-global $productGroupArray, $configGroupProducts, $orderStoresArrayRelation_in, $date_start_division;
+global $data_up, $productGroupArray, $configGroupProducts, $orderStoresArrayRelation_in, $date_start_division;
 
 // пробегаем по каждому типу товара и группируем запросы к БД
-foreach($productGroupArray as $group =>$pArray) {   
-$periodDaysStats=$configGroupProducts[$group]["day_write_offs"] ?? '0';
-//echo"<br>+++ <h1>$group дней $periodDaysStats</h1> "; 
+foreach($productGroupArray as $group => $pArray) {
+    $periodDaysStats = $configGroupProducts[$group]["day_write_offs"] ?? '0';
+    //echo"<br>+++ <h1>$group дней $periodDaysStats</h1> ";
 
-//собираем условие по выборке товаров
-$whereInProductsId_in="";
-$j=0;
-foreach($pArray as $prodId) {if($j>0) $whereInProductsId_in .=",";      $whereInProductsId_in .="'$prodId'";   $j++;}  
+    //собираем условие по выборке товаров
+    $whereInProductsId_in="";
+    $j=0;
+    foreach ($pArray as $prodId) {
+        if ($j>0) {
+            $whereInProductsId_in .= ",";
+        }
+        $whereInProductsId_in .= "'$prodId'";
+        $j++;
+    }
 
-if(!empty($whereInProductsId_in)) {      
- $sql = "SELECT p.product_id,sum(p.quantity) as cnt, w.store_id
- FROM write_offs as w, write_offs_products as p 
- WHERE p.write_offs_id=w.id  AND w.type='Брак' 
- AND   p.product_id in($whereInProductsId_in) 
- AND w.store_id $orderStoresArrayRelation_in
- AND w.date<='$date_start_division 00:00:00' AND w.date>='$date_start_division'::date -interval '$periodDaysStats day' group BY p.product_id,w.store_id";
-// var_dump($sql); die;
-$data2=$db::getRows($sql);
-$valAll=0;
- foreach($data2 as $row2) { 
- $a=ceil($row2["cnt"]);   
if(!empty($a)) {
-   $data_up[$row2["product_id"]][$row2["store_id"]][0]=$a;
-     $data_up[$row2["product_id"]][0][0] +=$a; 
-  }
- }
-}
+    if(!empty($whereInProductsId_in)) {
       $sql = "SELECT p.product_id,sum(p.quantity) as cnt, w.store_id
       FROM write_offs as w, write_offs_products as p 
       WHERE p.write_offs_id=w.id  AND w.type='Брак' 
       AND   p.product_id in($whereInProductsId_in) 
       AND w.store_id $orderStoresArrayRelation_in
       AND w.date<='$date_start_division 00:00:00' AND w.date>='$date_start_division'::date -interval '$periodDaysStats day' group BY p.product_id,w.store_id";
+//        var_dump($sql); die;
+        $data2 = $db::getRows($sql);
+        $valAll = 0;
+        foreach($data2 as $row2) {
+            $a = ceil($row2["cnt"]);
           if (!empty($a)) {
+                $data_up[$row2["product_id"]][$row2["store_id"]][0] = $a;
+                $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $a;
+            }
       }
+    }
 }
\ No newline at end of file
index 2e390f73be3585e9b948520369cfd71acb20f47d..00ba8cf2b537176bd99a8c4a2ccb75bfcd12e2bb 100644 (file)
@@ -1,11 +1,11 @@
 <?php
 
-global $orderStoresArrayRelation_in, $date_start_sale, $whereInProductsId;
+global $data_up, $orderStoresArrayRelation_in, $date_start_sale, $whereInProductsId;
 //списания за 7 дней- недельное списание от даты старта / 4 = среднее за неделю
 
 
 if(!empty($orderStoresArrayRelation_in) and !empty($date_start_sale) and !empty($products)) {
-    $periodDaysStats=7;
+    $periodDaysStats = 7;
 
     $sql = "SELECT p.product_id, p.summ, w.store_id
 FROM write_offs as w, write_offs_products as p 
@@ -14,9 +14,9 @@ AND p.product_id  $whereInProductsId
 AND w.store_id $orderStoresArrayRelation_in
 AND w.date<='$date_start_sale 00:00:00' AND w.date>='$date_start_sale'::date -interval '$periodDaysStats day' group BY p.product_id,w.store_id, p.summ";
 //    var_dump($sql); die;
-    $data2=$db::getRows($sql);
+    $data2 = $db::getRows($sql);
     foreach($data2 as $row2)   {
-        $a=$row2["summ"];
+        $a = $row2["summ"] ?? 0;
         $data_up[$row2["product_id"]][$row2["store_id"]][0] = $a;
         $data_up[$row2["product_id"]][0][0] = ($data_up[$row2["product_id"]][0][0] ?? 0) + $a;
     }