|
|
@ -2,6 +2,7 @@ |
|
|
using System.Collections.Generic; |
|
|
using System.Collections.Generic; |
|
|
using System.Linq; |
|
|
using System.Linq; |
|
|
using System.Linq.Dynamic.Core; |
|
|
using System.Linq.Dynamic.Core; |
|
|
|
|
|
using System.Threading; |
|
|
using System.Threading.Tasks; |
|
|
using System.Threading.Tasks; |
|
|
using Microsoft.EntityFrameworkCore; |
|
|
using Microsoft.EntityFrameworkCore; |
|
|
using Volo.Abp.Domain.Entities; |
|
|
using Volo.Abp.Domain.Entities; |
|
|
@ -18,20 +19,20 @@ namespace Volo.Docs.Projects |
|
|
{ |
|
|
{ |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public async Task<List<Project>> GetListAsync(string sorting, int maxResultCount, int skipCount) |
|
|
public async Task<List<Project>> GetListAsync(string sorting, int maxResultCount, int skipCount, CancellationToken cancellationToken = default) |
|
|
{ |
|
|
{ |
|
|
var projects = await (await GetDbSetAsync()).OrderBy(sorting ?? "Id desc") |
|
|
var projects = await (await GetDbSetAsync()).OrderBy(sorting ?? "Id desc") |
|
|
.PageBy(skipCount, maxResultCount) |
|
|
.PageBy(skipCount, maxResultCount) |
|
|
.ToListAsync(); |
|
|
.ToListAsync(GetCancellationToken(cancellationToken)); |
|
|
|
|
|
|
|
|
return projects; |
|
|
return projects; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public async Task<Project> GetByShortNameAsync(string shortName) |
|
|
public async Task<Project> GetByShortNameAsync(string shortName, CancellationToken cancellationToken = default) |
|
|
{ |
|
|
{ |
|
|
var normalizeShortName = NormalizeShortName(shortName); |
|
|
var normalizeShortName = NormalizeShortName(shortName); |
|
|
|
|
|
|
|
|
var project = await (await GetDbSetAsync()).FirstOrDefaultAsync(p => p.ShortName == normalizeShortName); |
|
|
var project = await (await GetDbSetAsync()).FirstOrDefaultAsync(p => p.ShortName == normalizeShortName, GetCancellationToken(cancellationToken)); |
|
|
|
|
|
|
|
|
if (project == null) |
|
|
if (project == null) |
|
|
{ |
|
|
{ |
|
|
@ -41,11 +42,11 @@ namespace Volo.Docs.Projects |
|
|
return project; |
|
|
return project; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public async Task<bool> ShortNameExistsAsync(string shortName) |
|
|
public async Task<bool> ShortNameExistsAsync(string shortName, CancellationToken cancellationToken = default) |
|
|
{ |
|
|
{ |
|
|
var normalizeShortName = NormalizeShortName(shortName); |
|
|
var normalizeShortName = NormalizeShortName(shortName); |
|
|
|
|
|
|
|
|
return await (await GetDbSetAsync()).AnyAsync(x => x.ShortName == normalizeShortName); |
|
|
return await (await GetDbSetAsync()).AnyAsync(x => x.ShortName == normalizeShortName, GetCancellationToken(cancellationToken)); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private string NormalizeShortName(string shortName) |
|
|
private string NormalizeShortName(string shortName) |
|
|
|