]> gitweb.erp-flowers.ru Git - yii-erp24/.git/commitdiff
fix part 020
authorAlexander Smirnov <fredeom@mail.ru>
Wed, 22 May 2024 13:07:03 +0000 (16:07 +0300)
committerAlexander Smirnov <fredeom@mail.ru>
Wed, 22 May 2024 13:07:03 +0000 (16:07 +0300)
erp24/modul/shipment/functionsShipment.php

index 7a1d4261b564ecfb42653334c7a8f3303c65a008..585763f31d42be02378cf982d3d41f43fa4d335f 100644 (file)
@@ -720,95 +720,90 @@ if(!empty($bgNew)) $bg=$bgNew;
 //вставляем данные в таблицу дашборда
 
 function insert_store_orders_fields($massivSQL,$field_name,$massivTitle=[], $print=false) {
-global $db,$orderId,$storeIdToGuidArray,$fieldsRows,$FiledsData;
+    global $db,$orderId,$storeIdToGuidArray,$fieldsRows, $FiledsData;
 
-$field_id=$fieldsRows[$field_name]["id"];
-$type=$fieldsRows[$field_name]["type"];
+    $field_id=$fieldsRows[$field_name]["id"];
+    $type=$fieldsRows[$field_name]["type"];
 
-$divisionFieldsArray=["division_store","division_store_hand","division_store_summ"];
-
-if(in_array($field_name,$divisionFieldsArray)) {
-$db::sql("DELETE FROM store_orders_fields_data WHERE order_id=? AND field_name=? AND (store_id='' or value='0.000' ) ",[$orderId,$field_name]);   
-}
-
-
-foreach($massivSQL as $productId =>$array) {
-   foreach($array as $storeId =>$valueArr) { 
-       foreach($valueArr as $color =>$value) { 
-        //  if(empty($color) or $storeId=="NULL") $color="";   
-         if($color=="NULL") $color="";         
-          
-            if(is_numeric($storeId) and !empty($storeIdToGuidArray[$storeId]) and $storeId!='NULL')  $storeId=$storeIdToGuidArray[$storeId];
-           if(empty($storeId) or $storeId=="NULL") $storeId="";  
-           
-    if($type=="string")  {$value_text=$value;  $value="";}
-    else { $value_text=""; }
-
-      try {
-       if(empty($storeId)) $storeIdData="NULL"; else  $storeIdData=$storeId;
-         if(empty($color)) $colorData="NULL"; else  $colorData=$color; 
-         $oldvalue=$FiledsData[$field_name][$productId][$storeIdData][$colorData] ?? '';
-       //  $oldtitle=$FiledsData["title__".$field_name][$productId][$storeIdData][$colorData];
-         
-       //   if($print==true)  echo"<br>!!!--------$field_name =$value oldtitle=$oldtitle  $title"; 
-       
-       if(($type!="string") or ($type=="string" and $value_text!="")) {   
-         
-         $title=$massivTitle[$productId][$storeIdData][$colorData] ?? '';
-         
-         
-       //  echo"<br> ++ productId = $productId order_id=$orderId field_name=$field_name storeId=$storeId value=$value";
-         $Insert=true;  
-      //  if(in_array($field_name,$divisionFieldsArray) and ($value==0 and empty($oldvalue)))  $Insert=false;
-
-
-
-       if($Insert) {
-           $sql = "INSERT INTO store_orders_fields_data (product_id, order_id, store_id, field_name, field_id, value, value_text, color,hand,date_update, title)       
-          VALUES (?,?,?,?,?,?,?,?,'-1',NOW(),?)  ON CONFLICT (order_id, product_id, store_id, field_id, field_name, color) DO UPDATE SET value=?, hand=0, value_text=?, date_update=NOW(), title=?";
-           $sql2 = "INSERT INTO store_orders_fields_data (product_id, order_id, store_id, field_name, field_id, value, value_text, color,hand,date_update, title)       
-          VALUES ('$productId','$orderId','$storeId','$field_name','$field_id','$value','$value_text','$color','-1',NOW(),'$title')  ON CONFLICT (order_id, product_id, store_id, field_id, field_name, color) DO UPDATE SET value='$value', hand=0, value_text='$value_text', date_update=NOW(), title='$title'";
-          // var_dump($sql2); die;
-           $db::sql($sql, [$productId, $orderId, $storeId, $field_name, $field_id, $value, $value_text,  $color, $title, $value, $value_text , $title]);
-       }
+    $divisionFieldsArray=["division_store","division_store_hand","division_store_summ"];
 
+    if(in_array($field_name,$divisionFieldsArray)) {
+        $db::sql("DELETE FROM store_orders_fields_data WHERE order_id=? AND field_name=? AND (store_id='' or value='0.000' ) ",[$orderId,$field_name]);
+    }
 
-       }
-    
-//          if(($type!="string" and !empty($value) and $value!='0.000') or ($type=="string" and $value_text!="") ) {
-//            if(($oldvalue==$value or $oldvalue=="$value.000") and $value_text=="") {
+    foreach($massivSQL as $productId =>$array) {
+        foreach($array as $storeId =>$valueArr) {
+            foreach($valueArr as $color =>$value) {
+                //  if(empty($color) or $storeId=="NULL") $color="";
+                if ($color=="NULL" || $color == 0) {
+                    $color="";
+                }
+                if (is_numeric($storeId) and !empty($storeIdToGuidArray[$storeId]) and $storeId!='NULL') {
+                    $storeId = $storeIdToGuidArray[$storeId];
+                }
+                if (empty($storeId) or $storeId=="NULL") {
+                    $storeId="";
+                }
+
+                if ($type=="string") {
+                    $value_text = $value;
+                    $value = "";
+                } else {
+                    $value_text = "";
+                }
+
+                try {
+                    $storeIdData = empty($storeId) ? "NULL" : $storeId;
+                    $colorData = empty($color) ? "NULL" : $color;
+
+//             $oldvalue=$FiledsData[$field_name][$productId][$storeIdData][$colorData] ?? '';
+//             $oldtitle=$FiledsData["title__".$field_name][$productId][$storeIdData][$colorData];
+//              if($print==true)  echo"<br>!!!--------$field_name =$value oldtitle=$oldtitle  $title";
+
+                    if (($type!="string") or ($type=="string" and $value_text!="")) {
+                        $title = $massivTitle[$productId][$storeIdData][$colorData] ?? '';
+//             echo"<br> ++ productId = $productId order_id=$orderId field_name=$field_name storeId=$storeId value=$value";
+                        $Insert=true;
+//            if(in_array($field_name,$divisionFieldsArray) and ($value==0 and empty($oldvalue)))  $Insert=false;
+                       if($Insert) {
+                           $sql = "INSERT INTO store_orders_fields_data (product_id, order_id, store_id, field_name, field_id, value, value_text, color,hand,date_update, title)       
+                          VALUES (?,?,?,?,?,?,?,?,'-1',NOW(),?)  ON CONFLICT (order_id, product_id, store_id, field_id, field_name, color) DO UPDATE SET value=?, hand=0, value_text=?, date_update=NOW(), title=?";
+                           $sql2 = "INSERT INTO store_orders_fields_data (product_id, order_id, store_id, field_name, field_id, value, value_text, color,hand,date_update, title)       
+                          VALUES ('$productId','$orderId','$storeId','$field_name','$field_id','$value','$value_text','$color','-1',NOW(),'$title')  ON CONFLICT (order_id, product_id, store_id, field_id, field_name, color) DO UPDATE SET value='$value', hand=0, value_text='$value_text', date_update=NOW(), title='$title'";
+                          // var_dump($sql2); die;
+                           $db::sql($sql, [$productId, $orderId, $storeId, $field_name, $field_id, $value, $value_text,  $color, $title, $value, $value_text , $title]);
+                       }
+                    }
+
+//              if(($type!="string" and !empty($value) and $value!='0.000') or ($type=="string" and $value_text!="") ) {
+//                if(($oldvalue==$value or $oldvalue=="$value.000") and $value_text=="") {
 //
-//        // echo"<br>По этому товару не обновляем так ка значение старое уже есть";
+//            // echo"<br>По этому товару не обновляем так ка значение старое уже есть";
 //
-//         }
+//             }
 //
-//         if(((empty($value)  or $value=="0.000" or $oldvalue==$value or $oldvalue=="$value.000" or $oldtitle==$title ) and  $type!="string") or ($type=="string" and $value_text=="")) {
+//             if(((empty($value)  or $value=="0.000" or $oldvalue==$value or $oldvalue=="$value.000" or $oldtitle==$title ) and  $type!="string") or ($type=="string" and $value_text=="")) {
 //
-//         }
-//         else {
-//        //  if($print==true)  echo"<br>!!! $field_name =$value";
-//      //     $db::sql("INSERT IGNORE INTO store_orders_fields_data (product_id, order_id, store_id, field_name, field_id, value, value_text, color,hand,date_update, title)                 VALUES (?,?,?,?,?,?,?,?,'-1',NOW(),?)  ON DUPLICATE KEY UPDATE value=?, hand=0, value_text=?, date_update=NOW(), title=?",              [$productId, $orderId, $storeId, $field_name, $field_id, $value, $value_text,  $color, $title, $value, $value_text , $title]);
-//         }
+//             }
+//             else {
+//            //  if($print==true)  echo"<br>!!! $field_name =$value";
+//          //     $db::sql("INSERT IGNORE INTO store_orders_fields_data (product_id, order_id, store_id, field_name, field_id, value, value_text, color,hand,date_update, title)                 VALUES (?,?,?,?,?,?,?,?,'-1',NOW(),?)  ON DUPLICATE KEY UPDATE value=?, hand=0, value_text=?, date_update=NOW(), title=?",              [$productId, $orderId, $storeId, $field_name, $field_id, $value, $value_text,  $color, $title, $value, $value_text , $title]);
+//             }
 //
-//         // if(empty($storeId)) $storeIdData="NULL"; else  $storeIdData=$storeId;
-//         //if(empty($color)) $colorData="NULL"; else  $colorData=$color;
+//             // if(empty($storeId)) $storeIdData="NULL"; else  $storeIdData=$storeId;
+//             //if(empty($color)) $colorData="NULL"; else  $colorData=$color;
 //
-//        //  echo"<br>$field_name pid=$productId color=$color  =$value valuetext=$value_text   ";
+//            //  echo"<br>$field_name pid=$productId color=$color  =$value valuetext=$value_text   ";
 //
 //
-//         }
-      
-           
-      } catch (Exception $e) 
-       {
-           echo 'Ошибка вставки данных field_name='.$field_name.' '.print_r($param ?? '').' error='. $e->getMessage() . ' ' . $e->getFile() . ' ' . $e->getLine() . ' ' . $e->getTraceAsString();
-       }
-     
-       }
-     }
-   } 
+//             }
+
+                } catch (Exception $e) {
+                   echo 'Ошибка вставки данных field_name='.$field_name.' '.print_r($param ?? '').' error='. $e->getMessage() . ' ' . $e->getFile() . ' ' . $e->getLine() . ' ' . $e->getTraceAsString();
+                }
+            }
+        }
+    }
 }