сделала лоджики для студентов, групп и направлений с моковыми данными

починила тип проекта
отображаются списки на форме
This commit is contained in:
2025-06-09 22:54:54 +04:00
parent 988e6db8c4
commit 8ca935b1d5
42 changed files with 2849 additions and 882 deletions

View File

@@ -1,120 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{4AAF178E-2E63-49C7-A054-1CF8618B9DB1}</ProjectGuid>
<OutputType>WinExe</OutputType>
<RootNamespace>App_contingent_university</RootNamespace>
<AssemblyName>App_contingent_university</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<TargetFramework>net8.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<UseWindowsForms>true</UseWindowsForms>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<ProjectReference Include="..\Controller\Controller.csproj" />
</ItemGroup>
<ItemGroup>
<Compile Include="Forms\FormFilterStudents.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\FormFilterStudents.Designer.cs">
<DependentUpon>FormFilterStudents.cs</DependentUpon>
</Compile>
<Compile Include="Forms\FormMain.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\FormMain.Designer.cs">
<DependentUpon>FormMain.cs</DependentUpon>
</Compile>
<Compile Include="Forms\FormSpecs.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\FormSpecs.Designer.cs">
<DependentUpon>FormSpecs.cs</DependentUpon>
</Compile>
<Compile Include="Forms\FormUpdSpec.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\FormUpdSpec.Designer.cs">
<DependentUpon>FormUpdSpec.cs</DependentUpon>
</Compile>
<Compile Include="Forms\FormUpdStudent.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\FormUpdStudent.Designer.cs">
<DependentUpon>FormUpdStudent.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="Forms\FormFilterStudents.resx">
<DependentUpon>FormFilterStudents.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Forms\FormMain.resx">
<DependentUpon>FormMain.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Forms\FormSpecs.resx">
<DependentUpon>FormSpecs.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Forms\FormUpdSpec.resx">
<DependentUpon>FormUpdSpec.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Forms\FormUpdStudent.resx">
<DependentUpon>FormUpdStudent.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -3,11 +3,11 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.9.34714.143
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "App_contingent_university", "App_contingent_university.csproj", "{4AAF178E-2E63-49C7-A054-1CF8618B9DB1}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "App_contingent_university", "App_contingent_university.csproj", "{4AAF178E-2E63-49C7-A054-1CF8618B9DB1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DataModels", "..\DataModels\DataModels.csproj", "{9C5F04AA-81FA-4EDD-88D7-8A774DAF58C1}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DataModels", "..\DataModels\DataModels.csproj", "{9C5F04AA-81FA-4EDD-88D7-8A774DAF58C1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Controller", "..\Controller\Controller.csproj", "{ABF0591E-2C5D-426A-B542-30A89162E1A8}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Controller", "..\Controller\Controller.csproj", "{ABF0591E-2C5D-426A-B542-30A89162E1A8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution

View File

@@ -1,10 +1,6 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using Controller.BusinessLogic;
using Controller.Repository;
using System;
using System.Threading.Tasks;
using System.Windows.Forms;
@@ -12,9 +8,105 @@ namespace App_contingent_university.Forms
{
public partial class FormMain : Form
{
private readonly StudentLogic _studentLogic;
private readonly GroupLogic _groupLogic;
private readonly SpecializationLogic _specializationLogic;
private readonly AddStudentOrderLogic _addStudentOrderLogic;
private readonly ExpulsionOrderLogic _expulsionOrderLogic;
private readonly AcademicLeaveOrderLogic _cademicLeaveOrderLogic;
private readonly ChangeSpecializationOrderLogic _changeSpecializationOrderLogic;
private readonly NextCourseOrderLogic _nextCourseOrderLogic;
private readonly StudentRepository studentRepository;
private readonly GroupRepository groupRepository;
private readonly SpecializationRepository specializationRepository;
private readonly AddStudentsOrderRepository addStudentsOrderRepository;
private readonly ExpulsionOrderRepository expulsionOrderRepository;
private readonly AcademicLeaveOrderRepository academicLeaveOrderRepository;
private readonly ChangeSpecializationOrderRepository changeSpecializationOrderRepository;
private readonly NextCourseOrderRepository nextCourseOrderRepository;
public FormMain(StudentLogic studentLogic, GroupLogic groupLogic, SpecializationLogic specializationLogic,
AddStudentOrderLogic addStudentOrderLogic, ExpulsionOrderLogic expulsionOrderLogic,
AcademicLeaveOrderLogic cademicLeaveOrderLogic, ChangeSpecializationOrderLogic changeSpecializationOrderLogic,
NextCourseOrderLogic nextCourseOrderLogic,
StudentRepository studentRepository, GroupRepository groupRepository, SpecializationRepository specializationRepository,
AddStudentsOrderRepository addStudentsOrderRepository, ExpulsionOrderRepository expulsionOrderRepository,
AcademicLeaveOrderRepository academicLeaveOrderRepository, ChangeSpecializationOrderRepository changeSpecializationOrderRepository,
NextCourseOrderRepository nextCourseOrderRepository
)
{
_studentLogic = studentLogic;
_groupLogic = groupLogic;
_specializationLogic = specializationLogic;
_addStudentOrderLogic = addStudentOrderLogic;
_expulsionOrderLogic = expulsionOrderLogic;
_cademicLeaveOrderLogic = cademicLeaveOrderLogic;
_changeSpecializationOrderLogic = changeSpecializationOrderLogic;
_nextCourseOrderLogic = nextCourseOrderLogic;
this.studentRepository = studentRepository;
this.groupRepository = groupRepository;
this.specializationRepository = specializationRepository;
this.addStudentsOrderRepository = addStudentsOrderRepository;
this.expulsionOrderRepository = expulsionOrderRepository;
this.academicLeaveOrderRepository = academicLeaveOrderRepository;
this.changeSpecializationOrderRepository = changeSpecializationOrderRepository;
this.nextCourseOrderRepository = nextCourseOrderRepository;
InitializeComponent();
}
public FormMain()
{
InitializeComponent();
}
private async void MainPages_SelectedIndexChanged(object sender, EventArgs e)
{
if (MainPages.SelectedTab == StudentsPage)
{
await LoadStudentsData();
}
else if (MainPages.SelectedTab == GroupsPage)
{
await LoadGroupsData();
}
else if (MainPages.SelectedTab == SpecPage)
{
await LoadSpecializationData();
}
else if (MainPages.SelectedTab == OrdersPage)
{
}
}
private async Task LoadStudentsData()
{
var studLogic = new StudentLogic(studentRepository, groupRepository, specializationRepository);
var students = await studLogic.GetViewModel();
dataGridViewStudents.DataSource = students;
dataGridViewStudents.AutoGenerateColumns = true;
}
private async Task LoadGroupsData()
{
var groupLogic = new GroupLogic(specializationRepository, groupRepository);
var groups = await groupLogic.GetViewModel();
dataGridViewGroups.DataSource = groups;
dataGridViewGroups.AutoGenerateColumns = true;
}
private async Task LoadSpecializationData()
{
var specLogic = new SpecializationLogic(specializationRepository);
var specs = await specLogic.GetViewModel();
dataGridViewSpecs.DataSource = specs;
dataGridViewSpecs.AutoGenerateColumns = true;
}
}
}

View File

@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
@@ -26,36 +26,36 @@
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
@@ -141,13 +141,4 @@
<metadata name="menuStrip8.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>969, 17</value>
</metadata>
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="menuStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>153, 17</value>
</metadata>
<metadata name="menuStrip3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>289, 17</value>
</metadata>
</root>

View File

@@ -1,9 +1,4 @@
using App_contingent_university.Forms;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace App_contingent_university
{

View File

@@ -2,31 +2,8 @@
namespace Controller.BusinessLogic
{
public class AddStudentOrderLogic : AbstractLogic<NextCourseOrder>
public class AddStudentOrderLogic
{
public override NextCourseOrder add(NextCourseOrder entity)
{
throw new NotImplementedException();
}
public override NextCourseOrder get(int id)
{
throw new NotImplementedException();
}
public override List<NextCourseOrder> getAll()
{
throw new NotImplementedException();
}
public override NextCourseOrder remove(int id)
{
throw new NotImplementedException();
}
public override NextCourseOrder update(NextCourseOrder entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -2,31 +2,8 @@
namespace Controller.BusinessLogic
{
public class ChangeSpecializationOrderLogic : AbstractLogic<ChangeSpecializationOrder>
public class ChangeSpecializationOrderLogic
{
public override ChangeSpecializationOrder add(ChangeSpecializationOrder entity)
{
throw new NotImplementedException();
}
public override ChangeSpecializationOrder get(int id)
{
throw new NotImplementedException();
}
public override List<ChangeSpecializationOrder> getAll()
{
throw new NotImplementedException();
}
public override ChangeSpecializationOrder remove(int id)
{
throw new NotImplementedException();
}
public override ChangeSpecializationOrder update(ChangeSpecializationOrder entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -2,31 +2,8 @@
namespace Controller.BusinessLogic
{
public class ContingentReportLogic : AbstractLogic<ContingentReport<FacultLogic>>
public class ContingentReportLogic
{
public override ContingentReport<FacultLogic> add(ContingentReport<FacultLogic> entity)
{
throw new NotImplementedException();
}
public override ContingentReport<FacultLogic> get(int id)
{
throw new NotImplementedException();
}
public override List<ContingentReport<FacultLogic>> getAll()
{
throw new NotImplementedException();
}
public override ContingentReport<FacultLogic> remove(int id)
{
throw new NotImplementedException();
}
public override ContingentReport<FacultLogic> update(ContingentReport<FacultLogic> entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -2,31 +2,8 @@
namespace Controller.BusinessLogic
{
public class DeanLogic : AbstractLogic<User>
public class DeanLogic
{
public override User add(User entity)
{
throw new NotImplementedException();
}
public override User get(int id)
{
throw new NotImplementedException();
}
public override List<User> getAll()
{
throw new NotImplementedException();
}
public override User remove(int id)
{
throw new NotImplementedException();
}
public override User update(User entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -2,31 +2,8 @@
namespace Controller.BusinessLogic
{
public class ExpulsionOrderLogic : AbstractLogic<NextCourseOrder>
public class ExpulsionOrderLogic
{
public override NextCourseOrder add(NextCourseOrder entity)
{
throw new NotImplementedException();
}
public override NextCourseOrder get(int id)
{
throw new NotImplementedException();
}
public override List<NextCourseOrder> getAll()
{
throw new NotImplementedException();
}
public override NextCourseOrder remove(int id)
{
throw new NotImplementedException();
}
public override NextCourseOrder update(NextCourseOrder entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -2,31 +2,8 @@
namespace Controller.BusinessLogic
{
public class FacultLogic : AbstractLogic<User>
public class FacultLogic
{
public override User add(User entity)
{
throw new NotImplementedException();
}
public override User get(int id)
{
throw new NotImplementedException();
}
public override List<User> getAll()
{
throw new NotImplementedException();
}
public override User remove(int id)
{
throw new NotImplementedException();
}
public override User update(User entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -1,32 +1,52 @@
using DataModels.Models;
using Controller.Repository;
using Controller.ViewModels;
using DataModels.Models;
namespace Controller.BusinessLogic
{
public class GroupLogic : AbstractLogic<Group>
public class GroupLogic
{
public override Group add(Group entity)
private readonly SpecializationRepository _specializationRepository;
private readonly GroupRepository _groupRepository;
public GroupLogic(SpecializationRepository rep, GroupRepository groupRepository)
{
throw new NotImplementedException();
_specializationRepository = rep;
_groupRepository = groupRepository;
}
public override Group get(int id)
public async Task<List<GroupViewModel>> GetViewModel()
{
throw new NotImplementedException();
}
//var groups = await _groupRepository.GetAll();
public override List<Group> getAll()
{
throw new NotImplementedException();
}
//var specialization = student.SpecializationId.HasValue
// ? await _specializationRepository.Get(group.SpecializationId.Value) : null;
public override Group remove(int id)
{
throw new NotImplementedException();
}
var specs = new List<Specialization>
{
new Specialization{Id = 1, Code = "1234", Name = "Программная инженерия"},
new Specialization{Id = 2, Code = "5678", Name = "Информатика"},
public override Group update(Group entity)
{
throw new NotImplementedException();
};
var groups = new List<Group>
{
new Group{Id = 1, Course = 3, Name = "ПИ", Number = 1, CountStudents = 29, SpecializationId = 1},
new Group{Id = 2, Course = 3, Name = "ПМ", Number = 4, CountStudents = 24, SpecializationId = 2},
};
var results = new List<GroupViewModel>();
foreach (var group in groups)
{
var spec = group.SpecializationId.HasValue
? specs.FirstOrDefault(s => s.Id == group.SpecializationId.Value)
: group?.SpecializationId != null
? specs.FirstOrDefault(s => s.Id == group.SpecializationId)
: null;
results.Add(new GroupViewModel(group, spec));
}
return results;
}
}
}

View File

@@ -2,31 +2,8 @@
namespace Controller.BusinessLogic
{
public class LearningPlanLogic : AbstractLogic<User>
public class LearningPlanLogic
{
public override User add(User entity)
{
throw new NotImplementedException();
}
public override User get(int id)
{
throw new NotImplementedException();
}
public override List<User> getAll()
{
throw new NotImplementedException();
}
public override User remove(int id)
{
throw new NotImplementedException();
}
public override User update(User entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -2,31 +2,7 @@
namespace Controller.BusinessLogic
{
public class NextCourseOrderLogic : AbstractLogic<NextCourseOrder>
public class NextCourseOrderLogic
{
public override NextCourseOrder add(NextCourseOrder entity)
{
throw new NotImplementedException();
}
public override NextCourseOrder get(int id)
{
throw new NotImplementedException();
}
public override List<NextCourseOrder> getAll()
{
throw new NotImplementedException();
}
public override NextCourseOrder remove(int id)
{
throw new NotImplementedException();
}
public override NextCourseOrder update(NextCourseOrder entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -1,32 +1,36 @@
using DataModels.Models;
using Controller.Repository;
using Controller.ViewModels;
using DataModels.Enums;
using DataModels.Models;
namespace Controller.BusinessLogic
{
public class SpecializationLogic : AbstractLogic<User>
public class SpecializationLogic
{
public override User add(User entity)
private readonly SpecializationRepository _specializationRepository;
public SpecializationLogic(SpecializationRepository rep)
{
throw new NotImplementedException();
_specializationRepository = rep;
}
public override User get(int id)
public async Task<List<SpecialisationViewModel>> GetViewModel()
{
throw new NotImplementedException();
}
//var specs = await _specializationRepository.GetAll();
public override List<User> getAll()
{
throw new NotImplementedException();
}
var specs = new List<Specialization>
{
new Specialization{Id = 1, Code = "1234", Name = "Программная инженерия"},
new Specialization{Id = 2, Code = "5678", Name = "Информатика"},
public override User remove(int id)
{
throw new NotImplementedException();
}
};
public override User update(User entity)
{
throw new NotImplementedException();
var results = new List<SpecialisationViewModel>();
foreach (var spec in specs)
{
results.Add(new SpecialisationViewModel(spec));
}
return results;
}
}
}

View File

@@ -1,32 +1,84 @@
using DataModels.Models;
using Controller.Repository;
using Controller.ViewModels;
using DataModels.Enums;
using DataModels.Models;
namespace Controller.BusinessLogic
{
public class StudentLogic : AbstractLogic<Student>
public class StudentLogic
{
public override Student add(Student entity)
private readonly StudentRepository _studentRepository;
private readonly GroupRepository _groupRepository;
private readonly SpecializationRepository _specializationRepository;
public StudentLogic(StudentRepository studentRepository, GroupRepository groupRepository, SpecializationRepository specializationRepository)
{
throw new NotImplementedException();
_studentRepository = studentRepository;
_groupRepository = groupRepository;
_specializationRepository = specializationRepository;
}
public override Student get(int id)
public async Task<List<StudentViewModel>> GetViewModel()
{
throw new NotImplementedException();
//var students = await _studentRepository.GetAll();
var students = new List<Student>
{
new Student { Id = 1, Name = "Иванов", GroupId = 1, SpecializationId = null, Status = Status.Study },
new Student { Id = 2, Name = "Петров", GroupId = null, SpecializationId = null, Status = Status.Academ },
new Student { Id = 3, Name = "Сидорова", GroupId = 2, SpecializationId = null }
};
var result = new List<StudentViewModel>();
var groups = new List<Group>
{
new Group { Id = 1, Name = "Группа 101", Course = 1, SpecializationId = 1, MaxStudentCount = 25, Number = 101 },
new Group { Id = 2, Name = "Группа 202", Course = 2, SpecializationId = 2, MaxStudentCount = 30, Number = 202 },
new Group { Id = 3, Name = "Группа 303", Course = 3, SpecializationId = 3, MaxStudentCount = 20, Number = 303 }
};
// Моковые данные специализаций
var specializations = new List<Specialization>
{
new Specialization { Id = 1, Name = "Информатика", Code = "INF" },
new Specialization { Id = 2, Name = "Математика", Code = "MATH" },
new Specialization { Id = 3, Name = "Физика", Code = "PHYS" }
};
foreach (var student in students)
{
//var group = student.GroupId.HasValue
// ? await _groupRepository.Get(student.GroupId.Value) : null;
//var specialization = student.SpecializationId.HasValue
// ? await _specializationRepository.Get(student.SpecializationId.Value) : null;
var group = student.GroupId.HasValue
? groups.FirstOrDefault(g => g.Id == student.GroupId.Value)
: null;
var specialization = student.SpecializationId.HasValue
? specializations.FirstOrDefault(s => s.Id == student.SpecializationId.Value)
: group?.SpecializationId != null
? specializations.FirstOrDefault(s => s.Id == group.SpecializationId)
: null;
result.Add(new StudentViewModel(student, group, specialization));
}
return result;
}
public override List<Student> getAll()
public Dictionary<Status, string> GetStatusNames()
{
throw new NotImplementedException();
}
public override Student remove(int id)
{
throw new NotImplementedException();
}
public override Student update(Student entity)
{
throw new NotImplementedException();
return new Dictionary<Status, string>
{
{ Status.Study, "Обучается" },
{ Status.Expulsion, "Отчислен" },
{ Status.Graduated, "Завершил обучение, выпущен" },
{ Status.Academ, "Академический отпуск" }
};
}
}
}

View File

@@ -2,31 +2,8 @@
namespace Controller.BusinessLogic
{
public class UserLogic : AbstractLogic<User>
public class UserLogic
{
public override User add(User entity)
{
throw new NotImplementedException();
}
public override User get(int id)
{
throw new NotImplementedException();
}
public override List<User> getAll()
{
throw new NotImplementedException();
}
public override User remove(int id)
{
throw new NotImplementedException();
}
public override User update(User entity)
{
throw new NotImplementedException();
}
}
}

View File

@@ -5,7 +5,7 @@
public string? Name { get; set; } = string.Empty;
public int? Number { get; set; }
public int? Course { get; set; }
public int? MaxStudentCount { get; set; };
public int? MaxStudentCount { get; set; }
public int? SpecializationId { get; set; }
}
}

View File

@@ -1,4 +1,6 @@
namespace Controller.Contracts
using DataModels.Enums;
namespace Controller.Contracts
{
public class StudentSearch
{
@@ -7,5 +9,6 @@
public string? Patronymic { get; set; } = string.Empty;
public int? SpecializationId { get; set; }
public int? GroupId { get; set; }
public Status? Status { get; set; }
}
}

View File

@@ -0,0 +1,48 @@
using DataModels.Models;
using System.ComponentModel;
namespace Controller.ViewModels
{
public class GroupViewModel
{
public GroupViewModel(Group group, Specialization spec)
{
Id = group.Id;
Name = group.Name ?? "";
Number = group.Number ?? null;
Course = group.Course ?? null;
MaxStudentCount = group.MaxStudentCount ?? null;
CountStudents = group.CountStudents ?? null;
SpecializationId = group.SpecializationId ?? null;
FullName = group.FullName() ?? "Не определена";
Specialization = spec.Name ?? "Не определена";
}
[Browsable(false)]
public int Id { get; set; }
[Browsable(false)]
public string? Name { get; set; } = string.Empty;
[Browsable(false)]
public int? Number { get; set; }
[Browsable(false)]
public int? Course { get; set; }
[Browsable(false)]
public int? MaxStudentCount { get; set; } = 30;
[DisplayName("Наименование")]
public string? FullName { get; set; } = string.Empty;
[DisplayName("Количество студентов")]
public int? CountStudents { get; set; }
[DisplayName("Специализация")]
public string? Specialization { get; set; }
[Browsable(false)]
public int? SpecializationId { get; set; }
}
}

View File

@@ -0,0 +1,24 @@
using DataModels.Models;
using System.ComponentModel;
namespace Controller.ViewModels
{
public class SpecialisationViewModel
{
public SpecialisationViewModel(Specialization spec)
{
Id = spec.Id;
Name = spec.Name ?? "Не указано";
Code = spec.Code ?? "Не указано";
}
[Browsable(false)]
public int Id { get; set; }
[DisplayName("Наименование")]
public string? Name { get; set; } = string.Empty;
[DisplayName("Код направления")]
public string? Code { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,41 @@
using DataModels.Models;
using System.ComponentModel;
namespace Controller.ViewModels
{
public class StudentViewModel
{
public StudentViewModel(Student student, Group group, Specialization specialization)
{
Id = student.Id;
LastName = student.LastName ?? string.Empty;
Name = student.Name ?? string.Empty;
Patronymic = student.Patronymic ?? string.Empty;
GroupName = group?.Name ?? "Не указана";
SpecializationName = specialization?.Name ?? "Не указана";
Status = student.Status.ToString() ?? "Не определён";
}
[Browsable(false)]
public int Id { get; set; }
[DisplayName("Фамилия")]
public string? LastName { get; set; }
[DisplayName("Имя")]
public string? Name { get; set; }
[DisplayName("Отчество")]
public string? Patronymic { get; set; }
[DisplayName("Група")]
public string? GroupName { get; set; }
[DisplayName("Направление")]
public string? SpecializationName { get; set; }
[DisplayName("Статус")]
public string? Status { get; set; }
}
}

View File

@@ -3,10 +3,21 @@
public class Group : Model
{
// здесь есть максимально допустимое количество студентов
public string Name { get; set; } = string.Empty;
public int Number { get; set; }
public int Course { get; set; }
public int MaxStudentCount { get; set; } = 30;
public string? Name { get; set; } = string.Empty;
public int? Number { get; set; }
public int? Course { get; set; }
public int? MaxStudentCount { get; set; } = 30;
public int? SpecializationId { get; set; }
public int? CountStudents { get; set; }
public string? FullName()
{
return Name + $"-{Course}{Number}";
}
public bool HavePlace()
{
return MaxStudentCount + 1 >= CountStudents;
}
}
}

View File

@@ -7,7 +7,7 @@ namespace DataModels.Models
{
public int? SpecializationId { get; set; }
public int? GroupId { get; set; }
public Status Status { get; set; }
public Status? Status { get; set; }
}
}

View File

@@ -0,0 +1,176 @@
namespace App_contingent_university.Forms
{
partial class FormFilterStudents
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.buttonOK = new System.Windows.Forms.Button();
this.labelF = new System.Windows.Forms.Label();
this.textBoxLastName = new System.Windows.Forms.TextBox();
this.textBoxName = new System.Windows.Forms.TextBox();
this.labelI = new System.Windows.Forms.Label();
this.textBoxPatronimic = new System.Windows.Forms.TextBox();
this.labelPatronimic = new System.Windows.Forms.Label();
this.comboBoxSpec = new System.Windows.Forms.ComboBox();
this.labelSpec = new System.Windows.Forms.Label();
this.labelGroup = new System.Windows.Forms.Label();
this.comboBoxGroup = new System.Windows.Forms.ComboBox();
this.SuspendLayout();
//
// buttonOK
//
this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.buttonOK.BackColor = System.Drawing.Color.Orange;
this.buttonOK.ForeColor = System.Drawing.Color.Black;
this.buttonOK.Location = new System.Drawing.Point(154, 284);
this.buttonOK.Name = "buttonOK";
this.buttonOK.Size = new System.Drawing.Size(113, 37);
this.buttonOK.TabIndex = 0;
this.buttonOK.Text = "Применить";
this.buttonOK.UseVisualStyleBackColor = false;
//
// labelF
//
this.labelF.AutoSize = true;
this.labelF.Location = new System.Drawing.Point(12, 26);
this.labelF.Name = "labelF";
this.labelF.Size = new System.Drawing.Size(66, 16);
this.labelF.TabIndex = 1;
this.labelF.Text = "Фамилия";
//
// textBoxLastName
//
this.textBoxLastName.Location = new System.Drawing.Point(107, 20);
this.textBoxLastName.Name = "textBoxLastName";
this.textBoxLastName.Size = new System.Drawing.Size(160, 22);
this.textBoxLastName.TabIndex = 2;
//
// textBoxName
//
this.textBoxName.Location = new System.Drawing.Point(107, 56);
this.textBoxName.Name = "textBoxName";
this.textBoxName.Size = new System.Drawing.Size(160, 22);
this.textBoxName.TabIndex = 4;
//
// labelI
//
this.labelI.AutoSize = true;
this.labelI.Location = new System.Drawing.Point(12, 62);
this.labelI.Name = "labelI";
this.labelI.Size = new System.Drawing.Size(33, 16);
this.labelI.TabIndex = 3;
this.labelI.Text = "Имя";
//
// textBoxPatronimic
//
this.textBoxPatronimic.Location = new System.Drawing.Point(107, 94);
this.textBoxPatronimic.Name = "textBoxPatronimic";
this.textBoxPatronimic.Size = new System.Drawing.Size(160, 22);
this.textBoxPatronimic.TabIndex = 6;
//
// labelPatronimic
//
this.labelPatronimic.AutoSize = true;
this.labelPatronimic.Location = new System.Drawing.Point(12, 100);
this.labelPatronimic.Name = "labelPatronimic";
this.labelPatronimic.Size = new System.Drawing.Size(70, 16);
this.labelPatronimic.TabIndex = 5;
this.labelPatronimic.Text = "Отчество";
//
// comboBoxSpec
//
this.comboBoxSpec.FormattingEnabled = true;
this.comboBoxSpec.Location = new System.Drawing.Point(123, 134);
this.comboBoxSpec.Name = "comboBoxSpec";
this.comboBoxSpec.Size = new System.Drawing.Size(145, 24);
this.comboBoxSpec.TabIndex = 7;
//
// labelSpec
//
this.labelSpec.AutoSize = true;
this.labelSpec.Location = new System.Drawing.Point(12, 142);
this.labelSpec.Name = "labelSpec";
this.labelSpec.Size = new System.Drawing.Size(97, 16);
this.labelSpec.TabIndex = 8;
this.labelSpec.Text = "Направление";
//
// labelGroup
//
this.labelGroup.AutoSize = true;
this.labelGroup.Location = new System.Drawing.Point(12, 183);
this.labelGroup.Name = "labelGroup";
this.labelGroup.Size = new System.Drawing.Size(54, 16);
this.labelGroup.TabIndex = 10;
this.labelGroup.Text = "Группа";
//
// comboBoxGroup
//
this.comboBoxGroup.FormattingEnabled = true;
this.comboBoxGroup.Location = new System.Drawing.Point(125, 180);
this.comboBoxGroup.Name = "comboBoxGroup";
this.comboBoxGroup.Size = new System.Drawing.Size(142, 24);
this.comboBoxGroup.TabIndex = 9;
//
// FormFilterStudents
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.LightSteelBlue;
this.ClientSize = new System.Drawing.Size(280, 333);
this.Controls.Add(this.labelGroup);
this.Controls.Add(this.comboBoxGroup);
this.Controls.Add(this.labelSpec);
this.Controls.Add(this.comboBoxSpec);
this.Controls.Add(this.textBoxPatronimic);
this.Controls.Add(this.labelPatronimic);
this.Controls.Add(this.textBoxName);
this.Controls.Add(this.labelI);
this.Controls.Add(this.textBoxLastName);
this.Controls.Add(this.labelF);
this.Controls.Add(this.buttonOK);
this.Name = "FormFilterStudents";
this.Text = "Фильтр";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Button buttonOK;
private System.Windows.Forms.Label labelF;
private System.Windows.Forms.TextBox textBoxLastName;
private System.Windows.Forms.TextBox textBoxName;
private System.Windows.Forms.Label labelI;
private System.Windows.Forms.TextBox textBoxPatronimic;
private System.Windows.Forms.Label labelPatronimic;
private System.Windows.Forms.ComboBox comboBoxSpec;
private System.Windows.Forms.Label labelSpec;
private System.Windows.Forms.Label labelGroup;
private System.Windows.Forms.ComboBox comboBoxGroup;
}
}

View File

@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace App_contingent_university.Forms
{
public partial class FormFilterStudents : Form
{
public FormFilterStudents()
{
InitializeComponent();
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,614 @@
namespace App_contingent_university.Forms
{
partial class FormMain
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.MainPages = new System.Windows.Forms.TabControl();
this.StudentsPage = new System.Windows.Forms.TabPage();
this.dataGridViewStudents = new System.Windows.Forms.DataGridView();
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.фильтрацияToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.SpecPage = new System.Windows.Forms.TabPage();
this.dataGridViewSpecs = new System.Windows.Forms.DataGridView();
this.menuStrip2 = new System.Windows.Forms.MenuStrip();
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.добавитьНаправлениеToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.GroupsPage = new System.Windows.Forms.TabPage();
this.dataGridViewGroups = new System.Windows.Forms.DataGridView();
this.menuStrip3 = new System.Windows.Forms.MenuStrip();
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
this.добавитьГруппуToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.OrdersPage = new System.Windows.Forms.TabPage();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPageAddStudent = new System.Windows.Forms.TabPage();
this.dataGridView = new System.Windows.Forms.DataGridView();
this.menuStrip4 = new System.Windows.Forms.MenuStrip();
this.создатьПриказToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.создатьПриказToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.tabPageExpulsion = new System.Windows.Forms.TabPage();
this.dataGridView3 = new System.Windows.Forms.DataGridView();
this.menuStrip5 = new System.Windows.Forms.MenuStrip();
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem();
this.tabPageAcademicLeave = new System.Windows.Forms.TabPage();
this.dataGridView4 = new System.Windows.Forms.DataGridView();
this.menuStrip6 = new System.Windows.Forms.MenuStrip();
this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem6 = new System.Windows.Forms.ToolStripMenuItem();
this.tabPageNextCourse = new System.Windows.Forms.TabPage();
this.dataGridView5 = new System.Windows.Forms.DataGridView();
this.menuStrip7 = new System.Windows.Forms.MenuStrip();
this.toolStripMenuItem7 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem8 = new System.Windows.Forms.ToolStripMenuItem();
this.tabPageOtherSpec = new System.Windows.Forms.TabPage();
this.dataGridView6 = new System.Windows.Forms.DataGridView();
this.menuStrip8 = new System.Windows.Forms.MenuStrip();
this.toolStripMenuItem9 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem10 = new System.Windows.Forms.ToolStripMenuItem();
this.MainPages.SuspendLayout();
this.StudentsPage.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewStudents)).BeginInit();
this.menuStrip1.SuspendLayout();
this.SpecPage.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewSpecs)).BeginInit();
this.menuStrip2.SuspendLayout();
this.GroupsPage.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewGroups)).BeginInit();
this.menuStrip3.SuspendLayout();
this.OrdersPage.SuspendLayout();
this.tabControl1.SuspendLayout();
this.tabPageAddStudent.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView)).BeginInit();
this.menuStrip4.SuspendLayout();
this.tabPageExpulsion.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView3)).BeginInit();
this.menuStrip5.SuspendLayout();
this.tabPageAcademicLeave.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView4)).BeginInit();
this.menuStrip6.SuspendLayout();
this.tabPageNextCourse.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView5)).BeginInit();
this.menuStrip7.SuspendLayout();
this.tabPageOtherSpec.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView6)).BeginInit();
this.menuStrip8.SuspendLayout();
this.SuspendLayout();
//
// MainPages
//
this.MainPages.Controls.Add(this.StudentsPage);
this.MainPages.Controls.Add(this.SpecPage);
this.MainPages.Controls.Add(this.GroupsPage);
this.MainPages.Controls.Add(this.OrdersPage);
this.MainPages.Dock = System.Windows.Forms.DockStyle.Fill;
this.MainPages.Location = new System.Drawing.Point(0, 0);
this.MainPages.Name = "MainPages";
this.MainPages.SelectedIndex = 0;
this.MainPages.Size = new System.Drawing.Size(1082, 601);
this.MainPages.TabIndex = 0;
//
// StudentsPage
//
this.StudentsPage.Controls.Add(this.dataGridViewStudents);
this.StudentsPage.Controls.Add(this.menuStrip1);
this.StudentsPage.Location = new System.Drawing.Point(4, 25);
this.StudentsPage.Name = "StudentsPage";
this.StudentsPage.Padding = new System.Windows.Forms.Padding(3);
this.StudentsPage.Size = new System.Drawing.Size(1074, 572);
this.StudentsPage.TabIndex = 0;
this.StudentsPage.Text = "Студенты";
this.StudentsPage.UseVisualStyleBackColor = true;
//
// dataGridViewStudents
//
this.dataGridViewStudents.BackgroundColor = System.Drawing.Color.AliceBlue;
this.dataGridViewStudents.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridViewStudents.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridViewStudents.Location = new System.Drawing.Point(3, 33);
this.dataGridViewStudents.Name = "dataGridViewStudents";
this.dataGridViewStudents.RowHeadersWidth = 51;
this.dataGridViewStudents.RowTemplate.Height = 24;
this.dataGridViewStudents.Size = new System.Drawing.Size(1068, 536);
this.dataGridViewStudents.TabIndex = 2;
//
// menuStrip1
//
this.menuStrip1.ImageScalingSize = new System.Drawing.Size(20, 20);
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.фильтрацияToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(3, 3);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(1068, 30);
this.menuStrip1.TabIndex = 3;
this.menuStrip1.Text = "menuStrip1";
//
// фильтрацияToolStripMenuItem
//
this.фильтрацияToolStripMenuItem.Name = "фильтрацияToolStripMenuItem";
this.фильтрацияToolStripMenuItem.Size = new System.Drawing.Size(108, 24);
this.фильтрацияToolStripMenuItem.Text = "Фильтрация";
//
// SpecPage
//
this.SpecPage.Controls.Add(this.dataGridViewSpecs);
this.SpecPage.Controls.Add(this.menuStrip2);
this.SpecPage.Location = new System.Drawing.Point(4, 25);
this.SpecPage.Name = "SpecPage";
this.SpecPage.Padding = new System.Windows.Forms.Padding(3);
this.SpecPage.Size = new System.Drawing.Size(1074, 572);
this.SpecPage.TabIndex = 1;
this.SpecPage.Text = "Направления";
this.SpecPage.UseVisualStyleBackColor = true;
//
// dataGridViewSpecs
//
this.dataGridViewSpecs.BackgroundColor = System.Drawing.Color.AliceBlue;
this.dataGridViewSpecs.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridViewSpecs.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridViewSpecs.Location = new System.Drawing.Point(3, 31);
this.dataGridViewSpecs.Name = "dataGridViewSpecs";
this.dataGridViewSpecs.RowHeadersWidth = 51;
this.dataGridViewSpecs.RowTemplate.Height = 24;
this.dataGridViewSpecs.Size = new System.Drawing.Size(1068, 538);
this.dataGridViewSpecs.TabIndex = 2;
//
// menuStrip2
//
this.menuStrip2.ImageScalingSize = new System.Drawing.Size(20, 20);
this.menuStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem1,
this.добавитьНаправлениеToolStripMenuItem});
this.menuStrip2.Location = new System.Drawing.Point(3, 3);
this.menuStrip2.Name = "menuStrip2";
this.menuStrip2.Size = new System.Drawing.Size(1068, 28);
this.menuStrip2.TabIndex = 3;
this.menuStrip2.Text = "menuStrip2";
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
this.toolStripMenuItem1.Size = new System.Drawing.Size(108, 24);
this.toolStripMenuItem1.Text = "Фильтрация";
//
// добавитьНаправлениеToolStripMenuItem
//
this.добавитьНаправлениеToolStripMenuItem.Name = обавитьНаправлениеToolStripMenuItem";
this.добавитьНаправлениеToolStripMenuItem.Size = new System.Drawing.Size(187, 24);
this.добавитьНаправлениеToolStripMenuItem.Text = "Добавить направление";
//
// GroupsPage
//
this.GroupsPage.Controls.Add(this.dataGridViewGroups);
this.GroupsPage.Controls.Add(this.menuStrip3);
this.GroupsPage.Location = new System.Drawing.Point(4, 25);
this.GroupsPage.Name = "GroupsPage";
this.GroupsPage.Size = new System.Drawing.Size(1074, 572);
this.GroupsPage.TabIndex = 2;
this.GroupsPage.Text = "Группы";
this.GroupsPage.UseVisualStyleBackColor = true;
//
// dataGridViewGroups
//
this.dataGridViewGroups.BackgroundColor = System.Drawing.Color.AliceBlue;
this.dataGridViewGroups.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridViewGroups.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridViewGroups.Location = new System.Drawing.Point(0, 28);
this.dataGridViewGroups.Name = "dataGridViewGroups";
this.dataGridViewGroups.RowHeadersWidth = 51;
this.dataGridViewGroups.RowTemplate.Height = 24;
this.dataGridViewGroups.Size = new System.Drawing.Size(1074, 544);
this.dataGridViewGroups.TabIndex = 2;
//
// menuStrip3
//
this.menuStrip3.ImageScalingSize = new System.Drawing.Size(20, 20);
this.menuStrip3.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem2,
this.добавитьГруппуToolStripMenuItem});
this.menuStrip3.Location = new System.Drawing.Point(0, 0);
this.menuStrip3.Name = "menuStrip3";
this.menuStrip3.Size = new System.Drawing.Size(1074, 28);
this.menuStrip3.TabIndex = 3;
this.menuStrip3.Text = "menuStrip3";
//
// toolStripMenuItem2
//
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
this.toolStripMenuItem2.Size = new System.Drawing.Size(108, 24);
this.toolStripMenuItem2.Text = "Фильтрация";
//
// добавитьГруппуToolStripMenuItem
//
this.добавитьГруппуToolStripMenuItem.Name = обавитьГруппуToolStripMenuItem";
this.добавитьГруппуToolStripMenuItem.Size = new System.Drawing.Size(141, 24);
this.добавитьГруппуToolStripMenuItem.Text = "Добавить группу";
//
// OrdersPage
//
this.OrdersPage.Controls.Add(this.tabControl1);
this.OrdersPage.Location = new System.Drawing.Point(4, 25);
this.OrdersPage.Name = "OrdersPage";
this.OrdersPage.Size = new System.Drawing.Size(1074, 572);
this.OrdersPage.TabIndex = 3;
this.OrdersPage.Text = "Приказы";
this.OrdersPage.UseVisualStyleBackColor = true;
//
// tabControl1
//
this.tabControl1.Controls.Add(this.tabPageAddStudent);
this.tabControl1.Controls.Add(this.tabPageExpulsion);
this.tabControl1.Controls.Add(this.tabPageAcademicLeave);
this.tabControl1.Controls.Add(this.tabPageNextCourse);
this.tabControl1.Controls.Add(this.tabPageOtherSpec);
this.tabControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControl1.Location = new System.Drawing.Point(0, 0);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(1074, 572);
this.tabControl1.TabIndex = 0;
//
// tabPageAddStudent
//
this.tabPageAddStudent.Controls.Add(this.dataGridView);
this.tabPageAddStudent.Controls.Add(this.menuStrip4);
this.tabPageAddStudent.Location = new System.Drawing.Point(4, 25);
this.tabPageAddStudent.Name = "tabPageAddStudent";
this.tabPageAddStudent.Padding = new System.Windows.Forms.Padding(3);
this.tabPageAddStudent.Size = new System.Drawing.Size(1066, 543);
this.tabPageAddStudent.TabIndex = 0;
this.tabPageAddStudent.Text = "Зачисление";
this.tabPageAddStudent.UseVisualStyleBackColor = true;
//
// dataGridView
//
this.dataGridView.BackgroundColor = System.Drawing.Color.LightSteelBlue;
this.dataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView.Location = new System.Drawing.Point(3, 31);
this.dataGridView.Name = "dataGridView";
this.dataGridView.RowHeadersWidth = 51;
this.dataGridView.RowTemplate.Height = 24;
this.dataGridView.Size = new System.Drawing.Size(1060, 509);
this.dataGridView.TabIndex = 0;
//
// menuStrip4
//
this.menuStrip4.ImageScalingSize = new System.Drawing.Size(20, 20);
this.menuStrip4.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.создатьПриказToolStripMenuItem,
this.создатьПриказToolStripMenuItem1});
this.menuStrip4.Location = new System.Drawing.Point(3, 3);
this.menuStrip4.Name = "menuStrip4";
this.menuStrip4.Size = new System.Drawing.Size(1060, 28);
this.menuStrip4.TabIndex = 1;
this.menuStrip4.Text = "menuStrip4";
//
// создатьПриказToolStripMenuItem
//
this.создатьПриказToolStripMenuItem.Name = "создатьПриказToolStripMenuItem";
this.создатьПриказToolStripMenuItem.Size = new System.Drawing.Size(108, 24);
this.создатьПриказToolStripMenuItem.Text = "Фильтрация";
//
// создатьПриказToolStripMenuItem1
//
this.создатьПриказToolStripMenuItem1.Name = "создатьПриказToolStripMenuItem1";
this.создатьПриказToolStripMenuItem1.Size = new System.Drawing.Size(131, 24);
this.создатьПриказToolStripMenuItem1.Text = "Создать приказ";
//
// tabPageExpulsion
//
this.tabPageExpulsion.Controls.Add(this.dataGridView3);
this.tabPageExpulsion.Controls.Add(this.menuStrip5);
this.tabPageExpulsion.Location = new System.Drawing.Point(4, 25);
this.tabPageExpulsion.Name = "tabPageExpulsion";
this.tabPageExpulsion.Padding = new System.Windows.Forms.Padding(3);
this.tabPageExpulsion.Size = new System.Drawing.Size(1066, 543);
this.tabPageExpulsion.TabIndex = 1;
this.tabPageExpulsion.Text = "Отчисление";
this.tabPageExpulsion.UseVisualStyleBackColor = true;
//
// dataGridView3
//
this.dataGridView3.BackgroundColor = System.Drawing.Color.LightSteelBlue;
this.dataGridView3.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView3.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView3.Location = new System.Drawing.Point(3, 31);
this.dataGridView3.Name = "dataGridView3";
this.dataGridView3.RowHeadersWidth = 51;
this.dataGridView3.RowTemplate.Height = 24;
this.dataGridView3.Size = new System.Drawing.Size(1060, 509);
this.dataGridView3.TabIndex = 2;
//
// menuStrip5
//
this.menuStrip5.ImageScalingSize = new System.Drawing.Size(20, 20);
this.menuStrip5.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem3,
this.toolStripMenuItem4});
this.menuStrip5.Location = new System.Drawing.Point(3, 3);
this.menuStrip5.Name = "menuStrip5";
this.menuStrip5.Size = new System.Drawing.Size(1060, 28);
this.menuStrip5.TabIndex = 3;
this.menuStrip5.Text = "menuStrip5";
//
// toolStripMenuItem3
//
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
this.toolStripMenuItem3.Size = new System.Drawing.Size(108, 24);
this.toolStripMenuItem3.Text = "Фильтрация";
//
// toolStripMenuItem4
//
this.toolStripMenuItem4.Name = "toolStripMenuItem4";
this.toolStripMenuItem4.Size = new System.Drawing.Size(131, 24);
this.toolStripMenuItem4.Text = "Создать приказ";
//
// tabPageAcademicLeave
//
this.tabPageAcademicLeave.Controls.Add(this.dataGridView4);
this.tabPageAcademicLeave.Controls.Add(this.menuStrip6);
this.tabPageAcademicLeave.Location = new System.Drawing.Point(4, 25);
this.tabPageAcademicLeave.Name = "tabPageAcademicLeave";
this.tabPageAcademicLeave.Size = new System.Drawing.Size(1066, 543);
this.tabPageAcademicLeave.TabIndex = 2;
this.tabPageAcademicLeave.Text = "Академический отпуск";
this.tabPageAcademicLeave.UseVisualStyleBackColor = true;
//
// dataGridView4
//
this.dataGridView4.BackgroundColor = System.Drawing.Color.LightSteelBlue;
this.dataGridView4.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView4.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView4.Location = new System.Drawing.Point(0, 28);
this.dataGridView4.Name = "dataGridView4";
this.dataGridView4.RowHeadersWidth = 51;
this.dataGridView4.RowTemplate.Height = 24;
this.dataGridView4.Size = new System.Drawing.Size(1066, 515);
this.dataGridView4.TabIndex = 2;
//
// menuStrip6
//
this.menuStrip6.ImageScalingSize = new System.Drawing.Size(20, 20);
this.menuStrip6.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem5,
this.toolStripMenuItem6});
this.menuStrip6.Location = new System.Drawing.Point(0, 0);
this.menuStrip6.Name = "menuStrip6";
this.menuStrip6.Size = new System.Drawing.Size(1066, 28);
this.menuStrip6.TabIndex = 3;
this.menuStrip6.Text = "menuStrip6";
//
// toolStripMenuItem5
//
this.toolStripMenuItem5.Name = "toolStripMenuItem5";
this.toolStripMenuItem5.Size = new System.Drawing.Size(108, 24);
this.toolStripMenuItem5.Text = "Фильтрация";
//
// toolStripMenuItem6
//
this.toolStripMenuItem6.Name = "toolStripMenuItem6";
this.toolStripMenuItem6.Size = new System.Drawing.Size(131, 24);
this.toolStripMenuItem6.Text = "Создать приказ";
//
// tabPageNextCourse
//
this.tabPageNextCourse.Controls.Add(this.dataGridView5);
this.tabPageNextCourse.Controls.Add(this.menuStrip7);
this.tabPageNextCourse.Location = new System.Drawing.Point(4, 25);
this.tabPageNextCourse.Name = "tabPageNextCourse";
this.tabPageNextCourse.Size = new System.Drawing.Size(1066, 543);
this.tabPageNextCourse.TabIndex = 3;
this.tabPageNextCourse.Text = "Перевод на следующий курс";
this.tabPageNextCourse.UseVisualStyleBackColor = true;
//
// dataGridView5
//
this.dataGridView5.BackgroundColor = System.Drawing.Color.LightSteelBlue;
this.dataGridView5.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView5.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView5.Location = new System.Drawing.Point(0, 28);
this.dataGridView5.Name = "dataGridView5";
this.dataGridView5.RowHeadersWidth = 51;
this.dataGridView5.RowTemplate.Height = 24;
this.dataGridView5.Size = new System.Drawing.Size(1066, 515);
this.dataGridView5.TabIndex = 2;
//
// menuStrip7
//
this.menuStrip7.ImageScalingSize = new System.Drawing.Size(20, 20);
this.menuStrip7.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem7,
this.toolStripMenuItem8});
this.menuStrip7.Location = new System.Drawing.Point(0, 0);
this.menuStrip7.Name = "menuStrip7";
this.menuStrip7.Size = new System.Drawing.Size(1066, 28);
this.menuStrip7.TabIndex = 3;
this.menuStrip7.Text = "menuStrip7";
//
// toolStripMenuItem7
//
this.toolStripMenuItem7.Name = "toolStripMenuItem7";
this.toolStripMenuItem7.Size = new System.Drawing.Size(108, 24);
this.toolStripMenuItem7.Text = "Фильтрация";
//
// toolStripMenuItem8
//
this.toolStripMenuItem8.Name = "toolStripMenuItem8";
this.toolStripMenuItem8.Size = new System.Drawing.Size(131, 24);
this.toolStripMenuItem8.Text = "Создать приказ";
//
// tabPageOtherSpec
//
this.tabPageOtherSpec.Controls.Add(this.dataGridView6);
this.tabPageOtherSpec.Controls.Add(this.menuStrip8);
this.tabPageOtherSpec.Location = new System.Drawing.Point(4, 25);
this.tabPageOtherSpec.Name = "tabPageOtherSpec";
this.tabPageOtherSpec.Size = new System.Drawing.Size(1066, 543);
this.tabPageOtherSpec.TabIndex = 4;
this.tabPageOtherSpec.Text = "Перевод на другое направление";
this.tabPageOtherSpec.UseVisualStyleBackColor = true;
//
// dataGridView6
//
this.dataGridView6.BackgroundColor = System.Drawing.Color.LightSteelBlue;
this.dataGridView6.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView6.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView6.Location = new System.Drawing.Point(0, 28);
this.dataGridView6.Name = "dataGridView6";
this.dataGridView6.RowHeadersWidth = 51;
this.dataGridView6.RowTemplate.Height = 24;
this.dataGridView6.Size = new System.Drawing.Size(1066, 515);
this.dataGridView6.TabIndex = 2;
//
// menuStrip8
//
this.menuStrip8.ImageScalingSize = new System.Drawing.Size(20, 20);
this.menuStrip8.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem9,
this.toolStripMenuItem10});
this.menuStrip8.Location = new System.Drawing.Point(0, 0);
this.menuStrip8.Name = "menuStrip8";
this.menuStrip8.Size = new System.Drawing.Size(1066, 28);
this.menuStrip8.TabIndex = 3;
this.menuStrip8.Text = "menuStrip8";
//
// toolStripMenuItem9
//
this.toolStripMenuItem9.Name = "toolStripMenuItem9";
this.toolStripMenuItem9.Size = new System.Drawing.Size(108, 24);
this.toolStripMenuItem9.Text = "Фильтрация";
//
// toolStripMenuItem10
//
this.toolStripMenuItem10.Name = "toolStripMenuItem10";
this.toolStripMenuItem10.Size = new System.Drawing.Size(131, 24);
this.toolStripMenuItem10.Text = "Создать приказ";
//
// FormMain
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.AutoSize = true;
this.ClientSize = new System.Drawing.Size(1082, 601);
this.Controls.Add(this.MainPages);
this.MainMenuStrip = this.menuStrip4;
this.Name = "FormMain";
this.Text = "FormMain";
this.MainPages.ResumeLayout(false);
this.StudentsPage.ResumeLayout(false);
this.StudentsPage.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewStudents)).EndInit();
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.SpecPage.ResumeLayout(false);
this.SpecPage.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewSpecs)).EndInit();
this.menuStrip2.ResumeLayout(false);
this.menuStrip2.PerformLayout();
this.GroupsPage.ResumeLayout(false);
this.GroupsPage.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewGroups)).EndInit();
this.menuStrip3.ResumeLayout(false);
this.menuStrip3.PerformLayout();
this.OrdersPage.ResumeLayout(false);
this.tabControl1.ResumeLayout(false);
this.tabPageAddStudent.ResumeLayout(false);
this.tabPageAddStudent.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView)).EndInit();
this.menuStrip4.ResumeLayout(false);
this.menuStrip4.PerformLayout();
this.tabPageExpulsion.ResumeLayout(false);
this.tabPageExpulsion.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView3)).EndInit();
this.menuStrip5.ResumeLayout(false);
this.menuStrip5.PerformLayout();
this.tabPageAcademicLeave.ResumeLayout(false);
this.tabPageAcademicLeave.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView4)).EndInit();
this.menuStrip6.ResumeLayout(false);
this.menuStrip6.PerformLayout();
this.tabPageNextCourse.ResumeLayout(false);
this.tabPageNextCourse.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView5)).EndInit();
this.menuStrip7.ResumeLayout(false);
this.menuStrip7.PerformLayout();
this.tabPageOtherSpec.ResumeLayout(false);
this.tabPageOtherSpec.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView6)).EndInit();
this.menuStrip8.ResumeLayout(false);
this.menuStrip8.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.TabControl MainPages;
private System.Windows.Forms.TabPage StudentsPage;
private System.Windows.Forms.TabPage SpecPage;
private System.Windows.Forms.TabPage GroupsPage;
private System.Windows.Forms.TabPage OrdersPage;
private System.Windows.Forms.DataGridView dataGridViewStudents;
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem фильтрацияToolStripMenuItem;
private System.Windows.Forms.DataGridView dataGridViewSpecs;
private System.Windows.Forms.MenuStrip menuStrip2;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
private System.Windows.Forms.DataGridView dataGridViewGroups;
private System.Windows.Forms.MenuStrip menuStrip3;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem2;
private System.Windows.Forms.ToolStripMenuItem добавитьНаправлениеToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem добавитьГруппуToolStripMenuItem;
private System.Windows.Forms.TabControl tabControl1;
private System.Windows.Forms.TabPage tabPageAddStudent;
private System.Windows.Forms.TabPage tabPageExpulsion;
private System.Windows.Forms.TabPage tabPageAcademicLeave;
private System.Windows.Forms.TabPage tabPageNextCourse;
private System.Windows.Forms.TabPage tabPageOtherSpec;
private System.Windows.Forms.DataGridView dataGridView;
private System.Windows.Forms.MenuStrip menuStrip4;
private System.Windows.Forms.ToolStripMenuItem создатьПриказToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem создатьПриказToolStripMenuItem1;
private System.Windows.Forms.DataGridView dataGridView3;
private System.Windows.Forms.MenuStrip menuStrip5;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem3;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem4;
private System.Windows.Forms.DataGridView dataGridView4;
private System.Windows.Forms.MenuStrip menuStrip6;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem5;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem6;
private System.Windows.Forms.DataGridView dataGridView5;
private System.Windows.Forms.MenuStrip menuStrip7;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem7;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem8;
private System.Windows.Forms.DataGridView dataGridView6;
private System.Windows.Forms.MenuStrip menuStrip8;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem9;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem10;
}
}

View File

@@ -0,0 +1,48 @@
using Controller.BusinessLogic;
using System;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace App_contingent_university.Forms
{
public partial class FormMain : Form
{
private readonly StudentLogic _studentLogic;
public FormMain()
{
InitializeComponent();
}
private async void MainPages_SelectedIndexChanged(object sender, EventArgs e)
{
if (MainPages.SelectedTab == StudentsPage)
{
await LoadStudentsData();
}
else if (MainPages.SelectedTab == GroupsPage)
{
await LoadGroupsData();
}
else if (MainPages.SelectedTab == SpecPage)
{
await LoadSpecializationData();
}
else if (MainPages.SelectedTab == OrdersPage)
{
}
}
private async Task LoadStudentsData()
{
}
private async Task LoadGroupsData()
{
}
private async Task LoadSpecializationData()
{
}
}
}

View File

@@ -0,0 +1,165 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="menuStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>153, 17</value>
</metadata>
<metadata name="menuStrip3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>289, 17</value>
</metadata>
<metadata name="menuStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>153, 17</value>
</metadata>
<metadata name="menuStrip3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>289, 17</value>
</metadata>
<metadata name="menuStrip4.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>425, 17</value>
</metadata>
<metadata name="menuStrip4.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>425, 17</value>
</metadata>
<metadata name="menuStrip5.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>561, 17</value>
</metadata>
<metadata name="menuStrip5.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>561, 17</value>
</metadata>
<metadata name="menuStrip6.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>697, 17</value>
</metadata>
<metadata name="menuStrip6.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>697, 17</value>
</metadata>
<metadata name="menuStrip7.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>833, 17</value>
</metadata>
<metadata name="menuStrip7.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>833, 17</value>
</metadata>
<metadata name="menuStrip8.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>969, 17</value>
</metadata>
<metadata name="menuStrip8.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>969, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,108 @@
namespace App_contingent_university.Forms
{
partial class FormSpecsFilter
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.buttonOK = new System.Windows.Forms.Button();
this.textBoxCode = new System.Windows.Forms.TextBox();
this.labelCode = new System.Windows.Forms.Label();
this.textBoxName = new System.Windows.Forms.TextBox();
this.labelName = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// buttonOK
//
this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.buttonOK.BackColor = System.Drawing.Color.Orange;
this.buttonOK.ForeColor = System.Drawing.Color.Black;
this.buttonOK.Location = new System.Drawing.Point(158, 100);
this.buttonOK.Name = "buttonOK";
this.buttonOK.Size = new System.Drawing.Size(113, 37);
this.buttonOK.TabIndex = 1;
this.buttonOK.Text = "Применить";
this.buttonOK.UseVisualStyleBackColor = false;
//
// textBoxCode
//
this.textBoxCode.Location = new System.Drawing.Point(107, 48);
this.textBoxCode.Name = "textBoxCode";
this.textBoxCode.Size = new System.Drawing.Size(160, 22);
this.textBoxCode.TabIndex = 8;
//
// labelCode
//
this.labelCode.AutoSize = true;
this.labelCode.Location = new System.Drawing.Point(12, 54);
this.labelCode.Name = "labelCode";
this.labelCode.Size = new System.Drawing.Size(31, 16);
this.labelCode.TabIndex = 7;
this.labelCode.Text = "Код";
//
// textBoxName
//
this.textBoxName.Location = new System.Drawing.Point(107, 12);
this.textBoxName.Name = "textBoxName";
this.textBoxName.Size = new System.Drawing.Size(160, 22);
this.textBoxName.TabIndex = 6;
//
// labelName
//
this.labelName.AutoSize = true;
this.labelName.Location = new System.Drawing.Point(12, 18);
this.labelName.Name = "labelName";
this.labelName.Size = new System.Drawing.Size(73, 16);
this.labelName.TabIndex = 5;
this.labelName.Text = "Название";
//
// FormSpecsFilter
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.LightSteelBlue;
this.ClientSize = new System.Drawing.Size(283, 149);
this.Controls.Add(this.textBoxCode);
this.Controls.Add(this.labelCode);
this.Controls.Add(this.textBoxName);
this.Controls.Add(this.labelName);
this.Controls.Add(this.buttonOK);
this.Name = "FormSpecsFilter";
this.Text = "Фильтр";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Button buttonOK;
private System.Windows.Forms.TextBox textBoxCode;
private System.Windows.Forms.Label labelCode;
private System.Windows.Forms.TextBox textBoxName;
private System.Windows.Forms.Label labelName;
}
}

View File

@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace App_contingent_university.Forms
{
public partial class FormSpecsFilter : Form
{
public FormSpecsFilter()
{
InitializeComponent();
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,108 @@
namespace App_contingent_university.Forms
{
partial class FormAddUpdSpec
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.textBoxCode = new System.Windows.Forms.TextBox();
this.labelCode = new System.Windows.Forms.Label();
this.textBoxName = new System.Windows.Forms.TextBox();
this.labelName = new System.Windows.Forms.Label();
this.buttonOK = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// textBoxCode
//
this.textBoxCode.Location = new System.Drawing.Point(109, 48);
this.textBoxCode.Name = "textBoxCode";
this.textBoxCode.Size = new System.Drawing.Size(160, 22);
this.textBoxCode.TabIndex = 13;
//
// labelCode
//
this.labelCode.AutoSize = true;
this.labelCode.Location = new System.Drawing.Point(14, 54);
this.labelCode.Name = "labelCode";
this.labelCode.Size = new System.Drawing.Size(31, 16);
this.labelCode.TabIndex = 12;
this.labelCode.Text = "Код";
//
// textBoxName
//
this.textBoxName.Location = new System.Drawing.Point(109, 12);
this.textBoxName.Name = "textBoxName";
this.textBoxName.Size = new System.Drawing.Size(160, 22);
this.textBoxName.TabIndex = 11;
//
// labelName
//
this.labelName.AutoSize = true;
this.labelName.Location = new System.Drawing.Point(14, 18);
this.labelName.Name = "labelName";
this.labelName.Size = new System.Drawing.Size(73, 16);
this.labelName.TabIndex = 10;
this.labelName.Text = "Название";
//
// buttonOK
//
this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.buttonOK.BackColor = System.Drawing.Color.Orange;
this.buttonOK.ForeColor = System.Drawing.Color.Black;
this.buttonOK.Location = new System.Drawing.Point(163, 134);
this.buttonOK.Name = "buttonOK";
this.buttonOK.Size = new System.Drawing.Size(113, 37);
this.buttonOK.TabIndex = 9;
this.buttonOK.Text = "Сохранить";
this.buttonOK.UseVisualStyleBackColor = false;
//
// FormAddUpdSpec
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.LightSteelBlue;
this.ClientSize = new System.Drawing.Size(288, 183);
this.Controls.Add(this.textBoxCode);
this.Controls.Add(this.labelCode);
this.Controls.Add(this.textBoxName);
this.Controls.Add(this.labelName);
this.Controls.Add(this.buttonOK);
this.Name = "FormAddUpdSpec";
this.Text = "Создать/редактировать";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TextBox textBoxCode;
private System.Windows.Forms.Label labelCode;
private System.Windows.Forms.TextBox textBoxName;
private System.Windows.Forms.Label labelName;
private System.Windows.Forms.Button buttonOK;
}
}

View File

@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace App_contingent_university.Forms
{
public partial class FormAddUpdSpec : Form
{
public FormAddUpdSpec()
{
InitializeComponent();
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,153 @@
namespace App_contingent_university.Forms
{
partial class FormUpdStudent
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.labelGroup = new System.Windows.Forms.Label();
this.comboBoxGroup = new System.Windows.Forms.ComboBox();
this.textBoxPatronimic = new System.Windows.Forms.TextBox();
this.labelPatronimic = new System.Windows.Forms.Label();
this.textBoxName = new System.Windows.Forms.TextBox();
this.labelI = new System.Windows.Forms.Label();
this.textBoxLastName = new System.Windows.Forms.TextBox();
this.labelF = new System.Windows.Forms.Label();
this.buttonOK = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// labelGroup
//
this.labelGroup.AutoSize = true;
this.labelGroup.Location = new System.Drawing.Point(572, 7);
this.labelGroup.Name = "labelGroup";
this.labelGroup.Size = new System.Drawing.Size(54, 16);
this.labelGroup.TabIndex = 16;
this.labelGroup.Text = "Группа";
//
// comboBoxGroup
//
this.comboBoxGroup.FormattingEnabled = true;
this.comboBoxGroup.Location = new System.Drawing.Point(575, 26);
this.comboBoxGroup.Name = "comboBoxGroup";
this.comboBoxGroup.Size = new System.Drawing.Size(142, 24);
this.comboBoxGroup.TabIndex = 15;
//
// textBoxPatronimic
//
this.textBoxPatronimic.Location = new System.Drawing.Point(389, 28);
this.textBoxPatronimic.Name = "textBoxPatronimic";
this.textBoxPatronimic.Size = new System.Drawing.Size(160, 22);
this.textBoxPatronimic.TabIndex = 14;
//
// labelPatronimic
//
this.labelPatronimic.AutoSize = true;
this.labelPatronimic.Location = new System.Drawing.Point(386, 9);
this.labelPatronimic.Name = "labelPatronimic";
this.labelPatronimic.Size = new System.Drawing.Size(70, 16);
this.labelPatronimic.TabIndex = 13;
this.labelPatronimic.Text = "Отчество";
//
// textBoxName
//
this.textBoxName.Location = new System.Drawing.Point(204, 28);
this.textBoxName.Name = "textBoxName";
this.textBoxName.Size = new System.Drawing.Size(160, 22);
this.textBoxName.TabIndex = 12;
//
// labelI
//
this.labelI.AutoSize = true;
this.labelI.Location = new System.Drawing.Point(201, 9);
this.labelI.Name = "labelI";
this.labelI.Size = new System.Drawing.Size(33, 16);
this.labelI.TabIndex = 11;
this.labelI.Text = "Имя";
//
// textBoxLastName
//
this.textBoxLastName.Location = new System.Drawing.Point(17, 28);
this.textBoxLastName.Name = "textBoxLastName";
this.textBoxLastName.Size = new System.Drawing.Size(160, 22);
this.textBoxLastName.TabIndex = 18;
//
// labelF
//
this.labelF.AutoSize = true;
this.labelF.Location = new System.Drawing.Point(14, 9);
this.labelF.Name = "labelF";
this.labelF.Size = new System.Drawing.Size(66, 16);
this.labelF.TabIndex = 17;
this.labelF.Text = "Фамилия";
//
// buttonOK
//
this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.buttonOK.BackColor = System.Drawing.Color.Orange;
this.buttonOK.ForeColor = System.Drawing.Color.Black;
this.buttonOK.Location = new System.Drawing.Point(604, 81);
this.buttonOK.Name = "buttonOK";
this.buttonOK.Size = new System.Drawing.Size(113, 37);
this.buttonOK.TabIndex = 19;
this.buttonOK.Text = "Сохранить";
this.buttonOK.UseVisualStyleBackColor = false;
//
// FormUpdStudent
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.LightSteelBlue;
this.ClientSize = new System.Drawing.Size(746, 130);
this.Controls.Add(this.buttonOK);
this.Controls.Add(this.textBoxLastName);
this.Controls.Add(this.labelF);
this.Controls.Add(this.labelGroup);
this.Controls.Add(this.comboBoxGroup);
this.Controls.Add(this.textBoxPatronimic);
this.Controls.Add(this.labelPatronimic);
this.Controls.Add(this.textBoxName);
this.Controls.Add(this.labelI);
this.Name = "FormUpdStudent";
this.Text = "Редактировать студента";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label labelGroup;
private System.Windows.Forms.ComboBox comboBoxGroup;
private System.Windows.Forms.TextBox textBoxPatronimic;
private System.Windows.Forms.Label labelPatronimic;
private System.Windows.Forms.TextBox textBoxName;
private System.Windows.Forms.Label labelI;
private System.Windows.Forms.TextBox textBoxLastName;
private System.Windows.Forms.Label labelF;
private System.Windows.Forms.Button buttonOK;
}
}

View File

@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace App_contingent_university.Forms
{
public partial class FormUpdStudent : Form
{
public FormUpdStudent()
{
InitializeComponent();
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,17 @@
namespace UniversityApp
{
internal static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
// To customize application configuration such as set high DPI settings or default font,
// see https://aka.ms/applicationconfiguration.
ApplicationConfiguration.Initialize();
Application.Run(new Form());
}
}
}

View File

@@ -0,0 +1,33 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<UseWindowsForms>true</UseWindowsForms>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Controller\Controller.csproj" />
</ItemGroup>
<ItemGroup>
<Compile Update="Forms\FormFilterStudents.cs">
<SubType>Form</SubType>
</Compile>
<Compile Update="Forms\FormMain.cs">
<SubType>Form</SubType>
</Compile>
<Compile Update="Forms\FormSpecs.cs">
<SubType>Form</SubType>
</Compile>
<Compile Update="Forms\FormUpdSpec.cs">
<SubType>Form</SubType>
</Compile>
<Compile Update="Forms\FormUpdStudent.cs">
<SubType>Form</SubType>
</Compile>
</ItemGroup>
</Project>