Модель, вспомогательные классы, контролы
This commit is contained in:
parent
61a84b6b68
commit
2240cbd791
@ -0,0 +1,16 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net5.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Common\ModuleTools\ModuleTools.csproj" />
|
||||
<ProjectReference Include="..\Department\DepartmentBusinessLogic\DepartmentBusinessLogic.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
|
||||
<Exec Command="copy /Y "$(TargetDir)*.dll" "$(SolutionDir)ImplementationExtensions\*.dll"" />
|
||||
</Target>
|
||||
|
||||
</Project>
|
@ -0,0 +1,60 @@
|
||||
using AcademicProgressBusinessLogic.Enums;
|
||||
using DepartmentBusinessLogic.Enums;
|
||||
using ModuleTools.Attributes;
|
||||
using ModuleTools.BindingModels;
|
||||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace AcademicProgressBusinessLogic.BindingModels
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// Получение записи успеваемости студента
|
||||
/// </summary>
|
||||
public class StudentAcademicProgressGetBindingModel : GetBindingModel
|
||||
{
|
||||
public Guid? StudentId { get; set; }
|
||||
public Guid? DisciplineId { get; set; }
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Сохранение записи успеваемости студента
|
||||
/// </summary>
|
||||
public class StudentAcademicProgressSetBindingModel : SetBindingModel
|
||||
{
|
||||
[Required(ErrorMessage = "required")]
|
||||
[MapConfiguration("StudentId")]
|
||||
public Guid StudentId { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "required")]
|
||||
[MapConfiguration("DisciplineId")]
|
||||
public Guid DisciplineId { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "required")]
|
||||
[MapConfiguration("Semester")]
|
||||
public Semester Semester { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "required")]
|
||||
[MapConfiguration("Score")]
|
||||
public ExamScores Score { get; set; }
|
||||
|
||||
|
||||
[Required(ErrorMessage = "required")]
|
||||
[MapConfiguration("AffixingDate")]
|
||||
public DateTime AffixingDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Является повышением оценки
|
||||
/// </summary>
|
||||
[MapConfiguration("IsIncreaseScore")]
|
||||
public bool IsIncreaseScore { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Является сдачей по направлению
|
||||
/// </summary>
|
||||
[MapConfiguration("IsResit")]
|
||||
public bool IsResit { get; set; }
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AcademicProgressBusinessLogic.BusinessLogics
|
||||
{
|
||||
public class ReportBusinessLogic
|
||||
{
|
||||
}
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
using AcademicProgressBusinessLogic.BindingModels;
|
||||
using AcademicProgressBusinessLogic.Interfaces;
|
||||
using AcademicProgressBusinessLogic.ViewModels;
|
||||
using ModuleTools.BusinessLogics;
|
||||
using ModuleTools.Enums;
|
||||
|
||||
namespace AcademicProgressBusinessLogic.BusinessLogics
|
||||
{
|
||||
/// <summary>
|
||||
/// Логика работы с записями учебного прогресса
|
||||
/// </summary>
|
||||
public class StudentAcademicProgressBusinessLogic : GenericBusinessLogic<StudentAcademicProgressGetBindingModel, StudentAcademicProgressSetBindingModel, StudentAcademicProgressListViewModel, StudentAcademicProgressViewModels>
|
||||
{
|
||||
public StudentAcademicProgressBusinessLogic(IStudentAcademicProgress service) : base(service, "Записи учебного прогресса", AccessOperation.Записи_Учебного_Прогресса) { }
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
namespace AcademicProgressBusinessLogic.Enums
|
||||
{
|
||||
public enum ExamScores
|
||||
{
|
||||
Зачет = 1,
|
||||
|
||||
Удовлетворительно = 2,
|
||||
|
||||
Хорошо = 3,
|
||||
|
||||
Отлично = 4
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
using AcademicProgressBusinessLogic.BindingModels;
|
||||
using ModuleTools.Interfaces;
|
||||
|
||||
|
||||
namespace AcademicProgressBusinessLogic.Interfaces
|
||||
{
|
||||
/// <summary>
|
||||
/// Хранение учебного прогресса
|
||||
/// </summary>
|
||||
public interface IStudentAcademicProgress : IGenerticEntityService<StudentAcademicProgressGetBindingModel, StudentAcademicProgressSetBindingModel> { }
|
||||
}
|
@ -0,0 +1,85 @@
|
||||
using AcademicProgressBusinessLogic.Enums;
|
||||
using DepartmentBusinessLogic.Enums;
|
||||
using ModuleTools.Attributes;
|
||||
using ModuleTools.Enums;
|
||||
using ModuleTools.ViewModels;
|
||||
using System;
|
||||
|
||||
|
||||
namespace AcademicProgressBusinessLogic.ViewModels
|
||||
{
|
||||
/// <summary>
|
||||
/// Список успеваемости студентов
|
||||
/// </summary>
|
||||
public class StudentAcademicProgressListViewModel : ListViewModel<StudentAcademicProgressViewModels> { }
|
||||
|
||||
/// <summary>
|
||||
/// Элемент успеваемости студента
|
||||
/// </summary>
|
||||
[ViewModelControlElementClass(HaveDependenceEntities = true, Width = 1200, Height = 800)]
|
||||
[ViewModelControlElementDependenceEntity(Title = "Студенты", Order = 1, ParentPropertyName = "StudentAcademicProgressId",
|
||||
ControlTypeObject = "AcademicProgressWindowsDesktop.EntityControls.ControlStudentList, AcademicProgressWindowsDesktop")]
|
||||
[ViewModelControlElementDependenceEntity(Title = "Дисципилны", Order = 2, ParentPropertyName = "StudentAcademicProgressId",
|
||||
ControlTypeObject = "DepartmentWindowsDesktop.EntityControls.ControlDisciplineList, DepartmentWindowsDesktop")]
|
||||
public class StudentAcademicProgressViewModels : ElementViewModel
|
||||
{
|
||||
[ViewModelControlElementProperty("Студент", ControlType.ControlGuid, MustHaveValue = true, ReadOnly = false, ControlTypeObject = "DepartmentWindowsDesktop.EntityControls.ControlStudentList, DepartmentWindowsDesktop")]
|
||||
[MapConfiguration("StudentId")]
|
||||
public Guid StudentId { get; set; }
|
||||
|
||||
[ViewModelControlListProperty("Имя", ColumnWidth = 200)]
|
||||
[MapConfiguration("Student.FirstName", IsDifficle = true)]
|
||||
public string FirstName { get; set; }
|
||||
|
||||
[ViewModelControlListProperty("Фамилия", ColumnWidth = 250)]
|
||||
[MapConfiguration("Student.LastName", IsDifficle = true)]
|
||||
public string LastName { get; set; }
|
||||
|
||||
|
||||
[ViewModelControlElementProperty("Дисциплина", ControlType.ControlGuid, MustHaveValue = true, ReadOnly = false, ControlTypeObject = "DepartmentWindowsDesktop.EntityControls.ControlDisciplineList, DepartmentWindowsDesktop")]
|
||||
[MapConfiguration("DisciplineId")]
|
||||
public Guid DisciplineId { get; set; }
|
||||
|
||||
[ViewModelControlListProperty("Дисциплина")]
|
||||
[MapConfiguration("Discipline.ToString", IsDifficle = true)]
|
||||
public string DisciplineName { get; set; }
|
||||
|
||||
|
||||
|
||||
[ViewModelControlElementProperty("Семестр", ControlType.ControlEnum, MustHaveValue = true)]
|
||||
[MapConfiguration("Semester")]
|
||||
public Semester Semester { get; set; }
|
||||
|
||||
[ViewModelControlListProperty("Семестр", ColumnWidth = 100)]
|
||||
public string SemesterTitle => Semester.ToString("G");
|
||||
|
||||
|
||||
[ViewModelControlElementProperty("Оценка", ControlType.ControlEnum, MustHaveValue = true)]
|
||||
[MapConfiguration("Score")]
|
||||
public ExamScores Score { get; set; }
|
||||
|
||||
[ViewModelControlListProperty("Оценка", ColumnWidth = 160)]
|
||||
public string ExamScoresTitle => Score.ToString("G");
|
||||
|
||||
[ViewModelControlElementProperty("Является сдачей по направлению", ControlType.ControlBool, MustHaveValue = true)]
|
||||
[MapConfiguration("IsResit")]
|
||||
public bool IsResit { get; set; }
|
||||
|
||||
[ViewModelControlListProperty("Cдача по направлению", ColumnWidth = 120)]
|
||||
public string IsResitT => IsResit ? "Да" : "Нет";
|
||||
|
||||
[ViewModelControlElementProperty("Является повышением оценки", ControlType.ControlBool, MustHaveValue = true)]
|
||||
[MapConfiguration("IsIncreaseScore")]
|
||||
public bool IsIncreaseScore { get; set; }
|
||||
|
||||
[ViewModelControlListProperty("Повышение оценки", ColumnWidth = 120)]
|
||||
public string IsIncreaseScoreS => IsIncreaseScore ? "Да" : "Нет";
|
||||
|
||||
[ViewModelControlListProperty("Дата проставления", ColumnWidth = 120, DefaultCellStyleFormat = "dd.MM.yyyy")]
|
||||
[ViewModelControlElementProperty("Дата проставления", ControlType.ControlDateTime, MustHaveValue = true)]
|
||||
[MapConfiguration("AffixingDate")]
|
||||
public DateTime AffixingDate { get; set; }
|
||||
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net5.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Models\" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\AcademicProgressBusinessLogic\AcademicProgressBusinessLogic.csproj" />
|
||||
<ProjectReference Include="..\Common\DatabaseCore\DatabaseCore.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
|
||||
<Exec Command="copy /Y "$(TargetDir)*.dll" "$(SolutionDir)ImplementationExtensions\*.dll"" />
|
||||
</Target>
|
||||
|
||||
</Project>
|
@ -0,0 +1,17 @@
|
||||
using AcademicProgressBusinessLogic.Interfaces;
|
||||
using AcademicProgressDatabaseImplementation.Implementations;
|
||||
using ModuleTools.BusinessLogics;
|
||||
using ModuleTools.Interfaces;
|
||||
using System;
|
||||
|
||||
namespace AcademicProgressDatabaseImplementation
|
||||
{
|
||||
public class AcademicProgressImplementationExtensions : IImplementationExtension
|
||||
{
|
||||
public void RegisterServices()
|
||||
{
|
||||
DependencyManager.Instance.RegisterType<IStudentAcademicProgress, StudentAcademicProgressService>();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,51 @@
|
||||
using AcademicProgressBusinessLogic.BindingModels;
|
||||
using AcademicProgressBusinessLogic.Interfaces;
|
||||
using AcademicProgressBusinessLogic.ViewModels;
|
||||
using DatabaseCore;
|
||||
using DatabaseCore.Models.AcademicProgress;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using ModuleTools.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AcademicProgressDatabaseImplementation.Implementations
|
||||
{
|
||||
/// <summary>
|
||||
/// Реализация IStudentAcademicProgress
|
||||
/// </summary>
|
||||
public class StudentAcademicProgressService :
|
||||
AbstractGenerticEntityService<StudentAcademicProgressGetBindingModel, StudentAcademicProgressSetBindingModel, StudentAcademicProgress, StudentAcademicProgressListViewModel, StudentAcademicProgressViewModels>,
|
||||
IStudentAcademicProgress
|
||||
{
|
||||
protected override OperationResultModel AdditionalCheckingWhenAdding(DbContext context, StudentAcademicProgressSetBindingModel model) => OperationResultModel.Success(null);
|
||||
|
||||
protected override OperationResultModel AdditionalCheckingWhenDeleting(DbContext context, StudentAcademicProgress entity, StudentAcademicProgressGetBindingModel model) => OperationResultModel.Success(null);
|
||||
|
||||
protected override IQueryable<StudentAcademicProgress> AdditionalCheckingWhenReadingList(IQueryable<StudentAcademicProgress> query, StudentAcademicProgressGetBindingModel model)
|
||||
{
|
||||
if (model.StudentId.HasValue)
|
||||
{
|
||||
query = query.Where(x => x.StudentId == model.StudentId.Value);
|
||||
}
|
||||
if (model.DisciplineId.HasValue)
|
||||
{
|
||||
query = query.Where(x => x.DisciplineId == model.DisciplineId.Value);
|
||||
}
|
||||
return query;
|
||||
}
|
||||
|
||||
protected override OperationResultModel AdditionalCheckingWhenUpdateing(DbContext context, StudentAcademicProgressSetBindingModel model) => OperationResultModel.Success(null);
|
||||
|
||||
protected override void AdditionalDeleting(DbContext context, StudentAcademicProgress entity, StudentAcademicProgressGetBindingModel model) { }
|
||||
|
||||
protected override StudentAcademicProgress GetUniqueEntity(StudentAcademicProgressSetBindingModel model, DbContext context) => context.Set<StudentAcademicProgress>().FirstOrDefault(x => x.StudentId == model.StudentId && x.Id != model.Id);
|
||||
|
||||
protected override IQueryable<StudentAcademicProgress> IncludingWhenReading(IQueryable<StudentAcademicProgress> query) => query.Include(x => x.Student).Include(x => x.Discipline);
|
||||
|
||||
protected override IQueryable<StudentAcademicProgress> OrderingWhenReading(IQueryable<StudentAcademicProgress> query) => query.OrderBy(x => x.Student.LastName).ThenBy(x => x.Student.FirstName);
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,97 @@
|
||||
using AcademicProgressWindowsDesktop.EntityControls.StudentAcademicProgress;
|
||||
using AcademicProgressWindowsDesktop.SpecialControls;
|
||||
using DesktopTools.Interfaces;
|
||||
using DesktopTools.Models;
|
||||
using ModuleTools.BindingModels;
|
||||
using ModuleTools.BusinessLogics;
|
||||
using ModuleTools.Enums;
|
||||
using ModuleTools.Interfaces;
|
||||
using ModuleTools.Models;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace AcademicProgressWindowsDesktop
|
||||
{
|
||||
public class AcademicProgressWindowDesktopExtension : IWindowDesktopExtension
|
||||
{
|
||||
public List<WindowDesktopExtensionControlModel> GetListControlEntityList()
|
||||
{
|
||||
var manager = DependencyManager.Instance.Resolve<ISecurityManager>();
|
||||
if (manager == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
if (!manager.CheckAccess(new SecurityManagerCheckAccessModel(new AccessBindingModel { UserIdForAccess = manager.User },
|
||||
AccessOperation.Учет_успеваемости, AccessType.View, "Учет успеваемости")))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
var list = new List<WindowDesktopExtensionControlModel>
|
||||
{
|
||||
new WindowDesktopExtensionControlModel { Title = "Учет успеваемости" }
|
||||
};
|
||||
List<IControl> _controls = new()
|
||||
{
|
||||
new ControlStudentAcademicProgressList()
|
||||
};
|
||||
|
||||
foreach (var cntrl in _controls)
|
||||
{
|
||||
if (manager.CheckAccess(new SecurityManagerCheckAccessModel(new AccessBindingModel { UserIdForAccess = manager.User },
|
||||
cntrl.AccessOperation, AccessType.View, cntrl.Title)))
|
||||
{
|
||||
list.Add(new WindowDesktopExtensionControlModel
|
||||
{
|
||||
Id = cntrl.ControlId,
|
||||
Title = cntrl.Title,
|
||||
Control = cntrl
|
||||
});
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
public List<WindowDesktopExtensionControlModel> GetListControlSpecialList()
|
||||
{
|
||||
var manager = DependencyManager.Instance.Resolve<ISecurityManager>();
|
||||
if (manager == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
if (!manager.CheckAccess(new SecurityManagerCheckAccessModel(new AccessBindingModel { UserIdForAccess = manager.User },
|
||||
AccessOperation.Учет_успеваемости, AccessType.View, "Учет успеваемости")))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
var list = new List<WindowDesktopExtensionControlModel>
|
||||
{
|
||||
new WindowDesktopExtensionControlModel { Title = "Учет успеваемости" }
|
||||
};
|
||||
List<IControl> _controls = new()
|
||||
{
|
||||
new ControlStudentGraduate(),
|
||||
new ControlReportPlanDisciplines(),
|
||||
new ControlReportAcademicProgress()
|
||||
|
||||
};
|
||||
|
||||
foreach (var cntrl in _controls)
|
||||
{
|
||||
if (manager.CheckAccess(new SecurityManagerCheckAccessModel(new AccessBindingModel { UserIdForAccess = manager.User },
|
||||
cntrl.AccessOperation, AccessType.View, cntrl.Title)))
|
||||
{
|
||||
list.Add(new WindowDesktopExtensionControlModel
|
||||
{
|
||||
Id = cntrl.ControlId,
|
||||
Title = cntrl.Title,
|
||||
Control = cntrl
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net5.0-windows7.0</TargetFramework>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\AcademicProgressBusinessLogic\AcademicProgressBusinessLogic.csproj" />
|
||||
<ProjectReference Include="..\Common\DesktopTools\DesktopTools.csproj" />
|
||||
<ProjectReference Include="..\Department\DepartmentWindowsDesktop\DepartmentWindowsDesktop.csproj" />
|
||||
<ProjectReference Include="..\Security\SecurityBusinessLogic\SecurityBusinessLogic.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Update="Properties\Resources.Designer.cs">
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
<DesignTime>True</DesignTime>
|
||||
<AutoGen>True</AutoGen>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Update="Properties\Resources.resx">
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
|
||||
<Exec Command="copy /Y "$(TargetDir)$(ProjectName).dll" "$(SolutionDir)WindowDestopExtensions\$(ProjectName).dll"" />
|
||||
</Target>
|
||||
|
||||
</Project>
|
@ -0,0 +1,33 @@
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.EntityControls.StudentAcademicProgress
|
||||
{
|
||||
partial class ControlStudentAcademicProgressElement
|
||||
{
|
||||
/// <summary>
|
||||
/// Освободить все используемые ресурсы.
|
||||
/// </summary>
|
||||
/// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Код, автоматически созданный конструктором компонентов
|
||||
|
||||
/// <summary>
|
||||
/// Требуемый метод для поддержки конструктора — не изменяйте
|
||||
/// содержимое этого метода с помощью редактора кода.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
components = new System.ComponentModel.Container();
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
using AcademicProgressBusinessLogic.BindingModels;
|
||||
using AcademicProgressBusinessLogic.BusinessLogics;
|
||||
using AcademicProgressBusinessLogic.ViewModels;
|
||||
using DesktopTools.Controls;
|
||||
using DesktopTools.Helpers;
|
||||
using DesktopTools.Interfaces;
|
||||
using DesktopTools.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.EntityControls.StudentAcademicProgress
|
||||
{
|
||||
/// <summary>
|
||||
/// Реализация контрола для успеваемости студентов
|
||||
/// </summary>
|
||||
public partial class ControlStudentAcademicProgressElement : GenericControlEntityElement<StudentAcademicProgressGetBindingModel, StudentAcademicProgressSetBindingModel, StudentAcademicProgressListViewModel, StudentAcademicProgressViewModels, StudentAcademicProgressBusinessLogic>,
|
||||
IGenericControlEntityElement
|
||||
{
|
||||
public ControlStudentAcademicProgressElement()
|
||||
{
|
||||
InitializeComponent();
|
||||
Title = "Учет успеваемости студента";
|
||||
ControlId = new Guid("bdba2fca-4c38-33cf-89b0-4906c4aa7aa3");
|
||||
_genericControlViewEntityElement = this;
|
||||
}
|
||||
|
||||
public IControl GetInstanceGenericControl() => new ControlStudentAcademicProgressElement() { ControlId = Guid.NewGuid() };
|
||||
|
||||
public ControlViewEntityElementConfiguration GetConfigControl() => new();
|
||||
}
|
||||
}
|
@ -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>
|
@ -0,0 +1,33 @@
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.EntityControls.StudentAcademicProgress
|
||||
{
|
||||
partial class ControlStudentAcademicProgressList
|
||||
{
|
||||
/// <summary>
|
||||
/// Освободить все используемые ресурсы.
|
||||
/// </summary>
|
||||
/// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Код, автоматически созданный конструктором компонентов
|
||||
|
||||
/// <summary>
|
||||
/// Требуемый метод для поддержки конструктора — не изменяйте
|
||||
/// содержимое этого метода с помощью редактора кода.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
components = new System.ComponentModel.Container();
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
using AcademicProgressBusinessLogic.BindingModels;
|
||||
using AcademicProgressBusinessLogic.BusinessLogics;
|
||||
using AcademicProgressBusinessLogic.ViewModels;
|
||||
using DesktopTools.Controls;
|
||||
using ModuleTools.Enums;
|
||||
using DesktopTools.Interfaces;
|
||||
using DesktopTools.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using DesktopTools.Enums;
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.EntityControls.StudentAcademicProgress
|
||||
{
|
||||
/// <summary>
|
||||
/// Реализация контрола для списка успеваемости студентов
|
||||
/// </summary>
|
||||
public partial class ControlStudentAcademicProgressList : GenericControlEntityList<StudentAcademicProgressGetBindingModel, StudentAcademicProgressSetBindingModel, StudentAcademicProgressListViewModel, StudentAcademicProgressViewModels, StudentAcademicProgressBusinessLogic>,
|
||||
IGenericControlEntityList
|
||||
{
|
||||
public ControlStudentAcademicProgressList()
|
||||
{
|
||||
InitializeComponent();
|
||||
Title = "Учет успеваемости студентов";
|
||||
ControlId = new Guid("9879dbb5-3b29-4971-9574-b4c13d5470c6");
|
||||
AccessOperation = AccessOperation.Учет_успеваемости;
|
||||
ControlViewEntityElement = new ControlStudentAcademicProgressElement();
|
||||
_genericControlViewEntityList = this;
|
||||
|
||||
}
|
||||
public IControl GetInstanceGenericControl() => new ControlStudentAcademicProgressList() { ControlId = Guid.NewGuid() };
|
||||
|
||||
public ControlViewEntityListConfiguration GetConfigControl() => new()
|
||||
{
|
||||
PaginationOn = false,
|
||||
HideToolStripButton = new List<ToolStripButtonListNames>
|
||||
{
|
||||
ToolStripButtonListNames.toolStripButtonSearch
|
||||
},
|
||||
ControlOnMoveElem = new Dictionary<string, (string Title, EventHandler Event)>
|
||||
{
|
||||
{ "ToolStripMenuItemLoadScore", ("Выгрузить оценки из 1С:Университет", (object sender, EventArgs e) => { LoadScore(); }) }
|
||||
}
|
||||
};
|
||||
|
||||
private void LoadScore()
|
||||
{
|
||||
//загрузка оценок
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
<root>
|
||||
<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>
|
73
DepartmentPortal/AcademicProgressWindowsDesktop/Properties/Resources.Designer.cs
generated
Normal file
73
DepartmentPortal/AcademicProgressWindowsDesktop/Properties/Resources.Designer.cs
generated
Normal file
@ -0,0 +1,73 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Этот код создан программой.
|
||||
// Исполняемая версия:4.0.30319.42000
|
||||
//
|
||||
// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
|
||||
// повторной генерации кода.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Класс ресурса со строгой типизацией для поиска локализованных строк и т.д.
|
||||
/// </summary>
|
||||
// Этот класс создан автоматически классом StronglyTypedResourceBuilder
|
||||
// с помощью такого средства, как ResGen или Visual Studio.
|
||||
// Чтобы добавить или удалить член, измените файл .ResX и снова запустите ResGen
|
||||
// с параметром /str или перестройте свой проект VS.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Возвращает кэшированный экземпляр ResourceManager, использованный этим классом.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("AcademicProgressWindowsDesktop.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Перезаписывает свойство CurrentUICulture текущего потока для всех
|
||||
/// обращений к ресурсу с помощью этого класса ресурса со строгой типизацией.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Поиск локализованного ресурса типа System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Close {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Close", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,124 @@
|
||||
<?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>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="Close" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Close.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
Binary file not shown.
After Width: | Height: | Size: 412 B |
@ -0,0 +1,153 @@
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.SpecialControls
|
||||
{
|
||||
partial class ControlReportAcademicProgress
|
||||
{
|
||||
/// <summary>
|
||||
/// Обязательная переменная конструктора.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Освободить все используемые ресурсы.
|
||||
/// </summary>
|
||||
/// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Код, автоматически созданный конструктором компонентов
|
||||
|
||||
/// <summary>
|
||||
/// Требуемый метод для поддержки конструктора — не изменяйте
|
||||
/// содержимое этого метода с помощью редактора кода.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.toolStripHeader = new System.Windows.Forms.ToolStrip();
|
||||
this.toolStripButtonClose = new System.Windows.Forms.ToolStripButton();
|
||||
this.groupBoxReportInfo = new System.Windows.Forms.GroupBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.buttonSave = new System.Windows.Forms.Button();
|
||||
this.textBoxSaveFolderName = new System.Windows.Forms.TextBox();
|
||||
this.labelSaveFolderName = new System.Windows.Forms.Label();
|
||||
this.buttonSaveSelectFolder = new System.Windows.Forms.Button();
|
||||
this.toolStripHeader.SuspendLayout();
|
||||
this.groupBoxReportInfo.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// toolStripHeader
|
||||
//
|
||||
this.toolStripHeader.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.toolStripHeader.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.toolStripButtonClose});
|
||||
this.toolStripHeader.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStripHeader.Name = "toolStripHeader";
|
||||
this.toolStripHeader.Size = new System.Drawing.Size(477, 27);
|
||||
this.toolStripHeader.TabIndex = 3;
|
||||
this.toolStripHeader.Text = "toolStrip1";
|
||||
//
|
||||
// toolStripButtonClose
|
||||
//
|
||||
this.toolStripButtonClose.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.toolStripButtonClose.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButtonClose.Image = global::AcademicProgressWindowsDesktop.Properties.Resources.Close;
|
||||
this.toolStripButtonClose.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonClose.Name = "toolStripButtonClose";
|
||||
this.toolStripButtonClose.Size = new System.Drawing.Size(29, 24);
|
||||
this.toolStripButtonClose.Text = "Закрыть";
|
||||
//
|
||||
// groupBoxReportInfo
|
||||
//
|
||||
this.groupBoxReportInfo.Controls.Add(this.label3);
|
||||
this.groupBoxReportInfo.Location = new System.Drawing.Point(3, 112);
|
||||
this.groupBoxReportInfo.Name = "groupBoxReportInfo";
|
||||
this.groupBoxReportInfo.Size = new System.Drawing.Size(460, 127);
|
||||
this.groupBoxReportInfo.TabIndex = 18;
|
||||
this.groupBoxReportInfo.TabStop = false;
|
||||
this.groupBoxReportInfo.Text = "Информация для отчета";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(1519, 588);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(88, 20);
|
||||
this.label3.TabIndex = 7;
|
||||
this.label3.Text = "Семестр до";
|
||||
//
|
||||
// buttonSave
|
||||
//
|
||||
this.buttonSave.Location = new System.Drawing.Point(330, 245);
|
||||
this.buttonSave.Name = "buttonSave";
|
||||
this.buttonSave.Size = new System.Drawing.Size(133, 28);
|
||||
this.buttonSave.TabIndex = 17;
|
||||
this.buttonSave.Text = "Сохранить";
|
||||
this.buttonSave.UseVisualStyleBackColor = true;
|
||||
this.buttonSave.Click += new System.EventHandler(this.buttonSave_Click_1);
|
||||
//
|
||||
// textBoxSaveFolderName
|
||||
//
|
||||
this.textBoxSaveFolderName.Location = new System.Drawing.Point(119, 37);
|
||||
this.textBoxSaveFolderName.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.textBoxSaveFolderName.Name = "textBoxSaveFolderName";
|
||||
this.textBoxSaveFolderName.Size = new System.Drawing.Size(344, 27);
|
||||
this.textBoxSaveFolderName.TabIndex = 15;
|
||||
//
|
||||
// labelSaveFolderName
|
||||
//
|
||||
this.labelSaveFolderName.AutoSize = true;
|
||||
this.labelSaveFolderName.Location = new System.Drawing.Point(11, 40);
|
||||
this.labelSaveFolderName.Name = "labelSaveFolderName";
|
||||
this.labelSaveFolderName.Size = new System.Drawing.Size(111, 20);
|
||||
this.labelSaveFolderName.TabIndex = 14;
|
||||
this.labelSaveFolderName.Text = "Путь до папки:";
|
||||
//
|
||||
// buttonSaveSelectFolder
|
||||
//
|
||||
this.buttonSaveSelectFolder.Location = new System.Drawing.Point(330, 72);
|
||||
this.buttonSaveSelectFolder.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.buttonSaveSelectFolder.Name = "buttonSaveSelectFolder";
|
||||
this.buttonSaveSelectFolder.Size = new System.Drawing.Size(133, 31);
|
||||
this.buttonSaveSelectFolder.TabIndex = 16;
|
||||
this.buttonSaveSelectFolder.Text = "Выбрать папку";
|
||||
this.buttonSaveSelectFolder.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// ControlReportAcademicProgress
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.groupBoxReportInfo);
|
||||
this.Controls.Add(this.buttonSaveSelectFolder);
|
||||
this.Controls.Add(this.buttonSave);
|
||||
this.Controls.Add(this.textBoxSaveFolderName);
|
||||
this.Controls.Add(this.labelSaveFolderName);
|
||||
this.Controls.Add(this.toolStripHeader);
|
||||
this.Name = "ControlReportAcademicProgress";
|
||||
this.Size = new System.Drawing.Size(477, 300);
|
||||
this.toolStripHeader.ResumeLayout(false);
|
||||
this.toolStripHeader.PerformLayout();
|
||||
this.groupBoxReportInfo.ResumeLayout(false);
|
||||
this.groupBoxReportInfo.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ToolStrip toolStripHeader;
|
||||
private System.Windows.Forms.ToolStripButton toolStripButtonClose;
|
||||
private System.Windows.Forms.GroupBox groupBoxReportInfo;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.Button buttonSave;
|
||||
private System.Windows.Forms.TextBox textBoxSaveFolderName;
|
||||
private System.Windows.Forms.Label labelSaveFolderName;
|
||||
private System.Windows.Forms.Button buttonSaveSelectFolder;
|
||||
}
|
||||
}
|
@ -0,0 +1,149 @@
|
||||
using AcademicProgressBusinessLogic.BusinessLogics;
|
||||
using DepartmentBusinessLogic.BindingModels;
|
||||
using DepartmentBusinessLogic.BusinessLogics;
|
||||
using DepartmentBusinessLogic.Interfaces;
|
||||
using DepartmentWindowsDesktop.EntityControls;
|
||||
using DesktopTools.BaseControls;
|
||||
using DesktopTools.Interfaces;
|
||||
using DesktopTools.Models;
|
||||
using ModuleTools.BusinessLogics;
|
||||
using ModuleTools.Enums;
|
||||
using SecurityBusinessLogic.BindingModels;
|
||||
using SecurityBusinessLogic.BusinessLogics;
|
||||
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;
|
||||
using System.Xml.Linq;
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.SpecialControls
|
||||
{
|
||||
/// <summary>
|
||||
/// Контрол для работы с отчетом об успеваемости
|
||||
/// </summary>
|
||||
public partial class ControlReportAcademicProgress : UserControl, IControl
|
||||
{
|
||||
/// <summary>
|
||||
/// Класс с бизнес-логикой работы с отчетом
|
||||
/// </summary>
|
||||
private readonly ReportBusinessLogic _reportLogic;
|
||||
|
||||
private IStudentService _studentLogic;
|
||||
|
||||
/// <summary>
|
||||
/// Событие, вызываемое при закрытии контрола
|
||||
/// </summary>
|
||||
///
|
||||
private event Action<Guid> CloseEvent;
|
||||
|
||||
/// <summary>
|
||||
/// Контрол для работы с отчетом об успеваемости
|
||||
/// </summary>
|
||||
public ControlReportAcademicProgress()
|
||||
{
|
||||
InitializeComponent();
|
||||
_reportLogic = DependencyManager.Instance.Resolve<ReportBusinessLogic>();
|
||||
Title = "Отчет об успеваемости студентов";
|
||||
ControlId = new Guid("cc2244e6-5d92-4c89-b817-4c17ec382bc1");
|
||||
AccessOperation = AccessOperation.Учет_успеваемости;
|
||||
toolStripButtonClose.Click += (object sender, EventArgs e) =>
|
||||
{
|
||||
CloseEvent?.Invoke(ControlId);
|
||||
Dispose();
|
||||
};
|
||||
LoadGroupBoxReportInfo();
|
||||
|
||||
}
|
||||
|
||||
#region IControl
|
||||
public Guid ControlId { get; private set; }
|
||||
|
||||
public string Title { get; private set; }
|
||||
|
||||
public AccessOperation AccessOperation { get; private set; }
|
||||
|
||||
public IControl GetInstance() => new ControlReportAcademicProgress() { ControlId = Guid.NewGuid() };
|
||||
|
||||
public void Open(ControlOpenModel model)
|
||||
{
|
||||
if (model.CloseList != null)
|
||||
{
|
||||
CloseEvent += model.CloseList;
|
||||
}
|
||||
Dock = DockStyle.Fill;
|
||||
}
|
||||
|
||||
public string SaveToXml() => new XElement("Control",
|
||||
new XAttribute("Type", GetType().FullName),
|
||||
new XAttribute("ControlId", ControlId),
|
||||
new XAttribute("Title", Title),
|
||||
new XAttribute("AccessOperation", AccessOperation)).ToString();
|
||||
|
||||
public void LoadFromXml(string xml)
|
||||
{
|
||||
var control = XElement.Parse(xml);
|
||||
ControlId = new Guid(control.Attribute("ControlId").Value.ToString());
|
||||
Title = control.Attribute("Title").Value.ToString();
|
||||
AccessOperation = (AccessOperation)Enum.Parse(typeof(AccessOperation), control.Attribute("AccessOperation").Value.ToString());
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Выбор пути для папки сохранения отчета
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void buttonSaveSelectFolder_Click(object sender, EventArgs e)
|
||||
{
|
||||
var fbd = new FolderBrowserDialog();
|
||||
if (fbd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
textBoxSaveFolderName.Text = fbd.SelectedPath;
|
||||
}
|
||||
}
|
||||
|
||||
private void buttonSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void buttonSave_Click_1(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void LoadGroupBoxReportInfo()
|
||||
{
|
||||
|
||||
int positionY = 40;
|
||||
int interval = 15;
|
||||
|
||||
var controlStudent = new BaseControlGuid("StudentId", true, false, new ControlStudentList(), null)
|
||||
{
|
||||
Location = new System.Drawing.Point(50, positionY),
|
||||
Size = new System.Drawing.Size(410, 23)
|
||||
|
||||
};
|
||||
controlStudent.SetTitleWidth(controlStudent.SetTitle("Cтудент:"));
|
||||
groupBoxReportInfo.Controls.Add(controlStudent);
|
||||
|
||||
positionY += controlStudent.Height + interval;
|
||||
|
||||
var controlStudentGroup = new BaseControlGuid(" StudentGroupId", true, false, new ControlStudentGroupList(), null)
|
||||
{
|
||||
Location = new System.Drawing.Point(53, positionY),
|
||||
Size = new System.Drawing.Size(407, 23)
|
||||
|
||||
};
|
||||
controlStudentGroup.SetTitleWidth(controlStudentGroup.SetTitle("Группа:"));
|
||||
groupBoxReportInfo.Controls.Add(controlStudentGroup);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,63 @@
|
||||
<root>
|
||||
<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="toolStripHeader.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
154
DepartmentPortal/AcademicProgressWindowsDesktop/SpecialControls/ControlReportPlanDisciplines.Designer.cs
generated
Normal file
154
DepartmentPortal/AcademicProgressWindowsDesktop/SpecialControls/ControlReportPlanDisciplines.Designer.cs
generated
Normal file
@ -0,0 +1,154 @@
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.SpecialControls
|
||||
{
|
||||
partial class ControlReportPlanDisciplines
|
||||
{
|
||||
/// <summary>
|
||||
/// Обязательная переменная конструктора.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Освободить все используемые ресурсы.
|
||||
/// </summary>
|
||||
/// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Код, автоматически созданный конструктором компонентов
|
||||
|
||||
/// <summary>
|
||||
/// Требуемый метод для поддержки конструктора — не изменяйте
|
||||
/// содержимое этого метода с помощью редактора кода.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.toolStripHeader = new System.Windows.Forms.ToolStrip();
|
||||
this.toolStripButtonClose = new System.Windows.Forms.ToolStripButton();
|
||||
this.buttonSave = new System.Windows.Forms.Button();
|
||||
this.groupBoxReportInfo = new System.Windows.Forms.GroupBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.buttonSaveSelectFolder = new System.Windows.Forms.Button();
|
||||
this.textBoxSaveFolderName = new System.Windows.Forms.TextBox();
|
||||
this.labelSaveFolderName = new System.Windows.Forms.Label();
|
||||
this.toolStripHeader.SuspendLayout();
|
||||
this.groupBoxReportInfo.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// toolStripHeader
|
||||
//
|
||||
this.toolStripHeader.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.toolStripHeader.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.toolStripButtonClose});
|
||||
this.toolStripHeader.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStripHeader.Name = "toolStripHeader";
|
||||
this.toolStripHeader.Size = new System.Drawing.Size(674, 27);
|
||||
this.toolStripHeader.TabIndex = 4;
|
||||
this.toolStripHeader.Text = "toolStrip1";
|
||||
//
|
||||
// toolStripButtonClose
|
||||
//
|
||||
this.toolStripButtonClose.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.toolStripButtonClose.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButtonClose.Image = global::AcademicProgressWindowsDesktop.Properties.Resources.Close;
|
||||
this.toolStripButtonClose.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonClose.Name = "toolStripButtonClose";
|
||||
this.toolStripButtonClose.Size = new System.Drawing.Size(29, 24);
|
||||
this.toolStripButtonClose.Text = "Закрыть";
|
||||
//
|
||||
// buttonSave
|
||||
//
|
||||
this.buttonSave.Location = new System.Drawing.Point(517, 275);
|
||||
this.buttonSave.Name = "buttonSave";
|
||||
this.buttonSave.Size = new System.Drawing.Size(133, 28);
|
||||
this.buttonSave.TabIndex = 6;
|
||||
this.buttonSave.Text = "Сохранить";
|
||||
this.buttonSave.UseVisualStyleBackColor = true;
|
||||
this.buttonSave.Click += new System.EventHandler(this.buttonSave_Click);
|
||||
//
|
||||
// groupBoxReportInfo
|
||||
//
|
||||
this.groupBoxReportInfo.Controls.Add(this.label3);
|
||||
this.groupBoxReportInfo.Location = new System.Drawing.Point(3, 80);
|
||||
this.groupBoxReportInfo.Name = "groupBoxReportInfo";
|
||||
this.groupBoxReportInfo.Size = new System.Drawing.Size(651, 180);
|
||||
this.groupBoxReportInfo.TabIndex = 8;
|
||||
this.groupBoxReportInfo.TabStop = false;
|
||||
this.groupBoxReportInfo.Text = "Информация для отчета";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(1519, 588);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(88, 20);
|
||||
this.label3.TabIndex = 7;
|
||||
this.label3.Text = "Семестр до";
|
||||
//
|
||||
// buttonSaveSelectFolder
|
||||
//
|
||||
this.buttonSaveSelectFolder.Location = new System.Drawing.Point(517, 29);
|
||||
this.buttonSaveSelectFolder.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.buttonSaveSelectFolder.Name = "buttonSaveSelectFolder";
|
||||
this.buttonSaveSelectFolder.Size = new System.Drawing.Size(133, 31);
|
||||
this.buttonSaveSelectFolder.TabIndex = 5;
|
||||
this.buttonSaveSelectFolder.Text = "Выбрать папку";
|
||||
this.buttonSaveSelectFolder.UseVisualStyleBackColor = true;
|
||||
this.buttonSaveSelectFolder.Click += new System.EventHandler(this.buttonSaveSelectFolder_Click);
|
||||
//
|
||||
// textBoxSaveFolderName
|
||||
//
|
||||
this.textBoxSaveFolderName.Location = new System.Drawing.Point(167, 31);
|
||||
this.textBoxSaveFolderName.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.textBoxSaveFolderName.Name = "textBoxSaveFolderName";
|
||||
this.textBoxSaveFolderName.Size = new System.Drawing.Size(344, 27);
|
||||
this.textBoxSaveFolderName.TabIndex = 4;
|
||||
//
|
||||
// labelSaveFolderName
|
||||
//
|
||||
this.labelSaveFolderName.AutoSize = true;
|
||||
this.labelSaveFolderName.Location = new System.Drawing.Point(50, 34);
|
||||
this.labelSaveFolderName.Name = "labelSaveFolderName";
|
||||
this.labelSaveFolderName.Size = new System.Drawing.Size(111, 20);
|
||||
this.labelSaveFolderName.TabIndex = 3;
|
||||
this.labelSaveFolderName.Text = "Путь до папки:";
|
||||
//
|
||||
// ControlReportPlanDisciplines
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.groupBoxReportInfo);
|
||||
this.Controls.Add(this.buttonSave);
|
||||
this.Controls.Add(this.toolStripHeader);
|
||||
this.Controls.Add(this.textBoxSaveFolderName);
|
||||
this.Controls.Add(this.labelSaveFolderName);
|
||||
this.Controls.Add(this.buttonSaveSelectFolder);
|
||||
this.Name = "ControlReportPlanDisciplines";
|
||||
this.Size = new System.Drawing.Size(674, 317);
|
||||
this.toolStripHeader.ResumeLayout(false);
|
||||
this.toolStripHeader.PerformLayout();
|
||||
this.groupBoxReportInfo.ResumeLayout(false);
|
||||
this.groupBoxReportInfo.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ToolStrip toolStripHeader;
|
||||
private System.Windows.Forms.ToolStripButton toolStripButtonClose;
|
||||
private System.Windows.Forms.Button buttonSave;
|
||||
private System.Windows.Forms.GroupBox groupBoxReportInfo;
|
||||
private System.Windows.Forms.Button buttonSaveSelectFolder;
|
||||
private System.Windows.Forms.TextBox textBoxSaveFolderName;
|
||||
private System.Windows.Forms.Label labelSaveFolderName;
|
||||
private System.Windows.Forms.Label label3;
|
||||
}
|
||||
}
|
@ -0,0 +1,140 @@
|
||||
using DesktopTools.Interfaces;
|
||||
using DesktopTools.Models;
|
||||
using ModuleTools.Enums;
|
||||
using System;
|
||||
using System.Xml.Linq;
|
||||
using System.Windows.Forms;
|
||||
using DesktopTools.BaseControls;
|
||||
using DepartmentWindowsDesktop.EntityControls;
|
||||
using DepartmentBusinessLogic.Enums;
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.SpecialControls
|
||||
{
|
||||
public partial class ControlReportPlanDisciplines : UserControl, IControl
|
||||
{
|
||||
/// <summary>
|
||||
/// Событие, вызываемое при закрытии контрола
|
||||
/// </summary>
|
||||
private event Action<Guid> CloseEvent;
|
||||
public ControlReportPlanDisciplines()
|
||||
{
|
||||
InitializeComponent();
|
||||
Title = "План сдачи";
|
||||
//что за цифры тут откуда брать...
|
||||
ControlId = new Guid("cc2234e6-5d92-4c89-b817-4c17ec382bc1");
|
||||
AccessOperation = AccessOperation.План_сдачи;
|
||||
toolStripButtonClose.Click += (object sender, EventArgs e) =>
|
||||
{
|
||||
CloseEvent?.Invoke(ControlId);
|
||||
Dispose();
|
||||
};
|
||||
LoadGroupBoxReportInfo();
|
||||
|
||||
}
|
||||
#region IControl
|
||||
public Guid ControlId { get; private set; }
|
||||
|
||||
public string Title { get; private set; }
|
||||
|
||||
public AccessOperation AccessOperation { get; private set; }
|
||||
|
||||
public IControl GetInstance() => new ControlReportPlanDisciplines() { ControlId = Guid.NewGuid() };
|
||||
|
||||
public void Open(ControlOpenModel model)
|
||||
{
|
||||
if (model.CloseList != null)
|
||||
{
|
||||
CloseEvent += model.CloseList;
|
||||
}
|
||||
Dock = DockStyle.Fill;
|
||||
}
|
||||
|
||||
public string SaveToXml() => new XElement("Control",
|
||||
new XAttribute("Type", GetType().FullName),
|
||||
new XAttribute("ControlId", ControlId),
|
||||
new XAttribute("Title", Title),
|
||||
new XAttribute("AccessOperation", AccessOperation)).ToString();
|
||||
|
||||
public void LoadFromXml(string xml)
|
||||
{
|
||||
var control = XElement.Parse(xml);
|
||||
ControlId = new Guid(control.Attribute("ControlId").Value.ToString());
|
||||
Title = control.Attribute("Title").Value.ToString();
|
||||
AccessOperation = (AccessOperation)Enum.Parse(typeof(AccessOperation), control.Attribute("AccessOperation").Value.ToString());
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private void buttonSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void buttonSaveSelectFolder_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void LoadGroupBoxReportInfo()
|
||||
{
|
||||
|
||||
int positionY = 40;
|
||||
int interval = 15;
|
||||
|
||||
var controlStudent = new BaseControlGuid("StudentId", true, false, new ControlStudentList(), null)
|
||||
{
|
||||
Location = new System.Drawing.Point(100, positionY),
|
||||
Size = new System.Drawing.Size(545, 23)
|
||||
|
||||
};
|
||||
controlStudent.SetTitleWidth(controlStudent.SetTitle("Cтудент:"));
|
||||
groupBoxReportInfo.Controls.Add(controlStudent);
|
||||
|
||||
positionY += controlStudent.Height + interval;
|
||||
|
||||
var controlEducationDirectionUpTo = new BaseControlGuid("EducationDirectionViewModelId", true, false, new ControlEducationDirectionList(), null)
|
||||
{
|
||||
Location = new System.Drawing.Point(37, positionY),
|
||||
Size = new System.Drawing.Size(356, 23)
|
||||
|
||||
};
|
||||
controlEducationDirectionUpTo.SetTitleWidth(controlEducationDirectionUpTo.SetTitle("Направление до:"));
|
||||
groupBoxReportInfo.Controls.Add(controlEducationDirectionUpTo);
|
||||
|
||||
|
||||
|
||||
var controlSemesterUpTo = new BaseControlEnum("Semester", true, false, typeof(Semester))
|
||||
{
|
||||
Location = new System.Drawing.Point(425, positionY),
|
||||
Size = new System.Drawing.Size(220, 23)
|
||||
|
||||
};
|
||||
controlSemesterUpTo.SetTitleWidth(controlSemesterUpTo.SetTitle("Семестр до:"));
|
||||
groupBoxReportInfo.Controls.Add(controlSemesterUpTo);
|
||||
|
||||
positionY += controlEducationDirectionUpTo.Height + interval;
|
||||
|
||||
var controlEducationDirectionAfter = new BaseControlGuid("EducationDirectionViewModelId", true, false, new ControlEducationDirectionList(), null)
|
||||
{
|
||||
Location = new System.Drawing.Point(13, positionY),
|
||||
Size = new System.Drawing.Size(380, 23)
|
||||
|
||||
};
|
||||
controlEducationDirectionAfter.SetTitleWidth(controlEducationDirectionAfter.SetTitle("Направление после:"));
|
||||
groupBoxReportInfo.Controls.Add(controlEducationDirectionAfter);
|
||||
|
||||
|
||||
|
||||
var controlSemesterAfter = new BaseControlEnum("Semester", true, false, typeof(Semester))
|
||||
{
|
||||
Location = new System.Drawing.Point(401, positionY),
|
||||
Size = new System.Drawing.Size(245, 23)
|
||||
|
||||
};
|
||||
controlSemesterAfter.SetTitleWidth(controlSemesterAfter.SetTitle("Семестр после:"));
|
||||
groupBoxReportInfo.Controls.Add(controlSemesterAfter);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,66 @@
|
||||
<root>
|
||||
<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="toolStripHeader.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>25</value>
|
||||
</metadata>
|
||||
</root>
|
152
DepartmentPortal/AcademicProgressWindowsDesktop/SpecialControls/ControlStudentGraduate.Designer.cs
generated
Normal file
152
DepartmentPortal/AcademicProgressWindowsDesktop/SpecialControls/ControlStudentGraduate.Designer.cs
generated
Normal file
@ -0,0 +1,152 @@
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.SpecialControls
|
||||
{
|
||||
partial class ControlStudentGraduate
|
||||
{
|
||||
/// <summary>
|
||||
/// Обязательная переменная конструктора.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Освободить все используемые ресурсы.
|
||||
/// </summary>
|
||||
/// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Код, автоматически созданный конструктором компонентов
|
||||
|
||||
/// <summary>
|
||||
/// Требуемый метод для поддержки конструктора — не изменяйте
|
||||
/// содержимое этого метода с помощью редактора кода.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.toolStripButtonClose = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripHeader = new System.Windows.Forms.ToolStrip();
|
||||
this.groupBoxReportInfo = new System.Windows.Forms.GroupBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.buttonSaveSelectFolder = new System.Windows.Forms.Button();
|
||||
this.buttonSave = new System.Windows.Forms.Button();
|
||||
this.textBoxSaveFolderName = new System.Windows.Forms.TextBox();
|
||||
this.labelSaveFolderName = new System.Windows.Forms.Label();
|
||||
this.toolStripHeader.SuspendLayout();
|
||||
this.groupBoxReportInfo.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// toolStripButtonClose
|
||||
//
|
||||
this.toolStripButtonClose.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.toolStripButtonClose.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButtonClose.Image = global::AcademicProgressWindowsDesktop.Properties.Resources.Close;
|
||||
this.toolStripButtonClose.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonClose.Name = "toolStripButtonClose";
|
||||
this.toolStripButtonClose.Size = new System.Drawing.Size(29, 24);
|
||||
this.toolStripButtonClose.Text = "Закрыть";
|
||||
//
|
||||
// toolStripHeader
|
||||
//
|
||||
this.toolStripHeader.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.toolStripHeader.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.toolStripButtonClose});
|
||||
this.toolStripHeader.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStripHeader.Name = "toolStripHeader";
|
||||
this.toolStripHeader.Size = new System.Drawing.Size(478, 27);
|
||||
this.toolStripHeader.TabIndex = 2;
|
||||
this.toolStripHeader.Text = "toolStrip1";
|
||||
//
|
||||
// groupBoxReportInfo
|
||||
//
|
||||
this.groupBoxReportInfo.Controls.Add(this.label3);
|
||||
this.groupBoxReportInfo.Location = new System.Drawing.Point(3, 109);
|
||||
this.groupBoxReportInfo.Name = "groupBoxReportInfo";
|
||||
this.groupBoxReportInfo.Size = new System.Drawing.Size(460, 127);
|
||||
this.groupBoxReportInfo.TabIndex = 23;
|
||||
this.groupBoxReportInfo.TabStop = false;
|
||||
this.groupBoxReportInfo.Text = "Информация для отчета";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(1519, 588);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(88, 20);
|
||||
this.label3.TabIndex = 7;
|
||||
this.label3.Text = "Семестр до";
|
||||
//
|
||||
// buttonSaveSelectFolder
|
||||
//
|
||||
this.buttonSaveSelectFolder.Location = new System.Drawing.Point(330, 69);
|
||||
this.buttonSaveSelectFolder.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.buttonSaveSelectFolder.Name = "buttonSaveSelectFolder";
|
||||
this.buttonSaveSelectFolder.Size = new System.Drawing.Size(133, 31);
|
||||
this.buttonSaveSelectFolder.TabIndex = 21;
|
||||
this.buttonSaveSelectFolder.Text = "Выбрать папку";
|
||||
this.buttonSaveSelectFolder.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// buttonSave
|
||||
//
|
||||
this.buttonSave.Location = new System.Drawing.Point(330, 242);
|
||||
this.buttonSave.Name = "buttonSave";
|
||||
this.buttonSave.Size = new System.Drawing.Size(133, 28);
|
||||
this.buttonSave.TabIndex = 22;
|
||||
this.buttonSave.Text = "Сохранить";
|
||||
this.buttonSave.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// textBoxSaveFolderName
|
||||
//
|
||||
this.textBoxSaveFolderName.Location = new System.Drawing.Point(119, 34);
|
||||
this.textBoxSaveFolderName.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.textBoxSaveFolderName.Name = "textBoxSaveFolderName";
|
||||
this.textBoxSaveFolderName.Size = new System.Drawing.Size(344, 27);
|
||||
this.textBoxSaveFolderName.TabIndex = 20;
|
||||
//
|
||||
// labelSaveFolderName
|
||||
//
|
||||
this.labelSaveFolderName.AutoSize = true;
|
||||
this.labelSaveFolderName.Location = new System.Drawing.Point(11, 37);
|
||||
this.labelSaveFolderName.Name = "labelSaveFolderName";
|
||||
this.labelSaveFolderName.Size = new System.Drawing.Size(111, 20);
|
||||
this.labelSaveFolderName.TabIndex = 19;
|
||||
this.labelSaveFolderName.Text = "Путь до папки:";
|
||||
//
|
||||
// ControlStudentGraduate
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.groupBoxReportInfo);
|
||||
this.Controls.Add(this.buttonSaveSelectFolder);
|
||||
this.Controls.Add(this.buttonSave);
|
||||
this.Controls.Add(this.textBoxSaveFolderName);
|
||||
this.Controls.Add(this.labelSaveFolderName);
|
||||
this.Controls.Add(this.toolStripHeader);
|
||||
this.Name = "ControlStudentGraduate";
|
||||
this.Size = new System.Drawing.Size(478, 279);
|
||||
this.toolStripHeader.ResumeLayout(false);
|
||||
this.toolStripHeader.PerformLayout();
|
||||
this.groupBoxReportInfo.ResumeLayout(false);
|
||||
this.groupBoxReportInfo.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ToolStripButton toolStripButtonClose;
|
||||
private System.Windows.Forms.ToolStrip toolStripHeader;
|
||||
private System.Windows.Forms.GroupBox groupBoxReportInfo;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.Button buttonSaveSelectFolder;
|
||||
private System.Windows.Forms.Button buttonSave;
|
||||
private System.Windows.Forms.TextBox textBoxSaveFolderName;
|
||||
private System.Windows.Forms.Label labelSaveFolderName;
|
||||
}
|
||||
}
|
@ -0,0 +1,104 @@
|
||||
using DepartmentWindowsDesktop.EntityControls;
|
||||
using DesktopTools.BaseControls;
|
||||
using DesktopTools.Interfaces;
|
||||
using DesktopTools.Models;
|
||||
using ModuleTools.Enums;
|
||||
using System;
|
||||
using System.Windows.Forms;
|
||||
using System.Xml.Linq;
|
||||
|
||||
namespace AcademicProgressWindowsDesktop.SpecialControls
|
||||
{
|
||||
/// <summary>
|
||||
/// Контрол для работы с выпускниками
|
||||
/// </summary>
|
||||
public partial class ControlStudentGraduate : UserControl, IControl
|
||||
{
|
||||
/// <summary>
|
||||
/// Событие, вызываемое при закрытии контрола
|
||||
/// </summary>
|
||||
private event Action<Guid> CloseEvent;
|
||||
public ControlStudentGraduate()
|
||||
{
|
||||
InitializeComponent();
|
||||
Title = "Приложение к диплому";
|
||||
//что за цифры тут откуда брать...
|
||||
ControlId = new Guid("cc3944e6-5d92-4c89-b817-4c17ec382bc1");
|
||||
AccessOperation = AccessOperation.Для_выпускников;
|
||||
toolStripButtonClose.Click += (object sender, EventArgs e) =>
|
||||
{
|
||||
CloseEvent?.Invoke(ControlId);
|
||||
Dispose();
|
||||
};
|
||||
LoadGroupBoxReportInfo();
|
||||
|
||||
}
|
||||
#region IControl
|
||||
public Guid ControlId { get; private set; }
|
||||
|
||||
public string Title { get; private set; }
|
||||
|
||||
public AccessOperation AccessOperation { get; private set; }
|
||||
|
||||
public IControl GetInstance() => new ControlStudentGraduate() { ControlId = Guid.NewGuid() };
|
||||
|
||||
public void Open(ControlOpenModel model)
|
||||
{
|
||||
if (model.CloseList != null)
|
||||
{
|
||||
CloseEvent += model.CloseList;
|
||||
}
|
||||
Dock = DockStyle.Fill;
|
||||
}
|
||||
|
||||
public string SaveToXml() => new XElement("Control",
|
||||
new XAttribute("Type", GetType().FullName),
|
||||
new XAttribute("ControlId", ControlId),
|
||||
new XAttribute("Title", Title),
|
||||
new XAttribute("AccessOperation", AccessOperation)).ToString();
|
||||
|
||||
public void LoadFromXml(string xml)
|
||||
{
|
||||
var control = XElement.Parse(xml);
|
||||
ControlId = new Guid(control.Attribute("ControlId").Value.ToString());
|
||||
Title = control.Attribute("Title").Value.ToString();
|
||||
AccessOperation = (AccessOperation)Enum.Parse(typeof(AccessOperation), control.Attribute("AccessOperation").Value.ToString());
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
private void buttonSave_Click_1(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void LoadGroupBoxReportInfo()
|
||||
{
|
||||
|
||||
int positionY = 40;
|
||||
int interval = 15;
|
||||
|
||||
var controlStudent = new BaseControlGuid("StudentId", true, false, new ControlStudentList(), null)
|
||||
{
|
||||
Location = new System.Drawing.Point(50, positionY),
|
||||
Size = new System.Drawing.Size(410, 23)
|
||||
|
||||
};
|
||||
controlStudent.SetTitleWidth(controlStudent.SetTitle("Cтудент:"));
|
||||
groupBoxReportInfo.Controls.Add(controlStudent);
|
||||
|
||||
positionY += controlStudent.Height + interval;
|
||||
|
||||
var controlStudentGroup = new BaseControlGuid(" StudentGroupId", true, false, new ControlStudentGroupList(), null)
|
||||
{
|
||||
Location = new System.Drawing.Point(53, positionY),
|
||||
Size = new System.Drawing.Size(407, 23)
|
||||
|
||||
};
|
||||
controlStudentGroup.SetTitleWidth(controlStudentGroup.SetTitle("Группа:"));
|
||||
groupBoxReportInfo.Controls.Add(controlStudentGroup);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,63 @@
|
||||
<root>
|
||||
<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="toolStripHeader.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
@ -1,4 +1,5 @@
|
||||
using DatabaseCore.Models.Department;
|
||||
using DatabaseCore.Models.AcademicProgress;
|
||||
using DatabaseCore.Models.Department;
|
||||
using DatabaseCore.Models.Security;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
@ -18,7 +19,7 @@ namespace DatabaseCore
|
||||
#endif
|
||||
|
||||
#if DEBUG
|
||||
optionsBuilder.UseSqlServer(@"Data Source=CHESHIR\SQLEXPRESS;Initial Catalog=DepartmentDatabasePortal;persist security info=True;user id=admin;password=cheshirSA123;MultipleActiveResultSets=True;");
|
||||
optionsBuilder.UseSqlServer(@"Data Source=DESKTOP-V8MOBH6\SQLEXPRESS;Initial Catalog=DepartmentDBPortal2;Integrated Security=True;MultipleActiveResultSets=True;");
|
||||
#endif
|
||||
}
|
||||
base.OnConfiguring(optionsBuilder);
|
||||
@ -70,6 +71,8 @@ namespace DatabaseCore
|
||||
|
||||
modelBuilder.Entity<Order>().HasIndex(d => new { d.OrderNumber }).IsUnique();
|
||||
|
||||
modelBuilder.Entity<StudentAcademicProgress>().HasIndex(d => new { d.StudentId, d.DisciplineId, d.Semester }).IsUnique();
|
||||
|
||||
modelBuilder.Entity<OrderStudentRecord>().HasIndex(d => new { d.StudentId, d.OrderId }).IsUnique();
|
||||
|
||||
modelBuilder.Entity<OrderStudentRecord>()
|
||||
|
@ -5,9 +5,9 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.4" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.4" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.4">
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.5" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.5" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.5">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
|
1526
DepartmentPortal/Common/DatabaseCore/Migrations/20220215123039_AddStudentAcademicProgress.Designer.cs
generated
Normal file
1526
DepartmentPortal/Common/DatabaseCore/Migrations/20220215123039_AddStudentAcademicProgress.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,62 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace DatabaseCore.Migrations
|
||||
{
|
||||
public partial class AddStudentAcademicProgress : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "StudentAcademicProgress",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||
StudentId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||
DisciplineId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||
Semester = table.Column<int>(type: "int", nullable: false),
|
||||
StudentAcademicProgressId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||
Score = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||
AffixingDate = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||
IsIncreaseScore = table.Column<bool>(type: "bit", nullable: false),
|
||||
IsResit = table.Column<bool>(type: "bit", nullable: false),
|
||||
DateCreate = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||
DateDelete = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||
IsDeleted = table.Column<bool>(type: "bit", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_StudentAcademicProgress", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_StudentAcademicProgress_Disciplines_DisciplineId",
|
||||
column: x => x.DisciplineId,
|
||||
principalTable: "Disciplines",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_StudentAcademicProgress_Students_StudentId",
|
||||
column: x => x.StudentId,
|
||||
principalTable: "Students",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_StudentAcademicProgress_DisciplineId",
|
||||
table: "StudentAcademicProgress",
|
||||
column: "DisciplineId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_StudentAcademicProgress_StudentId_DisciplineId_Semester",
|
||||
table: "StudentAcademicProgress",
|
||||
columns: new[] { "StudentId", "DisciplineId", "Semester" },
|
||||
unique: true);
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "StudentAcademicProgress");
|
||||
}
|
||||
}
|
||||
}
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace DatabaseCore.Migrations
|
||||
{
|
||||
public partial class ChangeDisciplinesAndAcademicProgress : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "StudentAcademicProgressId",
|
||||
table: "StudentAcademicProgress");
|
||||
|
||||
migrationBuilder.AlterColumn<int>(
|
||||
name: "Score",
|
||||
table: "StudentAcademicProgress",
|
||||
type: "int",
|
||||
nullable: false,
|
||||
oldClrType: typeof(string),
|
||||
oldType: "nvarchar(max)");
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "Discipline1CName",
|
||||
table: "Disciplines",
|
||||
type: "nvarchar(max)",
|
||||
nullable: true);
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "Discipline1CName",
|
||||
table: "Disciplines");
|
||||
|
||||
migrationBuilder.AlterColumn<string>(
|
||||
name: "Score",
|
||||
table: "StudentAcademicProgress",
|
||||
type: "nvarchar(max)",
|
||||
nullable: false,
|
||||
oldClrType: typeof(int),
|
||||
oldType: "int");
|
||||
|
||||
migrationBuilder.AddColumn<Guid>(
|
||||
name: "StudentAcademicProgressId",
|
||||
table: "StudentAcademicProgress",
|
||||
type: "uniqueidentifier",
|
||||
nullable: true);
|
||||
}
|
||||
}
|
||||
}
|
1525
DepartmentPortal/Common/DatabaseCore/Migrations/20220314112223_ChangeAcademicProgress.Designer.cs
generated
Normal file
1525
DepartmentPortal/Common/DatabaseCore/Migrations/20220314112223_ChangeAcademicProgress.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,17 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace DatabaseCore.Migrations
|
||||
{
|
||||
public partial class ChangeAcademicProgress : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -19,6 +19,51 @@ namespace DatabaseCore.Migrations
|
||||
.HasAnnotation("ProductVersion", "5.0.5")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("DatabaseCore.Models.AcademicProgress.StudentAcademicProgress", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
b.Property<DateTime>("AffixingDate")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<DateTime>("DateCreate")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<DateTime?>("DateDelete")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<Guid>("DisciplineId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
b.Property<bool>("IsDeleted")
|
||||
.HasColumnType("bit");
|
||||
|
||||
b.Property<bool>("IsIncreaseScore")
|
||||
.HasColumnType("bit");
|
||||
|
||||
b.Property<bool>("IsResit")
|
||||
.HasColumnType("bit");
|
||||
|
||||
b.Property<int>("Score")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<int>("Semester")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<Guid>("StudentId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("DisciplineId");
|
||||
|
||||
b.HasIndex("StudentId", "DisciplineId", "Semester")
|
||||
.IsUnique();
|
||||
|
||||
b.ToTable("StudentAcademicProgress");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("DatabaseCore.Models.Department.AcademicPlan", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
@ -201,6 +246,9 @@ namespace DatabaseCore.Migrations
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<string>("Discipline1CName")
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<Guid>("DisciplineBlockId")
|
||||
.HasColumnType("uniqueidentifier");
|
||||
|
||||
@ -1065,6 +1113,25 @@ namespace DatabaseCore.Migrations
|
||||
b.ToTable("UserRoles");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("DatabaseCore.Models.AcademicProgress.StudentAcademicProgress", b =>
|
||||
{
|
||||
b.HasOne("DatabaseCore.Models.Department.Discipline", "Discipline")
|
||||
.WithMany("StudentAcademicProgress")
|
||||
.HasForeignKey("DisciplineId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("DatabaseCore.Models.Department.Student", "Student")
|
||||
.WithMany("StudentAcademicProgress")
|
||||
.HasForeignKey("StudentId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Discipline");
|
||||
|
||||
b.Navigation("Student");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("DatabaseCore.Models.Department.AcademicPlan", b =>
|
||||
{
|
||||
b.HasOne("DatabaseCore.Models.Department.EducationDirection", "EducationDirection")
|
||||
@ -1351,6 +1418,8 @@ namespace DatabaseCore.Migrations
|
||||
modelBuilder.Entity("DatabaseCore.Models.Department.Discipline", b =>
|
||||
{
|
||||
b.Navigation("AcademicPlanRecords");
|
||||
|
||||
b.Navigation("StudentAcademicProgress");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("DatabaseCore.Models.Department.DisciplineBlock", b =>
|
||||
@ -1413,6 +1482,8 @@ namespace DatabaseCore.Migrations
|
||||
modelBuilder.Entity("DatabaseCore.Models.Department.Student", b =>
|
||||
{
|
||||
b.Navigation("OrderStudentRecords");
|
||||
|
||||
b.Navigation("StudentAcademicProgress");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("DatabaseCore.Models.Department.StudentGroup", b =>
|
||||
|
@ -0,0 +1,66 @@
|
||||
using DatabaseCore.Models.Department;
|
||||
using ModuleTools.Attributes;
|
||||
using ModuleTools.Interfaces;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Runtime.Serialization;
|
||||
|
||||
namespace DatabaseCore.Models.AcademicProgress
|
||||
{
|
||||
/// <summary>
|
||||
/// Класс, описывающий запись успеваемости студента
|
||||
/// </summary>
|
||||
[DataContract]
|
||||
[EntityDescription("StudentAcademicProgress", "Запись успеваемости студента")]
|
||||
[EntityDependency("Discipline", "DisciplineId", "Дисциплина, которая указана в записи успеваемости")]
|
||||
[EntityDependency("Student", "StudentId", "Студент, для которого запрашивается успеваемость")]
|
||||
public class StudentAcademicProgress : BaseEntity, IEntitySecurityExtenstion<StudentAcademicProgress>
|
||||
{
|
||||
[DataMember]
|
||||
[Required(ErrorMessage = "required")]
|
||||
[MapConfiguration("StudentId")]
|
||||
public Guid StudentId { get; set; }
|
||||
|
||||
[DataMember]
|
||||
[Required(ErrorMessage = "required")]
|
||||
[MapConfiguration("DisciplineId")]
|
||||
public Guid DisciplineId { get; set; }
|
||||
|
||||
[DataMember]
|
||||
[Required]
|
||||
[MapConfiguration("Semester")]
|
||||
public int Semester { get; set; }
|
||||
|
||||
[DataMember]
|
||||
[Required(ErrorMessage = "required")]
|
||||
[MapConfiguration("Score")]
|
||||
public int Score { get; set; }
|
||||
|
||||
[DataMember]
|
||||
[Required]
|
||||
[MapConfiguration("AffixingDate")]
|
||||
public DateTime AffixingDate { get; set; }
|
||||
|
||||
[DataMember]
|
||||
[MapConfiguration("IsIncreaseScore")]
|
||||
public bool IsIncreaseScore { get; set; }
|
||||
|
||||
[DataMember]
|
||||
[MapConfiguration("IsResit")]
|
||||
public bool IsResit { get; set; }
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
public virtual Student Student { get; set; }
|
||||
|
||||
public virtual Discipline Discipline { get; set; }
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
|
||||
public StudentAcademicProgress SecurityCheck(StudentAcademicProgress entity, bool allowFullData) => entity;
|
||||
|
||||
public override string ToString() => $"{Student}-{Discipline}";
|
||||
|
||||
}
|
||||
}
|
@ -1,4 +1,5 @@
|
||||
using ModuleTools.Attributes;
|
||||
using DatabaseCore.Models.AcademicProgress;
|
||||
using ModuleTools.Attributes;
|
||||
using ModuleTools.Interfaces;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@ -30,6 +31,10 @@ namespace DatabaseCore.Models.Department
|
||||
[MapConfiguration("DisciplineShortName")]
|
||||
public string DisciplineShortName { get; set; }
|
||||
|
||||
[DataMember]
|
||||
[MapConfiguration("Discipline1CName")]
|
||||
public string Discipline1CName { get; set; }
|
||||
|
||||
[DataMember]
|
||||
[MapConfiguration("Description")]
|
||||
public string Description { get; set; }
|
||||
@ -46,6 +51,8 @@ namespace DatabaseCore.Models.Department
|
||||
[ForeignKey("DisciplineId")]
|
||||
public virtual List<AcademicPlanRecord> AcademicPlanRecords { get; set; }
|
||||
|
||||
[ForeignKey("DisciplineId")]
|
||||
public virtual List<StudentAcademicProgress> StudentAcademicProgress { get; set; }
|
||||
//-------------------------------------------------------------------------
|
||||
|
||||
public Discipline SecurityCheck(Discipline entity, bool allowFullData) => entity;
|
||||
|
@ -1,4 +1,5 @@
|
||||
using DatabaseCore.Models.Security;
|
||||
using DatabaseCore.Models.AcademicProgress;
|
||||
using DatabaseCore.Models.Security;
|
||||
using ModuleTools.Attributes;
|
||||
using ModuleTools.Extensions;
|
||||
using ModuleTools.Interfaces;
|
||||
@ -85,6 +86,9 @@ namespace DatabaseCore.Models.Department
|
||||
[ForeignKey("StudentId")]
|
||||
public virtual List<OrderStudentRecord> OrderStudentRecords { get; set; }
|
||||
|
||||
[ForeignKey("StudentId")]
|
||||
public virtual List<StudentAcademicProgress> StudentAcademicProgress { get; set; }
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
|
||||
public Student SecurityCheck(Student entity, bool allowFullData)
|
||||
|
@ -38,7 +38,7 @@ namespace DesktopTools.BaseControls
|
||||
this.labelTitle.Dock = System.Windows.Forms.DockStyle.Left;
|
||||
this.labelTitle.Location = new System.Drawing.Point(0, 0);
|
||||
this.labelTitle.Name = "labelTitle";
|
||||
this.labelTitle.Size = new System.Drawing.Size(93, 25);
|
||||
this.labelTitle.Size = new System.Drawing.Size(123, 33);
|
||||
this.labelTitle.TabIndex = 0;
|
||||
this.labelTitle.Text = "Наименование:";
|
||||
this.labelTitle.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
@ -46,19 +46,21 @@ namespace DesktopTools.BaseControls
|
||||
// panelControl
|
||||
//
|
||||
this.panelControl.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.panelControl.Location = new System.Drawing.Point(93, 0);
|
||||
this.panelControl.Location = new System.Drawing.Point(123, 0);
|
||||
this.panelControl.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.panelControl.Name = "panelControl";
|
||||
this.panelControl.Size = new System.Drawing.Size(407, 25);
|
||||
this.panelControl.Size = new System.Drawing.Size(524, 33);
|
||||
this.panelControl.TabIndex = 1;
|
||||
//
|
||||
// AbstractBaseControl
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.panelControl);
|
||||
this.Controls.Add(this.labelTitle);
|
||||
this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.Name = "AbstractBaseControl";
|
||||
this.Size = new System.Drawing.Size(500, 25);
|
||||
this.Size = new System.Drawing.Size(647, 33);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
@ -51,6 +51,19 @@
|
||||
СинхронизацияПриказов = 150,
|
||||
#endregion
|
||||
|
||||
#region Успеваемость
|
||||
Учет_успеваемости = 700,
|
||||
|
||||
План_сдачи = 701,
|
||||
|
||||
Прогресс = 702,
|
||||
|
||||
Для_выпускников = 703,
|
||||
|
||||
Академическая_разница = 704,
|
||||
#endregion
|
||||
|
||||
|
||||
// Меню Учебный процесс
|
||||
Учебный_процесс = 150,
|
||||
|
||||
@ -107,6 +120,8 @@
|
||||
// Web-портал
|
||||
Новости = 600,
|
||||
|
||||
Комментарии = 601
|
||||
Комментарии = 601,
|
||||
|
||||
Записи_Учебного_Прогресса = 602
|
||||
}
|
||||
}
|
@ -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>
|
@ -23,11 +23,19 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ModuleTools", "Common\Modul
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Department", "Department", "{A19E7709-6AD8-4E9B-B3AB-4339C67D9F39}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DepartmentBusinessLogic", "Department\DepartmentBusinessLogic\DepartmentBusinessLogic.csproj", "{69B94DB1-D1BE-4905-81AC-A5D49D0C9719}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DepartmentBusinessLogic", "Department\DepartmentBusinessLogic\DepartmentBusinessLogic.csproj", "{69B94DB1-D1BE-4905-81AC-A5D49D0C9719}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DepartmentDatabaseImplementation", "Department\DepartmentDatabaseImplementation.csproj\DepartmentDatabaseImplementation.csproj", "{1A9E20FE-6324-4839-A3AD-5726305122A5}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DepartmentDatabaseImplementation", "Department\DepartmentDatabaseImplementation.csproj\DepartmentDatabaseImplementation.csproj", "{1A9E20FE-6324-4839-A3AD-5726305122A5}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DepartmentWindowsDesktop", "Department\DepartmentWindowsDesktop\DepartmentWindowsDesktop.csproj", "{8E12DE14-0D83-48D8-964D-8B2BB06DB129}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DepartmentWindowsDesktop", "Department\DepartmentWindowsDesktop\DepartmentWindowsDesktop.csproj", "{8E12DE14-0D83-48D8-964D-8B2BB06DB129}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AcademicProgress", "AcademicProgress", "{DDBE45C6-7A51-4578-9661-B5F2BB60D7C1}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AcademicProgressBusinessLogic", "AcademicProgressBusinessLogic\AcademicProgressBusinessLogic.csproj", "{A4BDED59-D9A6-46BA-972A-36078AFC7EC8}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AcademicProgressDatabaseImplementation", "AcademicProgressDatabaseImplementation\AcademicProgressDatabaseImplementation.csproj", "{0BC13743-FB52-45BB-B919-D425A00B15BC}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AcademicProgressWindowsDesktop", "AcademicProgressWindowsDesktop\AcademicProgressWindowsDesktop.csproj", "{BEBE6200-ECA2-470C-AA4F-8E2ACDA4B9BE}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@ -75,6 +83,18 @@ Global
|
||||
{8E12DE14-0D83-48D8-964D-8B2BB06DB129}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8E12DE14-0D83-48D8-964D-8B2BB06DB129}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8E12DE14-0D83-48D8-964D-8B2BB06DB129}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A4BDED59-D9A6-46BA-972A-36078AFC7EC8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A4BDED59-D9A6-46BA-972A-36078AFC7EC8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A4BDED59-D9A6-46BA-972A-36078AFC7EC8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A4BDED59-D9A6-46BA-972A-36078AFC7EC8}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{0BC13743-FB52-45BB-B919-D425A00B15BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0BC13743-FB52-45BB-B919-D425A00B15BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0BC13743-FB52-45BB-B919-D425A00B15BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0BC13743-FB52-45BB-B919-D425A00B15BC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{BEBE6200-ECA2-470C-AA4F-8E2ACDA4B9BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{BEBE6200-ECA2-470C-AA4F-8E2ACDA4B9BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{BEBE6200-ECA2-470C-AA4F-8E2ACDA4B9BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{BEBE6200-ECA2-470C-AA4F-8E2ACDA4B9BE}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -89,6 +109,9 @@ Global
|
||||
{69B94DB1-D1BE-4905-81AC-A5D49D0C9719} = {A19E7709-6AD8-4E9B-B3AB-4339C67D9F39}
|
||||
{1A9E20FE-6324-4839-A3AD-5726305122A5} = {A19E7709-6AD8-4E9B-B3AB-4339C67D9F39}
|
||||
{8E12DE14-0D83-48D8-964D-8B2BB06DB129} = {A19E7709-6AD8-4E9B-B3AB-4339C67D9F39}
|
||||
{A4BDED59-D9A6-46BA-972A-36078AFC7EC8} = {DDBE45C6-7A51-4578-9661-B5F2BB60D7C1}
|
||||
{0BC13743-FB52-45BB-B919-D425A00B15BC} = {DDBE45C6-7A51-4578-9661-B5F2BB60D7C1}
|
||||
{BEBE6200-ECA2-470C-AA4F-8E2ACDA4B9BE} = {DDBE45C6-7A51-4578-9661-B5F2BB60D7C1}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {FBA0CB49-EF2D-4538-9D00-FCEDA24879A9}
|
||||
|
@ -53,6 +53,7 @@ namespace DepartmentPortalDesctop
|
||||
this.textBoxLogin.Name = "textBoxLogin";
|
||||
this.textBoxLogin.Size = new System.Drawing.Size(242, 23);
|
||||
this.textBoxLogin.TabIndex = 1;
|
||||
this.textBoxLogin.Text = "admin";
|
||||
//
|
||||
// labelPassword
|
||||
//
|
||||
@ -72,6 +73,8 @@ namespace DepartmentPortalDesctop
|
||||
this.textBoxPassword.Size = new System.Drawing.Size(242, 23);
|
||||
this.textBoxPassword.TabIndex = 3;
|
||||
this.textBoxPassword.UseSystemPasswordChar = true;
|
||||
this.textBoxPassword.Text = "qwerty";
|
||||
|
||||
//
|
||||
// buttonEnter
|
||||
//
|
||||
|
@ -42,9 +42,11 @@ namespace DepartmentPortalDesctop
|
||||
//
|
||||
// menuMain
|
||||
//
|
||||
this.menuMain.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.menuMain.Location = new System.Drawing.Point(0, 0);
|
||||
this.menuMain.Name = "menuMain";
|
||||
this.menuMain.Size = new System.Drawing.Size(800, 24);
|
||||
this.menuMain.Padding = new System.Windows.Forms.Padding(7, 3, 0, 3);
|
||||
this.menuMain.Size = new System.Drawing.Size(914, 30);
|
||||
this.menuMain.TabIndex = 0;
|
||||
this.menuMain.Text = "Главное меню";
|
||||
//
|
||||
@ -52,9 +54,10 @@ namespace DepartmentPortalDesctop
|
||||
//
|
||||
this.panelControls.Controls.Add(this.dataGridViewControls);
|
||||
this.panelControls.Dock = System.Windows.Forms.DockStyle.Left;
|
||||
this.panelControls.Location = new System.Drawing.Point(0, 24);
|
||||
this.panelControls.Location = new System.Drawing.Point(0, 30);
|
||||
this.panelControls.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.panelControls.Name = "panelControls";
|
||||
this.panelControls.Size = new System.Drawing.Size(191, 426);
|
||||
this.panelControls.Size = new System.Drawing.Size(218, 570);
|
||||
this.panelControls.TabIndex = 1;
|
||||
//
|
||||
// dataGridViewControls
|
||||
@ -71,36 +74,42 @@ namespace DepartmentPortalDesctop
|
||||
this.ColumnControlName});
|
||||
this.dataGridViewControls.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.dataGridViewControls.Location = new System.Drawing.Point(0, 0);
|
||||
this.dataGridViewControls.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.dataGridViewControls.MultiSelect = false;
|
||||
this.dataGridViewControls.Name = "dataGridViewControls";
|
||||
this.dataGridViewControls.ReadOnly = true;
|
||||
this.dataGridViewControls.RowHeadersVisible = false;
|
||||
this.dataGridViewControls.RowHeadersWidth = 51;
|
||||
this.dataGridViewControls.RowTemplate.Height = 25;
|
||||
this.dataGridViewControls.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.dataGridViewControls.Size = new System.Drawing.Size(191, 426);
|
||||
this.dataGridViewControls.Size = new System.Drawing.Size(218, 570);
|
||||
this.dataGridViewControls.TabIndex = 0;
|
||||
this.dataGridViewControls.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridViewControls_CellClick);
|
||||
//
|
||||
// ColumnControlId
|
||||
//
|
||||
this.ColumnControlId.HeaderText = "Id";
|
||||
this.ColumnControlId.MinimumWidth = 6;
|
||||
this.ColumnControlId.Name = "ColumnControlId";
|
||||
this.ColumnControlId.ReadOnly = true;
|
||||
this.ColumnControlId.Visible = false;
|
||||
this.ColumnControlId.Width = 125;
|
||||
//
|
||||
// ColumnControlName
|
||||
//
|
||||
this.ColumnControlName.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
|
||||
this.ColumnControlName.HeaderText = "ControlName";
|
||||
this.ColumnControlName.MinimumWidth = 6;
|
||||
this.ColumnControlName.Name = "ColumnControlName";
|
||||
this.ColumnControlName.ReadOnly = true;
|
||||
//
|
||||
// ButtonShowHideControlList
|
||||
//
|
||||
this.ButtonShowHideControlList.Dock = System.Windows.Forms.DockStyle.Left;
|
||||
this.ButtonShowHideControlList.Location = new System.Drawing.Point(191, 24);
|
||||
this.ButtonShowHideControlList.Location = new System.Drawing.Point(218, 30);
|
||||
this.ButtonShowHideControlList.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.ButtonShowHideControlList.Name = "ButtonShowHideControlList";
|
||||
this.ButtonShowHideControlList.Size = new System.Drawing.Size(25, 426);
|
||||
this.ButtonShowHideControlList.Size = new System.Drawing.Size(29, 570);
|
||||
this.ButtonShowHideControlList.TabIndex = 3;
|
||||
this.ButtonShowHideControlList.Text = ">";
|
||||
this.ButtonShowHideControlList.UseVisualStyleBackColor = true;
|
||||
@ -109,21 +118,23 @@ namespace DepartmentPortalDesctop
|
||||
// panelControl
|
||||
//
|
||||
this.panelControl.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.panelControl.Location = new System.Drawing.Point(216, 24);
|
||||
this.panelControl.Location = new System.Drawing.Point(247, 30);
|
||||
this.panelControl.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.panelControl.Name = "panelControl";
|
||||
this.panelControl.Size = new System.Drawing.Size(584, 426);
|
||||
this.panelControl.Size = new System.Drawing.Size(667, 570);
|
||||
this.panelControl.TabIndex = 4;
|
||||
//
|
||||
// FormMain
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
||||
this.ClientSize = new System.Drawing.Size(914, 600);
|
||||
this.Controls.Add(this.panelControl);
|
||||
this.Controls.Add(this.ButtonShowHideControlList);
|
||||
this.Controls.Add(this.panelControls);
|
||||
this.Controls.Add(this.menuMain);
|
||||
this.MainMenuStrip = this.menuMain;
|
||||
this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.Name = "FormMain";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Кафедральный портал";
|
||||
|
@ -57,10 +57,13 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="ColumnControlId.UserAddedColumn" type="System.Boolean, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e">
|
||||
<metadata name="menuMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ColumnControlId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="ColumnControlName.UserAddedColumn" type="System.Boolean, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e">
|
||||
<metadata name="ColumnControlName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
</root>
|
@ -59,18 +59,21 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
this.groupBoxSaveBackup.Controls.Add(this.buttonSaveSelectFolder);
|
||||
this.groupBoxSaveBackup.Controls.Add(this.textBoxSaveFolderName);
|
||||
this.groupBoxSaveBackup.Controls.Add(this.labelSaveFolderName);
|
||||
this.groupBoxSaveBackup.Location = new System.Drawing.Point(0, 28);
|
||||
this.groupBoxSaveBackup.Location = new System.Drawing.Point(0, 37);
|
||||
this.groupBoxSaveBackup.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.groupBoxSaveBackup.Name = "groupBoxSaveBackup";
|
||||
this.groupBoxSaveBackup.Size = new System.Drawing.Size(496, 100);
|
||||
this.groupBoxSaveBackup.Padding = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.groupBoxSaveBackup.Size = new System.Drawing.Size(567, 133);
|
||||
this.groupBoxSaveBackup.TabIndex = 0;
|
||||
this.groupBoxSaveBackup.TabStop = false;
|
||||
this.groupBoxSaveBackup.Text = "Сохранение в бекап";
|
||||
//
|
||||
// buttonCreateBackup
|
||||
//
|
||||
this.buttonCreateBackup.Location = new System.Drawing.Point(385, 71);
|
||||
this.buttonCreateBackup.Location = new System.Drawing.Point(440, 95);
|
||||
this.buttonCreateBackup.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.buttonCreateBackup.Name = "buttonCreateBackup";
|
||||
this.buttonCreateBackup.Size = new System.Drawing.Size(99, 23);
|
||||
this.buttonCreateBackup.Size = new System.Drawing.Size(113, 31);
|
||||
this.buttonCreateBackup.TabIndex = 5;
|
||||
this.buttonCreateBackup.Text = "Выгрузить";
|
||||
this.buttonCreateBackup.UseVisualStyleBackColor = true;
|
||||
@ -79,9 +82,10 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
// checkBoxCreateArchive
|
||||
//
|
||||
this.checkBoxCreateArchive.AutoSize = true;
|
||||
this.checkBoxCreateArchive.Location = new System.Drawing.Point(262, 55);
|
||||
this.checkBoxCreateArchive.Location = new System.Drawing.Point(299, 73);
|
||||
this.checkBoxCreateArchive.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.checkBoxCreateArchive.Name = "checkBoxCreateArchive";
|
||||
this.checkBoxCreateArchive.Size = new System.Drawing.Size(104, 19);
|
||||
this.checkBoxCreateArchive.Size = new System.Drawing.Size(131, 24);
|
||||
this.checkBoxCreateArchive.TabIndex = 4;
|
||||
this.checkBoxCreateArchive.Text = "Создать архив";
|
||||
this.checkBoxCreateArchive.UseVisualStyleBackColor = true;
|
||||
@ -89,18 +93,20 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
// checkBoxFullLoad
|
||||
//
|
||||
this.checkBoxFullLoad.AutoSize = true;
|
||||
this.checkBoxFullLoad.Location = new System.Drawing.Point(120, 55);
|
||||
this.checkBoxFullLoad.Location = new System.Drawing.Point(137, 73);
|
||||
this.checkBoxFullLoad.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.checkBoxFullLoad.Name = "checkBoxFullLoad";
|
||||
this.checkBoxFullLoad.Size = new System.Drawing.Size(121, 19);
|
||||
this.checkBoxFullLoad.Size = new System.Drawing.Size(151, 24);
|
||||
this.checkBoxFullLoad.TabIndex = 3;
|
||||
this.checkBoxFullLoad.Text = "Полная выгрузка";
|
||||
this.checkBoxFullLoad.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// buttonSaveSelectFolder
|
||||
//
|
||||
this.buttonSaveSelectFolder.Location = new System.Drawing.Point(385, 26);
|
||||
this.buttonSaveSelectFolder.Location = new System.Drawing.Point(440, 35);
|
||||
this.buttonSaveSelectFolder.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.buttonSaveSelectFolder.Name = "buttonSaveSelectFolder";
|
||||
this.buttonSaveSelectFolder.Size = new System.Drawing.Size(99, 23);
|
||||
this.buttonSaveSelectFolder.Size = new System.Drawing.Size(113, 31);
|
||||
this.buttonSaveSelectFolder.TabIndex = 2;
|
||||
this.buttonSaveSelectFolder.Text = "Выбрать папку";
|
||||
this.buttonSaveSelectFolder.UseVisualStyleBackColor = true;
|
||||
@ -108,27 +114,31 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
//
|
||||
// textBoxSaveFolderName
|
||||
//
|
||||
this.textBoxSaveFolderName.Location = new System.Drawing.Point(110, 26);
|
||||
this.textBoxSaveFolderName.Location = new System.Drawing.Point(126, 35);
|
||||
this.textBoxSaveFolderName.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.textBoxSaveFolderName.Name = "textBoxSaveFolderName";
|
||||
this.textBoxSaveFolderName.Size = new System.Drawing.Size(269, 23);
|
||||
this.textBoxSaveFolderName.Size = new System.Drawing.Size(307, 27);
|
||||
this.textBoxSaveFolderName.TabIndex = 1;
|
||||
this.textBoxSaveFolderName.TextChanged += new System.EventHandler(this.textBoxSaveFolderName_TextChanged);
|
||||
//
|
||||
// labelSaveFolderName
|
||||
//
|
||||
this.labelSaveFolderName.AutoSize = true;
|
||||
this.labelSaveFolderName.Location = new System.Drawing.Point(16, 29);
|
||||
this.labelSaveFolderName.Location = new System.Drawing.Point(18, 39);
|
||||
this.labelSaveFolderName.Name = "labelSaveFolderName";
|
||||
this.labelSaveFolderName.Size = new System.Drawing.Size(85, 15);
|
||||
this.labelSaveFolderName.Size = new System.Drawing.Size(108, 20);
|
||||
this.labelSaveFolderName.TabIndex = 0;
|
||||
this.labelSaveFolderName.Text = "Путь до папки";
|
||||
this.labelSaveFolderName.Click += new System.EventHandler(this.labelSaveFolderName_Click);
|
||||
//
|
||||
// toolStripHeader
|
||||
//
|
||||
this.toolStripHeader.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.toolStripHeader.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.toolStripButtonClose});
|
||||
this.toolStripHeader.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStripHeader.Name = "toolStripHeader";
|
||||
this.toolStripHeader.Size = new System.Drawing.Size(708, 25);
|
||||
this.toolStripHeader.Size = new System.Drawing.Size(809, 27);
|
||||
this.toolStripHeader.TabIndex = 1;
|
||||
this.toolStripHeader.Text = "toolStrip1";
|
||||
//
|
||||
@ -139,7 +149,7 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
this.toolStripButtonClose.Image = global::SecurityWindowsDesktop.Properties.Resources.Close;
|
||||
this.toolStripButtonClose.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButtonClose.Name = "toolStripButtonClose";
|
||||
this.toolStripButtonClose.Size = new System.Drawing.Size(23, 22);
|
||||
this.toolStripButtonClose.Size = new System.Drawing.Size(29, 24);
|
||||
this.toolStripButtonClose.Text = "Закрыть";
|
||||
//
|
||||
// groupBoxLoadBackup
|
||||
@ -151,18 +161,21 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
this.groupBoxLoadBackup.Controls.Add(this.buttonLoadSelectFolder);
|
||||
this.groupBoxLoadBackup.Controls.Add(this.textBoxLoadFolderName);
|
||||
this.groupBoxLoadBackup.Controls.Add(this.labelLoadFolderName);
|
||||
this.groupBoxLoadBackup.Location = new System.Drawing.Point(0, 134);
|
||||
this.groupBoxLoadBackup.Location = new System.Drawing.Point(0, 179);
|
||||
this.groupBoxLoadBackup.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.groupBoxLoadBackup.Name = "groupBoxLoadBackup";
|
||||
this.groupBoxLoadBackup.Size = new System.Drawing.Size(496, 137);
|
||||
this.groupBoxLoadBackup.Padding = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.groupBoxLoadBackup.Size = new System.Drawing.Size(567, 183);
|
||||
this.groupBoxLoadBackup.TabIndex = 2;
|
||||
this.groupBoxLoadBackup.TabStop = false;
|
||||
this.groupBoxLoadBackup.Text = "Загрузка из бекапа";
|
||||
//
|
||||
// buttonRestoreBackup
|
||||
//
|
||||
this.buttonRestoreBackup.Location = new System.Drawing.Point(383, 99);
|
||||
this.buttonRestoreBackup.Location = new System.Drawing.Point(438, 132);
|
||||
this.buttonRestoreBackup.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.buttonRestoreBackup.Name = "buttonRestoreBackup";
|
||||
this.buttonRestoreBackup.Size = new System.Drawing.Size(99, 23);
|
||||
this.buttonRestoreBackup.Size = new System.Drawing.Size(113, 31);
|
||||
this.buttonRestoreBackup.TabIndex = 9;
|
||||
this.buttonRestoreBackup.Text = "Загрузить";
|
||||
this.buttonRestoreBackup.UseVisualStyleBackColor = true;
|
||||
@ -170,9 +183,10 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
//
|
||||
// buttonLoadArchiveSelect
|
||||
//
|
||||
this.buttonLoadArchiveSelect.Location = new System.Drawing.Point(383, 64);
|
||||
this.buttonLoadArchiveSelect.Location = new System.Drawing.Point(438, 85);
|
||||
this.buttonLoadArchiveSelect.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.buttonLoadArchiveSelect.Name = "buttonLoadArchiveSelect";
|
||||
this.buttonLoadArchiveSelect.Size = new System.Drawing.Size(99, 23);
|
||||
this.buttonLoadArchiveSelect.Size = new System.Drawing.Size(113, 31);
|
||||
this.buttonLoadArchiveSelect.TabIndex = 8;
|
||||
this.buttonLoadArchiveSelect.Text = "Выбрать файл";
|
||||
this.buttonLoadArchiveSelect.UseVisualStyleBackColor = true;
|
||||
@ -180,25 +194,27 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
//
|
||||
// textBoxLoadArchiveName
|
||||
//
|
||||
this.textBoxLoadArchiveName.Location = new System.Drawing.Point(110, 64);
|
||||
this.textBoxLoadArchiveName.Location = new System.Drawing.Point(126, 85);
|
||||
this.textBoxLoadArchiveName.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.textBoxLoadArchiveName.Name = "textBoxLoadArchiveName";
|
||||
this.textBoxLoadArchiveName.Size = new System.Drawing.Size(267, 23);
|
||||
this.textBoxLoadArchiveName.Size = new System.Drawing.Size(305, 27);
|
||||
this.textBoxLoadArchiveName.TabIndex = 7;
|
||||
//
|
||||
// labelLoadArchiveName
|
||||
//
|
||||
this.labelLoadArchiveName.AutoSize = true;
|
||||
this.labelLoadArchiveName.Location = new System.Drawing.Point(14, 67);
|
||||
this.labelLoadArchiveName.Location = new System.Drawing.Point(16, 89);
|
||||
this.labelLoadArchiveName.Name = "labelLoadArchiveName";
|
||||
this.labelLoadArchiveName.Size = new System.Drawing.Size(90, 15);
|
||||
this.labelLoadArchiveName.Size = new System.Drawing.Size(115, 20);
|
||||
this.labelLoadArchiveName.TabIndex = 6;
|
||||
this.labelLoadArchiveName.Text = "Путь до архива";
|
||||
//
|
||||
// buttonLoadSelectFolder
|
||||
//
|
||||
this.buttonLoadSelectFolder.Location = new System.Drawing.Point(385, 28);
|
||||
this.buttonLoadSelectFolder.Location = new System.Drawing.Point(440, 37);
|
||||
this.buttonLoadSelectFolder.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.buttonLoadSelectFolder.Name = "buttonLoadSelectFolder";
|
||||
this.buttonLoadSelectFolder.Size = new System.Drawing.Size(99, 23);
|
||||
this.buttonLoadSelectFolder.Size = new System.Drawing.Size(113, 31);
|
||||
this.buttonLoadSelectFolder.TabIndex = 5;
|
||||
this.buttonLoadSelectFolder.Text = "Выбрать папку";
|
||||
this.buttonLoadSelectFolder.UseVisualStyleBackColor = true;
|
||||
@ -206,29 +222,31 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
//
|
||||
// textBoxLoadFolderName
|
||||
//
|
||||
this.textBoxLoadFolderName.Location = new System.Drawing.Point(110, 28);
|
||||
this.textBoxLoadFolderName.Location = new System.Drawing.Point(126, 37);
|
||||
this.textBoxLoadFolderName.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.textBoxLoadFolderName.Name = "textBoxLoadFolderName";
|
||||
this.textBoxLoadFolderName.Size = new System.Drawing.Size(269, 23);
|
||||
this.textBoxLoadFolderName.Size = new System.Drawing.Size(307, 27);
|
||||
this.textBoxLoadFolderName.TabIndex = 4;
|
||||
//
|
||||
// labelLoadFolderName
|
||||
//
|
||||
this.labelLoadFolderName.AutoSize = true;
|
||||
this.labelLoadFolderName.Location = new System.Drawing.Point(16, 31);
|
||||
this.labelLoadFolderName.Location = new System.Drawing.Point(18, 41);
|
||||
this.labelLoadFolderName.Name = "labelLoadFolderName";
|
||||
this.labelLoadFolderName.Size = new System.Drawing.Size(85, 15);
|
||||
this.labelLoadFolderName.Size = new System.Drawing.Size(108, 20);
|
||||
this.labelLoadFolderName.TabIndex = 3;
|
||||
this.labelLoadFolderName.Text = "Путь до папки";
|
||||
//
|
||||
// BackupControl
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.groupBoxLoadBackup);
|
||||
this.Controls.Add(this.toolStripHeader);
|
||||
this.Controls.Add(this.groupBoxSaveBackup);
|
||||
this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.Name = "BackupControl";
|
||||
this.Size = new System.Drawing.Size(708, 486);
|
||||
this.Size = new System.Drawing.Size(809, 648);
|
||||
this.groupBoxSaveBackup.ResumeLayout(false);
|
||||
this.groupBoxSaveBackup.PerformLayout();
|
||||
this.toolStripHeader.ResumeLayout(false);
|
||||
|
@ -166,5 +166,15 @@ namespace SecurityWindowsDesktop.SpecialControls
|
||||
}
|
||||
Cursor.Current = cursor;
|
||||
}
|
||||
|
||||
private void textBoxSaveFolderName_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void labelSaveFolderName_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -57,4 +57,7 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="toolStripHeader.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
Loading…
Reference in New Issue
Block a user