package processor import ( "apskel-pos-be/internal/entities" "context" "github.com/google/uuid" ) type CashAdvanceRepository interface { Create(ctx context.Context, cashAdvance *entities.CashAdvance) error GetByID(ctx context.Context, id uuid.UUID) (*entities.CashAdvance, error) GetByIDAndOrganizationID(ctx context.Context, id, organizationID uuid.UUID) (*entities.CashAdvance, error) GetByCodeNumber(ctx context.Context, codeNumber string, organizationID uuid.UUID) (*entities.CashAdvance, error) Update(ctx context.Context, cashAdvance *entities.CashAdvance) error Delete(ctx context.Context, id uuid.UUID) error List(ctx context.Context, organizationID uuid.UUID, filters map[string]interface{}, limit, offset int) ([]*entities.CashAdvance, int64, error) ListSettlements(ctx context.Context, cashAdvanceID uuid.UUID) ([]*entities.CashAdvanceSettlement, error) CountSettlements(ctx context.Context, cashAdvanceID uuid.UUID) (int64, error) }