0.0.9 • Published 10 years ago

@anzuev/knowbase v0.0.9

Weekly downloads
-
License
ISC
Repository
github
Last release
10 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

10 years ago

0.0.8

10 years ago

0.0.7

10 years ago

0.0.6

10 years ago

0.0.5

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago