|
@@ -7,7 +7,7 @@ import { CategoryService } from './category.service';
|
|
|
import { SearchArticleFilter } from '../dto/search-article.filter';
|
|
import { SearchArticleFilter } from '../dto/search-article.filter';
|
|
|
import { BizException } from '../../core/exception/biz.exception';
|
|
import { BizException } from '../../core/exception/biz.exception';
|
|
|
import { ArticleError } from '../error/article.error';
|
|
import { ArticleError } from '../error/article.error';
|
|
|
-import { ArticleStatusEnum } from '../enum/article-status.enum';
|
|
|
|
|
|
|
+import { ArticleStatus } from '../enum/article.status';
|
|
|
|
|
|
|
|
@Injectable()
|
|
@Injectable()
|
|
|
export class ArticleService {
|
|
export class ArticleService {
|
|
@@ -29,6 +29,12 @@ export class ArticleService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
async search(searchArticleFilter: SearchArticleFilter) {
|
|
async search(searchArticleFilter: SearchArticleFilter) {
|
|
|
|
|
+ const conditions = searchArticleFilter.getConditions();
|
|
|
|
|
+ if (searchArticleFilter.categoryId) {
|
|
|
|
|
+ conditions.category = await this.categoryService.get(
|
|
|
|
|
+ searchArticleFilter.categoryId,
|
|
|
|
|
+ );
|
|
|
|
|
+ }
|
|
|
return this.articleRepository.findAndCount({
|
|
return this.articleRepository.findAndCount({
|
|
|
where: searchArticleFilter.getConditions(),
|
|
where: searchArticleFilter.getConditions(),
|
|
|
skip: searchArticleFilter.getSkip(),
|
|
skip: searchArticleFilter.getSkip(),
|
|
@@ -62,13 +68,13 @@ export class ArticleService {
|
|
|
|
|
|
|
|
async publish(id: string) {
|
|
async publish(id: string) {
|
|
|
const article = await this.get(id);
|
|
const article = await this.get(id);
|
|
|
- article.status = ArticleStatusEnum.PUBLISHED;
|
|
|
|
|
|
|
+ article.status = ArticleStatus.PUBLISHED;
|
|
|
return this.articleRepository.save(article);
|
|
return this.articleRepository.save(article);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
async close(id: string) {
|
|
async close(id: string) {
|
|
|
const article = await this.get(id);
|
|
const article = await this.get(id);
|
|
|
- article.status = ArticleStatusEnum.CLOSED;
|
|
|
|
|
|
|
+ article.status = ArticleStatus.CLOSED;
|
|
|
return this.articleRepository.save(article);
|
|
return this.articleRepository.save(article);
|
|
|
}
|
|
}
|
|
|
|
|
|