fixed query
This commit is contained in:
parent
1d3534ab46
commit
4e95a973e0
@ -142,7 +142,7 @@ internal class FileDao : AbstractDao, IFileDao<int>
|
||||
{
|
||||
await using var filesDbContext = _dbContextFactory.CreateDbContext();
|
||||
|
||||
var dbFile = await Queries.DbFileQueryByFileVersionAsync(filesDbContext, TenantID, fileId, fileVersion);
|
||||
var dbFile = await Queries.DbFileQueryFileStableAsync(filesDbContext, TenantID, fileId, fileVersion);
|
||||
|
||||
return _mapper.Map<DbFileQuery, File<int>>(dbFile);
|
||||
}
|
||||
@ -941,11 +941,6 @@ internal class FileDao : AbstractDao, IFileDao<int>
|
||||
comment ??= string.Empty;
|
||||
comment = comment.Substring(0, Math.Min(comment.Length, 255));
|
||||
|
||||
await Query(filesDbContext.Files)
|
||||
.Where(r => r.Id == fileId)
|
||||
.Where(r => r.Version == fileVersion)
|
||||
.ExecuteUpdateAsync(f => f.SetProperty(p => p.Comment, comment));
|
||||
|
||||
await Queries.UpdateDbFilesCommentAsync(filesDbContext, TenantID, fileId, fileVersion, comment);
|
||||
|
||||
return comment;
|
||||
@ -1597,6 +1592,31 @@ static file class Queries
|
||||
})
|
||||
.SingleOrDefault());
|
||||
|
||||
public static readonly Func<FilesDbContext, int, int, int, Task<DbFileQuery>> DbFileQueryFileStableAsync =
|
||||
Microsoft.EntityFrameworkCore.EF.CompileAsyncQuery(
|
||||
(FilesDbContext ctx, int tenantId, int fileId, int fileVersion) =>
|
||||
ctx.Files
|
||||
.Where(r => r.TenantId == tenantId)
|
||||
.Where(r => r.Id == fileId && r.Forcesave == ForcesaveType.None)
|
||||
.Where(r => fileVersion < 0 || r.Version <= fileVersion)
|
||||
.OrderByDescending(r => r.Version)
|
||||
.AsNoTracking()
|
||||
.Select(r => new DbFileQuery
|
||||
{
|
||||
File = r,
|
||||
Root = (from f in ctx.Folders
|
||||
where f.Id ==
|
||||
(from t in ctx.Tree
|
||||
where t.FolderId == r.ParentId
|
||||
orderby t.Level descending
|
||||
select t.ParentId
|
||||
).FirstOrDefault()
|
||||
where f.TenantId == r.TenantId
|
||||
select f
|
||||
).FirstOrDefault()
|
||||
})
|
||||
.FirstOrDefault());
|
||||
|
||||
public static readonly Func<FilesDbContext, int, string, int, Task<DbFileQuery>> DbFileQueryByTitleAsync =
|
||||
Microsoft.EntityFrameworkCore.EF.CompileAsyncQuery(
|
||||
(FilesDbContext ctx, int tenantId, string title, int parentId) =>
|
||||
@ -1904,7 +1924,7 @@ static file class Queries
|
||||
.Where(r => r.TenantId == tenantId)
|
||||
.Where(r => r.Id == fileId)
|
||||
.Where(r => r.Forcesave == ForcesaveType.None)
|
||||
.Where(r => version > 0 && r.Version == version)
|
||||
.Where(r => version <= 0 || r.Version == version)
|
||||
.OrderBy(r => r.Version)
|
||||
.AsQueryable());
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user