Coder Social home page Coder Social logo

87789771 / meimei-nestjs-admin Goto Github PK

View Code? Open in Web Editor NEW
377.0 8.0 82.0 2.39 MB

🚀🚀 基于NestJs + TypeScript +Prisma + Redis + MySql + Vue3 + vite + Element-UI编写的一款前后端分离的权限管理系统。🚀内置角色系统、导入导出、数据权限、表单连续提交拦截、前端表格列自定义等...🚀

Home Page: http://42.192.136.154:3000/#/login?redirect=%2Findex

JavaScript 14.42% TypeScript 24.76% Batchfile 0.02% HTML 2.88% Vue 52.72% SCSS 2.29% CSS 0.11% PLpgSQL 2.81%
admin vue nestjs nestjs-admin typescript typeorm express ruoyi prisma vue3

meimei-nestjs-admin's Introduction

版本问题

当前项目包含1.0文件(我刚开始学习 nestjs 时无聊写的项目),后端使用的是TypeOrm,前端用的的vue2.0,同时也使用了swagger,功能和这个基本一样 (都具备数据权限,但是因为数据库工具的不同,实现方式不同) 。 本文介绍的内容都是针这两天刚写的版本(后端使用 Prisma,前端使用 vue3+vite )。如果有需要查看和学习TypeOrm版本的,可以直接切换Tags到1.0。 后续如果我有时间,我也只会维护 Prisma + vue3 的这个版本。因为这个写起来更简单湿滑,一看就懂。同时在这个版本中,我去掉了swagger的支持, 我觉得用它太麻烦了,丢失了js的灵活性。我习惯的开发流程是: apiFox定义字段和接口 ----> prisma定义模型 ----> 推送数据库 ----> 业务程序实现。 apiFox真是一个特别好用的东西,当然 nestjs 也给了我们前端无限可能,prisma 更是把数据库交互变成了一看就会的东西。希望这两个简单的后台系统项目可以给你们在学习nestjs以及后端思维上有点帮助。。。。 最后:如果觉得还可以,麻烦点个star。你的鼓励是我能抽出时间维护它最后的动力了。

项目简介

槑槑是一款后台管理系统,它前端基于 vue3element-ui ,后端基于 node 的后端框架 nestjs ,数据库采用 mysql ,缓存采用 redis。

在线体验

技术要求

技术选型

  1. 前端技术
  • vue @3.4.21
  • element-plus @2.6.1
  • axios @0.27.2
  • pinia @2.0.22
  • vue-router @4.2.5
  • sass @1.56.1
  1. 后端技术
  • nest @10.3.2
  • prisma @5.12.1
  • ioredis @5.4.1

内置功能

  • 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
  • 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
  • 岗位管理:配置系统用户所属担任职务。
  • 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
  • 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
  • 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
  • 参数管理:对系统动态配置常用参数。
  • 通知公告:系统通知公告信息发布维护。
  • 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
  • 登录日志:系统登录日志记录查询包含登录异常。
  • 在线用户:当前系统中活跃用户状态监控。
  • 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
  • 系统接口:根据业务代码自动生成相关的api接口文档。
  • 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
  • 缓存监控:对系统的缓存信息查询,命令统计等。
  • 缓存列表:查看redis的缓存情况
  • 在线构建器:拖动表单元素生成相应的Vue代码。

目录结构

    meimei
    ├── prisma                          #数据库模型和迁移模块
    ├── static                          #静态文件
    │   └── upload                      #上传文件夹
    ├── src
    │   ├── common                      
    │   │   ├── class                   #公共返回值包装类
    │   │   ├── contants                #系统常量
    │   │   ├── decorators              #装饰器
    │   │   ├── dto                     #数据模型
    │   │   ├── entities                #公共实体模型
    │   │   ├── enums                   #枚举
    │   │   ├── exceptions              #全局错误拦截器
    │   │   ├── filters                 #全局错误过滤器
    │   │   ├── guards                  #全局守卫
    │   │   ├── interceptors            #装饰器
    │   │   ├── interface               #公共接口
    │   │   └── pipes                   #公共管道
    │   │   └── type                    #公共类型
    │   ├── config
    │   │   ├── config.dev              #开发环境配置文件
    │   │   ├── config.pro              #正式环境配置文件
    │   │   ├── index      
    │   ├── modules                     #业务模块文件夹
    │   │   ├── common                  #导入导出和上传模块
    │   │   ├── login                   #登录模块
    │   │   ├── monitor                 #系统监控
    │   │   └── system                  #系统管理
    │   ├── shared                      
    │   │   ├── prisma                  #数据库连接定义
    │   │   ├── shared.module.ts        #公共模块
    │   │   └── shared.service.ts       #公共方法
    │   ├── app.module.ts
    │   ├── main.ts
    ├── test
    │   ├── app.e2e-spec.ts
    │   └── jest-e2e.json
    ├── .eslintrc.js
    ├── .prettierrc
    ├── meimei-prisma.sql                     #初始化sql语句
    ├── nest-cli.json
    ├── package.json
    ├── tsconfig.build.json
    ├── tsconfig.json
    └── yarn.lock

系统截图

meimei-nestjs-admin's People

Contributors

87789771 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

meimei-nestjs-admin's Issues

登录接口报错

登录接口报错
{"code":500,"msg":"TypeError: Cannot read property 'salt' of null"}

新版本代码,启动报错,

这边定时器启动报错,解决了半天没有处理过好
Cannot find type definition file for 'cron'.
The file is in the program because:
Entry point for implicit type library 'cron
请问再那里修改才可以启动

你好作者,请教个问题

比如我有 N 个模块,我想设计一个Autocomplete api 来远程搜索下拉数据,类似 /api/search/options/{module},通过 module 值来决定获取哪个模块的数据,从而来组装成 options 格式返回给前端。我应该怎么做呢...

演示地址打不开了

您好,我这边注意到演示地址无法打开,之前我记得是可以的,不知道是存在什么问题吗?

pm2 启动日志报错

我这里用pm2启动 日志报错, node 能启动

0|main | [Nest] 14193 - 11/02/2022, 10:35:47 PM ERROR [TypeOrmModule] Unable to connect to the database. Retrying (1)...
0|main | MissingDriverError: Wrong driver: "undefined" given. Supported drivers are: "aurora-mysql", "aurora-postgres", "better-sqlite3", "capacitor", "cockroachdb", "cordova", "expo", "mariadb", "mongodb", "mssql", "mysql", "nativescript", "oracle", "postgres", "react-native", "sap", "sqlite", "sqljs", "spanner".

是什么原因导致的呢 ,帮看下谢谢🙏

启动时连接redis报错

redis版本:6.2.7

后端服务执行yarn run start:dev 后开始没什么问题,所有的接口都打印出来的,但是await app.listen()那儿一直卡住,过五六分钟会报redis的错误

E:\Forseti\nestAndElementComponent\meimei-admin\node_modules\bull\node_modules\ioredis\built\redis\event_handler.js:177 self.flushQueue(new errors_1.MaxRetriesPerRequestError(maxRetriesPerRequest)); ^ MaxRetriesPerRequestError: Reached the max retries per request limit (which is 20). Refer to "maxRetriesPerRequest" option for details. at Socket.<anonymous> (E:\Forseti\nestAndElementComponent\meimei-admin\node_modules\bull\node_modules\ioredis\built\redis\event_handler.js:177:37) at Object.onceWrapper (node:events:628:26) at Socket.emit (node:events:513:28) at TCP.<anonymous> (node:net:301:12)

Require stack:

PS D:\经典项目\NODE\admin\meimei-nestjs-admin\meimei-admin> npm run start:dev

[email protected] start:dev
cross-env NODE_ENV=development nest start

Error: Cannot find module 'D:/经典项目/NODE/admin/meimei-nestjs-admin/meimei-admin/src/modules/login/dto/res-login.dto'
Require stack:

  • D:\经典项目\NODE\admin\meimei-nestjs-admin\meimei-admin\dist\modules\login\login.controller.js
  • D:\经典项目\NODE\admin\meimei-nestjs-admin\meimei-admin\dist\modules\login\login.module.js
  • D:\经典项目\NODE\admin\meimei-nestjs-admin\meimei-admin\dist\app.module.js
  • D:\经典项目\NODE\admin\meimei-nestjs-admin\meimei-admin\dist\main.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object. (D:\经典项目\NODE\admin\meimei-nestjs-admin\meimei-admin\dist\modules\login\login.controller.js:55:46)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    问下这个bug怎么解决?
    再问下你的Node版本?

为啥我启动不起来

error TS2688: Cannot find type definition file for 'cron'.
The file is in the program because:
Entry point for implicit type library 'cron'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.