mysimulation/server/FSO.Server.Database/DA/Elections/IElections.cs
Tony Bark 22191ce648 Removed NioTSO client and server
- NioTSO client isn't needed because we're using RayLib
- Added FreeSO's API server to handle most backend operations
2024-05-01 02:55:43 -04:00

42 lines
1.8 KiB
C#
Executable file

using System.Collections.Generic;
namespace FSO.Server.Database.DA.Elections
{
public interface IElections
{
DbElectionCycle GetCycle(uint cycle_id);
DbElectionCandidate GetCandidate(uint avatar_id, uint cycle_id, DbCandidateState state);
List<DbElectionCycle> GetActiveCycles(int shard_id);
List<DbElectionCandidate> GetCandidates(uint cycle_id, DbCandidateState state);
List<DbElectionCandidate> GetCandidates(uint cycle_id);
List<DbElectionVote> GetCycleVotes(uint cycle_id, DbElectionVoteType type);
List<DbElectionVote> GetCycleVotesForAvatar(uint avatar_id, uint cycle_id, DbElectionVoteType type);
DbElectionVote GetMyVote(uint avatar_id, uint cycle_id, DbElectionVoteType type);
DbMayorRating GetSpecificRating(uint from_user_id, uint to_avatar_id);
DbMayorRating GetRating(uint rating_id);
List<uint> GetRatings(uint to_avatar_id);
float? GetAvgRating(uint to_avatar_id);
bool CreateCandidate(DbElectionCandidate candidate);
bool SetCandidateState(DbElectionCandidate candidate);
bool DeleteCandidate(uint election_cycle_id, uint candidate_avatar_id);
uint CreateCycle(DbElectionCycle cycle);
bool CreateVote(DbElectionVote vote);
void UpdateCycleState(uint cycle_id, DbElectionCycleState state);
uint SetRating(DbMayorRating rating);
bool DeleteRating(uint id);
bool EmailRegistered(DbElectionCycleMail p);
bool TryRegisterMail(DbElectionCycleMail p);
bool EnrollFreeVote(DbElectionFreeVote entry);
DbElectionFreeVote GetFreeVote(uint avatar_id);
DbElectionWin FindLastWin(uint avatar_id);
}
public class DbElectionWin
{
public uint nhood_id { get; set; }
public string nhood_name { get; set; }
}
}