|
|
@@ -303,21 +303,21 @@ class BonusSend extends BaseObject {
|
|
|
|
|
|
/**
|
|
|
* 发放奖金
|
|
|
- * @param int $page
|
|
|
* @return bool
|
|
|
* @throws \yii\db\Exception
|
|
|
*/
|
|
|
- public function sendBonusLoop($page = 1) {
|
|
|
- echo sprintf("时间:[%s]数据库发奖,当前page为:【%s】" . PHP_EOL, date('Y-m-d H:i:s', time()), $page);
|
|
|
+ public function sendBonusLoop(): bool
|
|
|
+ {
|
|
|
+ echo sprintf("时间:[%s] 奖金挂网" . PHP_EOL, date('Y-m-d H:i:s', time()));
|
|
|
+
|
|
|
$periodNum = $this->_periodNum;
|
|
|
// 从奖金结算表中获取当期未发放的所有数据
|
|
|
$allData = CalcBonus::find()
|
|
|
->yearMonth($this->_calcYearMonth)
|
|
|
- ->select('ID, USER_ID, BONUS_REAL, BONUS_TOTAL, MANAGE_TAX, ')
|
|
|
+ ->select('ID, USER_ID, PERIOD_NUM, BONUS_TOTAL, MANAGE_TAX, BONUS_PB')
|
|
|
->where('(IS_SENT=0 OR IS_SENT=2) AND CALC_MONTH=:CALC_MONTH AND PERIOD_NUM=:PERIOD_NUM',
|
|
|
[':CALC_MONTH' => $this->_calcYearMonth, ':PERIOD_NUM' => $this->_periodNum]
|
|
|
)
|
|
|
- ->limit($this->_limit)
|
|
|
->asArray()
|
|
|
->all();
|
|
|
|
|
|
@@ -326,8 +326,8 @@ class BonusSend extends BaseObject {
|
|
|
try {
|
|
|
foreach ($allData as $key => $data) {
|
|
|
// 用户奖金发放
|
|
|
- if ($data['BONUS_REAL'] > 0) {
|
|
|
- Balance::changeUserBonus($data['USER_ID'], 'userBonus', $data['BONUS_REAL'],
|
|
|
+ if ($data['BONUS_TOTAL'] > 0) {
|
|
|
+ Balance::changeUserBonus($data['USER_ID'], 'userBonus', $data['BONUS_TOTAL'],
|
|
|
[
|
|
|
'CALC_ID' => $data['ID'],
|
|
|
'REMARK' => 'From Period ' . $data['PERIOD_NUM'],
|
|
|
@@ -349,7 +349,7 @@ class BonusSend extends BaseObject {
|
|
|
Period::updateAll(['IS_SENT' => 1, 'SENT_AT' => Date::nowTime()], 'PERIOD_NUM=:PERIOD_NUM', [':PERIOD_NUM' => $data['PERIOD_NUM']]);
|
|
|
CalcBonus::updateAll(['IS_SENT' => 1, 'SENT_AT' => Date::nowTime()], 'ID=:ID', [':ID' => $data['ID']]);
|
|
|
|
|
|
- unset($periodAmount, $key, $data);
|
|
|
+ unset($key, $data);
|
|
|
}
|
|
|
$transaction->commit();
|
|
|
} catch (Exception $e) {
|