|
@@ -56,13 +56,14 @@ class transfer
|
|
|
$tmchid = intval($transfer_cfg['transfer_mchid']);
|
|
|
$lower_time = intval($transfer_cfg['transfer_lowertime']);
|
|
|
$upper_time = intval($transfer_cfg['transfer_uppertime']);
|
|
|
+ $card_types = $transfer_cfg['card_types'] ?? [];
|
|
|
|
|
|
if ($opened == 1 && $tmchid > 0 && $tmchid != $mchid && $lower_time > 0 && $upper_time > $lower_time)
|
|
|
{
|
|
|
$admin_id = $mch_checker($tmchid);
|
|
|
if($admin_id > 0) {
|
|
|
$this->mMchid2Infos[$mchid] = ['transfer_mchid' => $tmchid, 'admin_id' => $admin_id,
|
|
|
- 'lower_time' => $lower_time, 'upper_time' => $upper_time];
|
|
|
+ 'lower_time' => $lower_time, 'upper_time' => $upper_time,'card_types' => $card_types];
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -70,7 +71,7 @@ class transfer
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public function need_transfer($mchid,$order_time)
|
|
|
+ public function need_transfer($mchid,$order_time,$card_type)
|
|
|
{
|
|
|
if(array_key_exists($mchid,$this->mMchid2Infos))
|
|
|
{
|
|
@@ -78,12 +79,14 @@ class transfer
|
|
|
|
|
|
$lower_time = $transfer_cfg['lower_time'];
|
|
|
$upper_time = $transfer_cfg['upper_time'];
|
|
|
+ $card_types = $transfer_cfg['card_types'];
|
|
|
|
|
|
$elpse_secs = time() - $order_time;
|
|
|
- if($lower_time <= $elpse_secs && $upper_time > $elpse_secs) {
|
|
|
+ if ($lower_time <= $elpse_secs && $upper_time > $elpse_secs) {
|
|
|
return true;
|
|
|
- }
|
|
|
- else {
|
|
|
+ } elseif (in_array($card_type, $card_types)) {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
return false;
|
|
|
}
|
|
|
}
|