[項目]vhr 微人事系統


 地址

https://github.com/lenve/vhr?utm_source=gold_browser_extension

說明

微人事是一個前后端分離的人力資源管理系統,項目采用SpringBoot+Vue開發。

項目介紹

微人事是一個前后端分離的人力資源管理系統,項目采用 SpringBoot+Vue 開發,項目加入常見的企業級應用所涉及到的技術點,例如 Redis、RabbitMQ 等。

項目技術棧

后端技術棧

  1. Spring Boot
  2. Spring Security
  3. MyBatis
  4. MySQL
  5. Redis
  6. RabbitMQ
  7. Spring Cache
  8. WebSocket
  9. ...

前端技術棧

  1. Vue
  2. ElementUI
  3. axios
  4. vue-router
  5. Vuex
  6. WebSocket
  7. vue-cli4
  8. ...

項目效果圖

首先,不同的用戶在登錄成功之后,根據不同的角色,會看到不同的系統菜單,完整菜單如下:

不同用戶登錄上來之后,可能看到的會有差異,如下:

每個用戶的角色是由系統管理員進行分配的,系統管理員給用戶分配角色的頁面如下:

系統管理員也可以管理不同角色可以操作的資源,頁面如下:

快速部署

  1. clone 項目到本地 git@github.com:lenve/vhr.git
  2. 數據庫腳本使用 Flyway 管理,不需要手動導入數據庫腳本,只需要提前在本地 MySQL 中創建一個空的數據庫 vhr,並修改項目中關於數據的配置(resources 目錄下的 application.properties 文件中)即可
  3. 提前准備好 Redis,在 項目的 application.properties 文件中,將 Redis 配置改為自己的
  4. 提前准備好 RabbitMQ,在項目的 application.properties 文件中將 RabbitMQ 的配置改為自己的(注意,RabbitMQ 需要分別修改 mailserver 和 vhrserver 的配置文件
  5. 在 IntelliJ IDEA 中打開 vhr 項目,啟動 mailserver 模塊
  6. 運行 vhrserver 中的 vhr-web 模塊

OK,至此,服務端就啟動成功了,此時我們直接在地址欄輸入 http://localhost:8081/index.html 即可訪問我們的項目,如果要做二次開發,請繼續看第七、八步。

  1. 進入到vuehr目錄中,在命令行依次輸入如下命令:
# 安裝依賴
npm install

# 在 localhost:8080 啟動項目
npm run serve

由於我在 vuehr 項目中已經配置了端口轉發,將數據轉發到 Spring Boot 上,因此項目啟動之后,在瀏覽器中輸入 http://localhost:8080 就可以訪問我們的前端項目了,所有的請求通過端口轉發將數據傳到 Spring Boot 中(注意此時不要關閉 Sprin gBoot 項目)。

  1. 最后可以用 WebStorm 等工具打開 vuehr 項目,繼續開發,開發完成后,當項目要上線時,依然進入到 vuehr 目錄,然后執行如下命令:
npm run build

該命令執行成功之后,vuehr 目錄下生成一個 dist 文件夾,將該文件夾中的兩個文件 static 和 index.html 拷貝到 Spring Boot 項目中 resources/static/ 目錄下,然后就可以像第 6 步那樣直接訪問了(關於前后端分離部署,大家也可以參考這個使用 Nginx 部署前后端分離項目,解決跨域問題)。

步驟 7 中需要大家對 NodeJS、NPM 等有一定的使用經驗,不熟悉的小伙伴可以先自行搜索學習下,推薦 Vue 官方教程

文檔

文檔是對項目開發過程中遇到的一些問題的詳細記錄,主要是為了幫助沒有基礎的小伙伴快速理解這個項目。

  1. 權限數據庫設計
  2. 服務端環境搭建
  3. 動態處理角色和資源的關系
  4. 密碼加密並加鹽
  5. 服務端異常的統一處理
  6. axios 請求封裝,請求異常統一處理
  7. 將請求方法掛到Vue上
  8. 登錄狀態的保存
  9. 登錄成功后動態加載組件
  10. 角色資源關系管理
  11. 用戶角色關系管理

更新記錄

2018.1.10 更新

本次更新版本:v20180110

本次更新完成了部門管理功能,頁面在 [系統管理->基礎信息設置->部門管理]

本次更新也更新了數據庫腳本,小伙伴們需要重新下載數據庫腳本執行。

相關文檔:

  1. 部門數據庫設計與存儲過程編寫
  2. 遞歸查詢與存儲過程調用
  3. Tree 樹形控件使用要點

2018.1.12 更新

本次更新版本:v20180112

本次更新完成了職稱管理和職位管理,頁面在 [系統管理->基礎信息設置->職位管理] 和 [系統管理->基礎信息設置->職稱管理]

本次更新也更新了數據庫腳本,小伙伴們需要重新下載數據庫腳本執行。

相關文檔:

  1. 職位管理和職稱管理功能介紹
  2. 組件復用
  3. [題外話]利用 git 標簽回退至任意版本

2018.1.15 更新

本次更新版本:v20180115

本次更新完成了員工基本信息管理,頁面在 [員工資料->基本資料]

本次更新也更新了數據庫腳本,小伙伴們需要重新下載數據庫腳本執行。

相關文檔:

  1. 員工基本信息管理功能介紹
  2. Spring Boot 中自定義參數綁定

2018.1.16 更新

本次更新版本:v20180116

本次更新完成了員工的高級搜索功能,頁面在 [員工資料->基本資料]

相關文檔:

  1. 高級搜索功能介紹

2018.1.17 更新

本次更新版本:v20180117

本次更新完成了員工數據的導入導出功能,即可將員工數據導出為Excel,也可以將外部Excel導入到員工數據表中,頁面在 [員工資料->基本資料]

相關文檔:

  1. Excel 導入導出效果圖
  2. SpringMVC 文件下載的兩種方式
  3. POI 生成 Excel
  4. axios 下載文件
  5. 使用 POI 實現 Excel 導入

2018.1.19 更新

本次更新版本:v20180119

本次更新主要實現了當管理員添加一個用戶時,添加成功后,會根據該用戶的郵箱自動向用戶發送一封歡迎入職郵件,頁面在 [員工資料->基本資料->添加員工] 詳情可以參考下面的文檔。 注意:郵件發送需要小伙伴小伙伴自己配置授權碼,配置方式參考下面的文檔,配置文件在src/main/java/org/sang/common/EmailRunnable.java

相關文檔:

  1. Spring Boot 中使用 Freemarker 郵件模板生成郵件
  2. Java 中郵件的發送
  3. Spring Boot 中使用新線程發送郵件

2018.1.25 更新

本次更新版本:v20180125

本次更新主要完成了工資賬套管理功能,頁面在 [薪資管理->工資賬套管理]

本次更新也更新了數據庫腳本,小伙伴們需要重新下載數據庫腳本執行。

相關文檔:

  1. 工資賬套管理功能介紹

2018.1.26 更新

本次更新版本:v20180126

本次更新主要完成了員工賬套設置功能,頁面在 [薪資管理->員工賬套設置]

本次更新也更新了數據庫腳本,小伙伴們需要重新下載數據庫腳本執行。

相關文檔:

  1. 員工賬套設置功能介紹

2018.2.2 更新

本次更新版本:v20180202

本次更新完成了HR在線聊天功能,頁面在 [Home頁->右上角鈴鐺->好友聊天]

相關文檔:

  1. 在線聊天功能介紹
  2. 在線聊天功能實現

2018.2.5 更新

本次更新版本:v20180205

本次更新完成了管理員發送系統通知功能,頁面在 [Home頁->右上角鈴鐺->系統通知]

本次更新也更新了數據庫腳本,小伙伴們需要重新下載數據庫腳本執行。

相關文檔:

  1. 系統通知功能實現

2019.12.22 更新

本次更新版本:v20191222

本次更新是一次規模較大的更新,整個項目的版本得到升級,同時引入了多模塊、RabbitMQ 等技術棧。

相關文檔

  1. 兩年了,微人事項目迎來了一次重大更新


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM