|
|
@@ -874,11 +874,9 @@ class FinanceService extends BaseService
|
|
|
}
|
|
|
|
|
|
// 每日日返还待返积分数量
|
|
|
- $scoreToXdRate = ConfigService::make()->getConfigByCode('wait_score_to_xd_rate',10000);
|
|
|
- $scoreToXdRate = $scoreToXdRate>0 && $scoreToXdRate<1000000? $scoreToXdRate : 10000;
|
|
|
- $returnScore = ConfigService::make()->getConfigByCode('day_wait_score_num',0);
|
|
|
- $returnScore = $returnScore>0 && $returnScore<500000? $returnScore : 0;
|
|
|
- if($returnScore <= 0 || $scoreToXdRate<=0){
|
|
|
+ $waitScoreRate = ConfigService::make()->getConfigByCode('day_wait_score_rate',0);
|
|
|
+ $waitScoreRate = $waitScoreRate>0 && $waitScoreRate<100? $waitScoreRate : 0;
|
|
|
+ if($waitScoreRate <= 0){
|
|
|
$this->error = 3009;
|
|
|
return false;
|
|
|
}
|
|
|
@@ -894,17 +892,16 @@ class FinanceService extends BaseService
|
|
|
$users = $users? $users->toArray() : [];
|
|
|
if($users){
|
|
|
$dateTime = date('Y-m-d H:i:s');
|
|
|
- RedisService::set($cacheKey, ['return'=>$returnScore,'users'=>$users,'date'=>$dateTime], 86400);
|
|
|
+ RedisService::set($cacheKey, ['return_rate'=>$waitScoreRate,'users'=>$users,'date'=>$dateTime], 86400);
|
|
|
foreach($users as $item){
|
|
|
$userXd = isset($item['balance'])? $item['balance'] : 0;
|
|
|
$waitScore = isset($item['wait_score'])? $item['wait_score'] : 0;
|
|
|
$userId = isset($item['id'])? $item['id'] : 0;
|
|
|
- $settleScore = $waitScore >= $returnScore? $returnScore : $waitScore; // 不足每日返还则还完
|
|
|
- $settleXd = moneyFormat($settleScore/$scoreToXdRate, 2); // 不足每日返还则还完
|
|
|
- if($settleScore>0){
|
|
|
+ $settleXd = moneyFormat($waitScore * $waitScoreRate/100, 2); //
|
|
|
+ if($settleXd>0){
|
|
|
DB::beginTransaction();
|
|
|
$updateData = [
|
|
|
- 'wait_score'=> DB::raw("wait_score - {$settleScore}"), // 扣除待返积分
|
|
|
+ 'wait_score'=> DB::raw("wait_score - {$settleXd}"), // 扣除待返积分
|
|
|
'balance'=> DB::raw("balance + {$settleXd}"), // 返还星豆数量
|
|
|
'wait_score_return_at'=> date('Y-m-d H:i:s'),
|
|
|
'update_time'=> time(),
|
|
|
@@ -917,7 +914,7 @@ class FinanceService extends BaseService
|
|
|
|
|
|
// 待返积分明细
|
|
|
$orderNo = get_order_num('FS');
|
|
|
- if($settleScore){
|
|
|
+ if($settleXd){
|
|
|
$log = [
|
|
|
'user_id' => $userId,
|
|
|
'source_id' => 0,
|
|
|
@@ -925,8 +922,8 @@ class FinanceService extends BaseService
|
|
|
'type' => 24,
|
|
|
'coin_type' => 5,
|
|
|
'user_type'=> 1,
|
|
|
- 'money' => -$settleScore,
|
|
|
- 'actual_money' => -$settleScore,
|
|
|
+ 'money' => -$settleXd,
|
|
|
+ 'actual_money' => -$settleXd,
|
|
|
'balance' => $waitScore,
|
|
|
'create_time' => time(),
|
|
|
'update_time' => time(),
|
|
|
@@ -970,7 +967,7 @@ class FinanceService extends BaseService
|
|
|
|
|
|
// 用户消息
|
|
|
$dateTime = date('Y-m-d H:i:s');
|
|
|
- $message = "您在{$dateTime}(UTC+8)获得每日积分返还已到账:\n返还积分:{$settleScore}\n返还前:{$waitScore}\n返还星豆:{$settleXd} \n返还前:{$userXd} 星豆\n";
|
|
|
+ $message = "您在{$dateTime}(UTC+8)获得每日积分返还已到账:\n返还积分:{$settleXd}\n返还前:{$waitScore}\n返还星豆:{$settleXd} \n返还前:{$userXd} 星豆\n";
|
|
|
MessageService::make()->pushMessage($userId, '每日积分返还星豆奖励', $message,3);
|
|
|
}
|
|
|
}
|
|
|
@@ -981,7 +978,7 @@ class FinanceService extends BaseService
|
|
|
RedisService::set($cacheKey.'_lock', date('Y-m-d H:i:s'), 86400);
|
|
|
}
|
|
|
|
|
|
- return ['count'=> count($users),'return'=> $returnScore];
|
|
|
+ return ['count'=> count($users),'return'=> $settleXd];
|
|
|
}
|
|
|
|
|
|
/**
|