This commit is contained in:
parent
016a872d76
commit
23b7c0caff
@ -1,10 +1,11 @@
|
|||||||
|
|
||||||
using Zurnal.Date.LocalDate;
|
using Zurnal.Date.LocalDate;
|
||||||
using Zurnal.domain.Models;
|
using Zurnal.domain.Models;
|
||||||
using Zurnal.RemaDateBase.DateDao;
|
using Zurnal.RemaDateBase.DateDao;
|
||||||
|
|
||||||
namespace Data.Repository
|
namespace Zurnal.Date.Repository.SQLRepos
|
||||||
{
|
{
|
||||||
public class SQLGroupRepositoryImpl:IGroupRepository
|
public class SQLGroupRepositoryImpl : IGroupRepository
|
||||||
{
|
{
|
||||||
private readonly RemoteDateBaseContext _remoteDataBaseContext;
|
private readonly RemoteDateBaseContext _remoteDataBaseContext;
|
||||||
|
|
||||||
@ -14,6 +15,8 @@ namespace Data.Repository
|
|||||||
|
|
||||||
public List<GroupDao> AllGroup => throw new NotImplementedException();
|
public List<GroupDao> AllGroup => throw new NotImplementedException();
|
||||||
|
|
||||||
|
List<GroupDao> IGroupRepository.AllGroup => throw new NotImplementedException();
|
||||||
|
|
||||||
public bool AddGroup(GroupLocalEntity newGroup)
|
public bool AddGroup(GroupLocalEntity newGroup)
|
||||||
{
|
{
|
||||||
GroupDao groupDao = new GroupDao { GroupName = newGroup.Name };
|
GroupDao groupDao = new GroupDao { GroupName = newGroup.Name };
|
||||||
@ -34,41 +37,10 @@ namespace Data.Repository
|
|||||||
|
|
||||||
public List<GroupLocalEntity> GetAllGroups() => LocalStaticData.groups;
|
public List<GroupLocalEntity> GetAllGroups() => LocalStaticData.groups;
|
||||||
|
|
||||||
public GroupLocalEntity GetGroupById(int groupID)
|
List<GroupLocalEntity> IGroupRepository.GetAllGroup()
|
||||||
{
|
|
||||||
throw new NotImplementedException();
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool RemoveGroupById(int groupID)
|
|
||||||
{
|
|
||||||
throw new NotImplementedException();
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool UpdateGroupById(int groupID, GroupLocalEntity updatedGroup)
|
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class SQLPresenceRepositoryImpl: IPresenceRepository
|
|
||||||
{
|
|
||||||
private readonly RemoteDateBaseContext _remoteDatabaseContext;
|
|
||||||
|
|
||||||
public SQLPresenceRepositoryImpl(RemoteDateBaseContext remoteDatabaseContext)
|
|
||||||
{
|
|
||||||
_remoteDatabaseContext = remoteDatabaseContext;
|
|
||||||
}
|
|
||||||
public DateOnly? GetLastDateByGroupId(int groupId)
|
|
||||||
{
|
|
||||||
var lastDate = _remoteDatabaseContext.Presence
|
|
||||||
.Where(p => p.GroupId == groupId)
|
|
||||||
.OrderByDescending(p => p.Date)
|
|
||||||
.Select(p => p.Date)
|
|
||||||
.FirstOrDefault();
|
|
||||||
|
|
||||||
return lastDate == default ? (DateOnly?)null : lastDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
@ -0,0 +1,49 @@
|
|||||||
|
using Zurnal.Date.LocalDate;
|
||||||
|
using Zurnal.domain.Models;
|
||||||
|
using Zurnal.RemaDateBase.DateDao;
|
||||||
|
|
||||||
|
namespace Zurnal.Date.Repository.SQLRepos
|
||||||
|
{
|
||||||
|
public class SQLPresenceRepositoryImpl : IPresenceRepository
|
||||||
|
{
|
||||||
|
private readonly RemoteDateBaseContext _remoteDataBaseContext;
|
||||||
|
|
||||||
|
public SQLPresenceRepositoryImpl(RemoteDateBaseContext remoteDataBaseContext) {
|
||||||
|
_remoteDataBaseContext = remoteDataBaseContext;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddPresence(PresnceDao presence)
|
||||||
|
{
|
||||||
|
var result = _remoteDataBaseContext.Presence.Add(presence);
|
||||||
|
if (result != null) {
|
||||||
|
_remoteDataBaseContext.SaveChanges();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public PresnceDao GetPresenceById(int id)
|
||||||
|
{
|
||||||
|
return _remoteDataBaseContext.Presence.Find(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerable<PresnceDao> GetAllPresences()
|
||||||
|
{
|
||||||
|
return _remoteDataBaseContext.Presence.ToList();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UpdatePresence(PresnceDao presence)
|
||||||
|
{
|
||||||
|
_remoteDataBaseContext.Presence.Update(presence);
|
||||||
|
_remoteDataBaseContext.SaveChanges();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DeletePresence(int id)
|
||||||
|
{
|
||||||
|
var presence = GetPresenceById(id);
|
||||||
|
if (presence != null)
|
||||||
|
{
|
||||||
|
_remoteDataBaseContext.Presence.Remove(presence);
|
||||||
|
_remoteDataBaseContext.SaveChanges();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,61 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using Zurnal.Data.Repository;
|
||||||
|
using Zurnal.domain.Models;
|
||||||
|
using Zurnal.RemaDateBase.DateDao;
|
||||||
|
|
||||||
|
namespace Zurnal.Date.Repository.SQLRepos
|
||||||
|
{
|
||||||
|
public class SQLUserRepositoryImpl : IUserRepository
|
||||||
|
{
|
||||||
|
private readonly RemoteDateBaseContext _remoteDataBaseContext;
|
||||||
|
|
||||||
|
public SQLUserRepositoryImpl(RemoteDateBaseContext remoteDataBaseContext)
|
||||||
|
{
|
||||||
|
_remoteDataBaseContext = remoteDataBaseContext;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<UserDao> GetAllUsers =>
|
||||||
|
_remoteDataBaseContext.User.Select(user => new UserDao
|
||||||
|
{
|
||||||
|
UserGuid = user.UserGuid,
|
||||||
|
FIO = user.FIO,
|
||||||
|
GroupID = user.GroupID,
|
||||||
|
}).ToList();
|
||||||
|
|
||||||
|
public bool RemoveUserByGuid(Guid userGuid)
|
||||||
|
{
|
||||||
|
var user = _remoteDataBaseContext.User.Find(userGuid);
|
||||||
|
if (user == null) return false;
|
||||||
|
|
||||||
|
_remoteDataBaseContext.User.Remove(user);
|
||||||
|
_remoteDataBaseContext.SaveChanges();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public UserDao? GetUserByGuid(Guid userGuid)
|
||||||
|
{
|
||||||
|
var user = _remoteDataBaseContext.User.Find(userGuid);
|
||||||
|
if (user == null) return null;
|
||||||
|
|
||||||
|
return new UserDao
|
||||||
|
{
|
||||||
|
UserGuid = user.UserGuid,
|
||||||
|
FIO = user.FIO,
|
||||||
|
GroupID = user.GroupID,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
public UserDao? UpdateUser(UserDao userUpdateLocalEnity)
|
||||||
|
{
|
||||||
|
var user = _remoteDataBaseContext.User.Find(userUpdateLocalEnity.UserGuid);
|
||||||
|
if (user == null) return null;
|
||||||
|
|
||||||
|
user.FIO = userUpdateLocalEnity.FIO;
|
||||||
|
user.GroupID = userUpdateLocalEnity.GroupID;
|
||||||
|
_remoteDataBaseContext.SaveChanges();
|
||||||
|
return userUpdateLocalEnity;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,9 +1,13 @@
|
|||||||
using Data.Repository;
|
using Zurnal.Data.Repository;
|
||||||
using Zurnal.Data.Repository;
|
using Zurnal.Date.Repository.SQLRepos;
|
||||||
using Zurnal.Domain.UseCase;
|
using Zurnal.Domain.UseCase;
|
||||||
using Zurnal.Presence;
|
using Zurnal.Presence;
|
||||||
using Zurnal.UI;
|
using Zurnal.UI;
|
||||||
|
|
||||||
|
class Programka
|
||||||
|
{
|
||||||
|
static void Main(string[] args)
|
||||||
|
{
|
||||||
IServiceCollection services = new ServiceCollection();
|
IServiceCollection services = new ServiceCollection();
|
||||||
|
|
||||||
services
|
services
|
||||||
@ -20,3 +24,5 @@ var serviceProvider = services.BuildServiceProvider();
|
|||||||
MainMenuUI mainMenuUI = serviceProvider.GetService<MainMenuUI>();
|
MainMenuUI mainMenuUI = serviceProvider.GetService<MainMenuUI>();
|
||||||
|
|
||||||
mainMenuUI.DisplayMenu();
|
mainMenuUI.DisplayMenu();
|
||||||
|
}
|
||||||
|
}
|
@ -6,5 +6,5 @@
|
|||||||
public Guid UserGuid { get; set; }
|
public Guid UserGuid { get; set; }
|
||||||
public GroupDao Group { get; set; }
|
public GroupDao Group { get; set; }
|
||||||
public required int GroupID { get; set; }
|
public required int GroupID { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -0,0 +1,10 @@
|
|||||||
|
using Zurnal.RemaDateBase.DateDao;
|
||||||
|
|
||||||
|
public interface IPresenceRepository
|
||||||
|
{
|
||||||
|
void AddPresence(PresnceDao presence);
|
||||||
|
PresnceDao GetPresenceById(int id);
|
||||||
|
IEnumerable<PresnceDao> GetAllPresences();
|
||||||
|
void UpdatePresence(PresnceDao presence);
|
||||||
|
void DeletePresence(int id);
|
||||||
|
}
|
@ -7,9 +7,9 @@ namespace Zurnal.Data.Repository
|
|||||||
{
|
{
|
||||||
public interface IUserRepository
|
public interface IUserRepository
|
||||||
{
|
{
|
||||||
List<UserLocalEnity> GetAllUsers { get; }
|
List<UserDao> GetAllUsers { get; }
|
||||||
bool RemoveUserByGuid(Guid userGuid);
|
bool RemoveUserByGuid(Guid userGuid);
|
||||||
UserLocalEnity? GetUserByGuid(Guid userGuid);
|
UserDao? GetUserByGuid(Guid userGuid);
|
||||||
UserLocalEnity? UpdateUser(UserLocalEnity userUpdateLocalEnity);
|
UserDao? UpdateUser(UserDao userUpdateLocalEnity);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -6,7 +6,6 @@ public class RemoteDateBaseContext : DbContext
|
|||||||
public DbSet<GroupDao> Group { get; set; }
|
public DbSet<GroupDao> Group { get; set; }
|
||||||
public DbSet<UserDao> User { get; set; }
|
public DbSet<UserDao> User { get; set; }
|
||||||
public DbSet<PresnceDao> Presence { get; set; }
|
public DbSet<PresnceDao> Presence { get; set; }
|
||||||
public object Groups { get; internal set; }
|
|
||||||
|
|
||||||
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
||||||
{
|
{
|
||||||
|
@ -13,7 +13,7 @@ namespace Zurnal.UI
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DisplayMenu()
|
public void DisplayMenu()
|
||||||
{
|
{
|
||||||
while (true)
|
while (true)
|
||||||
{
|
{
|
||||||
@ -26,9 +26,8 @@ namespace Zurnal.UI
|
|||||||
DisplayMenu();
|
DisplayMenu();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1 +1 @@
|
|||||||
e7472ea1c8f499a7ec454e6a70d834c4f0deb35d64d70c46a4cd5bc76239a16e
|
363301da55cc0da9a5b5db64cdaad65e5fa588627917582d0f884f0b7608c9c8
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
|
using Zurnal.Date.Repository.SQLRepos;
|
||||||
using Data.Repository;
|
using Zurnal.Domain.UseCase;
|
||||||
using domain;
|
|
||||||
|
|
||||||
public static class ServiceExtensions {
|
public static class ServiceExtensions {
|
||||||
public static void ConfigurateGroup(this IServiceCollection services){
|
public static void ConfigurateGroup(this IServiceCollection services){
|
||||||
|
@ -1 +1 @@
|
|||||||
IServiceCollection
|
MainMenuUI
|
Loading…
Reference in New Issue
Block a user