This commit is contained in:
Clover 2024-11-14 10:53:42 +03:00
parent 2465b092a5
commit c00f9dea73
48 changed files with 913 additions and 819 deletions

Binary file not shown.

Binary file not shown.

View File

@ -1,77 +1,73 @@
{
"Version": 1,
"WorkspaceRootPath": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\",
"WorkspaceRootPath": "C:\\Users\\prdb\\source\\repos\\presence\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\ui\\groupconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\groupconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\ui\\userconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\userconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\ui\\presenceconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\presenceconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\ui\\mainmenu.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\mainmenu.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\sqlpresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlpresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\domain\\usecase\\usecasegeneratepresence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\domain\\usecase\\usecasegeneratepresence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\usecasegeneratepresence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\ui\\presenceconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\presenceconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\ui\\mainmenu.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\mainmenu.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\sqlpresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlpresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\grouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\grouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\ui\\groupconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\groupconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\ui\\userconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\userconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\groupattendancestatistics.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\groupattendancestatistics.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\remotedata\\remotedatabase\\dao\\groupattendancestatistics.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
@ -82,155 +78,149 @@
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 6,
"SelectedChildIndex": 4,
"Children": [
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "SQLUserRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"ViewState": "AgIAABQAAAAAAAAAAAAQwB4AAAAWAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-08T16:30:40.576Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 11,
"Title": "GroupRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
"ViewState": "AgIAABgAAAAAAAAAAAAswCYAAAArAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:36:53.934Z"
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "SQLPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"ViewState": "AgIAAMAAAAAAAAAAAAAkwNkAAAAJAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:20:34.221Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
"Title": "UseCaseGeneratePresence.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"ViewState": "AgIAAJkAAAAAAAAAAAAmwGAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:17.722Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 10,
"Title": "GroupUseCase.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\GroupUseCase.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\GroupUseCase.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\GroupUseCase.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\GroupUseCase.cs",
"ViewState": "AgIAADcAAAAAAAAAAAAcwEQAAAAMAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:19.858Z",
"EditorCaption": ""
"$type": "Bookmark",
"Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
},
{
"$type": "Document",
"DocumentIndex": 6,
"Title": "MainMenu.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\MainMenu.cs",
"RelativeDocumentMoniker": "Demo\\UI\\MainMenu.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\MainMenu.cs",
"RelativeToolTip": "Demo\\UI\\MainMenu.cs",
"ViewState": "AgIAALoAAAAAAAAAAAAowIcAAAAsAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:28:06.522Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "GroupConsole.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\GroupConsole.cs",
"RelativeDocumentMoniker": "Demo\\UI\\GroupConsole.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\GroupConsole.cs",
"RelativeToolTip": "Demo\\UI\\GroupConsole.cs",
"ViewState": "AgIAABoAAAAAAAAAAAAwwA8AAAAUAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:00.621Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 12,
"Title": "IPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IPresenceRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IPresenceRepository.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IPresenceRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IPresenceRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAABLAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:37:55.294Z"
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "SQLGroupRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"ViewState": "AgIAAAoAAAAAAAAAAAD4v2YAAAAAAAAAAAAAAA==",
"ViewState": "AgIAAGUAAAAAAAAAAAAowDoAAAAuAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:04.731Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 13,
"Title": "IGroupRepository.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IGroupRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IGroupRepository.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IGroupRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IGroupRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAqwA4AAAArAAAAAAAAAA==",
"DocumentIndex": 3,
"Title": "SQLPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"ViewState": "AgIAAKMAAAAAAAAAAAAjwOIAAAAdAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:31:22.936Z"
"WhenOpened": "2024-11-06T09:20:34.221Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"DocumentIndex": 1,
"Title": "PresenceConsole.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\PresenceConsole.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\PresenceConsole.cs",
"RelativeDocumentMoniker": "Demo\\UI\\PresenceConsole.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\PresenceConsole.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\PresenceConsole.cs",
"RelativeToolTip": "Demo\\UI\\PresenceConsole.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"ViewState": "AgIAAAkAAAAAAAAAAAAqwBYAAAA4AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:28:07.091Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
"DocumentIndex": 0,
"Title": "UseCaseGeneratePresence.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"ViewState": "AgIAAA4AAAAAAAAAAAAgwC8AAAA/AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:17.722Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "SQLUserRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"ViewState": "AgIAABgAAAAAAAAAAAAowDMAAAAVAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-08T16:30:40.576Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"Title": "GroupUseCase.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\GroupUseCase.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\GroupUseCase.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\GroupUseCase.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\GroupUseCase.cs",
"ViewState": "AgIAAA4AAAAAAAAAAAAuwCAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:19.858Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "MainMenu.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\MainMenu.cs",
"RelativeDocumentMoniker": "Demo\\UI\\MainMenu.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\MainMenu.cs",
"RelativeToolTip": "Demo\\UI\\MainMenu.cs",
"ViewState": "AgIAAPsAAAAAAAAAAAAwwBgBAABCAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:28:06.522Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "IGroupRepository.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IGroupRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IGroupRepository.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IGroupRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IGroupRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAqwA4AAAAdAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:31:22.936Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "GroupConsole.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\GroupConsole.cs",
"RelativeDocumentMoniker": "Demo\\UI\\GroupConsole.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\GroupConsole.cs",
"RelativeToolTip": "Demo\\UI\\GroupConsole.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAqwBEAAAA0AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:00.621Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
"Title": "IPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IPresenceRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IPresenceRepository.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IPresenceRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IPresenceRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAA8AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:37:55.294Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 11,
"Title": "IUserRepository.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IUserRepository.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IUserRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IUserRepository.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IUserRepository.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IUserRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IUserRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAqwAYAAAAVAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
@ -239,47 +229,50 @@
},
{
"$type": "Document",
"DocumentIndex": 14,
"DocumentIndex": 13,
"Title": "Group.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAAAWAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:55.85Z"
},
{
"$type": "Document",
"DocumentIndex": 16,
"Title": "GroupAttendanceStatistics.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:53.73Z"
"WhenOpened": "2024-11-06T09:29:55.85Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 15,
"Title": "User.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"Title": "GroupAttendanceStatistics.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:49.93Z"
"WhenOpened": "2024-11-06T09:29:53.73Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"DocumentIndex": 14,
"Title": "User.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:49.93Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 12,
"Title": "UserUseCase.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\UserUseCase.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\UserUseCase.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\UserUseCase.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\UserUseCase.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\UserUseCase.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\UserUseCase.cs",
"ViewState": "AgIAAGAAAAAAAAAAAAApwGwAAAAZAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
@ -288,23 +281,24 @@
},
{
"$type": "Document",
"DocumentIndex": 17,
"DocumentIndex": 16,
"Title": "Presence.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:52.203Z"
"WhenOpened": "2024-11-06T09:29:52.203Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"DocumentIndex": 10,
"Title": "UserConsole.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\UserConsole.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\UserConsole.cs",
"RelativeDocumentMoniker": "Demo\\UI\\UserConsole.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\UserConsole.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\UserConsole.cs",
"RelativeToolTip": "Demo\\UI\\UserConsole.cs",
"ViewState": "AgIAADQAAAAAAAAAAAAgwDcAAAA8AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",

View File

@ -1,77 +1,73 @@
{
"Version": 1,
"WorkspaceRootPath": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\",
"WorkspaceRootPath": "C:\\Users\\prdb\\source\\repos\\presence\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\ui\\groupconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\groupconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\ui\\userconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\userconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\ui\\presenceconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\presenceconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\ui\\mainmenu.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\mainmenu.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\sqlpresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlpresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\domain\\usecase\\usecasegeneratepresence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\domain\\usecase\\usecasegeneratepresence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\usecasegeneratepresence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\ui\\presenceconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\presenceconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\ui\\mainmenu.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\mainmenu.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\sqlpresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlpresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\grouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\grouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\ui\\groupconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\groupconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\ui\\userconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\ui\\userconsole.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\groupattendancestatistics.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\groupattendancestatistics.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\remotedata\\remotedatabase\\dao\\groupattendancestatistics.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\sokol\\onedrive\\desktop\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\prdb\\source\\repos\\presence\\demo\\data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
@ -82,155 +78,149 @@
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 6,
"SelectedChildIndex": 4,
"Children": [
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "SQLUserRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"ViewState": "AgIAABQAAAAAAAAAAAAQwB4AAAAWAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-08T16:30:40.576Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 11,
"Title": "GroupRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
"ViewState": "AgIAABgAAAAAAAAAAAAswCYAAAArAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:36:53.934Z"
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "SQLPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"ViewState": "AgIAAMAAAAAAAAAAAAAkwNkAAAAJAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:20:34.221Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
"Title": "UseCaseGeneratePresence.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"ViewState": "AgIAAJkAAAAAAAAAAAAmwGAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:17.722Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 10,
"Title": "GroupUseCase.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\GroupUseCase.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\GroupUseCase.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\GroupUseCase.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\GroupUseCase.cs",
"ViewState": "AgIAADcAAAAAAAAAAAAcwEQAAAAMAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:19.858Z",
"EditorCaption": ""
"$type": "Bookmark",
"Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
},
{
"$type": "Document",
"DocumentIndex": 6,
"Title": "MainMenu.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\MainMenu.cs",
"RelativeDocumentMoniker": "Demo\\UI\\MainMenu.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\MainMenu.cs",
"RelativeToolTip": "Demo\\UI\\MainMenu.cs",
"ViewState": "AgIAALoAAAAAAAAAAAAowIcAAAAsAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:28:06.522Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "GroupConsole.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\GroupConsole.cs",
"RelativeDocumentMoniker": "Demo\\UI\\GroupConsole.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\GroupConsole.cs",
"RelativeToolTip": "Demo\\UI\\GroupConsole.cs",
"ViewState": "AgIAABoAAAAAAAAAAAAwwA8AAAAUAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:00.621Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 12,
"Title": "IPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IPresenceRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IPresenceRepository.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IPresenceRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IPresenceRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAABLAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:37:55.294Z"
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "SQLGroupRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
"ViewState": "AgIAAAoAAAAAAAAAAAD4v2YAAAAAAAAAAAAAAA==",
"ViewState": "AgIAAGUAAAAAAAAAAAAowDoAAAAuAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:04.731Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 13,
"Title": "IGroupRepository.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IGroupRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IGroupRepository.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IGroupRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IGroupRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAqwA4AAAArAAAAAAAAAA==",
"DocumentIndex": 3,
"Title": "SQLPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLPresenceRepository.cs",
"ViewState": "AgIAAKMAAAAAAAAAAAAjwOIAAAAdAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:31:22.936Z"
"WhenOpened": "2024-11-06T09:20:34.221Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"DocumentIndex": 1,
"Title": "PresenceConsole.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\PresenceConsole.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\PresenceConsole.cs",
"RelativeDocumentMoniker": "Demo\\UI\\PresenceConsole.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\PresenceConsole.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\PresenceConsole.cs",
"RelativeToolTip": "Demo\\UI\\PresenceConsole.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"ViewState": "AgIAAAkAAAAAAAAAAAAqwBYAAAA4AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:28:07.091Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
"DocumentIndex": 0,
"Title": "UseCaseGeneratePresence.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
"ViewState": "AgIAAA4AAAAAAAAAAAAgwC8AAAA/AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:17.722Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "SQLUserRepositoryImpl.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
"ViewState": "AgIAABgAAAAAAAAAAAAowDMAAAAVAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-08T16:30:40.576Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"Title": "GroupUseCase.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\GroupUseCase.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\GroupUseCase.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\GroupUseCase.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\GroupUseCase.cs",
"ViewState": "AgIAAA4AAAAAAAAAAAAuwCAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:30:19.858Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "MainMenu.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\MainMenu.cs",
"RelativeDocumentMoniker": "Demo\\UI\\MainMenu.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\MainMenu.cs",
"RelativeToolTip": "Demo\\UI\\MainMenu.cs",
"ViewState": "AgIAAPsAAAAAAAAAAAAwwBgBAABCAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:28:06.522Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "IGroupRepository.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IGroupRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IGroupRepository.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IGroupRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IGroupRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAqwA4AAAAdAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:31:22.936Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "GroupConsole.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\GroupConsole.cs",
"RelativeDocumentMoniker": "Demo\\UI\\GroupConsole.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\GroupConsole.cs",
"RelativeToolTip": "Demo\\UI\\GroupConsole.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAqwBEAAAA0AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:00.621Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
"Title": "IPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IPresenceRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IPresenceRepository.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IPresenceRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IPresenceRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAA8AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:37:55.294Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 11,
"Title": "IUserRepository.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IUserRepository.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IUserRepository.cs",
"RelativeDocumentMoniker": "Demo\\Data\\Repository\\IUserRepository.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\Repository\\IUserRepository.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\Repository\\IUserRepository.cs",
"RelativeToolTip": "Demo\\Data\\Repository\\IUserRepository.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAqwAYAAAAVAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
@ -239,47 +229,50 @@
},
{
"$type": "Document",
"DocumentIndex": 14,
"DocumentIndex": 13,
"Title": "Group.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAAAWAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:55.85Z"
},
{
"$type": "Document",
"DocumentIndex": 16,
"Title": "GroupAttendanceStatistics.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:53.73Z"
"WhenOpened": "2024-11-06T09:29:55.85Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 15,
"Title": "User.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"Title": "GroupAttendanceStatistics.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\GroupAttendanceStatistics.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:49.93Z"
"WhenOpened": "2024-11-06T09:29:53.73Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"DocumentIndex": 14,
"Title": "User.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:49.93Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 12,
"Title": "UserUseCase.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\UserUseCase.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\UserUseCase.cs",
"RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\UserUseCase.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Domain\\UseCase\\UserUseCase.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Domain\\UseCase\\UserUseCase.cs",
"RelativeToolTip": "Demo\\Domain\\UseCase\\UserUseCase.cs",
"ViewState": "AgIAAGAAAAAAAAAAAAApwGwAAAAZAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
@ -288,23 +281,24 @@
},
{
"$type": "Document",
"DocumentIndex": 17,
"DocumentIndex": 16,
"Title": "Presence.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-11-06T09:29:52.203Z"
"WhenOpened": "2024-11-06T09:29:52.203Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"DocumentIndex": 10,
"Title": "UserConsole.cs",
"DocumentMoniker": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\UserConsole.cs",
"DocumentMoniker": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\UserConsole.cs",
"RelativeDocumentMoniker": "Demo\\UI\\UserConsole.cs",
"ToolTip": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\UI\\UserConsole.cs",
"ToolTip": "C:\\Users\\prdb\\source\\repos\\presence\\Demo\\UI\\UserConsole.cs",
"RelativeToolTip": "Demo\\UI\\UserConsole.cs",
"ViewState": "AgIAADQAAAAAAAAAAAAgwDcAAAA8AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",

BIN
.vs/presence/v17/.wsuo Normal file

Binary file not shown.

View File

@ -0,0 +1,23 @@
{
"Version": 1,
"WorkspaceRootPath": "C:\\Users\\prdb\\source\\repos\\presence\\",
"Documents": [],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 191,
"SelectedChildIndex": -1,
"Children": [
{
"$type": "Bookmark",
"Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
}
]
}
]
}
]
}

View File

@ -1,60 +0,0 @@
using Demo.Data.Exceptions;
using Demo.Data.LocalData;
using Demo.Data.RemoteData.RemoteDataBase.DAO;
using Demo.Data.Repository;
using Demo.domain.Models;
using System.Collections.Generic;
using System.Linq;
public class GroupRepositoryImpl
{
private List<GroupLocalEntity> _groups = LocalStaticData.groups;
public GroupLocalEntity? GetGroupById(int groupId)
{
foreach (var group in _groups)
{
if (group.Id == groupId)
{
return group;
}
}
return null;
}
// Метод для получения всех групп
public List<GroupLocalEntity> GetAllGroups() => _groups;
// Метод для добавления новой группы
public void AddGroup(GroupLocalEntity group)
{
group.Id = _groups.Any() ? _groups.Max(g => g.Id) + 1 : 1;
_groups.Add(group);
}
// Метод для обновления существующей группы
public void UpdateGroupById(int groupId, GroupLocalEntity updatedGroup)
{
var existingGroup = GetGroupById(groupId);
if (existingGroup == null) throw new GroupNotFoundException(groupId);
}
public void RemoveGroupById(int groupId)
{
var existingGroup = GetGroupById(groupId);
if (existingGroup == null) throw new GroupNotFoundException(groupId);
if (_groups.Contains(existingGroup))
{
_groups.Remove(existingGroup);
}
}
public bool AddGroup(string Name)
{
throw new NotImplementedException();
}
}

View File

@ -1,53 +0,0 @@
using Demo.Data.LocalData;
using Demo.Data.RemoteData.RemoteDataBase;
using Demo.Data.RemoteData.RemoteDataBase.DAO;
using Demo.domain.Models;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Demo.Data.Repository
{
public class PresenceRepositoryImpl
{
private List<PresenceLocalEntity> _presences;
public PresenceRepositoryImpl()
{
_presences = new List<PresenceLocalEntity>(); // Ваши реальные данные
}
public void SavePresence(List<PresenceLocalEntity> presences)
{
foreach (var presence in presences)
{
var existingPresence = _presences.FirstOrDefault(p =>
p.Date == presence.Date &&
p.UserId == presence.UserId &&
p.LessonNumber == presence.LessonNumber);
if (existingPresence == null)
{
_presences.Add(presence);
}
else
{
existingPresence.IsAttedance = presence.IsAttedance;
}
}
}
public List<PresenceLocalEntity> GetPresenceByDateAndGroup(DateTime date, int groupId)
{
return _presences.Where(p => p.Date.Date == date.Date &&
LocalStaticData.users.Any(u => u.GroupID == groupId && u.ID == p.UserId)).ToList();
}
public List<PresenceLocalEntity> GetPresenceByGroup(int groupId)
{
return _presences.Where(p => p.GroupId == groupId).ToList();
}
}
}

View File

@ -32,22 +32,33 @@ namespace Demo.Data.Repository
// Метод для получения группы по ID
public GroupDao GetGroupById(int groupId)
{
var groupDao = _remoteDatabaseContext.Groups
.Include(g => g.Users)
.FirstOrDefault(g => g.Id == groupId);
if (groupDao == null) return null;
return new GroupDao
if (_remoteDatabaseContext.Groups.Select(g=>g.Id).Contains(groupId))
{
Id = groupDao.Id,
Name = groupDao.Name,
Users = groupDao.Users.Select(u => new UserDao
var groupDao = _remoteDatabaseContext.Groups
.Include(g => g.Users)
.FirstOrDefault(g => g.Id == groupId);
if (groupDao == null) return null;
return new GroupDao
{
UserId = u.UserId,
FIO = u.FIO,
GroupId = u.GroupId
}).ToList()
};
Id = groupDao.Id,
Name = groupDao.Name,
Users = groupDao.Users.Select(u => new UserDao
{
UserId = u.UserId,
FIO = u.FIO,
GroupId = u.GroupId
}).ToList()
};
}
else
{
return new GroupDao
{
Id=-1,
Name="Группы не существует"
};
}
}
// Метод для получения всех групп

View File

@ -118,103 +118,113 @@ namespace Demo.Data.Repository
public GroupAttendanceStatistics GetGeneralPresenceForGroup(int groupId)
{
var presences = _remoteDatabaseContext.PresenceDaos.Where(p => p.GroupId == groupId).OrderBy(p => p.LessonNumber).ToList();
var dates = _remoteDatabaseContext.PresenceDaos;
var distDates = dates.Select(p => p.Date).Distinct().ToList();
int lesId = 0;
int lesNum = 1;
double att = 0;
int days = -1;
int countAllLes = 0;
DateOnly date = DateOnly.MinValue;
List<int> usersId = new List<int>();
foreach (var presence in presences)
if (presences.Count != 0)
{
if (!usersId.Contains(presence.UserId))
{
usersId.Add(presence.UserId);
}
if (presence.Date != date)
{
date = presence.Date;
lesId++;
lesNum = presence.LessonNumber;
days++;
}
if (presence.LessonNumber != lesNum && date == presence.Date)
{
lesNum = presence.LessonNumber;
countAllLes++;
lesId++;
}
var dates = _remoteDatabaseContext.PresenceDaos;
var distDates = dates.Select(p => p.Date).Distinct().ToList();
int lesId = 0;
int lesNum = 1;
double att = 0;
int days = -1;
int countAllLes = 0;
DateOnly date = DateOnly.MinValue;
List<int> usersId = new List<int>();
if (presence.IsAttedance)
foreach (var presence in presences)
{
att++;
}
}
List<UserAttendance> a = new List<UserAttendance>();
List<int> ids = new List<int>();
double ok = 0;
double skip = 0;
int userId = 0;
foreach (var user in usersId)
{
var users = _remoteDatabaseContext.PresenceDaos.Where(p => p.UserId == user);
foreach (var usera in users)
{
userId = usera.UserId;
if (!ids.Contains(usera.UserId))
if (!usersId.Contains(presence.UserId))
{
usersId.Add(presence.UserId);
}
if (presence.Date != date)
{
date = presence.Date;
lesId++;
lesNum = presence.LessonNumber;
days++;
}
if (presence.LessonNumber != lesNum && date == presence.Date)
{
lesNum = presence.LessonNumber;
countAllLes++;
lesId++;
}
if (presence.IsAttedance)
{
att++;
}
}
List<UserAttendance> a = new List<UserAttendance>();
List<int> ids = new List<int>();
double ok = 0;
double skip = 0;
int userId = 0;
foreach (var user in usersId)
{
var users = _remoteDatabaseContext.PresenceDaos.Where(p => p.UserId == user);
foreach (var usera in users)
{
skip = 0;
ok = 0;
ids.Add(userId);
a.Add(new UserAttendance { UserId = userId, Attended = ok, Missed = skip });
userId = usera.UserId;
if (usera.IsAttedance)
if (!ids.Contains(usera.UserId))
{
a.First(a => a.UserId == usera.UserId).Attended = ok += 1;
skip = 0;
ok = 0;
ids.Add(userId);
a.Add(new UserAttendance { UserId = userId, Attended = ok, Missed = skip });
userId = usera.UserId;
if (usera.IsAttedance)
{
a.First(a => a.UserId == usera.UserId).Attended = ok += 1;
}
else
{
a.First(a => a.UserId == usera.UserId).Missed = skip += 1;
}
}
else
{
a.First(a => a.UserId == usera.UserId).Missed = skip += 1;
}
}
else
{
if (usera.IsAttedance)
{
a.First(a => a.UserId == usera.UserId).Attended = ok += 1;
}
else
{
a.First(a => a.UserId == usera.UserId).Missed = skip += 1;
if (usera.IsAttedance)
{
a.First(a => a.UserId == usera.UserId).Attended = ok += 1;
}
else
{
a.First(a => a.UserId == usera.UserId).Missed = skip += 1;
}
}
}
}
}
var statistics = new GroupAttendanceStatistics
{
UserCount = usersId.Count,
TotalLessons = lesId,
AttendancePercentage = att / usersId.Count / lesNum / distDates.Count() * 100
};
foreach (var user in a)
{
statistics.UserAttendanceDetails.Add(new UserAttendance
var statistics = new GroupAttendanceStatistics
{
UserId = user.UserId,
Attended = user.Attended,
Missed = user.Missed,
AttendanceRate = user.Attended / (user.Missed + user.Attended) * 100
});
}
UserCount = usersId.Count,
TotalLessons = (int)(a[0].Attended + a[0].Missed),
AttendancePercentage = Math.Round(att / usersId.Count / lesNum / distDates.Count() * 100, 2)
};
return statistics;
foreach (var user in a)
{
statistics.UserAttendanceDetails.Add(new UserAttendance
{
UserId = user.UserId,
Attended = user.Attended,
Missed = user.Missed,
AttendanceRate = Math.Round(user.Attended / (user.Missed + user.Attended) * 100, 2)
});
}
return statistics;
}
var statistic = new GroupAttendanceStatistics
{
UserCount = 0,
TotalLessons = 0,
AttendancePercentage = 0
};
return statistic;
}
}
}

View File

@ -1,37 +0,0 @@
using Demo.Data.Exceptions;
using Demo.Data.LocalData;
using Demo.Data.RemoteData.RemoteDataBase.DAO;
using Demo.domain.Models;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Demo.Data.Repository
{
public class UserRepositoryImpl
{
private List<UserLocalEnity> _users;
public UserRepositoryImpl()
{
_users = LocalStaticData.users;
}
public IEnumerable<UserLocalEnity> GetAllUsers => _users;
public bool RemoveUserById(int userId)
{
var user = _users.FirstOrDefault(u => u.ID == userId);
if (user == null) throw new UserNotFoundException(userId);
_users.Remove(user);
return true;
}
public UserDao? UpdateUser(UserDao user)
{
throw new NotImplementedException();
}
}
}

View File

@ -39,7 +39,8 @@ namespace Demo.Domain.UseCase
if (existingGroup == null)
{
throw new ArgumentException("Группа не найдена.");
Console.WriteLine("Группа не найдена.");
return null;
}
return existingGroup;
@ -57,7 +58,6 @@ namespace Demo.Domain.UseCase
public string FindGroupById(int IdGroup)
{
string groups = _SQLGroupRepositoryImpl.GetGroupById(IdGroup).Name;
return groups;
}
@ -76,13 +76,17 @@ namespace Demo.Domain.UseCase
// Метод для изменения названия группы
public void UpdateGroup(int groupId, string newGroupName)
public bool UpdateGroup(int groupId, string newGroupName)
{
ValidateGroupName(newGroupName);
var existingGroup = ValidateGroupExistence(groupId);
existingGroup.Name = newGroupName;
_SQLGroupRepositoryImpl.UpdateGroupById(groupId,existingGroup);
if (existingGroup != null)
{
existingGroup.Name = newGroupName;
_SQLGroupRepositoryImpl.UpdateGroupById(groupId, existingGroup);
return true;
}
return false;
}
}
}

View File

@ -115,29 +115,37 @@ namespace Demo.Domain.UseCase
return _presenceRepository.GetPresenceByDateAndGroup(date, groupId);
}
public void GeneratePresenceDaily(int firstLesson, int lastLesson, int groupId)
public bool GeneratePresenceDaily(int firstLesson, int lastLesson, int groupId)
{
var users = _userRepository.GetAllUsers().Where(u => u.GroupId == groupId).ToList();
// Находим последнюю дату посещаемости для данной группы
DateOnly startDate = _presenceRepository.GetLastDateByGroupId(groupId)?.AddDays(1)
?? DateOnly.FromDateTime(DateTime.Today);
List<PresenceDao> presences = new List<PresenceDao>();
for (int lessonNumber = firstLesson; lessonNumber <= lastLesson; lessonNumber++)
if (users.Count!=0)
{
foreach (var user in users)
// Находим последнюю дату посещаемости для данной группы
DateOnly startDate = _presenceRepository.GetLastDateByGroupId(groupId)?.AddDays(1)
?? DateOnly.FromDateTime(DateTime.Today);
List<PresenceDao> presences = new List<PresenceDao>();
for (int lessonNumber = firstLesson; lessonNumber <= lastLesson; lessonNumber++)
{
var presence = new PresenceDao
foreach (var user in users)
{
UserId = user.UserId,
GroupId = user.GroupId,
Date = startDate,
LessonNumber = lessonNumber,
IsAttedance = true
};
_presenceRepository.SavePresence(new List<PresenceDao> { presence });
var presence = new PresenceDao
{
UserId = user.UserId,
GroupId = user.GroupId,
Date = startDate,
LessonNumber = lessonNumber,
IsAttedance = true
};
_presenceRepository.SavePresence(new List<PresenceDao> { presence });
}
}
return true;
}
else
{
Console.WriteLine("Группы с таким ID не существует");
return false;
}
}
@ -146,10 +154,18 @@ namespace Demo.Domain.UseCase
public void GenerateWeeklyPresence(int firstLesson, int lastLesson, int groupId, DateTime startTime)
{
for (int i = 0; i < 7; i++)
var users = _userRepository.GetAllUsers().Where(u => u.GroupId == groupId).ToList();
if (users.Count != 0)
{
DateTime currentTime = startTime.AddDays(i);
GeneratePresenceDaily(firstLesson, lastLesson, groupId);
for (int i = 0; i < 7; i++)
{
DateTime currentTime = startTime.AddDays(i);
GeneratePresenceDaily(firstLesson, lastLesson, groupId);
}
}
else
{
Console.WriteLine("Группы с таким ID не существует");
}
}

View File

@ -0,0 +1 @@
,prdb,prdb,14.11.2024 10:51,;

Binary file not shown.

Binary file not shown.

View File

@ -16,7 +16,10 @@ namespace Demo.UI
public void FindGroupById(int IdGroup)
{
var groups = _groupUseCase.FindGroupById(IdGroup);
Console.WriteLine(groups);
if (groups != null)
{
Console.WriteLine(groups);
}
}
// Метод для отображения всех групп
@ -51,8 +54,10 @@ namespace Demo.UI
// Метод для обновления названия группы
public void UpdateGroupName(int groupId, string newGroupName)
{
_groupUseCase.UpdateGroup(groupId, newGroupName);
Console.WriteLine($"\nНазвание группы с ID {groupId} изменено на {newGroupName}.\n");
if (_groupUseCase.UpdateGroup(groupId, newGroupName))
{
Console.WriteLine($"\nНазвание группы с ID {groupId} изменено на {newGroupName}.\n");
}
}
}
}

View File

@ -24,6 +24,7 @@ namespace Demo.UI
{
Console.WriteLine("\n=-= Главное меню =-=\n");
// Меню команд
Console.WriteLine("=-= Команды с Пользователями =-=");
Console.WriteLine("1. Вывести всех пользователей");
Console.WriteLine("2. Удалить пользователя по id");
@ -37,6 +38,7 @@ namespace Demo.UI
Console.WriteLine("7. Изменить название группы");
Console.WriteLine("8. Поиск группы по ID");
Console.WriteLine();
Console.WriteLine("=-= Команды Presence =-=");
Console.WriteLine("9. Сгенерировать посещаемость на день");
Console.WriteLine("10. Сгенерировать посещаемость на неделю");
@ -44,7 +46,7 @@ namespace Demo.UI
Console.WriteLine("12. Отметить пользователя как отсутствующего");
Console.WriteLine("13. Вывести всю посещаемость группы");
Console.WriteLine("14. Вывести общую информацию об посещаемости по группе");
Console.WriteLine("15. Вывести отчётв Excel");
Console.WriteLine("15. Вывести отчёт в Excel");
Console.WriteLine();
Console.WriteLine("0. Выход");
@ -55,66 +57,56 @@ namespace Demo.UI
switch (comand)
{
case "1":
// Отображение всех пользователей
_userConsoleUI.DisplayAllUsers();
break;
case "2":
// Удаление пользователя по ID
Console.Write("Введите ID пользователя для удаления: ");
string inputId = Console.ReadLine();
if (int.TryParse(inputId, out int userId))
if (int.TryParse(Console.ReadLine(), out int userId))
{
_userConsoleUI.RemoveUserById(userId);
}
else
{
Console.WriteLine("Неверный формат ID");
Console.WriteLine("Неверный формат ID. Введите целое число.");
}
break;
case "3":
// Обновление пользователя по ID
Console.Write("Введите ID пользователя для обновления: ");
string updateIdInput = Console.ReadLine();
if (int.TryParse(updateIdInput, out int updateUserId))
if (int.TryParse(Console.ReadLine(), out int updateUserId))
{
_userConsoleUI.UpdateUserById(updateUserId);
}
else
{
Console.WriteLine("Неверный формат ID");
Console.WriteLine("Неверный формат ID. Введите целое число.");
}
break;
case "4":
// Поиск пользователя по ID
Console.Write("Введите ID пользователя для поиска: ");
string findIdInput = Console.ReadLine();
if (int.TryParse(findIdInput, out int findUserId))
if (int.TryParse(Console.ReadLine(), out int findUserId))
{
_userConsoleUI.FindUserById(findUserId);
}
else
{
Console.WriteLine("Неверный формат ID");
Console.WriteLine("Неверный формат ID. Введите целое число.");
}
break;
case "5":
// Отображение всех групп
_groupConsoleUI.DisplayAllGroups();
break;
case "6":
// Добавление новой группы
Console.Write("Введите название новой группы: ");
string newGroupName = Console.ReadLine();
_groupConsoleUI.AddGroup(newGroupName);
break;
case "7":
// Изменение названия группы
Console.Write("Введите ID группы для изменения: ");
if (int.TryParse(Console.ReadLine(), out int groupId))
{
@ -124,100 +116,180 @@ namespace Demo.UI
}
else
{
Console.WriteLine("Неверный формат ID группы");
Console.WriteLine("Неверный формат ID группы. Введите целое число.");
}
break;
case "8":
// Поиск группы
Console.Write("Введите ID группы для поиска : ");
if (int.TryParse(Console.ReadLine(), out int IdGroup))
{
_groupConsoleUI.FindGroupById(IdGroup);
}
else
{
Console.WriteLine("Неверный формат ID группы. Введите целое число.");
}
break;
case "9":
// Генерация посещаемости на день
Console.Write("Введите номер первого занятия: ");
int firstLesson = int.Parse(Console.ReadLine());
Console.Write("Введите номер последнего занятия: ");
int lastLesson = int.Parse(Console.ReadLine());
Console.Write("Введите ID группы: ");
int groupIdForPresence = int.Parse(Console.ReadLine());
_presenceConsoleUI.GeneratePresenceForDay(DateTime.Now, groupIdForPresence, firstLesson, lastLesson);
Console.WriteLine("Посещаемость на день сгенерирована.");
if (int.TryParse(Console.ReadLine(), out int firstLesson))
{
Console.Write("Введите номер последнего занятия: ");
if (int.TryParse(Console.ReadLine(), out int lastLesson))
{
Console.Write("Введите ID группы: ");
if (int.TryParse(Console.ReadLine(), out int groupIdForPresence))
{
_presenceConsoleUI.GeneratePresenceForDay(DateTime.Now, groupIdForPresence, firstLesson, lastLesson);
}
else
{
Console.WriteLine("Неверный формат ID группы. Введите целое число.");
}
}
else
{
Console.WriteLine("Неверный формат номера занятия. Введите целое число.");
}
}
else
{
Console.WriteLine("Неверный формат номера занятия. Введите целое число.");
}
break;
case "10":
// Генерация посещаемости на неделю
Console.Write("Введите номер первого занятия: ");
int firstLessonForWeek = int.Parse(Console.ReadLine());
Console.Write("Введите номер последнего занятия: ");
int lastLessonForWeek = int.Parse(Console.ReadLine());
Console.Write("Введите ID группы: ");
int groupIdForWeekPresence = int.Parse(Console.ReadLine());
_presenceConsoleUI.GeneratePresenceForWeek(DateTime.Now, groupIdForWeekPresence, firstLessonForWeek, lastLessonForWeek);
Console.WriteLine("Посещаемость на неделю сгенерирована.");
if (int.TryParse(Console.ReadLine(), out int firstLessonForWeek))
{
Console.Write("Введите номер последнего занятия: ");
if (int.TryParse(Console.ReadLine(), out int lastLessonForWeek))
{
Console.Write("Введите ID группы: ");
if (int.TryParse(Console.ReadLine(), out int groupIdForWeekPresence))
{
_presenceConsoleUI.GeneratePresenceForWeek(DateTime.Now, groupIdForWeekPresence, firstLessonForWeek, lastLessonForWeek);
}
else
{
Console.WriteLine("Неверный формат ID группы. Введите целое число.");
}
}
else
{
Console.WriteLine("Неверный формат номера занятия. Введите целое число.");
}
}
else
{
Console.WriteLine("Неверный формат номера занятия. Введите целое число.");
}
break;
case "11":
// Отображение посещаемости
Console.Write("Введите дату (гггг-мм-дд): ");
DateTime date = DateTime.Parse(Console.ReadLine());
Console.Write("Введите ID группы: ");
int groupForPresenceView = int.Parse(Console.ReadLine());
_presenceConsoleUI.DisplayPresence(date, groupForPresenceView);
if (DateTime.TryParse(Console.ReadLine(), out DateTime date))
{
Console.Write("Введите ID группы: ");
if (int.TryParse(Console.ReadLine(), out int groupForPresenceView))
{
_presenceConsoleUI.DisplayPresence(date, groupForPresenceView);
}
else
{
Console.WriteLine("Неверный формат ID группы. Введите целое число.");
}
}
else
{
Console.WriteLine("Неверный формат даты. Введите дату в формате гггг-мм-дд.");
}
break;
case "12":
// Отметить пользователя как отсутствующего
Console.Write("Введите ID пользователя: ");
userId = int.Parse(Console.ReadLine());
Console.Write("Введите номер первого занятия: ");
int firstAbsLesson = int.Parse(Console.ReadLine());
Console.Write("Введите номер последнего занятия: ");
int lastAbsLesson = int.Parse(Console.ReadLine());
Console.Write("Введите ID группы: ");
int absGroupId = int.Parse(Console.ReadLine());
Console.Write("Введите дату (дд.мм.гггг): ");
string dateInput = Console.ReadLine();
DateTime absenceDate;
if (!DateTime.TryParseExact(dateInput, "d.M.yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out absenceDate))
if (int.TryParse(Console.ReadLine(), out userId))
{
Console.WriteLine("Ошибка: Введен некорректный формат даты. Пожалуйста, используйте формат дд.мм.гггг.");
return; // Завершает выполнение, если дата некорректна
Console.Write("Введите номер первого занятия: ");
if (int.TryParse(Console.ReadLine(), out int firstAbsLesson))
{
Console.Write("Введите номер последнего занятия: ");
if (int.TryParse(Console.ReadLine(), out int lastAbsLesson))
{
Console.Write("Введите ID группы: ");
if (int.TryParse(Console.ReadLine(), out int absGroupId))
{
Console.Write("Введите дату (дд.мм.гггг): ");
string dateInput = Console.ReadLine();
if (DateTime.TryParseExact(dateInput, "d.M.yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime absenceDate))
{
_presenceConsoleUI.MarkUserAbsent(absenceDate, absGroupId, userId, firstAbsLesson, lastAbsLesson);
}
else
{
Console.WriteLine("Неверный формат даты. Пожалуйста, используйте формат дд.мм.гггг.");
}
}
else
{
Console.WriteLine("Неверный формат ID группы. Введите целое число.");
}
}
else
{
Console.WriteLine("Неверный формат номера последнего занятия. Введите целое число.");
}
}
else
{
Console.WriteLine("Неверный формат номера первого занятия. Введите целое число.");
}
}
else
{
Console.WriteLine("Неверный формат ID пользователя. Введите целое число.");
}
_presenceConsoleUI.MarkUserAbsent(absenceDate, absGroupId, userId, firstAbsLesson, lastAbsLesson);
break;
case "13":
Console.Write("Введите ID группы: ");
int groupIdForAllPresence = int.Parse(Console.ReadLine());
_presenceConsoleUI.DisplayAllPresenceByGroup(groupIdForAllPresence);
if (int.TryParse(Console.ReadLine(), out int groupIdForAllPresence))
{
_presenceConsoleUI.DisplayAllPresenceByGroup(groupIdForAllPresence);
}
else
{
Console.WriteLine("Неверный формат ID группы. Введите целое число.");
}
break;
case "14":
Console.Write("Введите ID группы: ");
int searchGroupId= int.Parse(Console.ReadLine());
_presenceConsoleUI.DisplayGeneralPresence(searchGroupId);
if (int.TryParse(Console.ReadLine(), out int groupIdForGeneralPresence))
{
_presenceConsoleUI.DisplayGeneralPresence(groupIdForGeneralPresence);
}
else
{
Console.WriteLine("Неверный формат ID группы. Введите целое число.");
}
break;
case "15":
_presenceConsoleUI.ExportAttendanceToExcel();
Console.WriteLine("Отчёт в Excel успешно создан.");
break;
case "0":
Console.WriteLine("Выход...");
Console.WriteLine("Завершение работы.");
return;
default:
Console.WriteLine("Неверный выбор, попробуйте снова.");
Console.WriteLine("Неизвестная команда. Пожалуйста, введите номер команды из списка.");
break;
}
Console.WriteLine();
}
}
}

View File

@ -36,8 +36,10 @@ namespace Demo.UI
{
try
{
_presenceUseCase.GeneratePresenceDaily(firstLesson, lastLesson, groupId);
Console.WriteLine("Посещаемость на день успешно сгенерирована.");
if (_presenceUseCase.GeneratePresenceDaily(firstLesson, lastLesson, groupId))
{
Console.WriteLine("Посещаемость на день успешно сгенерирована.");
}
}
catch (Exception ex)
{
@ -51,7 +53,6 @@ namespace Demo.UI
try
{
_presenceUseCase.GenerateWeeklyPresence(firstLesson, lastLesson, groupId, date);
Console.WriteLine("Посещаемость на неделю успешно сгенерирована.");
}
catch (Exception ex)
{
@ -116,9 +117,16 @@ namespace Demo.UI
public void DisplayGeneralPresence(int groupId)
{
var statistics = _presenceUseCase.GetGeneralPresence(groupId);
Console.WriteLine($"Человек в группе: {statistics.UserCount}, " +
$"Количество проведённых занятий: {statistics.TotalLessons}, " +
$"Общий процент посещаемости группы: {statistics.AttendancePercentage}%");
if (statistics.UserCount != 0)
{
Console.WriteLine($"Человек в группе: {statistics.UserCount}, " +
$"Количество проведённых занятий: {statistics.TotalLessons}, " +
$"Общий процент посещаемости группы: {statistics.AttendancePercentage}%");
}
else
{
Console.WriteLine("Неверный ID группы");
}
foreach (var user in statistics.UserAttendanceDetails)
{

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Demo")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+472204c7ad4c4a3f254f9f53aef64d12bf47da33")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+2465b092a516c19e8c3f29d570c32d13752e7448")]
[assembly: System.Reflection.AssemblyProductAttribute("Demo")]
[assembly: System.Reflection.AssemblyTitleAttribute("Demo")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
47532a94689fa9a6e68fc01c08b5665745d045d1f0d0235d392eb0465c43f589
4dafcc315c5b5143aebffac45bb6b1a02a9a8069862a5a3ab589c57fa4d0c6e2

View File

@ -8,6 +8,6 @@ build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = Demo
build_property.ProjectDir = C:\Users\sokol\OneDrive\Desktop\presence\Demo\
build_property.ProjectDir = C:\Users\prdb\Source\Repos\presence\Demo\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -1 +1 @@
242ae9a5c1406b73143d8b778726eee1b355280fa3825c5ded1a4be0c1c51a0f
003e9888ea0d9308d5dd6d4a2d557b5c6f99d7bdf9e3c9c146b77760b979d967

View File

@ -646,3 +646,109 @@ C:\Users\sokol\OneDrive\Desktop\presence\Demo\bin\Debug\net8.0\ExcelNumberFormat
C:\Users\sokol\OneDrive\Desktop\presence\Demo\bin\Debug\net8.0\RBush.dll
C:\Users\sokol\OneDrive\Desktop\presence\Demo\bin\Debug\net8.0\SixLabors.Fonts.dll
C:\Users\sokol\OneDrive\Desktop\presence\Demo\bin\Debug\net8.0\System.IO.Packaging.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Demo.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Demo.exe
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Demo.deps.json
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Demo.runtimeconfig.json
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Demo.pdb
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ClosedXML.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ClosedXML.Parser.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\DocumentFormat.OpenXml.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\DocumentFormat.OpenXml.Framework.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ExcelNumberFormat.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Humanizer.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Bcl.AsyncInterfaces.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.CodeAnalysis.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.CodeAnalysis.CSharp.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.CodeAnalysis.CSharp.Workspaces.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.CodeAnalysis.Workspaces.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Abstractions.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Design.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Relational.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.Caching.Abstractions.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.Caching.Memory.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.Configuration.Abstractions.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.DependencyInjection.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.DependencyModel.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.Logging.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.Logging.Abstractions.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.Options.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Microsoft.Extensions.Primitives.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Mono.TextTemplating.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Npgsql.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\Npgsql.EntityFrameworkCore.PostgreSQL.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\RBush.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\SixLabors.Fonts.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\System.CodeDom.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\System.Composition.AttributedModel.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\System.Composition.Convention.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\System.Composition.Hosting.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\System.Composition.Runtime.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\System.Composition.TypedParts.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\System.IO.Packaging.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\System.IO.Pipelines.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\cs\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\de\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\es\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\fr\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\it\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ja\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ko\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\pl\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\pt-BR\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ru\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\tr\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\zh-Hans\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\zh-Hant\Microsoft.CodeAnalysis.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\cs\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\de\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\es\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\fr\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\it\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ja\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ko\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\pl\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\pt-BR\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ru\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\tr\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\zh-Hans\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\zh-Hant\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\cs\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\de\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\es\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\fr\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\it\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ja\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ko\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\pl\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\pt-BR\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ru\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\tr\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\zh-Hans\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\zh-Hant\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\cs\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\de\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\es\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\fr\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\it\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ja\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ko\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\pl\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\pt-BR\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\ru\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\tr\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\zh-Hans\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\bin\Debug\net8.0\zh-Hant\Microsoft.CodeAnalysis.Workspaces.resources.dll
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.csproj.AssemblyReference.cache
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.GeneratedMSBuildEditorConfig.editorconfig
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.AssemblyInfoInputs.cache
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.AssemblyInfo.cs
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.csproj.CoreCompileInputs.cache
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.csproj.Up2Date
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.dll
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\refint\Demo.dll
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.pdb
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\Demo.genruntimeconfig.cache
C:\Users\prdb\Source\Repos\presence\Demo\obj\Debug\net8.0\ref\Demo.dll

Binary file not shown.

View File

@ -1 +1 @@
51ab9d5805a6d942bb94bd6997327c63064183c829d45c37acba1478867c9ae9
bb731a27e918820a0d7ba57150fc70cb90d26dee6f59b233a1c533252885873c

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,20 +1,20 @@
{
"format": 1,
"restore": {
"C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Demo.csproj": {}
"C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\Demo.csproj": {}
},
"projects": {
"C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Demo.csproj": {
"C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\Demo.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Demo.csproj",
"projectUniqueName": "C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\Demo.csproj",
"projectName": "Demo",
"projectPath": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Demo.csproj",
"packagesPath": "C:\\Users\\sokol\\.nuget\\packages\\",
"outputPath": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\obj\\",
"projectPath": "C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\Demo.csproj",
"packagesPath": "C:\\Users\\prdb\\.nuget\\packages\\",
"outputPath": "C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\obj\\",
"projectStyle": "PackageReference",
"configFilePaths": [
"C:\\Users\\sokol\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Users\\prdb\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
@ -84,7 +84,7 @@
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.403/PortableRuntimeIdentifierGraph.json"
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.400/PortableRuntimeIdentifierGraph.json"
}
}
}

View File

@ -5,18 +5,18 @@
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\sokol\.nuget\packages\</NuGetPackageFolders>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\prdb\.nuget\packages\</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.11.1</NuGetToolVersion>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.11.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\sokol\.nuget\packages\" />
<SourceRoot Include="C:\Users\prdb\.nuget\packages\" />
</ItemGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)microsoft.entityframeworkcore\8.0.10\buildTransitive\net8.0\Microsoft.EntityFrameworkCore.props" Condition="Exists('$(NuGetPackageRoot)microsoft.entityframeworkcore\8.0.10\buildTransitive\net8.0\Microsoft.EntityFrameworkCore.props')" />
<Import Project="$(NuGetPackageRoot)microsoft.entityframeworkcore.design\8.0.10\build\net8.0\Microsoft.EntityFrameworkCore.Design.props" Condition="Exists('$(NuGetPackageRoot)microsoft.entityframeworkcore.design\8.0.10\build\net8.0\Microsoft.EntityFrameworkCore.Design.props')" />
</ImportGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_CodeAnalysis_Analyzers Condition=" '$(PkgMicrosoft_CodeAnalysis_Analyzers)' == '' ">C:\Users\sokol\.nuget\packages\microsoft.codeanalysis.analyzers\3.3.3</PkgMicrosoft_CodeAnalysis_Analyzers>
<PkgMicrosoft_CodeAnalysis_Analyzers Condition=" '$(PkgMicrosoft_CodeAnalysis_Analyzers)' == '' ">C:\Users\prdb\.nuget\packages\microsoft.codeanalysis.analyzers\3.3.3</PkgMicrosoft_CodeAnalysis_Analyzers>
</PropertyGroup>
</Project>

View File

@ -2396,19 +2396,19 @@
]
},
"packageFolders": {
"C:\\Users\\sokol\\.nuget\\packages\\": {}
"C:\\Users\\prdb\\.nuget\\packages\\": {}
},
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Demo.csproj",
"projectUniqueName": "C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\Demo.csproj",
"projectName": "Demo",
"projectPath": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Demo.csproj",
"packagesPath": "C:\\Users\\sokol\\.nuget\\packages\\",
"outputPath": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\obj\\",
"projectPath": "C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\Demo.csproj",
"packagesPath": "C:\\Users\\prdb\\.nuget\\packages\\",
"outputPath": "C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\obj\\",
"projectStyle": "PackageReference",
"configFilePaths": [
"C:\\Users\\sokol\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Users\\prdb\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
@ -2478,7 +2478,7 @@
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.403/PortableRuntimeIdentifierGraph.json"
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.400/PortableRuntimeIdentifierGraph.json"
}
}
}

View File

@ -1,55 +1,55 @@
{
"version": 2,
"dgSpecHash": "R69K63T28Dg=",
"dgSpecHash": "OF1pvuudGTM=",
"success": true,
"projectFilePath": "C:\\Users\\sokol\\OneDrive\\Desktop\\presence\\Demo\\Demo.csproj",
"projectFilePath": "C:\\Users\\prdb\\Source\\Repos\\presence\\Demo\\Demo.csproj",
"expectedPackageFiles": [
"C:\\Users\\sokol\\.nuget\\packages\\closedxml\\0.104.1\\closedxml.0.104.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\closedxml.parser\\1.2.0\\closedxml.parser.1.2.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\documentformat.openxml\\3.0.1\\documentformat.openxml.3.0.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\documentformat.openxml.framework\\3.0.1\\documentformat.openxml.framework.3.0.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\excelnumberformat\\1.1.0\\excelnumberformat.1.1.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\humanizer.core\\2.14.1\\humanizer.core.2.14.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\6.0.0\\microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.codeanalysis.analyzers\\3.3.3\\microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.codeanalysis.common\\4.5.0\\microsoft.codeanalysis.common.4.5.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.codeanalysis.csharp\\4.5.0\\microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.codeanalysis.csharp.workspaces\\4.5.0\\microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.codeanalysis.workspaces.common\\4.5.0\\microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.10\\microsoft.entityframeworkcore.8.0.10.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.10\\microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.10\\microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.entityframeworkcore.design\\8.0.10\\microsoft.entityframeworkcore.design.8.0.10.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.10\\microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.2\\microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.dependencymodel\\8.0.2\\microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\mono.texttemplating\\2.2.1\\mono.texttemplating.2.2.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\8.0.10\\npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\rbush\\3.2.0\\rbush.3.2.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\sixlabors.fonts\\1.0.0\\sixlabors.fonts.1.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.codedom\\4.4.0\\system.codedom.4.4.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.collections.immutable\\6.0.0\\system.collections.immutable.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.composition\\6.0.0\\system.composition.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.composition.attributedmodel\\6.0.0\\system.composition.attributedmodel.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.composition.convention\\6.0.0\\system.composition.convention.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.composition.hosting\\6.0.0\\system.composition.hosting.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.composition.runtime\\6.0.0\\system.composition.runtime.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.composition.typedparts\\6.0.0\\system.composition.typedparts.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.io.packaging\\8.0.0\\system.io.packaging.8.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.io.pipelines\\6.0.3\\system.io.pipelines.6.0.3.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.reflection.metadata\\6.0.1\\system.reflection.metadata.6.0.1.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.text.encoding.codepages\\6.0.0\\system.text.encoding.codepages.6.0.0.nupkg.sha512",
"C:\\Users\\sokol\\.nuget\\packages\\system.threading.channels\\6.0.0\\system.threading.channels.6.0.0.nupkg.sha512"
"C:\\Users\\prdb\\.nuget\\packages\\closedxml\\0.104.1\\closedxml.0.104.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\closedxml.parser\\1.2.0\\closedxml.parser.1.2.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\documentformat.openxml\\3.0.1\\documentformat.openxml.3.0.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\documentformat.openxml.framework\\3.0.1\\documentformat.openxml.framework.3.0.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\excelnumberformat\\1.1.0\\excelnumberformat.1.1.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\humanizer.core\\2.14.1\\humanizer.core.2.14.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\6.0.0\\microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.codeanalysis.analyzers\\3.3.3\\microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.codeanalysis.common\\4.5.0\\microsoft.codeanalysis.common.4.5.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.codeanalysis.csharp\\4.5.0\\microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.codeanalysis.csharp.workspaces\\4.5.0\\microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.codeanalysis.workspaces.common\\4.5.0\\microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.10\\microsoft.entityframeworkcore.8.0.10.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.10\\microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.10\\microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.entityframeworkcore.design\\8.0.10\\microsoft.entityframeworkcore.design.8.0.10.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.10\\microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.2\\microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.dependencymodel\\8.0.2\\microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\mono.texttemplating\\2.2.1\\mono.texttemplating.2.2.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\8.0.10\\npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\rbush\\3.2.0\\rbush.3.2.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\sixlabors.fonts\\1.0.0\\sixlabors.fonts.1.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.codedom\\4.4.0\\system.codedom.4.4.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.collections.immutable\\6.0.0\\system.collections.immutable.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.composition\\6.0.0\\system.composition.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.composition.attributedmodel\\6.0.0\\system.composition.attributedmodel.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.composition.convention\\6.0.0\\system.composition.convention.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.composition.hosting\\6.0.0\\system.composition.hosting.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.composition.runtime\\6.0.0\\system.composition.runtime.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.composition.typedparts\\6.0.0\\system.composition.typedparts.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.io.packaging\\8.0.0\\system.io.packaging.8.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.io.pipelines\\6.0.3\\system.io.pipelines.6.0.3.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.reflection.metadata\\6.0.1\\system.reflection.metadata.6.0.1.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.text.encoding.codepages\\6.0.0\\system.text.encoding.codepages.6.0.0.nupkg.sha512",
"C:\\Users\\prdb\\.nuget\\packages\\system.threading.channels\\6.0.0\\system.threading.channels.6.0.0.nupkg.sha512"
],
"logs": []
}