Разработка программного продукта «Отдел кадров»
Заказать уникальную курсовую работу- 48 48 страниц
- 18 + 18 источников
- Добавлена 17.01.2024
- Содержание
- Часть работы
- Список литературы
ВВЕДЕНИЕ 3
1. ПОСТАНОВА ЗАДАЧИ 5
2. ПРОЕКТИРОВАНИЕ СИСТЕМЫ 7
2.1. Проектирование базы данных 7
2.2. Проектирование приложения пользователя 11
3. ОПИСАНИЕ РЕАЛИАЗЦИИ 15
3.1. Выбор средств реализации 15
3.2. Создание базы данных 18
3.3. Создание приложения 19
4. РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ 28
5. ТЕСТИРОВАНИЕ 33
ЗАКЛЮЧЕНИЕ 35
СПИСОК ЛИТЕРАТУРЫ 37
ПРИЛОЖЕНИЕ А SQL скрипт создания базы данных 39
ПРИЛОЖЕНИЕ Б Код классов сущностей 44
microsoft.com/ru-ru/aspnet/mvc/overview/getting-started/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mvc-applicationДиаграмма вариантов использования (Use Case Diagram) [Электронный ресурс]. URL: https://itonboard.ru/analysis/629-diagramma_variantov_ispolzovanija_use_case_diagram/?ysclid=lotc0d1yu880694691ORM. Ключи и ссылки. https://neerc.ifmo.ru/wiki/index.php?title=ORM._%D0%9A%D0%BB%D1%8E%D1%87%D0%B8_%D0%B8_%D1%81%D1%81%D1%8B%D0%BB%D0%BA%D0%B8ORM. URL: https://simpleone.ru/glossary/orm/#Диаграммы классов UML. Логическое моделирование. URL: https://www.informicus.ru/mps03.htmlСоздание запросов LINQ на языке C#. URL: https://learn.microsoft.com/ru-ru/dotnet/csharp/linq/write-linq-queriesПРИЛОЖЕНИЕ АSQLскрипт создания базы данныхUSE [master]GO/****** Object: Database [staffDB] Script Date: 16.12.2023 4:05:34 ******/ALTERDATABASE [staffDB] SETCOMPATIBILITY_LEVEL= 110GOIF (1 =FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))beginEXEC [staffDB].[dbo].[sp_fulltext_database]@action ='enable'endGOALTERDATABASE [staffDB] SETANSI_NULL_DEFAULTOFFGOALTERDATABASE [staffDB] SETANSI_NULLSOFFGOALTERDATABASE [staffDB] SETANSI_PADDINGOFFGOALTERDATABASE [staffDB] SETANSI_WARNINGSOFFGOALTERDATABASE [staffDB] SETARITHABORTOFFGOALTERDATABASE [staffDB] SETAUTO_CLOSEONGOALTERDATABASE [staffDB] SETAUTO_SHRINKOFFGOALTERDATABASE [staffDB] SETAUTO_UPDATE_STATISTICSONGOALTERDATABASE [staffDB] SETCURSOR_CLOSE_ON_COMMITOFFGOALTERDATABASE [staffDB] SETCURSOR_DEFAULTGLOBALGOALTERDATABASE [staffDB] SETCONCAT_NULL_YIELDS_NULLOFFGOALTERDATABASE [staffDB] SETNUMERIC_ROUNDABORTOFFGOALTERDATABASE [staffDB] SETQUOTED_IDENTIFIEROFFGOALTERDATABASE [staffDB] SETRECURSIVE_TRIGGERSOFFGOALTERDATABASE [staffDB] SETENABLE_BROKERGOALTERDATABASE [staffDB] SETAUTO_UPDATE_STATISTICS_ASYNCOFFGOALTERDATABASE [staffDB] SETDATE_CORRELATION_OPTIMIZATIONOFFGOALTERDATABASE [staffDB] SETTRUSTWORTHYOFFGOALTERDATABASE [staffDB] SETALLOW_SNAPSHOT_ISOLATIONOFFGOALTERDATABASE [staffDB] SETPARAMETERIZATIONSIMPLEGOALTERDATABASE [staffDB] SETREAD_COMMITTED_SNAPSHOTOFFGOALTERDATABASE [staffDB] SET HONOR_BROKER_PRIORITY OFFGOALTERDATABASE [staffDB] SETRECOVERYSIMPLEGOALTERDATABASE [staffDB] SETMULTI_USERGOALTERDATABASE [staffDB] SETPAGE_VERIFYCHECKSUMGOALTERDATABASE [staffDB] SETDB_CHAININGOFFGOALTERDATABASE [staffDB] SETFILESTREAM( NON_TRANSACTED_ACCESS =OFF)GOALTERDATABASE [staffDB] SET TARGET_RECOVERY_TIME = 0 SECONDS GOUSE [staffDB]GO/****** Object: User [staffadm] Script Date: 16.12.2023 4:05:34 ******/CREATEUSER [staffadm] FORLOGIN [staffadm] WITHDEFAULT_SCHEMA=[dbo]GOALTERROLE [db_owner] ADD MEMBER [staffadm]GO/****** Object: Table [dbo].[career] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[career]([id] [bigint] IDENTITY(1,1)NOTNULL,[idEmp] [bigint] NULL,[place] [nvarchar](100)NULL,[job] [nvarchar](100)NULL,[dBegin] [date] NULL,[dEnd] [date] NULL,[active] [bit] NULL,CONSTRAINT [PK_career] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GO/****** Object: Table [dbo].[depart] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[depart]([id] [bigint] IDENTITY(1,1)NOTNULL,[idDiv] [bigint] NULL,[idBoss] [bigint] NULL,[capt] [nvarchar](50)NULL,CONSTRAINT [PK_depart_1] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GO/****** Object: Table [dbo].[division] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[division]([id] [bigint] IDENTITY(1,1)NOTNULL,[capt] [nvarchar](50)NULL,[addr] [nvarchar](250)NULL,CONSTRAINT [PK_division] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GO/****** Object: Table [dbo].[employee] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[employee]([id] [bigint] IDENTITY(1,1)NOTNULL,[idDep] [bigint] NULL,[idPos] [bigint] NULL,[surn] [nvarchar](30)NULL,[name] [nvarchar](50)NULL,[patr] [nvarchar](40)NULL,[gender] [nchar](3)NULL,[birth] [date] NULL,[addr] [nvarchar](250)NULL,[phone] [nvarchar](20)NULL,[email] [nvarchar](30)NULL,CONSTRAINT [PK_employee] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GO/****** Object: Table [dbo].[pos] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[pos]([id] [bigint] IDENTITY(1,1)NOTNULL,[capt] [nvarchar](50)NULL,[salary] [float] NULL,CONSTRAINT [PK_pos] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GO/****** Object: Table [dbo].[promo] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[promo]([id] [bigint] IDENTITY(1,1)NOTNULL,[idEmp] [bigint] NULL,[capt] [nvarchar](100)NULL,[pDate] [date] NULL,[rate] [float] NULL,CONSTRAINT [PK_promo] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GO/****** Object: Table [dbo].[sick] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[sick]([id] [bigint] IDENTITY(1,1)NOTNULL,[idEmp] [bigint] NULL,[dStart] [date] NULL,[dEnd] [date] NULL,[listnumb] [nvarchar](20)NULL,[rate] [float] NULL,[note] [nvarchar](100)NULL,CONSTRAINT [PK_sick] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GO/****** Object: Table [dbo].[users] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[users]([id] [bigint] IDENTITY(1,1)NOTNULL,[login] [nvarchar](50)NULL,[passwd] [nvarchar](50)NULL,[idEmp] [bigint] NULL,[role] [bit] NULL,CONSTRAINT [PK_users] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GO/****** Object: Table [dbo].[vacation] Script Date: 16.12.2023 4:05:34 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[vacation]([id] [bigint] IDENTITY(1,1)NOTNULL,[idEmp] [bigint] NULL,[dStart] [date] NULL,[dEnd] [date] NULL,[note] [nvarchar](50)NULL,[rate] [float] NULL,CONSTRAINT [PK_vacation] PRIMARYKEYCLUSTERED([id] ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON [PRIMARY])ON [PRIMARY]GOALTERTABLE [dbo].[career] WITHCHECKADDCONSTRAINT [FK_career_emp] FOREIGNKEY([idEmp])REFERENCES [dbo].[employee]([id])ONUPDATECASCADEONDELETESETNULLGOALTERTABLE [dbo].[career] CHECKCONSTRAINT [FK_career_emp]GOALTERTABLE [dbo].[depart] WITHCHECKADDCONSTRAINT [FK_depart_division] FOREIGNKEY([idDiv])REFERENCES [dbo].[division]([id])ONUPDATECASCADEONDELETESETNULLGOALTERTABLE [dbo].[depart] CHECKCONSTRAINT [FK_depart_division]GOALTERTABLE [dbo].[depart] WITHCHECKADDCONSTRAINT [FK_depart_employee] FOREIGNKEY([idBoss])REFERENCES [dbo].[employee]([id])GOALTERTABLE [dbo].[depart] CHECKCONSTRAINT [FK_depart_employee]GOALTERTABLE [dbo].[employee] WITHCHECKADDCONSTRAINT [FK_employee_dep] FOREIGNKEY([idDep])REFERENCES [dbo].[depart]([id])ONUPDATECASCADEONDELETESETNULLGOALTERTABLE [dbo].[employee] CHECKCONSTRAINT [FK_employee_dep]GOALTERTABLE [dbo].[employee] WITHCHECKADDCONSTRAINT [FK_employee_pos] FOREIGNKEY([idPos])REFERENCES [dbo].[pos]([id])ONUPDATECASCADEONDELETESETNULLGOALTERTABLE [dbo].[employee] CHECKCONSTRAINT [FK_employee_pos]GOALTERTABLE [dbo].[promo] WITHCHECKADDCONSTRAINT [FK_promo_emp] FOREIGNKEY([idEmp])REFERENCES [dbo].[employee]([id])ONUPDATECASCADEONDELETECASCADEGOALTERTABLE [dbo].[promo] CHECKCONSTRAINT [FK_promo_emp]GOALTERTABLE [dbo].[sick] WITHCHECKADDCONSTRAINT [FK_sick_emp] FOREIGNKEY([idEmp])REFERENCES [dbo].[employee]([id])ONUPDATECASCADEONDELETECASCADEGOALTERTABLE [dbo].[sick] CHECKCONSTRAINT [FK_sick_emp]GOALTERTABLE [dbo].[users] WITHCHECKADDCONSTRAINT [FK_users_emp] FOREIGNKEY([idEmp])REFERENCES [dbo].[employee]([id])ONUPDATECASCADEONDELETESETNULLGOALTERTABLE [dbo].[users] CHECKCONSTRAINT [FK_users_emp]GOALTERTABLE [dbo].[vacation] WITHCHECKADDCONSTRAINT [FK_vacation_emp] FOREIGNKEY([idEmp])REFERENCES [dbo].[employee]([id])ONUPDATECASCADEONDELETECASCADEGOALTERTABLE [dbo].[vacation] CHECKCONSTRAINT [FK_vacation_emp]GOUSE [master]GOALTERDATABASE [staffDB] SETREAD_WRITEGOПРИЛОЖЕНИЕ БКод классов сущностейusingSystem;using System.Collections.Generic;using System.Configuration;using System.Data;using System.Linq;using System.Threading.Tasks;using System.Windows;using System.Windows.Controls;//-------------------------namespace StuffRec{ using System; using System.Collections.Generic; public partial class career { public long id { get; set; } public Nullable
1. Кадровый учет: зачем нужен, что надо знать и уметь. URL: https://ubpo.ru/press/publications/chto_takoe_kadrovyy_uchet/
2. Стружкин, Н. П. Базы данных: проектирование : учебник для вузов / Н. П. Стружкин, В. В. Годин. — Москва : Издательство Юрайт, 2023. — 477 с. — (Высшее образование). — ISBN 978-5-534-00229-4. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/511019
3. Диаграмма сущность-связь. URL: http://dit.isuct.ru/IVT/BOOKS/DBMS/DBMS14/ch_2_2.html
4. Различные архитектурные решения, используемые при реализации многопользовательских СУБД. Краткий обзор СУБД. URL: https://intuit.ru/studies/courses/508/364/lecture/8643?page=2
5. Microsoft® SQL Server® Express с пакетом обновления 3 (SP3). URL: https://www.microsoft.com/ru-ru/download/details.aspx?id=50003
6. SQL Server Management Studio (SSMS). URL: https://learn.microsoft.com/ru-ru/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16
7. Что такое Visual Studio? URL: https://learn.microsoft.com/ru-ru/visualstudio/get-started/visual-studio-ide?view=vs-2022
8. Что такое C#: плюсы и минусы язык. URL: https://gb.ru/blog/chto-takoe-c/
9. Документация по C#. URL: https://learn.microsoft.com/ru-ru/dotnet/csharp
10. TIOBE Index for December 2023. URL: https://www.tiobe.com/tiobe-index/
11. Создание пользовательского интерфейса с помощью конструктора XAML. URL: https://learn.microsoft.com/ru-ru/visualstudio/xaml-tools/creating-a-ui-by-using-xaml-designer-in-visual-studio?view=vs-2022
12. Entity Framework 6. URL: https://learn.microsoft.com/ru-ru/ef/ef6/
13. Руководство. Начало работы с Entity Framework 6. URL: https://learn.microsoft.com/ru-ru/aspnet/mvc/overview/getting-started/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application
14. Диаграмма вариантов использования (Use Case Diagram) [Электронный ресурс]. URL: https://itonboard.ru/analysis/629-diagramma_variantov_ispolzovanija_use_case_diagram/?ysclid=lotc0d1yu880694691
15. ORM. Ключи и ссылки. https://neerc.ifmo.ru/wiki/index.php?title=ORM._%D0%9A%D0%BB%D1%8E%D1%87%D0%B8_%D0%B8_%D1%81%D1%81%D1%8B%D0%BB%D0%BA%D0%B8
16. ORM. URL: https://simpleone.ru/glossary/orm/#
17. Диаграммы классов UML. Логическое моделирование. URL: https://www.informicus.ru/mps03.html
18. Создание запросов LINQ на языке C#. URL: https://learn.microsoft.com/ru-ru/dotnet/csharp/linq/write-linq-queries