]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
orders logist table
authorAlexander Smirnov <fredeom@mail.ru>
Fri, 19 Apr 2024 13:39:51 +0000 (16:39 +0300)
committerAlexander Smirnov <fredeom@mail.ru>
Fri, 19 Apr 2024 13:39:51 +0000 (16:39 +0300)
erp24/controllers/OrdersController.php
erp24/modul/orders/logist_table.php
erp24/modul/orders/logist_table_day.php
erp24/views/orders/logist_table.php [new file with mode: 0644]
erp24/views/orders/logist_table_day.php [new file with mode: 0644]

index 4b19610504c4af143ccf66be5dc1f738bf5df288..7bb3e9f363e05eacc035b3c47dc406aaa4584712 100644 (file)
@@ -35,6 +35,14 @@ class OrdersController extends Controller
         return $this->render('amo_checks');
     }
 
+    public function actionLogist_table() {
+        return $this->render('logist_table');
+    }
+
+    public function actionLogist_table_day() {
+        return $this->render('logist_table_day');
+    }
+
     public function actionDelivery2()
     {
         if (!empty($_REQUEST["umoup"])) {
index e1f7de7583794293ef170dc60b0212fff73dcee9..cf7b2790d85b04c24c663d701f7a13b316eeb266 100644 (file)
@@ -1,12 +1,8 @@
-<?
-include_once("startup.php");
-include_once("inc/db.php");
-include_once("inc/base_new.php");
-include_once("inc/design_new.php");
-include_once("inc/db2.php");
-
-
-include"templates/top.php";
+<?php
+include_once(dirname(__DIR__, 2) . "/startup.php");
+include_once(dirname(__DIR__, 2) . "/inc/db.php");
+include_once(dirname(__DIR__, 2) . "/inc/base_new.php");
+include_once(dirname(__DIR__, 2) . "/inc/design_new.php");
 
 $date1=date("Y-m-d",time()-86400*7);
 $date2=date("Y-m-d",time());
@@ -27,21 +23,24 @@ $express=array("express");
 
 
 
- $data= $db2::getRows("SELECT * FROM orders_amo  WHERE status_id=142 AND delivery_date>='$date1' AND delivery_date<='$date2'
+ $data= $db::getRows("SELECT * FROM orders_amo  WHERE status_id=142 AND delivery_date>='$date1' AND delivery_date<='$date2'
  order by delivery_date desc ");
+$print = [];
+$store_itog = [];
+$taxi = 0;
  foreach ($data as $row) {
 
-$print[$row["delivery_date"]]["cnt"]=$print[$row["delivery_date"]]["cnt"]+1;
-$print[$row["delivery_date"]]["price"]=$print[$row["delivery_date"]]["price"]+$row["price"];
-$print[$row["delivery_date"]]["delivery_time"][$row["delivery_time"]]=$print[$row["delivery_date"]]["delivery_time"][$row["delivery_time"]]+1;
+$print[$row["delivery_date"]]["cnt"]=($print[$row["delivery_date"]]["cnt"] ?? 0) + 1;
+$print[$row["delivery_date"]]["price"]=($print[$row["delivery_date"]]["price"] ?? 0) + $row["price"];
+$print[$row["delivery_date"]]["delivery_time"][$row["delivery_time"]]=($print[$row["delivery_date"]]["delivery_time"][$row["delivery_time"]] ?? 0) +1;
 
-$print[$row["delivery_date"]]["delivery"][$row["delivery"]]=$print[$row["delivery_date"]]["delivery"][$row["delivery"]]+1;
-$print[$row["delivery_date"]]["price_dostavka"]=$print[$row["delivery_date"]]["price_dostavka"]+$row["price_dostavka"];
-$print[$row["delivery_date"]]["price_dostavka_zatrat"]=$print[$row["delivery_date"]]["price_dostavka_zatrat"]+$row["price_dostavka_zatrat"];
+$print[$row["delivery_date"]]["delivery"][$row["delivery"]]=($print[$row["delivery_date"]]["delivery"][$row["delivery"]] ?? 0)+1;
+$print[$row["delivery_date"]]["price_dostavka"]=($print[$row["delivery_date"]]["price_dostavka"] ?? 0)+$row["price_dostavka"];
+$print[$row["delivery_date"]]["price_dostavka_zatrat"]=($print[$row["delivery_date"]]["price_dostavka_zatrat"] ?? 0)+$row["price_dostavka_zatrat"];
 
-$print[$row["delivery_date"]]["courier"][$row["courier"]]=$print[$row["delivery_date"]]["courier"][$row["courier"]]+1;
+$print[$row["delivery_date"]]["courier"][$row["courier"]]=($print[$row["delivery_date"]]["courier"][$row["courier"]] ?? 0)+1;
 $print[$row["delivery_date"]]["courier_time"][$row["courier"]][$row["delivery_time"]]=
-$print[$row["delivery_date"]]["courier_time"][$row["courier"]][$row["delivery_time"]]+1;
+    ($print[$row["delivery_date"]]["courier_time"][$row["courier"]][$row["delivery_time"]] ?? 0)+1;
 
 
 
@@ -60,13 +59,13 @@ $print[$row["delivery_date"]]["courier_period"][$row["courier"]]["express"]=$pri
  }
 if($row["delivery"]=="Такси") $taxi++; 
 
-$store_itog[$row["store_id"]]=$store_itog[$row["store_id"]]+$row["price"];
+$store_itog[$row["store_id"]]=($store_itog[$row["store_id"]] ?? 0)+$row["price"];
 
 
 $kid="";
 if(!empty($row["courier"])) $kid=$row["courier"]; elseif($row["delivery"]=="Доставка") $kid="<font color=red>--курьер не указан--</font>"; 
-$print[$row["delivery_date"]]["orders"] .="<br> ".$row["delivery"]."  $kid ".$row["id"]." ".$row["amo_id"]." ".$row["delivery_time"]."
-".$row["delivery_adress"]." ".$row["courier"]." ".$row["text_order"]."    ";
+$print[$row["delivery_date"]]["orders"] =($print[$row["delivery_date"]]["orders"] ?? '') . "<br> ".$row["delivery"]."  $kid ".$row["id"]." ".$row["amo_id"]." ".$row["delivery_time"]."
+".$row["delivery_adress"]." ".$row["courier"]." ".($row["text_order"] ?? '')."    ";
  
 }
 echo"<table class=\"table\">
@@ -78,28 +77,29 @@ echo"<table class=\"table\">
 </tr></thead><tbody>";
 
 $td=1;
+$all_itog = 0;
 foreach($print as $date => $massiv) {
   $all_itog=$print[$date]["price"]+$all_itog; 
 echo"<tr onclick=\"$('#d$td').toggle();\">
 <td><a href=\"/orders/logist_table_day/?delivery_date=".$date."\" target=new class=\"btn btn-success btn-lg\">".$date."</a></td>
 <td><span class=\"btn btn-outline-info\">".$print[$date]["price"]."</span>руб.<br>
 Стоимость для клиентов <span class=\"btn bnt-sm btn-outline-light\">".$print[$date]["price_dostavka"]."</span> руб<br>
-Заплатили курьерам <span class=\"btn bnt-sm btn-outline-light\">".$print[$date]["price_dostavka_zatrat"]."</span><br>
-Стоимость для клиентов повторных <span class=\"btn bnt-sm btn-outline-light\">".$print[$date]["price_dostavka_povtor"]."</span> руб<br>
-Залплатили курьерам <span class=\"btn bnt-sm btn-outline-light\">".$print[$date]["price_dostavka_povtor_zatrat"]."</span><br>
-</td><td>ночные ".$print[$date]["night"].""; 
+Заплатили курьерам <span class=\"btn bnt-sm btn-outline-light\">".($print[$date]["price_dostavka_zatrat"] ?? '')."</span><br>
+Стоимость для клиентов повторных <span class=\"btn bnt-sm btn-outline-light\">".($print[$date]["price_dostavka_povtor"]??'')."</span> руб<br>
+Залплатили курьерам <span class=\"btn bnt-sm btn-outline-light\">".($print[$date]["price_dostavka_povtor_zatrat"]??'')."</span><br>
+</td><td>ночные ".($print[$date]["night"]??'')."";
 
-$summa_night=$print[$date]["night"]*300;
-$summa_express=$print[$date]["express"]*590;
-$summa_day=$print[$date]["day"]*300;
+$summa_night=($print[$date]["night"] ?? 0)*300;
+$summa_express=($print[$date]["express"] ?? 0)*590;
+$summa_day=($print[$date]["day"] ?? 0)*300;
 
-$summa_night_courier=$print[$date]["night"]*250;
-$summa_express_courier=$print[$date]["express"]*250;
-$summa_day_courier=$print[$date]["day"]*200;
+$summa_night_courier=($print[$date]["night"] ?? 0)*250;
+$summa_express_courier=($print[$date]["express"] ?? 0)*250;
+$summa_day_courier=($print[$date]["day"] ?? 0)*200;
 
 echo" = $summa_night руб (курьерам $summa_night_courier)<br>
-дневные ".$print[$date]["day"]."  = $summa_day руб  (курьерам $summa_day_courier руб.)<br>
-Экспресс ".$print[$date]["express"]."  = $summa_express руб  (курьерам $summa_express_courier руб.)<br>";
+дневные ".($print[$date]["day"]??'')."  = $summa_day руб  (курьерам $summa_day_courier руб.)<br>
+Экспресс ".($print[$date]["express"]??'')."  = $summa_express руб  (курьерам $summa_express_courier руб.)<br>";
 
 /*
 arsort($print[$date]["courier"]);
@@ -139,11 +139,13 @@ echo"</tbody>
 
 if(!empty($date1)) {
 
-$data= $db::getRows("SELECT *, sum(price_dostavka) as price_dostavka, sum(price_dostavka_zatrat) as price_dostavka_zatrat,
+$sql = "SELECT *, sum(price_dostavka) as price_dostavka, sum(price_dostavka_zatrat) as price_dostavka_zatrat,
  sum(price_dostavka_povtor) as price_dostavka_povtor,  sum(price_dostavka_povtor_zatrat) as price_dostavka_povtor_zatrat
  
  FROM orders_amo  WHERE status_id=142  AND delivery_date>='$date1' AND delivery_date<='$date2' 
- group by delivery_date order by delivery_date desc  LIMIT 300000");
+ group by delivery_date, id order by delivery_date desc  LIMIT 300000";
+//var_dump($sql); die; // TODO: why id in group by?
+$data= $db::getRows($sql);
  echo"<table class=\"table table-striped\"><thead><tr><th>Дата</th><th>Стоимость с клиенты</th><th>Затраты на логистику</th>
 <th>Доход</th>
  
@@ -163,8 +165,8 @@ echo "<tr><td>".$row["delivery_date"]."</td>
 <td>".$dohod_day."</td>
 </tr>
 ";
-$price_dostavka_all=$price_dostavka_all+$p1;
-$price_dostavka_zatrat_all=$price_dostavka_zatrat_all+$p2;
+$price_dostavka_all=($price_dostavka_all??0)+$p1;
+$price_dostavka_zatrat_all=($price_dostavka_zatrat_all??0)+$p2;
 }
 $dohod=$price_dostavka_all-$price_dostavka_zatrat_all;
 echo"
@@ -175,7 +177,7 @@ echo"
 <b>По магазинам</b> ";
 $store_arr[""]="-не указан-"; 
 $store_arr[0]="-не указан-"; 
-$data2 = $db::getRows("SELECT id, adress_amo FROM city_store  WHERE 1");
+$data2 = $db::getRows("SELECT id, adress_amo FROM city_store  WHERE 1 = 1");
 foreach ($data2 as $row2) $store_arr[$row2["id"]]=$row2["adress_amo"]; 
 
 
@@ -190,4 +192,4 @@ echo"<tr><td>".$store_arr[$store_id]."</td><td>$sum руб</td><td>".round($perc
 echo"</table>";
 }
 
-include"templates/bottom.php";
+
index bcf548e9568087c915f3f88b92315148dc49991c..929af4424c15d0f92dab2cdc99ea478923abaafe 100644 (file)
@@ -1,13 +1,12 @@
-<?
-include_once("startup.php");
-include_once("inc/db.php");
-include_once("inc/base_new.php");
-include_once("inc/design_new.php");
-include_once("inc/uni.php");
+<?php
+include_once(dirname(__DIR__, 2) . "/startup.php");
+include_once(dirname(__DIR__, 2) . "/inc/db.php");
+include_once(dirname(__DIR__, 2) . "/inc/base_new.php");
+include_once(dirname(__DIR__, 2) . "/inc/design_new.php");
+include_once(dirname(__DIR__, 2) . "/inc/uni.php");
 
-include"templates/top.php";
+global $get, $where, $z;
 
-include_once("inc/db2.php");
 $courier_id="-1";
 if(!empty($_REQUEST["delivery_date"])) {
 $delivery_date=htmlentities($_REQUEST["delivery_date"]); 
@@ -50,7 +49,7 @@ $json["custom_fields_values"][]=array("field_id"=>$field_id,"values"=>array(arra
 $json2[]=$json; 
 
 $sql="UPDATE orders_amo SET amo_id='$amo_id' $sql_up WHERE id='$lidid'"; 
-$db2::sql($sql);
+$db::sql($sql);
  echo"<br>$sql"; 
 }
 }
@@ -72,11 +71,11 @@ mess("Данные обновлены");
 
 }
 
-//$data = $db2::getRows("SELECT id,name FROM admin  WHERE group_id=27 order by name ASC");
+//$data = $db::getRows("SELECT id,name FROM admin  WHERE group_id=27 order by name ASC");
 // foreach ($data as $row)  $usr[$row["id"]]=$row["name"];   
    
    
- $data = $db2::getRows("SELECT admin_id as id,name_admin as name FROM admin  WHERE group_id=27 order by name ASC");
+ $data = $db::getRows("SELECT id,name FROM admin  WHERE group_id=27 order by name ASC");
  foreach ($data as $row)  $usr[$row["id"]]=$row["name"];    
 
 
@@ -109,7 +108,7 @@ echo"</select></th>";
  </tr> 
   </thead><tbody>";  
   
- $data = $db2::getRows("SELECT lid_id,tip,name FROM orders_files  WHERE  date>='$delivery_date 00:00:00'  AND date<='$delivery_date2 23:59:59'");
+ $data = $db::getRows("SELECT lid_id,tip,name FROM orders_files  WHERE  date>='$delivery_date 00:00:00'  AND date<='$delivery_date2 23:59:59'");
  foreach ($data as $item) {
  $foto[$item["lid_id"]][$item["tip"]]=$foto[$item["lid_id"]][$item["tip"]]+1;
  }   
@@ -119,7 +118,7 @@ $day=array("8-10","10-12","12-14","14-16","16-18","18-20");
 $express=array("express");
    
 //  echo"SELECT * FROM orders_amo  WHERE ( ( status_id=143 AND (price_dostavka!=0 or price_dostavka_zatrat!=0 or price_dostavka_povtor_zatrat!=0 or price_dostavka_povtor!=0) ) or  status_id=142) AND delivery_date>='$delivery_date'  AND delivery_date<='$delivery_date2' $where order by delivery ASC, delivery_time desc  LIMIT 500";
- $data = $db2::getRows("SELECT * FROM orders_amo  WHERE ( ( status_id=143 AND 
+ $data = $db::getRows("SELECT * FROM orders_amo  WHERE ( ( status_id=143 AND 
  (price_dostavka!=0 or price_dostavka_zatrat!=0 or price_dostavka_povtor_zatrat!=0 or price_dostavka_povtor!=0) )
   or  status_id=142) AND delivery_date>='$delivery_date'  AND delivery_date<='$delivery_date2' $where order by delivery ASC, delivery_time desc  LIMIT 1500");
  foreach ($data as $row) {
@@ -220,7 +219,7 @@ echo"</select>";
 
 $h_arr=explode("-",$row["delivery_time"]);
 $h=(int)$h_arr[0];
-$h_end=(int)$h_arr[1];
+$h_end=(int)($h_arr[1]??0);
 echo"
 ".$row["delivery_oblast"]."
 ".$row["delivery_rayon"]." 
@@ -286,17 +285,17 @@ echo"</td>
 <td>"; 
 
 
-$courier_summa[$row["courier_id"]]=$courier_summa[$row["courier_id"]]+$row["price_dostavka_povtor_zatrat"]+$row["price_dostavka_zatrat"];
+$courier_summa[$row["courier_id"]]=($courier_summa[$row["courier_id"]] ?? 0)+$row["price_dostavka_povtor_zatrat"]+$row["price_dostavka_zatrat"];
 
-$client_summa[$row["delivery"]]=$client_summa[$row["delivery"]]+$row["price_dostavka"]+$row["price_dostavka_povtor"];
+$client_summa[$row["delivery"]]=($client_summa[$row["delivery"]] ?? 0)+$row["price_dostavka"]+$row["price_dostavka_povtor"];
 
-$sum=$sum+$row["price"];
+$sum=($sum ?? 0)+$row["price"];
 
 
 if(empty($foto[$row["id"]][1]) or empty($foto[$row["id"]][10])){
  $foto[$row["id"]][1]=0;
  $foto[$row["id"]][10]=0;
- $data2 = $db2::getRows("SELECT lid_id,tip,name FROM orders_files  WHERE lid_id='".$row["id"]."'");
+ $data2 = $db::getRows("SELECT lid_id,tip,name FROM orders_files  WHERE lid_id='".$row["id"]."'");
  foreach ($data2 as $item) {
  $foto[$item["lid_id"]][$item["tip"]]=$foto[$item["lid_id"]][$item["tip"]]+1;
  }   
@@ -350,7 +349,7 @@ echo"<br><b>Итого с клиентов:</b> +<b>$itogc</b> руб";
 
 echo"</td><td>Затраты на курьеров";
 foreach($courier_summa as $cid => $namer) {
-echo"<br>".$usr[$cid].": -$namer руб";    
+echo"<br>".($usr[$cid]??'').": -$namer руб";
 $itog=$itog+$namer;   
 }
 $itogc=$itogc-$itog;
@@ -405,4 +404,4 @@ $.ajax({
 
 
 
-include"templates/bottom.php";
+//include_once dirname(__DIR__, 2) . '/templates/bottom_light.php';
\ No newline at end of file
diff --git a/erp24/views/orders/logist_table.php b/erp24/views/orders/logist_table.php
new file mode 100644 (file)
index 0000000..8843b8e
--- /dev/null
@@ -0,0 +1,5 @@
+<?php
+
+chdir(__DIR__ . '/../../');
+
+include 'modul/orders/logist_table.php';
\ No newline at end of file
diff --git a/erp24/views/orders/logist_table_day.php b/erp24/views/orders/logist_table_day.php
new file mode 100644 (file)
index 0000000..149631f
--- /dev/null
@@ -0,0 +1,5 @@
+<?php
+
+chdir(__DIR__ . '/../../');
+
+include 'modul/orders/logist_table_day.php';
\ No newline at end of file