Преглед на файлове

fix match ratio not true

stanley-king преди 2 години
родител
ревизия
ecf2aadd21
променени са 1 файла, в които са добавени 9 реда и са изтрити 6 реда
  1. 9 6
      helper/refill/policy/quaility.php

+ 9 - 6
helper/refill/policy/quaility.php

@@ -333,20 +333,23 @@ class Quality
 
             if (count($pre_qualities) < count($all_qualities)) {
                 $match_ratio = $this->mRatioCtl->ratio_match($mchid, $org_quality, $card_type, $spec, $all_qualities);
-
                 Log::record("must calc next quality match_ratio={$match_ratio}",Log::DEBUG);
             } else {
                 $match_ratio = true;
             }
 
-            if(!$timeing_checker($all_qualities)) {
-                $timeing_qualities = [];
+            if (!$match_ratio) {
+                $times_qualities = $times_checker(false, $all_qualities, $used_times);
+                $time_qualities  = $timeout_checker(false, $all_qualities, $left_time);
+                $pre_qualities = array_intersect($times_qualities, $time_qualities, $all_qualities);
+            }
+
+            if(!$timeing_checker($pre_qualities)) {
+                $pre_qualities = [];
                 Log::record("calc_quality timeing_checker result is empty", Log::DEBUG);
-            } else {
-                $timeing_qualities = $all_qualities;
             }
 
-            $cur_qualities = array_intersect($pre_qualities, $timeing_qualities);
+            $cur_qualities = $pre_qualities;
         }
         else {
             $match_ratio = true;