Files
certd/packages/ui/certd-server/src/basic/crud-controller.ts

65 lines
1.1 KiB
TypeScript
Raw Normal View History

import { ALL, Body, Post, Query } from '@midwayjs/decorator';
import { BaseController } from './base-controller';
2023-01-29 13:44:19 +08:00
export abstract class CrudController<T> extends BaseController {
abstract getService<T>();
2023-01-29 13:44:19 +08:00
@Post('/page')
async page(
@Body(ALL)
body
) {
const pageRet = await this.getService().page(
body?.query,
body?.page,
body?.sort,
null
);
return this.ok(pageRet);
}
@Post('/list')
async list(
@Body(ALL)
body
) {
const listRet = await this.getService().list(body, null, null);
return this.ok(listRet);
}
@Post('/add')
async add(
@Body(ALL)
bean
) {
const id = await this.getService().add(bean);
return this.ok(id);
}
@Post('/info')
async info(
@Query('id')
id
) {
const bean = await this.getService().info(id);
return this.ok(bean);
}
@Post('/update')
async update(
@Body(ALL)
bean
) {
await this.getService().update(bean);
return this.ok(null);
}
@Post('/delete')
async delete(
@Query('id')
id
) {
await this.getService().delete([id]);
return this.ok(null);
}
}