0.0.9 • Published 9 years ago

@anzuev/knowbase v0.0.9

Weekly downloads
-
License
ISC
Repository
github
Last release
9 years ago

KnowBase

BZ

<a name="module_BZ..BZ"></a>

BZ~BZ

Класс, представляющий собой прослойку между моделью Document и приложениями, использующими API модели

Kind: inner class of BZ

BZ.configure(config) ⇒ void

Настройка модуля

Kind: static method of BZ

ParamTypeDescription
confignconfконфигурация

BZ.getModel() ⇒ Mongoose.Model

Получение модели документов

Kind: static method of BZ

BZ~Document

Класс, представляющий сущность document

Kind: inner class of BZ
Properties

NameTypeDescription
titleStringНазвание
descriptionStringОписание
authorMongoose.Types.ObjectIdАвтор
createdDateДата создания
socialobjectОбъект соц информации
social.downloadsArray.<Mongoose.Types.ObjectId>кто скачал
social.watchesNumberколичество просмотров
social.likesArray.<Mongoose.Types.ObjectId>кому понравилось
social.dislikesArray.<Mongoose.Types.ObjectId>кому не понравилось
social.commentsArray.<Comment>массив комментариев
socila.ratingNumberрейтинг
partsArray.<Part>массив частей
enabledbooleanдоступен ли для поиска
toDeletebooleanнужно ли удалять документ
updatedDateдата обновления
searchobjectобъект с данными для поиска
search.universitiesArray.<Mongoose.Types.ObjectId>массив id универов, которым подходит данная работа
search.facultiesArray.<Mongoose.Types.ObjectId>массив id факультетов, которым подходит данная работа
search.yearArray.<number>массив курсов, которым подходит данная работа
search.subjectMongoose.Types.ObjectIdid предмета работы(Subject)
search.cTypeMongoose.Types.ObjectIdid типа работы(WorkType)

document.addPart(newPart) ⇒ void

Kind: instance method of Document
Throws:

  • ValidationError, code = 204 - часть с таким урлом уже есть

this: Document

ParamDescription
newPartновая часть

Properties

NameDescription
urlстрока, по которой можно скачать часть

document.isAllowToUpdate(userId) ⇒ boolean

Kind: instance method of Document

ParamTypeDescription
userIdMongoose.Types.ObjectIdid пользователя, который хочет менять что-либо

document.removePart(partId) ⇒ boolean

Kind: instance method of Document
Returns: boolean - ,true - все прошло хорошо
Throws:

  • ValidationError, code = 404 - часть с таким id не найдена
  • ValidationError, code = 400 - не передана partId

this: Document

ParamDescription
partIdid части для удаления

document.saveDoc() ⇒ Document

Kind: instance method of Document
Throws:

  • DbError , code = 500 - ошибка базы данных

Functiontype: generator

Document.formatToSearch(UAMS, WT, userId) ⇒ Object

Kind: static method of Document
Returns: Object -

{
     title: 'Первый документ',
        author: {
            username: 'Антон Зуев',
            id: 577aa958445338a73b232aff
        },
        likes: {
            liked: true,
            amount: 2
        },
        dislikes: {
            disliked: false,
            amount: 0
        },
        rating: 2,
        type: {
            id: 575195b2165f1e79574c71ff,
            title: 'Курсовая работа'
        },
        watches: 0,
        id: 56fe9c4ca960bcce0e74871f,
        description: "Описание документа"
   }

  // пример использования
    yield* res.formatToSearch(UAMS, RDS.getWorkTypeModel(), '56fe9c4ca960bcce0e74871f');
ParamDescription
UAMSобъект модуля UAMS
WTобъект модели worktype, (RDS.getWorkTypeModel());
userIdдля кого форматируется документ(нужен для проставки liked и disliked)

Document.getDocumentsBy(title, context, page) ⇒ Promise | Promise.<T>

Получение документов по названию и контексту

Kind: static method of Document

ParamTypeDescription
titleStringназвание
contextObjectконтекст
context.universityMongoose.Types.ObjectIdid университета
context.facultyMongoose.Types.ObjectIdid факультета
context.subjectMongoose.Types.ObjectIdid предмета
context.typeMongoose.Types.ObjectIdid типа
context.yearNumberкурс(номер)
pageсколько страниц пропустить

Example

<pre>
    Выход - массив из документов
    Перед отдачей пользователю нужно у каждого документа вызвать document.formatToSearch
   </pre>

Document.addLike(documentId, userId) ⇒ Boolean

Метод для добавления like к документу.

Kind: static method of Document
Returns: Boolean - result - true: лайк добавлен, false: лайк не добавлен(скорее всего уже был);
Throws:

  • DbError , code = 404 - Не найден документ по переданному id

Functiontype: generator

ParamTypeDescription
documentIdMongoose.Types.ObjectIdid документа
userIdMongoose.Types.ObjectIdid пользователя

Document.addDislike(documentId, userId) ⇒ Boolean

Метод для добавления dislike к документу.

Kind: static method of Document
Returns: Boolean - result - true: дизлайк добавлен, false: дизлайк не добавлен(скорее всего уже был);
Throws:

  • DbError , code = 404 - Не найден документ по переданному id

Functiontype: generator

ParamTypeDescription
documentIdMongoose.Types.ObjectIdid документа
userIdMongoose.Types.ObjectIdid пользователя

Document.addWatch(documentId) ⇒ Boolean

Метод для добавления просмотра к документу.

Kind: static method of Document
Returns: Boolean - result - true: просмотр добавлен, false: просмотр не добавлен(скорее всего уже был);
Throws:

  • DbError , code = 404 - Не найден документ по переданному id

Functiontype: generator

ParamTypeDescription
documentIdMongoose.Types.ObjectIdid документа

Document.addDownload(documentId, userId) ⇒ Boolean

Метод для добавления скачивания к документу.

Kind: static method of Document
Returns: Boolean - result - true: скачивание добавлено, false: скачивание не добавлено(скорее всего уже было);
Throws:

  • DbError , code = 404 - Не найден документ по переданному id

Functiontype: generator

ParamTypeDescription
documentIdMongoose.Types.ObjectIdid документа
userIdMongoose.Types.ObjectIdid пользователя

Document.addComment(documentId, comment) ⇒ Boolean

Метод для добавления комментария к документу.

Kind: static method of Document
Returns: Boolean - result - true: комментарий добавлен, false: что-то непонятное произошло
Throws:

  • DbError , code = 404 - Не найден документ по переданному id

Functiontype: generator

ParamTypeDescription
documentIdMongoose.Types.ObjectIdid документа
commentObjectобъект комментария
comment.textStringтекст комментария
comment.authorMongoose.Types.ObjectIdid автора

Document.getComments(documentId, date) ⇒ Promise

Метод для добавления комментария к документу.

Kind: static method of Document
Throws:

  • DbError , code = 404 - Не найден документ по переданному id
  • DbError , code = 500 - какая-то ошибка БД

Fulfill: Comment[] result - массив комментариев

ParamTypeDescription
documentIdMongoose.Types.ObjectIdid документа
dateDateвремя последнего комментария

BZ~validateContext(rawContext) ⇒ Object

Kind: inner method of BZ

Param
rawContext

BZ~Comment : object

Kind: inner typedef of BZ
Properties

NameTypeDescription
authorMongoose.Types.ObjectIdотправитель
createdDateдата создания
textStringтекст комментария
"_id"Mongoose.Types.ObjectIdid комментария

BZ~Part : object

Kind: inner typedef of BZ
Properties

NameTypeDescription
urlStringстрока для скачивания
serialNumberNumberпорядковый номер файла
_idMongoose.Types.ObjectIdидентификатор части
0.0.9

9 years ago

0.0.8

9 years ago

0.0.7

9 years ago

0.0.6

9 years ago

0.0.5

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.2

9 years ago

0.0.1

9 years ago