| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- <?php
- namespace App\Module\Farm\Services;
- use App\Module\Farm\Dtos\FarmInfoDto;
- use App\Module\Farm\Logics\FarmLogic;
- use Illuminate\Support\Facades\Log;
- /**
- * 农场基础服务
- */
- class FarmService
- {
- /**
- * 获取用户农场信息
- *
- * @param int $userId
- * @return FarmInfoDto|null
- */
- public static function getFarmInfo(int $userId): ?FarmInfoDto
- {
- try {
- $farmLogic = new FarmLogic();
- return $farmLogic->getFarmInfo($userId);
- } catch (\Exception $e) {
- Log::error('获取用户农场信息失败', [
- 'user_id' => $userId,
- 'error' => $e->getMessage(),
- 'trace' => $e->getTraceAsString()
- ]);
-
- return null;
- }
- }
-
- /**
- * 初始化用户农场
- *
- * @param int $userId
- * @return FarmInfoDto|null
- */
- public static function initializeFarm(int $userId): ?FarmInfoDto
- {
- try {
- $farmLogic = new FarmLogic();
- return $farmLogic->initializeFarm($userId);
- } catch (\Exception $e) {
- Log::error('初始化用户农场失败', [
- 'user_id' => $userId,
- 'error' => $e->getMessage(),
- 'trace' => $e->getTraceAsString()
- ]);
-
- return null;
- }
- }
-
- /**
- * 获取或初始化用户农场
- *
- * @param int $userId
- * @return FarmInfoDto|null
- */
- public static function getOrInitializeFarm(int $userId): ?FarmInfoDto
- {
- try {
- $farmLogic = new FarmLogic();
- $farmInfo = $farmLogic->getFarmInfo($userId);
-
- if (!$farmInfo) {
- $farmInfo = $farmLogic->initializeFarm($userId);
- }
-
- return $farmInfo;
- } catch (\Exception $e) {
- Log::error('获取或初始化用户农场失败', [
- 'user_id' => $userId,
- 'error' => $e->getMessage(),
- 'trace' => $e->getTraceAsString()
- ]);
-
- return null;
- }
- }
- }
|