AJ-Report is a fully open source, drag-and-drop edited visual design tool. Three quick steps to a large screen: Configure data source —-> Write SQL configuration data set —-> Drag and drop to create a large screen. Let management control business dynamics anytime, anywhere, and let every decision be supported by data.
brief introduction
- The latest and most stable technology stack;
Supports multi-data source configuration
Rich large screen components. Drag-and-drop configuration for dynamic large screens
Function overview
data flowchart
Package directory
bin Start command script│ ├── restart.sh│ ├── start.bat│ ├── start.sh│ └── stop.sh├── conf Configuration file directory│ └── bootstrap-dev.yml├── logs Startup log directory├── cache Local cache directory├── lib Custom extension packages &report-core core packages
system directory
├── doc Document source code│ ├── docs│ ├── package.json│ └── README.md├── pom.xml Parent pom, jar version management├── report-core javasound code│ ├── pom.xml Parent pom, jar version management│ └── README.md├── report-ui Front-end vue source code├── LICENSE├── README.md
QuickStart
Language
[Mysql] 5.7
[Jdk] 1.8
rear-end
Spring Boot: Spring Boot is an out-of-the-box framework that makes our Spring applications lighter and faster to get started. Execute the main function in the main program to run. You can also package your application as a jar and run your Web application by using java-jar;
Mybatis-plus: MyBatis-plus (MP) is an enhancement of MyBatis (opens new window).
flyway: The main thing is to upgrade your database structure and the data in it while the application version is constantly upgrading
Front end
npm: node.js package management tool, used to unified management of our front-end projects need to use packages, plug-ins, tools, commands, etc., easy to develop and maintain.
webpack: A _ static module packaging tool for modern JavaScript applications
ES6: A new version of Javascript, short for ECMAScript6. With ES6 we can simplify our JS code while taking advantage of the power it provides to quickly implement JS logic.
Vue-cli: Vue scaffolding tool, used to automatically generate Vue project directories and files.
Vue-router: Front-end routing tool provided by Vue, using which we can achieve page routing control, local refresh and on-demand loading, build single-page applications, and realize front-end separation.
vuex: The state management tool provided by Vue is used to uniformly manage the interaction and reuse of various data in our project, and store the data objects we need to use.
element-ui: A set of front-end ui components based on the MVVM framework Vue.
avue: This component can be wrapped into a drag-and-drop component, using absolute positioning relative to the parent class; You can also use the keyboard to control movement
authority management
add new users
user authorization
Note: The default role is not assigned to the new user because the role can be deleted and modified in the role management, so you need to manually deauthorize the role when creating a user
Role management
Report sample
Report sample