- Add V006 migration: invalidated_at column + partial unique index on household_invite
- Add findByHouseholdIdAndInvalidatedAtIsNull, findByHouseholdIdAndUserId, countByHouseholdIdAndRole
- Add ChangeRoleRequest DTO
- HouseholdService: getActiveInvite, createInvite (regenerate), removeMember, changeMemberRole
- HouseholdController: GET /v1/households/mine/invites, DELETE/PATCH /v1/households/mine/members/{userId}
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
16 lines
608 B
Java
16 lines
608 B
Java
package com.recipeapp.household;
|
|
|
|
import com.recipeapp.household.entity.HouseholdMember;
|
|
import org.springframework.data.jpa.repository.JpaRepository;
|
|
|
|
import java.util.List;
|
|
import java.util.Optional;
|
|
import java.util.UUID;
|
|
|
|
public interface HouseholdMemberRepository extends JpaRepository<HouseholdMember, UUID> {
|
|
Optional<HouseholdMember> findByUserEmailIgnoreCase(String email);
|
|
List<HouseholdMember> findByHouseholdId(UUID householdId);
|
|
Optional<HouseholdMember> findByHouseholdIdAndUserId(UUID householdId, UUID userId);
|
|
long countByHouseholdIdAndRole(UUID householdId, String role);
|
|
}
|