get(); } /** * 获取指定目标类型的升级配置 * * @param int $toTypeId * @return Collection */ public function findByToTypeId(int $toTypeId): Collection { return FarmLandUpgradeConfig::where('to_type_id', $toTypeId)->get(); } /** * 获取指定升级路径的配置 * * @param int $fromTypeId * @param int $toTypeId * @return FarmLandUpgradeConfig|null */ public function findByFromAndToTypeId(int $fromTypeId, int $toTypeId): ?FarmLandUpgradeConfig { return FarmLandUpgradeConfig::where('from_type_id', $fromTypeId) ->where('to_type_id', $toTypeId) ->first(); } /** * 获取所有可能的升级路径 * * @return array */ public function getAllUpgradePaths(): array { return FarmLandUpgradeConfig::select('from_type_id', 'to_type_id') ->get() ->map(function ($item) { return [ 'from' => $item->from_type_id, 'to' => $item->to_type_id, ]; }) ->toArray(); } }