This commit is contained in:
Your Name 2025-04-21 12:00:17 +03:00
parent f349bf3d57
commit 46b171eab8
78 changed files with 291 additions and 35 deletions

13
.idea/.idea.presence/.idea/.gitignore vendored Normal file
View File

@ -0,0 +1,13 @@
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/modules.xml
/contentModel.xml
/.idea.presence.iml
/projectSettingsUpdater.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AvaloniaProject">
<option name="projectPerEditor">
<map>
<entry key="Presence.Desktop/Views/PresenceView.axaml" value="Presence.Desktop/Presence.Desktop.csproj" />
</map>
</option>
</component>
</project>

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with BOM under Windows, with no BOM otherwise" />
</project>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@ -21,8 +21,10 @@ using System.Threading.Tasks;
.AddDbContext<RemoteDatabaseContext>()
.AddSingleton<IGroupRepository, SQLGroupRepositoryImpl>()
.AddSingleton<IUserRepository, SQLUserRepositoryImpl>()
.AddTransient<IPresenceRepository, SQLPresenceRepositoryImpl>()
.AddTransient<IGroupUseCase, GroupUseCase>()
.AddTransient<IUserUseCase, UserUseCase>()
.AddTransient<IPresenceUseCase, PresenceUseCase>()
.AddTransient<GroupViewModel>();
}
}

View File

@ -10,10 +10,13 @@ using System.Threading.Tasks;
{
public class PresencePresenter
{
public int UserGuid { get; set; }
public Guid UserGuid { get; set; }
public bool IsAttedance {get; set; }
public DateOnly Date {get; set; }
public int LessonNumber {get; set; }
public UserPresenter? user { get; set; }
//для будущего решения
public string AttendanceStatus { get; set; }
}
}

View File

@ -1,24 +1,152 @@
// using System.Reactive;
// using ReactiveUI;
// namespace Presence.Desktop.ViewModels;
// public class PresenceViewModel: ViewModelBase, IRoutableViewModel
// {
// public string? UrlPathSegment { get; }
// public IScreen HostScreen { get; }
// public ReactiveCommand<Unit, Unit> GoBackCommand { get; }
// public PresenceViewModel(IScreen hostScreen)
// {
// HostScreen = hostScreen;
// GoBackCommand = ReactiveCommand.Create(() =>
// {
// HostScreen.Router.Navigate.Execute(new StartViewModel(HostScreen));
// });
// }
// }
using System;
using System.Reactive;
using ReactiveUI;
using Demo.Domain.Models;
using Demo.Domain.UseCase;
using System.Collections.ObjectModel;
using Presence.Desktop.Models;
namespace Presence.Desktop.ViewModels;
public class PresenceViewModel: ViewModelBase, IRoutableViewModel
namespace Presence.Desktop.ViewModels
{
public string? UrlPathSegment { get; }
public IScreen HostScreen { get; }
public ReactiveCommand<Unit, Unit> GoBackCommand { get; }
public PresenceViewModel(IScreen hostScreen)
public class PresenceViewModel : ViewModelBase, IRoutableViewModel
{
HostScreen = hostScreen;
public string? UrlPathSegment { get; }
public IScreen HostScreen { get; }
GoBackCommand = ReactiveCommand.Create(() =>
public ReactiveCommand<Unit, Unit> GoBackCommand { get; }
public ReactiveCommand<Unit, Unit> FilterAttendanceCommand { get; }
public ObservableCollection<PresencePresenter> AttendanceRecords { get; set; } = new();
public ObservableCollection<Group> Groups { get; set; } = new();
public ObservableCollection<string> AttendanceTypes { get; set; } = new()
{
HostScreen.Router.Navigate.Execute(new StartViewModel(HostScreen));
});
}
}
"Присутствовал",
"Отсутствовал",
};
private Group? _selectedGroup;
public Group? SelectedGroup
{
get => _selectedGroup;
set
{
this.RaiseAndSetIfChanged(ref _selectedGroup, value);
FilterAttendanceRecords();
}
}
private DateTime? _selectedDate;
public DateTime? SelectedDate
{
get => _selectedDate;
set
{
this.RaiseAndSetIfChanged(ref _selectedDate, value);
FilterAttendanceRecords();
}
}
private readonly IGroupUseCase _groupUseCase;
private readonly IPresenceUseCase _presenceUseCase;
public PresenceViewModel(IScreen hostScreen, IGroupUseCase groupUseCase, IPresenceUseCase presenceUseCase)
{
HostScreen = hostScreen;
_groupUseCase = groupUseCase;
_presenceUseCase = presenceUseCase;
GoBackCommand = ReactiveCommand.Create(() =>
{
HostScreen.Router.Navigate.Execute(new StartViewModel(HostScreen));
});
FilterAttendanceCommand = ReactiveCommand.Create(FilterAttendanceRecords);
LoadGroups();
}
private void LoadGroups()
{
Groups.Clear();
var groups = _groupUseCase.GetAllGroups();
foreach (var group in groups)
{
Groups.Add(group);
}
}
private void FilterAttendanceRecords()
{
if (SelectedGroup == null || SelectedDate == null)
{
AttendanceRecords.Clear();
return;
}
var dateOnly = DateOnly.FromDateTime(SelectedDate.Value);
var records = _presenceUseCase.GetPresenceByGroupByTime(
SelectedGroup.ID,
dateOnly);
AttendanceRecords.Clear();
foreach (var record in records)
{
// Преобразуем значение IsAttedance в строку прямо здесь
var attendanceStatus = record.IsAttedance ? "Был на уроке" : "Не был на уроке";
AttendanceRecords.Add(new PresencePresenter
{
UserGuid = record.User.Guid,
IsAttedance = record.IsAttedance, // оставляем bool в модели
Date = record.Date,
LessonNumber = record.LessonNumber,
user = new UserPresenter
{
Name = record.User.FIO,
Guid = record.User.Guid
},
AttendanceStatus = attendanceStatus // добавляем строковое представление
});
}
}
// Новый метод для обработки изменения типа посещаемости
public void OnAttendanceTypeChanged(PresencePresenter presence, string newType)
{
presence.IsAttedance = newType == "Присутствовал";
if (_presenceUseCase.UpdateAttendance(presence.LessonNumber, presence.Date, presence.UserGuid, presence.IsAttedance))
{
Console.WriteLine($"Изменен тип посещаемости для {presence.user.Name}: {newType}");
}
else
{
Console.WriteLine($"Не удалось обновить тип посещаемости для {presence.user.Name}");
}
}
}
}

View File

@ -30,7 +30,12 @@ namespace Presence.Desktop.ViewModels
OpenPresenceCommand = ReactiveCommand.Create(() =>
{
HostScreen.Router.Navigate.Execute(new PresenceViewModel(HostScreen));
// HostScreen.Router.Navigate.Execute(new PresenceViewModel(HostScreen));
HostScreen.Router.Navigate.Execute(new PresenceViewModel(
HostScreen,
App.ServiceProvider.GetRequiredService<IGroupUseCase>(),
App.ServiceProvider.GetRequiredService<IPresenceUseCase>()
));
});
GoBackCommand = ReactiveCommand.Create(() =>

View File

@ -1,4 +1,4 @@
<UserControl xmlns="https://github.com/avaloniaui"
<!-- <UserControl xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
@ -12,4 +12,39 @@
<TextBlock Text="Welcome to Avalonia!" HorizontalAlignment="Center" VerticalAlignment="Center" />
</StackPanel>
</DockPanel>
</UserControl> -->
<UserControl xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:vm="clr-namespace:Presence.Desktop.ViewModels"
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="600"
x:Class="Presence.Desktop.Views.PresenceView"
x:DataType="vm:PresenceViewModel">
<DockPanel>
<Button Content="Назад" Command="{Binding GoBackCommand}" Foreground="Black" DockPanel.Dock="Top" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="10" />
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" Spacing="10" DockPanel.Dock="Top" Margin="10">
<ComboBox ItemsSource="{Binding Groups}" SelectedItem="{Binding SelectedGroup}" Width="200" PlaceholderText="Выберите группу">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<Calendar Name="AttendanceCalendar" SelectionMode="SingleDate" SelectedDate="{Binding SelectedDate, Mode=TwoWay}" />
</StackPanel>
<DataGrid Name="AttendanceDataGrid" DockPanel.Dock="Top" AutoGenerateColumns="False" ItemsSource="{Binding AttendanceRecords}" CanUserSortColumns="True" Margin="10">
<DataGrid.Columns>
<DataGridTextColumn Header="Дата" Binding="{Binding Date}" />
<DataGridTextColumn Header="Номер урока" Binding="{Binding LessonNumber}" />
<DataGridTextColumn Header="ФИО" Binding="{Binding user.Name}" />
<DataGridTextColumn Header="Тип посещаемости" Binding="{Binding AttendanceStatus}" />
</DataGrid.Columns>
</DataGrid>
<Button Content="Назад" DockPanel.Dock="Bottom" HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="10" Command="{Binding GoBackCommand}" />
</DockPanel>
</UserControl>

View File

@ -13,10 +13,10 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Presence.Desktop")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e09931058bc7801d9456d8f4488e86baf26d74f6")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f349bf3d57cd40fa9b39af1fb9638bb2d06d5e1a")]
[assembly: System.Reflection.AssemblyProductAttribute("Presence.Desktop")]
[assembly: System.Reflection.AssemblyTitleAttribute("Presence.Desktop")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Создано классом WriteCodeFragment MSBuild.
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -1 +1 @@
99f0d759dbf1f913c86207dbab807cce741df668439588646904c6e36ffd544e
136b784a7a15debbab2c7cf7c9a0094ae85013348cf4adc6096c7f0441f9342b

View File

@ -0,0 +1 @@
"restore":{"projectUniqueName":"/Users/rinchi/VSCodeProjects/presence/Presence.Desktop/Presence.Desktop.csproj","projectName":"Presence.Desktop","projectPath":"/Users/rinchi/VSCodeProjects/presence/Presence.Desktop/Presence.Desktop.csproj","outputPath":"/Users/rinchi/VSCodeProjects/presence/Presence.Desktop/obj/","projectStyle":"PackageReference","originalTargetFrameworks":["net8.0"],"sources":{"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net8.0":{"targetAlias":"net8.0","projectReferences":{"/Users/rinchi/VSCodeProjects/presence/data/data.csproj":{"projectPath":"/Users/rinchi/VSCodeProjects/presence/data/data.csproj"},"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj":{"projectPath":"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj"}}}},"warningProperties":{"warnAsError":["NU1605"]},"restoreAuditProperties":{"enableAudit":"true","auditLevel":"low","auditMode":"direct"}}"frameworks":{"net8.0":{"targetAlias":"net8.0","dependencies":{"Avalonia":{"target":"Package","version":"[11.2.1, )"},"Avalonia.Desktop":{"target":"Package","version":"[11.2.1, )"},"Avalonia.Diagnostics":{"target":"Package","version":"[11.2.1, )"},"Avalonia.Fonts.Inter":{"target":"Package","version":"[11.2.1, )"},"Avalonia.ReactiveUI":{"target":"Package","version":"[11.2.1, )"},"Avalonia.Themes.Fluent":{"target":"Package","version":"[11.2.1, )"},"Microsoft.Extensions.DependencyInjection":{"target":"Package","version":"[9.0.0, )"}},"imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"/usr/local/share/dotnet/sdk/8.0.402/PortableRuntimeIdentifierGraph.json"}}

View File

@ -0,0 +1 @@
17328689157743786

View File

@ -0,0 +1 @@
17328689157743786

View File

@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("console_ui")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e09931058bc7801d9456d8f4488e86baf26d74f6")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f349bf3d57cd40fa9b39af1fb9638bb2d06d5e1a")]
[assembly: System.Reflection.AssemblyProductAttribute("console_ui")]
[assembly: System.Reflection.AssemblyTitleAttribute("console_ui")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
8053c4a8786132c74ba12c8d4f8a0de9ea8ccaca0ae2ad56a4cb9adca8604fb7
53d5d99cffbccec1949b12632bb3f905251e95f71043b6a8a8cddd133131207d

View File

@ -0,0 +1 @@
"restore":{"projectUniqueName":"/Users/rinchi/VSCodeProjects/presence/console_ui/console_ui.csproj","projectName":"console_ui","projectPath":"/Users/rinchi/VSCodeProjects/presence/console_ui/console_ui.csproj","outputPath":"/Users/rinchi/VSCodeProjects/presence/console_ui/obj/","projectStyle":"PackageReference","originalTargetFrameworks":["net8.0"],"sources":{"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net8.0":{"targetAlias":"net8.0","projectReferences":{"/Users/rinchi/VSCodeProjects/presence/data/data.csproj":{"projectPath":"/Users/rinchi/VSCodeProjects/presence/data/data.csproj"},"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj":{"projectPath":"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj"},"/Users/rinchi/VSCodeProjects/presence/ui/ui.csproj":{"projectPath":"/Users/rinchi/VSCodeProjects/presence/ui/ui.csproj"}}}},"warningProperties":{"warnAsError":["NU1605"]},"restoreAuditProperties":{"enableAudit":"true","auditLevel":"low","auditMode":"direct"}}"frameworks":{"net8.0":{"targetAlias":"net8.0","dependencies":{"Microsoft.Extensions.DependencyInjection":{"target":"Package","version":"[8.0.1, )"}},"imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"/usr/local/share/dotnet/sdk/8.0.402/PortableRuntimeIdentifierGraph.json"}}

View File

@ -0,0 +1 @@
17304695031615875

View File

@ -0,0 +1 @@
17304695031615875

View File

@ -14,7 +14,7 @@ namespace Demo.Data.RemoteData.RemoteDataBase
optionsBuilder.UseNpgsql("Host=localhost;" +
"Port=5432;" +
"Username=postgres;" +
"Password=1234;" +
"Password=5432;" +
"Database=postgres");
}

View File

@ -10,6 +10,7 @@ namespace Demo.Data.Repository
bool DeletePresenceByUser(Guid userGuid);
bool DeletePresenceByRange(DateOnly start, DateOnly end);
void IsAttedance(int firstLesson, int lastLesson, DateOnly date, Guid UserGuid);
void UpdateAttendance(int lessonNumber, DateOnly date, Guid userGuid, bool isAttedance);
List<PresenceLocalEntity> GeneratePresence(List<PresenceLocalEntity> presenceLocalEntities);
}
}

View File

@ -95,5 +95,21 @@ namespace Demo.Data.Repository
_remoteDatabaseContext.SaveChanges();
}
public void UpdateAttendance(int lessonNumber, DateOnly date, Guid userGuid, bool isAttedance)
{
var presenceToUpdate = _remoteDatabaseContext.PresenceDaos
.FirstOrDefault(x => x.UserGuid == userGuid && x.LessonNumber == lessonNumber && x.Date == date);
if (presenceToUpdate != null)
{
presenceToUpdate.IsAttedance = isAttedance;
_remoteDatabaseContext.SaveChanges();
}
else
{
throw new Exception("Attendance record not found.");
}
}
}
}

Binary file not shown.

Binary file not shown.

View File

@ -13,10 +13,10 @@ 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+e09931058bc7801d9456d8f4488e86baf26d74f6")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f349bf3d57cd40fa9b39af1fb9638bb2d06d5e1a")]
[assembly: System.Reflection.AssemblyProductAttribute("data")]
[assembly: System.Reflection.AssemblyTitleAttribute("data")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Создано классом WriteCodeFragment MSBuild.
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -1 +1 @@
96f9dba9e152933168206a00324b7f1d8f74e630cc6cff00fa36fa150d6facd7
f7efb7b95a8d07ee86502b0342aca04b601c607ebeb937dfb4ed012b3d9c3ade

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1 @@
"restore":{"projectUniqueName":"/Users/rinchi/VSCodeProjects/presence/data/data.csproj","projectName":"data","projectPath":"/Users/rinchi/VSCodeProjects/presence/data/data.csproj","outputPath":"/Users/rinchi/VSCodeProjects/presence/data/obj/","projectStyle":"PackageReference","originalTargetFrameworks":["net8.0"],"sources":{"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net8.0":{"targetAlias":"net8.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]},"restoreAuditProperties":{"enableAudit":"true","auditLevel":"low","auditMode":"direct"}}"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":"/usr/local/share/dotnet/sdk/8.0.402/PortableRuntimeIdentifierGraph.json"}}

View File

@ -0,0 +1 @@
17304693393445690

View File

@ -0,0 +1 @@
17304693393445690

View File

@ -17,5 +17,6 @@ namespace Demo.Domain.UseCase
bool IsAttedance(int firstLesson, int lastLesson, DateOnly date, Guid UserGuid);
bool GeneratePresence(int firstLesson, int lastLesson, int groupID, DateOnly date);
bool GeneratePresenceWeek(int firstLesson, int lastLesson, int groupID, DateOnly date);
bool UpdateAttendance(int lessonNumber, DateOnly date, Guid userGuid, bool isAttedance);
}
}

View File

@ -242,5 +242,11 @@ namespace Demo.Domain.UseCase
}
return true;
}
public bool UpdateAttendance(int lessonNumber, DateOnly date, Guid userGuid, bool isAttedance)
{
_repositoryPresenceImpl.UpdateAttendance(lessonNumber, date, userGuid, isAttedance);
return true;
}
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -13,10 +13,10 @@ 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+e09931058bc7801d9456d8f4488e86baf26d74f6")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f349bf3d57cd40fa9b39af1fb9638bb2d06d5e1a")]
[assembly: System.Reflection.AssemblyProductAttribute("domain")]
[assembly: System.Reflection.AssemblyTitleAttribute("domain")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Создано классом WriteCodeFragment MSBuild.
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -1 +1 @@
f1d70c0a78a9408777622323328940398500abe86ee7f209a489d7b3dde2e88e
4751b10857a21805172e22182c641f6f38ba829403d9b024151286eb7a358839

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1 @@
"restore":{"projectUniqueName":"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj","projectName":"domain","projectPath":"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj","outputPath":"/Users/rinchi/VSCodeProjects/presence/domain/obj/","projectStyle":"PackageReference","originalTargetFrameworks":["net8.0"],"sources":{"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net8.0":{"targetAlias":"net8.0","projectReferences":{"/Users/rinchi/VSCodeProjects/presence/data/data.csproj":{"projectPath":"/Users/rinchi/VSCodeProjects/presence/data/data.csproj"}}}},"warningProperties":{"warnAsError":["NU1605"]},"restoreAuditProperties":{"enableAudit":"true","auditLevel":"low","auditMode":"direct"}}"frameworks":{"net8.0":{"targetAlias":"net8.0","dependencies":{"ClosedXML":{"target":"Package","version":"[0.104.1, )"}},"imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"/usr/local/share/dotnet/sdk/8.0.402/PortableRuntimeIdentifierGraph.json"}}

View File

@ -0,0 +1 @@
17304695015079442

View File

@ -0,0 +1 @@
17304695015079442

View File

@ -13,7 +13,7 @@ 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+e09931058bc7801d9456d8f4488e86baf26d74f6")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f349bf3d57cd40fa9b39af1fb9638bb2d06d5e1a")]
[assembly: System.Reflection.AssemblyProductAttribute("presence_api")]
[assembly: System.Reflection.AssemblyTitleAttribute("presence_api")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
53ebebffa72175e477c3e89e7f1bac4a1986d89da1205920d472457851054eb4
9af4ff139b15efcf57df6042f240fed37bde6a756ad86ee0cd310d39cda9482e

View File

@ -0,0 +1 @@
"restore":{"projectUniqueName":"/Users/rinchi/VSCodeProjects/presence/presence_api/presence_api.csproj","projectName":"presence_api","projectPath":"/Users/rinchi/VSCodeProjects/presence/presence_api/presence_api.csproj","outputPath":"/Users/rinchi/VSCodeProjects/presence/presence_api/obj/","projectStyle":"PackageReference","originalTargetFrameworks":["net8.0"],"sources":{"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net8.0":{"targetAlias":"net8.0","projectReferences":{"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj":{"projectPath":"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj"}}}},"warningProperties":{"warnAsError":["NU1605"]},"restoreAuditProperties":{"enableAudit":"true","auditLevel":"low","auditMode":"direct"}}"frameworks":{"net8.0":{"targetAlias":"net8.0","dependencies":{"Microsoft.AspNetCore.OpenApi":{"target":"Package","version":"[8.0.8, )"},"Swashbuckle.AspNetCore":{"target":"Package","version":"[6.4.0, )"}},"imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.AspNetCore.App":{"privateAssets":"none"},"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"/usr/local/share/dotnet/sdk/8.0.402/PortableRuntimeIdentifierGraph.json"}}

View File

@ -0,0 +1 @@
17309956270493816

View File

@ -0,0 +1 @@
17309956270493816

View File

@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("ui")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e09931058bc7801d9456d8f4488e86baf26d74f6")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f349bf3d57cd40fa9b39af1fb9638bb2d06d5e1a")]
[assembly: System.Reflection.AssemblyProductAttribute("ui")]
[assembly: System.Reflection.AssemblyTitleAttribute("ui")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
c0c82d21139afdd6aabf25e83b1808deccf76aafb567111f614d27ab4faa9fff
fd64b8ebd88e77e42cc08e37840d8b4eebac03ea57f9c8e564fe05c340564333

View File

@ -0,0 +1 @@
"restore":{"projectUniqueName":"/Users/rinchi/VSCodeProjects/presence/ui/ui.csproj","projectName":"ui","projectPath":"/Users/rinchi/VSCodeProjects/presence/ui/ui.csproj","outputPath":"/Users/rinchi/VSCodeProjects/presence/ui/obj/","projectStyle":"PackageReference","originalTargetFrameworks":["net8.0"],"sources":{"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net8.0":{"targetAlias":"net8.0","projectReferences":{"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj":{"projectPath":"/Users/rinchi/VSCodeProjects/presence/domain/domain.csproj"}}}},"warningProperties":{"warnAsError":["NU1605"]},"restoreAuditProperties":{"enableAudit":"true","auditLevel":"low","auditMode":"direct"}}"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":"/usr/local/share/dotnet/sdk/8.0.402/PortableRuntimeIdentifierGraph.json"}}

View File

@ -0,0 +1 @@
17304695031617678

View File

@ -0,0 +1 @@
17304695031617678