Spring cloud Alibaba microservice flowable workflow custom form vue.js front and back separation

Time:2021-10-26
springcloud  +  springcloud   Alibaba  +  Flowable process engine

1. Code generator:   [positive and negative two-way] (single table, main table, detail table, tree table, sharp tool for rapid development)
Freemaker template technology generates a complete module without writing 0 codes, with complete modules such as page, table creation, SQL script, processing class and service
2. Multiple data sources: (it supports connecting countless databases at the same time, and different modules can connect different data databases) it supports n data sources
3. Alibaba database connection pool Druid, security permission framework   Shiro (menu permissions and button permissions), caching framework   ehcache
4. Code editor, online template editor, imitation development tool editor
5. Call the camera to take pictures   Custom clipping editing avatar, avatar picture chroma adjustment
6.websocket   Timely station letter and sound reminder, real-time online management, websocket timely refresh page (perfect Ajax Technology)
7. Redis storage distributed cache   From the green version of windows redis, it is convenient for developers to develop and test locally

—————————————————————————————————————–
Service Introduction (each service runs separately, with high availability and low coupling)
1: Spring cloud service ————————————————————————————-
1. Nacos Ali Registration Center: the official Eureka stops updating. At present, the better replacement is Nacos
2. Zipkin tracking service: distributed tracking log, based on memory storage records
3. Gateway gateway routing service: distributing requests, unified management and filtering, combined with ribbon load balancing and feign service call
4. Springboot admin monitoring center service: unified interface management, check the running status of each service, and actor health check
5. Sentinel high availability traffic management framework: Taking traffic as the starting point, current limiting, traffic shaping, fuse degradation, system load protection and hot spot protection

2: Workflow services ——————————————————————————————–
1. Model management :Web online process designer, import / export XML, copy process, deploy process, select handler

2. Process management  : Import and export process resource files, view flow charts, reflect process models according to process instances, and activate pending
3. Running process: view process information, current task node, current flow chart, void and suspend process, assign to-do person, and jump freely
4. Historical process: view process information, process time, process status, and view task initiator information
5. To do tasks  : View personal tasks and tasks under this role, handle, reject, void, and assign an agent
6. Completed tasks  : View the tasks handled by yourself, process information, flow chart and process status (voiding and rejecting are completed normally)

Note:When the current task is completed, the next task to-do person will receive a new task message prompt through instant messaging, which will be regarded as abandoned and completed,
The task initiator will receive the notification of in station letter message
Mainstream workflow engine flowable
———————————————————————-Custom form
1. Define template: drag the form element on the left to the area on the right, edit the form element and save the form template
2. Form template: edit and maintain form templates, copy form templates, modify template types, and preview form templates
3. My form: select form template, edit form rules, whether to upload pictures and attachments, turn on rich text, attach process switch, etc
4. Form data: from my form, you can add, delete, modify, query form data and modify form rules
5. Affiliated record: records the associated record of form data and process instance ID, which can be deleted
Official website:www.fhadmin.cn 

3: System services  —————————————————————————————————–
1. Permission management: click the secondary menu to enter the tertiary menu to display roles (basic permissions) and button permissions
Role (basic permission): it is divided into role groups and roles, and independently assigned menu permissions and add, delete, modify and query permissions. (a user can have multiple roles)
Button permissions: assign button permissions to roles.
2. Button Management: Customize button management, maintain button Shiro permission ID, etc
3. Menu management: N-level custom menu, select the menu icon, and the menu status is displayed and hidden (recursive processing)
4. Data dictionary: N-level, supporting multi-level classification. Built in numbering, sorting, etc
5. Log management: record user login and exit and some important operation records
6. Online management: websocket technology can detect the list of online users in real time, count the number of online users, and force users to go offline   The same user can only log in on one client
7. System user: add, delete, modify and query each basic user, export to excel table and delete in batch
8. In station mail: receiving mailbox and sending mailbox, timely receiving reminder made by websocket technology and communication technology, and voice prompt letter can be configured

9. System setting: modify the system name, the number of items displayed on each page, mail service configuration, and station mail configuration
10. Performance monitoring: drudi monitors the performance of various services, including SQL monitoring, SQL firewall, URL monitoring, spring monitoring, session monitoring, etc
4: System tool service  ——————————————————————————————————————-
one   Code generation: generate complete module code and keep the generation record template, which can be reused (super powerful development tool)
Forward generation: generate complete modules, such as HTML pages, processing classes, mapper layer, service layer, XML table creation SQL script of myabaits, etc
Reverse generation: arbitrarily connect other databases (mysql, Oracle, sqlserver) and generate modules of the cost system according to the table
two   Template Management: Code online editor, manage templates, save editing records, one click restore, and code generator is even more powerful
5: Im instant messaging service  —————————————————————————————————————–
one   Friend management: search, add, delete, blackmail friends and view friend information
two   Friend grouping: Customize friend grouping
three   My group: create a group, search for applications to join other people’s groups, kick out group members, and manage group chat records
Communication module single chat group chat send pictures send files offline messages keep chat records
6: Database management service  ————————————————————————————————
1. Database backup: single table (not supported by SQL Server) and whole database can be backed up, and local and remote backup (java interface programming technology and socket programming technology) can be supported
2. Backup timer: Quartz powerful task scheduling, multi-threaded database backup, task startup and shutdown asynchronous operation
3. Database restore: restore the historical backup records, restore the database or single table (not supported by SQL Server), and count the backup time and file size
4. SQL editor: powerful SQL editor, which supports editing complex query statements, generating dynamic reports, and exporting to excel
7: OA office services  —————————————————————————————————–
1. Leave application: add a leave form and follow the workflow leave model process
8: Table synchronization service  ——————————————————————————————————
According to business requirements, table data synchronization between microservices is required. This intermediate service is hereby used for processing
—————————————————————————————————————————
Menu permissions: different menu permissions are assigned to each role. Each role sees different menus. N-level menus
Button permissions: independently assign different roles and different function permissions. Add, delete, modify and query permissions are assigned to different menus, and user-defined button management
Support multi-user and sub authority management background,   Permissions are specific to different menus and different buttons (a user can have multiple roles)
Technical point——————————————————————————————————————
1. Import and export Excel files (applied to system users)
2 generate word file (applied to doc document generated by code generator)
3. Download the IO stream file (the application is compressed into a zip file after being generated in the code generator)
4 code zip compression and packaging   (the application is compressed into a zip file after being generated in the code generator)
5. MD5 encryption Sha encryption (login password is encrypted with this) interface encryption identity verification
6. The Druid of the database connection pool. Druid has obvious advantages in monitoring, scalability, stability and performance, and supports concurrency
7. Security framework Shiro (login authorization) (Session Management) (Shiro annotation menu permission interception) (Shiro label button permission)
8. Freemaker template engine (for code generator)
9. Ehcache customize the cache, select the cache storage directory, handle concurrency, and increase system performance
10. Tab tab page function, the tags can be switched freely without repeated operation of the database (all can be closed, the current can be closed, and others can be closed)
11. Multi data source technology
12. Call camera photographing technology and picture cutting technology (user avatar editing)
13. Online editor, imitation development tool (template editing of code generator)
14. Single group email can be sent in HTML and plain text format
15. Analyze the full spelling (Pinyin) and initials of Chinese characters according to Chinese characters (import Excel to the user table, and generate Pinyin user name according to the user’s Chinese character name)
16. In station signal voice reminder, JS control audio playback
17. Java read / write INI configuration file
18. Java websocket instant messaging technology, peer-to-peer, friends and groups, send picture files, offline messages, and keep chat records
19. Baidu rich text editor can upload pictures and attachments
20. Java quartz task scheduling   (Applied in database scheduled backup module)
21. Ajax asynchronous cross domain technology, cross domain upload of files and pictures
22. Redis distributed session stores and shares user authorization information