Working ver.1.3
This commit is contained in:
80
WpfApp1/WpfApp1/Data/coaches.json
Normal file
80
WpfApp1/WpfApp1/Data/coaches.json
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"Surname": "Платонова",
|
||||||
|
"Name": "Ева",
|
||||||
|
"Patronymic": "Артёмовна",
|
||||||
|
"Speciality": "Пилатес"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Кочетова",
|
||||||
|
"Name": "Виктория",
|
||||||
|
"Patronymic": "Макаровна",
|
||||||
|
"Speciality": "Кроссфит"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Филиппова",
|
||||||
|
"Name": "Ангелина",
|
||||||
|
"Patronymic": "Антоновна",
|
||||||
|
"Speciality": "Фитнес-ЙОГА"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Карасев",
|
||||||
|
"Name": "Данил",
|
||||||
|
"Patronymic": "Викторович",
|
||||||
|
"Speciality": "Кроссфит"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Романова",
|
||||||
|
"Name": "Александра",
|
||||||
|
"Patronymic": "Евгеньевна",
|
||||||
|
"Speciality": "Растяжка"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Смирнов",
|
||||||
|
"Name": "Егор",
|
||||||
|
"Patronymic": "Янович",
|
||||||
|
"Speciality": "Силовая тренировка"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Андреева",
|
||||||
|
"Name": "Светлана",
|
||||||
|
"Patronymic": "Данииловна",
|
||||||
|
"Speciality": "Аквааэробика"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Антонов",
|
||||||
|
"Name": "Евгений",
|
||||||
|
"Patronymic": "Евгеньевич",
|
||||||
|
"Speciality": "Аквааэробика"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Романова",
|
||||||
|
"Name": "Тамара",
|
||||||
|
"Patronymic": "Дмитриевна",
|
||||||
|
"Speciality": "Растяжка"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Фирсова",
|
||||||
|
"Name": "Варвара",
|
||||||
|
"Patronymic": "Антоновна",
|
||||||
|
"Speciality": "Фитнес-ЙОГА"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Захаров",
|
||||||
|
"Name": "Платон",
|
||||||
|
"Patronymic": "Ярославович",
|
||||||
|
"Speciality": "Зумба"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Смирнов",
|
||||||
|
"Name": "Максим",
|
||||||
|
"Patronymic": "Максимович",
|
||||||
|
"Speciality": "Силовая тренировка"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Surname": "Золотова",
|
||||||
|
"Name": "Александра",
|
||||||
|
"Patronymic": "Григорьевна",
|
||||||
|
"Speciality": "Зумба"
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -143,7 +143,7 @@ namespace WpfApp1
|
|||||||
new Coach { Surname="Петров И.И.", Speciality="Силовой тренинг" }
|
new Coach { Surname="Петров И.И.", Speciality="Силовой тренинг" }
|
||||||
};
|
};
|
||||||
|
|
||||||
RecordWindow recordWin = new RecordWindow(_selectedClient, coaches);
|
RecordWindow recordWin = new RecordWindow(_selectedClient);
|
||||||
recordWin.ShowDialog();
|
recordWin.ShowDialog();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
<TextBox x:Name="txtClientName" IsReadOnly="True" Background="#3D3D3D"/>
|
<TextBox x:Name="txtClientName" IsReadOnly="True" Background="#3D3D3D"/>
|
||||||
|
|
||||||
<TextBlock Text="Специальность" Margin="0,10,0,5"/>
|
<TextBlock Text="Специальность" Margin="0,10,0,5"/>
|
||||||
<ComboBox x:Name="cbSpeciality" SelectionChanged="cbSpeciality_SelectionChanged"/>
|
<ComboBox x:Name="cbSpeciality" SelectionChanged="cbSpeciality_SelectionChanged" DisplayMemberPath="Speciality"/>
|
||||||
|
|
||||||
<TextBlock Text="Тренер" Margin="0,10,0,5"/>
|
<TextBlock Text="Тренер" Margin="0,10,0,5"/>
|
||||||
<ComboBox x:Name="cbCoach" DisplayMemberPath="Surname"/>
|
<ComboBox x:Name="cbCoach" DisplayMemberPath="Surname"/>
|
||||||
|
|||||||
@@ -22,13 +22,34 @@ namespace WpfApp1
|
|||||||
public partial class RecordWindow : Window
|
public partial class RecordWindow : Window
|
||||||
{
|
{
|
||||||
private Client _currentClient;
|
private Client _currentClient;
|
||||||
private List<Coach> _allCoaches;
|
private List<Coach> _allCoaches = new List<Coach>();
|
||||||
|
private const string CoachesFilePath = "Data/coaches.json";
|
||||||
|
|
||||||
public RecordWindow(Client client, List<Coach> coaches)
|
private void LoadCoachesData()
|
||||||
|
{
|
||||||
|
if (File.Exists(CoachesFilePath))
|
||||||
|
{
|
||||||
|
string json = File.ReadAllText(CoachesFilePath);
|
||||||
|
var options = new JsonSerializerOptions { PropertyNameCaseInsensitive = true };
|
||||||
|
|
||||||
|
_allCoaches = JsonSerializer.Deserialize<List<Coach>>(json, options) ?? new List<Coach>();
|
||||||
|
|
||||||
|
// Заполняем ComboBox специальностей
|
||||||
|
cbSpeciality.ItemsSource = _allCoaches
|
||||||
|
.Select(c => c.Speciality)
|
||||||
|
.Distinct()
|
||||||
|
.ToList();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Файл не найден по пути:");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public RecordWindow(Client client)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
LoadCoachesData();
|
||||||
_currentClient = client;
|
_currentClient = client;
|
||||||
_allCoaches = coaches;
|
|
||||||
|
|
||||||
txtClientName.Text = $"{client.surname} {client.name}";
|
txtClientName.Text = $"{client.surname} {client.name}";
|
||||||
|
|
||||||
@@ -52,7 +73,6 @@ namespace WpfApp1
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
// 1. Создаем новый экземпляр записи
|
|
||||||
Entry newEntry = new Entry
|
Entry newEntry = new Entry
|
||||||
{
|
{
|
||||||
Client = _currentClient,
|
Client = _currentClient,
|
||||||
|
|||||||
@@ -33,7 +33,6 @@ namespace WpfApp1
|
|||||||
|
|
||||||
LoadEntries();
|
LoadEntries();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void LoadEntries()
|
private void LoadEntries()
|
||||||
{
|
{
|
||||||
if (File.Exists(FilePath))
|
if (File.Exists(FilePath))
|
||||||
|
|||||||
@@ -142,6 +142,9 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="App.config" />
|
<None Include="App.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Folder Include="Data\" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
<Import Project="..\packages\System.ValueTuple.4.6.1\build\net471\System.ValueTuple.targets" Condition="Exists('..\packages\System.ValueTuple.4.6.1\build\net471\System.ValueTuple.targets')" />
|
<Import Project="..\packages\System.ValueTuple.4.6.1\build\net471\System.ValueTuple.targets" Condition="Exists('..\packages\System.ValueTuple.4.6.1\build\net471\System.ValueTuple.targets')" />
|
||||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||||
|
|||||||
Reference in New Issue
Block a user