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);
|
|||
|
}
|