Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
* @module ./services/blog-service
*/
import { Service } from 'typedi';
import { Repository } from 'typeorm';
import { OrmRepository } from 'typeorm-typedi-extensions';
import { BadRequestError, NotFoundError } from 'routing-controllers';
import { Blog } from '../entities/blog';
import { Article } from '../entities/article';
/**
* ブログサービスクラス。
*/
@Service()
export class BlogService {
/** ブログエンティティリポジトリ */
@OrmRepository(Blog)
private blogRepository: Repository;
/** ブログ記事エンティティリポジトリ */
@OrmRepository(Article)
private articleRepository: Repository<article>;
/**
* ブログ一覧を取得する。
* @param skip 検索開始位置。未指定時は0。
* @param take 検索件数。未指定時は制限なし。
* @returns ブログ一覧。
*/
async findAndCount(skip: number = 0, take: number = Number.MAX_SAFE_INTEGER): Promise<[Blog[], number]> {
return this.blogRepository.findAndCount({ skip, take });
}
/**</article>
constructor(
@OrmRepository() private userRepository: UserRepository
) {}
import { Article } from '../entities/article';
import { Tag } from '../entities/tag';
/**
* ブログ記事サービスクラス。
*/
@Service()
export class ArticleService {
/** ブログエンティティリポジトリ */
@OrmRepository(Blog)
private blogRepository: Repository;
/** ブログ記事エンティティリポジトリ */
@OrmRepository(Article)
private articleRepository: Repository<article>;
/** タグエンティティリポジトリ */
@OrmRepository(Tag)
private tagRepository: Repository;
/**
* ブログ記事一覧を取得する。
* @param skip 検索開始位置。未指定時は0。
* @param take 検索件数。未指定時は制限なし。
* @param blogId ブログIDで絞り込む場合そのID。
* @param tag タグで絞り込む場合そのタグ。
* @returns ブログ記事一覧。
*/
async findAndCount(skip: number = 0, take: number = Number.MAX_SAFE_INTEGER, blogId: number = null, tag: string = null): Promise<[Article[], number]> {
const where = {};
if (blogId) {
where['blog'] = { id: blogId };
}
if (tag) {</article>
import { OrmRepository } from 'typeorm-typedi-extensions';
import { BadRequestError, NotFoundError } from 'routing-controllers';
import { Blog } from '../entities/blog';
import { Article } from '../entities/article';
import { Tag } from '../entities/tag';
/**
* ブログ記事サービスクラス。
*/
@Service()
export class ArticleService {
/** ブログエンティティリポジトリ */
@OrmRepository(Blog)
private blogRepository: Repository;
/** ブログ記事エンティティリポジトリ */
@OrmRepository(Article)
private articleRepository: Repository<article>;
/** タグエンティティリポジトリ */
@OrmRepository(Tag)
private tagRepository: Repository;
/**
* ブログ記事一覧を取得する。
* @param skip 検索開始位置。未指定時は0。
* @param take 検索件数。未指定時は制限なし。
* @param blogId ブログIDで絞り込む場合そのID。
* @param tag タグで絞り込む場合そのタグ。
* @returns ブログ記事一覧。
*/
async findAndCount(skip: number = 0, take: number = Number.MAX_SAFE_INTEGER, blogId: number = null, tag: string = null): Promise<[Article[], number]> {
const where = {};
if (blogId) {</article>
constructor(
@OrmRepository() private userRepository: UserRepository,
@OrmRepository() private roleRepository: RoleRepository,
private bcryptService: BcryptService
) {}
public constructor(
@OrmRepository() private userRepository: UserRepository,
private bcryptService: BcryptService,
private jwtService: JWTService
) {}
constructor(
@OrmRepository() private userRepository: UserRepository,
@EventDispatcher() private eventDispatcher: EventDispatcherInterface,
@Logger(__filename) private log: LoggerInterface
) { }
public constructor(
@OrmRepository() private userRepository: UserRepository
) {}
*/
import { Service } from 'typedi';
import { Repository } from 'typeorm';
import { OrmRepository } from 'typeorm-typedi-extensions';
import { BadRequestError, NotFoundError } from 'routing-controllers';
import { Blog } from '../entities/blog';
import { Article } from '../entities/article';
import { Tag } from '../entities/tag';
/**
* ブログ記事サービスクラス。
*/
@Service()
export class ArticleService {
/** ブログエンティティリポジトリ */
@OrmRepository(Blog)
private blogRepository: Repository;
/** ブログ記事エンティティリポジトリ */
@OrmRepository(Article)
private articleRepository: Repository<article>;
/** タグエンティティリポジトリ */
@OrmRepository(Tag)
private tagRepository: Repository;
/**
* ブログ記事一覧を取得する。
* @param skip 検索開始位置。未指定時は0。
* @param take 検索件数。未指定時は制限なし。
* @param blogId ブログIDで絞り込む場合そのID。
* @param tag タグで絞り込む場合そのタグ。
* @returns ブログ記事一覧。
*/</article>
constructor(
@OrmRepository() private userRepository: UserRepository,
@OrmRepository() private roleMappingRepository: RoleMappingRepository,
@OrmRepository() private roleRepository: RoleRepository,
private bcryptService: BcryptService
) {}