apps/recallassess/recallassess-api/src/api/admin/assessment/config/assessment-config.service.ts
ModuleConfigBase
Methods |
| getConfiguration |
getConfiguration()
|
|
Returns :
ModuleConfig
|
import { ColumnConfig, ColumnType } from "@bish-nest/core/app-config/column-config.class";
import { ModuleConfig } from "@bish-nest/core/app-config/module-config.class";
import { ModuleConfigBase } from "@bish-nest/core/app-config/module-config-base.class";
import { Injectable } from "@nestjs/common";
import { AssessmentAddDto } from "../dto/assessment-add.dto";
import { AssessmentDetailDto } from "../dto/assessment-detail.dto";
import { AssessmentListDto } from "../dto/assessment-list.dto";
import { AssessmentSaveDto } from "../dto/assessment-save.dto";
@Injectable()
export class AssessmentConfig extends ModuleConfigBase {
getConfiguration(): ModuleConfig {
const columns: ColumnConfig[] = [
new ColumnConfig({ name: "id", type: ColumnType.Integer }),
new ColumnConfig({ name: "course_title", relationPath: "course.title" }),
new ColumnConfig({ name: "course.title" }),
new ColumnConfig({ name: "course.course_code" }),
new ColumnConfig({ name: "course_id", type: ColumnType.Integer }),
new ColumnConfig({ name: "title" }),
new ColumnConfig({ name: "description" }),
new ColumnConfig({ name: "is_published", type: ColumnType.Boolean }),
new ColumnConfig({ name: "created_at", type: ColumnType.DateTime }),
new ColumnConfig({ name: "updated_at", type: ColumnType.DateTime }),
];
const keywordSearchCols: string[] = ["id", "title", "description", "course.title", "course.course_code", "created_at"];
return new ModuleConfig({
name: "assessment",
columns,
keywordSearchCols,
relationObjToIncludeForList: {
course: true,
},
relationObjToIncludeForDetail: {
course: true,
userCreatedBy: true,
userUpdatedBy: true,
},
listDto: AssessmentListDto,
detailDto: AssessmentDetailDto,
addDto: AssessmentAddDto,
saveDto: AssessmentSaveDto,
});
}
}