45 lines
1.1 KiB
C#
45 lines
1.1 KiB
C#
using DD.Persistence.Database.Entity;
|
|
using DD.Persistence.Repositories;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.Extensions.Caching.Memory;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using UuidExtensions;
|
|
|
|
namespace DD.Persistence.Database.Repositories;
|
|
public class ChangeLogCommitRepository : IChangeLogCommitRepository
|
|
{
|
|
private DbContext db;
|
|
|
|
public ChangeLogCommitRepository()
|
|
{
|
|
|
|
}
|
|
public ChangeLogCommitRepository(DbContext db)
|
|
{
|
|
this.db = db;
|
|
}
|
|
|
|
private virtual async Task<Guid> Add(Guid idUser, string comment, CancellationToken token) {
|
|
|
|
var commit = new ChangeLogCommit()
|
|
{
|
|
Id = Uuid7.Guid(),
|
|
IdCommitAuthor = idUser,
|
|
Comment = comment,
|
|
Creation = DateTimeOffset.UtcNow
|
|
};
|
|
|
|
db.Add(commit);
|
|
|
|
await db.SaveChangesAsync();
|
|
return commit.Id;
|
|
|
|
}
|
|
|
|
public abstract Task<Guid> GetOrCreate(Guid idUser, string comment, CancellationToken token);
|
|
}
|