UNPKG

@ckstack/ck-lib-models

Version:

ckstack default database table sequelize models

165 lines (164 loc) 6.2 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Board = void 0; const sequelize_typescript_1 = require("sequelize-typescript"); const dk_lib_1 = require("@dkpkg/dk-lib"); const MyValues_1 = require("../MyValues"); const Category_1 = require("./Category"); const Document_1 = require("./Document"); const Comment_1 = require("./Comment"); const DocumentLink_1 = require("./DocumentLink"); const DocumentTag_1 = require("./DocumentTag"); const __autoFitString = (data, modelName) => { const _data = data; if (_data.name && dk_lib_1.CkUtils.getByteLength(_data.name) > 128) { _data.name = dk_lib_1.CkUtils.stringCutByByte(_data.name, 128); dk_lib_1.CkLogger.warnLog2(`${modelName}. name from [${data.name}] to [${_data.name}]`, MyValues_1.PROC_LHD.IP_LHD_HTTP); } }; let Board = class Board extends sequelize_typescript_1.Model { static autoFitString(data) { __autoFitString(data, 'Board'); } }; __decorate([ (0, sequelize_typescript_1.Column)({ field: 'id', type: sequelize_typescript_1.DataType.INTEGER({ scale: 11 }).UNSIGNED, primaryKey: true, autoIncrement: true, allowNull: false, unique: true, }), __metadata("design:type", Number) ], Board.prototype, "id", void 0); __decorate([ (0, sequelize_typescript_1.Index)({ name: 'idx_rid', unique: true }), (0, sequelize_typescript_1.Column)({ field: 'rid', type: sequelize_typescript_1.DataType.STRING(32), allowNull: false, unique: true, defaultValue: '', }), __metadata("design:type", String) ], Board.prototype, "rid", void 0); __decorate([ (0, sequelize_typescript_1.Index)({ name: 'idx_name', type: 'FULLTEXT' }), (0, sequelize_typescript_1.Column)({ field: 'name', type: sequelize_typescript_1.DataType.STRING(128), allowNull: false, defaultValue: '', }), __metadata("design:type", String) ], Board.prototype, "name", void 0); __decorate([ (0, sequelize_typescript_1.Column)({ field: 'status', type: sequelize_typescript_1.DataType.ENUM(dk_lib_1.CkValue.STATUS.ENABLE, dk_lib_1.CkValue.STATUS.DISABLE), allowNull: false, defaultValue: dk_lib_1.CkValue.STATUS.ENABLE, }), __metadata("design:type", Number) ], Board.prototype, "status", void 0); __decorate([ (0, sequelize_typescript_1.Column)({ field: 'description', type: sequelize_typescript_1.DataType.TEXT, defaultValue: '', }), __metadata("design:type", String) ], Board.prototype, "description", void 0); __decorate([ (0, sequelize_typescript_1.Index)('idx_list_order'), (0, sequelize_typescript_1.Column)({ field: 'list_order', type: sequelize_typescript_1.DataType.INTEGER({ scale: 11 }).UNSIGNED, allowNull: false, defaultValue: 0, }), __metadata("design:type", Number) ], Board.prototype, "list_order", void 0); __decorate([ (0, sequelize_typescript_1.Column)({ field: 'template_rid', type: sequelize_typescript_1.DataType.STRING(32), allowNull: false, defaultValue: '', }), __metadata("design:type", String) ], Board.prototype, "template_rid", void 0); __decorate([ (0, sequelize_typescript_1.Column)({ field: 'extra', type: sequelize_typescript_1.DataType.JSON, defaultValue: {}, }), __metadata("design:type", Object) ], Board.prototype, "extra", void 0); __decorate([ (0, sequelize_typescript_1.Column)({ field: 'c_date', type: sequelize_typescript_1.DataType.DATE, allowNull: false, defaultValue: new Date(), }), __metadata("design:type", Date) ], Board.prototype, "c_date", void 0); __decorate([ (0, sequelize_typescript_1.Column)({ field: 'u_date', type: sequelize_typescript_1.DataType.DATE, allowNull: true, defaultValue: new Date(), }), __metadata("design:type", Date) ], Board.prototype, "u_date", void 0); __decorate([ (0, sequelize_typescript_1.HasMany)(() => Category_1.Category), __metadata("design:type", Array) ], Board.prototype, "categories", void 0); __decorate([ (0, sequelize_typescript_1.HasMany)(() => Document_1.Document), __metadata("design:type", Array) ], Board.prototype, "documents", void 0); __decorate([ (0, sequelize_typescript_1.HasMany)(() => Comment_1.Comment), __metadata("design:type", Array) ], Board.prototype, "comments", void 0); __decorate([ (0, sequelize_typescript_1.HasMany)(() => DocumentLink_1.DocumentLink), __metadata("design:type", Array) ], Board.prototype, "documentLinks", void 0); __decorate([ (0, sequelize_typescript_1.HasMany)(() => DocumentTag_1.DocumentTag), __metadata("design:type", Array) ], Board.prototype, "documentTags", void 0); __decorate([ sequelize_typescript_1.BeforeCreate, sequelize_typescript_1.BeforeUpdate, sequelize_typescript_1.BeforeSave, sequelize_typescript_1.BeforeUpsert, __metadata("design:type", Function), __metadata("design:paramtypes", [Board]), __metadata("design:returntype", void 0) ], Board, "autoFitString", null); Board = __decorate([ (0, sequelize_typescript_1.Table)({ tableName: 'tbl_board', freezeTableName: true, underscored: true, timestamps: false, }) ], Board); exports.Board = Board;