]> gitweb.erp-flowers.ru Git - yii-erp24/.git/commitdiff
fix orders delivery
authorAlexander Smirnov <fredeom@mail.ru>
Fri, 12 Apr 2024 14:40:40 +0000 (17:40 +0300)
committerAlexander Smirnov <fredeom@mail.ru>
Fri, 12 Apr 2024 14:40:40 +0000 (17:40 +0300)
docker/migrationToPgsql/mysql/command.sql
erp24/modul/orders/delivery.php

index 2ef29dea5f7e3cb64e910339db271b9552270691..98aa02eb3a1acc3bd77cd22a278224b96699b417 100644 (file)
@@ -138,8 +138,8 @@ UPDATE `store` SET `date_open`='1970-01-01' WHERE `date_open`<'1970-01-01';
 
 UPDATE `store_revision_day` SET `date_soglas`='1970-01-01 00:00:01' WHERE `date_soglas`<'1970-01-01 00:00:01';
 
-ALTER TABLE `money_cashboxes` MODIFY COLUMN `type` ENUM('cash', 'bank', 'qrcode', 'none');
-UPDATE `money_cashboxes` SET `type` = 'none' WHERE `type` = '';
+-- ALTER TABLE `money_cashboxes` MODIFY COLUMN `type` ENUM('cash', 'bank', 'qrcode', 'none');
+-- UPDATE `money_cashboxes` SET `type` = 'none' WHERE `type` = '';
 
 UPDATE `scripts` SET `date`='1970-01-01 00:00:01' WHERE `date`<'1970-01-01 00:00:01';
 
@@ -166,7 +166,7 @@ UPDATE `store_orders` SET `date_update`='1970-01-01 00:00:01' WHERE `date_update
 UPDATE `store_orders` SET `delivery_date_fact`='1970-01-01' WHERE `delivery_date_fact`<'1970-01-01';
 
 UPDATE `users_events` SET `date` = '1970-01-01' WHERE `date` < '1970-01-01' AND `date` IS NOT NULL;
-UPDATE `universal_pipeline_triggers` SET `time` = '1970-01-01' WHERE `time` < '1970-01-01' AND `time` IS NOT NULL;
+-- UPDATE `universal_pipeline_triggers` SET `time` = '1970-01-01' WHERE `time` < '1970-01-01' AND `time` IS NOT NULL;
 UPDATE `shipment_waybills` SET `created_at` = '1970-01-01' WHERE `created_at` < '1970-01-01' AND `created_at` IS NOT NULL;
 UPDATE `store_orders` SET `date_add` = '1970-01-01' WHERE `date_add` < '1970-01-01' AND `date_add` IS NOT NULL;
 -- ALTER TABLE `sales` DROP INDEX `date`;
index 36befe77282a15154775d22ab8ce2140a5e3b071..1b376e589906eab11ebe0ded104084abb5987c2a 100644 (file)
@@ -221,8 +221,9 @@ foreach($_REQUEST["statuses"] ?? [] as $is =>$idf)  {
 }
 
    
-$checkarr= $db::getRows("SELECT * FROM sales WHERE date >= NOW()- 37 * INTERVAL '1 day' ");
+$checkarr= $db::getRows("SELECT * FROM sales WHERE date >= NOW()- 37 * INTERVAL '1 day'  LIMIT 1750");
 //$cheks_txt=";
+
 $sale = [];
 $check_sale_cnt = [];
 $check_vozvrat_cnt = [];
@@ -243,10 +244,10 @@ $cheks_txt .=" продавец ".($usersArr[$checkr["seller_id"]] ?? '-')."  ";
 if($checkr["operation"]=="Продажа") $cheks_txt .="<span class=\"btn btn-sm btn-danger\" onclick=\"ajax_return_check('".$checkr["id"]."');$(this).hide();\">сделать возврат</span>";
 $cheks_txt .="</div>";
 
-if($checkr["operation"]=="Возврат")  $check_vozvrat_cnt[$checkr["order_id"]]=$check_vozvrat_cnt[$checkr["order_id"]]+1; 
-if($checkr["operation"]=="Продажа") $check_sale_cnt[$checkr["order_id"]]=$check_sale_cnt[$checkr["order_id"]]+1;  
+if($checkr["operation"]=="Возврат")  $check_vozvrat_cnt[$checkr["order_id"]]=($check_vozvrat_cnt[$checkr["order_id"]] ?? 0)+1;
+if($checkr["operation"]=="Продажа") $check_sale_cnt[$checkr["order_id"]]=($check_sale_cnt[$checkr["order_id"]] ?? 0)+1;
 
-$sale[$checkr["order_id"]] .=$cheks_txt;   
+$sale[$checkr["order_id"]] = ($sale[$checkr["order_id"]] ?? '') . $cheks_txt;
 
 }
 //$cheks_txt .="</div>";   
@@ -264,7 +265,8 @@ $data = $db::getRows("SELECT *, TO_CHAR(delivery_date, 'DD.MM.YYYY') as dated FR
 WHERE $where AND delivery_date <= NOW() order by delivery_date DESC, updated_at DESC LIMIT 1750");
 
 echo"<table class=\"table table-hover\">";
-$cnt = 0;
+$cnt = $cnt ?? 0;
+$in_orders = [];
 foreach($data as $row) {
 $cheks_txt ="";
 $cnt++;
@@ -297,7 +299,7 @@ if(!empty($sale[$row["amo_id"]])) $yes=1;
 //$yes==0
 $vozvr=0;
 $cnt_s=0; $cnt_v=0;
-foreach($create_check_arr[$row["amo_id"]] as $order_idd => $rowsd) {
+foreach($create_check_arr[$row["amo_id"]] ?? [] as $order_idd => $rowsd) {
 if($rowsd["type"]=="Продажа") $cnt_s++; 
 if($rowsd["type"]=="Возврат")  $cnt_v++; 
 }
@@ -346,7 +348,7 @@ if(in_array($row["amo_id"], $in_orders ?? [])) {
 }
 
 echo"".$status_ar[$row["status_id"]]."
-".$users_arr[$row["florist_id"]]."";
+".($users_arr[$row["florist_id"]] ?? '')."";
 
 
 if(empty($row["florist_id"])) echo"<span class=\"btn btn-danger\">флорист в амо не указан</span>";
@@ -363,7 +365,7 @@ $in_orders[]=$row["amo_id"];
 
 
 
-if(($store_arr[$row["store_id"]]=="ул. Аэродромная 28 (к-р Москва)" or $row["store"]=="ул. Аэродромная, 28" or $row["store"]=="") and $yes==1 and $row["payment_type_id"]!="Оплачен в магазине") {
+if(($store_arr[$row["store_id"]] ?? '' =="ул. Аэродромная 28 (к-р Москва)" or $row["store"]=="ул. Аэродромная, 28" or $row["store"]=="") and $yes==1 and $row["payment_type_id"]!="Оплачен в магазине") {
 
 if($check_vozvrat_cnt[$row["id"]]>=$check_sale_cnt[$row["id"]] ) { 
 echo"возвратов ".$check_vozvrat_cnt[$row["id"]]."  ".$check_vozvrat_cnt[$row["id"]]." чеков ".$check_sale_cnt[$row["id"]]."";
@@ -396,13 +398,19 @@ if($row["store"]!="" and $row["store"]!="ул. Аэродромная, 28") $pic
 
 foreach($products_json as $k => $arp) {
    foreach($arp["items"] as $item) {
-   $products[$item["guid"]][$item["color_id"]] +=$item["quantity"];      
+       if (isset($item["color_id"])) {
+           $products[$item["guid"]][$item["color_id"]] = ($products[$item["guid"]][$item["color_id"]] ?? 0) + $item["quantity"];
+       }
    echo"<tr ";
    $quantity=str_replace(".00","",$item["quantity"]); // and $pickup == false
-   $bal=$balancesAll[$exportStore[$storesNameArr[$row["store"]]]][$item["guid"]];
+   if (isset($storesNameArr[$row["store"]])) {
+       $bal = $balancesAll[$exportStore[$storesNameArr[$row["store"]]]][$item["guid"]] ?? 0;
+   } else {
+       $bal = 0;
+   }
    if($bal<$quantity and !in_array($item["guid"],$services)) echo" class=\"bg-danger\"";
    echo">   <td class=\"text-center\"><b class=\"mr-2 ml-2\">$quantity</b></td>
-   <td class=\"text-left\">".$item["name"]."</td><td>".$item["color_id"]."</td>
+   <td class=\"text-left\">".$item["name"]."</td><td>".($item["color_id"] ?? '')."</td>
    <td class=\"text-center\">".str_replace(".00","",$item["price"])."</td>
    <td>$bal</td>
    
@@ -457,7 +465,7 @@ echo"
 
 echo"<div class=\"row\"><div class=\"col-6\">".$row["payment_type_id"]."";
 
-if($store_arr[$row["store_id"]]!="ул. Аэродромная 28 (к-р Москва)" and !empty($store_arr[$row["store_id"]])) echo "<span class=\"m-1 btn btn-sm btn-warning\">".$store_arr[$row["store_id"]]."</span>";
+if($store_arr[$row["store_id"]] ?? '' !="ул. Аэродромная 28 (к-р Москва)" and !empty($store_arr[$row["store_id"]])) echo "<span class=\"m-1 btn btn-sm btn-warning\">".$store_arr[$row["store_id"]]."</span>";
 
 
 echo"</div><div class=\"col-6 text-right\">";
@@ -481,7 +489,7 @@ if($row["id"]!=$row["amo_id"]) $ids_arr=[$row["amo_id"],$row["id"]];
 foreach($ids_arr as $val_id) {
 
 if(empty($sale[$val_id])) {
-foreach($create_check_arr[$val_id] as $create_check_row ) {   
+foreach($create_check_arr[$val_id] ?? [] as $create_check_row ) {
     
 
   
@@ -527,11 +535,11 @@ if(!empty($row["products_json"])) {
 // echo"<button class=\"btn btn-sm btn-danger btn__".$row["amo_id"]."\" onclick=\"ajax_create_check_json('".$row["amo_id"]."');\">+++пробить чек</button>";
    
 
-if( ($store_arr[$row["store_id"]]=="ул. Аэродромная 28 (к-р Москва)" or $row["store"]=="ул. Аэродромная, 28"
+if( ($store_arr[$row["store_id"]] ?? '' == "ул. Аэродромная 28 (к-р Москва)" or $row["store"]=="ул. Аэродромная, 28"
 or $row["store"]=="")
 and $yes==0 and $row["payment_type_id"]!="Оплачен в магазине") {
     
-$ord=$db::getValue("SELECT order_id FROM sales WHERE order_id=? AND order_id > 0 order by date desc LIMIT 1",$row["amo_id"]);    
+$ord=$db::getValue("SELECT order_id FROM sales WHERE order_id=? AND order_id > 0 order by date desc LIMIT 1",[$row["amo_id"]]);
     
 
 if(empty($create_check) and empty($ord) and !empty($seller_id))    
@@ -544,18 +552,19 @@ echo"<button class=\"btn btn-sm btn-danger btn__".$row["amo_id"]."\" onclick=\"a
 
 //echo"<div class=row>".$sale[$row["id"]]."</div>";
 //$cheks_txt
+$pay_text = $pay_text ?? '';
 echo"</div></td><td>$pay_text</td></tr>";
     
    
 
 }
 $itog = $itog ?? 0;
-$cnt = $cnt ?? 0;
+
 echo"</tbody></table>Итого $itog руб. всего $cnt ";   
  
 
  } catch (Exception $e) {
-    echo 'Выброшено исключение: '.  $e->getMessage() . ', line:' . $e->getLine(). "\n";
+    echo 'Выброшено исключение: ',  $e->getMessage() . ' ' . $e->getLine() . ' ' . $e->getFile() /*. ' ' . $e->getTraceAsString() */, "\n";
 }