diff --git a/app/Model/MmInfo.php b/app/Model/MmInfo.php index 42dd8f6..296a022 100644 --- a/app/Model/MmInfo.php +++ b/app/Model/MmInfo.php @@ -2,7 +2,11 @@ namespace App\Model; +use Hyperf\Database\Model\SoftDeletes; + class MmInfo extends Model { + use SoftDeletes; + protected $table = 'lanzu_mm_info'; } \ No newline at end of file diff --git a/app/Model/MpInfo.php b/app/Model/MpInfo.php index 27e4e6b..25b6898 100644 --- a/app/Model/MpInfo.php +++ b/app/Model/MpInfo.php @@ -2,7 +2,12 @@ namespace App\Model; +use Hyperf\Database\Model\SoftDeletes; + class MpInfo extends Model { + + use SoftDeletes; + protected $table = 'lanzu_mp_info'; } \ No newline at end of file diff --git a/app/Service/SeparateAccountsService.php b/app/Service/SeparateAccountsService.php index d4cffa3..e8cb29f 100644 --- a/app/Service/SeparateAccountsService.php +++ b/app/Service/SeparateAccountsService.php @@ -4,6 +4,7 @@ namespace App\Service; use App\Commons\Log; use App\Constants\LogLabel; +use App\Constants\SsdbKeysPrefix; use App\Model\FinancialRecord; use App\Model\Market; use App\Model\MmInfo; @@ -189,7 +190,15 @@ class SeparateAccountsService implements SeparateAccountsServiceInterface $mpInfo = MpInfo::query()->find($market->mp_id); // 服务商 $ssdbName = 'mm_'.$mmInfo->id.'_award_'.$store->id; - $record = $ssdb->exec('hgetall', $ssdbName); + + // TODO 暂时在这里初始化 + if (!$ssdb->exec('hexists', $ssdbName, 'is_awarded')) { + $ssdb->exec('hset', $ssdbName, 'is_awarded', 0); + } + + if (!$ssdb->exec('hexists', $ssdbName, 'new_user_number')) { + $ssdb->exec('hset', $ssdbName, 'new_user_number', 0); + } // 平台新用户 if ($this->userService->isPlatformNewUser($orderMain->user_id, $orderMain->id)) { @@ -198,6 +207,8 @@ class SeparateAccountsService implements SeparateAccountsServiceInterface $this->financialRecordService->mpAwardByPlatNewUser($mpInfo->admin_user_id, $global_order_id, $MmMpAwardConfig['mp_new_user'], '市场经理「'.$mmInfo->name.'」发展新用户'); // 服务商新用户奖励 } + $record = $ssdb->exec('hgetall', $ssdbName); + // 判断是否已经奖励过新拓展商户的奖励,没有的话判断新用户个数是否达到要求,进行奖励 if ( !empty($record) @@ -374,7 +385,15 @@ class SeparateAccountsService implements SeparateAccountsServiceInterface $ssdb = ApplicationContext::getContainer()->get(SSDBTask::class); $ssdbName = 'mm_'.$mmInfo->id.'_award_'.$store->id; - $record = $ssdb->exec('hgetall', $ssdbName); + + // TODO 暂时在这里初始化 + if (!$ssdb->exec('hexists', $ssdbName, 'is_awarded')) { + $ssdb->exec('hset', $ssdbName, 'is_awarded', 0); + } + + if (!$ssdb->exec('hexists', $ssdbName, 'new_user_number')) { + $ssdb->exec('hset', $ssdbName, 'new_user_number', 0); + } // 平台新用户 if ($this->userService->isPlatformNewUser($orderMain->user_id, $orderMain->id)) { @@ -383,6 +402,7 @@ class SeparateAccountsService implements SeparateAccountsServiceInterface $this->financialRecordService->mpAwardByPlatNewUser($mpInfo->admin_user_id, $global_order_id, $MmMpAwardConfig['mp_new_user'], '市场经理「'.$mmInfo->name.'」发展新用户'); // 服务商新用户奖励 } + $record = $ssdb->exec('hgetall', $ssdbName); // 判断是否已经奖励过新拓展商户的奖励,没有的话判断新用户个数是否达到要求,进行奖励 if ( !empty($record)