充值天数活动

This commit is contained in:
yangduo 2025-03-17 21:40:36 +08:00
parent 40d4bfb057
commit 53ea4022c7
3 changed files with 48 additions and 14 deletions

View File

@ -105,6 +105,7 @@ define('DIAMONDLOTTERY_TIME', 188); //每日消耗钻石抽奖次数
define('MEDAL_LIMIT', 189); //体力自然增长上限
define('MEDAL_SECONDS', 190); //自然增长一点体力耗时,单位秒
define('OFFLINE_LIMIT', 191); //离线时长上限,单位小时
define('RECHARGE_TARGET', 198); //连续充值天数的每日达标金额(元)
require 'config_loader.php';

View File

@ -76,6 +76,8 @@ class RechargeActivity
return;
}
$nowTime = time();
$todaysecs = phpcommon\getdayseconds($nowTime);
$daysumtarget = metatable\getParameterById(RECHARGE_TARGET) * 10;
foreach ($activityconf as $itemconf) {
if ($nowTime < strtotime($itemconf['time1']) || $nowTime > strtotime($itemconf['time2'])) {
continue;
@ -93,7 +95,7 @@ class RechargeActivity
$found = true;
if ($itemconf['type'] == 3) {
if ($item['time'] < phpcommon\getdayseconds($nowTime)) {
if ($item['time'] < $todaysecs) {
$activity[$key]['cur'] = $num;
$activity[$key]['award'] = 0;
} else {
@ -104,6 +106,23 @@ class RechargeActivity
$activity[$key]['cur'] += $num;
}
$activity[$key]['time'] = $nowTime;
}
if ($itemconf['type'] == 4) {
if ($item['time'] > 0 || $item['cur'] >= $item['target'] || $item['update_cur_time'] >= $todaysecs) {
break;
}
if ($item['recharge_time'] < $todaysecs) {
$activity[$key]['recharge_sum'] = $num;
} else {
$activity[$key]['recharge_sum'] += $num;
}
$activity[$key]['recharge_time'] = $nowTime;
if ($daysumtarget <= $activity[$key]['recharge_sum']) {
$activity[$key]['cur']++;
$activity[$key]['update_cur_time'] = $nowTime;
}
} else {
if ($item['cur'] >= $item['target']) {
break;
@ -119,20 +138,33 @@ class RechargeActivity
}
if (!$found) {
$item = array(
'id' => $itemconf['shop_id'],
'cur' => $num,
'target' => $itemconf['target'],
'time' => 0,
);
$item = array();
if ($itemconf['type'] == 4) {
$item = array(
'id' => $itemconf['shop_id'],
'cur' => $num < $daysumtarget ? 0 : 1,
'target' => $itemconf['target'],
'time' => 0,
"recharge_sum" => $num, //当天充值总额
"recharge_time" => $nowTime, //最近充值时间戳
"update_cur_time" => $num < $daysumtarget ? 0 : $nowTime, //最近更新cur时间戳
);
} else {
$item = array(
'id' => $itemconf['shop_id'],
'cur' => $num,
'target' => $itemconf['target'],
'time' => 0,
);
if ($num > $itemconf['target']) {
$item['cur'] = $itemconf['target'];
}
if ($num > $itemconf['target']) {
$item['cur'] = $itemconf['target'];
}
if ($itemconf['type'] == 3) {
$item['time'] = $nowTime;
$item['award'] = 0;
if ($itemconf['type'] == 3) {
$item['time'] = $nowTime;
$item['award'] = 0;
}
}
array_push($activity, $item);

View File

@ -126,6 +126,7 @@ trait RechargeActivity
switch ($itemconf['type']) {
case 1: //累积充值
case 2: //累计消耗
case 4: //充值达标天数
$itemarray = array(
'id' => $item['id'],
'cur' => $item['cur'],