Infört Observable Property överallt, där tillämpligt

This commit is contained in:
2025-10-13 12:13:12 +02:00
parent b2dbb9993f
commit b4d6c6d530
8 changed files with 111 additions and 456 deletions

View File

@ -3,95 +3,40 @@ using SQLite;
namespace GreadyPoang.EntityLayer; namespace GreadyPoang.EntityLayer;
[Table("GamePoint")] [Table("GamePoint")]
public class GamePoint : ObservableObject public partial class GamePoint : ObservableObject
{ {
public GamePoint() public GamePoint()
{ {
_gamePointId = 0; GamePointId = 0;
_participantId = 0; ParticipantId = 0;
_gameRoundId = 0; GameRoundId = 0;
_gameDate = DateTime.Now; GameDate = DateTime.Now;
_gameRoundRegNr = 0; GameRoundRegNr = 0;
_gameRegPoints = 0; GameRegPoints = 0;
} }
private int _gamePointId; [ObservableProperty]
private int _participantId; [property: PrimaryKey, AutoIncrement, Column("GamePointId")]
private int _gameRoundId; private int gamePointId;
private DateTime _gameDate;
private int _gameRoundRegNr;
private int _gameRegPoints;
[PrimaryKey] [ObservableProperty]
[AutoIncrement] [property: Column("ParticipantId")]
[Column("GamePointId")] private int participantId;
public int GamePointId
{
get { return _gamePointId; }
set
{
_gamePointId = value;
OnPropertyChanged(nameof(GamePointId));
}
}
[Column("ParticipantId")] [ObservableProperty]
public int ParticipantId [property: Column("GameRoundId")]
{ private int gameRoundId;
get { return _participantId; }
set
{
_participantId = value;
OnPropertyChanged(nameof(ParticipantId));
}
}
[Column("GameRoundId")]
public int GameRoundId
{
get { return _gameRoundId; }
set
{
_gameRoundId = value;
OnPropertyChanged(nameof(GameRoundId));
}
}
[Column("GameDate")] [ObservableProperty]
public DateTime GameDate [property: Column("GameDate")]
{ private DateTime gameDate;
get { return _gameDate; }
set
{
_gameDate = value;
OnPropertyChanged(nameof(GameDate));
}
}
// GameRoundRegNr räknas upp när en spelare får en ny gamepoint inlagd
// Alltså hans/hennes senaste i samma runda uppräknad med 1
[Column("GameRoundRegNr")]
public int GameRoundRegNr
{
get { return _gameRoundRegNr; }
set
{
_gameRoundRegNr = value;
OnPropertyChanged(nameof(GameRoundRegNr));
}
}
[Column("GameRegPoints")]
public int GameRegPoints
{
get { return _gameRegPoints; }
set
{
_gameRegPoints = value;
OnPropertyChanged(nameof(GameRegPoints));
}
}
[ObservableProperty]
[property: Column("GameRoundRegNr")]
private int gameRoundRegNr;
[ObservableProperty]
[property: Column("GameRegPoints")]
private int gameRegPoints;
} }

View File

@ -6,72 +6,34 @@ namespace GreadyPoang.EntityLayer;
[Table("GameRound")] [Table("GameRound")]
public class GameRound : ObservableObject public partial class GameRound : ObservableObject
{ {
public GameRound() public GameRound()
{ {
_gameRoundId = 0; GameRoundId = 0;
_gameRoundStartDate = DateTime.Now; GameRoundStartDate = DateTime.Now;
_gameStatus = GamePointStatus.New; GameStatus = GamePointStatus.New;
_gameRoundFinished = null; GameRoundFinished = null;
} }
private int _gameRoundId; [ObservableProperty]
private DateTime _gameRoundStartDate; [property: PrimaryKey, AutoIncrement, Column("GameRoundId")]
private GamePointStatus _gameStatus; private int gameRoundId;
private DateTime? _gameRoundFinished;
[Column("GameRoundFinished")] [ObservableProperty]
public DateTime? GameRoundFinished [property: Column("GameRoundStartDate")]
{ private DateTime gameRoundStartDate;
get { return _gameRoundFinished; }
set
{
_gameRoundFinished = value;
OnPropertyChanged(nameof(GameRoundFinished));
}
}
[Column("GameRoundStartDate")] [ObservableProperty]
public DateTime GameRoundStartDate [property: Column("GameStatus")]
{ private GamePointStatus gameStatus;
get { return _gameRoundStartDate; }
set
{
_gameRoundStartDate = value;
OnPropertyChanged(nameof(GameRoundStartDate));
}
}
[Column("GameStatus")] [ObservableProperty]
public GamePointStatus GameStatus [property: Column("GameRoundFinished")]
{ private DateTime? gameRoundFinished;
get { return _gameStatus; }
set
{
_gameStatus = value;
OnPropertyChanged(nameof(GameStatus));
}
}
[PrimaryKey]
[AutoIncrement]
[Column("GameRoundId")]
public int GameRoundId
{
get { return _gameRoundId; }
set
{
_gameRoundId = value;
OnPropertyChanged(nameof(GameRoundId));
}
}
public string GameRoundStartDateString public string GameRoundStartDateString
{ {
get { return _gameRoundStartDate.ToString("yyyy-MM-dd"); } get { return GameRoundStartDate.ToString("yyyy-MM-dd"); }
} }
} }

View File

@ -3,65 +3,30 @@ using SQLite;
namespace GreadyPoang.EntityLayer; namespace GreadyPoang.EntityLayer;
[Table("Participants")] [Table("Participants")]
public class Participant : ObservableObject public partial class Participant : ObservableObject
{ {
public Participant() public Participant()
{ {
_firstName = string.Empty; FirstName = string.Empty;
_lastName = string.Empty; LastName = string.Empty;
_email = string.Empty; Email = string.Empty;
} }
private int _participantId; [ObservableProperty]
private string _firstName; [property: PrimaryKey, AutoIncrement, Column("ParticipantId")]
private string _lastName; private int participantId;
private string _email;
[PrimaryKey] [ObservableProperty]
[AutoIncrement] [property: Column("FirstName")]
[Column("ParticipantId")] private string firstName;
public int ParticipantId
{
get { return _participantId; }
set
{
_participantId = value;
OnPropertyChanged(nameof(ParticipantId));
}
}
[Column("FirstName")] [ObservableProperty]
public string FirstName [property: Column("LastName")]
{ private string lastName;
get { return _firstName; }
set
{
_firstName = value;
OnPropertyChanged(nameof(FirstName));
}
}
[Column("LastName")] [ObservableProperty]
public string LastName [property: Column("Email")]
{ private string email;
get { return _lastName; }
set
{
_lastName = value;
OnPropertyChanged(nameof(LastName));
}
}
[Column("Email")]
public string Email
{
get { return _email; }
set
{
_email = value;
OnPropertyChanged(nameof(Email));
}
}
public string FullName public string FullName
{ {

View File

@ -2,54 +2,26 @@
namespace GreadyPoang.EntityLayer; namespace GreadyPoang.EntityLayer;
public class PlayerColumn : ObservableObject public partial class PlayerColumn : ObservableObject
{ {
public PlayerColumn() public PlayerColumn()
{ {
_playerName = string.Empty; PlayerName = string.Empty;
_values = new List<string>(); Values = new List<string>();
} }
private int _playerId; [ObservableProperty]
private string _playerName; private int playerId;
private List<string> _values;
public string PlayerName
{
get { return _playerName; }
set
{
_playerName = value;
OnPropertyChanged(nameof(PlayerName));
}
}
public List<string> Values
{
get { return _values; }
set
{
_values = value;
OnPropertyChanged(nameof(Values));
}
}
public int PlayerId [ObservableProperty]
{ private string playerName;
get { return _playerId; }
set
{
_playerId = value;
OnPropertyChanged(nameof(PlayerId));
}
}
private int _playerPoints; [ObservableProperty]
private List<string> values;
public int PlayerPoints [ObservableProperty]
{ private int playerPoints;
get { return _playerPoints; }
set { _playerPoints = value; }
}
} }

View File

@ -2,127 +2,55 @@
namespace GreadyPoang.EntityLayer; namespace GreadyPoang.EntityLayer;
public class RoundBuilderElement : ObservableObject public partial class RoundBuilderElement : ObservableObject
{ {
public RoundBuilderElement() public RoundBuilderElement()
{ {
_participantId = 0; ParticipantId = 0;
_participantName = string.Empty; ParticipantName = string.Empty;
_gameRoundRegNr = 0; GameRoundRegNr = 0;
_gameRegPoints = 0; GameRegPoints = 0;
_status = GamePointStatus.New; Status = GamePointStatus.New;
_gameRoundStartDate = DateTime.MinValue; GameRoundStartDate = DateTime.MinValue;
_gameRoundId = 0; GameRoundId = 0;
_gamePointId = 0; GamePointId = 0;
} }
private int _participantId; [ObservableProperty]
private string _participantName; private int participantId;
private int _gameRoundRegNr;
private int _gameRegPoints;
private GamePointStatus _status;
private DateTime _gameRoundStartDate;
private int _gameRoundId;
private int _gamePointId;
public int ParticipantId [ObservableProperty]
{ private string participantName;
get { return _participantId; }
set
{
_participantId = value;
OnPropertyChanged(nameof(ParticipantId));
}
}
[ObservableProperty]
private int gameRoundRegNr;
public string ParticipantName [ObservableProperty]
{ private int gameRegPoints;
get { return _participantName; }
set
{
_participantName = value;
OnPropertyChanged(nameof(ParticipantName));
}
}
[ObservableProperty]
[NotifyPropertyChangedFor(nameof(StatusString))]
private GamePointStatus status;
public int GameRoundRegNr [ObservableProperty]
{ [NotifyPropertyChangedFor(nameof(GameRoundStartDateString))]
get { return _gameRoundRegNr; } private DateTime gameRoundStartDate;
set
{
_gameRoundRegNr = value;
OnPropertyChanged(nameof(GameRoundRegNr));
}
}
[ObservableProperty]
private int gameRoundId;
public int GameRegPoints [ObservableProperty]
{ private int gamePointId;
get { return _gameRegPoints; }
set
{
_gameRegPoints = value;
OnPropertyChanged(nameof(GameRegPoints));
}
}
public GamePointStatus Status
{
get { return _status; }
set
{
_status = value;
OnPropertyChanged(nameof(Status));
OnPropertyChanged(nameof(StatusString));
}
}
public string StatusString public string StatusString
{ {
get { return _status.ToString(); } get { return status.ToString(); }
}
public DateTime GameRoundStartDate
{
get { return _gameRoundStartDate; }
set
{
_gameRoundStartDate = value;
OnPropertyChanged(nameof(GameRoundStartDate));
OnPropertyChanged(nameof(GameRoundStartDateString));
}
} }
public string GameRoundStartDateString public string GameRoundStartDateString
{ {
get { return _gameRoundStartDate.ToString("yyyy-MM-dd"); } get { return gameRoundStartDate.ToString("yyyy-MM-dd"); }
}
public int GameRoundId
{
get { return _gameRoundId; }
set
{
_gameRoundId = value;
OnPropertyChanged(nameof(GameRoundId));
}
} }
public int GamePointId
{
get { return _gamePointId; }
set
{
_gamePointId = value;
OnPropertyChanged(nameof(GamePointId));
}
}
} }

View File

@ -6,52 +6,21 @@ public partial class RoundBuilderGroup : ObservableObject
{ {
public RoundBuilderGroup() public RoundBuilderGroup()
{ {
_gameRoundId = 0; GameRoundId = 0;
_gameRoundStartDate = DateTime.MinValue; GameRoundStartDate = DateTime.MinValue;
_status = GamePointStatus.New; Status = GamePointStatus.New;
Elements = new List<RoundBuilderElement>(); Elements = new List<RoundBuilderElement>();
} }
private int _gameRoundId;
private DateTime _gameRoundStartDate; [ObservableProperty]
private int gameRoundId;
[ObservableProperty]
private DateTime gameRoundStartDate;
[ObservableProperty]
private GamePointStatus _status; private GamePointStatus _status;
[ObservableProperty] [ObservableProperty]
private List<RoundBuilderElement> elements; private List<RoundBuilderElement> elements;
public int GameRoundId
{
get { return _gameRoundId; }
set
{
_gameRoundId = value;
// No need to raise property changed for this example
}
}
public DateTime GameRoundStartDate
{
get { return _gameRoundStartDate; }
set
{
_gameRoundStartDate = value;
// No need to raise property changed for this example
}
}
public GamePointStatus Status
{
get { return _status; }
set
{
_status = value;
// No need to raise property changed for this example
}
}
//public List<RoundBuilderElement> Elements
//{
// get { return _elements; }
// set
// {
// _elements = value;
// OnPropertyChanged(nameof(Elements));
// // No need to raise property changed for this example
// }
//}
} }

View File

@ -57,35 +57,6 @@ public partial class RoundRunningViewModel : ObservableObject
RebuildRequested?.Invoke(this, EventArgs.Empty); RebuildRequested?.Invoke(this, EventArgs.Empty);
} }
//public ObservableCollection<RoundBuilderElement> RoundElements
//{
// get { return _roundElements; }
// set
// {
// _roundElements = value;
// OnPropertyChanged(nameof(RoundElements));
// }
//}
//public Collection<PlayerColumn> PlayerColumns
//{
// get { return _playerColumns; }
// set
// {
// _playerColumns = value;
// OnPropertyChanged(nameof(PlayerColumns));
// }
//}
//public RoundBuilderElement BuilderObject
//{
// get { return _builderObject; }
// set
// {
// _builderObject = value;
// OnPropertyChanged(nameof(BuilderObject));
// }
//}
public ObservableCollection<RoundBuilderElement> Get() public ObservableCollection<RoundBuilderElement> Get()

View File

@ -62,63 +62,6 @@ public partial class RoundStartingViewModel : ObservableObject
private ObservableCollection<Participant> participantList = new(); private ObservableCollection<Participant> participantList = new();
#region commented out
//public ObservableCollection<RoundBuilderElement> RoundElements
//{
// get { return _roundElements; }
// set
// {
// _roundElements = value;
// OnPropertyChanged(nameof(RoundElements));
// }
//}
//public Participant SelectedItem
//{
// get => _selectedItem;
// set
// {
// if (_selectedItem != value)
// {
// _selectedItem = value;
// OnPropertyChanged(nameof(SelectedItem));
// OnItemSelected(value); // Metod som triggas vid val
// }
// }
//}
//public GameRound? GameRoundObject
//{
// get { return _GameRoundObject; }
// set
// {
// _GameRoundObject = value;
// OnPropertyChanged(nameof(GameRoundObject));
// }
//}
//public ObservableCollection<RoundBuilderGroup> GameRoundList
//{
// get { return _GameRoundList; }
// set
// {
// _GameRoundList = value;
// OnPropertyChanged(nameof(GameRoundList));
// }
//}
//public ObservableCollection<Participant> ParticipantList
//{
// get { return _ParticipantList; }
// set
// {
// _ParticipantList = value;
// OnPropertyChanged(nameof(ParticipantList));
// }
//}
#endregion
private void OnItemSelected(Participant item) private void OnItemSelected(Participant item)
{ {
if (RoundElements.Count == 0) if (RoundElements.Count == 0)