434 lines
18 KiB
JavaScript
434 lines
18 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);
|
||
};
|
||
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
||
return function (target, key) { decorator(target, key, paramIndex); }
|
||
};
|
||
Object.defineProperty(exports, "__esModule", { value: true });
|
||
exports.GeneratedApp_versionController = void 0;
|
||
const openapi = require("@nestjs/swagger");
|
||
const common_1 = require("@nestjs/common");
|
||
const swagger_1 = require("@nestjs/swagger");
|
||
const api_1 = require("../../app/common/api");
|
||
const typeorm_1 = require("@nestjs/typeorm");
|
||
const typeorm_2 = require("typeorm");
|
||
const api_optional_decorator_1 = require("../../app/common/decorator/api_optional.decorator");
|
||
const class_validator_1 = require("class-validator");
|
||
const order_by_enum_1 = require("../../app/common/enum/order_by.enum");
|
||
const expression_enum_1 = require("../../app/common/enum/expression.enum");
|
||
const class_transformer_1 = require("class-transformer");
|
||
const app_version_model_1 = require("../../model/app_version.model");
|
||
const ExtraExp = {
|
||
eq: (k, v) => {
|
||
return (0, typeorm_2.Equal)(v);
|
||
},
|
||
neq: (k, v) => {
|
||
return (0, typeorm_2.Not)(v);
|
||
},
|
||
gt: (k, v) => {
|
||
return (0, typeorm_2.MoreThan)(v);
|
||
},
|
||
egt: (k, v) => {
|
||
return (0, typeorm_2.MoreThanOrEqual)(v);
|
||
},
|
||
lt: (k, v) => {
|
||
return (0, typeorm_2.LessThan)(v);
|
||
},
|
||
elt: (k, v) => {
|
||
return (0, typeorm_2.LessThanOrEqual)(v);
|
||
},
|
||
between: (k, v) => {
|
||
const p = Array.isArray(v) ? v : `${v}`.split(',');
|
||
if (p.length < 2) {
|
||
return undefined;
|
||
}
|
||
if (typeof p[1] == 'undefined') {
|
||
throw new common_1.BadRequestException({
|
||
message: k + '字段,between查询参数错误需要用逗号分割',
|
||
});
|
||
}
|
||
return (0, typeorm_2.Between)(p[0], p[1]);
|
||
},
|
||
'not between': (k, v) => {
|
||
const p = Array.isArray(v) ? v : `${v}`.split(',');
|
||
if (p.length < 2) {
|
||
return undefined;
|
||
}
|
||
if (typeof p[1] == 'undefined') {
|
||
throw new common_1.BadRequestException({
|
||
message: k + '字段,between查询参数错误需要用逗号分割',
|
||
});
|
||
}
|
||
return (0, typeorm_2.Not)((0, typeorm_2.Between)(p[0], p[1]));
|
||
},
|
||
in: (k, v) => {
|
||
if (!Array.isArray(v)) {
|
||
v = `${v}`.split(',');
|
||
}
|
||
return (0, typeorm_2.In)(v);
|
||
},
|
||
'not in': (k, v) => {
|
||
if (!Array.isArray(v)) {
|
||
v = `${v}`.split(',');
|
||
}
|
||
return (0, typeorm_2.Not)((0, typeorm_2.In)(v));
|
||
},
|
||
like: (k, v) => {
|
||
return (0, typeorm_2.Like)(`%${v}%`);
|
||
},
|
||
slike: (k, v) => {
|
||
return (0, typeorm_2.Like)(`${v}%`);
|
||
},
|
||
elike: (k, v) => {
|
||
return (0, typeorm_2.Like)(`${v}%`);
|
||
},
|
||
};
|
||
class GeneratedApp_versionFindOrderDto {
|
||
id;
|
||
createTime;
|
||
updateTime;
|
||
deleteTime;
|
||
title;
|
||
latestVersion;
|
||
systemType;
|
||
downloadUrl;
|
||
}
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: 'ID', enum: order_by_enum_1.OrderBy }),
|
||
(0, class_validator_1.IsEnum)(order_by_enum_1.OrderBy),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindOrderDto.prototype, "id", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '创建时间', enum: order_by_enum_1.OrderBy }),
|
||
(0, class_validator_1.IsEnum)(order_by_enum_1.OrderBy),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindOrderDto.prototype, "createTime", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '更新时间', enum: order_by_enum_1.OrderBy }),
|
||
(0, class_validator_1.IsEnum)(order_by_enum_1.OrderBy),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindOrderDto.prototype, "updateTime", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '删除时间', enum: order_by_enum_1.OrderBy }),
|
||
(0, class_validator_1.IsEnum)(order_by_enum_1.OrderBy),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindOrderDto.prototype, "deleteTime", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '标题', enum: order_by_enum_1.OrderBy }),
|
||
(0, class_validator_1.IsEnum)(order_by_enum_1.OrderBy),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindOrderDto.prototype, "title", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '最新版本号', enum: order_by_enum_1.OrderBy }),
|
||
(0, class_validator_1.IsEnum)(order_by_enum_1.OrderBy),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindOrderDto.prototype, "latestVersion", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '系统类型:1=Android,2=iOS', enum: order_by_enum_1.OrderBy }),
|
||
(0, class_validator_1.IsEnum)(order_by_enum_1.OrderBy),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindOrderDto.prototype, "systemType", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '下载链接', enum: order_by_enum_1.OrderBy }),
|
||
(0, class_validator_1.IsEnum)(order_by_enum_1.OrderBy),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindOrderDto.prototype, "downloadUrl", void 0);
|
||
class GeneratedApp_versionFindRelationDto {
|
||
}
|
||
class GeneratedApp_versionFindExpressionDto {
|
||
id;
|
||
createTime;
|
||
updateTime;
|
||
deleteTime;
|
||
title;
|
||
latestVersion;
|
||
systemType;
|
||
downloadUrl;
|
||
}
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: 'ID', enum: expression_enum_1.Expression }),
|
||
(0, class_validator_1.IsEnum)(expression_enum_1.Expression),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindExpressionDto.prototype, "id", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '创建时间', enum: expression_enum_1.Expression }),
|
||
(0, class_validator_1.IsEnum)(expression_enum_1.Expression),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindExpressionDto.prototype, "createTime", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '更新时间', enum: expression_enum_1.Expression }),
|
||
(0, class_validator_1.IsEnum)(expression_enum_1.Expression),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindExpressionDto.prototype, "updateTime", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '删除时间', enum: expression_enum_1.Expression }),
|
||
(0, class_validator_1.IsEnum)(expression_enum_1.Expression),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindExpressionDto.prototype, "deleteTime", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '标题', enum: expression_enum_1.Expression }),
|
||
(0, class_validator_1.IsEnum)(expression_enum_1.Expression),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindExpressionDto.prototype, "title", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '最新版本号', enum: expression_enum_1.Expression }),
|
||
(0, class_validator_1.IsEnum)(expression_enum_1.Expression),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindExpressionDto.prototype, "latestVersion", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '系统类型:1=Android,2=iOS', enum: expression_enum_1.Expression }),
|
||
(0, class_validator_1.IsEnum)(expression_enum_1.Expression),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindExpressionDto.prototype, "systemType", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({ description: '下载链接', enum: expression_enum_1.Expression }),
|
||
(0, class_validator_1.IsEnum)(expression_enum_1.Expression),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindExpressionDto.prototype, "downloadUrl", void 0);
|
||
class GeneratedApp_versionFindExtraDto {
|
||
expression;
|
||
order;
|
||
relations;
|
||
}
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({
|
||
description: '查询表达式',
|
||
example: { "id": "gt" },
|
||
type: GeneratedApp_versionFindExpressionDto
|
||
}),
|
||
(0, class_transformer_1.Type)(() => GeneratedApp_versionFindExpressionDto),
|
||
(0, class_validator_1.ValidateNested)(),
|
||
__metadata("design:type", GeneratedApp_versionFindExpressionDto)
|
||
], GeneratedApp_versionFindExtraDto.prototype, "expression", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({
|
||
description: '指定字段排序',
|
||
example: { "id": "desc" },
|
||
type: [GeneratedApp_versionFindOrderDto],
|
||
}),
|
||
(0, class_validator_1.IsArray)(),
|
||
(0, class_transformer_1.Type)(() => GeneratedApp_versionFindOrderDto),
|
||
(0, class_validator_1.ValidateNested)({ each: true }),
|
||
__metadata("design:type", Array)
|
||
], GeneratedApp_versionFindExtraDto.prototype, "order", void 0);
|
||
__decorate([
|
||
(0, api_optional_decorator_1.ApiOptional)({
|
||
description: '查询关联数据',
|
||
type: GeneratedApp_versionFindRelationDto,
|
||
}),
|
||
(0, class_transformer_1.Type)(() => GeneratedApp_versionFindRelationDto),
|
||
(0, class_validator_1.ValidateNested)(),
|
||
__metadata("design:type", GeneratedApp_versionFindRelationDto)
|
||
], GeneratedApp_versionFindExtraDto.prototype, "relations", void 0);
|
||
class GeneratedApp_versionFindWhereDto {
|
||
id;
|
||
createTime;
|
||
updateTime;
|
||
deleteTime;
|
||
title;
|
||
latestVersion;
|
||
systemType;
|
||
downloadUrl;
|
||
}
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: 'ID' }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", Number)
|
||
], GeneratedApp_versionFindWhereDto.prototype, "id", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '创建时间' }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindWhereDto.prototype, "createTime", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '更新时间' }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindWhereDto.prototype, "updateTime", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '删除时间' }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindWhereDto.prototype, "deleteTime", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '标题' }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindWhereDto.prototype, "title", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '最新版本号' }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindWhereDto.prototype, "latestVersion", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '系统类型:1=Android,2=iOS' }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", Number)
|
||
], GeneratedApp_versionFindWhereDto.prototype, "systemType", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '下载链接' }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", String)
|
||
], GeneratedApp_versionFindWhereDto.prototype, "downloadUrl", void 0);
|
||
class GeneratedApp_versionFindDto {
|
||
paginated;
|
||
where;
|
||
extra;
|
||
}
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '分页', type: api_1.PaginatedDto }),
|
||
(0, class_transformer_1.Type)(() => api_1.PaginatedDto),
|
||
(0, class_validator_1.ValidateNested)(),
|
||
__metadata("design:type", api_1.PaginatedDto)
|
||
], GeneratedApp_versionFindDto.prototype, "paginated", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '查询条件', type: GeneratedApp_versionFindWhereDto }),
|
||
(0, class_transformer_1.Type)(() => GeneratedApp_versionFindWhereDto),
|
||
(0, class_validator_1.ValidateNested)(),
|
||
__metadata("design:type", GeneratedApp_versionFindWhereDto)
|
||
], GeneratedApp_versionFindDto.prototype, "where", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '额外', type: GeneratedApp_versionFindExtraDto }),
|
||
(0, class_transformer_1.Type)(() => GeneratedApp_versionFindExtraDto),
|
||
(0, class_validator_1.ValidateNested)(),
|
||
__metadata("design:type", GeneratedApp_versionFindExtraDto)
|
||
], GeneratedApp_versionFindDto.prototype, "extra", void 0);
|
||
class GeneratedApp_versionCreateDto extends (0, swagger_1.OmitType)(app_version_model_1.AppVersionModel, [
|
||
'id',
|
||
'createTime',
|
||
'updateTime',
|
||
'deleteTime',
|
||
]) {
|
||
}
|
||
class GeneratedApp_versionUpdateDto extends (0, swagger_1.PartialType)(GeneratedApp_versionCreateDto) {
|
||
}
|
||
class GeneratedApp_versionDetailWhereDto extends (0, swagger_1.PartialType)((0, swagger_1.OmitType)(GeneratedApp_versionFindWhereDto, ['id'])) {
|
||
}
|
||
class GeneratedApp_versionDetailDto {
|
||
where;
|
||
extra;
|
||
}
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '查询条件', type: GeneratedApp_versionDetailWhereDto }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", GeneratedApp_versionDetailWhereDto)
|
||
], GeneratedApp_versionDetailDto.prototype, "where", void 0);
|
||
__decorate([
|
||
(0, swagger_1.ApiPropertyOptional)({ description: '额外', type: GeneratedApp_versionFindExtraDto }),
|
||
(0, class_validator_1.Allow)(),
|
||
__metadata("design:type", GeneratedApp_versionFindExtraDto)
|
||
], GeneratedApp_versionDetailDto.prototype, "extra", void 0);
|
||
const identity = 'userId';
|
||
const identityExist = false;
|
||
let GeneratedApp_versionController = class GeneratedApp_versionController {
|
||
repos;
|
||
constructor(repos) {
|
||
this.repos = repos;
|
||
}
|
||
async list(dto) {
|
||
const page = dto.paginated?.page || 1;
|
||
const size = dto.paginated?.size || 15;
|
||
const skip = (page - 1) * size;
|
||
let where;
|
||
if (dto.extra?.expression && dto.where) {
|
||
where = Object.fromEntries(Object.entries(dto.where).map(([key, value]) => {
|
||
const expression = dto.extra?.expression[key];
|
||
if (typeof value != 'undefined' && value != '' && value != null) {
|
||
if (expression && ExtraExp[expression]) {
|
||
value = ExtraExp[expression](key, value);
|
||
}
|
||
}
|
||
if (expression == expression_enum_1.Expression.between &&
|
||
(!value || (Array.isArray(value) && value.length < 2))) {
|
||
value = undefined;
|
||
}
|
||
return [key, value];
|
||
}));
|
||
}
|
||
else {
|
||
where = (dto.where || {});
|
||
}
|
||
where = Object.fromEntries(Object.entries(where).filter(([_, v]) => {
|
||
if (typeof v == 'undefined') {
|
||
return false;
|
||
}
|
||
if (typeof v == 'string' && !v) {
|
||
return false;
|
||
}
|
||
return true;
|
||
}));
|
||
const o = dto.extra?.order && dto.extra?.order.length
|
||
? dto.extra?.order
|
||
: [{ id: 'desc' }];
|
||
const order = Object.fromEntries(o.map((it) => Object.keys(it).map((key) => [key, it[key]]))[0]);
|
||
const list = await this.repos.find({
|
||
where,
|
||
order,
|
||
skip: skip,
|
||
take: size,
|
||
relations: typeof dto.extra?.relations == 'object'
|
||
? Object.keys(dto.extra?.relations).filter((it) => dto.extra?.relations[it])
|
||
: [],
|
||
});
|
||
const count = await this.repos.count({
|
||
where: where,
|
||
});
|
||
return api_1.Api.pagination(list, count);
|
||
}
|
||
async detail(id, dto) {
|
||
const where = {
|
||
id,
|
||
...dto.where,
|
||
};
|
||
const item = await this.repos.findOne({
|
||
where,
|
||
relations: typeof dto.extra?.relations == 'object'
|
||
? Object.keys(dto.extra?.relations).filter((it) => dto.extra?.relations[it])
|
||
: [],
|
||
});
|
||
return api_1.Api.success(item);
|
||
}
|
||
};
|
||
exports.GeneratedApp_versionController = GeneratedApp_versionController;
|
||
__decorate([
|
||
(0, common_1.Post)('list'),
|
||
(0, swagger_1.ApiOperation)({ summary: 'App 版本列表' }),
|
||
api_1.Api.ApiPaginatedResponse({
|
||
model: app_version_model_1.AppVersionModel,
|
||
codeDescription: '200成功',
|
||
}),
|
||
openapi.ApiResponse({ status: 201 }),
|
||
__param(0, (0, common_1.Body)()),
|
||
__metadata("design:type", Function),
|
||
__metadata("design:paramtypes", [GeneratedApp_versionFindDto]),
|
||
__metadata("design:returntype", Promise)
|
||
], GeneratedApp_versionController.prototype, "list", null);
|
||
__decorate([
|
||
(0, common_1.Post)('detail/:id'),
|
||
(0, swagger_1.ApiParam)({ name: 'id', description: 'App 版本ID' }),
|
||
(0, swagger_1.ApiOperation)({ summary: 'App 版本详情' }),
|
||
api_1.Api.ApiResponse({
|
||
model: app_version_model_1.AppVersionModel,
|
||
codeDescription: '200成功',
|
||
}),
|
||
openapi.ApiResponse({ status: 201 }),
|
||
__param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
|
||
__param(1, (0, common_1.Body)()),
|
||
__metadata("design:type", Function),
|
||
__metadata("design:paramtypes", [Number, GeneratedApp_versionDetailDto]),
|
||
__metadata("design:returntype", Promise)
|
||
], GeneratedApp_versionController.prototype, "detail", null);
|
||
exports.GeneratedApp_versionController = GeneratedApp_versionController = __decorate([
|
||
(0, common_1.Controller)('generated/app_version'),
|
||
(0, swagger_1.ApiTags)('GApp 版本'),
|
||
__param(0, (0, typeorm_1.InjectRepository)(app_version_model_1.AppVersionModel)),
|
||
__metadata("design:paramtypes", [typeorm_2.Repository])
|
||
], GeneratedApp_versionController);
|
||
//# sourceMappingURL=generated_app_version.controller.js.map
|