nickarthur
1/16/2014 - 10:44 PM

ICountingKsRepository.cs

using System;
using System.Collections.Generic;
using System.Linq;
using CountingKs.Data.Entities;
namespace CountingKs.Data
{
  public interface ICountingKsRepository
  {
    // General
    bool SaveAll();

    // Food
    IQueryable<Food> FindFoodsWithMeasures(string searchString);
    IQueryable<Food> GetAllFoods();
    IQueryable<Food> GetAllFoodsWithMeasures();
    Food GetFood(int id);
    Measure GetMeasure(int id);

    // Measure
    IQueryable<Measure> GetMeasuresForFood(int foodId);

    // Diary
    IQueryable<Diary> GetDiaries(string userName);
    Diary GetDiary(string userName, DateTime day);

    // DiaryEntry
    IQueryable<DiaryEntry> GetDiaryEntries(string userName, DateTime diaryDay);
    DiaryEntry GetDiaryEntry(string userName, DateTime diaryDay, int id);

    // Users
    IQueryable<ApiUser> GetApiUsers();

    // Tokens
    AuthToken GetAuthToken(string token);

    // Inserts
    bool Insert(DiaryEntry entry);
    bool Insert(Diary diary);
    bool Insert(AuthToken token);

    // Updates
    bool Update(DiaryEntry entry);
    bool Update(Diary diary);

    // Deletes
    bool DeleteDiaryEntry(int id);
    bool DeleteDiary(int id);
  }
}