diff --git a/.vs/Demo/DesignTimeBuild/.dtbcache.v2 b/.vs/Demo/DesignTimeBuild/.dtbcache.v2
deleted file mode 100644
index 4127b92..0000000
Binary files a/.vs/Demo/DesignTimeBuild/.dtbcache.v2 and /dev/null differ
diff --git a/.vs/Demo/FileContentIndex/0cb3ef49-a339-463a-8a4d-6904cb34d0ec.vsidx b/.vs/Demo/FileContentIndex/0cb3ef49-a339-463a-8a4d-6904cb34d0ec.vsidx
deleted file mode 100644
index 31451f9..0000000
Binary files a/.vs/Demo/FileContentIndex/0cb3ef49-a339-463a-8a4d-6904cb34d0ec.vsidx and /dev/null differ
diff --git a/.vs/Demo/FileContentIndex/3f5e689d-1bc1-4586-81dc-a0bf01e607f3.vsidx b/.vs/Demo/FileContentIndex/3f5e689d-1bc1-4586-81dc-a0bf01e607f3.vsidx
deleted file mode 100644
index 60d99e7..0000000
Binary files a/.vs/Demo/FileContentIndex/3f5e689d-1bc1-4586-81dc-a0bf01e607f3.vsidx and /dev/null differ
diff --git a/.vs/Demo/FileContentIndex/4ecd6048-14b0-4007-918d-e7c0c9376779.vsidx b/.vs/Demo/FileContentIndex/4ecd6048-14b0-4007-918d-e7c0c9376779.vsidx
deleted file mode 100644
index f7f6457..0000000
Binary files a/.vs/Demo/FileContentIndex/4ecd6048-14b0-4007-918d-e7c0c9376779.vsidx and /dev/null differ
diff --git a/.vs/Demo/FileContentIndex/bb9c46c4-17c6-4154-aaf4-5c309f0deb8c.vsidx b/.vs/Demo/FileContentIndex/bb9c46c4-17c6-4154-aaf4-5c309f0deb8c.vsidx
deleted file mode 100644
index 70aef67..0000000
Binary files a/.vs/Demo/FileContentIndex/bb9c46c4-17c6-4154-aaf4-5c309f0deb8c.vsidx and /dev/null differ
diff --git a/.vs/Demo/FileContentIndex/bff36877-8b2e-472e-9e51-e4ec226ded11.vsidx b/.vs/Demo/FileContentIndex/bff36877-8b2e-472e-9e51-e4ec226ded11.vsidx
deleted file mode 100644
index aa9d84c..0000000
Binary files a/.vs/Demo/FileContentIndex/bff36877-8b2e-472e-9e51-e4ec226ded11.vsidx and /dev/null differ
diff --git a/.vs/Demo/config/applicationhost.config b/.vs/Demo/config/applicationhost.config
deleted file mode 100644
index cdd2df8..0000000
--- a/.vs/Demo/config/applicationhost.config
+++ /dev/null
@@ -1,1026 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.vs/Demo/v17/.futdcache.v2 b/.vs/Demo/v17/.futdcache.v2
deleted file mode 100644
index 659e68a..0000000
Binary files a/.vs/Demo/v17/.futdcache.v2 and /dev/null differ
diff --git a/.vs/Demo/v17/.suo b/.vs/Demo/v17/.suo
deleted file mode 100644
index 0b7ca43..0000000
Binary files a/.vs/Demo/v17/.suo and /dev/null differ
diff --git a/.vs/Demo/v17/DocumentLayout.backup.json b/.vs/Demo/v17/DocumentLayout.backup.json
deleted file mode 100644
index 10a62d5..0000000
--- a/.vs/Demo/v17/DocumentLayout.backup.json
+++ /dev/null
@@ -1,440 +0,0 @@
-{
- "Version": 1,
- "WorkspaceRootPath": "C:\\Users\\User\\Desktop\\pr1\\",
- "Documents": [
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\presence_api.http||{5703B403-55E7-4C63-8C88-A8F52C7A45C5}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\presence_api.http||{5703B403-55E7-4C63-8C88-A8F52C7A45C5}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj.user||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
- "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:presence_api\\presence_api.csproj.user||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\domain\\usecase\\adminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\adminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\controllers\\admincontroller\\admincontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\controllers\\admincontroller\\admincontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\controllers\\weatherforecastcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\controllers\\weatherforecastcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\presence_api.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\presence_api.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\exceptions\\groupnotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\exceptions\\groupnotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\User\\Desktop\\pr1\\presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\exceptions\\usernotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\exceptions\\usernotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\localdata\\entity\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\localdata\\entity\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\localdata\\entity\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\localdata\\entity\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\exceptions\\repositoryexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\exceptions\\repositoryexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\localdata\\entity\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\localdata\\entity\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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\\user\\desktop\\pr1\\demo\\data\\repository\\userrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\userrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\domain\\models\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\models\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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\\user\\desktop\\pr1\\demo\\data\\repository\\sqlpresencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlpresencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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\\user\\desktop\\pr1\\demo\\data\\repository\\presencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\presencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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\\user\\desktop\\pr1\\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}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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}"
- }
- ],
- "DocumentGroupContainers": [
- {
- "Orientation": 0,
- "VerticalTabListWidth": 100,
- "DocumentGroups": [
- {
- "DockedWidth": 200,
- "SelectedChildIndex": 16,
- "Children": [
- {
- "$type": "Document",
- "DocumentIndex": 1,
- "Title": "presence_api.http",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.http",
- "RelativeDocumentMoniker": "presence_api\\presence_api.http",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.http",
- "RelativeToolTip": "presence_api\\presence_api.http",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003502|",
- "WhenOpened": "2024-11-22T07:56:01.499Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 2,
- "Title": "presence_api.csproj.user",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj.user",
- "RelativeDocumentMoniker": "presence_api\\presence_api.csproj.user",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj.user",
- "RelativeToolTip": "presence_api\\presence_api.csproj.user",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003464|",
- "WhenOpened": "2024-11-22T07:56:01.01Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 3,
- "Title": "AdminUseCase.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\UseCase\\AdminUseCase.cs",
- "RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\AdminUseCase.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\UseCase\\AdminUseCase.cs",
- "RelativeToolTip": "Demo\\Domain\\UseCase\\AdminUseCase.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-22T06:09:47.26Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 5,
- "Title": "UseCaseGeneratePresence.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
- "RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
- "RelativeToolTip": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
- "ViewState": "AgIAAGEAAAAAAAAAAADwv1wAAAAPAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T19:29:29.873Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 4,
- "Title": "AdminController.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Controllers\\AdminController\\AdminController.cs",
- "RelativeDocumentMoniker": "presence_api\\Controllers\\AdminController\\AdminController.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Controllers\\AdminController\\AdminController.cs",
- "RelativeToolTip": "presence_api\\Controllers\\AdminController\\AdminController.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAEAAAAGAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T19:29:21.414Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 6,
- "Title": "appsettings.json",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\appsettings.json",
- "RelativeDocumentMoniker": "presence_api\\appsettings.json",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\appsettings.json",
- "RelativeToolTip": "presence_api\\appsettings.json",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
- "WhenOpened": "2024-11-21T19:28:57.415Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 7,
- "Title": "WeatherForecastController.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Controllers\\WeatherForecastController.cs",
- "RelativeDocumentMoniker": "presence_api\\Controllers\\WeatherForecastController.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Controllers\\WeatherForecastController.cs",
- "RelativeToolTip": "presence_api\\Controllers\\WeatherForecastController.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAAsAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T19:28:27.046Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 10,
- "Title": "presence_api.AssemblyInfo.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs",
- "RelativeDocumentMoniker": "presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs",
- "RelativeToolTip": "presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs",
- "ViewState": "AgIAAAEAAAAAAAAAAAAawA0AAAALAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T19:11:49.392Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 15,
- "Title": "User.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\User.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\LocalData\\Entity\\User.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\User.cs",
- "RelativeToolTip": "Demo\\Data\\LocalData\\Entity\\User.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:47:30.155Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 11,
- "Title": "UserNotFoundException.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\UserNotFoundException.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Exceptions\\UserNotFoundException.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\UserNotFoundException.cs",
- "RelativeToolTip": "Demo\\Data\\Exceptions\\UserNotFoundException.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAkAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:44:11.017Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 13,
- "Title": "Group.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\Group.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\LocalData\\Entity\\Group.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\Group.cs",
- "RelativeToolTip": "Demo\\Data\\LocalData\\Entity\\Group.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:22.01Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 9,
- "Title": "GroupNotFoundException.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\GroupNotFoundException.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Exceptions\\GroupNotFoundException.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\GroupNotFoundException.cs",
- "RelativeToolTip": "Demo\\Data\\Exceptions\\GroupNotFoundException.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAkAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:47.489Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 12,
- "Title": "Presence.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\Presence.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\LocalData\\Entity\\Presence.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\Presence.cs",
- "RelativeToolTip": "Demo\\Data\\LocalData\\Entity\\Presence.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:31.374Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 14,
- "Title": "RepositoryException.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\RepositoryException.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Exceptions\\RepositoryException.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\RepositoryException.cs",
- "RelativeToolTip": "Demo\\Data\\Exceptions\\RepositoryException.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:49.33Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 16,
- "Title": "GroupRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAACwAAAAvAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:59.167Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 17,
- "Title": "UserRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\UserRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\UserRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\UserRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\UserRepositoryImpl.cs",
- "ViewState": "AgIAACAAAAAAAAAAAAAEwCoAAAAwAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:19.285Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 0,
- "Title": "Program.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Program.cs",
- "RelativeDocumentMoniker": "presence_api\\Program.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Program.cs",
- "RelativeToolTip": "presence_api\\Program.cs",
- "ViewState": "AgIAAAEAAAAAAAAAAAAQwBcAAAAkAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:37:15.711Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 18,
- "Title": "Group.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\Models\\Group.cs",
- "RelativeDocumentMoniker": "Demo\\Domain\\Models\\Group.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\Models\\Group.cs",
- "RelativeToolTip": "Demo\\Domain\\Models\\Group.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAcAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:46.679Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 19,
- "Title": "SQLUserRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:14.871Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 20,
- "Title": "SQLPresenceRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLPresenceRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLPresenceRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLPresenceRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\SQLPresenceRepositoryImpl.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:13.186Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 21,
- "Title": "SQLGroupRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
- "ViewState": "AgIAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:10.06Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 23,
- "Title": "IGroupRepository.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\IGroupRepository.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\IGroupRepository.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\IGroupRepository.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\IGroupRepository.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:56.971Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 22,
- "Title": "PresenceRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\PresenceRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\PresenceRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\PresenceRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\PresenceRepositoryImpl.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAqAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:35:27.05Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 8,
- "Title": "presence_api.csproj",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj",
- "RelativeDocumentMoniker": "presence_api\\presence_api.csproj",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj",
- "RelativeToolTip": "presence_api\\presence_api.csproj",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000758|",
- "WhenOpened": "2024-11-21T18:37:20.425Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 25,
- "Title": "User.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
- "RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:31:41.297Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 24,
- "Title": "Presence.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
- "RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:25:15.826Z"
- }
- ]
- }
- ]
- }
- ]
-}
\ No newline at end of file
diff --git a/.vs/Demo/v17/DocumentLayout.json b/.vs/Demo/v17/DocumentLayout.json
deleted file mode 100644
index e6958e6..0000000
--- a/.vs/Demo/v17/DocumentLayout.json
+++ /dev/null
@@ -1,440 +0,0 @@
-{
- "Version": 1,
- "WorkspaceRootPath": "C:\\Users\\User\\Desktop\\pr1\\",
- "Documents": [
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\presence_api.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\presence_api.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
- },
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\presence_api.http||{5703B403-55E7-4C63-8C88-A8F52C7A45C5}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\presence_api.http||{5703B403-55E7-4C63-8C88-A8F52C7A45C5}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj.user||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
- "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:presence_api\\presence_api.csproj.user||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\domain\\usecase\\adminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\usecase\\adminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\controllers\\admincontroller\\admincontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\controllers\\admincontroller\\admincontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|c:\\users\\user\\desktop\\pr1\\presence_api\\controllers\\weatherforecastcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{402295CE-4ED2-4358-8B81-312891047A36}|presence_api\\presence_api.csproj|solutionrelative:presence_api\\controllers\\weatherforecastcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\exceptions\\groupnotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\exceptions\\groupnotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\User\\Desktop\\pr1\\presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\exceptions\\usernotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\exceptions\\usernotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\localdata\\entity\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\localdata\\entity\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\localdata\\entity\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\localdata\\entity\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\exceptions\\repositoryexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\exceptions\\repositoryexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\data\\localdata\\entity\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\localdata\\entity\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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\\user\\desktop\\pr1\\demo\\data\\repository\\userrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\userrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\demo\\domain\\models\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\domain\\models\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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\\user\\desktop\\pr1\\demo\\data\\repository\\sqlpresencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\sqlpresencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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\\user\\desktop\\pr1\\demo\\data\\repository\\presencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|solutionrelative:demo\\data\\repository\\presencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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\\user\\desktop\\pr1\\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}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{983820F6-FF31-4B3A-8593-831BC3904E80}|Demo\\Demo.csproj|c:\\users\\user\\desktop\\pr1\\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}"
- }
- ],
- "DocumentGroupContainers": [
- {
- "Orientation": 0,
- "VerticalTabListWidth": 100,
- "DocumentGroups": [
- {
- "DockedWidth": 200,
- "SelectedChildIndex": 23,
- "Children": [
- {
- "$type": "Document",
- "DocumentIndex": 2,
- "Title": "presence_api.http",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.http",
- "RelativeDocumentMoniker": "presence_api\\presence_api.http",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.http",
- "RelativeToolTip": "presence_api\\presence_api.http",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003502|",
- "WhenOpened": "2024-11-22T07:56:01.499Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 3,
- "Title": "presence_api.csproj.user",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj.user",
- "RelativeDocumentMoniker": "presence_api\\presence_api.csproj.user",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj.user",
- "RelativeToolTip": "presence_api\\presence_api.csproj.user",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003464|",
- "WhenOpened": "2024-11-22T07:56:01.01Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 4,
- "Title": "AdminUseCase.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\UseCase\\AdminUseCase.cs",
- "RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\AdminUseCase.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\UseCase\\AdminUseCase.cs",
- "RelativeToolTip": "Demo\\Domain\\UseCase\\AdminUseCase.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-22T06:09:47.26Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 6,
- "Title": "UseCaseGeneratePresence.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
- "RelativeDocumentMoniker": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
- "RelativeToolTip": "Demo\\Domain\\UseCase\\UseCaseGeneratePresence.cs",
- "ViewState": "AgIAAGEAAAAAAAAAAADwv1wAAAAPAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T19:29:29.873Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 5,
- "Title": "AdminController.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Controllers\\AdminController\\AdminController.cs",
- "RelativeDocumentMoniker": "presence_api\\Controllers\\AdminController\\AdminController.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Controllers\\AdminController\\AdminController.cs",
- "RelativeToolTip": "presence_api\\Controllers\\AdminController\\AdminController.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAEAAAAGAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T19:29:21.414Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 7,
- "Title": "appsettings.json",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\appsettings.json",
- "RelativeDocumentMoniker": "presence_api\\appsettings.json",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\appsettings.json",
- "RelativeToolTip": "presence_api\\appsettings.json",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
- "WhenOpened": "2024-11-21T19:28:57.415Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 8,
- "Title": "WeatherForecastController.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Controllers\\WeatherForecastController.cs",
- "RelativeDocumentMoniker": "presence_api\\Controllers\\WeatherForecastController.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Controllers\\WeatherForecastController.cs",
- "RelativeToolTip": "presence_api\\Controllers\\WeatherForecastController.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAAsAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T19:28:27.046Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 10,
- "Title": "presence_api.AssemblyInfo.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs",
- "RelativeDocumentMoniker": "presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs",
- "RelativeToolTip": "presence_api\\obj\\Debug\\net8.0\\presence_api.AssemblyInfo.cs",
- "ViewState": "AgIAAAEAAAAAAAAAAAAawA0AAAALAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T19:11:49.392Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 15,
- "Title": "User.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\User.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\LocalData\\Entity\\User.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\User.cs",
- "RelativeToolTip": "Demo\\Data\\LocalData\\Entity\\User.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:47:30.155Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 11,
- "Title": "UserNotFoundException.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\UserNotFoundException.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Exceptions\\UserNotFoundException.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\UserNotFoundException.cs",
- "RelativeToolTip": "Demo\\Data\\Exceptions\\UserNotFoundException.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAkAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:44:11.017Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 13,
- "Title": "Group.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\Group.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\LocalData\\Entity\\Group.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\Group.cs",
- "RelativeToolTip": "Demo\\Data\\LocalData\\Entity\\Group.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:22.01Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 9,
- "Title": "GroupNotFoundException.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\GroupNotFoundException.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Exceptions\\GroupNotFoundException.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\GroupNotFoundException.cs",
- "RelativeToolTip": "Demo\\Data\\Exceptions\\GroupNotFoundException.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAkAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:47.489Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 12,
- "Title": "Presence.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\Presence.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\LocalData\\Entity\\Presence.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\LocalData\\Entity\\Presence.cs",
- "RelativeToolTip": "Demo\\Data\\LocalData\\Entity\\Presence.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:31.374Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 14,
- "Title": "RepositoryException.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\RepositoryException.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Exceptions\\RepositoryException.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Exceptions\\RepositoryException.cs",
- "RelativeToolTip": "Demo\\Data\\Exceptions\\RepositoryException.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:49.33Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 16,
- "Title": "GroupRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\GroupRepositoryImpl.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAACwAAAAvAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:59.167Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 17,
- "Title": "UserRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\UserRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\UserRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\UserRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\UserRepositoryImpl.cs",
- "ViewState": "AgIAACAAAAAAAAAAAAAEwCoAAAAwAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:19.285Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 1,
- "Title": "Program.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Program.cs",
- "RelativeDocumentMoniker": "presence_api\\Program.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\Program.cs",
- "RelativeToolTip": "presence_api\\Program.cs",
- "ViewState": "AgIAAAEAAAAAAAAAAAAQwBcAAAAkAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:37:15.711Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 18,
- "Title": "Group.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\Models\\Group.cs",
- "RelativeDocumentMoniker": "Demo\\Domain\\Models\\Group.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Domain\\Models\\Group.cs",
- "RelativeToolTip": "Demo\\Domain\\Models\\Group.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAcAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:46.679Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 19,
- "Title": "SQLUserRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\SQLUserRepositoryImpl.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:14.871Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 20,
- "Title": "SQLPresenceRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLPresenceRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLPresenceRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLPresenceRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\SQLPresenceRepositoryImpl.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:13.186Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 21,
- "Title": "SQLGroupRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\SQLGroupRepositoryImpl.cs",
- "ViewState": "AgIAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:40:10.06Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 23,
- "Title": "IGroupRepository.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\IGroupRepository.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\IGroupRepository.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\IGroupRepository.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\IGroupRepository.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:39:56.971Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 22,
- "Title": "PresenceRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\PresenceRepositoryImpl.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\Repository\\PresenceRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\Repository\\PresenceRepositoryImpl.cs",
- "RelativeToolTip": "Demo\\Data\\Repository\\PresenceRepositoryImpl.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAqAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:35:27.05Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 0,
- "Title": "presence_api.csproj",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj",
- "RelativeDocumentMoniker": "presence_api\\presence_api.csproj",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence_api\\presence_api.csproj",
- "RelativeToolTip": "presence_api\\presence_api.csproj",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000758|",
- "WhenOpened": "2024-11-21T18:37:20.425Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 25,
- "Title": "User.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
- "RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:31:41.297Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 24,
- "Title": "Presence.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
- "RelativeDocumentMoniker": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
- "RelativeToolTip": "Demo\\Data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-11-21T18:25:15.826Z"
- }
- ]
- }
- ]
- }
- ]
-}
\ No newline at end of file
diff --git a/.vs/ProjectEvaluation/demo.metadata.v9.bin b/.vs/ProjectEvaluation/demo.metadata.v9.bin
deleted file mode 100644
index 8398b36..0000000
Binary files a/.vs/ProjectEvaluation/demo.metadata.v9.bin and /dev/null differ
diff --git a/.vs/ProjectEvaluation/demo.projects.v9.bin b/.vs/ProjectEvaluation/demo.projects.v9.bin
deleted file mode 100644
index f317ab3..0000000
Binary files a/.vs/ProjectEvaluation/demo.projects.v9.bin and /dev/null differ
diff --git a/.vs/ProjectEvaluation/demo.strings.v9.bin b/.vs/ProjectEvaluation/demo.strings.v9.bin
deleted file mode 100644
index a0a1453..0000000
Binary files a/.vs/ProjectEvaluation/demo.strings.v9.bin and /dev/null differ
diff --git a/.vs/presnce/v17/.suo b/.vs/presnce/v17/.suo
deleted file mode 100644
index 1baaeea..0000000
Binary files a/.vs/presnce/v17/.suo and /dev/null differ
diff --git a/.vs/presnce/v17/DocumentLayout.json b/.vs/presnce/v17/DocumentLayout.json
deleted file mode 100644
index b7a165d..0000000
--- a/.vs/presnce/v17/DocumentLayout.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "Version": 1,
- "WorkspaceRootPath": "C:\\Users\\User\\Desktop\\pr1\\",
- "Documents": [],
- "DocumentGroupContainers": [
- {
- "Orientation": 0,
- "VerticalTabListWidth": 256,
- "DocumentGroups": []
- }
- ]
-}
\ No newline at end of file
diff --git a/presence/.vs/ProjectEvaluation/presence.metadata.v9.bin b/presence/.vs/ProjectEvaluation/presence.metadata.v9.bin
index 1f10c8e..0d78a14 100644
Binary files a/presence/.vs/ProjectEvaluation/presence.metadata.v9.bin and b/presence/.vs/ProjectEvaluation/presence.metadata.v9.bin differ
diff --git a/presence/.vs/ProjectEvaluation/presence.projects.v9.bin b/presence/.vs/ProjectEvaluation/presence.projects.v9.bin
index 38bf770..4071997 100644
Binary files a/presence/.vs/ProjectEvaluation/presence.projects.v9.bin and b/presence/.vs/ProjectEvaluation/presence.projects.v9.bin differ
diff --git a/presence/.vs/ProjectEvaluation/presence.strings.v9.bin b/presence/.vs/ProjectEvaluation/presence.strings.v9.bin
index 69feca9..690e974 100644
Binary files a/presence/.vs/ProjectEvaluation/presence.strings.v9.bin and b/presence/.vs/ProjectEvaluation/presence.strings.v9.bin differ
diff --git a/presence/.vs/presence/DesignTimeBuild/.dtbcache.v2 b/presence/.vs/presence/DesignTimeBuild/.dtbcache.v2
index fd40721..6ef50cc 100644
Binary files a/presence/.vs/presence/DesignTimeBuild/.dtbcache.v2 and b/presence/.vs/presence/DesignTimeBuild/.dtbcache.v2 differ
diff --git a/presence/.vs/presence/FileContentIndex/2de34cee-a26b-4bd0-8422-8f1d535fc489.vsidx b/presence/.vs/presence/FileContentIndex/2de34cee-a26b-4bd0-8422-8f1d535fc489.vsidx
new file mode 100644
index 0000000..3ed56f9
Binary files /dev/null and b/presence/.vs/presence/FileContentIndex/2de34cee-a26b-4bd0-8422-8f1d535fc489.vsidx differ
diff --git a/presence/.vs/presence/FileContentIndex/61f0e490-51fc-4778-b4ef-c882bc63b315.vsidx b/presence/.vs/presence/FileContentIndex/61f0e490-51fc-4778-b4ef-c882bc63b315.vsidx
deleted file mode 100644
index d268f61..0000000
Binary files a/presence/.vs/presence/FileContentIndex/61f0e490-51fc-4778-b4ef-c882bc63b315.vsidx and /dev/null differ
diff --git a/presence/.vs/presence/FileContentIndex/6f4c6d02-7d29-4b6d-b7f3-4fabf8ec9286.vsidx b/presence/.vs/presence/FileContentIndex/6f4c6d02-7d29-4b6d-b7f3-4fabf8ec9286.vsidx
new file mode 100644
index 0000000..b2f0e0a
Binary files /dev/null and b/presence/.vs/presence/FileContentIndex/6f4c6d02-7d29-4b6d-b7f3-4fabf8ec9286.vsidx differ
diff --git a/presence/.vs/presence/FileContentIndex/b3fed4a5-1f3b-4cb1-952d-f0d6162d8216.vsidx b/presence/.vs/presence/FileContentIndex/b3fed4a5-1f3b-4cb1-952d-f0d6162d8216.vsidx
new file mode 100644
index 0000000..a1d834f
Binary files /dev/null and b/presence/.vs/presence/FileContentIndex/b3fed4a5-1f3b-4cb1-952d-f0d6162d8216.vsidx differ
diff --git a/presence/.vs/presence/FileContentIndex/e865ca37-d036-451d-a207-af8e65c2d9b1.vsidx b/presence/.vs/presence/FileContentIndex/e865ca37-d036-451d-a207-af8e65c2d9b1.vsidx
new file mode 100644
index 0000000..4847ed9
Binary files /dev/null and b/presence/.vs/presence/FileContentIndex/e865ca37-d036-451d-a207-af8e65c2d9b1.vsidx differ
diff --git a/presence/.vs/presence/FileContentIndex/f5eb9fc7-5ed4-4935-8b76-e4eb577c89b3.vsidx b/presence/.vs/presence/FileContentIndex/f5eb9fc7-5ed4-4935-8b76-e4eb577c89b3.vsidx
new file mode 100644
index 0000000..d6e8f85
Binary files /dev/null and b/presence/.vs/presence/FileContentIndex/f5eb9fc7-5ed4-4935-8b76-e4eb577c89b3.vsidx differ
diff --git a/presence/.vs/presence/v17/.futdcache.v2 b/presence/.vs/presence/v17/.futdcache.v2
index 39c58be..4018f97 100644
Binary files a/presence/.vs/presence/v17/.futdcache.v2 and b/presence/.vs/presence/v17/.futdcache.v2 differ
diff --git a/presence/.vs/presence/v17/.suo b/presence/.vs/presence/v17/.suo
index 5e0dcf8..11ff5ab 100644
Binary files a/presence/.vs/presence/v17/.suo and b/presence/.vs/presence/v17/.suo differ
diff --git a/presence/.vs/presence/v17/DocumentLayout.backup.json b/presence/.vs/presence/v17/DocumentLayout.backup.json
index 8e69975..fa4208f 100644
--- a/presence/.vs/presence/v17/DocumentLayout.backup.json
+++ b/presence/.vs/presence/v17/DocumentLayout.backup.json
@@ -3,59 +3,624 @@
"WorkspaceRootPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\",
"Documents": [
{
- "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\localdata\\entity\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\localdata\\entity\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\exceptions\\groupnotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\exceptions\\groupnotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{240FA6D1-5D9A-4BEB-A458-7C98BE80E7C6}|console_ui\\console_ui.csproj|c:\\users\\user\\desktop\\pr1\\presence\\console_ui\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{240FA6D1-5D9A-4BEB-A458-7C98BE80E7C6}|console_ui\\console_ui.csproj|solutionrelative:console_ui\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\views\\mainwindow.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\views\\mainwindow.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}"
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\presenceusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\presenceusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\adminrepositoryimp.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\adminrepositoryimp.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\exceptions\\usernotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\exceptions\\usernotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\presence.desktop.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\presence.desktop.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\exceptions\\repositoryexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\exceptions\\repositoryexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\ipresenceusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\ipresenceusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\localdata\\entity\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\localdata\\entity\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\adminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\adminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewmodels\\groupviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewmodels\\groupviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\localdata\\entity\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\localdata\\entity\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\service\\groupservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\service\\groupservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\localdata\\localstaticdata.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\localdata\\localstaticdata.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\di\\servicecollectionextensions.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\di\\servicecollectionextensions.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\models\\userpresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\models\\userpresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\igroupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\igroupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\iadminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\iadminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\iuserusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\iuserusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\request\\addgrouprequest.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\request\\addgrouprequest.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{240FA6D1-5D9A-4BEB-A458-7C98BE80E7C6}|console_ui\\console_ui.csproj|c:\\users\\user\\desktop\\pr1\\presence\\console_ui\\groupui.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{240FA6D1-5D9A-4BEB-A458-7C98BE80E7C6}|console_ui\\console_ui.csproj|solutionrelative:console_ui\\groupui.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\models\\presencepresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\models\\presencepresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewmodels\\mainwindowviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewmodels\\mainwindowviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\views\\mainwindow.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\views\\mainwindow.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewmodels\\presenceviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewmodels\\presenceviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewmodels\\viewmodelbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewmodels\\viewmodelbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewlocator.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewlocator.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\views\\mainwindow.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\views\\mainwindow.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.manifest||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.manifest||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\models\\grouppresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\models\\grouppresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\userrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\userrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\sqlpresencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\sqlpresencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
- "VerticalTabListWidth": 379,
+ "VerticalTabListWidth": 170,
"DocumentGroups": [
{
"DockedWidth": 200,
- "SelectedChildIndex": 1,
+ "SelectedChildIndex": 11,
"Children": [
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "Program.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\Program.cs",
+ "RelativeDocumentMoniker": "console_ui\\Program.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\Program.cs*",
+ "RelativeToolTip": "console_ui\\Program.cs*",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAACMAAAAUAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T17:10:59.931Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{e1b7d1f8-9b3c-49b1-8f4f-bfc63a88835d}"
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{34e76e81-ee4a-11d0-ae2e-00a0c90fffc3}"
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{d78612c7-9962-4b83-95d9-268046dad23a}"
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 5,
+ "Title": "AdminRepositoryImp.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\AdminRepositoryImp.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\AdminRepositoryImp.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\AdminRepositoryImp.cs",
+ "RelativeToolTip": "data\\Repository\\AdminRepositoryImp.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:26:25.929Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "UserNotFoundException.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\UserNotFoundException.cs",
+ "RelativeDocumentMoniker": "data\\Exceptions\\UserNotFoundException.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\UserNotFoundException.cs",
+ "RelativeToolTip": "data\\Exceptions\\UserNotFoundException.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:25:41.991Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "RepositoryException.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\RepositoryException.cs",
+ "RelativeDocumentMoniker": "data\\Exceptions\\RepositoryException.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\RepositoryException.cs",
+ "RelativeToolTip": "data\\Exceptions\\RepositoryException.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:25:35.312Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 9,
+ "Title": "IPresenceRepository.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IPresenceRepository.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\IPresenceRepository.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IPresenceRepository.cs",
+ "RelativeToolTip": "data\\Repository\\IPresenceRepository.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:24:12.447Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 14,
+ "Title": "User.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\User.cs",
+ "RelativeDocumentMoniker": "data\\LocalData\\Entity\\User.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\User.cs",
+ "RelativeToolTip": "data\\LocalData\\Entity\\User.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAxAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:08:04.438Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 10,
+ "Title": "Presence.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\Presence.cs",
+ "RelativeDocumentMoniker": "data\\LocalData\\Entity\\Presence.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\Presence.cs",
+ "RelativeToolTip": "data\\LocalData\\Entity\\Presence.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA8AAAABAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:07:30.87Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 0,
+ "Title": "Group.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\Group.cs",
+ "RelativeDocumentMoniker": "data\\LocalData\\Entity\\Group.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\Group.cs",
+ "RelativeToolTip": "data\\LocalData\\Entity\\Group.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAsAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:07:01.035Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 23,
+ "Title": "UserUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\UserUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\UserUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\UserUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\UserUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:52:05.075Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
+ "Title": "PresenceUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\PresenceUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\PresenceUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\PresenceUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\PresenceUseCase.cs",
+ "ViewState": "AgIAAC0AAAAAAAAAAAAYwPIAAAAnAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:54.176Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 22,
+ "Title": "IUserUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IUserUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\IUserUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IUserUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\IUserUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:52.927Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 8,
+ "Title": "IPresenceUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IPresenceUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\IPresenceUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IPresenceUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\IPresenceUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:51.493Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 21,
+ "Title": "IAdminUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IAdminUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\IAdminUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IAdminUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\IAdminUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:49.193Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 12,
+ "Title": "GroupUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\GroupUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\GroupUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\GroupUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\GroupUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAkwBoAAAAJAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:47:29.626Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 11,
+ "Title": "AdminUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\AdminUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\AdminUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\AdminUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\AdminUseCase.cs",
+ "ViewState": "AgIAACQAAAAAAAAAAAAEwB0AAAAtAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:41.22Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 24,
+ "Title": "AddGroupRequest.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\Request\\AddGroupRequest.cs",
+ "RelativeDocumentMoniker": "domain\\Request\\AddGroupRequest.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\Request\\AddGroupRequest.cs",
+ "RelativeToolTip": "domain\\Request\\AddGroupRequest.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:27.139Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 20,
+ "Title": "IGroupUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IGroupUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\IGroupUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IGroupUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\IGroupUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAABEAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:47:56.11Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 15,
+ "Title": "IGroupRepository.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IGroupRepository.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\IGroupRepository.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IGroupRepository.cs",
+ "RelativeToolTip": "data\\Repository\\IGroupRepository.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABEAAAANAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:44:18.211Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 16,
+ "Title": "GroupService.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\Service\\GroupService.cs",
+ "RelativeDocumentMoniker": "domain\\Service\\GroupService.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\Service\\GroupService.cs",
+ "RelativeToolTip": "domain\\Service\\GroupService.cs",
+ "ViewState": "AgIAABcAAAAAAAAAAAAvwCQAAAAoAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:43:24.141Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 25,
+ "Title": "GroupUI.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\GroupUI.cs",
+ "RelativeDocumentMoniker": "console_ui\\GroupUI.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\GroupUI.cs",
+ "RelativeToolTip": "console_ui\\GroupUI.cs",
+ "ViewState": "AgIAAAsAAAAAAAAAAAAxwAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:42:40.25Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 26,
+ "Title": "PresencePresenter.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\PresencePresenter.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\Models\\PresencePresenter.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\PresencePresenter.cs",
+ "RelativeToolTip": "Presence.Desktop\\Models\\PresencePresenter.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:37:05.722Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 30,
+ "Title": "ViewLocator.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewLocator.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewLocator.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewLocator.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewLocator.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:31:21.684Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 31,
+ "Title": "Program.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Program.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\Program.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Program.cs",
+ "RelativeToolTip": "Presence.Desktop\\Program.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:31:20.106Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 33,
+ "Title": "app.manifest",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\app.manifest",
+ "RelativeDocumentMoniker": "Presence.Desktop\\app.manifest",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\app.manifest",
+ "RelativeToolTip": "Presence.Desktop\\app.manifest",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001203|",
+ "WhenOpened": "2024-12-19T07:31:18.611Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 34,
+ "Title": "App.axaml",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml",
+ "RelativeDocumentMoniker": "Presence.Desktop\\App.axaml",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml",
+ "RelativeToolTip": "Presence.Desktop\\App.axaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2024-12-19T07:31:09.897Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 28,
+ "Title": "PresenceViewModel.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\PresenceViewModel.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\PresenceViewModel.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\PresenceViewModel.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewModels\\PresenceViewModel.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:27:55.706Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 19,
+ "Title": "UserPresenter.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\UserPresenter.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\Models\\UserPresenter.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\UserPresenter.cs",
+ "RelativeToolTip": "Presence.Desktop\\Models\\UserPresenter.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAeAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:22:59.432Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 36,
+ "Title": "GroupPresenter.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\GroupPresenter.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\Models\\GroupPresenter.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\GroupPresenter.cs",
+ "RelativeToolTip": "Presence.Desktop\\Models\\GroupPresenter.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA8AAAABAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:22:43.957Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 18,
+ "Title": "ServiceCollectionExtensions.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\DI\\ServiceCollectionExtensions.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\DI\\ServiceCollectionExtensions.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\DI\\ServiceCollectionExtensions.cs",
+ "RelativeToolTip": "Presence.Desktop\\DI\\ServiceCollectionExtensions.cs",
+ "ViewState": "AgIAAAIAAAAAAAAAAAAswBoAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:18:31.188Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 37,
+ "Title": "Group.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
+ "RelativeDocumentMoniker": "data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
+ "RelativeToolTip": "data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:13:43.246Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 38,
+ "Title": "Presence.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
+ "RelativeDocumentMoniker": "data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
+ "RelativeToolTip": "data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:13:40.436Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 39,
+ "Title": "User.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
+ "RelativeDocumentMoniker": "data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
+ "RelativeToolTip": "data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:13:34.952Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 41,
+ "Title": "UserRepositoryImpl.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\UserRepositoryImpl.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\UserRepositoryImpl.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\UserRepositoryImpl.cs",
+ "RelativeToolTip": "data\\Repository\\UserRepositoryImpl.cs",
+ "ViewState": "AgIAABYAAAAAAAAAAAAlwC0AAAAqAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:12:48.068Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 40,
+ "Title": "SQLUserRepositoryImpl.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLUserRepositoryImpl.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\SQLUserRepositoryImpl.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLUserRepositoryImpl.cs",
+ "RelativeToolTip": "data\\Repository\\SQLUserRepositoryImpl.cs",
+ "ViewState": "AgIAADwAAAAAAAAAAAAowBgAAAAdAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:12:45.334Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 42,
+ "Title": "SQLPresenceRepositoryImpl.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLPresenceRepositoryImpl.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\SQLPresenceRepositoryImpl.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLPresenceRepositoryImpl.cs",
+ "RelativeToolTip": "data\\Repository\\SQLPresenceRepositoryImpl.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:12:43.082Z"
+ },
{
"$type": "Document",
"DocumentIndex": 3,
@@ -64,129 +629,94 @@
"RelativeDocumentMoniker": "data\\Repository\\SQLGroupRepositoryImpl.cs",
"ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLGroupRepositoryImpl.cs",
"RelativeToolTip": "data\\Repository\\SQLGroupRepositoryImpl.cs",
- "ViewState": "AgIAABMAAAAAAAAAAAAQwAAAAAAAAAAAAAAAAA==",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAA2AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:25:15.676Z",
+ "WhenOpened": "2024-12-19T07:12:27.096Z",
"EditorCaption": ""
},
{
"$type": "Document",
- "DocumentIndex": 0,
- "Title": "IUserRepository.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IUserRepository.cs",
- "RelativeDocumentMoniker": "data\\Repository\\IUserRepository.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IUserRepository.cs",
- "RelativeToolTip": "data\\Repository\\IUserRepository.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAyAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:24:39.495Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 2,
- "Title": "IPresenceRepository.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IPresenceRepository.cs",
- "RelativeDocumentMoniker": "data\\Repository\\IPresenceRepository.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IPresenceRepository.cs",
- "RelativeToolTip": "data\\Repository\\IPresenceRepository.cs",
- "ViewState": "AgIAAAoAAAAAAAAAAAAzwAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:24:31.071Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 1,
- "Title": "Program.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Program.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\Program.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Program.cs",
- "RelativeToolTip": "Presence.Desktop\\Program.cs",
- "ViewState": "AgIAAAMAAAAAAAAAAAAUwAsAAAATAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:10:52.925Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 8,
- "Title": "MainWindowViewModel.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
- "RelativeToolTip": "Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:10:48.722Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 7,
- "Title": "Presence.Desktop.csproj",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Presence.Desktop.csproj",
- "RelativeDocumentMoniker": "Presence.Desktop\\Presence.Desktop.csproj",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Presence.Desktop.csproj",
- "RelativeToolTip": "Presence.Desktop\\Presence.Desktop.csproj",
- "ViewState": "AgIAABMAAAAAAAAAAABBwB0AAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000758|",
- "WhenOpened": "2024-12-05T09:04:43.624Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 5,
- "Title": "App.axaml.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\App.axaml.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml.cs",
- "RelativeToolTip": "Presence.Desktop\\App.axaml.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAABAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:03:22.727Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 6,
- "Title": "App.axaml",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml",
- "RelativeDocumentMoniker": "Presence.Desktop\\App.axaml",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml",
- "RelativeToolTip": "Presence.Desktop\\App.axaml",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
- "WhenOpened": "2024-12-05T09:03:11.311Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 10,
- "Title": "ViewLocator.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewLocator.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\ViewLocator.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewLocator.cs",
- "RelativeToolTip": "Presence.Desktop\\ViewLocator.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:01:05.122Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 4,
+ "DocumentIndex": 32,
"Title": "MainWindow.axaml",
"DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Views\\MainWindow.axaml",
"RelativeDocumentMoniker": "Presence.Desktop\\Views\\MainWindow.axaml",
"ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Views\\MainWindow.axaml",
"RelativeToolTip": "Presence.Desktop\\Views\\MainWindow.axaml",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
- "WhenOpened": "2024-12-05T08:56:32.154Z"
+ "WhenOpened": "2024-12-19T07:11:11.314Z"
},
{
"$type": "Document",
- "DocumentIndex": 9,
- "Title": "MainWindow.axaml.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Views\\MainWindow.axaml.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\Views\\MainWindow.axaml.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Views\\MainWindow.axaml.cs",
- "RelativeToolTip": "Presence.Desktop\\Views\\MainWindow.axaml.cs",
+ "DocumentIndex": 29,
+ "Title": "ViewModelBase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\ViewModelBase.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\ViewModelBase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\ViewModelBase.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewModels\\ViewModelBase.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T07:00:16.1Z"
+ "WhenOpened": "2024-12-19T07:08:33.603Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 27,
+ "Title": "MainWindowViewModel.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:08:30.847Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 17,
+ "Title": "LocalStaticData.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\LocalStaticData.cs",
+ "RelativeDocumentMoniker": "data\\LocalData\\LocalStaticData.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\LocalStaticData.cs",
+ "RelativeToolTip": "data\\LocalData\\LocalStaticData.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABsAAAAcAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:08:14.737Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 1,
+ "Title": "GroupNotFoundException.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\GroupNotFoundException.cs",
+ "RelativeDocumentMoniker": "data\\Exceptions\\GroupNotFoundException.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\GroupNotFoundException.cs",
+ "RelativeToolTip": "data\\Exceptions\\GroupNotFoundException.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:08:10.901Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 35,
+ "Title": "App.axaml.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\App.axaml.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml.cs",
+ "RelativeToolTip": "Presence.Desktop\\App.axaml.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABoAAAA1AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:08:02.09Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 13,
+ "Title": "GroupViewModel.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\GroupViewModel.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\GroupViewModel.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\GroupViewModel.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewModels\\GroupViewModel.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAE0AAAAfAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:07:50.753Z"
}
]
}
diff --git a/presence/.vs/presence/v17/DocumentLayout.json b/presence/.vs/presence/v17/DocumentLayout.json
index 414a8ed..ec91239 100644
--- a/presence/.vs/presence/v17/DocumentLayout.json
+++ b/presence/.vs/presence/v17/DocumentLayout.json
@@ -3,158 +3,461 @@
"WorkspaceRootPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\",
"Documents": [
{
- "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\iuserrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{240FA6D1-5D9A-4BEB-A458-7C98BE80E7C6}|console_ui\\console_ui.csproj|c:\\users\\user\\desktop\\pr1\\presence\\console_ui\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{240FA6D1-5D9A-4BEB-A458-7C98BE80E7C6}|console_ui\\console_ui.csproj|solutionrelative:console_ui\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\presenceusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\presenceusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\localdata\\entity\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\localdata\\entity\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\exceptions\\groupnotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\exceptions\\groupnotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\sqlgrouprepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\views\\mainwindow.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\views\\mainwindow.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\adminrepositoryimp.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\adminrepositoryimp.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\exceptions\\usernotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\exceptions\\usernotfoundexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}"
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\exceptions\\repositoryexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\exceptions\\repositoryexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\presence.desktop.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\presence.desktop.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\ipresenceusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\ipresenceusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\ipresencerepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\localdata\\entity\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\localdata\\entity\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\adminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\adminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\groupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewmodels\\groupviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewmodels\\groupviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\localdata\\entity\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\localdata\\entity\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\igrouprepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\service\\groupservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\service\\groupservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\localdata\\localstaticdata.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\localdata\\localstaticdata.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\di\\servicecollectionextensions.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\di\\servicecollectionextensions.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\models\\userpresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\models\\userpresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\igroupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\igroupusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\iadminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\iadminusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\iuserusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\iuserusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\usecase\\userusecase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|c:\\users\\user\\desktop\\pr1\\presence\\domain\\request\\addgrouprequest.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9AE8F8C6-D947-4CFB-978D-152433354812}|domain\\domain.csproj|solutionrelative:domain\\request\\addgrouprequest.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{240FA6D1-5D9A-4BEB-A458-7C98BE80E7C6}|console_ui\\console_ui.csproj|c:\\users\\user\\desktop\\pr1\\presence\\console_ui\\groupui.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{240FA6D1-5D9A-4BEB-A458-7C98BE80E7C6}|console_ui\\console_ui.csproj|solutionrelative:console_ui\\groupui.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\models\\presencepresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\models\\presencepresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewmodels\\mainwindowviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewmodels\\mainwindowviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\views\\mainwindow.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\views\\mainwindow.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewmodels\\presenceviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewmodels\\presenceviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewmodels\\viewmodelbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewmodels\\viewmodelbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\viewlocator.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\viewlocator.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\views\\mainwindow.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\views\\mainwindow.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.manifest||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.manifest||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.axaml||{6D5344A2-2FCD-49DE-A09D-6A14FD1B1224}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\app.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\app.axaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|c:\\users\\user\\desktop\\pr1\\presence\\presence.desktop\\models\\grouppresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{9325CC1B-7AA4-45CA-9822-DBFE9BE3AEAB}|Presence.Desktop\\Presence.Desktop.csproj|solutionrelative:presence.desktop\\models\\grouppresenter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\remotedata\\remotedatabase\\dao\\group.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\remotedata\\remotedatabase\\dao\\presence.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\remotedata\\remotedatabase\\dao\\user.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\sqluserrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\userrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\userrepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|c:\\users\\user\\desktop\\pr1\\presence\\data\\repository\\sqlpresencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{3272AF99-318B-49A4-AF98-9DC92F4A169E}|data\\data.csproj|solutionrelative:data\\repository\\sqlpresencerepositoryimpl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
- "VerticalTabListWidth": 379,
+ "VerticalTabListWidth": 170,
"DocumentGroups": [
{
"DockedWidth": 200,
- "SelectedChildIndex": 1,
+ "SelectedChildIndex": 4,
"Children": [
{
- "$type": "Document",
- "DocumentIndex": 3,
- "Title": "SQLGroupRepositoryImpl.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLGroupRepositoryImpl.cs",
- "RelativeDocumentMoniker": "data\\Repository\\SQLGroupRepositoryImpl.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLGroupRepositoryImpl.cs",
- "RelativeToolTip": "data\\Repository\\SQLGroupRepositoryImpl.cs",
- "ViewState": "AgIAABMAAAAAAAAAAAAQwAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:25:15.676Z"
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{e1b7d1f8-9b3c-49b1-8f4f-bfc63a88835d}"
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{34e76e81-ee4a-11d0-ae2e-00a0c90fffc3}"
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{d78612c7-9962-4b83-95d9-268046dad23a}"
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
},
{
"$type": "Document",
"DocumentIndex": 0,
- "Title": "IUserRepository.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IUserRepository.cs",
- "RelativeDocumentMoniker": "data\\Repository\\IUserRepository.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IUserRepository.cs",
- "RelativeToolTip": "data\\Repository\\IUserRepository.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAyAAAAAAAAAA==",
+ "Title": "Program.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\Program.cs",
+ "RelativeDocumentMoniker": "console_ui\\Program.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\Program.cs",
+ "RelativeToolTip": "console_ui\\Program.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAuwAoAAAAFAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:24:39.495Z",
+ "WhenOpened": "2024-12-19T17:10:59.931Z",
"EditorCaption": ""
},
{
"$type": "Document",
- "DocumentIndex": 2,
+ "DocumentIndex": 5,
+ "Title": "AdminRepositoryImp.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\AdminRepositoryImp.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\AdminRepositoryImp.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\AdminRepositoryImp.cs",
+ "RelativeToolTip": "data\\Repository\\AdminRepositoryImp.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:26:25.929Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "UserNotFoundException.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\UserNotFoundException.cs",
+ "RelativeDocumentMoniker": "data\\Exceptions\\UserNotFoundException.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\UserNotFoundException.cs",
+ "RelativeToolTip": "data\\Exceptions\\UserNotFoundException.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:25:41.991Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "RepositoryException.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\RepositoryException.cs",
+ "RelativeDocumentMoniker": "data\\Exceptions\\RepositoryException.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\RepositoryException.cs",
+ "RelativeToolTip": "data\\Exceptions\\RepositoryException.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:25:35.312Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 9,
"Title": "IPresenceRepository.cs",
"DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IPresenceRepository.cs",
"RelativeDocumentMoniker": "data\\Repository\\IPresenceRepository.cs",
"ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IPresenceRepository.cs",
"RelativeToolTip": "data\\Repository\\IPresenceRepository.cs",
- "ViewState": "AgIAAAoAAAAAAAAAAAAzwAAAAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:24:31.071Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 1,
- "Title": "Program.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Program.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\Program.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Program.cs",
- "RelativeToolTip": "Presence.Desktop\\Program.cs",
- "ViewState": "AgIAAAMAAAAAAAAAAAAUwAsAAAATAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:10:52.925Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 8,
- "Title": "MainWindowViewModel.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
- "RelativeToolTip": "Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:10:48.722Z"
+ "WhenOpened": "2024-12-19T09:24:12.447Z"
},
{
"$type": "Document",
- "DocumentIndex": 7,
- "Title": "Presence.Desktop.csproj",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Presence.Desktop.csproj",
- "RelativeDocumentMoniker": "Presence.Desktop\\Presence.Desktop.csproj",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Presence.Desktop.csproj",
- "RelativeToolTip": "Presence.Desktop\\Presence.Desktop.csproj",
- "ViewState": "AgIAABMAAAAAAAAAAABBwB0AAAAAAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000758|",
- "WhenOpened": "2024-12-05T09:04:43.624Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 5,
- "Title": "App.axaml.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\App.axaml.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml.cs",
- "RelativeToolTip": "Presence.Desktop\\App.axaml.cs",
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAABAAAAAAAAAA==",
+ "DocumentIndex": 14,
+ "Title": "User.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\User.cs",
+ "RelativeDocumentMoniker": "data\\LocalData\\Entity\\User.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\User.cs",
+ "RelativeToolTip": "data\\LocalData\\Entity\\User.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAxAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:03:22.727Z"
- },
- {
- "$type": "Document",
- "DocumentIndex": 6,
- "Title": "App.axaml",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml",
- "RelativeDocumentMoniker": "Presence.Desktop\\App.axaml",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml",
- "RelativeToolTip": "Presence.Desktop\\App.axaml",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
- "WhenOpened": "2024-12-05T09:03:11.311Z"
+ "WhenOpened": "2024-12-19T09:08:04.438Z"
},
{
"$type": "Document",
"DocumentIndex": 10,
+ "Title": "Presence.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\Presence.cs",
+ "RelativeDocumentMoniker": "data\\LocalData\\Entity\\Presence.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\Presence.cs",
+ "RelativeToolTip": "data\\LocalData\\Entity\\Presence.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA8AAAABAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:07:30.87Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "Group.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\Group.cs",
+ "RelativeDocumentMoniker": "data\\LocalData\\Entity\\Group.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\Entity\\Group.cs",
+ "RelativeToolTip": "data\\LocalData\\Entity\\Group.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAsAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T09:07:01.035Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 23,
+ "Title": "UserUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\UserUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\UserUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\UserUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\UserUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:52:05.075Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 1,
+ "Title": "PresenceUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\PresenceUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\PresenceUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\PresenceUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\PresenceUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAALIAAAArAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:54.176Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 22,
+ "Title": "IUserUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IUserUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\IUserUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IUserUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\IUserUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:52.927Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 8,
+ "Title": "IPresenceUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IPresenceUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\IPresenceUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IPresenceUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\IPresenceUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:51.493Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 21,
+ "Title": "IAdminUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IAdminUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\IAdminUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IAdminUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\IAdminUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:49.193Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 12,
+ "Title": "GroupUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\GroupUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\GroupUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\GroupUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\GroupUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAkwBoAAAAJAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:47:29.626Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 11,
+ "Title": "AdminUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\AdminUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\AdminUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\AdminUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\AdminUseCase.cs",
+ "ViewState": "AgIAACQAAAAAAAAAAAAEwB0AAAAtAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:41.22Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 24,
+ "Title": "AddGroupRequest.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\Request\\AddGroupRequest.cs",
+ "RelativeDocumentMoniker": "domain\\Request\\AddGroupRequest.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\Request\\AddGroupRequest.cs",
+ "RelativeToolTip": "domain\\Request\\AddGroupRequest.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:51:27.139Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 20,
+ "Title": "IGroupUseCase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IGroupUseCase.cs",
+ "RelativeDocumentMoniker": "domain\\UseCase\\IGroupUseCase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\UseCase\\IGroupUseCase.cs",
+ "RelativeToolTip": "domain\\UseCase\\IGroupUseCase.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAABEAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:47:56.11Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 15,
+ "Title": "IGroupRepository.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IGroupRepository.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\IGroupRepository.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\IGroupRepository.cs",
+ "RelativeToolTip": "data\\Repository\\IGroupRepository.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABEAAAANAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:44:18.211Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 16,
+ "Title": "GroupService.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\Service\\GroupService.cs",
+ "RelativeDocumentMoniker": "domain\\Service\\GroupService.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\Service\\GroupService.cs",
+ "RelativeToolTip": "domain\\Service\\GroupService.cs",
+ "ViewState": "AgIAABcAAAAAAAAAAAAvwCQAAAAoAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:43:24.141Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 25,
+ "Title": "GroupUI.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\GroupUI.cs",
+ "RelativeDocumentMoniker": "console_ui\\GroupUI.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\GroupUI.cs",
+ "RelativeToolTip": "console_ui\\GroupUI.cs",
+ "ViewState": "AgIAAAsAAAAAAAAAAAAxwAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:42:40.25Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 26,
+ "Title": "PresencePresenter.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\PresencePresenter.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\Models\\PresencePresenter.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\PresencePresenter.cs",
+ "RelativeToolTip": "Presence.Desktop\\Models\\PresencePresenter.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:37:05.722Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 30,
"Title": "ViewLocator.cs",
"DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewLocator.cs",
"RelativeDocumentMoniker": "Presence.Desktop\\ViewLocator.cs",
@@ -162,30 +465,259 @@
"RelativeToolTip": "Presence.Desktop\\ViewLocator.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T09:01:05.122Z"
+ "WhenOpened": "2024-12-19T07:31:21.684Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 31,
+ "Title": "Program.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Program.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\Program.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Program.cs",
+ "RelativeToolTip": "Presence.Desktop\\Program.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:31:20.106Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 33,
+ "Title": "app.manifest",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\app.manifest",
+ "RelativeDocumentMoniker": "Presence.Desktop\\app.manifest",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\app.manifest",
+ "RelativeToolTip": "Presence.Desktop\\app.manifest",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001203|",
+ "WhenOpened": "2024-12-19T07:31:18.611Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 34,
+ "Title": "App.axaml",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml",
+ "RelativeDocumentMoniker": "Presence.Desktop\\App.axaml",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml",
+ "RelativeToolTip": "Presence.Desktop\\App.axaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2024-12-19T07:31:09.897Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 28,
+ "Title": "PresenceViewModel.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\PresenceViewModel.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\PresenceViewModel.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\PresenceViewModel.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewModels\\PresenceViewModel.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:27:55.706Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 19,
+ "Title": "UserPresenter.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\UserPresenter.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\Models\\UserPresenter.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\UserPresenter.cs",
+ "RelativeToolTip": "Presence.Desktop\\Models\\UserPresenter.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAeAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:22:59.432Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 36,
+ "Title": "GroupPresenter.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\GroupPresenter.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\Models\\GroupPresenter.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Models\\GroupPresenter.cs",
+ "RelativeToolTip": "Presence.Desktop\\Models\\GroupPresenter.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA8AAAABAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:22:43.957Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 18,
+ "Title": "ServiceCollectionExtensions.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\DI\\ServiceCollectionExtensions.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\DI\\ServiceCollectionExtensions.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\DI\\ServiceCollectionExtensions.cs",
+ "RelativeToolTip": "Presence.Desktop\\DI\\ServiceCollectionExtensions.cs",
+ "ViewState": "AgIAAAIAAAAAAAAAAAAswBoAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:18:31.188Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 37,
+ "Title": "Group.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
+ "RelativeDocumentMoniker": "data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
+ "RelativeToolTip": "data\\RemoteData\\RemoteDataBase\\DAO\\Group.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:13:43.246Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 38,
+ "Title": "Presence.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
+ "RelativeDocumentMoniker": "data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
+ "RelativeToolTip": "data\\RemoteData\\RemoteDataBase\\DAO\\Presence.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:13:40.436Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 39,
+ "Title": "User.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
+ "RelativeDocumentMoniker": "data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
+ "RelativeToolTip": "data\\RemoteData\\RemoteDataBase\\DAO\\User.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:13:34.952Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 41,
+ "Title": "UserRepositoryImpl.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\UserRepositoryImpl.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\UserRepositoryImpl.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\UserRepositoryImpl.cs",
+ "RelativeToolTip": "data\\Repository\\UserRepositoryImpl.cs",
+ "ViewState": "AgIAABYAAAAAAAAAAAAlwC0AAAAqAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:12:48.068Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 40,
+ "Title": "SQLUserRepositoryImpl.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLUserRepositoryImpl.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\SQLUserRepositoryImpl.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLUserRepositoryImpl.cs",
+ "RelativeToolTip": "data\\Repository\\SQLUserRepositoryImpl.cs",
+ "ViewState": "AgIAADwAAAAAAAAAAAAowBgAAAAdAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:12:45.334Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 42,
+ "Title": "SQLPresenceRepositoryImpl.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLPresenceRepositoryImpl.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\SQLPresenceRepositoryImpl.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLPresenceRepositoryImpl.cs",
+ "RelativeToolTip": "data\\Repository\\SQLPresenceRepositoryImpl.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:12:43.082Z"
},
{
"$type": "Document",
"DocumentIndex": 4,
+ "Title": "SQLGroupRepositoryImpl.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLGroupRepositoryImpl.cs",
+ "RelativeDocumentMoniker": "data\\Repository\\SQLGroupRepositoryImpl.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Repository\\SQLGroupRepositoryImpl.cs",
+ "RelativeToolTip": "data\\Repository\\SQLGroupRepositoryImpl.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAA2AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:12:27.096Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 32,
"Title": "MainWindow.axaml",
"DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Views\\MainWindow.axaml",
"RelativeDocumentMoniker": "Presence.Desktop\\Views\\MainWindow.axaml",
"ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Views\\MainWindow.axaml",
"RelativeToolTip": "Presence.Desktop\\Views\\MainWindow.axaml",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
- "WhenOpened": "2024-12-05T08:56:32.154Z"
+ "WhenOpened": "2024-12-19T07:11:11.314Z"
},
{
"$type": "Document",
- "DocumentIndex": 9,
- "Title": "MainWindow.axaml.cs",
- "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Views\\MainWindow.axaml.cs",
- "RelativeDocumentMoniker": "Presence.Desktop\\Views\\MainWindow.axaml.cs",
- "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Views\\MainWindow.axaml.cs",
- "RelativeToolTip": "Presence.Desktop\\Views\\MainWindow.axaml.cs",
+ "DocumentIndex": 29,
+ "Title": "ViewModelBase.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\ViewModelBase.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\ViewModelBase.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\ViewModelBase.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewModels\\ViewModelBase.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2024-12-05T07:00:16.1Z"
+ "WhenOpened": "2024-12-19T07:08:33.603Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 27,
+ "Title": "MainWindowViewModel.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewModels\\MainWindowViewModel.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:08:30.847Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 17,
+ "Title": "LocalStaticData.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\LocalStaticData.cs",
+ "RelativeDocumentMoniker": "data\\LocalData\\LocalStaticData.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\LocalData\\LocalStaticData.cs",
+ "RelativeToolTip": "data\\LocalData\\LocalStaticData.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABsAAAAcAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:08:14.737Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 3,
+ "Title": "GroupNotFoundException.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\GroupNotFoundException.cs",
+ "RelativeDocumentMoniker": "data\\Exceptions\\GroupNotFoundException.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\Exceptions\\GroupNotFoundException.cs",
+ "RelativeToolTip": "data\\Exceptions\\GroupNotFoundException.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:08:10.901Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 35,
+ "Title": "App.axaml.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\App.axaml.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\App.axaml.cs",
+ "RelativeToolTip": "Presence.Desktop\\App.axaml.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABoAAAA1AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:08:02.09Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 13,
+ "Title": "GroupViewModel.cs",
+ "DocumentMoniker": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\GroupViewModel.cs",
+ "RelativeDocumentMoniker": "Presence.Desktop\\ViewModels\\GroupViewModel.cs",
+ "ToolTip": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\ViewModels\\GroupViewModel.cs",
+ "RelativeToolTip": "Presence.Desktop\\ViewModels\\GroupViewModel.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAE0AAAAfAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2024-12-19T07:07:50.753Z"
}
]
}
diff --git a/presence/Presence.Desktop/App.axaml.cs b/presence/Presence.Desktop/App.axaml.cs
index 1ac54ab..6b5d1ba 100644
--- a/presence/Presence.Desktop/App.axaml.cs
+++ b/presence/Presence.Desktop/App.axaml.cs
@@ -2,6 +2,7 @@ using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using Microsoft.Extensions.DependencyInjection;
+using Presence.Desktop.DI;
using Presence.Desktop.ViewModels;
using Presence.Desktop.Views;
@@ -17,13 +18,15 @@ namespace Presence.Desktop
public override void OnFrameworkInitializationCompleted()
{
var serviceCollection = new ServiceCollection();
- //serviceCollection.AddCommonService();
+ serviceCollection.AddCommonService();
+ var services = serviceCollection.BuildServiceProvider();
+ var mainViewModel = services.GetRequiredService();
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
- desktop.MainWindow = new MainWindow
+ desktop.MainWindow = new MainWindow()
{
- DataContext = new MainWindowViewModel(),
+ DataContext = mainViewModel
};
}
diff --git a/presence/Presence.Desktop/DI/ServiceCollectionExtensions.cs b/presence/Presence.Desktop/DI/ServiceCollectionExtensions.cs
new file mode 100644
index 0000000..3034298
--- /dev/null
+++ b/presence/Presence.Desktop/DI/ServiceCollectionExtensions.cs
@@ -0,0 +1,26 @@
+using Demo.Data.RemoteData.RemoteDataBase;
+using Demo.Data.Repository;
+using domain.Service;
+using domain.UseCase;
+using Microsoft.Extensions.DependencyInjection;
+using Presence.Desktop.ViewModels;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Presence.Desktop.DI
+{
+ public static class ServiceColletionExtensions
+ {
+ public static void AddCommonService(this IServiceCollection collection)
+ {
+ collection
+ .AddDbContext()
+ .AddSingleton()
+ .AddTransient()
+ .AddTransient();
+ }
+ }
+}
diff --git a/presence/Presence.Desktop/Models/GroupPresenter.cs b/presence/Presence.Desktop/Models/GroupPresenter.cs
new file mode 100644
index 0000000..78a23d3
--- /dev/null
+++ b/presence/Presence.Desktop/Models/GroupPresenter.cs
@@ -0,0 +1,16 @@
+using Presence.Desktop.ViewModels;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Presence.Desktop.Models
+{
+ public class GroupPresenter
+ {
+ public int Id { get; set; }
+ public string Name { get; set; }
+ public IEnumerable? Users { get; set; } = null;
+ }
+}
diff --git a/presence/Presence.Desktop/Models/PresencePresenter.cs b/presence/Presence.Desktop/Models/PresencePresenter.cs
new file mode 100644
index 0000000..8e1d009
--- /dev/null
+++ b/presence/Presence.Desktop/Models/PresencePresenter.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Presence.Desktop.Models
+{
+ public class PresencePresenter
+ {
+
+ }
+}
diff --git a/presence/Presence.Desktop/Models/UserPresenter.cs b/presence/Presence.Desktop/Models/UserPresenter.cs
new file mode 100644
index 0000000..16c8a31
--- /dev/null
+++ b/presence/Presence.Desktop/Models/UserPresenter.cs
@@ -0,0 +1,15 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Presence.Desktop.Models
+{
+ public class UserPresenter
+ {
+ public int Id { get; set; }
+ public string Name { get; set; }
+ public GroupPresenter Group { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/presence/Presence.Desktop/Presence.Desktop.csproj b/presence/Presence.Desktop/Presence.Desktop.csproj
index 571cfdf..33feb38 100644
--- a/presence/Presence.Desktop/Presence.Desktop.csproj
+++ b/presence/Presence.Desktop/Presence.Desktop.csproj
@@ -9,7 +9,6 @@
-
@@ -26,4 +25,9 @@
+
+
+
+
+
diff --git a/presence/Presence.Desktop/ViewModels/GroupViewModel.cs b/presence/Presence.Desktop/ViewModels/GroupViewModel.cs
new file mode 100644
index 0000000..a712ec1
--- /dev/null
+++ b/presence/Presence.Desktop/ViewModels/GroupViewModel.cs
@@ -0,0 +1,123 @@
+using domain.UseCase;
+using Presence.Desktop.Models;
+using ReactiveUI;
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.Reactive.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Input;
+
+namespace Presence.Desktop.ViewModels
+{
+ public class GroupViewModel : ViewModelBase, IRoutableViewModel
+ {
+ public ICommand OpenFileDialog { get; }
+ public Interaction SelectFileInteraction => _SelectFileInteraction;
+ public readonly Interaction _SelectFileInteraction;
+ private string? _selectedFile;
+ public string? SelectedFile
+ {
+ get => _selectedFile;
+ set => this.RaiseAndSetIfChanged(ref _selectedFile, value);
+ }
+
+ private readonly List _groupPresentersDataSource = new List();
+ private ObservableCollection _groups;
+ public ObservableCollection Groups => _groups;
+
+ public GroupPresenter? SelectedGroupItem
+ {
+ get => _selectedGroupItem;
+ set => this.RaiseAndSetIfChanged(ref _selectedGroupItem, value);
+ }
+
+ private GroupPresenter? _selectedGroupItem;
+
+
+
+ private IGroupUseCase _groupUseCase;
+ public ObservableCollection Users { get => _users; }
+ public ObservableCollection _users;
+ public GroupViewModel(IGroupUseCase groupUseCase)
+ {
+ foreach (var item in groupUseCase.GetGroupsWithStudents())
+ {
+ GroupPresenter groupPresenter = new GroupPresenter
+ {
+ Id = item.Id,
+ Name = item.Name,
+ Users = item.User?.Select(user => new UserPresenter
+ {
+ Name = user.FIO,
+ Id = user.Id,
+ Group = new GroupPresenter { Id = item.Id, Name = item.Name }
+ }
+ ).ToList()
+ };
+ _groupPresentersDataSource.Add(groupPresenter);
+ }
+ _groups = new ObservableCollection(_groupPresentersDataSource);
+
+ _groupUseCase = groupUseCase;
+ _SelectFileInteraction = new Interaction();
+ OpenFileDialog = ReactiveCommand.CreateFromTask(SelectFile);
+ _users = new ObservableCollection();
+
+ RefreshGroups();
+ this.WhenAnyValue(vm => vm.SelectedGroupItem)
+ .Subscribe(_ =>
+ {
+ RefreshGroups();
+ SetUsers();
+ });
+ }
+
+ private void SetUsers()
+ {
+ if (SelectedGroupItem == null) return;
+ if (SelectedGroupItem.Users == null) return;
+ Users.Clear();
+ GroupPresenter group = _groups.First(it => it.Id == SelectedGroupItem.Id);
+ if (group.Users == null) return;
+ foreach (var item in group.Users)
+ {
+ Users.Add(item);
+ }
+ }
+
+
+ private void RefreshGroups()
+ {
+ _groupPresentersDataSource.Clear();
+ foreach (var item in _groupUseCase.GetGroupsWithStudents())
+ {
+ GroupPresenter groupPresenter = new GroupPresenter
+ {
+ Id = item.Id,
+ Name = item.Name,
+ Users = item.User?.Select(user => new UserPresenter
+ {
+ Name = user.FIO,
+ Id = user.Id,
+ Group = new GroupPresenter { Id = item.Id, Name = item.Name }
+ }
+ ).ToList()
+ };
+ _groupPresentersDataSource.Add(groupPresenter);
+ }
+ _groups = new ObservableCollection(_groupPresentersDataSource);
+ }
+ public string? UrlPathSegment { get; }
+ public IScreen HostScreen { get; }
+
+ private async Task SelectFile()
+ {
+ Console.WriteLine("clock");
+ SelectedFile = await _SelectFileInteraction.Handle("Chose csv file");
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/presence/Presence.Desktop/ViewModels/MainWindowViewModel.cs b/presence/Presence.Desktop/ViewModels/MainWindowViewModel.cs
index b022507..82c680e 100644
--- a/presence/Presence.Desktop/ViewModels/MainWindowViewModel.cs
+++ b/presence/Presence.Desktop/ViewModels/MainWindowViewModel.cs
@@ -1,7 +1,18 @@
-namespace Presence.Desktop.ViewModels
+using domain.UseCase;
+using Microsoft.Extensions.DependencyInjection;
+using ReactiveUI;
+using System;
+
+namespace Presence.Desktop.ViewModels
{
- public class MainWindowViewModel : ViewModelBase
+ public class MainWindowViewModel : ViewModelBase, IScreen
{
- public string Greeting { get; } = "Welcome to Avalonia!";
+ public RoutingState Router { get; } = new RoutingState();
+
+ public MainWindowViewModel(IServiceProvider serviceProvider)
+ {
+ var groupViewModel = serviceProvider.GetRequiredService();
+ Router.Navigate.Execute(groupViewModel);
+ }
}
-}
+}
\ No newline at end of file
diff --git a/presence/Presence.Desktop/ViewModels/PresenceViewModel.cs b/presence/Presence.Desktop/ViewModels/PresenceViewModel.cs
new file mode 100644
index 0000000..1eead8a
--- /dev/null
+++ b/presence/Presence.Desktop/ViewModels/PresenceViewModel.cs
@@ -0,0 +1,17 @@
+using ReactiveUI;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Presence.Desktop.ViewModels
+{
+ public class PresenceViewModel : ViewModelBase, IRoutableViewModel
+ {
+ public string? UrlPathSegment { get; }
+ public IScreen HostScreen { get; }
+
+
+ }
+}
\ No newline at end of file
diff --git a/presence/Presence.Desktop/Views/MainWindow.axaml.cs b/presence/Presence.Desktop/Views/MainWindow.axaml.cs
index 2619e70..8bd5420 100644
--- a/presence/Presence.Desktop/Views/MainWindow.axaml.cs
+++ b/presence/Presence.Desktop/Views/MainWindow.axaml.cs
@@ -1,4 +1,4 @@
-using Avalonia.Controls;
+using Avalonia.Controls;
namespace Presence.Desktop.Views
{
diff --git a/presence/Presence.Desktop/obj/Debug/net8.0/Avalonia/Resources.Inputs.cache b/presence/Presence.Desktop/obj/Debug/net8.0/Avalonia/Resources.Inputs.cache
index 3d34c27..56e3e7b 100644
--- a/presence/Presence.Desktop/obj/Debug/net8.0/Avalonia/Resources.Inputs.cache
+++ b/presence/Presence.Desktop/obj/Debug/net8.0/Avalonia/Resources.Inputs.cache
@@ -1 +1 @@
-9b978aa59f9e04625ccdef1d7d730a685eee19fa15f4c554edbc83b4309e86b1
+5880c68a308deb23dd440f217c4c064e928857c286d2803afa0f0a468ca227bf
diff --git a/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.assets.cache b/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.assets.cache
index d0d6cdf..a27beae 100644
Binary files a/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.assets.cache and b/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.assets.cache differ
diff --git a/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.AssemblyReference.cache b/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.AssemblyReference.cache
index 60cbad2..2d1453e 100644
Binary files a/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.AssemblyReference.cache and b/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.AssemblyReference.cache differ
diff --git a/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.CoreCompileInputs.cache b/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.CoreCompileInputs.cache
index 6ddf1ba..2e3fe97 100644
--- a/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.CoreCompileInputs.cache
+++ b/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-e4576cf7af054bc76c836e6a6a83d5438f606b6548a7aa9a1eb898a00907cb60
+c4e5da32542a866542b64f608baa9c2d2acc105623d197efbdc550a90748fdb3
diff --git a/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.FileListAbsolute.txt b/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.FileListAbsolute.txt
index c6aa14f..6d19030 100644
--- a/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.FileListAbsolute.txt
+++ b/presence/Presence.Desktop/obj/Debug/net8.0/Presence.Desktop.csproj.FileListAbsolute.txt
@@ -71,3 +71,6 @@ C:\Users\User\Desktop\pr1\presence\Presence.Desktop\obj\Debug\net8.0\refint\Aval
C:\Users\User\Desktop\pr1\presence\Presence.Desktop\obj\Debug\net8.0\Presence.C94E1B86.Up2Date
C:\Users\User\Desktop\pr1\presence\Presence.Desktop\obj\Debug\net8.0\Presence.Desktop.genruntimeconfig.cache
C:\Users\User\Desktop\pr1\presence\Presence.Desktop\obj\Debug\net8.0\ref\Presence.Desktop.dll
+C:\Users\User\Desktop\pr1\presence\Presence.Desktop\obj\Debug\net8.0\Presence.Desktop.dll
+C:\Users\User\Desktop\pr1\presence\Presence.Desktop\obj\Debug\net8.0\refint\Presence.Desktop.dll
+C:\Users\User\Desktop\pr1\presence\Presence.Desktop\obj\Debug\net8.0\Presence.Desktop.pdb
diff --git a/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.dgspec.json b/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.dgspec.json
index d98be05..8a05d19 100644
--- a/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.dgspec.json
+++ b/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.dgspec.json
@@ -4,6 +4,158 @@
"C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Presence.Desktop.csproj": {}
},
"projects": {
+ "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
+ "version": "1.0.0",
+ "restore": {
+ "projectUniqueName": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj",
+ "projectName": "data",
+ "projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj",
+ "packagesPath": "C:\\Users\\User\\.nuget\\packages\\",
+ "outputPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\obj\\",
+ "projectStyle": "PackageReference",
+ "fallbackFolders": [
+ "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
+ ],
+ "configFilePaths": [
+ "C:\\Users\\User\\AppData\\Roaming\\NuGet\\NuGet.Config",
+ "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
+ "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
+ ],
+ "originalTargetFrameworks": [
+ "net8.0"
+ ],
+ "sources": {
+ "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
+ "C:\\Program Files\\dotnet\\library-packs": {},
+ "https://api.nuget.org/v3/index.json": {}
+ },
+ "frameworks": {
+ "net8.0": {
+ "targetAlias": "net8.0",
+ "projectReferences": {}
+ }
+ },
+ "warningProperties": {
+ "warnAsError": [
+ "NU1605"
+ ]
+ },
+ "restoreAuditProperties": {
+ "enableAudit": "true",
+ "auditLevel": "low",
+ "auditMode": "all"
+ },
+ "SdkAnalysisLevel": "9.0.100"
+ },
+ "frameworks": {
+ "net8.0": {
+ "targetAlias": "net8.0",
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": {
+ "target": "Package",
+ "version": "[8.0.10, )"
+ },
+ "Microsoft.EntityFrameworkCore.Design": {
+ "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
+ "suppressParent": "All",
+ "target": "Package",
+ "version": "[8.0.10, )"
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL": {
+ "target": "Package",
+ "version": "[8.0.10, )"
+ }
+ },
+ "imports": [
+ "net461",
+ "net462",
+ "net47",
+ "net471",
+ "net472",
+ "net48",
+ "net481"
+ ],
+ "assetTargetFallback": true,
+ "warn": true,
+ "frameworkReferences": {
+ "Microsoft.NETCore.App": {
+ "privateAssets": "all"
+ }
+ },
+ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.100/PortableRuntimeIdentifierGraph.json"
+ }
+ }
+ },
+ "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj": {
+ "version": "1.0.0",
+ "restore": {
+ "projectUniqueName": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj",
+ "projectName": "domain",
+ "projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj",
+ "packagesPath": "C:\\Users\\User\\.nuget\\packages\\",
+ "outputPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\obj\\",
+ "projectStyle": "PackageReference",
+ "fallbackFolders": [
+ "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
+ ],
+ "configFilePaths": [
+ "C:\\Users\\User\\AppData\\Roaming\\NuGet\\NuGet.Config",
+ "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
+ "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
+ ],
+ "originalTargetFrameworks": [
+ "net8.0"
+ ],
+ "sources": {
+ "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
+ "C:\\Program Files\\dotnet\\library-packs": {},
+ "https://api.nuget.org/v3/index.json": {}
+ },
+ "frameworks": {
+ "net8.0": {
+ "targetAlias": "net8.0",
+ "projectReferences": {
+ "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
+ "projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj"
+ }
+ }
+ }
+ },
+ "warningProperties": {
+ "warnAsError": [
+ "NU1605"
+ ]
+ },
+ "restoreAuditProperties": {
+ "enableAudit": "true",
+ "auditLevel": "low",
+ "auditMode": "all"
+ },
+ "SdkAnalysisLevel": "9.0.100"
+ },
+ "frameworks": {
+ "net8.0": {
+ "targetAlias": "net8.0",
+ "imports": [
+ "net461",
+ "net462",
+ "net47",
+ "net471",
+ "net472",
+ "net48",
+ "net481"
+ ],
+ "assetTargetFallback": true,
+ "warn": true,
+ "frameworkReferences": {
+ "Microsoft.NETCore.App": {
+ "privateAssets": "all"
+ }
+ },
+ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.100/PortableRuntimeIdentifierGraph.json"
+ }
+ }
+ },
"C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Presence.Desktop.csproj": {
"version": "1.0.0",
"restore": {
@@ -32,7 +184,14 @@
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
- "projectReferences": {}
+ "projectReferences": {
+ "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
+ "projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj"
+ },
+ "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj": {
+ "projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj"
+ }
+ }
}
},
"warningProperties": {
diff --git a/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.g.props b/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.g.props
index 331d94e..fa8cb6b 100644
--- a/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.g.props
+++ b/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.g.props
@@ -15,6 +15,7 @@
+
diff --git a/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.g.targets b/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.g.targets
index 7e5707c..ae359f2 100644
--- a/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.g.targets
+++ b/presence/Presence.Desktop/obj/Presence.Desktop.csproj.nuget.g.targets
@@ -2,6 +2,8 @@
+
+
diff --git a/presence/Presence.Desktop/obj/project.assets.json b/presence/Presence.Desktop/obj/project.assets.json
index e5fd2ca..7918eef 100644
--- a/presence/Presence.Desktop/obj/project.assets.json
+++ b/presence/Presence.Desktop/obj/project.assets.json
@@ -478,6 +478,147 @@
"lib/net5.0/MicroCom.Runtime.dll": {}
}
},
+ "Microsoft.EntityFrameworkCore/8.0.10": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Analyzers": "8.0.10",
+ "Microsoft.Extensions.Caching.Memory": "8.0.1",
+ "Microsoft.Extensions.Logging": "8.0.1"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {}
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": {
+ "type": "package",
+ "compile": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
+ "related": ".xml"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": {
+ "type": "package",
+ "compile": {
+ "lib/netstandard2.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard2.0/_._": {}
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Relational/8.0.10": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
+ "related": ".xml"
+ }
+ }
+ },
+ "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net6.0/_._": {}
+ }
+ },
+ "Microsoft.Extensions.Caching.Memory/8.0.1": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.Extensions.Caching.Abstractions": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Options": "8.0.2",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net6.0/_._": {}
+ }
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net6.0/_._": {}
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.1": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net6.0/_._": {}
+ }
+ },
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.0": {
"type": "package",
"compile": {
@@ -494,6 +635,117 @@
"buildTransitive/net8.0/_._": {}
}
},
+ "Microsoft.Extensions.Logging/8.0.1": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection": "8.0.1",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Options": "8.0.2"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.Extensions.Logging.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Logging.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net6.0/_._": {}
+ }
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.2": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets": {}
+ }
+ },
+ "Microsoft.Extensions.Options/8.0.2": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "compile": {
+ "lib/net8.0/Microsoft.Extensions.Options.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Options.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net6.0/Microsoft.Extensions.Options.targets": {}
+ }
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "type": "package",
+ "compile": {
+ "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
+ "related": ".xml"
+ }
+ },
+ "build": {
+ "buildTransitive/net6.0/_._": {}
+ }
+ },
+ "Npgsql/8.0.5": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.0"
+ },
+ "compile": {
+ "lib/net8.0/Npgsql.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Npgsql.dll": {
+ "related": ".xml"
+ }
+ }
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": {
+ "type": "package",
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Relational": "8.0.10",
+ "Npgsql": "8.0.5"
+ },
+ "compile": {
+ "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
+ "related": ".xml"
+ }
+ }
+ },
"ReactiveUI/20.1.1": {
"type": "package",
"dependencies": {
@@ -679,6 +931,33 @@
"runtime": {
"lib/net8.0/Tmds.DBus.Protocol.dll": {}
}
+ },
+ "data/1.0.0": {
+ "type": "project",
+ "framework": ".NETCoreApp,Version=v8.0",
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10"
+ },
+ "compile": {
+ "bin/placeholder/data.dll": {}
+ },
+ "runtime": {
+ "bin/placeholder/data.dll": {}
+ }
+ },
+ "domain/1.0.0": {
+ "type": "project",
+ "framework": ".NETCoreApp,Version=v8.0",
+ "dependencies": {
+ "data": "1.0.0"
+ },
+ "compile": {
+ "bin/placeholder/domain.dll": {}
+ },
+ "runtime": {
+ "bin/placeholder/domain.dll": {}
+ }
}
}
},
@@ -1349,6 +1628,189 @@
"microcom.runtime.nuspec"
]
},
+ "Microsoft.EntityFrameworkCore/8.0.10": {
+ "sha512": "PPkQdIqfR1nU3n6YgGGDk8G+eaYbaAKM1AzIQtlPNTKf10Osg3N9T+iK9AlnSA/ujsK00flPpFHVfJrbuBFS1A==",
+ "type": "package",
+ "path": "microsoft.entityframeworkcore/8.0.10",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "PACKAGE.md",
+ "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props",
+ "lib/net8.0/Microsoft.EntityFrameworkCore.dll",
+ "lib/net8.0/Microsoft.EntityFrameworkCore.xml",
+ "microsoft.entityframeworkcore.8.0.10.nupkg.sha512",
+ "microsoft.entityframeworkcore.nuspec"
+ ]
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": {
+ "sha512": "FV0QlcX9INY4kAD2o72uPtyOh0nZut2jB11Jf9mNYBtHay8gDLe+x4AbXFwuQg+eSvofjT7naV82e827zGfyMg==",
+ "type": "package",
+ "path": "microsoft.entityframeworkcore.abstractions/8.0.10",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "PACKAGE.md",
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll",
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml",
+ "microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512",
+ "microsoft.entityframeworkcore.abstractions.nuspec"
+ ]
+ },
+ "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": {
+ "sha512": "51KkPIc0EMv/gVXhPIUi6cwJE9Mvh+PLr4Lap4naLcsoGZ0lF2SvOPgUUprwRV3MnN7nyD1XPhT5RJ/p+xFAXw==",
+ "type": "package",
+ "path": "microsoft.entityframeworkcore.analyzers/8.0.10",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll",
+ "docs/PACKAGE.md",
+ "lib/netstandard2.0/_._",
+ "microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512",
+ "microsoft.entityframeworkcore.analyzers.nuspec"
+ ]
+ },
+ "Microsoft.EntityFrameworkCore.Relational/8.0.10": {
+ "sha512": "OefBEE47kGKPRPV3OT+FAW6o5BFgLk2D9EoeWVy7NbOepzUneayLQxbVE098FfedTyMwxvZQoDD9LrvZc3MadA==",
+ "type": "package",
+ "path": "microsoft.entityframeworkcore.relational/8.0.10",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "PACKAGE.md",
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll",
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml",
+ "microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512",
+ "microsoft.entityframeworkcore.relational.nuspec"
+ ]
+ },
+ "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
+ "sha512": "3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==",
+ "type": "package",
+ "path": "microsoft.extensions.caching.abstractions/8.0.0",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "LICENSE.TXT",
+ "PACKAGE.md",
+ "THIRD-PARTY-NOTICES.TXT",
+ "buildTransitive/net461/Microsoft.Extensions.Caching.Abstractions.targets",
+ "buildTransitive/net462/_._",
+ "buildTransitive/net6.0/_._",
+ "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets",
+ "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll",
+ "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml",
+ "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.dll",
+ "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.xml",
+ "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.dll",
+ "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.xml",
+ "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll",
+ "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml",
+ "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll",
+ "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml",
+ "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512",
+ "microsoft.extensions.caching.abstractions.nuspec",
+ "useSharedDesignerContext.txt"
+ ]
+ },
+ "Microsoft.Extensions.Caching.Memory/8.0.1": {
+ "sha512": "HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==",
+ "type": "package",
+ "path": "microsoft.extensions.caching.memory/8.0.1",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "LICENSE.TXT",
+ "PACKAGE.md",
+ "THIRD-PARTY-NOTICES.TXT",
+ "buildTransitive/net461/Microsoft.Extensions.Caching.Memory.targets",
+ "buildTransitive/net462/_._",
+ "buildTransitive/net6.0/_._",
+ "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets",
+ "lib/net462/Microsoft.Extensions.Caching.Memory.dll",
+ "lib/net462/Microsoft.Extensions.Caching.Memory.xml",
+ "lib/net6.0/Microsoft.Extensions.Caching.Memory.dll",
+ "lib/net6.0/Microsoft.Extensions.Caching.Memory.xml",
+ "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll",
+ "lib/net7.0/Microsoft.Extensions.Caching.Memory.xml",
+ "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll",
+ "lib/net8.0/Microsoft.Extensions.Caching.Memory.xml",
+ "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll",
+ "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml",
+ "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512",
+ "microsoft.extensions.caching.memory.nuspec",
+ "useSharedDesignerContext.txt"
+ ]
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "sha512": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
+ "type": "package",
+ "path": "microsoft.extensions.configuration.abstractions/8.0.0",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "LICENSE.TXT",
+ "PACKAGE.md",
+ "THIRD-PARTY-NOTICES.TXT",
+ "buildTransitive/net461/Microsoft.Extensions.Configuration.Abstractions.targets",
+ "buildTransitive/net462/_._",
+ "buildTransitive/net6.0/_._",
+ "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets",
+ "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll",
+ "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml",
+ "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll",
+ "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.xml",
+ "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll",
+ "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.xml",
+ "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll",
+ "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.xml",
+ "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll",
+ "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml",
+ "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512",
+ "microsoft.extensions.configuration.abstractions.nuspec",
+ "useSharedDesignerContext.txt"
+ ]
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.1": {
+ "sha512": "BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==",
+ "type": "package",
+ "path": "microsoft.extensions.dependencyinjection/8.0.1",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "LICENSE.TXT",
+ "PACKAGE.md",
+ "THIRD-PARTY-NOTICES.TXT",
+ "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets",
+ "buildTransitive/net462/_._",
+ "buildTransitive/net6.0/_._",
+ "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets",
+ "lib/net462/Microsoft.Extensions.DependencyInjection.dll",
+ "lib/net462/Microsoft.Extensions.DependencyInjection.xml",
+ "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll",
+ "lib/net6.0/Microsoft.Extensions.DependencyInjection.xml",
+ "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll",
+ "lib/net7.0/Microsoft.Extensions.DependencyInjection.xml",
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll",
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml",
+ "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll",
+ "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml",
+ "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll",
+ "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml",
+ "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512",
+ "microsoft.extensions.dependencyinjection.nuspec",
+ "useSharedDesignerContext.txt"
+ ]
+ },
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.0": {
"sha512": "+6f2qv2a3dLwd5w6JanPIPs47CxRbnk+ZocMJUhv9NxP88VlOcJYZs9jY+MYSjxvady08bUZn6qgiNh7DadGgg==",
"type": "package",
@@ -1379,6 +1841,226 @@
"useSharedDesignerContext.txt"
]
},
+ "Microsoft.Extensions.Logging/8.0.1": {
+ "sha512": "4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==",
+ "type": "package",
+ "path": "microsoft.extensions.logging/8.0.1",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "LICENSE.TXT",
+ "PACKAGE.md",
+ "THIRD-PARTY-NOTICES.TXT",
+ "buildTransitive/net461/Microsoft.Extensions.Logging.targets",
+ "buildTransitive/net462/_._",
+ "buildTransitive/net6.0/_._",
+ "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets",
+ "lib/net462/Microsoft.Extensions.Logging.dll",
+ "lib/net462/Microsoft.Extensions.Logging.xml",
+ "lib/net6.0/Microsoft.Extensions.Logging.dll",
+ "lib/net6.0/Microsoft.Extensions.Logging.xml",
+ "lib/net7.0/Microsoft.Extensions.Logging.dll",
+ "lib/net7.0/Microsoft.Extensions.Logging.xml",
+ "lib/net8.0/Microsoft.Extensions.Logging.dll",
+ "lib/net8.0/Microsoft.Extensions.Logging.xml",
+ "lib/netstandard2.0/Microsoft.Extensions.Logging.dll",
+ "lib/netstandard2.0/Microsoft.Extensions.Logging.xml",
+ "lib/netstandard2.1/Microsoft.Extensions.Logging.dll",
+ "lib/netstandard2.1/Microsoft.Extensions.Logging.xml",
+ "microsoft.extensions.logging.8.0.1.nupkg.sha512",
+ "microsoft.extensions.logging.nuspec",
+ "useSharedDesignerContext.txt"
+ ]
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.2": {
+ "sha512": "nroMDjS7hNBPtkZqVBbSiQaQjWRDxITI8Y7XnDs97rqG3EbzVTNLZQf7bIeUJcaHOV8bca47s1Uxq94+2oGdxA==",
+ "type": "package",
+ "path": "microsoft.extensions.logging.abstractions/8.0.2",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "LICENSE.TXT",
+ "PACKAGE.md",
+ "THIRD-PARTY-NOTICES.TXT",
+ "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll",
+ "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll",
+ "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll",
+ "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
+ "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets",
+ "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets",
+ "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets",
+ "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets",
+ "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets",
+ "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll",
+ "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml",
+ "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll",
+ "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml",
+ "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll",
+ "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.xml",
+ "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll",
+ "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml",
+ "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll",
+ "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml",
+ "microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512",
+ "microsoft.extensions.logging.abstractions.nuspec",
+ "useSharedDesignerContext.txt"
+ ]
+ },
+ "Microsoft.Extensions.Options/8.0.2": {
+ "sha512": "dWGKvhFybsaZpGmzkGCbNNwBD1rVlWzrZKANLW/CcbFJpCEceMCGzT7zZwHOGBCbwM0SzBuceMj5HN1LKV1QqA==",
+ "type": "package",
+ "path": "microsoft.extensions.options/8.0.2",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "LICENSE.TXT",
+ "PACKAGE.md",
+ "THIRD-PARTY-NOTICES.TXT",
+ "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll",
+ "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
+ "buildTransitive/net461/Microsoft.Extensions.Options.targets",
+ "buildTransitive/net462/Microsoft.Extensions.Options.targets",
+ "buildTransitive/net6.0/Microsoft.Extensions.Options.targets",
+ "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets",
+ "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets",
+ "lib/net462/Microsoft.Extensions.Options.dll",
+ "lib/net462/Microsoft.Extensions.Options.xml",
+ "lib/net6.0/Microsoft.Extensions.Options.dll",
+ "lib/net6.0/Microsoft.Extensions.Options.xml",
+ "lib/net7.0/Microsoft.Extensions.Options.dll",
+ "lib/net7.0/Microsoft.Extensions.Options.xml",
+ "lib/net8.0/Microsoft.Extensions.Options.dll",
+ "lib/net8.0/Microsoft.Extensions.Options.xml",
+ "lib/netstandard2.0/Microsoft.Extensions.Options.dll",
+ "lib/netstandard2.0/Microsoft.Extensions.Options.xml",
+ "lib/netstandard2.1/Microsoft.Extensions.Options.dll",
+ "lib/netstandard2.1/Microsoft.Extensions.Options.xml",
+ "microsoft.extensions.options.8.0.2.nupkg.sha512",
+ "microsoft.extensions.options.nuspec",
+ "useSharedDesignerContext.txt"
+ ]
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "sha512": "bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==",
+ "type": "package",
+ "path": "microsoft.extensions.primitives/8.0.0",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "Icon.png",
+ "LICENSE.TXT",
+ "PACKAGE.md",
+ "THIRD-PARTY-NOTICES.TXT",
+ "buildTransitive/net461/Microsoft.Extensions.Primitives.targets",
+ "buildTransitive/net462/_._",
+ "buildTransitive/net6.0/_._",
+ "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets",
+ "lib/net462/Microsoft.Extensions.Primitives.dll",
+ "lib/net462/Microsoft.Extensions.Primitives.xml",
+ "lib/net6.0/Microsoft.Extensions.Primitives.dll",
+ "lib/net6.0/Microsoft.Extensions.Primitives.xml",
+ "lib/net7.0/Microsoft.Extensions.Primitives.dll",
+ "lib/net7.0/Microsoft.Extensions.Primitives.xml",
+ "lib/net8.0/Microsoft.Extensions.Primitives.dll",
+ "lib/net8.0/Microsoft.Extensions.Primitives.xml",
+ "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll",
+ "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml",
+ "microsoft.extensions.primitives.8.0.0.nupkg.sha512",
+ "microsoft.extensions.primitives.nuspec",
+ "useSharedDesignerContext.txt"
+ ]
+ },
+ "Npgsql/8.0.5": {
+ "sha512": "zRG5V8cyeZLpzJlKzFKjEwkRMYIYnHWJvEor2lWXeccS2E1G2nIWYYhnukB51iz5XsWSVEtqg3AxTWM0QJ6vfg==",
+ "type": "package",
+ "path": "npgsql/8.0.5",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "README.md",
+ "lib/net6.0/Npgsql.dll",
+ "lib/net6.0/Npgsql.xml",
+ "lib/net7.0/Npgsql.dll",
+ "lib/net7.0/Npgsql.xml",
+ "lib/net8.0/Npgsql.dll",
+ "lib/net8.0/Npgsql.xml",
+ "lib/netstandard2.0/Npgsql.dll",
+ "lib/netstandard2.0/Npgsql.xml",
+ "lib/netstandard2.1/Npgsql.dll",
+ "lib/netstandard2.1/Npgsql.xml",
+ "npgsql.8.0.5.nupkg.sha512",
+ "npgsql.nuspec",
+ "postgresql.png"
+ ]
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": {
+ "sha512": "gFPl9Dmxih7Yi4tZ3bITzZFzbxFMBx04gqTqcjoL2r5VEW+O2TA5UVw/wm/XW26NAJ7sg59Je0+9QrwiZt6MPQ==",
+ "type": "package",
+ "path": "npgsql.entityframeworkcore.postgresql/8.0.10",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "README.md",
+ "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll",
+ "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml",
+ "npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512",
+ "npgsql.entityframeworkcore.postgresql.nuspec",
+ "postgresql.png"
+ ]
+ },
"ReactiveUI/20.1.1": {
"sha512": "9hNPknWjijnaSWs6auypoXqUptPZcRpUypF+cf1zD50fgW+SEoQda502N3fVZ2eWPcaiUad+z6GaLwOWmUVHNw==",
"type": "package",
@@ -1774,6 +2456,16 @@
"tmds.dbus.protocol.0.20.0.nupkg.sha512",
"tmds.dbus.protocol.nuspec"
]
+ },
+ "data/1.0.0": {
+ "type": "project",
+ "path": "../data/data.csproj",
+ "msbuildProject": "../data/data.csproj"
+ },
+ "domain/1.0.0": {
+ "type": "project",
+ "path": "../domain/domain.csproj",
+ "msbuildProject": "../domain/domain.csproj"
}
},
"projectFileDependencyGroups": {
@@ -1784,7 +2476,9 @@
"Avalonia.Fonts.Inter >= 11.2.1",
"Avalonia.ReactiveUI >= 11.2.1",
"Avalonia.Themes.Fluent >= 11.2.1",
- "Microsoft.Extensions.DependencyInjection.Abstractions >= 9.0.0"
+ "Microsoft.Extensions.DependencyInjection.Abstractions >= 9.0.0",
+ "data >= 1.0.0",
+ "domain >= 1.0.0"
]
},
"packageFolders": {
@@ -1819,7 +2513,14 @@
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
- "projectReferences": {}
+ "projectReferences": {
+ "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
+ "projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj"
+ },
+ "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj": {
+ "projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj"
+ }
+ }
}
},
"warningProperties": {
diff --git a/presence/Presence.Desktop/obj/project.nuget.cache b/presence/Presence.Desktop/obj/project.nuget.cache
index 7d4bc4c..73c7e20 100644
--- a/presence/Presence.Desktop/obj/project.nuget.cache
+++ b/presence/Presence.Desktop/obj/project.nuget.cache
@@ -1,6 +1,6 @@
{
"version": 2,
- "dgSpecHash": "HKXcPpnG5wA=",
+ "dgSpecHash": "MC9NOMT7uSc=",
"success": true,
"projectFilePath": "C:\\Users\\User\\Desktop\\pr1\\presence\\Presence.Desktop\\Presence.Desktop.csproj",
"expectedPackageFiles": [
@@ -28,7 +28,21 @@
"C:\\Users\\User\\.nuget\\packages\\harfbuzzsharp.nativeassets.webassembly\\7.3.0.3-preview.2.2\\harfbuzzsharp.nativeassets.webassembly.7.3.0.3-preview.2.2.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\harfbuzzsharp.nativeassets.win32\\7.3.0.2\\harfbuzzsharp.nativeassets.win32.7.3.0.2.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\microcom.runtime\\0.11.0\\microcom.runtime.0.11.0.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.10\\microsoft.entityframeworkcore.8.0.10.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.10\\microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.10\\microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.10\\microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\9.0.0\\microsoft.extensions.dependencyinjection.abstractions.9.0.0.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\8.0.10\\npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\reactiveui\\20.1.1\\reactiveui.20.1.1.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\skiasharp\\2.88.8\\skiasharp.2.88.8.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\skiasharp.nativeassets.linux\\2.88.8\\skiasharp.nativeassets.linux.2.88.8.nupkg.sha512",
diff --git a/presence/console_ui/Program.cs b/presence/console_ui/Program.cs
index 89c9e94..2e80da6 100644
--- a/presence/console_ui/Program.cs
+++ b/presence/console_ui/Program.cs
@@ -1,15 +1,16 @@
using console_ui;
using data;
-using data.Repository;
using Demo.Data.RemoteData.RemoteDataBase;
using Demo.Data.Repository;
+using Demo.Domain.UseCase;
+using Demo.UI;
using domain.Service;
using domain.UseCase;
using Microsoft.Extensions.DependencyInjection;
void printAllGroups(IGroupRepository groupRepository)
{
- foreach (var item in groupRepository.getAllGroup())
+ foreach (var item in groupRepository.GetAllGroup())
{
Console.WriteLine($"{item.Id} {item.Name}");
}
@@ -19,9 +20,13 @@ IServiceCollection serviceCollection = new ServiceCollection();
serviceCollection
.AddDbContext()
- .AddSingleton()
- .AddSingleton()
- .AddSingleton();
+ .AddSingleton()
+ .AddSingleton()
+ .AddSingleton()
+ .AddSingleton()
+ .AddSingleton()
+ .AddSingleton()
+ .AddSingleton();
var serivceProvider = serviceCollection.BuildServiceProvider();
diff --git a/presence/console_ui/obj/Debug/net8.0/console_ui.assets.cache b/presence/console_ui/obj/Debug/net8.0/console_ui.assets.cache
new file mode 100644
index 0000000..ce75446
Binary files /dev/null and b/presence/console_ui/obj/Debug/net8.0/console_ui.assets.cache differ
diff --git a/presence/console_ui/obj/Debug/net9.0/console_ui.csproj.AssemblyReference.cache b/presence/console_ui/obj/Debug/net9.0/console_ui.csproj.AssemblyReference.cache
index e17ba2b..47e25c2 100644
Binary files a/presence/console_ui/obj/Debug/net9.0/console_ui.csproj.AssemblyReference.cache and b/presence/console_ui/obj/Debug/net9.0/console_ui.csproj.AssemblyReference.cache differ
diff --git a/presence/console_ui/obj/Debug/net9.0/console_ui.csproj.CoreCompileInputs.cache b/presence/console_ui/obj/Debug/net9.0/console_ui.csproj.CoreCompileInputs.cache
index 7bed7a0..2eddb06 100644
--- a/presence/console_ui/obj/Debug/net9.0/console_ui.csproj.CoreCompileInputs.cache
+++ b/presence/console_ui/obj/Debug/net9.0/console_ui.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-c35fa82237fa073360109b433888d38cd88ba34ea098c508b3cc7fc559f65477
+0c491b1e3dd8ffe5e72fd0f85d40e3c3639d451c11c9e70de739cbf6df22c2c9
diff --git a/presence/console_ui/obj/Release/net8.0/console_ui.assets.cache b/presence/console_ui/obj/Release/net8.0/console_ui.assets.cache
new file mode 100644
index 0000000..8aa52a5
Binary files /dev/null and b/presence/console_ui/obj/Release/net8.0/console_ui.assets.cache differ
diff --git a/presence/console_ui/obj/Release/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs b/presence/console_ui/obj/Release/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..feda5e9
--- /dev/null
+++ b/presence/console_ui/obj/Release/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v9.0", FrameworkDisplayName = ".NET 9.0")]
diff --git a/presence/console_ui/obj/Release/net9.0/console_ui.AssemblyInfo.cs b/presence/console_ui/obj/Release/net9.0/console_ui.AssemblyInfo.cs
new file mode 100644
index 0000000..a49ca28
--- /dev/null
+++ b/presence/console_ui/obj/Release/net9.0/console_ui.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("console_ui")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+a55a118f4f90ec351b8e7060cdde62bebbb8d3e4")]
+[assembly: System.Reflection.AssemblyProductAttribute("console_ui")]
+[assembly: System.Reflection.AssemblyTitleAttribute("console_ui")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Создано классом WriteCodeFragment MSBuild.
+
diff --git a/presence/console_ui/obj/Release/net9.0/console_ui.AssemblyInfoInputs.cache b/presence/console_ui/obj/Release/net9.0/console_ui.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..740df98
--- /dev/null
+++ b/presence/console_ui/obj/Release/net9.0/console_ui.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+12f51454d8d4fff99427e337e6eb2ca97a1fcd419092f1a51af68d43c449f1cc
diff --git a/presence/console_ui/obj/Release/net9.0/console_ui.GeneratedMSBuildEditorConfig.editorconfig b/presence/console_ui/obj/Release/net9.0/console_ui.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..3450301
--- /dev/null
+++ b/presence/console_ui/obj/Release/net9.0/console_ui.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,15 @@
+is_global = true
+build_property.TargetFramework = net9.0
+build_property.TargetPlatformMinVersion =
+build_property.UsingMicrosoftNETSdkWeb =
+build_property.ProjectTypeGuids =
+build_property.InvariantGlobalization =
+build_property.PlatformNeutralAssembly =
+build_property.EnforceExtendedAnalyzerRules =
+build_property._SupportedPlatformList = Linux,macOS,Windows
+build_property.RootNamespace = console_ui
+build_property.ProjectDir = C:\Users\User\Desktop\pr1\presence\console_ui\
+build_property.EnableComHosting =
+build_property.EnableGeneratedComInterfaceComImportInterop =
+build_property.EffectiveAnalysisLevelStyle = 9.0
+build_property.EnableCodeStyleSeverity =
diff --git a/presence/console_ui/obj/Release/net9.0/console_ui.GlobalUsings.g.cs b/presence/console_ui/obj/Release/net9.0/console_ui.GlobalUsings.g.cs
new file mode 100644
index 0000000..8578f3d
--- /dev/null
+++ b/presence/console_ui/obj/Release/net9.0/console_ui.GlobalUsings.g.cs
@@ -0,0 +1,8 @@
+//
+global using global::System;
+global using global::System.Collections.Generic;
+global using global::System.IO;
+global using global::System.Linq;
+global using global::System.Net.Http;
+global using global::System.Threading;
+global using global::System.Threading.Tasks;
diff --git a/presence/console_ui/obj/Release/net9.0/console_ui.assets.cache b/presence/console_ui/obj/Release/net9.0/console_ui.assets.cache
new file mode 100644
index 0000000..b44338a
Binary files /dev/null and b/presence/console_ui/obj/Release/net9.0/console_ui.assets.cache differ
diff --git a/presence/console_ui/obj/Release/net9.0/console_ui.csproj.AssemblyReference.cache b/presence/console_ui/obj/Release/net9.0/console_ui.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..be0d5cf
Binary files /dev/null and b/presence/console_ui/obj/Release/net9.0/console_ui.csproj.AssemblyReference.cache differ
diff --git a/presence/console_ui/obj/console_ui.csproj.nuget.dgspec.json b/presence/console_ui/obj/console_ui.csproj.nuget.dgspec.json
index 379c9f9..eb96b27 100644
--- a/presence/console_ui/obj/console_ui.csproj.nuget.dgspec.json
+++ b/presence/console_ui/obj/console_ui.csproj.nuget.dgspec.json
@@ -104,7 +104,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -112,8 +112,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {}
}
},
@@ -130,8 +130,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": {
"target": "Package",
@@ -186,7 +186,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -194,8 +194,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {
"C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
"projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj"
@@ -216,8 +216,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"imports": [
"net461",
"net462",
diff --git a/presence/console_ui/obj/project.assets.json b/presence/console_ui/obj/project.assets.json
index 0af1fdf..78113a5 100644
--- a/presence/console_ui/obj/project.assets.json
+++ b/presence/console_ui/obj/project.assets.json
@@ -272,7 +272,7 @@
},
"data/1.0.0": {
"type": "project",
- "framework": ".NETCoreApp,Version=v9.0",
+ "framework": ".NETCoreApp,Version=v8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": "8.0.10",
"Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10"
@@ -286,7 +286,7 @@
},
"domain/1.0.0": {
"type": "project",
- "framework": ".NETCoreApp,Version=v9.0",
+ "framework": ".NETCoreApp,Version=v8.0",
"dependencies": {
"data": "1.0.0"
},
diff --git a/presence/console_ui/obj/project.nuget.cache b/presence/console_ui/obj/project.nuget.cache
index 8e02090..c475e6c 100644
--- a/presence/console_ui/obj/project.nuget.cache
+++ b/presence/console_ui/obj/project.nuget.cache
@@ -1,6 +1,6 @@
{
"version": 2,
- "dgSpecHash": "HXpOLd260Fk=",
+ "dgSpecHash": "2YZ9r8+SFsI=",
"success": true,
"projectFilePath": "C:\\Users\\User\\Desktop\\pr1\\presence\\console_ui\\console_ui.csproj",
"expectedPackageFiles": [
diff --git a/presence/data/LocalData/Entity/Group.cs b/presence/data/LocalData/Entity/Group.cs
index 6041311..d4ec69c 100644
--- a/presence/data/LocalData/Entity/Group.cs
+++ b/presence/data/LocalData/Entity/Group.cs
@@ -10,6 +10,5 @@ namespace Demo.domain.Models
{
public required int Id { get; set; }
public required string Name { get; set; }
-
}
-}
+}
\ No newline at end of file
diff --git a/presence/data/LocalData/Entity/Presence.cs b/presence/data/LocalData/Entity/Presence.cs
index 1ebe6ec..abded35 100644
--- a/presence/data/LocalData/Entity/Presence.cs
+++ b/presence/data/LocalData/Entity/Presence.cs
@@ -1,8 +1,16 @@
-public class PresenceLocalEntity
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Demo.domain.Models
{
- public Guid UserGuid { get; set; } // Заменить int на Guid
- public int GroupId { get; set; }
- public int LessonNumber { get; set; }
- public DateTime Date { get; set; }
- public bool IsAttedance { get; set; }
-}
+ public class PresenceLocalEntity
+ {
+ public required DateOnly Date { get; set; }
+ public int ClassNumber { get; set; }
+ public bool IsAttendence { get; set; } = true;
+ public required Guid UserGuid { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/presence/data/LocalData/Entity/User.cs b/presence/data/LocalData/Entity/User.cs
index 1fe5c4b..ae98995 100644
--- a/presence/data/LocalData/Entity/User.cs
+++ b/presence/data/LocalData/Entity/User.cs
@@ -6,20 +6,16 @@ using System.Threading.Tasks;
namespace Demo.domain.Models
{
- public class UserLocalEnity : IEquatable
+ public class UserLocalEntity : IEquatable
{
-
public required string FIO { get; set; }
public Guid Guid { get; set; }
-
public required int GroupID { get; set; }
-
-
- public bool Equals(UserLocalEnity? other)
+ public bool Equals(UserLocalEntity? other)
{
if (other == null) return false;
return this.Guid.Equals(other.Guid);
}
}
-}
+}
\ No newline at end of file
diff --git a/presence/data/LocalData/LocalStaticData.cs b/presence/data/LocalData/LocalStaticData.cs
index 81b0676..9d1d317 100644
--- a/presence/data/LocalData/LocalStaticData.cs
+++ b/presence/data/LocalData/LocalStaticData.cs
@@ -18,14 +18,14 @@ namespace Demo.Data.LocalData
new GroupLocalEntity{ Id = 3, Name = "ИП1-23" },
};
- public static List users => new List
+ public static List users => new List
{
- new UserLocalEnity{Guid=Guid.Parse("e6b9964d-ea9f-420a-84b9-af9633bbfab9"), FIO = "RandomFio", GroupID = 1 },
- new UserLocalEnity{Guid=Guid.Parse("8388d931-5bef-41be-a152-78f1aca980ed"), FIO = "RandomFio1", GroupID = 2 },
- new UserLocalEnity{Guid=Guid.Parse("ed174548-49ed-4503-a902-c970cbf27173"), FIO = "RandomFio2", GroupID = 3 },
- new UserLocalEnity{Guid=Guid.Parse("614c0a23-5bd5-43ae-b48e-d5750afbc282"), FIO = "RandomFio3", GroupID = 1 },
- new UserLocalEnity{Guid=Guid.Parse("efcc1473-c116-4244-b3f7-f2341a5c3003"), FIO = "RandomFio4", GroupID = 2 },
- new UserLocalEnity{Guid=Guid.Parse("60640fb3-ace2-4cad-81d5-a0a58bc2dbbd"), FIO = "RandomFio5", GroupID = 3 },
+ new UserLocalEntity{Guid=Guid.Parse("e6b9964d-ea9f-420a-84b9-af9633bbfab9"), FIO = "RandomFio", GroupID = 1 },
+ new UserLocalEntity{Guid=Guid.Parse("8388d931-5bef-41be-a152-78f1aca980ed"), FIO = "RandomFio1", GroupID = 2 },
+ new UserLocalEntity{Guid=Guid.Parse("ed174548-49ed-4503-a902-c970cbf27173"), FIO = "RandomFio2", GroupID = 3 },
+ new UserLocalEntity{Guid=Guid.Parse("614c0a23-5bd5-43ae-b48e-d5750afbc282"), FIO = "RandomFio3", GroupID = 1 },
+ new UserLocalEntity{Guid=Guid.Parse("efcc1473-c116-4244-b3f7-f2341a5c3003"), FIO = "RandomFio4", GroupID = 2 },
+ new UserLocalEntity{Guid=Guid.Parse("60640fb3-ace2-4cad-81d5-a0a58bc2dbbd"), FIO = "RandomFio5", GroupID = 3 },
};
public static List presences => new List
diff --git a/presence/data/RemoteData/RemoteDataBase/DAO/Presence.cs b/presence/data/RemoteData/RemoteDataBase/DAO/Presence.cs
index 841cc13..de565ed 100644
--- a/presence/data/RemoteData/RemoteDataBase/DAO/Presence.cs
+++ b/presence/data/RemoteData/RemoteDataBase/DAO/Presence.cs
@@ -8,16 +8,12 @@ namespace Demo.Data.RemoteData.RemoteDataBase.DAO
{
public class PresenceDao
{
- public int Id { get; set; }
-
- public Guid UserGuid { get; set; }
-
- public bool IsAttedance { get; set; } = true;
-
+ public int PresenceId { get; set; }
public DateOnly Date { get; set; }
-
- public int LessonNumber { get; set; }
-
- public virtual UserDao? UserDao { get; set; } = null;
+ public int ClassNumber { get; set; }
+ public bool IsAttendence { get; set; } = true;
+ public int UserId { get; set; }
+ public UserDao User { get; set; }
+ public int GroupId { get; set; }
}
}
\ No newline at end of file
diff --git a/presence/data/RemoteData/RemoteDataBase/DAO/User.cs b/presence/data/RemoteData/RemoteDataBase/DAO/User.cs
index 460f2fd..7dcedcb 100644
--- a/presence/data/RemoteData/RemoteDataBase/DAO/User.cs
+++ b/presence/data/RemoteData/RemoteDataBase/DAO/User.cs
@@ -8,12 +8,10 @@ namespace Demo.Data.RemoteData.RemoteDataBase.DAO
{
public class UserDao
{
- public string FIO { get; set; }
- public Guid Guid { get; set; }
-
- public int GroupID { get; set; }
-
- public virtual GroupDao Group { get; set; }
- public virtual IEnumerable Presences { get; set; }
+ public required string FIO { get; set; }
+ public int UserId { get; set; }
+ public int GroupId { get; set; }
+ public GroupDao Group { get; set; }
+ public IEnumerable Presences { get; set; }
}
}
diff --git a/presence/data/RemoteData/RemoteDataBase/RemoteDatabaseContext.cs b/presence/data/RemoteData/RemoteDataBase/RemoteDatabaseContext.cs
index 681bc06..fd2596c 100644
--- a/presence/data/RemoteData/RemoteDataBase/RemoteDatabaseContext.cs
+++ b/presence/data/RemoteData/RemoteDataBase/RemoteDatabaseContext.cs
@@ -21,32 +21,23 @@ namespace Demo.Data.RemoteData.RemoteDataBase
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
- // Настройка ключа и автоматической генерации для GroupDao
+
modelBuilder.Entity().HasKey(group => group.Id);
modelBuilder.Entity().Property(group => group.Id).ValueGeneratedOnAdd();
+ modelBuilder.Entity().HasKey(user => user.UserId);
+ modelBuilder.Entity().Property(user => user.UserId).ValueGeneratedOnAdd();
- // Настройка ключа и автоматической генерации для UserDao
- modelBuilder.Entity().HasKey(user => user.Guid);
- modelBuilder.Entity().Property(user => user.Guid).ValueGeneratedOnAdd();
-
- // Настройка составного ключа для PresenceDao
- modelBuilder.Entity().HasKey(presense => new
- {
- presense.Id
-
- });
-
-
- // Настройка связи UserDao с PresenceDao
+ modelBuilder.Entity().HasKey(presence => presence.PresenceId);
+ modelBuilder.Entity().Property(presence => presence.PresenceId).ValueGeneratedOnAdd();
modelBuilder.Entity()
- .Property(presence => presence.Id)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity().HasOne(presence => presence.UserDao).WithMany(user => user.Presences).HasForeignKey(presence => presence.UserGuid);
-
+ .HasOne(presence => presence.User)
+ .WithMany(user => user.Presences)
+ .HasForeignKey(presence => presence.UserId);
}
+
public DbSet Groups { get; set; }
public DbSet Users { get; set; }
- public DbSet PresenceDaos { get; set; }
+ public DbSet Presences { get; set; }
}
}
\ No newline at end of file
diff --git a/presence/data/Repository/AdminRepositoryImp.cs b/presence/data/Repository/AdminRepositoryImp.cs
new file mode 100644
index 0000000..7f46cfd
--- /dev/null
+++ b/presence/data/Repository/AdminRepositoryImp.cs
@@ -0,0 +1,58 @@
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
+using Demo.Data.RemoteData.RemoteDataBase;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace data.Repository
+{
+ public class AdminRepositoryImp : IAdminRepository
+ {
+ private readonly RemoteDatabaseContext _remoteDataBaseContext;
+
+ public AdminRepositoryImp(RemoteDatabaseContext remoteDataBaseContext)
+ {
+ _remoteDataBaseContext = remoteDataBaseContext;
+ }
+
+ public bool AddStudents(GroupDao group, List students)
+ {
+ _remoteDataBaseContext.Groups.Add(group);
+ _remoteDataBaseContext.SaveChanges();
+ foreach (UserDao student in students)
+ {
+ _remoteDataBaseContext.Users.Add(student);
+ }
+ _remoteDataBaseContext.SaveChanges();
+ return true;
+ }
+
+ public IEnumerable GetAllGroupsWithStudents()
+ {
+ return _remoteDataBaseContext.Groups.Select(x => new GroupDao
+ {
+ Id = x.Id,
+ Name = x.Name,
+ Users = _remoteDataBaseContext.Users.Where(it => it.GroupId == x.Id).ToList()
+ }).ToList();
+ }
+
+ public UserDao GetStudentInfo(int userId)
+ {
+ return _remoteDataBaseContext.Users.Where(x => x.UserId == userId).FirstOrDefault();
+ }
+
+ public bool RemoveUserById(int userId, int groupId)
+ {
+ var userLocal = _remoteDataBaseContext.Users
+ .Where(x => x.UserId == userId && x.GroupId == groupId).FirstOrDefault();
+ if (userLocal == null) return false;
+
+ _remoteDataBaseContext.Users.Remove(userLocal);
+ _remoteDataBaseContext.SaveChanges();
+ return true;
+ }
+ }
+}
diff --git a/presence/data/Repository/GroupRepositoryImpl.cs b/presence/data/Repository/GroupRepositoryImpl.cs
new file mode 100644
index 0000000..e5266b9
--- /dev/null
+++ b/presence/data/Repository/GroupRepositoryImpl.cs
@@ -0,0 +1,113 @@
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
+using Demo.Data.RemoteData.RemoteDataBase;
+using Demo.Data.Repository;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Microsoft.EntityFrameworkCore;
+
+namespace data.Repository
+{
+ public class SQLGroupRepositoryImpl : IGroupRepository
+ {
+ private readonly RemoteDatabaseContext _remoteDatabaseContext;
+
+ public SQLGroupRepositoryImpl(RemoteDatabaseContext remoteDatabaseContext)
+ {
+ _remoteDatabaseContext = remoteDatabaseContext;
+ }
+
+ public bool AddGroup(GroupDao group)
+ {
+ var groupDao = new GroupDao
+ {
+ Name = group.Name
+ };
+ _remoteDatabaseContext.Groups.Add(groupDao);
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+
+ public List GetAllGroup()
+ {
+ return _remoteDatabaseContext.Groups
+ .Include(g => g.Users)
+ .Select(g => new GroupDao
+ {
+ Name = g.Name,
+ Id = g.Id,
+ Users = g.Users.Select(u => new UserDao
+ {
+ FIO = u.FIO,
+ UserId = u.UserId,
+ GroupId = u.GroupId
+ }).ToList()
+ }).ToList();
+ }
+
+ public GroupDao GetGroupById(int groupID)
+ {
+ var groupLocal = _remoteDatabaseContext.Groups
+ .Where(g => g.Id == groupID).FirstOrDefault();
+ if (groupLocal == null) return null;
+ return groupLocal;
+ }
+
+ public bool RemoveGroupById(int groupID)
+ {
+ var groupLocal = _remoteDatabaseContext.Groups
+ .Where(x => x.Id == groupID).FirstOrDefault();
+ if (groupLocal == null) return false;
+ var userLocal = _remoteDatabaseContext.Users.Where(x => x.GroupId == groupID).ToList();
+ if (userLocal == null) return false;
+ foreach (var user in userLocal)
+ {
+ _remoteDatabaseContext.Users.Remove(user);
+ }
+ _remoteDatabaseContext.Groups.Remove(groupLocal);
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+
+ public bool UpdateGroupById(int groupID, string name)
+ {
+ var groupLocal = _remoteDatabaseContext.Groups
+ .Include(g => g.Users)
+ .Where(x => x.Id == groupID).FirstOrDefault();
+ if (groupLocal == null) return false;
+
+ groupLocal.Name = name;
+
+ groupLocal.Users = _remoteDatabaseContext.Users
+ .Where(x => x.GroupId == groupLocal.Id)
+ .Select(user => new UserDao
+ {
+ UserId = user.UserId,
+ FIO = user.FIO,
+ GroupId = user.GroupId
+ }).ToList();
+
+
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+
+ public bool AddStudents(GroupDao group, List students)
+ {
+ _remoteDatabaseContext.Groups.Add(group);
+ _remoteDatabaseContext.SaveChanges();
+ foreach (UserDao student in students)
+ {
+ _remoteDatabaseContext.Users.Add(student);
+ }
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+ public async Task> getAllGroupAsync()
+ {
+ return await _remoteDatabaseContext.Groups.Include(group => group.Users).ToListAsync();
+ }
+ }
+}
diff --git a/presence/data/Repository/IAdminRepository.cs b/presence/data/Repository/IAdminRepository.cs
new file mode 100644
index 0000000..eebfd12
--- /dev/null
+++ b/presence/data/Repository/IAdminRepository.cs
@@ -0,0 +1,17 @@
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace data.Repository
+{
+ public interface IAdminRepository
+ {
+ bool AddStudents(GroupDao group, List students);
+ IEnumerable GetAllGroupsWithStudents();
+ UserDao GetStudentInfo(int userId);
+ bool RemoveUserById(int userId, int groupId);
+ }
+}
diff --git a/presence/data/Repository/IGroupRepository.cs b/presence/data/Repository/IGroupRepository.cs
index 67802e2..7de9d40 100644
--- a/presence/data/Repository/IGroupRepository.cs
+++ b/presence/data/Repository/IGroupRepository.cs
@@ -10,12 +10,12 @@ namespace Demo.Data.Repository
{
public interface IGroupRepository
{
- List GetAllGroup();
+ List GetAllGroup();
bool RemoveGroupById(int groupID);
- bool UpdateGroupById(int groupID, GroupLocalEntity updatedGroup);
- GroupLocalEntity GetGroupById(int groupID);
- bool AddGroup(GroupLocalEntity newGroup);
- public List GetAllGroupWithStident();
-
+ bool UpdateGroupById(int groupID, String name);
+ GroupDao GetGroupById(int groupID);
+ bool AddGroup(GroupDao group);
+ bool AddStudents(GroupDao group, List students);
+ public Task> getAllGroupAsync();
}
-}
+}
\ No newline at end of file
diff --git a/presence/data/Repository/IPresenceRepository.cs b/presence/data/Repository/IPresenceRepository.cs
index 51e994f..51ed1ed 100644
--- a/presence/data/Repository/IPresenceRepository.cs
+++ b/presence/data/Repository/IPresenceRepository.cs
@@ -8,15 +8,13 @@ namespace Demo.Data.Repository
{
public interface IPresenceRepository
{
- void SavePresence(List presences);
- List GetPresenceByGroup(int groupId);
- List GetPresenceByGroupAndDate(int groupId, DateTime date);
- DateOnly? GetLastDateByGroupId(int groupId);
- public GroupPresenceSummary GetGeneralPresenceForGroup(int groupId);
- bool UpdateAttention(Guid UserGuid, int groupId, int firstLesson, int lastLesson, DateOnly date, bool isAttendance);
-
- void MarkUserAsAbsent(Guid userGuid, int firstLessonNumber, int lastLessonNumber);
- void AddPresence(PresenceLocalEntity presence);
- List GetAttendanceByGroup(int groupId);
+ List GetPresence(int GroupId, DateOnly startData, DateOnly endData, int UserId);
+ List GetPresenceByGroup(int groupId);
+ List GetPresenceByGroupAndDate(int groupId, DateOnly date);
+ bool UncheckAttendence(int firstClass, int lastClass, DateOnly date, int userId);
+ bool AddPresence(PresenceDao presence);
+ bool DeletePresenceByGroup(int groupId);
+ bool DeletePresenceByUser(int userId);
+ bool DeletePresenceByDate(DateOnly startData, DateOnly endData);
}
}
diff --git a/presence/data/Repository/IUserRepository.cs b/presence/data/Repository/IUserRepository.cs
index 8518854..ba4fc1a 100644
--- a/presence/data/Repository/IUserRepository.cs
+++ b/presence/data/Repository/IUserRepository.cs
@@ -7,13 +7,10 @@ namespace Demo.Data.Repository
{
public interface IUserRepository
{
- IEnumerable GetAllUsers { get; }
- bool RemoveUserByGuid(Guid userGuid);
- UserLocalEnity? UpdateUser(UserLocalEnity user);
- List GetUserNames();
-
- public UserDao GetUserInfo(Guid userGuid);
-
- bool AddUser(UserDao user);
+ List GetAllUser();
+ bool RemoveUserById(int usesId);
+ UserDao GetUserById(int userId);
+ bool UpdateUser(UserDao userUpdate);
+ bool UpdateUserById(int userId, string fio, int groupId);
}
}
diff --git a/presence/data/Repository/PresenceRepositoryImpl.cs b/presence/data/Repository/PresenceRepositoryImpl.cs
new file mode 100644
index 0000000..e6671ab
--- /dev/null
+++ b/presence/data/Repository/PresenceRepositoryImpl.cs
@@ -0,0 +1,125 @@
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
+using Demo.Data.RemoteData.RemoteDataBase;
+using Demo.Data.Repository;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace data.Repository
+{
+ public class SQLPresenceRepositoryImpl : IPresenceRepository
+ {
+ private readonly RemoteDatabaseContext _remoteDatabaseContext;
+
+ public SQLPresenceRepositoryImpl(RemoteDatabaseContext remoteDatabaseContext)
+ {
+ _remoteDatabaseContext = remoteDatabaseContext;
+ }
+
+ public bool AddPresence(PresenceDao presence)
+ {
+ var presenceDao = new PresenceDao
+ {
+ Date = presence.Date,
+ ClassNumber = presence.ClassNumber,
+ UserId = presence.UserId,
+ GroupId = presence.GroupId
+ };
+ _remoteDatabaseContext.PresenceDaos.Add(presenceDao);
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+
+ public List GetPresence(int GroupId, DateOnly startData, DateOnly endData, int UserId)
+ {
+ var presenceList = _remoteDatabaseContext.PresenceDaos.Where(presence => presence.GroupId == GroupId
+ && presence.UserId == UserId && presence.Date >= startData && presence.Date <= endData).ToList();
+ return presenceList;
+ }
+
+ public List GetPresenceByGroup(int groupId)
+ {
+ var listPresences = _remoteDatabaseContext.PresenceDaos
+ .Where(x => x.GroupId == groupId).ToList();
+ return listPresences;
+ }
+
+ public List GetPresenceByGroupAndDate(int groupId, DateOnly date)
+ {
+ var listPresences = _remoteDatabaseContext.PresenceDaos
+ .Where(x => x.GroupId == groupId && x.Date == date).ToList();
+ return listPresences;
+ }
+
+ public bool UncheckAttendence(int firstClass, int lastClass, DateOnly date, int userId)
+ {
+ var presToUpdate = _remoteDatabaseContext.PresenceDaos
+ .Where(x => x.UserId == userId && x.ClassNumber >= firstClass
+ && x.ClassNumber <= lastClass && x.Date == date).ToList();
+
+ foreach (var pres in presToUpdate)
+ {
+ pres.IsAttendence = false;
+ }
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+
+ public bool DeletePresenceByGroup(int groupId)
+ {
+ var presenceToDelete = _remoteDatabaseContext.PresenceDaos.Where(x => x.GroupId == groupId).ToList();
+
+ if (presenceToDelete.Count > 0)
+ {
+ foreach (var presence in presenceToDelete)
+ {
+ _remoteDatabaseContext.PresenceDaos.Remove(presence);
+ }
+
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+ return false;
+ }
+
+ public bool DeletePresenceByUser(int userId)
+ {
+ var presenceToDelete = _remoteDatabaseContext.PresenceDaos.Where(x => x.UserId == userId).ToList();
+
+ if (presenceToDelete.Count > 0)
+ {
+ foreach (var presence in presenceToDelete)
+ {
+ _remoteDatabaseContext.PresenceDaos.Remove(presence);
+ }
+
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+ return false;
+ }
+
+ public bool DeletePresenceByDate(DateOnly startData, DateOnly endData)
+ {
+ var PresenceToDelete = _remoteDatabaseContext.PresenceDaos.Where(x => x.Date == startData).ToList();
+ for (var i = startData; i < endData; i = i.AddDays(1))
+ {
+ PresenceToDelete.AddRange(_remoteDatabaseContext.PresenceDaos.Where(x => x.Date == i).ToList());
+ }
+ if (PresenceToDelete.Count > 0)
+ {
+ foreach (var presence in PresenceToDelete)
+ {
+ _remoteDatabaseContext.PresenceDaos.Remove(presence);
+ }
+
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+
+ return false;
+ }
+ }
+}
diff --git a/presence/data/Repository/SQLGroupRepositoryImpl.cs b/presence/data/Repository/SQLGroupRepositoryImpl.cs
index 42c9d22..2771152 100644
--- a/presence/data/Repository/SQLGroupRepositoryImpl.cs
+++ b/presence/data/Repository/SQLGroupRepositoryImpl.cs
@@ -17,74 +17,58 @@ public class SQLGroupRepositoryImpl : IGroupRepository
_remoteDatabaseContext = remoteDatabaseContext;
}
- // Метод получения группы по id
+
public GroupLocalEntity? GetGroupById(int groupId)
{
- // Ищем группу в бд по id
var groupDao = _remoteDatabaseContext.Groups.FirstOrDefault(g => g.Id == groupId);
-
- // Если группа найдена, создаем и возвращаем объект GroupLocalEntity
return groupDao != null ? new GroupLocalEntity { Id = groupDao.Id, Name = groupDao.Name } : null;
}
- // Метод получения всех групп
+
public List GetAllGroup()
{
- // Получаем все группы из бд и преобразуем их в список объектов GroupLocalEntity
- return _remoteDatabaseContext.Groups.Select(group => new GroupLocalEntity
- {
- Id = group.Id,
- Name = group.Name
- }).ToList();
+ return _remoteDatabaseContext.Groups
+ .Select(g => new GroupLocalEntity { Id = g.Id, Name = g.Name })
+ .ToList();
}
- // Метод добавления новой группы
- public bool AddGroup(GroupLocalEntity group)
+
+ public int AddGroup(GroupDao group)
{
- // Проверяем, существует ли уже группа с таким id
- if (_remoteDatabaseContext.Groups.Any(g => g.Id == group.Id))
- return false; // Если существует, возвращаем false
+ if (_remoteDatabaseContext.Groups.Any(g => g.Name == group.Name))
+ return -1; // Например, если группа с таким именем уже существует, возвращаем -1
- // Создаем объект GroupDao и добавляем его в бд
- var groupDao = new GroupDao { Id = group.Id, Name = group.Name };
- _remoteDatabaseContext.Groups.Add(groupDao);
-
- // Сохраняем изменения в бд
+ _remoteDatabaseContext.Groups.Add(group);
_remoteDatabaseContext.SaveChanges();
- return true; // Возвращаем true, если группа добавлена
+
+ return group.Id; // Возвращаем ID добавленной группы
}
- // Метод обновления существующей группы
+
+
public bool UpdateGroupById(int groupID, GroupLocalEntity updatedGroup)
{
- // Ищем группу по ее id
var existingGroup = _remoteDatabaseContext.Groups.FirstOrDefault(g => g.Id == groupID);
-
- // Если группа не найдена, возвращаем false
if (existingGroup == null)
return false;
- // Обновляем имя группы и сохраняем изменения
existingGroup.Name = updatedGroup.Name;
_remoteDatabaseContext.SaveChanges();
- return true; // Возвращаем true, если группа обновлена
+ return true;
}
- // Метод удаления группы по id
+
public bool RemoveGroupById(int groupID)
{
- // Ищем группу по заданному id
var existingGroup = _remoteDatabaseContext.Groups.FirstOrDefault(g => g.Id == groupID);
-
- // Группа не найдена, возвращаем false
if (existingGroup == null)
return false;
- // Удаляем группу из бд
_remoteDatabaseContext.Groups.Remove(existingGroup);
_remoteDatabaseContext.SaveChanges();
- return true; // Возвращаем true, если группа удалена
+ return true;
}
+
public List GetAllGroupWithStident()
{
// Убедитесь, что загружаются все пользователи, связанные с группами
@@ -92,4 +76,51 @@ public class SQLGroupRepositoryImpl : IGroupRepository
.Include(g => g.Users) // Загружаем пользователей вместе с группами
.ToList();
}
+
+ public void RemoveAllStudentsFromGroup(int groupId)
+ {
+ var group = _remoteDatabaseContext.Groups.Include(g => g.Users).FirstOrDefault(g => g.Id == groupId);
+ if (group != null)
+ {
+ // Удаляем всех студентов из группы
+ var userList = group.Users.ToList();
+ foreach (var user in userList)
+ {
+ _remoteDatabaseContext.Entry(user).State = EntityState.Deleted;
+ }
+ _remoteDatabaseContext.SaveChanges();
+ }
+ else
+ {
+ throw new ArgumentException($"Группа с ID {groupId} не найдена.");
+ }
+ }
+
+ public void AddStudentToGroup(int groupId, UserDao student)
+ {
+ var group = _remoteDatabaseContext.Groups.Include(g => g.Users).FirstOrDefault(g => g.Id == groupId);
+ if (group != null)
+ {
+ // Проверка на уникальность студента
+ if (group.Users.Any(u => u.Guid == student.Guid))
+ {
+ throw new ArgumentException($"Студент с GUID {student.Guid} уже добавлен в эту группу.");
+ }
+
+ // Создаём нового студента и добавляем его в контекст
+ _remoteDatabaseContext.Users.Add(student); // Добавляем нового студента в Users
+
+ // Привязываем студента к группе
+ student.GroupId = group.Id; // Устанавливаем внешний ключ (или ссылку на группу)
+
+ // Сохраняем изменения в контексте
+ _remoteDatabaseContext.SaveChanges();
+ }
+ else
+ {
+ throw new ArgumentException($"Группа с ID {groupId} не найдена.");
+ }
+ }
+
+
}
\ No newline at end of file
diff --git a/presence/data/Repository/SQLPresenceRepositoryImpl.cs b/presence/data/Repository/SQLPresenceRepositoryImpl.cs
index e9adc49..80838b2 100644
--- a/presence/data/Repository/SQLPresenceRepositoryImpl.cs
+++ b/presence/data/Repository/SQLPresenceRepositoryImpl.cs
@@ -213,5 +213,12 @@ namespace Demo.Data.Repository
.ToList();
}
+ public void ClearAllPresence()
+ {
+ var allPresenceRecords = _remoteDatabaseContext.PresenceDaos.ToList();
+ _remoteDatabaseContext.PresenceDaos.RemoveRange(allPresenceRecords);
+ _remoteDatabaseContext.SaveChanges();
+ }
+
}
-}
+}
\ No newline at end of file
diff --git a/presence/data/Repository/SQLUserRepositoryImpl.cs b/presence/data/Repository/SQLUserRepositoryImpl.cs
index 45ffff3..a40b06a 100644
--- a/presence/data/Repository/SQLUserRepositoryImpl.cs
+++ b/presence/data/Repository/SQLUserRepositoryImpl.cs
@@ -102,4 +102,4 @@ namespace Demo.Data.Repository
}
-}
+}
\ No newline at end of file
diff --git a/presence/data/Repository/UserRepositoryImpl.cs b/presence/data/Repository/UserRepositoryImpl.cs
new file mode 100644
index 0000000..0986b80
--- /dev/null
+++ b/presence/data/Repository/UserRepositoryImpl.cs
@@ -0,0 +1,76 @@
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
+using Demo.Data.RemoteData.RemoteDataBase;
+using Demo.Data.Repository;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace data.Repository
+{
+ public class SQLUserRepositoryImpl : IUserRepository
+ {
+ private readonly RemoteDatabaseContext _remoteDatabaseContext;
+ public SQLUserRepositoryImpl(RemoteDatabaseContext remoteDatabaseContext)
+ {
+ _remoteDatabaseContext = remoteDatabaseContext;
+ }
+
+ public List GetAllUser()
+ {
+ return _remoteDatabaseContext.Users.Select(u => new UserDao
+ {
+ FIO = u.FIO,
+ UserId = u.UserId,
+ GroupId = u.GroupId
+ }).ToList();
+ }
+
+
+ public bool RemoveUserById(int userId)
+ {
+ var userLocal = _remoteDatabaseContext.Users
+ .Where(x => x.UserId == userId).FirstOrDefault();
+ if (userLocal == null) return false;
+
+ _remoteDatabaseContext.Users.Remove(userLocal);
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+ }
+
+ public UserDao GetUserById(int userId)
+ {
+ var userLocal = _remoteDatabaseContext.Users
+ .Where(x => x.UserId == userId).FirstOrDefault();
+ if (userLocal == null) return null;
+
+ return userLocal;
+ }
+
+ public bool UpdateUser(UserDao userUpdate)
+ {
+ var userLocal = _remoteDatabaseContext.Users
+ .Where(x => x.UserId == userUpdate.UserId).FirstOrDefault();
+ if (userLocal == null) return false;
+ userLocal.FIO = userUpdate.FIO;
+ userLocal.GroupId = userUpdate.GroupId;
+ _remoteDatabaseContext.SaveChanges();
+ return true;
+
+ }
+
+ public bool UpdateUserById(int userId, string fio, int groupId)
+ {
+ var userLocal = _remoteDatabaseContext.Users
+ .Where(x => x.UserId == userId).FirstOrDefault();
+ if (userLocal == null) return false;
+
+ userLocal.FIO = fio;
+ userLocal.GroupId = groupId;
+ _remoteDatabaseContext.SaveChanges();
+
+ return true;
+ }
+ }
+}
diff --git a/presence/data/bin/Debug/net8.0/data.deps.json b/presence/data/bin/Debug/net8.0/data.deps.json
new file mode 100644
index 0000000..fe754d7
--- /dev/null
+++ b/presence/data/bin/Debug/net8.0/data.deps.json
@@ -0,0 +1,818 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v8.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v8.0": {
+ "data/1.0.0": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Design": "8.0.10",
+ "Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10"
+ },
+ "runtime": {
+ "data.dll": {}
+ }
+ },
+ "Humanizer.Core/2.14.1": {
+ "runtime": {
+ "lib/net6.0/Humanizer.dll": {
+ "assemblyVersion": "2.14.0.0",
+ "fileVersion": "2.14.1.48190"
+ }
+ }
+ },
+ "Microsoft.Bcl.AsyncInterfaces/6.0.0": {
+ "runtime": {
+ "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.21.52210"
+ }
+ }
+ },
+ "Microsoft.CodeAnalysis.Analyzers/3.3.3": {},
+ "Microsoft.CodeAnalysis.Common/4.5.0": {
+ "dependencies": {
+ "Microsoft.CodeAnalysis.Analyzers": "3.3.3",
+ "System.Collections.Immutable": "6.0.0",
+ "System.Reflection.Metadata": "6.0.1",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0",
+ "System.Text.Encoding.CodePages": "6.0.0"
+ },
+ "runtime": {
+ "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": {
+ "assemblyVersion": "4.5.0.0",
+ "fileVersion": "4.500.23.10905"
+ }
+ },
+ "resources": {
+ "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "cs"
+ },
+ "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "de"
+ },
+ "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "es"
+ },
+ "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "fr"
+ },
+ "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "it"
+ },
+ "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "ja"
+ },
+ "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "ko"
+ },
+ "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "pl"
+ },
+ "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "pt-BR"
+ },
+ "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "ru"
+ },
+ "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "tr"
+ },
+ "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "zh-Hans"
+ },
+ "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": {
+ "locale": "zh-Hant"
+ }
+ }
+ },
+ "Microsoft.CodeAnalysis.CSharp/4.5.0": {
+ "dependencies": {
+ "Microsoft.CodeAnalysis.Common": "4.5.0"
+ },
+ "runtime": {
+ "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": {
+ "assemblyVersion": "4.5.0.0",
+ "fileVersion": "4.500.23.10905"
+ }
+ },
+ "resources": {
+ "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "cs"
+ },
+ "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "de"
+ },
+ "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "es"
+ },
+ "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "fr"
+ },
+ "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "it"
+ },
+ "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "ja"
+ },
+ "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "ko"
+ },
+ "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "pl"
+ },
+ "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "pt-BR"
+ },
+ "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "ru"
+ },
+ "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "tr"
+ },
+ "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "zh-Hans"
+ },
+ "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": {
+ "locale": "zh-Hant"
+ }
+ }
+ },
+ "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": {
+ "dependencies": {
+ "Humanizer.Core": "2.14.1",
+ "Microsoft.CodeAnalysis.CSharp": "4.5.0",
+ "Microsoft.CodeAnalysis.Common": "4.5.0",
+ "Microsoft.CodeAnalysis.Workspaces.Common": "4.5.0"
+ },
+ "runtime": {
+ "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": {
+ "assemblyVersion": "4.5.0.0",
+ "fileVersion": "4.500.23.10905"
+ }
+ },
+ "resources": {
+ "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "cs"
+ },
+ "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "de"
+ },
+ "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "es"
+ },
+ "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "fr"
+ },
+ "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "it"
+ },
+ "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "ja"
+ },
+ "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "ko"
+ },
+ "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "pl"
+ },
+ "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "pt-BR"
+ },
+ "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "ru"
+ },
+ "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "tr"
+ },
+ "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "zh-Hans"
+ },
+ "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
+ "locale": "zh-Hant"
+ }
+ }
+ },
+ "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": {
+ "dependencies": {
+ "Humanizer.Core": "2.14.1",
+ "Microsoft.Bcl.AsyncInterfaces": "6.0.0",
+ "Microsoft.CodeAnalysis.Common": "4.5.0",
+ "System.Composition": "6.0.0",
+ "System.IO.Pipelines": "6.0.3",
+ "System.Threading.Channels": "6.0.0"
+ },
+ "runtime": {
+ "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": {
+ "assemblyVersion": "4.5.0.0",
+ "fileVersion": "4.500.23.10905"
+ }
+ },
+ "resources": {
+ "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "cs"
+ },
+ "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "de"
+ },
+ "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "es"
+ },
+ "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "fr"
+ },
+ "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "it"
+ },
+ "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "ja"
+ },
+ "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "ko"
+ },
+ "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "pl"
+ },
+ "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "pt-BR"
+ },
+ "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "ru"
+ },
+ "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "tr"
+ },
+ "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "zh-Hans"
+ },
+ "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
+ "locale": "zh-Hant"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Analyzers": "8.0.10",
+ "Microsoft.Extensions.Caching.Memory": "8.0.1",
+ "Microsoft.Extensions.Logging": "8.0.1"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": {
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": {},
+ "Microsoft.EntityFrameworkCore.Design/8.0.10": {
+ "dependencies": {
+ "Humanizer.Core": "2.14.1",
+ "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.5.0",
+ "Microsoft.EntityFrameworkCore.Relational": "8.0.10",
+ "Microsoft.Extensions.DependencyModel": "8.0.2",
+ "Mono.TextTemplating": "2.2.1"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Relational/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.23.53103"
+ }
+ }
+ },
+ "Microsoft.Extensions.Caching.Memory/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.Caching.Abstractions": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Options": "8.0.2",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.23.53103"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": {
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyModel/8.0.2": {
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": {
+ "assemblyVersion": "8.0.0.2",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Logging/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection": "8.0.1",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Options": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Logging.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.2": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Options/8.0.2": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Options.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.224.6711"
+ }
+ }
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.23.53103"
+ }
+ }
+ },
+ "Mono.TextTemplating/2.2.1": {
+ "dependencies": {
+ "System.CodeDom": "4.4.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/Mono.TextTemplating.dll": {
+ "assemblyVersion": "2.2.0.0",
+ "fileVersion": "2.2.1.1"
+ }
+ }
+ },
+ "Npgsql/8.0.5": {
+ "dependencies": {
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Npgsql.dll": {
+ "assemblyVersion": "8.0.5.0",
+ "fileVersion": "8.0.5.0"
+ }
+ }
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Relational": "8.0.10",
+ "Npgsql": "8.0.5"
+ },
+ "runtime": {
+ "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.10.0"
+ }
+ }
+ },
+ "System.CodeDom/4.4.0": {
+ "runtime": {
+ "lib/netstandard2.0/System.CodeDom.dll": {
+ "assemblyVersion": "4.0.0.0",
+ "fileVersion": "4.6.25519.3"
+ }
+ }
+ },
+ "System.Collections.Immutable/6.0.0": {
+ "dependencies": {
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ }
+ },
+ "System.Composition/6.0.0": {
+ "dependencies": {
+ "System.Composition.AttributedModel": "6.0.0",
+ "System.Composition.Convention": "6.0.0",
+ "System.Composition.Hosting": "6.0.0",
+ "System.Composition.Runtime": "6.0.0",
+ "System.Composition.TypedParts": "6.0.0"
+ }
+ },
+ "System.Composition.AttributedModel/6.0.0": {
+ "runtime": {
+ "lib/net6.0/System.Composition.AttributedModel.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.21.52210"
+ }
+ }
+ },
+ "System.Composition.Convention/6.0.0": {
+ "dependencies": {
+ "System.Composition.AttributedModel": "6.0.0"
+ },
+ "runtime": {
+ "lib/net6.0/System.Composition.Convention.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.21.52210"
+ }
+ }
+ },
+ "System.Composition.Hosting/6.0.0": {
+ "dependencies": {
+ "System.Composition.Runtime": "6.0.0"
+ },
+ "runtime": {
+ "lib/net6.0/System.Composition.Hosting.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.21.52210"
+ }
+ }
+ },
+ "System.Composition.Runtime/6.0.0": {
+ "runtime": {
+ "lib/net6.0/System.Composition.Runtime.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.21.52210"
+ }
+ }
+ },
+ "System.Composition.TypedParts/6.0.0": {
+ "dependencies": {
+ "System.Composition.AttributedModel": "6.0.0",
+ "System.Composition.Hosting": "6.0.0",
+ "System.Composition.Runtime": "6.0.0"
+ },
+ "runtime": {
+ "lib/net6.0/System.Composition.TypedParts.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.21.52210"
+ }
+ }
+ },
+ "System.IO.Pipelines/6.0.3": {
+ "runtime": {
+ "lib/net6.0/System.IO.Pipelines.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.522.21309"
+ }
+ }
+ },
+ "System.Reflection.Metadata/6.0.1": {
+ "dependencies": {
+ "System.Collections.Immutable": "6.0.0"
+ }
+ },
+ "System.Runtime.CompilerServices.Unsafe/6.0.0": {},
+ "System.Text.Encoding.CodePages/6.0.0": {
+ "dependencies": {
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ }
+ },
+ "System.Threading.Channels/6.0.0": {}
+ }
+ },
+ "libraries": {
+ "data/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "Humanizer.Core/2.14.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-lQKvtaTDOXnoVJ20ibTuSIOf2i0uO0MPbDhd1jm238I+U/2ZnRENj0cktKZhtchBMtCUSRQ5v4xBCUbKNmyVMw==",
+ "path": "humanizer.core/2.14.1",
+ "hashPath": "humanizer.core.2.14.1.nupkg.sha512"
+ },
+ "Microsoft.Bcl.AsyncInterfaces/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-UcSjPsst+DfAdJGVDsu346FX0ci0ah+lw3WRtn18NUwEqRt70HaOQ7lI72vy3+1LxtqI3T5GWwV39rQSrCzAeg==",
+ "path": "microsoft.bcl.asyncinterfaces/6.0.0",
+ "hashPath": "microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512"
+ },
+ "Microsoft.CodeAnalysis.Analyzers/3.3.3": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==",
+ "path": "microsoft.codeanalysis.analyzers/3.3.3",
+ "hashPath": "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512"
+ },
+ "Microsoft.CodeAnalysis.Common/4.5.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-lwAbIZNdnY0SUNoDmZHkVUwLO8UyNnyyh1t/4XsbFxi4Ounb3xszIYZaWhyj5ZjyfcwqwmtMbE7fUTVCqQEIdQ==",
+ "path": "microsoft.codeanalysis.common/4.5.0",
+ "hashPath": "microsoft.codeanalysis.common.4.5.0.nupkg.sha512"
+ },
+ "Microsoft.CodeAnalysis.CSharp/4.5.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-cM59oMKAOxvdv76bdmaKPy5hfj+oR+zxikWoueEB7CwTko7mt9sVKZI8Qxlov0C/LuKEG+WQwifepqL3vuTiBQ==",
+ "path": "microsoft.codeanalysis.csharp/4.5.0",
+ "hashPath": "microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512"
+ },
+ "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-h74wTpmGOp4yS4hj+EvNzEiPgg/KVs2wmSfTZ81upJZOtPkJsVkgfsgtxxqmAeapjT/vLKfmYV0bS8n5MNVP+g==",
+ "path": "microsoft.codeanalysis.csharp.workspaces/4.5.0",
+ "hashPath": "microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512"
+ },
+ "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-l4dDRmGELXG72XZaonnOeORyD/T5RpEu5LGHOUIhnv+MmUWDY/m1kWXGwtcgQ5CJ5ynkFiRnIYzTKXYjUs7rbw==",
+ "path": "microsoft.codeanalysis.workspaces.common/4.5.0",
+ "hashPath": "microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-PPkQdIqfR1nU3n6YgGGDk8G+eaYbaAKM1AzIQtlPNTKf10Osg3N9T+iK9AlnSA/ujsK00flPpFHVfJrbuBFS1A==",
+ "path": "microsoft.entityframeworkcore/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-FV0QlcX9INY4kAD2o72uPtyOh0nZut2jB11Jf9mNYBtHay8gDLe+x4AbXFwuQg+eSvofjT7naV82e827zGfyMg==",
+ "path": "microsoft.entityframeworkcore.abstractions/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-51KkPIc0EMv/gVXhPIUi6cwJE9Mvh+PLr4Lap4naLcsoGZ0lF2SvOPgUUprwRV3MnN7nyD1XPhT5RJ/p+xFAXw==",
+ "path": "microsoft.entityframeworkcore.analyzers/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Design/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-uGNjfKvAsql2KHRqxlK5wHo8mMC60G/FecrFKEjJgeIxtUAbSXGOgKGw/gD9flO5Fzzt1C7uxfIcr6ZsMmFkeg==",
+ "path": "microsoft.entityframeworkcore.design/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.design.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Relational/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-OefBEE47kGKPRPV3OT+FAW6o5BFgLk2D9EoeWVy7NbOepzUneayLQxbVE098FfedTyMwxvZQoDD9LrvZc3MadA==",
+ "path": "microsoft.entityframeworkcore.relational/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==",
+ "path": "microsoft.extensions.caching.abstractions/8.0.0",
+ "hashPath": "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Memory/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==",
+ "path": "microsoft.extensions.caching.memory/8.0.1",
+ "hashPath": "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
+ "path": "microsoft.extensions.configuration.abstractions/8.0.0",
+ "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==",
+ "path": "microsoft.extensions.dependencyinjection/8.0.1",
+ "hashPath": "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3iE7UF7MQkCv1cxzCahz+Y/guQbTqieyxyaWKhrRO91itI9cOKO76OHeQDahqG4MmW5umr3CcCvGmK92lWNlbg==",
+ "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.2",
+ "hashPath": "microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyModel/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-mUBDZZRgZrSyFOsJ2qJJ9fXfqd/kXJwf3AiDoqLD9m6TjY5OO/vLNOb9fb4juC0487eq4hcGN/M2Rh/CKS7QYw==",
+ "path": "microsoft.extensions.dependencymodel/8.0.2",
+ "hashPath": "microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==",
+ "path": "microsoft.extensions.logging/8.0.1",
+ "hashPath": "microsoft.extensions.logging.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-nroMDjS7hNBPtkZqVBbSiQaQjWRDxITI8Y7XnDs97rqG3EbzVTNLZQf7bIeUJcaHOV8bca47s1Uxq94+2oGdxA==",
+ "path": "microsoft.extensions.logging.abstractions/8.0.2",
+ "hashPath": "microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Options/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-dWGKvhFybsaZpGmzkGCbNNwBD1rVlWzrZKANLW/CcbFJpCEceMCGzT7zZwHOGBCbwM0SzBuceMj5HN1LKV1QqA==",
+ "path": "microsoft.extensions.options/8.0.2",
+ "hashPath": "microsoft.extensions.options.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==",
+ "path": "microsoft.extensions.primitives/8.0.0",
+ "hashPath": "microsoft.extensions.primitives.8.0.0.nupkg.sha512"
+ },
+ "Mono.TextTemplating/2.2.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-KZYeKBET/2Z0gY1WlTAK7+RHTl7GSbtvTLDXEZZojUdAPqpQNDL6tHv7VUpqfX5VEOh+uRGKaZXkuD253nEOBQ==",
+ "path": "mono.texttemplating/2.2.1",
+ "hashPath": "mono.texttemplating.2.2.1.nupkg.sha512"
+ },
+ "Npgsql/8.0.5": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-zRG5V8cyeZLpzJlKzFKjEwkRMYIYnHWJvEor2lWXeccS2E1G2nIWYYhnukB51iz5XsWSVEtqg3AxTWM0QJ6vfg==",
+ "path": "npgsql/8.0.5",
+ "hashPath": "npgsql.8.0.5.nupkg.sha512"
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-gFPl9Dmxih7Yi4tZ3bITzZFzbxFMBx04gqTqcjoL2r5VEW+O2TA5UVw/wm/XW26NAJ7sg59Je0+9QrwiZt6MPQ==",
+ "path": "npgsql.entityframeworkcore.postgresql/8.0.10",
+ "hashPath": "npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512"
+ },
+ "System.CodeDom/4.4.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-2sCCb7doXEwtYAbqzbF/8UAeDRMNmPaQbU2q50Psg1J9KzumyVVCgKQY8s53WIPTufNT0DpSe9QRvVjOzfDWBA==",
+ "path": "system.codedom/4.4.0",
+ "hashPath": "system.codedom.4.4.0.nupkg.sha512"
+ },
+ "System.Collections.Immutable/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-l4zZJ1WU2hqpQQHXz1rvC3etVZN+2DLmQMO79FhOTZHMn8tDRr+WU287sbomD0BETlmKDn0ygUgVy9k5xkkJdA==",
+ "path": "system.collections.immutable/6.0.0",
+ "hashPath": "system.collections.immutable.6.0.0.nupkg.sha512"
+ },
+ "System.Composition/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-d7wMuKQtfsxUa7S13tITC8n1cQzewuhD5iDjZtK2prwFfKVzdYtgrTHgjaV03Zq7feGQ5gkP85tJJntXwInsJA==",
+ "path": "system.composition/6.0.0",
+ "hashPath": "system.composition.6.0.0.nupkg.sha512"
+ },
+ "System.Composition.AttributedModel/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-WK1nSDLByK/4VoC7fkNiFuTVEiperuCN/Hyn+VN30R+W2ijO1d0Z2Qm0ScEl9xkSn1G2MyapJi8xpf4R8WRa/w==",
+ "path": "system.composition.attributedmodel/6.0.0",
+ "hashPath": "system.composition.attributedmodel.6.0.0.nupkg.sha512"
+ },
+ "System.Composition.Convention/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-XYi4lPRdu5bM4JVJ3/UIHAiG6V6lWWUlkhB9ab4IOq0FrRsp0F4wTyV4Dj+Ds+efoXJ3qbLqlvaUozDO7OLeXA==",
+ "path": "system.composition.convention/6.0.0",
+ "hashPath": "system.composition.convention.6.0.0.nupkg.sha512"
+ },
+ "System.Composition.Hosting/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-w/wXjj7kvxuHPLdzZ0PAUt++qJl03t7lENmb2Oev0n3zbxyNULbWBlnd5J5WUMMv15kg5o+/TCZFb6lSwfaUUQ==",
+ "path": "system.composition.hosting/6.0.0",
+ "hashPath": "system.composition.hosting.6.0.0.nupkg.sha512"
+ },
+ "System.Composition.Runtime/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-qkRH/YBaMPTnzxrS5RDk1juvqed4A6HOD/CwRcDGyPpYps1J27waBddiiq1y93jk2ZZ9wuA/kynM+NO0kb3PKg==",
+ "path": "system.composition.runtime/6.0.0",
+ "hashPath": "system.composition.runtime.6.0.0.nupkg.sha512"
+ },
+ "System.Composition.TypedParts/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-iUR1eHrL8Cwd82neQCJ00MpwNIBs4NZgXzrPqx8NJf/k4+mwBO0XCRmHYJT4OLSwDDqh5nBLJWkz5cROnrGhRA==",
+ "path": "system.composition.typedparts/6.0.0",
+ "hashPath": "system.composition.typedparts.6.0.0.nupkg.sha512"
+ },
+ "System.IO.Pipelines/6.0.3": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-ryTgF+iFkpGZY1vRQhfCzX0xTdlV3pyaTTqRu2ETbEv+HlV7O6y7hyQURnghNIXvctl5DuZ//Dpks6HdL/Txgw==",
+ "path": "system.io.pipelines/6.0.3",
+ "hashPath": "system.io.pipelines.6.0.3.nupkg.sha512"
+ },
+ "System.Reflection.Metadata/6.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-III/lNMSn0ZRBuM9m5Cgbiho5j81u0FAEagFX5ta2DKbljZ3T0IpD8j+BIiHQPeKqJppWS9bGEp6JnKnWKze0g==",
+ "path": "system.reflection.metadata/6.0.1",
+ "hashPath": "system.reflection.metadata.6.0.1.nupkg.sha512"
+ },
+ "System.Runtime.CompilerServices.Unsafe/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==",
+ "path": "system.runtime.compilerservices.unsafe/6.0.0",
+ "hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512"
+ },
+ "System.Text.Encoding.CodePages/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-ZFCILZuOvtKPauZ/j/swhvw68ZRi9ATCfvGbk1QfydmcXBkIWecWKn/250UH7rahZ5OoDBaiAudJtPvLwzw85A==",
+ "path": "system.text.encoding.codepages/6.0.0",
+ "hashPath": "system.text.encoding.codepages.6.0.0.nupkg.sha512"
+ },
+ "System.Threading.Channels/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-TY8/9+tI0mNaUMgntOxxaq2ndTkdXqLSxvPmas7XEqOlv9lQtB7wLjYGd756lOaO7Dvb5r/WXhluM+0Xe87v5Q==",
+ "path": "system.threading.channels/6.0.0",
+ "hashPath": "system.threading.channels.6.0.0.nupkg.sha512"
+ }
+ }
+}
\ No newline at end of file
diff --git a/presence/data/bin/Debug/net8.0/data.dll b/presence/data/bin/Debug/net8.0/data.dll
new file mode 100644
index 0000000..34eaf5e
Binary files /dev/null and b/presence/data/bin/Debug/net8.0/data.dll differ
diff --git a/presence/data/bin/Debug/net8.0/data.pdb b/presence/data/bin/Debug/net8.0/data.pdb
new file mode 100644
index 0000000..fbcd706
Binary files /dev/null and b/presence/data/bin/Debug/net8.0/data.pdb differ
diff --git a/presence/data/bin/Debug/net8.0/data.runtimeconfig.json b/presence/data/bin/Debug/net8.0/data.runtimeconfig.json
new file mode 100644
index 0000000..244e1ab
--- /dev/null
+++ b/presence/data/bin/Debug/net8.0/data.runtimeconfig.json
@@ -0,0 +1,13 @@
+{
+ "runtimeOptions": {
+ "tfm": "net8.0",
+ "framework": {
+ "name": "Microsoft.NETCore.App",
+ "version": "8.0.0"
+ },
+ "configProperties": {
+ "System.Reflection.NullabilityInfoContext.IsSupported": true,
+ "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
+ }
+ }
+}
\ No newline at end of file
diff --git a/presence/data/bin/Debug/net9.0/data.dll b/presence/data/bin/Debug/net9.0/data.dll
index db95f8e..15c3860 100644
Binary files a/presence/data/bin/Debug/net9.0/data.dll and b/presence/data/bin/Debug/net9.0/data.dll differ
diff --git a/presence/data/bin/Debug/net9.0/data.pdb b/presence/data/bin/Debug/net9.0/data.pdb
index 358b702..17de836 100644
Binary files a/presence/data/bin/Debug/net9.0/data.pdb and b/presence/data/bin/Debug/net9.0/data.pdb differ
diff --git a/presence/data/data.csproj b/presence/data/data.csproj
index eedeaf2..2b2ccad 100644
--- a/presence/data/data.csproj
+++ b/presence/data/data.csproj
@@ -1,7 +1,7 @@
- net9.0
+ net8.0
enable
enable
diff --git a/presence/data/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/presence/data/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2217181
--- /dev/null
+++ b/presence/data/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
diff --git a/presence/data/obj/Debug/net8.0/data.AssemblyInfo.cs b/presence/data/obj/Debug/net8.0/data.AssemblyInfo.cs
new file mode 100644
index 0000000..3254a3e
--- /dev/null
+++ b/presence/data/obj/Debug/net8.0/data.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("data")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+a55a118f4f90ec351b8e7060cdde62bebbb8d3e4")]
+[assembly: System.Reflection.AssemblyProductAttribute("data")]
+[assembly: System.Reflection.AssemblyTitleAttribute("data")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Создано классом WriteCodeFragment MSBuild.
+
diff --git a/presence/data/obj/Debug/net8.0/data.AssemblyInfoInputs.cache b/presence/data/obj/Debug/net8.0/data.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..bcdcad1
--- /dev/null
+++ b/presence/data/obj/Debug/net8.0/data.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+3f9065aa2fe61992f8380c86968205b96681d76f6a7c6748edd5be2e88e409f4
diff --git a/presence/data/obj/Debug/net8.0/data.GeneratedMSBuildEditorConfig.editorconfig b/presence/data/obj/Debug/net8.0/data.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..e6b0373
--- /dev/null
+++ b/presence/data/obj/Debug/net8.0/data.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,15 @@
+is_global = true
+build_property.TargetFramework = net8.0
+build_property.TargetPlatformMinVersion =
+build_property.UsingMicrosoftNETSdkWeb =
+build_property.ProjectTypeGuids =
+build_property.InvariantGlobalization =
+build_property.PlatformNeutralAssembly =
+build_property.EnforceExtendedAnalyzerRules =
+build_property._SupportedPlatformList = Linux,macOS,Windows
+build_property.RootNamespace = data
+build_property.ProjectDir = C:\Users\User\Desktop\pr1\presence\data\
+build_property.EnableComHosting =
+build_property.EnableGeneratedComInterfaceComImportInterop =
+build_property.EffectiveAnalysisLevelStyle = 8.0
+build_property.EnableCodeStyleSeverity =
diff --git a/presence/data/obj/Debug/net8.0/data.GlobalUsings.g.cs b/presence/data/obj/Debug/net8.0/data.GlobalUsings.g.cs
new file mode 100644
index 0000000..8578f3d
--- /dev/null
+++ b/presence/data/obj/Debug/net8.0/data.GlobalUsings.g.cs
@@ -0,0 +1,8 @@
+//
+global using global::System;
+global using global::System.Collections.Generic;
+global using global::System.IO;
+global using global::System.Linq;
+global using global::System.Net.Http;
+global using global::System.Threading;
+global using global::System.Threading.Tasks;
diff --git a/presence/data/obj/Debug/net8.0/data.assets.cache b/presence/data/obj/Debug/net8.0/data.assets.cache
new file mode 100644
index 0000000..e43a3fd
Binary files /dev/null and b/presence/data/obj/Debug/net8.0/data.assets.cache differ
diff --git a/presence/data/obj/Debug/net8.0/data.csproj.AssemblyReference.cache b/presence/data/obj/Debug/net8.0/data.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..be0d5cf
Binary files /dev/null and b/presence/data/obj/Debug/net8.0/data.csproj.AssemblyReference.cache differ
diff --git a/presence/data/obj/Debug/net8.0/data.csproj.BuildWithSkipAnalyzers b/presence/data/obj/Debug/net8.0/data.csproj.BuildWithSkipAnalyzers
new file mode 100644
index 0000000..e69de29
diff --git a/presence/data/obj/Debug/net8.0/data.csproj.CoreCompileInputs.cache b/presence/data/obj/Debug/net8.0/data.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..6646a83
--- /dev/null
+++ b/presence/data/obj/Debug/net8.0/data.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+0d76d734030a7c3a2021ac03b9019279b9dd67fc9499d835792f8cb69ddcfc7f
diff --git a/presence/data/obj/Debug/net8.0/data.csproj.FileListAbsolute.txt b/presence/data/obj/Debug/net8.0/data.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..4368763
--- /dev/null
+++ b/presence/data/obj/Debug/net8.0/data.csproj.FileListAbsolute.txt
@@ -0,0 +1,14 @@
+C:\Users\User\Desktop\pr1\presence\data\bin\Debug\net8.0\data.deps.json
+C:\Users\User\Desktop\pr1\presence\data\bin\Debug\net8.0\data.runtimeconfig.json
+C:\Users\User\Desktop\pr1\presence\data\bin\Debug\net8.0\data.dll
+C:\Users\User\Desktop\pr1\presence\data\bin\Debug\net8.0\data.pdb
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\data.csproj.AssemblyReference.cache
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\data.GeneratedMSBuildEditorConfig.editorconfig
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\data.AssemblyInfoInputs.cache
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\data.AssemblyInfo.cs
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\data.csproj.CoreCompileInputs.cache
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\data.dll
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\refint\data.dll
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\data.pdb
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\data.genruntimeconfig.cache
+C:\Users\User\Desktop\pr1\presence\data\obj\Debug\net8.0\ref\data.dll
diff --git a/presence/data/obj/Debug/net8.0/data.dll b/presence/data/obj/Debug/net8.0/data.dll
new file mode 100644
index 0000000..34eaf5e
Binary files /dev/null and b/presence/data/obj/Debug/net8.0/data.dll differ
diff --git a/presence/data/obj/Debug/net8.0/data.genruntimeconfig.cache b/presence/data/obj/Debug/net8.0/data.genruntimeconfig.cache
new file mode 100644
index 0000000..9680d57
--- /dev/null
+++ b/presence/data/obj/Debug/net8.0/data.genruntimeconfig.cache
@@ -0,0 +1 @@
+e6d6869757ca8abf3508199f541e6bf74bb32e844f324ca83d583d228d233482
diff --git a/presence/data/obj/Debug/net8.0/data.pdb b/presence/data/obj/Debug/net8.0/data.pdb
new file mode 100644
index 0000000..fbcd706
Binary files /dev/null and b/presence/data/obj/Debug/net8.0/data.pdb differ
diff --git a/presence/data/obj/Debug/net8.0/ref/data.dll b/presence/data/obj/Debug/net8.0/ref/data.dll
new file mode 100644
index 0000000..4c8373c
Binary files /dev/null and b/presence/data/obj/Debug/net8.0/ref/data.dll differ
diff --git a/presence/data/obj/Debug/net8.0/refint/data.dll b/presence/data/obj/Debug/net8.0/refint/data.dll
new file mode 100644
index 0000000..4c8373c
Binary files /dev/null and b/presence/data/obj/Debug/net8.0/refint/data.dll differ
diff --git a/presence/data/obj/Debug/net9.0/data.dll b/presence/data/obj/Debug/net9.0/data.dll
index db95f8e..15c3860 100644
Binary files a/presence/data/obj/Debug/net9.0/data.dll and b/presence/data/obj/Debug/net9.0/data.dll differ
diff --git a/presence/data/obj/Debug/net9.0/data.pdb b/presence/data/obj/Debug/net9.0/data.pdb
index 358b702..17de836 100644
Binary files a/presence/data/obj/Debug/net9.0/data.pdb and b/presence/data/obj/Debug/net9.0/data.pdb differ
diff --git a/presence/data/obj/Debug/net9.0/ref/data.dll b/presence/data/obj/Debug/net9.0/ref/data.dll
index efa07e0..c896d04 100644
Binary files a/presence/data/obj/Debug/net9.0/ref/data.dll and b/presence/data/obj/Debug/net9.0/ref/data.dll differ
diff --git a/presence/data/obj/Debug/net9.0/refint/data.dll b/presence/data/obj/Debug/net9.0/refint/data.dll
index efa07e0..c896d04 100644
Binary files a/presence/data/obj/Debug/net9.0/refint/data.dll and b/presence/data/obj/Debug/net9.0/refint/data.dll differ
diff --git a/presence/data/obj/data.csproj.nuget.dgspec.json b/presence/data/obj/data.csproj.nuget.dgspec.json
index 9158cbe..22177f0 100644
--- a/presence/data/obj/data.csproj.nuget.dgspec.json
+++ b/presence/data/obj/data.csproj.nuget.dgspec.json
@@ -22,7 +22,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -30,8 +30,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {}
}
},
@@ -48,8 +48,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": {
"target": "Package",
diff --git a/presence/data/obj/project.assets.json b/presence/data/obj/project.assets.json
index 94988f9..3894b92 100644
--- a/presence/data/obj/project.assets.json
+++ b/presence/data/obj/project.assets.json
@@ -1,7 +1,7 @@
{
"version": 3,
"targets": {
- "net9.0": {
+ "net8.0": {
"Humanizer.Core/2.14.1": {
"type": "package",
"compile": {
@@ -2103,7 +2103,7 @@
}
},
"projectFileDependencyGroups": {
- "net9.0": [
+ "net8.0": [
"Microsoft.EntityFrameworkCore >= 8.0.10",
"Microsoft.EntityFrameworkCore.Design >= 8.0.10",
"Npgsql.EntityFrameworkCore.PostgreSQL >= 8.0.10"
@@ -2116,11 +2116,11 @@
"project": {
"version": "1.0.0",
"restore": {
- "projectUniqueName": "C:\\Users\\User\\desktop\\pr1\\presence\\data\\data.csproj",
+ "projectUniqueName": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj",
"projectName": "data",
- "projectPath": "C:\\Users\\User\\desktop\\pr1\\presence\\data\\data.csproj",
+ "projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj",
"packagesPath": "C:\\Users\\User\\.nuget\\packages\\",
- "outputPath": "C:\\Users\\User\\desktop\\pr1\\presence\\data\\obj\\",
+ "outputPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
@@ -2131,7 +2131,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -2139,8 +2139,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {}
}
},
@@ -2157,8 +2157,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": {
"target": "Package",
diff --git a/presence/data/obj/project.nuget.cache b/presence/data/obj/project.nuget.cache
index 2c95ebe..6057f31 100644
--- a/presence/data/obj/project.nuget.cache
+++ b/presence/data/obj/project.nuget.cache
@@ -1,6 +1,6 @@
{
"version": 2,
- "dgSpecHash": "k/x3QKOHUyg=",
+ "dgSpecHash": "/DAwB35ADss=",
"success": true,
"projectFilePath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj",
"expectedPackageFiles": [
diff --git a/presence/domain/Models/ResponseModels/GroupResponse.cs b/presence/domain/Models/ResponseModels/GroupResponse.cs
index 85f5992..d0605e5 100644
--- a/presence/domain/Models/ResponseModels/GroupResponse.cs
+++ b/presence/domain/Models/ResponseModels/GroupResponse.cs
@@ -1,5 +1,15 @@
-public class GroupResponse
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace domain.Models.ResponseModels
{
- public int Id { get; set; }
- public string Name { get; set; }
+ public class GroupResponse
+ {
+ public int Id { get; set; }
+ public string Name { get; set; }
+ public IEnumerable User { get; set; }
+ }
}
\ No newline at end of file
diff --git a/presence/domain/Models/ResponseModels/PresenceResponse.cs b/presence/domain/Models/ResponseModels/PresenceResponse.cs
new file mode 100644
index 0000000..49414a3
--- /dev/null
+++ b/presence/domain/Models/ResponseModels/PresenceResponse.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace domain.Models.ResponseModels
+{
+ public class PresenceResponse
+ {
+ public required DateOnly Date { get; set; }
+ public int ClassNumber { get; set; }
+ public bool IsAttendence { get; set; }
+ public required UserResponse User { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/presence/domain/Models/ResponseModels/UserResponse.cs b/presence/domain/Models/ResponseModels/UserResponse.cs
new file mode 100644
index 0000000..84cf17d
--- /dev/null
+++ b/presence/domain/Models/ResponseModels/UserResponse.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace domain.Models.ResponseModels
+{
+ public class UserResponse
+ {
+ public required string FIO { get; set; }
+ public int Id { get; set; }
+ public int GroupId { get; set; }
+ public GroupResponse Group { get; set; }
+ }
+}
diff --git a/presence/domain/Models/User.cs b/presence/domain/Models/User.cs
index f117b7f..8a7b92d 100644
--- a/presence/domain/Models/User.cs
+++ b/presence/domain/Models/User.cs
@@ -9,9 +9,7 @@ namespace Demo.domain.Models
public class User
{
public required string FIO { get; set; }
- public Guid Guid { get; set; }
- public int GroupId { get; set; }
- public Group? Group { get; set; }
-
+ public int Id { get; set; }
+ public required Group GroupId { get; set; }
}
}
diff --git a/presence/domain/Request/AddGroupWithStudent.cs b/presence/domain/Request/AddGroupWithStudent.cs
index e15d1f1..34ab1a4 100644
--- a/presence/domain/Request/AddGroupWithStudent.cs
+++ b/presence/domain/Request/AddGroupWithStudent.cs
@@ -9,6 +9,6 @@ namespace domain.Request
public class AddGroupWithStudentsRequest
{
public AddGroupRequest addGroupRequest { get; set; }
- public IEnumerable AddStudentRequests { get; set; }
+ public IEnumerable AddStudentRequests { get; set; }
}
}
diff --git a/presence/domain/Service/GroupService.cs b/presence/domain/Service/GroupService.cs
index 4115c75..502667e 100644
--- a/presence/domain/Service/GroupService.cs
+++ b/presence/domain/Service/GroupService.cs
@@ -1,89 +1,84 @@
-using data.RemoteData.RemoteDataBase.DAO;
-using Demo.Data.RemoteData.RemoteDataBase.DAO;
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
using Demo.Data.Repository;
+using Demo.Domain.UseCase;
+using domain.Entity;
+using domain.Models.ResponseModels;
+using domain.Request;
using domain.UseCase;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
namespace domain.Service
{
public class GroupService : IGroupUseCase
{
- private readonly IGroupRepository _SQLGroupRepositoryImpl;
-
- public GroupService(IGroupRepository SQlGroupRepositoryImpl)
+ private readonly IGroupRepository _groupRepository;
+ public GroupService(IGroupRepository groupRepository)
{
- _SQLGroupRepositoryImpl = SQlGroupRepositoryImpl;
+ _groupRepository = groupRepository;
}
-
- // Приватный метод для валидации имени группы
- public void ValidateGroupName(string groupName)
+ public void AddGroup(AddGroupRequest addGroupRequest)
{
- if (string.IsNullOrWhiteSpace(groupName))
- {
- throw new ArgumentException("Имя группы не может быть пустым.");
- }
- }
-
- public void ValidateGroupId(int GroupId)
- {
- if (GroupId < 1)
- {
- throw new ArgumentException("Введите корректный ID группы.");
- }
- }
-
- // Приватный метод для валидации существования группы по ID
- public GroupDao ValidateGroupExistence(int groupId)
- {
- var existingGroup = _SQLGroupRepositoryImpl.GetAllGroup()
- .FirstOrDefault(g => g.Id == groupId);
-
- if (existingGroup == null)
- {
- throw new ArgumentException("Группа не найдена.");
- }
-
- return existingGroup;
+ _groupRepository.AddGroup(new GroupDao { Name = addGroupRequest.Name });
}
- // Метод для получения списка всех групп
- public List GetAllGroups()
+
+ public void AddGroupWithStudents(AddGroupWithStudentsRequest addGroupWithStudents)
{
- return _SQLGroupRepositoryImpl.GetAllGroup();
+ GroupDao groupDAO = new GroupDao { Name = addGroupWithStudents.addGroupRequest.Name };
+ List users = addGroupWithStudents
+ .AddStudentRequests
+ .Select(it => new UserDao { FIO = it.StudentName })
+ .ToList();
+ _groupRepository.AddStudents(groupDAO, users);
}
- // Метод для получения группы по ID
- public string FindGroupById(int IdGroup)
+ public async Task> GetGroupsWithStudentsAsync()
{
- string groups = _SQLGroupRepositoryImpl.GetGroupById(IdGroup).Name;
+ var result = await _groupRepository.getAllGroupAsync();
- return groups;
+ return result.Select(
+ group => new GroupResponse
+ {
+ Id = group.Id,
+ Name = group.Name,
+ User = group.Users.Select(
+ user => new UserResponse
+ {
+ Id = user.UserId,
+ FIO = user.FIO,
+ Group = new GroupResponse
+ {
+ Id = group.Id,
+ Name = group.Name,
+ }
+ }).ToList()
+ }).ToList();
}
-
- // Метод для добавления новой группы
- public void AddGroup(string groupName)
+ public IEnumerable GetGroupsWithStudents()
{
- ValidateGroupName(groupName);
- GroupDao newGroup = new GroupDao
- {
- Name = groupName
- };
-
- _SQLGroupRepositoryImpl.AddGroup(newGroup);
+ return _groupRepository.GetAllGroup().Select(
+ group => new GroupResponse
+ {
+ Id = group.Id,
+ Name = group.Name,
+ User = group.Users != null ? group.Users.Select(
+ user => new UserResponse
+ {
+ Id = user.UserId,
+ FIO = user.FIO,
+ Group = new GroupResponse
+ {
+ Id = group.Id,
+ Name = group.Name,
+ }
+ }).ToList() : new List()
+ }).ToList();
}
-
-
- // Метод для изменения названия группы
- public void UpdateGroup(int groupId, string newGroupName)
- {
- ValidateGroupName(newGroupName);
- var existingGroup = ValidateGroupExistence(groupId);
-
- existingGroup.Name = newGroupName;
- _SQLGroupRepositoryImpl.UpdateGroupById(groupId, existingGroup);
- }
-
-
}
-}
\ No newline at end of file
+}
diff --git a/presence/domain/UseCase/AdminUseCase.cs b/presence/domain/UseCase/AdminUseCase.cs
index cfed6e1..78ad417 100644
--- a/presence/domain/UseCase/AdminUseCase.cs
+++ b/presence/domain/UseCase/AdminUseCase.cs
@@ -1,12 +1,62 @@
-using System;
+using data.Repository;
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
+using Demo.Data.Repository;
+using domain.Models.ResponseModels;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace Demo.Domain.UseCase
+namespace domain.UseCase
{
- internal class AdminUseCase
+ public class AdminUseCase
{
+ private readonly IAdminRepository _adminRepository;
+ private readonly IGroupRepository _groupRepository;
+
+
+ public AdminUseCase(IAdminRepository adminRepository, IGroupRepository groupRepository)
+ {
+ _adminRepository = adminRepository;
+ _groupRepository = groupRepository;
+ }
+
+ public IEnumerable GetAllGroupsWithStudents() =>
+ _adminRepository.GetAllGroupsWithStudents().Select(it => new GroupResponse
+ {
+ Name = it.Name,
+ Id = it.Id,
+ User = it.Users.Where(u => u.GroupId == it.Id)
+ .Select(u => new UserResponse { Id = u.UserId, FIO = u.FIO })
+ .ToList()
+ })
+ .ToList();
+
+ public UserResponse GetStudentInfo(int userId)
+ {
+
+ var studentInfo = _adminRepository.GetStudentInfo(userId);
+ if (studentInfo == null) return null;
+
+ UserResponse user = new UserResponse
+ {
+ Id = userId,
+ FIO = _adminRepository.GetStudentInfo(userId).FIO,
+ GroupId = _adminRepository.GetStudentInfo(userId).GroupId
+ };
+ return user;
+ }
+
+ public bool AddStudents(string GroupName, List Students)
+ {
+ GroupDao groupDao = new GroupDao { Name = GroupName };
+ return _adminRepository.AddStudents(groupDao, Students);
+ }
+
+ public bool DeleteGroup(int groupId) => _groupRepository.RemoveGroupById(groupId);
+
+ public bool DeleteUserFromGroup(int userId, int groupId) => _adminRepository.RemoveUserById(userId, groupId);
+
}
}
diff --git a/presence/domain/UseCase/GroupUseCase.cs b/presence/domain/UseCase/GroupUseCase.cs
index 4277df5..97ab796 100644
--- a/presence/domain/UseCase/GroupUseCase.cs
+++ b/presence/domain/UseCase/GroupUseCase.cs
@@ -1,145 +1,31 @@
-using Demo.Data.LocalData;
+using Demo.Data.Exceptions;
+using Demo.Data.LocalData;
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
using Demo.Data.Repository;
using Demo.domain.Models;
+using domain.Models.ResponseModels;
namespace Demo.Domain.UseCase
{
- // Класс, представляющий бизнес-логику для работы с группами
public class GroupUseCase
{
- // Репозиторий для работы с группами (интерфейс)
private readonly IGroupRepository _repositoryGroupImpl;
- // Конструктор, принимающий репозиторий в качестве зависимости
public GroupUseCase(IGroupRepository repositoryGroupImpl)
{
_repositoryGroupImpl = repositoryGroupImpl;
}
- // Метод для проверки существования группы по ее ID
- private GroupLocalEntity ValidateGroupExistence(int groupId)
+ public List GetAllGroups() => _repositoryGroupImpl.GetAllGroup()
+ .Select(it => new GroupResponse { Id = it.Id, Name = it.Name }).ToList();
+
+ public bool UpdateGroupName(String id, String name1)
{
- // Получение группы по ID
- var existingGroup = _repositoryGroupImpl.GetAllGroup()
- .FirstOrDefault(g => g.Id == groupId);
-
- // Если группа не найдена
- if (existingGroup == null)
- {
- throw new ArgumentException("Группа не найдена.");
- }
-
- // Возвращение существующей группы
- return new GroupLocalEntity
- {
- Id = existingGroup.Id,
- Name = existingGroup.Name
- };
+ return _repositoryGroupImpl.UpdateGroupById(int.Parse(id), name1);
}
-
- // Метод получения всех групп
- public List GetAllGroups()
+ public bool AddGroup(String name, int id)
{
- // Получение всех групп и преобразование их в список объектов Group
- return _repositoryGroupImpl.GetAllGroup()
- .Select(it => new Group { Id = it.Id, Name = it.Name })
- .ToList();
- }
-
- // Метод для поиска группы по ID
- public Group FindGroupById(int groupId)
- {
- // Ищем группу в списке всех групп
- var group = GetAllGroups().FirstOrDefault(g => g.Id == groupId);
-
- // Если группа не найдена
- if (group == null)
- {
- throw new ArgumentException("Группа не найдена.");
- }
-
- return group; // Возвращение найденной группы
- }
-
- // Метод добавления новой группы
- public void AddGroup(string groupName)
- {
- // Определяем новый ID для группы
- var newId = _repositoryGroupImpl.GetAllGroup().Any()
- ? _repositoryGroupImpl.GetAllGroup().Max(g => g.Id) + 1
- : 1;
-
- // Создаем новую группу
- GroupLocalEntity newGroup = new GroupLocalEntity
- {
- Id = newId,
- Name = groupName
- };
-
- // Добавление группы в репозиторий
- _repositoryGroupImpl.AddGroup(newGroup);
- }
-
- // Метод удаления группы по ID
- public void RemoveGroupById(int groupId)
- {
- // Проверяем существование группы
- var existingGroup = ValidateGroupExistence(groupId);
-
- // Получаем все группы для удаления
- List _groups = GetAllGroups();
-
- // Находим группу по ID и удаляем ее из репозитория
- var groupToRemove = _groups.FirstOrDefault(g => g.Id == existingGroup.Id);
- if (groupToRemove != null)
- {
- _groups.Remove(groupToRemove); // Удаляем группу из списка (если нужно)
- _repositoryGroupImpl.RemoveGroupById(existingGroup.Id); // Удаляем из репозитория
- }
- else
- {
- throw new ArgumentException("Группа не найдена."); // Если есть ошибки
- }
- }
-
- // Метод изменения названия группы
- public bool UpdateGroup(int groupId, string newGroupName)
- {
- // Проверяем существование группы по ID
- var existingGroup = _repositoryGroupImpl.GetAllGroup()
- .FirstOrDefault(g => g.Id == groupId);
-
- // Если группа не найдена, возвращаем false
- if (existingGroup == null)
- {
- return false;
- }
-
- // Обновляем название группы
- existingGroup.Name = newGroupName;
-
- // Сохраняем изменения в репозитории
- _repositoryGroupImpl.UpdateGroupById(existingGroup.Id, existingGroup);
-
- return true; // Успешное обновление
- }
- public List GetAllGroupWithStident()
- {
- // Загружаем группы с пользователями
- var groups = _repositoryGroupImpl.GetAllGroupWithStident()
- .Select(g => new Group
- {
- Id = g.Id,
- Name = g.Name,
- Users = g.Users.Select(u => new User
- {
- Guid = u.Guid,
- FIO = u.FIO
- }).ToList()
- })
- .ToList();
-
- return groups;
+ return _repositoryGroupImpl.AddGroup(new GroupDao { Name = name, Id = id });
}
}
-}
+}
\ No newline at end of file
diff --git a/presence/domain/UseCase/IAdminUseCase.cs b/presence/domain/UseCase/IAdminUseCase.cs
new file mode 100644
index 0000000..d909ad7
--- /dev/null
+++ b/presence/domain/UseCase/IAdminUseCase.cs
@@ -0,0 +1,18 @@
+using domain.Models.ResponseModels;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace domain.UseCase
+{
+ public interface IAdminUseCase
+ {
+ IEnumerable GetAllGroupsWithStudents();
+ UserResponse GetStudentInfo(int userId);
+ bool AddStudents(string GroupName, List Students);
+ bool DeleteGroup(int groupId);
+ bool DeleteUserFromGroup(int userId, int groupId);
+ }
+}
diff --git a/presence/domain/UseCase/IGroupUseCase.cs b/presence/domain/UseCase/IGroupUseCase.cs
index 95429a0..f19b03c 100644
--- a/presence/domain/UseCase/IGroupUseCase.cs
+++ b/presence/domain/UseCase/IGroupUseCase.cs
@@ -1,4 +1,5 @@
using domain.Entity;
+using domain.Models.ResponseModels;
using domain.Request;
using System;
using System.Collections.Generic;
@@ -10,9 +11,10 @@ namespace domain.UseCase
{
public interface IGroupUseCase
{
- public IEnumerable GetGroupsWithStudents();
- public Task> GetGroupsWithStudentsAsync();
+ public Task> GetGroupsWithStudentsAsync();
+ public IEnumerable GetGroupsWithStudents();
public void AddGroup(AddGroupRequest addGroupRequest);
- public void AddGroupWithSutdents(AddGroupWithStudentsRequest addGroupWithStudents);
+ public void AddGroupWithStudents(AddGroupWithStudentsRequest addGroupWithStudents);
+
}
-}
+}
\ No newline at end of file
diff --git a/presence/domain/UseCase/IPresenceUseCase.cs b/presence/domain/UseCase/IPresenceUseCase.cs
new file mode 100644
index 0000000..07330fe
--- /dev/null
+++ b/presence/domain/UseCase/IPresenceUseCase.cs
@@ -0,0 +1,25 @@
+using Demo.domain.Models;
+using domain.Models.ResponseModels;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace domain.UseCase
+{
+ public interface IPresenceUseCase
+ {
+ List GetPresence(int GroupId, DateOnly startData, DateOnly endData, int UserId);
+ List GetPresenceByGroup(int groupId);
+ List GetPresenceByGroupAndDate(int groupId, DateOnly date);
+ bool UncheckAttendence(int firstClass, int lastClass, DateOnly date, int userId);
+ void AddPresence(int firstClass, int lastClass, int groupId, DateOnly date);
+ List AddPresenceByDate(String startDate, String endDate, int groupId);
+ Dictionary GetPresenceStatsByGroup(int groupId);
+ void GenerateWeeklyPresence(int firstClass, int lastClass, int groupId, DateOnly startDate);
+ bool DeletePresenceByGroup(int groupId);
+ bool DeletePresenceByUser(int UserId);
+ bool DeletePresenceByDate(DateOnly startData, DateOnly endData);
+ }
+}
diff --git a/presence/domain/UseCase/IUserUseCase.cs b/presence/domain/UseCase/IUserUseCase.cs
new file mode 100644
index 0000000..6f4cd0a
--- /dev/null
+++ b/presence/domain/UseCase/IUserUseCase.cs
@@ -0,0 +1,14 @@
+using domain.Models.ResponseModels;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace domain.UseCase
+{
+ public interface IUserUseCase
+ {
+ public IEnumerable GetStudents();
+ }
+}
diff --git a/presence/domain/UseCase/PresenceUseCase.cs b/presence/domain/UseCase/PresenceUseCase.cs
new file mode 100644
index 0000000..814e4f6
--- /dev/null
+++ b/presence/domain/UseCase/PresenceUseCase.cs
@@ -0,0 +1,247 @@
+using Demo.Data.RemoteData.RemoteDataBase.DAO;
+using Demo.Data.Repository;
+using Demo.domain.Models;
+using domain.Models.ResponseModels;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Threading.Tasks;
+
+namespace domain.UseCase
+{
+ public class PresenceUseCase
+ {
+ public readonly IUserRepository _userRepository;
+ public readonly IPresenceRepository _presenceRepository;
+ private readonly IGroupRepository _groupRepository;
+
+ public PresenceUseCase(IPresenceRepository repositoryImpl,
+ IUserRepository userRepositoryImpl,
+ IGroupRepository groupRepositoryImpl)
+ {
+ _presenceRepository = repositoryImpl;
+ _userRepository = userRepositoryImpl;
+ _groupRepository = groupRepositoryImpl;
+ }
+
+ public List GetPresence(int GroupId, DateOnly startData, DateOnly endData, int UserId)
+ {
+ var users = _userRepository.GetAllUser().Where(x => x.GroupId == GroupId).ToList();
+
+ var presence = _presenceRepository.GetPresence(GroupId, startData, endData, UserId)
+ .Where(x => users.Any(user => user.UserId == x.UserId))
+ .Select(presence => new PresenceResponse
+ {
+ User = new UserResponse
+ {
+ Id = presence.UserId,
+ Group = new GroupResponse { Id = GroupId, Name = _groupRepository.GetGroupById(GroupId).Name },
+ FIO = users.First(user => user.UserId == presence.UserId).FIO,
+ },
+ ClassNumber = presence.ClassNumber,
+ Date = presence.Date,
+ IsAttendence = presence.IsAttendence
+ }).ToList();
+ return presence;
+ }
+
+ public List GetPresenceByGroup(int groupId)
+ {
+ var users = _userRepository.GetAllUser().Where(x => x.GroupId == groupId).ToList();
+
+ var presenceByGroup = _presenceRepository.GetPresenceByGroup(groupId)
+ .Where(x => users.Any(user => user.UserId == x.UserId))
+ .Select(presence => new PresenceResponse
+ {
+ User = new UserResponse
+ {
+ Id = presence.UserId,
+ Group = new GroupResponse { Id = groupId, Name = _groupRepository.GetGroupById(groupId).Name },
+ FIO = users.First(user => user.UserId == presence.UserId).FIO,
+ },
+ ClassNumber = presence.ClassNumber,
+ Date = presence.Date,
+ IsAttendence = presence.IsAttendence
+ }).ToList();
+ return presenceByGroup;
+ }
+
+ public List GetPresenceByGroupAndDate(int groupId, DateOnly date)
+ {
+ var users = _userRepository.GetAllUser().Where(x => x.GroupId == groupId).ToList();
+
+ var presenceByGroupAndDate = _presenceRepository.GetPresenceByGroupAndDate(groupId, date)
+ .Where(x => users.Any(user => user.UserId == x.UserId && x.Date == date))
+ .Select(presence => new PresenceDao
+ {
+ User = new User
+ {
+ Id = presence.UserId,
+ GroupId = new Group { Id = groupId, Name = _groupRepository.GetGroupById(groupId).Name },
+ FIO = users.First(user => user.UserId == presence.UserId).FIO,
+ },
+ ClassNumber = presence.ClassNumber,
+ Date = presence.Date,
+ IsAttendence = presence.IsAttendence
+ }).ToList();
+ return presenceByGroupAndDate;
+ }
+
+ public bool UncheckAttendence(int firstClass, int lastClass, DateOnly date, int userId)
+ {
+ return _presenceRepository.UncheckAttendence(firstClass, lastClass, date, userId);
+ }
+
+ public void AddPresence(int firstClass, int lastClass, int groupId, DateOnly date)
+ {
+ var users = _userRepository.GetAllUser().Where(x => x.GroupId == groupId).ToList();
+ List presenceList = new List();
+ for (int i = firstClass; i < lastClass; i++)
+ {
+ foreach (var user in users)
+ {
+ Presence pres = new PresenceDao
+ {
+ ClassNumber = i,
+ Date = date,
+ User = new User
+ {
+ Id = user.UserId,
+ FIO = user.FIO,
+ GroupId = new Group
+ {
+ Id = groupId,
+ Name = _groupRepository.GetGroupById(groupId).Name
+ }
+ }
+ };
+ presenceList.Add(pres);
+ }
+ }
+ }
+
+ public List AddPresenceByDate(String startDate, String endDate, int groupId)
+ {
+ var users = _userRepository.GetAllUser().Where(x => x.GroupId == groupId).ToList();
+ List presenceList = new List();
+
+ for (var currentDate = DateOnly.Parse(startDate); currentDate <= DateOnly.Parse(endDate); currentDate = currentDate.AddDays(1))
+ {
+ for (int i = 1; i < 8; i++)
+ {
+ if (currentDate.DayOfWeek == DayOfWeek.Saturday ||
+ currentDate.DayOfWeek == DayOfWeek.Sunday)
+ {
+ continue;
+ }
+
+ foreach (var user in users)
+ {
+ var presenceDao = new PresenceDao
+ {
+ ClassNumber = i,
+ Date = currentDate,
+ UserId = user.UserId,
+ User = user,
+ GroupId = groupId
+ };
+ _presenceRepository.AddPresence(presenceDao);
+ }
+ }
+
+ }
+ return presenceList;
+ }
+
+ public Dictionary GetPresenceStatsByGroup(int groupId)
+ {
+ var stats = new Dictionary();
+
+
+ // Получаем всех студентов группы
+ var users = _userRepository.GetAllUser().Where(x => x.GroupId == groupId).ToList();
+ stats["Количество студентов"] = users.Count;
+
+ // Получаем все записи посещаемости для группы
+ var presences = _presenceRepository.GetPresenceByGroup(groupId);
+
+ // Считаем количество уникальных занятий
+ var uniqueLessons = presences
+ .Select(p => new { p.Date, p.ClassNumber })
+ .Distinct()
+ .Count();
+ stats["Количество занятий"] = uniqueLessons;
+
+ // Считаем общую посещаемость
+ var totalAttendances = presences.Count(p => p.IsAttendence);
+ var totalPossibleAttendances = users.Count * uniqueLessons;
+
+ if (totalPossibleAttendances > 0)
+ {
+ var attendancePercentage = (totalAttendances * 100) / totalPossibleAttendances;
+ stats["Процент посещаемости"] = attendancePercentage;
+ }
+ else
+ {
+ stats["Процент посещаемости"] = 0;
+ }
+
+ return stats;
+ }
+
+ public void GenerateWeeklyPresence(int firstClass, int lastClass, int groupId, DateOnly startDate)
+ {
+ // Получаем всех студентов группы
+ var users = _userRepository.GetAllUser().Where(x => x.GroupId == groupId).ToList();
+
+ // Генерируем посещаемость на 7 дней
+ for (int day = 0; day < 7; day++)
+ {
+ var currentDate = startDate.AddDays(day);
+
+ // Пропускаем выходные дни (суббота и воскресенье)
+ if (currentDate.DayOfWeek == DayOfWeek.Saturday ||
+ currentDate.DayOfWeek == DayOfWeek.Sunday)
+ {
+ continue;
+ }
+
+ // Для каждой пары в диапазоне
+ for (int classNum = firstClass; classNum <= lastClass; classNum++)
+ {
+ foreach (var user in users)
+ {
+ var presence = new PresenceDao
+ {
+ ClassNumber = classNum,
+ Date = currentDate,
+ UserId = user.UserId,
+ User = user,
+ GroupId = groupId
+ };
+
+ _presenceRepository.AddPresence(presence);
+ }
+ }
+ }
+ }
+
+ public bool DeletePresenceByGroup(int groupId)
+ {
+ return _presenceRepository.DeletePresenceByGroup(groupId);
+ }
+
+ public bool DeletePresenceByUser(int UserId)
+ {
+ return _presenceRepository.DeletePresenceByUser(UserId);
+ }
+
+ public bool DeletePresenceByDate(DateOnly startData, DateOnly endData)
+ {
+ return _presenceRepository.DeletePresenceByDate(startData, endData);
+ }
+ }
+}
+
diff --git a/presence/domain/UseCase/UseCaseGeneratePresence.cs b/presence/domain/UseCase/UseCaseGeneratePresence.cs
deleted file mode 100644
index 328882c..0000000
--- a/presence/domain/UseCase/UseCaseGeneratePresence.cs
+++ /dev/null
@@ -1,99 +0,0 @@
-using data.RemoteData.RemoteDataBase.DAO;
-using Demo.Data.Repository;
-using Demo.domain.Models;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Demo.Domain.UseCase
-{
- public class UseCaseGeneratePresence
- {
- public readonly IUserRepository _userRepository;
- public readonly IPresenceRepository _presenceRepository;
- private readonly IGroupRepository _groupRepository;
-
- public UseCaseGeneratePresence(IUserRepository userRepository, IPresenceRepository presenceRepository, IGroupRepository groupRepository)
- {
- _userRepository = userRepository;
- _presenceRepository = presenceRepository;
- _groupRepository = groupRepository;
- }
-
- public List GetPresenceByGroupAndDate(int groupId, DateTime date)
- {
- return _presenceRepository.GetPresenceByGroupAndDate(groupId, date);
- }
-
-
- public void GeneratePresenceForDay(int firstLesson, int lastLesson, int groupId, DateTime currentDate)
- {
- // Проверка существования группы
- var groupExists = _groupRepository.GetAllGroup().Any(g => g.Id == groupId);
- if (!groupExists)
- {
- throw new ArgumentException($"Группа с ID {groupId} не существует.");
- }
-
- var users = _userRepository.GetAllUsers.Where(u => u.GroupID == groupId).ToList();
- List presences = new List();
- for (int lessonNumber = firstLesson; lessonNumber <= lastLesson; lessonNumber++)
- {
- foreach (var user in users)
- {
- presences.Add(new PresenceLocalEntity
- {
- UserGuid = user.Guid,
- Date = currentDate,
- LessonNumber = lessonNumber,
- IsAttedance = true
- });
- }
- }
- _presenceRepository.SavePresence(presences);
- }
-
- public void GeneratePresenceForWeek(int firstLesson, int lastLesson, int groupId, DateTime startTime)
- {
- // Проверка существования группы
- var groupExists = _groupRepository.GetAllGroup().Any(g => g.Id == groupId);
- if (!groupExists)
- {
- throw new ArgumentException($"Группа с ID {groupId} не существует.");
- }
-
- for (int i = 0; i < 7; i++)
- {
- DateTime currentTime = startTime.AddDays(i);
- GeneratePresenceForDay(firstLesson, lastLesson, groupId, currentTime);
- }
- }
-
-
-
-
- public void MarkUserAsAbsent(Guid userGuid, int groupId, int firstLesson, int lastLesson, DateTime date)
- {
- var presences = _presenceRepository.GetPresenceByGroupAndDate(groupId, date);
- foreach (var presence in presences.Where(p => p.UserGuid == userGuid && p.LessonNumber >= firstLesson && p.LessonNumber <= lastLesson))
- {
- presence.IsAttedance = false;
- }
- _presenceRepository.SavePresence(presences);
- }
-
-
-
- public List GetAllPresenceByGroup(int groupId)
- {
- return _presenceRepository.GetPresenceByGroup(groupId);
- }
-
- public GroupPresenceSummary GetGeneralPresenceForGroup(int groupId)
- {
- return _presenceRepository.GetGeneralPresenceForGroup(groupId);
- }
- }
-}
\ No newline at end of file
diff --git a/presence/domain/UseCase/UserUseCase.cs b/presence/domain/UseCase/UserUseCase.cs
index 955ded4..3164298 100644
--- a/presence/domain/UseCase/UserUseCase.cs
+++ b/presence/domain/UseCase/UserUseCase.cs
@@ -7,6 +7,8 @@ namespace Demo.Domain.UseCase
{
public class UserUseCase
{
+
+
private readonly IUserRepository _repositoryUserImpl;
private readonly IGroupRepository _repositoryGroupImpl;
@@ -16,104 +18,44 @@ namespace Demo.Domain.UseCase
_repositoryGroupImpl = repositoryGroupImpl;
}
- public List GetAllUsers() => _repositoryUserImpl.GetAllUsers
+ public List GetAllUsers() => _repositoryUserImpl.GetAllUser()
.Join(_repositoryGroupImpl.GetAllGroup(),
- user => user.GroupID,
+ user => user.GroupId,
group => group.Id,
(user, group) =>
new User
{
FIO = user.FIO,
- Guid = user.Guid,
- Group = new Group { Id = group.Id, Name = group.Name }
- }).ToList();
+ Id = user.UserId,
+ GroupId = new Group { Id = group.Id, Name = group.Name }
+ }
+ ).ToList();
- public bool RemoveUserByGuid(Guid userGuid)
+
+ public bool RemoveUserById(int userId)
{
- try
- {
- return _repositoryUserImpl.RemoveUserByGuid(userGuid);
- }
- catch (UserNotFoundException)
- {
- return false;
- }
- catch (RepositoryException)
- {
- return false;
- }
+ return _repositoryUserImpl.RemoveUserById(userId);
+ }
+ public bool UpdateUser(User user)
+ {
+ UserDao userDao = new UserDao { FIO = user.FIO, GroupId = user.GroupId.Id };
+ return _repositoryUserImpl.UpdateUser(userDao);
}
-
- public User UpdateUser(User user)
+ public User GetUserById(int userId)
{
- UserLocalEnity userLocalEnity = new UserLocalEnity
- {
- FIO = user.FIO,
- GroupID = user.Group.Id,
- Guid = user.Guid
- };
-
- UserLocalEnity? result = _repositoryUserImpl.UpdateUser(userLocalEnity);
-
- if (result == null)
- {
- throw new Exception("Ошибка при обновлении пользователя.");
- }
-
- var groupEntity = _repositoryGroupImpl.GetAllGroup().FirstOrDefault(g => g.Id == result.GroupID);
-
- if (groupEntity == null)
- {
- throw new Exception("Группа не найдена.");
- }
-
return new User
{
- FIO = result.FIO,
- Guid = result.Guid,
- Group = new Group
- {
- Id = groupEntity.Id,
- Name = groupEntity.Name
- }
+ FIO = _repositoryUserImpl.GetUserById(userId).FIO,
+ Id = _repositoryUserImpl.GetUserById(userId).UserId,
+ GroupId = new Group { Id = _repositoryUserImpl.GetUserById(userId).GroupId, Name = _repositoryGroupImpl.GetGroupById(userId).Name }
};
}
-
- public User FindUserByGuid(Guid userGuid)
+ public bool UpdateUserById(int userId, String fio, int groupId)
{
- var user = _repositoryUserImpl.GetAllUsers
- .FirstOrDefault(u => u.Guid == userGuid);
-
- if (user == null)
- {
- throw new Exception("Пользователь не найден.");
- }
-
- var group = _repositoryGroupImpl.GetAllGroup()
- .FirstOrDefault(g => g.Id == user.GroupID);
-
- if (group == null)
- {
- throw new Exception("Группа не найдена.");
- }
-
- return new User
- {
- FIO = user.FIO,
- Guid = user.Guid,
- Group = new Group { Id = group.Id, Name = group.Name }
- };
+ UserDao userDao = new UserDao { FIO = fio, GroupId = groupId };
+ return _repositoryUserImpl.UpdateUser(userDao);
}
- public UserDao GetUserInfo(Guid userGuid)
- {
- return _repositoryUserImpl.GetUserInfo(userGuid);
- }
-
-
-
}
-
-}
-
+}
\ No newline at end of file
diff --git a/presence/domain/bin/Debug/net8.0/data.dll b/presence/domain/bin/Debug/net8.0/data.dll
new file mode 100644
index 0000000..1a83307
Binary files /dev/null and b/presence/domain/bin/Debug/net8.0/data.dll differ
diff --git a/presence/domain/bin/Debug/net8.0/data.pdb b/presence/domain/bin/Debug/net8.0/data.pdb
new file mode 100644
index 0000000..8a858f9
Binary files /dev/null and b/presence/domain/bin/Debug/net8.0/data.pdb differ
diff --git a/presence/domain/bin/Debug/net8.0/domain.deps.json b/presence/domain/bin/Debug/net8.0/domain.deps.json
new file mode 100644
index 0000000..f25103b
--- /dev/null
+++ b/presence/domain/bin/Debug/net8.0/domain.deps.json
@@ -0,0 +1,308 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v8.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v8.0": {
+ "domain/1.0.0": {
+ "dependencies": {
+ "data": "1.0.0"
+ },
+ "runtime": {
+ "domain.dll": {}
+ }
+ },
+ "Microsoft.EntityFrameworkCore/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Analyzers": "8.0.10",
+ "Microsoft.Extensions.Caching.Memory": "8.0.1",
+ "Microsoft.Extensions.Logging": "8.0.1"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": {
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": {},
+ "Microsoft.EntityFrameworkCore.Relational/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.23.53103"
+ }
+ }
+ },
+ "Microsoft.Extensions.Caching.Memory/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.Caching.Abstractions": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Options": "8.0.2",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.23.53103"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": {
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Logging/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection": "8.0.1",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Options": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Logging.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.2": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Options/8.0.2": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Options.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.224.6711"
+ }
+ }
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.23.53103"
+ }
+ }
+ },
+ "Npgsql/8.0.5": {
+ "dependencies": {
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Npgsql.dll": {
+ "assemblyVersion": "8.0.5.0",
+ "fileVersion": "8.0.5.0"
+ }
+ }
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Relational": "8.0.10",
+ "Npgsql": "8.0.5"
+ },
+ "runtime": {
+ "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.10.0"
+ }
+ }
+ },
+ "data/1.0.0": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10"
+ },
+ "runtime": {
+ "data.dll": {
+ "assemblyVersion": "1.0.0",
+ "fileVersion": "1.0.0.0"
+ }
+ }
+ }
+ }
+ },
+ "libraries": {
+ "domain/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "Microsoft.EntityFrameworkCore/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-PPkQdIqfR1nU3n6YgGGDk8G+eaYbaAKM1AzIQtlPNTKf10Osg3N9T+iK9AlnSA/ujsK00flPpFHVfJrbuBFS1A==",
+ "path": "microsoft.entityframeworkcore/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-FV0QlcX9INY4kAD2o72uPtyOh0nZut2jB11Jf9mNYBtHay8gDLe+x4AbXFwuQg+eSvofjT7naV82e827zGfyMg==",
+ "path": "microsoft.entityframeworkcore.abstractions/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-51KkPIc0EMv/gVXhPIUi6cwJE9Mvh+PLr4Lap4naLcsoGZ0lF2SvOPgUUprwRV3MnN7nyD1XPhT5RJ/p+xFAXw==",
+ "path": "microsoft.entityframeworkcore.analyzers/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Relational/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-OefBEE47kGKPRPV3OT+FAW6o5BFgLk2D9EoeWVy7NbOepzUneayLQxbVE098FfedTyMwxvZQoDD9LrvZc3MadA==",
+ "path": "microsoft.entityframeworkcore.relational/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==",
+ "path": "microsoft.extensions.caching.abstractions/8.0.0",
+ "hashPath": "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Memory/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==",
+ "path": "microsoft.extensions.caching.memory/8.0.1",
+ "hashPath": "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
+ "path": "microsoft.extensions.configuration.abstractions/8.0.0",
+ "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==",
+ "path": "microsoft.extensions.dependencyinjection/8.0.1",
+ "hashPath": "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3iE7UF7MQkCv1cxzCahz+Y/guQbTqieyxyaWKhrRO91itI9cOKO76OHeQDahqG4MmW5umr3CcCvGmK92lWNlbg==",
+ "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.2",
+ "hashPath": "microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==",
+ "path": "microsoft.extensions.logging/8.0.1",
+ "hashPath": "microsoft.extensions.logging.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-nroMDjS7hNBPtkZqVBbSiQaQjWRDxITI8Y7XnDs97rqG3EbzVTNLZQf7bIeUJcaHOV8bca47s1Uxq94+2oGdxA==",
+ "path": "microsoft.extensions.logging.abstractions/8.0.2",
+ "hashPath": "microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Options/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-dWGKvhFybsaZpGmzkGCbNNwBD1rVlWzrZKANLW/CcbFJpCEceMCGzT7zZwHOGBCbwM0SzBuceMj5HN1LKV1QqA==",
+ "path": "microsoft.extensions.options/8.0.2",
+ "hashPath": "microsoft.extensions.options.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==",
+ "path": "microsoft.extensions.primitives/8.0.0",
+ "hashPath": "microsoft.extensions.primitives.8.0.0.nupkg.sha512"
+ },
+ "Npgsql/8.0.5": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-zRG5V8cyeZLpzJlKzFKjEwkRMYIYnHWJvEor2lWXeccS2E1G2nIWYYhnukB51iz5XsWSVEtqg3AxTWM0QJ6vfg==",
+ "path": "npgsql/8.0.5",
+ "hashPath": "npgsql.8.0.5.nupkg.sha512"
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-gFPl9Dmxih7Yi4tZ3bITzZFzbxFMBx04gqTqcjoL2r5VEW+O2TA5UVw/wm/XW26NAJ7sg59Je0+9QrwiZt6MPQ==",
+ "path": "npgsql.entityframeworkcore.postgresql/8.0.10",
+ "hashPath": "npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512"
+ },
+ "data/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git a/presence/domain/bin/Debug/net8.0/domain.dll b/presence/domain/bin/Debug/net8.0/domain.dll
new file mode 100644
index 0000000..a8be6ee
Binary files /dev/null and b/presence/domain/bin/Debug/net8.0/domain.dll differ
diff --git a/presence/domain/bin/Debug/net8.0/domain.pdb b/presence/domain/bin/Debug/net8.0/domain.pdb
new file mode 100644
index 0000000..275026e
Binary files /dev/null and b/presence/domain/bin/Debug/net8.0/domain.pdb differ
diff --git a/presence/domain/domain.csproj b/presence/domain/domain.csproj
index 3088ecf..8d40d4a 100644
--- a/presence/domain/domain.csproj
+++ b/presence/domain/domain.csproj
@@ -5,7 +5,7 @@
- net9.0
+ net8.0
enable
enable
diff --git a/presence/domain/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/presence/domain/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2217181
--- /dev/null
+++ b/presence/domain/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
diff --git a/presence/domain/obj/Debug/net8.0/domain.AssemblyInfo.cs b/presence/domain/obj/Debug/net8.0/domain.AssemblyInfo.cs
new file mode 100644
index 0000000..c6e63ec
--- /dev/null
+++ b/presence/domain/obj/Debug/net8.0/domain.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("domain")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+a55a118f4f90ec351b8e7060cdde62bebbb8d3e4")]
+[assembly: System.Reflection.AssemblyProductAttribute("domain")]
+[assembly: System.Reflection.AssemblyTitleAttribute("domain")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Создано классом WriteCodeFragment MSBuild.
+
diff --git a/presence/domain/obj/Debug/net8.0/domain.AssemblyInfoInputs.cache b/presence/domain/obj/Debug/net8.0/domain.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..35fc993
--- /dev/null
+++ b/presence/domain/obj/Debug/net8.0/domain.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+ff18b6202593869c3c02c876f3519a5bdb514becd1f6995a6a0c87081dc5fecb
diff --git a/presence/domain/obj/Debug/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig b/presence/domain/obj/Debug/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..6e4d297
--- /dev/null
+++ b/presence/domain/obj/Debug/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,15 @@
+is_global = true
+build_property.TargetFramework = net8.0
+build_property.TargetPlatformMinVersion =
+build_property.UsingMicrosoftNETSdkWeb =
+build_property.ProjectTypeGuids =
+build_property.InvariantGlobalization =
+build_property.PlatformNeutralAssembly =
+build_property.EnforceExtendedAnalyzerRules =
+build_property._SupportedPlatformList = Linux,macOS,Windows
+build_property.RootNamespace = domain
+build_property.ProjectDir = C:\Users\User\Desktop\pr1\presence\domain\
+build_property.EnableComHosting =
+build_property.EnableGeneratedComInterfaceComImportInterop =
+build_property.EffectiveAnalysisLevelStyle = 8.0
+build_property.EnableCodeStyleSeverity =
diff --git a/presence/domain/obj/Debug/net8.0/domain.GlobalUsings.g.cs b/presence/domain/obj/Debug/net8.0/domain.GlobalUsings.g.cs
new file mode 100644
index 0000000..8578f3d
--- /dev/null
+++ b/presence/domain/obj/Debug/net8.0/domain.GlobalUsings.g.cs
@@ -0,0 +1,8 @@
+//
+global using global::System;
+global using global::System.Collections.Generic;
+global using global::System.IO;
+global using global::System.Linq;
+global using global::System.Net.Http;
+global using global::System.Threading;
+global using global::System.Threading.Tasks;
diff --git a/presence/domain/obj/Debug/net8.0/domain.assets.cache b/presence/domain/obj/Debug/net8.0/domain.assets.cache
new file mode 100644
index 0000000..be4df86
Binary files /dev/null and b/presence/domain/obj/Debug/net8.0/domain.assets.cache differ
diff --git a/presence/domain/obj/Debug/net8.0/domain.csproj.AssemblyReference.cache b/presence/domain/obj/Debug/net8.0/domain.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..8e342d9
Binary files /dev/null and b/presence/domain/obj/Debug/net8.0/domain.csproj.AssemblyReference.cache differ
diff --git a/presence/domain/obj/Debug/net8.0/domain.csproj.BuildWithSkipAnalyzers b/presence/domain/obj/Debug/net8.0/domain.csproj.BuildWithSkipAnalyzers
new file mode 100644
index 0000000..e69de29
diff --git a/presence/domain/obj/Debug/net8.0/domain.csproj.CoreCompileInputs.cache b/presence/domain/obj/Debug/net8.0/domain.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..3b24a69
--- /dev/null
+++ b/presence/domain/obj/Debug/net8.0/domain.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+c796bbd9ec88520e6076a1c08d4fc4d7d6671995a9ee4b635a604d595e99a10d
diff --git a/presence/domain/obj/Debug/net8.0/domain.csproj.FileListAbsolute.txt b/presence/domain/obj/Debug/net8.0/domain.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..084be5c
--- /dev/null
+++ b/presence/domain/obj/Debug/net8.0/domain.csproj.FileListAbsolute.txt
@@ -0,0 +1,15 @@
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\domain.csproj.AssemblyReference.cache
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\domain.GeneratedMSBuildEditorConfig.editorconfig
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\domain.AssemblyInfoInputs.cache
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\domain.AssemblyInfo.cs
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\domain.csproj.CoreCompileInputs.cache
+C:\Users\User\Desktop\pr1\presence\domain\bin\Debug\net8.0\domain.deps.json
+C:\Users\User\Desktop\pr1\presence\domain\bin\Debug\net8.0\domain.dll
+C:\Users\User\Desktop\pr1\presence\domain\bin\Debug\net8.0\domain.pdb
+C:\Users\User\Desktop\pr1\presence\domain\bin\Debug\net8.0\data.dll
+C:\Users\User\Desktop\pr1\presence\domain\bin\Debug\net8.0\data.pdb
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\domain.csproj.Up2Date
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\domain.dll
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\refint\domain.dll
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\domain.pdb
+C:\Users\User\Desktop\pr1\presence\domain\obj\Debug\net8.0\ref\domain.dll
diff --git a/presence/domain/obj/Debug/net8.0/domain.csproj.Up2Date b/presence/domain/obj/Debug/net8.0/domain.csproj.Up2Date
new file mode 100644
index 0000000..e69de29
diff --git a/presence/domain/obj/Debug/net8.0/domain.dll b/presence/domain/obj/Debug/net8.0/domain.dll
new file mode 100644
index 0000000..a8be6ee
Binary files /dev/null and b/presence/domain/obj/Debug/net8.0/domain.dll differ
diff --git a/presence/domain/obj/Debug/net8.0/domain.pdb b/presence/domain/obj/Debug/net8.0/domain.pdb
new file mode 100644
index 0000000..275026e
Binary files /dev/null and b/presence/domain/obj/Debug/net8.0/domain.pdb differ
diff --git a/presence/domain/obj/Debug/net8.0/ref/domain.dll b/presence/domain/obj/Debug/net8.0/ref/domain.dll
new file mode 100644
index 0000000..8675dfd
Binary files /dev/null and b/presence/domain/obj/Debug/net8.0/ref/domain.dll differ
diff --git a/presence/domain/obj/Debug/net8.0/refint/domain.dll b/presence/domain/obj/Debug/net8.0/refint/domain.dll
new file mode 100644
index 0000000..8675dfd
Binary files /dev/null and b/presence/domain/obj/Debug/net8.0/refint/domain.dll differ
diff --git a/presence/domain/obj/Debug/net9.0/domain.csproj.AssemblyReference.cache b/presence/domain/obj/Debug/net9.0/domain.csproj.AssemblyReference.cache
index e17ba2b..b432692 100644
Binary files a/presence/domain/obj/Debug/net9.0/domain.csproj.AssemblyReference.cache and b/presence/domain/obj/Debug/net9.0/domain.csproj.AssemblyReference.cache differ
diff --git a/presence/domain/obj/Debug/net9.0/domain.csproj.CoreCompileInputs.cache b/presence/domain/obj/Debug/net9.0/domain.csproj.CoreCompileInputs.cache
index 6cdc0db..ba311b7 100644
--- a/presence/domain/obj/Debug/net9.0/domain.csproj.CoreCompileInputs.cache
+++ b/presence/domain/obj/Debug/net9.0/domain.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-412fdd71316b2670ca10de33f2430df04ed407d96258db2b60fde186231c61c2
+324c20fd2420066b05406da2ad617ba276cfc5a703bad46f25de6b841cbc59ec
diff --git a/presence/domain/obj/Release/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/presence/domain/obj/Release/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2217181
--- /dev/null
+++ b/presence/domain/obj/Release/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
diff --git a/presence/domain/obj/Release/net8.0/domain.AssemblyInfo.cs b/presence/domain/obj/Release/net8.0/domain.AssemblyInfo.cs
new file mode 100644
index 0000000..6152dab
--- /dev/null
+++ b/presence/domain/obj/Release/net8.0/domain.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("domain")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+a55a118f4f90ec351b8e7060cdde62bebbb8d3e4")]
+[assembly: System.Reflection.AssemblyProductAttribute("domain")]
+[assembly: System.Reflection.AssemblyTitleAttribute("domain")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Создано классом WriteCodeFragment MSBuild.
+
diff --git a/presence/domain/obj/Release/net8.0/domain.AssemblyInfoInputs.cache b/presence/domain/obj/Release/net8.0/domain.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..7a51b21
--- /dev/null
+++ b/presence/domain/obj/Release/net8.0/domain.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+c4762a521e662bf505f46dd55283ba6f2877f3c2309b41ca044466eb4a941a18
diff --git a/presence/domain/obj/Release/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig b/presence/domain/obj/Release/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..6e4d297
--- /dev/null
+++ b/presence/domain/obj/Release/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,15 @@
+is_global = true
+build_property.TargetFramework = net8.0
+build_property.TargetPlatformMinVersion =
+build_property.UsingMicrosoftNETSdkWeb =
+build_property.ProjectTypeGuids =
+build_property.InvariantGlobalization =
+build_property.PlatformNeutralAssembly =
+build_property.EnforceExtendedAnalyzerRules =
+build_property._SupportedPlatformList = Linux,macOS,Windows
+build_property.RootNamespace = domain
+build_property.ProjectDir = C:\Users\User\Desktop\pr1\presence\domain\
+build_property.EnableComHosting =
+build_property.EnableGeneratedComInterfaceComImportInterop =
+build_property.EffectiveAnalysisLevelStyle = 8.0
+build_property.EnableCodeStyleSeverity =
diff --git a/presence/domain/obj/Release/net8.0/domain.GlobalUsings.g.cs b/presence/domain/obj/Release/net8.0/domain.GlobalUsings.g.cs
new file mode 100644
index 0000000..8578f3d
--- /dev/null
+++ b/presence/domain/obj/Release/net8.0/domain.GlobalUsings.g.cs
@@ -0,0 +1,8 @@
+//
+global using global::System;
+global using global::System.Collections.Generic;
+global using global::System.IO;
+global using global::System.Linq;
+global using global::System.Net.Http;
+global using global::System.Threading;
+global using global::System.Threading.Tasks;
diff --git a/presence/domain/obj/Release/net8.0/domain.assets.cache b/presence/domain/obj/Release/net8.0/domain.assets.cache
new file mode 100644
index 0000000..ac7321b
Binary files /dev/null and b/presence/domain/obj/Release/net8.0/domain.assets.cache differ
diff --git a/presence/domain/obj/Release/net8.0/domain.csproj.AssemblyReference.cache b/presence/domain/obj/Release/net8.0/domain.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..be0d5cf
Binary files /dev/null and b/presence/domain/obj/Release/net8.0/domain.csproj.AssemblyReference.cache differ
diff --git a/presence/domain/obj/domain.csproj.nuget.dgspec.json b/presence/domain/obj/domain.csproj.nuget.dgspec.json
index 103ab6a..a49da3e 100644
--- a/presence/domain/obj/domain.csproj.nuget.dgspec.json
+++ b/presence/domain/obj/domain.csproj.nuget.dgspec.json
@@ -22,7 +22,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -30,8 +30,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {}
}
},
@@ -48,8 +48,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": {
"target": "Package",
@@ -104,7 +104,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -112,8 +112,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {
"C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
"projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj"
@@ -134,8 +134,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"imports": [
"net461",
"net462",
diff --git a/presence/domain/obj/project.assets.json b/presence/domain/obj/project.assets.json
index c4f09ff..327747f 100644
--- a/presence/domain/obj/project.assets.json
+++ b/presence/domain/obj/project.assets.json
@@ -1,7 +1,7 @@
{
"version": 3,
"targets": {
- "net9.0": {
+ "net8.0": {
"Microsoft.EntityFrameworkCore/8.0.10": {
"type": "package",
"dependencies": {
@@ -272,7 +272,7 @@
},
"data/1.0.0": {
"type": "project",
- "framework": ".NETCoreApp,Version=v9.0",
+ "framework": ".NETCoreApp,Version=v8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": "8.0.10",
"Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10"
@@ -729,7 +729,7 @@
}
},
"projectFileDependencyGroups": {
- "net9.0": [
+ "net8.0": [
"data >= 1.0.0"
]
},
@@ -755,7 +755,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -763,8 +763,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {
"C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
"projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj"
@@ -785,8 +785,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"imports": [
"net461",
"net462",
diff --git a/presence/domain/obj/project.nuget.cache b/presence/domain/obj/project.nuget.cache
index 90b98cc..74cb966 100644
--- a/presence/domain/obj/project.nuget.cache
+++ b/presence/domain/obj/project.nuget.cache
@@ -1,6 +1,6 @@
{
"version": 2,
- "dgSpecHash": "cft2H3dp2Zg=",
+ "dgSpecHash": "Q4/vr4cp5Y4=",
"success": true,
"projectFilePath": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj",
"expectedPackageFiles": [
diff --git a/presence/presence_api/Controllers/AdminController.cs b/presence/presence_api/Controllers/AdminController.cs
new file mode 100644
index 0000000..5046605
--- /dev/null
+++ b/presence/presence_api/Controllers/AdminController.cs
@@ -0,0 +1,105 @@
+using Demo.domain.Models;
+using Demo.Domain.UseCase;
+using domain.UseCase;
+using Microsoft.AspNetCore.Mvc;
+using presence_api.Response;
+
+namespace presence_api.Controllers;
+[ApiController]
+[Route("api/[admin]")]
+public class AdminController:ControllerBase
+{
+ private readonly AdminUseCase _adminUseCase;
+
+ public AdminController(AdminUseCase adminUseCase)
+ {
+ _adminUseCase = adminUseCase;
+ }
+
+ [HttpPost("~/AddStudents")]
+ public ActionResult AddStudents([FromBody] AddStudentsRequest request)
+ {
+ if (string.IsNullOrWhiteSpace(request.GroupName) || request.Students == null || request.Students.Count == 0)
+ {
+ return BadRequest("Некорректные данные для добавления студентов.");
+ }
+
+ bool result = _adminUseCase.AddStudents(request.GroupName, request.Students);
+ return result ? Ok("Данные группы и студентов добавлены") : StatusCode(500, "Не удалось добавить данные.");
+ }
+
+ [HttpDelete("~/DeleteUserFromGroup")]
+ public ActionResult DeleteUserFromGroup([FromQuery] int userId, [FromQuery] int groupId)
+ {
+ if (userId <= 0 || groupId <= 0)
+ {
+ return BadRequest("Некорректные идентификаторы.");
+ }
+
+ bool result = _adminUseCase.DeleteUserFromGroup(userId, groupId);
+ return result ? Ok("Юзер удален") : NotFound("Юзер не найден.");
+ }
+
+ [HttpDelete("~/DeleteGroup")]
+ public ActionResult DeleteGroup([FromQuery] int groupId)
+ {
+ if (groupId <= 0)
+ {
+ return BadRequest("Некорректный идентификатор группы.");
+ }
+
+ bool result = _adminUseCase.DeleteGroup(groupId);
+ return result ? Ok("Группа удалена") : NotFound("Группа не найдена.");
+ }
+
+ [HttpDelete("~/ClearPresence")]
+ public ActionResult ClearPresence()
+ {
+ try
+ {
+ // Вызов метода сервиса для очистки данных о присутствии
+ _presenceService.ClearAllPresenceData();
+
+ // Возврат успешного ответа
+ return NoContent(); // 204 No Content
+ }
+ catch (Exception ex)
+ {
+ // Логирование ошибки (если необходимо)
+ // _logger.LogError(ex, "Error clearing presence data");
+
+ // Возврат ошибки сервера
+ return StatusCode(500, "Internal server error");
+ }
+ }
+
+ [HttpGet("~/GetAllGroupsWithStudents")]
+ public ActionResult> GetAllGroupsWithStudents()
+ {
+ var groups = _adminUseCase.GetAllGroupsWithStudents();
+ return Ok(groups);
+ }
+
+ [HttpGet("~/GetStudentInfo")]
+ public ActionResult GetStudentInfo([FromQuery] int userId)
+ {
+ if (userId <= 0)
+ {
+ return BadRequest("Некорректный идентификатор пользователя.");
+ }
+
+ var studentInfo = _adminUseCase.GetStudentInfo(userId);
+ if (studentInfo == null)
+ {
+ return NotFound("Студент не найден.");
+ }
+
+ return Ok(studentInfo);
+ }
+}
+
+public class AddStudentsRequest
+{
+ public string GroupName { get; set; }
+ public List Students { get; set; }
+}
diff --git a/presence/presence_api/Controllers/PresenceController.cs b/presence/presence_api/Controllers/PresenceController.cs
new file mode 100644
index 0000000..3648450
--- /dev/null
+++ b/presence/presence_api/Controllers/PresenceController.cs
@@ -0,0 +1,94 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using Demo.domain.Models;
+using domain.Models.ResponseModels;
+using Microsoft.AspNetCore.Mvc;
+using presence.domain.Models;
+using presence.domain.UseCase;
+
+namespace presence_api.Controllers.PresenceController;
+
+[ApiController]
+[Route("api/[controller]")]
+public class PresenceController : ControllerBase
+{
+ private readonly PresenceUseCase _presenceUseCase;
+
+ public PresenceController(PresenceUseCase presenceUseCase)
+ {
+ _presenceUseCase = presenceUseCase;
+ }
+
+ [HttpGet]
+ public ActionResult> GetPresence([FromQuery] int GroupId,
+ [FromQuery] string StartData, [FromQuery] string EndData,
+ [FromQuery] int UserId)
+ {
+ DateOnly startData;
+ DateOnly endData;
+ bool isParsed = DateOnly.TryParse(StartData, out startData);
+ bool isParse = DateOnly.TryParse(EndData, out endData);
+ if (!isParsed)
+ {
+ return BadRequest("Неверный формат даты начала.");
+ }
+ if (!isParse)
+ {
+ return BadRequest("Неверный формат даты конца.");
+ }
+ return Ok(_presenceUseCase.GetPresence(GroupId, startData, endData, UserId));
+ }
+
+ [HttpPost("~/AddPresence")]
+ public ActionResult> PostPresence([FromQuery] int GroupId,
+ [FromQuery] string StartData, [FromQuery] string EndData, [FromQuery] int UserId)
+ {
+ return Ok(_presenceUseCase.AddPresenceByDate(StartData, EndData, GroupId));
+ }
+
+ [HttpDelete("~/DeleteByGroup")]
+ public ActionResult> DeletePresenceByGroup([FromQuery] int GroupId)
+ {
+ return Ok(_presenceUseCase.DeletePresenceByGroup(GroupId));
+ }
+
+ [HttpDelete("~/DeleteByUser")]
+ public ActionResult> DeletePresenceByUser([FromQuery] int UserId)
+ {
+ return Ok(_presenceUseCase.DeletePresenceByUser(UserId));
+ }
+
+ [HttpDelete("~/DeleteByDate")]
+ public ActionResult> DeletePresenceByDate([FromQuery] string StartData, [FromQuery] string EndData)
+ {
+ DateOnly startData;
+ DateOnly endData;
+ bool isParsed = DateOnly.TryParse(StartData, out startData);
+ bool isParse = DateOnly.TryParse(EndData, out endData);
+ if (!isParsed)
+ {
+ return BadRequest("Неверный формат даты начала.");
+ }
+ if (!isParse)
+ {
+ return BadRequest("Неверный формат даты конца.");
+ }
+ return Ok(_presenceUseCase.DeletePresenceByDate(startData, endData));
+ }
+
+ [HttpPost("~/IsAttendence")]
+ public ActionResult UpdateAttendance([FromQuery] int FirstClass,
+ [FromQuery] int LastClass, [FromQuery] string Data,
+ [FromQuery] int UserId)
+ {
+ DateOnly data;
+ bool isParsed = DateOnly.TryParse(Data, out data);
+ if (!isParsed)
+ {
+ return BadRequest("Неверный формат даты.");
+ }
+ return Ok(_presenceUseCase.UncheckAttendence(FirstClass, LastClass, data, UserId));
+ }
+}
diff --git a/presence/presence_api/ServiceExtencions/ServiceExtencions.cs b/presence/presence_api/ServiceExtencions/ServiceExtencions.cs
index 428a1c2..55750ac 100644
--- a/presence/presence_api/ServiceExtencions/ServiceExtencions.cs
+++ b/presence/presence_api/ServiceExtencions/ServiceExtencions.cs
@@ -1,22 +1,46 @@
using Demo.Data.RemoteData.RemoteDataBase;
using Demo.Data.Repository;
using Demo.Domain.UseCase;
-using Presence.Api.Controllers;
+using domain.Service;
+using domain.UseCase;
+using presence_api.Controllers;
namespace presence_api.ServiceExtencions
{
- public static class ServiceExtencions
+ public static class ServiceExtensions
{
- public static void AddCommonServices(this IServiceCollection services)
+ public static void ConfigureGroup(this IServiceCollection services)
{
-
services
- .AddDbContext()
- .AddScoped()
- .AddScoped()
- .AddScoped();
+ .AddScoped()
+ .AddScoped();
+ }
+ public static void ConfigureUser(this IServiceCollection services)
+ {
+ services
+ .AddScoped()
+ .AddScoped();
+ }
+ public static void ConfigurePresence(this IServiceCollection services)
+ {
+ services
+ .AddScoped()
+ .AddScoped();
+ }
+
+ public static void ConfigureAdmin(this IServiceCollection services)
+ {
+ services
+ .AddScoped()
+ .AddScoped()
+ .AddScoped()
+ .AddScoped()
+ .AddScoped()
+ .AddScoped()
+ .AddScoped()
+ .AddScoped();
}
}
}
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.AspNetCore.OpenApi.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.AspNetCore.OpenApi.dll
new file mode 100644
index 0000000..de04c45
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.AspNetCore.OpenApi.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll
new file mode 100644
index 0000000..2169cf8
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.Relational.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.Relational.dll
new file mode 100644
index 0000000..f8c58d0
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.Relational.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.dll
new file mode 100644
index 0000000..b628ed6
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.EntityFrameworkCore.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Caching.Memory.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Caching.Memory.dll
new file mode 100644
index 0000000..077b1b6
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Caching.Memory.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll
new file mode 100644
index 0000000..81ed3de
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.DependencyInjection.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.DependencyInjection.dll
new file mode 100644
index 0000000..bd71a2b
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.DependencyInjection.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Logging.Abstractions.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Logging.Abstractions.dll
new file mode 100644
index 0000000..f9d1dc6
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Logging.Abstractions.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Logging.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Logging.dll
new file mode 100644
index 0000000..35905b6
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Logging.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Options.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Options.dll
new file mode 100644
index 0000000..a7b3f21
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.Extensions.Options.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Microsoft.OpenApi.dll b/presence/presence_api/bin/Debug/net8.0/Microsoft.OpenApi.dll
new file mode 100644
index 0000000..8ba2ce6
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Microsoft.OpenApi.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll b/presence/presence_api/bin/Debug/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll
new file mode 100644
index 0000000..4b4f0fc
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Npgsql.dll b/presence/presence_api/bin/Debug/net8.0/Npgsql.dll
new file mode 100644
index 0000000..fde1387
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Npgsql.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.Swagger.dll b/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.Swagger.dll
new file mode 100644
index 0000000..945a41b
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.Swagger.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll b/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll
new file mode 100644
index 0000000..fe90793
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll b/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll
new file mode 100644
index 0000000..5963541
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/appsettings.Development.json b/presence/presence_api/bin/Debug/net8.0/appsettings.Development.json
new file mode 100644
index 0000000..0c208ae
--- /dev/null
+++ b/presence/presence_api/bin/Debug/net8.0/appsettings.Development.json
@@ -0,0 +1,8 @@
+{
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ }
+}
diff --git a/presence/presence_api/bin/Debug/net8.0/appsettings.json b/presence/presence_api/bin/Debug/net8.0/appsettings.json
new file mode 100644
index 0000000..10f68b8
--- /dev/null
+++ b/presence/presence_api/bin/Debug/net8.0/appsettings.json
@@ -0,0 +1,9 @@
+{
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ },
+ "AllowedHosts": "*"
+}
diff --git a/presence/presence_api/bin/Debug/net8.0/data.dll b/presence/presence_api/bin/Debug/net8.0/data.dll
new file mode 100644
index 0000000..1a83307
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/data.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/data.pdb b/presence/presence_api/bin/Debug/net8.0/data.pdb
new file mode 100644
index 0000000..8a858f9
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/data.pdb differ
diff --git a/presence/presence_api/bin/Debug/net8.0/domain.dll b/presence/presence_api/bin/Debug/net8.0/domain.dll
new file mode 100644
index 0000000..a8be6ee
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/domain.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/domain.pdb b/presence/presence_api/bin/Debug/net8.0/domain.pdb
new file mode 100644
index 0000000..275026e
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/domain.pdb differ
diff --git a/presence/presence_api/bin/Debug/net8.0/presence_api.deps.json b/presence/presence_api/bin/Debug/net8.0/presence_api.deps.json
new file mode 100644
index 0000000..3c64eac
--- /dev/null
+++ b/presence/presence_api/bin/Debug/net8.0/presence_api.deps.json
@@ -0,0 +1,393 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v8.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v8.0": {
+ "presence_api/1.0.0": {
+ "dependencies": {
+ "Microsoft.AspNetCore.OpenApi": "8.0.0",
+ "Swashbuckle.AspNetCore.Swagger": "7.0.0",
+ "Swashbuckle.AspNetCore.SwaggerGen": "7.0.0",
+ "Swashbuckle.AspNetCore.SwaggerUI": "7.0.0",
+ "domain": "1.0.0"
+ },
+ "runtime": {
+ "presence_api.dll": {}
+ }
+ },
+ "Microsoft.AspNetCore.OpenApi/8.0.0": {
+ "dependencies": {
+ "Microsoft.OpenApi": "1.6.22"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.23.53112"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Analyzers": "8.0.10",
+ "Microsoft.Extensions.Caching.Memory": "8.0.1",
+ "Microsoft.Extensions.Logging": "8.0.1"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": {
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": {},
+ "Microsoft.EntityFrameworkCore.Relational/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.1024.46708"
+ }
+ }
+ },
+ "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Caching.Memory/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.Caching.Abstractions": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Options": "8.0.2",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": {
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Logging/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection": "8.0.1",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Options": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Logging.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.2": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.1024.46610"
+ }
+ }
+ },
+ "Microsoft.Extensions.Options/8.0.2": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.Extensions.Options.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.0.224.6711"
+ }
+ }
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {},
+ "Microsoft.OpenApi/1.6.22": {
+ "runtime": {
+ "lib/netstandard2.0/Microsoft.OpenApi.dll": {
+ "assemblyVersion": "1.6.22.0",
+ "fileVersion": "1.6.22.0"
+ }
+ }
+ },
+ "Npgsql/8.0.5": {
+ "dependencies": {
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.2"
+ },
+ "runtime": {
+ "lib/net8.0/Npgsql.dll": {
+ "assemblyVersion": "8.0.5.0",
+ "fileVersion": "8.0.5.0"
+ }
+ }
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10",
+ "Microsoft.EntityFrameworkCore.Relational": "8.0.10",
+ "Npgsql": "8.0.5"
+ },
+ "runtime": {
+ "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
+ "assemblyVersion": "8.0.10.0",
+ "fileVersion": "8.0.10.0"
+ }
+ }
+ },
+ "Swashbuckle.AspNetCore.Swagger/7.0.0": {
+ "dependencies": {
+ "Microsoft.OpenApi": "1.6.22"
+ },
+ "runtime": {
+ "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.0.854"
+ }
+ }
+ },
+ "Swashbuckle.AspNetCore.SwaggerGen/7.0.0": {
+ "dependencies": {
+ "Swashbuckle.AspNetCore.Swagger": "7.0.0"
+ },
+ "runtime": {
+ "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.0.854"
+ }
+ }
+ },
+ "Swashbuckle.AspNetCore.SwaggerUI/7.0.0": {
+ "runtime": {
+ "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.0.854"
+ }
+ }
+ },
+ "data/1.0.0": {
+ "dependencies": {
+ "Microsoft.EntityFrameworkCore": "8.0.10",
+ "Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10"
+ },
+ "runtime": {
+ "data.dll": {
+ "assemblyVersion": "1.0.0",
+ "fileVersion": "1.0.0.0"
+ }
+ }
+ },
+ "domain/1.0.0": {
+ "dependencies": {
+ "data": "1.0.0"
+ },
+ "runtime": {
+ "domain.dll": {
+ "assemblyVersion": "1.0.0",
+ "fileVersion": "1.0.0.0"
+ }
+ }
+ }
+ }
+ },
+ "libraries": {
+ "presence_api/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "Microsoft.AspNetCore.OpenApi/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-T4mwMvPSOYAp+KeQ4xO8H2rxpiOMJ9W/7yBBkUTMp96AHtGlPN4s7hbax2tM61LxTY775JKL4fiv5grn41EHXw==",
+ "path": "microsoft.aspnetcore.openapi/8.0.0",
+ "hashPath": "microsoft.aspnetcore.openapi.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-PPkQdIqfR1nU3n6YgGGDk8G+eaYbaAKM1AzIQtlPNTKf10Osg3N9T+iK9AlnSA/ujsK00flPpFHVfJrbuBFS1A==",
+ "path": "microsoft.entityframeworkcore/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-FV0QlcX9INY4kAD2o72uPtyOh0nZut2jB11Jf9mNYBtHay8gDLe+x4AbXFwuQg+eSvofjT7naV82e827zGfyMg==",
+ "path": "microsoft.entityframeworkcore.abstractions/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-51KkPIc0EMv/gVXhPIUi6cwJE9Mvh+PLr4Lap4naLcsoGZ0lF2SvOPgUUprwRV3MnN7nyD1XPhT5RJ/p+xFAXw==",
+ "path": "microsoft.entityframeworkcore.analyzers/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.EntityFrameworkCore.Relational/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-OefBEE47kGKPRPV3OT+FAW6o5BFgLk2D9EoeWVy7NbOepzUneayLQxbVE098FfedTyMwxvZQoDD9LrvZc3MadA==",
+ "path": "microsoft.entityframeworkcore.relational/8.0.10",
+ "hashPath": "microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==",
+ "path": "microsoft.extensions.caching.abstractions/8.0.0",
+ "hashPath": "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Memory/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==",
+ "path": "microsoft.extensions.caching.memory/8.0.1",
+ "hashPath": "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
+ "path": "microsoft.extensions.configuration.abstractions/8.0.0",
+ "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==",
+ "path": "microsoft.extensions.dependencyinjection/8.0.1",
+ "hashPath": "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3iE7UF7MQkCv1cxzCahz+Y/guQbTqieyxyaWKhrRO91itI9cOKO76OHeQDahqG4MmW5umr3CcCvGmK92lWNlbg==",
+ "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.2",
+ "hashPath": "microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==",
+ "path": "microsoft.extensions.logging/8.0.1",
+ "hashPath": "microsoft.extensions.logging.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-nroMDjS7hNBPtkZqVBbSiQaQjWRDxITI8Y7XnDs97rqG3EbzVTNLZQf7bIeUJcaHOV8bca47s1Uxq94+2oGdxA==",
+ "path": "microsoft.extensions.logging.abstractions/8.0.2",
+ "hashPath": "microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Options/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-dWGKvhFybsaZpGmzkGCbNNwBD1rVlWzrZKANLW/CcbFJpCEceMCGzT7zZwHOGBCbwM0SzBuceMj5HN1LKV1QqA==",
+ "path": "microsoft.extensions.options/8.0.2",
+ "hashPath": "microsoft.extensions.options.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==",
+ "path": "microsoft.extensions.primitives/8.0.0",
+ "hashPath": "microsoft.extensions.primitives.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.OpenApi/1.6.22": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-aBvunmrdu/x+4CaA/UP1Jx4xWGwk4kymhoIRnn2Vp+zi5/KOPQJ9EkSXHRUr01WcGKtYl3Au7XfkPJbU1G2sjQ==",
+ "path": "microsoft.openapi/1.6.22",
+ "hashPath": "microsoft.openapi.1.6.22.nupkg.sha512"
+ },
+ "Npgsql/8.0.5": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-zRG5V8cyeZLpzJlKzFKjEwkRMYIYnHWJvEor2lWXeccS2E1G2nIWYYhnukB51iz5XsWSVEtqg3AxTWM0QJ6vfg==",
+ "path": "npgsql/8.0.5",
+ "hashPath": "npgsql.8.0.5.nupkg.sha512"
+ },
+ "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-gFPl9Dmxih7Yi4tZ3bITzZFzbxFMBx04gqTqcjoL2r5VEW+O2TA5UVw/wm/XW26NAJ7sg59Je0+9QrwiZt6MPQ==",
+ "path": "npgsql.entityframeworkcore.postgresql/8.0.10",
+ "hashPath": "npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512"
+ },
+ "Swashbuckle.AspNetCore.Swagger/7.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-Y2QnwZkuszoIYpz069xqDU0h/rklVedE4a0NOdb8HSDTcXCmsi7Zm2RGdJccde5MojHmEhDmZggCO1wgpfZ2IA==",
+ "path": "swashbuckle.aspnetcore.swagger/7.0.0",
+ "hashPath": "swashbuckle.aspnetcore.swagger.7.0.0.nupkg.sha512"
+ },
+ "Swashbuckle.AspNetCore.SwaggerGen/7.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-f/urqk9zkb5ZXc3ljLNP++JgYe2HTlA4WaIaO1DLRQLRFh3HXIZakFfMfTWX1T8NVqeMyJF7MzETN4HsokxNuQ==",
+ "path": "swashbuckle.aspnetcore.swaggergen/7.0.0",
+ "hashPath": "swashbuckle.aspnetcore.swaggergen.7.0.0.nupkg.sha512"
+ },
+ "Swashbuckle.AspNetCore.SwaggerUI/7.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-rJJony+jsxvpfJM9ZGVxjp0DVpalZv8cAhiMSLW6L2hgUWb7k5qPVuzQHWXtkT8lrG1hQ8vWeR+HUwgCQm9J3A==",
+ "path": "swashbuckle.aspnetcore.swaggerui/7.0.0",
+ "hashPath": "swashbuckle.aspnetcore.swaggerui.7.0.0.nupkg.sha512"
+ },
+ "data/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "domain/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git a/presence/presence_api/bin/Debug/net8.0/presence_api.dll b/presence/presence_api/bin/Debug/net8.0/presence_api.dll
new file mode 100644
index 0000000..6cd942f
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/presence_api.dll differ
diff --git a/presence/presence_api/bin/Debug/net8.0/presence_api.exe b/presence/presence_api/bin/Debug/net8.0/presence_api.exe
new file mode 100644
index 0000000..bd36317
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/presence_api.exe differ
diff --git a/presence/presence_api/bin/Debug/net8.0/presence_api.pdb b/presence/presence_api/bin/Debug/net8.0/presence_api.pdb
new file mode 100644
index 0000000..5264d48
Binary files /dev/null and b/presence/presence_api/bin/Debug/net8.0/presence_api.pdb differ
diff --git a/presence/presence_api/bin/Debug/net8.0/presence_api.runtimeconfig.json b/presence/presence_api/bin/Debug/net8.0/presence_api.runtimeconfig.json
new file mode 100644
index 0000000..b8a4a9c
--- /dev/null
+++ b/presence/presence_api/bin/Debug/net8.0/presence_api.runtimeconfig.json
@@ -0,0 +1,20 @@
+{
+ "runtimeOptions": {
+ "tfm": "net8.0",
+ "frameworks": [
+ {
+ "name": "Microsoft.NETCore.App",
+ "version": "8.0.0"
+ },
+ {
+ "name": "Microsoft.AspNetCore.App",
+ "version": "8.0.0"
+ }
+ ],
+ "configProperties": {
+ "System.GC.Server": true,
+ "System.Reflection.NullabilityInfoContext.IsSupported": true,
+ "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
+ }
+ }
+}
\ No newline at end of file
diff --git a/presence/presence_api/bin/Debug/net8.0/presence_api.staticwebassets.endpoints.json b/presence/presence_api/bin/Debug/net8.0/presence_api.staticwebassets.endpoints.json
new file mode 100644
index 0000000..2b6c535
--- /dev/null
+++ b/presence/presence_api/bin/Debug/net8.0/presence_api.staticwebassets.endpoints.json
@@ -0,0 +1,5 @@
+{
+ "Version": 1,
+ "ManifestType": "Build",
+ "Endpoints": []
+}
\ No newline at end of file
diff --git a/presence/presence_api/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/presence/presence_api/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2217181
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
diff --git a/presence/presence_api/obj/Debug/net8.0/ApiEndpoints.json b/presence/presence_api/obj/Debug/net8.0/ApiEndpoints.json
new file mode 100644
index 0000000..42df211
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/ApiEndpoints.json
@@ -0,0 +1,22 @@
+[
+ {
+ "ContainingType": "presence_api.Controllers.GroupController",
+ "Method": "getGroups",
+ "RelativePath": "api/Group",
+ "HttpMethod": "GET",
+ "IsController": true,
+ "Order": 0,
+ "Parameters": [],
+ "ReturnTypes": [
+ {
+ "Type": "System.Collections.Generic.IEnumerable\u00601[[Demo.domain.Models.Group, domain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+ "MediaTypes": [
+ "text/plain",
+ "application/json",
+ "text/json"
+ ],
+ "StatusCode": 200
+ }
+ ]
+ }
+]
\ No newline at end of file
diff --git a/presence/presence_api/obj/Debug/net8.0/EndpointInfo/presence_api.OpenApiFiles.cache b/presence/presence_api/obj/Debug/net8.0/EndpointInfo/presence_api.OpenApiFiles.cache
new file mode 100644
index 0000000..a61cfc1
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/EndpointInfo/presence_api.OpenApiFiles.cache
@@ -0,0 +1 @@
+presence_api.json
diff --git a/presence/presence_api/obj/Debug/net8.0/EndpointInfo/presence_api.json b/presence/presence_api/obj/Debug/net8.0/EndpointInfo/presence_api.json
new file mode 100644
index 0000000..72e5154
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/EndpointInfo/presence_api.json
@@ -0,0 +1,100 @@
+{
+ "openapi": "3.0.1",
+ "info": {
+ "title": "presence_api",
+ "version": "1.0"
+ },
+ "paths": {
+ "/api/Group": {
+ "get": {
+ "tags": [
+ "Group"
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "text/plain": {
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/Group"
+ }
+ }
+ },
+ "application/json": {
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/Group"
+ }
+ }
+ },
+ "text/json": {
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/Group"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "components": {
+ "schemas": {
+ "Group": {
+ "required": [
+ "id",
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "format": "int32"
+ },
+ "name": {
+ "type": "string",
+ "nullable": true
+ },
+ "users": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/User"
+ },
+ "nullable": true
+ }
+ },
+ "additionalProperties": false
+ },
+ "User": {
+ "required": [
+ "fio"
+ ],
+ "type": "object",
+ "properties": {
+ "fio": {
+ "type": "string",
+ "nullable": true
+ },
+ "guid": {
+ "type": "string",
+ "format": "uuid"
+ },
+ "groupId": {
+ "type": "integer",
+ "format": "int32"
+ },
+ "group": {
+ "$ref": "#/components/schemas/Group"
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/presence/presence_api/obj/Debug/net8.0/apphost.exe b/presence/presence_api/obj/Debug/net8.0/apphost.exe
new file mode 100644
index 0000000..bd36317
Binary files /dev/null and b/presence/presence_api/obj/Debug/net8.0/apphost.exe differ
diff --git a/presence/presence_api/obj/Debug/net8.0/presence.6C935717.Up2Date b/presence/presence_api/obj/Debug/net8.0/presence.6C935717.Up2Date
new file mode 100644
index 0000000..e69de29
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.AssemblyInfo.cs b/presence/presence_api/obj/Debug/net8.0/presence_api.AssemblyInfo.cs
new file mode 100644
index 0000000..7bab7d7
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/presence_api.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("presence_api")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+a55a118f4f90ec351b8e7060cdde62bebbb8d3e4")]
+[assembly: System.Reflection.AssemblyProductAttribute("presence_api")]
+[assembly: System.Reflection.AssemblyTitleAttribute("presence_api")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Создано классом WriteCodeFragment MSBuild.
+
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.AssemblyInfoInputs.cache b/presence/presence_api/obj/Debug/net8.0/presence_api.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..8ebbc05
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/presence_api.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+5df46254d25b081ad107d557d75c3cfae5a93c9ea6e3cfe0446baf5da74a400b
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.GeneratedMSBuildEditorConfig.editorconfig b/presence/presence_api/obj/Debug/net8.0/presence_api.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..881094e
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/presence_api.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,21 @@
+is_global = true
+build_property.TargetFramework = net8.0
+build_property.TargetPlatformMinVersion =
+build_property.UsingMicrosoftNETSdkWeb = true
+build_property.ProjectTypeGuids =
+build_property.InvariantGlobalization =
+build_property.PlatformNeutralAssembly =
+build_property.EnforceExtendedAnalyzerRules =
+build_property._SupportedPlatformList = Linux,macOS,Windows
+build_property.RootNamespace = presence_api
+build_property.RootNamespace = presence_api
+build_property.ProjectDir = C:\Users\User\Desktop\pr1\presence\presence_api\
+build_property.EnableComHosting =
+build_property.EnableGeneratedComInterfaceComImportInterop =
+build_property.RazorLangVersion = 8.0
+build_property.SupportLocalizedComponentNames =
+build_property.GenerateRazorMetadataSourceChecksumAttributes =
+build_property.MSBuildProjectDirectory = C:\Users\User\Desktop\pr1\presence\presence_api
+build_property._RazorSourceGeneratorDebug =
+build_property.EffectiveAnalysisLevelStyle = 8.0
+build_property.EnableCodeStyleSeverity =
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.GlobalUsings.g.cs b/presence/presence_api/obj/Debug/net8.0/presence_api.GlobalUsings.g.cs
new file mode 100644
index 0000000..025530a
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/presence_api.GlobalUsings.g.cs
@@ -0,0 +1,17 @@
+//
+global using global::Microsoft.AspNetCore.Builder;
+global using global::Microsoft.AspNetCore.Hosting;
+global using global::Microsoft.AspNetCore.Http;
+global using global::Microsoft.AspNetCore.Routing;
+global using global::Microsoft.Extensions.Configuration;
+global using global::Microsoft.Extensions.DependencyInjection;
+global using global::Microsoft.Extensions.Hosting;
+global using global::Microsoft.Extensions.Logging;
+global using global::System;
+global using global::System.Collections.Generic;
+global using global::System.IO;
+global using global::System.Linq;
+global using global::System.Net.Http;
+global using global::System.Net.Http.Json;
+global using global::System.Threading;
+global using global::System.Threading.Tasks;
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.MvcApplicationPartsAssemblyInfo.cache b/presence/presence_api/obj/Debug/net8.0/presence_api.MvcApplicationPartsAssemblyInfo.cache
new file mode 100644
index 0000000..e69de29
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.MvcApplicationPartsAssemblyInfo.cs b/presence/presence_api/obj/Debug/net8.0/presence_api.MvcApplicationPartsAssemblyInfo.cs
new file mode 100644
index 0000000..d7cc3f5
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/presence_api.MvcApplicationPartsAssemblyInfo.cs
@@ -0,0 +1,18 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Microsoft.AspNetCore.OpenApi")]
+[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Swashbuckle.AspNetCore.SwaggerGen")]
+
+// Создано классом WriteCodeFragment MSBuild.
+
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.assets.cache b/presence/presence_api/obj/Debug/net8.0/presence_api.assets.cache
new file mode 100644
index 0000000..48ec929
Binary files /dev/null and b/presence/presence_api/obj/Debug/net8.0/presence_api.assets.cache differ
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.AssemblyReference.cache b/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..0d5645d
Binary files /dev/null and b/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.AssemblyReference.cache differ
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.BuildWithSkipAnalyzers b/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.BuildWithSkipAnalyzers
new file mode 100644
index 0000000..e69de29
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.CoreCompileInputs.cache b/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..cbe617c
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+fa4d3b84fde821e504df0d476182d2b5985a66db2a00db5dd36aeb9f1e7925c3
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.FileListAbsolute.txt b/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..7d3bcfc
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/presence_api.csproj.FileListAbsolute.txt
@@ -0,0 +1,52 @@
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.csproj.AssemblyReference.cache
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.GeneratedMSBuildEditorConfig.editorconfig
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.AssemblyInfoInputs.cache
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.AssemblyInfo.cs
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.csproj.CoreCompileInputs.cache
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.MvcApplicationPartsAssemblyInfo.cache
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\appsettings.Development.json
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\appsettings.json
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\presence_api.staticwebassets.endpoints.json
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\presence_api.exe
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\presence_api.deps.json
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\presence_api.runtimeconfig.json
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\presence_api.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\presence_api.pdb
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.AspNetCore.OpenApi.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Abstractions.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Relational.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.Extensions.Caching.Memory.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.Extensions.DependencyInjection.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.Extensions.Logging.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.Extensions.Logging.Abstractions.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.Extensions.Options.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Microsoft.OpenApi.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Npgsql.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Npgsql.EntityFrameworkCore.PostgreSQL.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Swashbuckle.AspNetCore.Swagger.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Swashbuckle.AspNetCore.SwaggerGen.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\Swashbuckle.AspNetCore.SwaggerUI.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\data.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\domain.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\domain.pdb
+C:\Users\User\Desktop\pr1\presence\presence_api\bin\Debug\net8.0\data.pdb
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\scopedcss\bundle\presence_api.styles.css
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets.build.json
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets.development.json
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets.build.endpoints.json
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets\msbuild.presence_api.Microsoft.AspNetCore.StaticWebAssets.props
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets\msbuild.presence_api.Microsoft.AspNetCore.StaticWebAssetEndpoints.props
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets\msbuild.build.presence_api.props
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets\msbuild.buildMultiTargeting.presence_api.props
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets\msbuild.buildTransitive.presence_api.props
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets.pack.json
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\staticwebassets.upToDateCheck.txt
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence.6C935717.Up2Date
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\refint\presence_api.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.pdb
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.genruntimeconfig.cache
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\ref\presence_api.dll
+C:\Users\User\Desktop\pr1\presence\presence_api\obj\Debug\net8.0\presence_api.MvcApplicationPartsAssemblyInfo.cs
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.dll b/presence/presence_api/obj/Debug/net8.0/presence_api.dll
new file mode 100644
index 0000000..6cd942f
Binary files /dev/null and b/presence/presence_api/obj/Debug/net8.0/presence_api.dll differ
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.genruntimeconfig.cache b/presence/presence_api/obj/Debug/net8.0/presence_api.genruntimeconfig.cache
new file mode 100644
index 0000000..e33f406
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/presence_api.genruntimeconfig.cache
@@ -0,0 +1 @@
+7f1020598c4738622ae85a496189bc82dae69112c2e0a64833eb56bab8df2ab3
diff --git a/presence/presence_api/obj/Debug/net8.0/presence_api.pdb b/presence/presence_api/obj/Debug/net8.0/presence_api.pdb
new file mode 100644
index 0000000..5264d48
Binary files /dev/null and b/presence/presence_api/obj/Debug/net8.0/presence_api.pdb differ
diff --git a/presence/presence_api/obj/Debug/net8.0/ref/presence_api.dll b/presence/presence_api/obj/Debug/net8.0/ref/presence_api.dll
new file mode 100644
index 0000000..30102cd
Binary files /dev/null and b/presence/presence_api/obj/Debug/net8.0/ref/presence_api.dll differ
diff --git a/presence/presence_api/obj/Debug/net8.0/refint/presence_api.dll b/presence/presence_api/obj/Debug/net8.0/refint/presence_api.dll
new file mode 100644
index 0000000..30102cd
Binary files /dev/null and b/presence/presence_api/obj/Debug/net8.0/refint/presence_api.dll differ
diff --git a/presence/presence_api/obj/Debug/net8.0/staticwebassets.build.endpoints.json b/presence/presence_api/obj/Debug/net8.0/staticwebassets.build.endpoints.json
new file mode 100644
index 0000000..2b6c535
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/staticwebassets.build.endpoints.json
@@ -0,0 +1,5 @@
+{
+ "Version": 1,
+ "ManifestType": "Build",
+ "Endpoints": []
+}
\ No newline at end of file
diff --git a/presence/presence_api/obj/Debug/net8.0/staticwebassets.build.json b/presence/presence_api/obj/Debug/net8.0/staticwebassets.build.json
new file mode 100644
index 0000000..abc3e2a
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/staticwebassets.build.json
@@ -0,0 +1,12 @@
+{
+ "Version": 1,
+ "Hash": "3vpFFeRkXoAz0BqsOx5QtRebpkfLri8Z6wFCD69rPmg=",
+ "Source": "presence_api",
+ "BasePath": "_content/presence_api",
+ "Mode": "Default",
+ "ManifestType": "Build",
+ "ReferencedProjectsConfiguration": [],
+ "DiscoveryPatterns": [],
+ "Assets": [],
+ "Endpoints": []
+}
\ No newline at end of file
diff --git a/presence/presence_api/obj/Debug/net8.0/staticwebassets.references.upToDateCheck.txt b/presence/presence_api/obj/Debug/net8.0/staticwebassets.references.upToDateCheck.txt
new file mode 100644
index 0000000..e69de29
diff --git a/presence/presence_api/obj/Debug/net8.0/staticwebassets.removed.txt b/presence/presence_api/obj/Debug/net8.0/staticwebassets.removed.txt
new file mode 100644
index 0000000..e69de29
diff --git a/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.build.presence_api.props b/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.build.presence_api.props
new file mode 100644
index 0000000..ddaed44
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.build.presence_api.props
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.buildMultiTargeting.presence_api.props b/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.buildMultiTargeting.presence_api.props
new file mode 100644
index 0000000..c8abaf4
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.buildMultiTargeting.presence_api.props
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.buildTransitive.presence_api.props b/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.buildTransitive.presence_api.props
new file mode 100644
index 0000000..14f6d35
--- /dev/null
+++ b/presence/presence_api/obj/Debug/net8.0/staticwebassets/msbuild.buildTransitive.presence_api.props
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/presence/presence_api/obj/Debug/net9.0/presence_api.csproj.AssemblyReference.cache b/presence/presence_api/obj/Debug/net9.0/presence_api.csproj.AssemblyReference.cache
index 83802d3..b0cdec5 100644
Binary files a/presence/presence_api/obj/Debug/net9.0/presence_api.csproj.AssemblyReference.cache and b/presence/presence_api/obj/Debug/net9.0/presence_api.csproj.AssemblyReference.cache differ
diff --git a/presence/presence_api/obj/Release/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/presence/presence_api/obj/Release/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2217181
--- /dev/null
+++ b/presence/presence_api/obj/Release/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
diff --git a/presence/presence_api/obj/Release/net8.0/presence_api.AssemblyInfo.cs b/presence/presence_api/obj/Release/net8.0/presence_api.AssemblyInfo.cs
new file mode 100644
index 0000000..f40731b
--- /dev/null
+++ b/presence/presence_api/obj/Release/net8.0/presence_api.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("presence_api")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+a55a118f4f90ec351b8e7060cdde62bebbb8d3e4")]
+[assembly: System.Reflection.AssemblyProductAttribute("presence_api")]
+[assembly: System.Reflection.AssemblyTitleAttribute("presence_api")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Создано классом WriteCodeFragment MSBuild.
+
diff --git a/presence/presence_api/obj/Release/net8.0/presence_api.AssemblyInfoInputs.cache b/presence/presence_api/obj/Release/net8.0/presence_api.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..0d759ef
--- /dev/null
+++ b/presence/presence_api/obj/Release/net8.0/presence_api.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+dfd4f95ecec6ea73d3459769f4142ddc08a5d29c4db0138980c07d7376a6a375
diff --git a/presence/presence_api/obj/Release/net8.0/presence_api.GeneratedMSBuildEditorConfig.editorconfig b/presence/presence_api/obj/Release/net8.0/presence_api.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..881094e
--- /dev/null
+++ b/presence/presence_api/obj/Release/net8.0/presence_api.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,21 @@
+is_global = true
+build_property.TargetFramework = net8.0
+build_property.TargetPlatformMinVersion =
+build_property.UsingMicrosoftNETSdkWeb = true
+build_property.ProjectTypeGuids =
+build_property.InvariantGlobalization =
+build_property.PlatformNeutralAssembly =
+build_property.EnforceExtendedAnalyzerRules =
+build_property._SupportedPlatformList = Linux,macOS,Windows
+build_property.RootNamespace = presence_api
+build_property.RootNamespace = presence_api
+build_property.ProjectDir = C:\Users\User\Desktop\pr1\presence\presence_api\
+build_property.EnableComHosting =
+build_property.EnableGeneratedComInterfaceComImportInterop =
+build_property.RazorLangVersion = 8.0
+build_property.SupportLocalizedComponentNames =
+build_property.GenerateRazorMetadataSourceChecksumAttributes =
+build_property.MSBuildProjectDirectory = C:\Users\User\Desktop\pr1\presence\presence_api
+build_property._RazorSourceGeneratorDebug =
+build_property.EffectiveAnalysisLevelStyle = 8.0
+build_property.EnableCodeStyleSeverity =
diff --git a/presence/presence_api/obj/Release/net8.0/presence_api.GlobalUsings.g.cs b/presence/presence_api/obj/Release/net8.0/presence_api.GlobalUsings.g.cs
new file mode 100644
index 0000000..025530a
--- /dev/null
+++ b/presence/presence_api/obj/Release/net8.0/presence_api.GlobalUsings.g.cs
@@ -0,0 +1,17 @@
+//
+global using global::Microsoft.AspNetCore.Builder;
+global using global::Microsoft.AspNetCore.Hosting;
+global using global::Microsoft.AspNetCore.Http;
+global using global::Microsoft.AspNetCore.Routing;
+global using global::Microsoft.Extensions.Configuration;
+global using global::Microsoft.Extensions.DependencyInjection;
+global using global::Microsoft.Extensions.Hosting;
+global using global::Microsoft.Extensions.Logging;
+global using global::System;
+global using global::System.Collections.Generic;
+global using global::System.IO;
+global using global::System.Linq;
+global using global::System.Net.Http;
+global using global::System.Net.Http.Json;
+global using global::System.Threading;
+global using global::System.Threading.Tasks;
diff --git a/presence/presence_api/obj/Release/net8.0/presence_api.assets.cache b/presence/presence_api/obj/Release/net8.0/presence_api.assets.cache
new file mode 100644
index 0000000..ce25c1a
Binary files /dev/null and b/presence/presence_api/obj/Release/net8.0/presence_api.assets.cache differ
diff --git a/presence/presence_api/obj/Release/net8.0/presence_api.csproj.AssemblyReference.cache b/presence/presence_api/obj/Release/net8.0/presence_api.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..a66b4be
Binary files /dev/null and b/presence/presence_api/obj/Release/net8.0/presence_api.csproj.AssemblyReference.cache differ
diff --git a/presence/presence_api/obj/presence_api.csproj.nuget.dgspec.json b/presence/presence_api/obj/presence_api.csproj.nuget.dgspec.json
index a809548..41d11f7 100644
--- a/presence/presence_api/obj/presence_api.csproj.nuget.dgspec.json
+++ b/presence/presence_api/obj/presence_api.csproj.nuget.dgspec.json
@@ -22,7 +22,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -30,8 +30,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {}
}
},
@@ -48,8 +48,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": {
"target": "Package",
@@ -104,7 +104,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -112,8 +112,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {
"C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
"projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj"
@@ -134,8 +134,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"imports": [
"net461",
"net462",
@@ -174,7 +174,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -182,8 +182,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {
"C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj": {
"projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj"
@@ -204,12 +204,12 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"dependencies": {
"Microsoft.AspNetCore.OpenApi": {
"target": "Package",
- "version": "[9.0.0, )"
+ "version": "[8.0.0, )"
},
"Swashbuckle.AspNetCore.Swagger": {
"target": "Package",
diff --git a/presence/presence_api/obj/project.assets.json b/presence/presence_api/obj/project.assets.json
index f5b193c..c75ca5c 100644
--- a/presence/presence_api/obj/project.assets.json
+++ b/presence/presence_api/obj/project.assets.json
@@ -1,19 +1,19 @@
{
"version": 3,
"targets": {
- "net9.0": {
- "Microsoft.AspNetCore.OpenApi/9.0.0": {
+ "net8.0": {
+ "Microsoft.AspNetCore.OpenApi/8.0.0": {
"type": "package",
"dependencies": {
- "Microsoft.OpenApi": "1.6.17"
+ "Microsoft.OpenApi": "1.4.3"
},
"compile": {
- "lib/net9.0/Microsoft.AspNetCore.OpenApi.dll": {
+ "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll": {
"related": ".xml"
}
},
"runtime": {
- "lib/net9.0/Microsoft.AspNetCore.OpenApi.dll": {
+ "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll": {
"related": ".xml"
}
},
@@ -308,12 +308,12 @@
"Microsoft.OpenApi": "1.6.22"
},
"compile": {
- "lib/net9.0/Swashbuckle.AspNetCore.Swagger.dll": {
+ "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
"related": ".pdb;.xml"
}
},
"runtime": {
- "lib/net9.0/Swashbuckle.AspNetCore.Swagger.dll": {
+ "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
"related": ".pdb;.xml"
}
},
@@ -327,12 +327,12 @@
"Swashbuckle.AspNetCore.Swagger": "7.0.0"
},
"compile": {
- "lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
+ "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
"related": ".pdb;.xml"
}
},
"runtime": {
- "lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
+ "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
"related": ".pdb;.xml"
}
}
@@ -340,12 +340,12 @@
"Swashbuckle.AspNetCore.SwaggerUI/7.0.0": {
"type": "package",
"compile": {
- "lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
+ "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
"related": ".pdb;.xml"
}
},
"runtime": {
- "lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
+ "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
"related": ".pdb;.xml"
}
},
@@ -355,7 +355,7 @@
},
"data/1.0.0": {
"type": "project",
- "framework": ".NETCoreApp,Version=v9.0",
+ "framework": ".NETCoreApp,Version=v8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": "8.0.10",
"Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10"
@@ -369,7 +369,7 @@
},
"domain/1.0.0": {
"type": "project",
- "framework": ".NETCoreApp,Version=v9.0",
+ "framework": ".NETCoreApp,Version=v8.0",
"dependencies": {
"data": "1.0.0"
},
@@ -383,19 +383,18 @@
}
},
"libraries": {
- "Microsoft.AspNetCore.OpenApi/9.0.0": {
- "sha512": "FqUK5j1EOPNuFT7IafltZQ3cakqhSwVzH5ZW1MhZDe4pPXs9sJ2M5jom1Omsu+mwF2tNKKlRAzLRHQTZzbd+6Q==",
+ "Microsoft.AspNetCore.OpenApi/8.0.0": {
+ "sha512": "T4mwMvPSOYAp+KeQ4xO8H2rxpiOMJ9W/7yBBkUTMp96AHtGlPN4s7hbax2tM61LxTY775JKL4fiv5grn41EHXw==",
"type": "package",
- "path": "microsoft.aspnetcore.openapi/9.0.0",
+ "path": "microsoft.aspnetcore.openapi/8.0.0",
"files": [
".nupkg.metadata",
".signature.p7s",
"Icon.png",
- "PACKAGE.md",
"THIRD-PARTY-NOTICES.TXT",
- "lib/net9.0/Microsoft.AspNetCore.OpenApi.dll",
- "lib/net9.0/Microsoft.AspNetCore.OpenApi.xml",
- "microsoft.aspnetcore.openapi.9.0.0.nupkg.sha512",
+ "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll",
+ "lib/net8.0/Microsoft.AspNetCore.OpenApi.xml",
+ "microsoft.aspnetcore.openapi.8.0.0.nupkg.sha512",
"microsoft.aspnetcore.openapi.nuspec"
]
},
@@ -933,8 +932,8 @@
}
},
"projectFileDependencyGroups": {
- "net9.0": [
- "Microsoft.AspNetCore.OpenApi >= 9.0.0",
+ "net8.0": [
+ "Microsoft.AspNetCore.OpenApi >= 8.0.0",
"Swashbuckle.AspNetCore.Swagger >= 7.0.0",
"Swashbuckle.AspNetCore.SwaggerGen >= 7.0.0",
"Swashbuckle.AspNetCore.SwaggerUI >= 7.0.0",
@@ -963,7 +962,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -971,8 +970,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {
"C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj": {
"projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\domain\\domain.csproj"
@@ -993,12 +992,12 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"dependencies": {
"Microsoft.AspNetCore.OpenApi": {
"target": "Package",
- "version": "[9.0.0, )"
+ "version": "[8.0.0, )"
},
"Swashbuckle.AspNetCore.Swagger": {
"target": "Package",
diff --git a/presence/presence_api/obj/project.nuget.cache b/presence/presence_api/obj/project.nuget.cache
index 826b262..4a4a44b 100644
--- a/presence/presence_api/obj/project.nuget.cache
+++ b/presence/presence_api/obj/project.nuget.cache
@@ -1,10 +1,10 @@
{
"version": 2,
- "dgSpecHash": "VG2vfFQO5+o=",
+ "dgSpecHash": "zkOBDhCkkqM=",
"success": true,
"projectFilePath": "C:\\Users\\User\\Desktop\\pr1\\presence\\presence_api\\presence_api.csproj",
"expectedPackageFiles": [
- "C:\\Users\\User\\.nuget\\packages\\microsoft.aspnetcore.openapi\\9.0.0\\microsoft.aspnetcore.openapi.9.0.0.nupkg.sha512",
+ "C:\\Users\\User\\.nuget\\packages\\microsoft.aspnetcore.openapi\\8.0.0\\microsoft.aspnetcore.openapi.8.0.0.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.10\\microsoft.entityframeworkcore.8.0.10.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.10\\microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512",
"C:\\Users\\User\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.10\\microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512",
diff --git a/presence/presence_api/presence_api.csproj b/presence/presence_api/presence_api.csproj
index f320a83..44e79b9 100644
--- a/presence/presence_api/presence_api.csproj
+++ b/presence/presence_api/presence_api.csproj
@@ -1,13 +1,13 @@
- net9.0
+ net8.0
enable
enable
-
+
diff --git a/presence/presence_api/presence_api.csproj.user b/presence/presence_api/presence_api.csproj.user
index 9ff5820..c404400 100644
--- a/presence/presence_api/presence_api.csproj.user
+++ b/presence/presence_api/presence_api.csproj.user
@@ -3,4 +3,7 @@
https
+
+ ProjectDebugger
+
\ No newline at end of file
diff --git a/presence/ui/obj/Debug/net9.0/ui.csproj.AssemblyReference.cache b/presence/ui/obj/Debug/net9.0/ui.csproj.AssemblyReference.cache
index e17ba2b..47e25c2 100644
Binary files a/presence/ui/obj/Debug/net9.0/ui.csproj.AssemblyReference.cache and b/presence/ui/obj/Debug/net9.0/ui.csproj.AssemblyReference.cache differ
diff --git a/presence/ui/obj/Debug/net9.0/ui.csproj.CoreCompileInputs.cache b/presence/ui/obj/Debug/net9.0/ui.csproj.CoreCompileInputs.cache
index fc5f911..ee57831 100644
--- a/presence/ui/obj/Debug/net9.0/ui.csproj.CoreCompileInputs.cache
+++ b/presence/ui/obj/Debug/net9.0/ui.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-93cb9d75348995ba8f80f6f49faed15830713af5960abad1a6ed35e32d6eeaef
+57e04a73268f805c7a269da0367091c601976d77b11d1bb7aa9bcb7852cb83f4
diff --git a/presence/ui/obj/project.assets.json b/presence/ui/obj/project.assets.json
index b12dccd..63b2a24 100644
--- a/presence/ui/obj/project.assets.json
+++ b/presence/ui/obj/project.assets.json
@@ -272,7 +272,7 @@
},
"data/1.0.0": {
"type": "project",
- "framework": ".NETCoreApp,Version=v9.0",
+ "framework": ".NETCoreApp,Version=v8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": "8.0.10",
"Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10"
@@ -286,7 +286,7 @@
},
"domain/1.0.0": {
"type": "project",
- "framework": ".NETCoreApp,Version=v9.0",
+ "framework": ".NETCoreApp,Version=v8.0",
"dependencies": {
"data": "1.0.0"
},
diff --git a/presence/ui/obj/project.nuget.cache b/presence/ui/obj/project.nuget.cache
index 7872f6e..f5b753c 100644
--- a/presence/ui/obj/project.nuget.cache
+++ b/presence/ui/obj/project.nuget.cache
@@ -1,6 +1,6 @@
{
"version": 2,
- "dgSpecHash": "tnguo2TNGJY=",
+ "dgSpecHash": "OOG9cnKxloM=",
"success": true,
"projectFilePath": "C:\\Users\\User\\Desktop\\pr1\\presence\\ui\\ui.csproj",
"expectedPackageFiles": [
diff --git a/presence/ui/obj/ui.csproj.nuget.dgspec.json b/presence/ui/obj/ui.csproj.nuget.dgspec.json
index 8398ccd..af5e5e8 100644
--- a/presence/ui/obj/ui.csproj.nuget.dgspec.json
+++ b/presence/ui/obj/ui.csproj.nuget.dgspec.json
@@ -22,7 +22,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -30,8 +30,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {}
}
},
@@ -48,8 +48,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"dependencies": {
"Microsoft.EntityFrameworkCore": {
"target": "Package",
@@ -104,7 +104,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
- "net9.0"
+ "net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@@ -112,8 +112,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"projectReferences": {
"C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj": {
"projectPath": "C:\\Users\\User\\Desktop\\pr1\\presence\\data\\data.csproj"
@@ -134,8 +134,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
- "net9.0": {
- "targetAlias": "net9.0",
+ "net8.0": {
+ "targetAlias": "net8.0",
"imports": [
"net461",
"net462",