Files
energy_dist/dist/model/red_packet.model.js
T
2026-04-21 22:34:39 +08:00

189 lines
7.4 KiB
JavaScript

"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.RedPacketModel = exports.RedPacketType = exports.RedPacketStatus = void 0;
const openapi = require("@nestjs/swagger");
const typeorm_1 = require("typeorm");
const _base_model_1 = require("./_base_model");
const swagger_1 = require("@nestjs/swagger");
const class_validator_1 = require("class-validator");
const user_model_1 = require("./user.model");
const is_enum_mumber_string_1 = require("../app/common/decorator/is_enum_mumber_string");
const api_optional_decorator_1 = require("../app/common/decorator/api_optional.decorator");
var RedPacketStatus;
(function (RedPacketStatus) {
RedPacketStatus[RedPacketStatus["Unclaimed"] = 1] = "Unclaimed";
RedPacketStatus[RedPacketStatus["Claiming"] = 2] = "Claiming";
RedPacketStatus[RedPacketStatus["Claimed"] = 3] = "Claimed";
RedPacketStatus[RedPacketStatus["Expire"] = 4] = "Expire";
})(RedPacketStatus || (exports.RedPacketStatus = RedPacketStatus = {}));
var RedPacketType;
(function (RedPacketType) {
RedPacketType[RedPacketType["Ordinary"] = 1] = "Ordinary";
RedPacketType[RedPacketType["Luck"] = 2] = "Luck";
})(RedPacketType || (exports.RedPacketType = RedPacketType = {}));
let RedPacketModel = class RedPacketModel extends _base_model_1.BaseModel {
totalAmount;
totalCount;
remainingAmount;
remainingCount;
userId;
claimedUserId;
status;
groupId;
type;
createdAt;
expireTime;
user;
static _OPENAPI_METADATA_FACTORY() {
return { totalAmount: { required: true, type: () => Number }, totalCount: { required: true, type: () => Number }, remainingAmount: { required: true, type: () => Number }, remainingCount: { required: true, type: () => Number }, userId: { required: true, type: () => Number }, claimedUserId: { required: false, type: () => Number }, status: { required: true, enum: require("./red_packet.model").RedPacketStatus }, groupId: { required: false, type: () => String }, type: { required: true, enum: require("./red_packet.model").RedPacketType }, createdAt: { required: true, type: () => Number }, expireTime: { required: true, type: () => Number }, user: { required: false, type: () => require("./user.model").UserModel } };
}
};
exports.RedPacketModel = RedPacketModel;
__decorate([
(0, swagger_1.ApiProperty)({ description: '总金额(单位:分)' }),
(0, class_validator_1.IsInt)(),
(0, typeorm_1.Column)({
type: 'int',
unsigned: true,
comment: ' 总金额(单位:分)',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "totalAmount", void 0);
__decorate([
(0, swagger_1.ApiProperty)({ description: '总数量' }),
(0, class_validator_1.IsInt)(),
(0, typeorm_1.Column)({
type: 'int',
unsigned: true,
comment: ' 总数量',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "totalCount", void 0);
__decorate([
(0, swagger_1.ApiProperty)({ description: '剩余金额(单位:分)' }),
(0, class_validator_1.IsInt)(),
(0, typeorm_1.Column)({
type: 'int',
unsigned: true,
comment: ' 剩余金额(单位:分)',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "remainingAmount", void 0);
__decorate([
(0, swagger_1.ApiProperty)({ description: '剩余数量' }),
(0, class_validator_1.IsInt)(),
(0, typeorm_1.Column)({
type: 'int',
unsigned: true,
comment: ' 剩余数量',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "remainingCount", void 0);
__decorate([
(0, swagger_1.ApiProperty)({ description: '用户ID' }),
(0, class_validator_1.IsInt)(),
(0, typeorm_1.Column)({
type: 'int',
unsigned: true,
comment: ' 用户ID',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "userId", void 0);
__decorate([
(0, api_optional_decorator_1.ApiOptional)({ description: '可以领取的用户ID' }),
(0, class_validator_1.IsInt)(),
(0, typeorm_1.Column)({
type: 'int',
unsigned: true,
default: 0,
comment: '可以领取的用户ID',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "claimedUserId", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)(),
(0, is_enum_mumber_string_1.IsEnumNumberString)(RedPacketStatus),
(0, swagger_1.ApiProperty)({
description: '领取状态',
enum: RedPacketStatus,
}),
(0, typeorm_1.Column)({
type: 'tinyint',
comment: ' 领取状态',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "status", void 0);
__decorate([
(0, api_optional_decorator_1.ApiOptional)({
description: '群ID',
nullable: true,
}),
(0, class_validator_1.IsString)(),
(0, typeorm_1.Column)({
type: 'varchar',
comment: '群ID',
nullable: true,
}),
__metadata("design:type", String)
], RedPacketModel.prototype, "groupId", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)(),
(0, is_enum_mumber_string_1.IsEnumNumberString)(RedPacketType),
(0, swagger_1.ApiProperty)({
description: '红包类型',
enum: RedPacketType,
}),
(0, typeorm_1.Column)({
type: 'tinyint',
comment: '红包类型',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "type", void 0);
__decorate([
(0, swagger_1.ApiProperty)({ description: '创建时间' }),
(0, class_validator_1.IsInt)(),
(0, typeorm_1.Column)({
type: 'int',
unsigned: true,
comment: ' 创建时间',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "createdAt", void 0);
__decorate([
(0, swagger_1.ApiProperty)({ description: '过期时间' }),
(0, class_validator_1.IsInt)(),
(0, typeorm_1.Column)({
type: 'int',
unsigned: true,
comment: ' 过期时间',
}),
__metadata("design:type", Number)
], RedPacketModel.prototype, "expireTime", void 0);
__decorate([
(0, swagger_1.ApiPropertyOptional)({
description: '用户',
type: user_model_1.UserModel,
nullable: true,
}),
(0, typeorm_1.ManyToOne)(() => user_model_1.UserModel, (_) => _.redPackets, {
createForeignKeyConstraints: false,
}),
(0, typeorm_1.JoinColumn)(),
__metadata("design:type", user_model_1.UserModel)
], RedPacketModel.prototype, "user", void 0);
exports.RedPacketModel = RedPacketModel = __decorate([
(0, typeorm_1.Entity)({
comment: '红包表',
name: 'im_red_packet',
})
], RedPacketModel);
//# sourceMappingURL=red_packet.model.js.map