新增图片空间

This commit is contained in:
啊平 2021-02-26 18:47:57 +08:00
parent 32f169fb76
commit 3bb0271d32
12 changed files with 106 additions and 12 deletions

View File

@ -1,6 +1,6 @@
{
"name": "cool-admin-next",
"version": "1.0.0",
"name": "cool-admin",
"version": "3.0.0",
"description": "",
"private": true,
"dependencies": {
@ -13,13 +13,11 @@
"ipip-ipdb": "^0.3.0",
"jsonwebtoken": "^8.5.1",
"md5": "^2.3.0",
"midway-test-component": "^1.0.1",
"midwayjs-cool-core": "/Users/ap/Documents/srcs/cool-admin/midway-core/core/dist",
"midwayjs-cool-redis": "file:/Users/ap/Documents/srcs/cool-admin/midway-core/redis/dist",
"midwayjs-cool-oss": "/Users/ap/Documents/srcs/cool-admin/midway-core/oss/dist",
"mysql2": "^2.2.5",
"svg-captcha": "^1.4.0",
"svg-to-dataurl": "^1.0.0",
"uuid": "^8.3.2"
"svg-to-dataurl": "^1.0.0"
},
"devDependencies": {
"@midwayjs/cli": "^1.2.41",

View File

@ -9,8 +9,8 @@ export default (app: Application) => {
// 模块名称
name: '权限管理',
// 模块描述
describe: '基础的权限管理功能,包括登录,权限校验',
description: '基础的权限管理功能,包括登录,权限校验',
// 中间件
middlewares: ['baseAuthorityMiddleware', 'baseLogMiddleware'],
middlewares: [],
} as ModuleConfig;
};

View File

@ -0,0 +1,18 @@
import { Provide } from '@midwayjs/decorator';
import { CoolController, BaseController } from 'midwayjs-cool-core';
import { BaseAppSpaceInfoEntity } from '../../../../entity/app/space/info';
/**
*
*/
@Provide()
@CoolController({
api: ['add', 'delete', 'update', 'info', 'list', 'page'],
entity: BaseAppSpaceInfoEntity,
pageQueryOp: {
fieldEq: ['type', 'classifyId']
}
})
export class BaseAppSpaceInfoController extends BaseController {
}

View File

@ -0,0 +1,15 @@
import { Provide } from '@midwayjs/decorator';
import { CoolController, BaseController } from 'midwayjs-cool-core';
import { BaseAppSpaceTypeEntity } from '../../../../entity/app/space/type';
/**
*
*/
@Provide()
@CoolController({
api: ['add', 'delete', 'update', 'info', 'list', 'page'],
entity: BaseAppSpaceTypeEntity
})
export class BaseAppSpaceTypeController extends BaseController {
}

View File

@ -2,6 +2,7 @@ import { Provide, Inject, Get, Post, Body, ALL } from '@midwayjs/decorator';
import { Context } from 'egg';
import { CoolController, BaseController, CoolFile } from 'midwayjs-cool-core';
import { BaseSysUserEntity } from '../../entity/sys/user';
import { BaseSysLoginService } from '../../service/sys/login';
import { BaseSysPermsService } from '../../service/sys/perms';
import { BaseSysUserService } from '../../service/sys/user';
@ -18,6 +19,9 @@ export class BaseCommController extends BaseController {
@Inject()
baseSysPermsService: BaseSysPermsService;
@Inject()
baseSysLoginService: BaseSysLoginService;
@Inject()
ctx: Context;
@ -65,4 +69,13 @@ export class BaseCommController extends BaseController {
return this.ok(this.coolFile.getMode());
}
/**
* 退
*/
@Post('/logout')
async logout() {
await this.baseSysLoginService.logout();
return this.ok();
}
}

View File

@ -2,6 +2,7 @@ import { Provide } from '@midwayjs/decorator';
import { CoolController, BaseController } from 'midwayjs-cool-core';
import { Context } from 'vm';
import { BaseSysRoleEntity } from '../../../entity/sys/role';
import { BaseSysRoleService } from '../../../service/sys/role';
/**
*
@ -10,6 +11,7 @@ import { BaseSysRoleEntity } from '../../../entity/sys/role';
@CoolController({
api: ['add', 'delete', 'update', 'info', 'list', 'page'],
entity: BaseSysRoleEntity,
service: BaseSysRoleService,
// 新增的时候插入当前用户ID
insertParam: (async (ctx: Context) => {
return {

View File

@ -0,0 +1,20 @@
import { EntityModel } from '@midwayjs/orm';
import { BaseEntity } from 'midwayjs-cool-core';
import { Column } from 'typeorm';
/**
*
*/
@EntityModel('base_app_space_info')
export class BaseAppSpaceInfoEntity extends BaseEntity {
@Column({comment: '地址'})
url: string;
@Column({comment: '类型'})
type: string;
@Column({comment:'分类ID', type: 'bigint', nullable: true })
classifyId: number;
}

View File

@ -0,0 +1,17 @@
import { EntityModel } from '@midwayjs/orm';
import { BaseEntity } from 'midwayjs-cool-core';
import { Column } from 'typeorm';
/**
*
*/
@EntityModel('base_app_space_type')
export class BaseAppSpaceTypeEntity extends BaseEntity {
@Column({ comment: '类别名称' })
name: string;
@Column({ comment: '父分类ID', type: 'tinyint', nullable: true })
parentId: number;
}

View File

@ -120,6 +120,17 @@ export class BaseSysLoginService extends BaseService {
return result;
}
/**
* 退
*/
async logout() {
const { userId } = this.ctx.admin;
await this.coolCache.del(`admin:department:${userId}`);
await this.coolCache.del(`admin:perms:${userId}`);
await this.coolCache.del(`admin:token:${userId}`);
await this.coolCache.del(`admin:token:refresh:${userId}`);
}
/**
*
* @param captchaId ID

View File

@ -52,7 +52,7 @@ export class BaseSysRoleService extends BaseService {
*/
async modifyAfter(param) {
if (param.id) {
await this.updatePerms(param.id, param.menuIdList, param.departmentIdList);
this.updatePerms(param.id, param.menuIdList, param.departmentIdList);
}
}

View File

@ -62,7 +62,7 @@ export default (appInfo: EggAppInfo) => {
// token
token: {
// 2小时过期需要用刷新token
expire: 2 * 5,
expire: 2 * 3600,
// 15天内如果没操作过就需要重新登录
refreshExpire: 24 * 3600 * 15
},

View File

@ -3,7 +3,7 @@ import { ILifeCycle, IMidwayContainer } from '@midwayjs/core';
import { Application } from 'egg';
import * as orm from '@midwayjs/orm';
import * as cool from 'midwayjs-cool-core';
//import * as redis from 'midwayjs-cool-redis';
import * as oss from 'midwayjs-cool-oss';
@Configuration({
// 注意组件顺序 cool 有依赖orm组件 所以必须放在orm组件之后 cool的其他组件必须放在cool 核心组件之后
@ -12,7 +12,7 @@ import * as cool from 'midwayjs-cool-core';
orm,
// 必须,不可移除, cool-admin 官方组件 https://www.cool-js.com
cool,
//redis
oss
]
})
export class ContainerLifeCycle implements ILifeCycle {