国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

這篇具有很好參考價(jià)值的文章主要介紹了若依(RuoYi-Vue)+Flowable工作流前后端整合教程。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

此教程適合若依前后端分離項(xiàng)目,其他項(xiàng)目可以在擴(kuò)展列表中進(jìn)行查找。若依(RuoYi-Vue)+Flowable工作流前后端整合教程

近期公司里需要對(duì)很久以前的RuoYi-Vue前后端分離項(xiàng)目擴(kuò)展出flowable的功能,當(dāng)然這個(gè)重任也是落在了我的身上(不然也不會(huì)有這篇文章),然后我在官網(wǎng)看到了RuoYi-Vue-Flowable這個(gè)項(xiàng)目,按照文檔提供的遷移方式對(duì)于我們這個(gè)老版本的項(xiàng)目來說無法正常運(yùn)行,所以我聯(lián)系了作者并更新了一下文檔,打算在網(wǎng)上在發(fā)布一篇(畢竟有的人懶得看官方文檔)。

官方項(xiàng)目地址:https://gitee.com/tony2y/RuoYi-flowable

把項(xiàng)目拉到本地后下面開始整合教程,整合教程分為前端和后端兩個(gè)模塊。

前端遷移流程

1.flowale功能頁面相關(guān)內(nèi)容遷移

1.1 把目錄ruoyi-ui/src/views/下的flowable文件夾移動(dòng)到你自己前端項(xiàng)目中的/src/views/文件下。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程?

1.2 移動(dòng)頁面配套的js文件,將ruoyi-ui/src/api/下的flowable文件夾移動(dòng)到自己項(xiàng)目中的/src/api/文件下。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程?

2.flowale流程設(shè)計(jì)器相關(guān)內(nèi)容遷移

ruoyi-ui/src/components目錄下的customBpmn,flow,parser,Process,render,tinymce文件夾移動(dòng)到自己項(xiàng)目中的/src/components文件下。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程?

3.表單設(shè)計(jì)器與人員選擇模塊相關(guān)文件遷移

3.1ruoyi-ui/src/views/tool中的build文件夾移動(dòng)到自己項(xiàng)目中的/src/views/tool文件下,存在則覆蓋。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程?

3.2 遷移表單設(shè)計(jì)器相關(guān)樣式,將ruoyi-ui/src下的styles文件移動(dòng)到自己項(xiàng)目中的/src文件夾下。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程?

3.3 修改ruoyi-ui/src/utils/index.js中的deepClone函數(shù)。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程?

修改為如下內(nèi)容,存在該函數(shù)做修改,不存在做新增。

// 深拷貝對(duì)象
export function deepClone(obj) {
  const _toString = Object.prototype.toString

  // null, undefined, non-object, function
  if (!obj || typeof obj !== 'object') {
    return obj
  }

  // DOM Node
  if (obj.nodeType && 'cloneNode' in obj) {
    return obj.cloneNode(true)
  }

  // Date
  if (_toString.call(obj) === '[object Date]') {
    return new Date(obj.getTime())
  }

  // RegExp
  if (_toString.call(obj) === '[object RegExp]') {
    const flags = []
    if (obj.global) { flags.push('g') }
    if (obj.multiline) { flags.push('m') }
    if (obj.ignoreCase) { flags.push('i') }

    return new RegExp(obj.source, flags.join(''))
  }

  const result = Array.isArray(obj) ? [] : obj.constructor ? new obj.constructor() : {}

  for (const key in obj) {
    result[key] = deepClone(obj[key])
  }

  return result
}

3.4 遷移或替換相關(guān)js文件,存在則替換,不存在則新增,將ruoyi-ui/src/utils/generator,ruoyi-ui/src/utils文件夾中對(duì)應(yīng)下圖紅框的js文件移動(dòng)到自己項(xiàng)目中對(duì)應(yīng)的文件夾中。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程?

3.5 遷移表單設(shè)計(jì)器相關(guān)圖標(biāo),將ruoyi-ui/src下的icons文件移動(dòng)到自己項(xiàng)目中的/src文件夾下。?

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

4. 流程表達(dá)式、流程監(jiān)聽器相關(guān)內(nèi)容遷移

4.1 相關(guān)頁面遷移,將ruoyi-ui/src/views/system下的expression,listener文件夾移動(dòng)到自己項(xiàng)目中的/src/views/system文件夾下。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

4.2 相關(guān)js文件遷移,將ruoyi-ui/src/api/system下的expression.js,listener.js文件移動(dòng)到自己項(xiàng)目中的/src/api/system文件夾下。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

5. main.js中引入組件

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

main.js中結(jié)合上圖添加如下代碼。

import Tinymce from '@/components/tinymce/index.vue'
  
Vue.component('tinymce', Tinymce)

6.?package.json中新增依賴

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

package.json中結(jié)合上圖添加如下依賴。

"bpmn-js": "^11.1.0",
"diagram-js": "^11.4.1",
"xcrud": "^0.4.19",
"vkbeautify": "^0.99.3",

7. 新增路由配置

ruoyi-ui/src/router/index.js文件中添加路由配置,不同的ruoyi版本路由寫法不一致,請(qǐng)參照自己項(xiàng)目路由進(jìn)行添加。

參考如下:

  {
    path: '/flowable',
    component: Layout,
    hidden: true,
    children: [
      {
        path: 'definition/model/',
        component: () => import('@/views/flowable/definition/model'),
        name: 'Model',
        meta: { title: '流程設(shè)計(jì)', icon: '' }
      }
    ]
  },
  {
    path: '/flowable',
    component: Layout,
    hidden: true,
    children: [
      {
        path: 'task/finished/detail/index',
        component: () => import('@/views/flowable/task/finished/detail/index'),
        name: 'FinishedRecord',
        meta: { title: '流程詳情', icon: '' }
      }
    ]
  },
  {
    path: '/flowable',
    component: Layout,
    hidden: true,
    children: [
      {
        path: 'task/myProcess/detail/index',
        component: () => import('@/views/flowable/task/myProcess/detail/index'),
        name: 'MyProcessRecord',
        meta: { title: '流程詳情', icon: '' }
      }
    ]
  },
  {
    path: '/flowable',
    component: Layout,
    hidden: true,
    children: [
      {
        path: 'task/myProcess/send/index',
        component: () => import('@/views/flowable/task/myProcess/send/index'),
        name: 'SendRecord',
        meta: { title: '流程發(fā)起', icon: '' }
      }
    ]
  },
  {
    path: '/flowable',
    component: Layout,
    hidden: true,
    children: [
      {
        path: 'task/todo/detail/index',
        component: () => import('@/views/flowable/task/todo/detail/index'),
        name: 'TodoRecord',
        meta: { title: '流程處理', icon: '' }
      }
    ]
  },
  {
    path: '/tool',
    component: Layout,
    hidden: true,
    children: [
      {
        path: 'build/index',
        component: () => import('@/views/tool/build/index'),
        name: 'FormBuild',
        meta: { title: '表單配置', icon: '' }
      }
    ]
  }

8. 啟動(dòng)項(xiàng)目

刪除node_modules文件夾,控制臺(tái)執(zhí)行npm install下載完畢后啟動(dòng)項(xiàng)目即可。

由于加入了流程校驗(yàn)器,遷移項(xiàng)目后啟動(dòng)錯(cuò)誤請(qǐng)執(zhí)行以下命令

npm install create-bpmnlint-plugin -D

后端遷移流程

1. 在父級(jí)pom文件中加入如下依賴

<!-- properties -->
<properties>
  <flowable.version>6.7.2</flowable.version>
</properties>
<!-- dependency -->
<dependency>
  <groupId>com.ruoyi</groupId>
  <artifactId>ruoyi-flowable</artifactId>
  <version>${ruoyi.version}</version>
</dependency>
<dependency>
  <groupId>io.swagger</groupId>
  <artifactId>swagger-annotations</artifactId>
  <version>1.5.21</version>
  <scope>compile</scope>
</dependency>
<dependency>
    <groupId>org.flowable</groupId>
    <artifactId>flowable-spring-boot-starter</artifactId>
    <version>${flowable.version}</version>
</dependency>
<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>mybatis-plus-boot-starter</artifactId>
  <version>3.4.0</version>
</dependency>
<!--el表達(dá)式計(jì)算-->
<dependency>
  <groupId>com.googlecode.aviator</groupId>
  <artifactId>aviator</artifactId>
  <version>5.3.3</version>
</dependency>

<!--modules -->
 <modules>
    <module>ruoyi-flowable</module>
</modules>

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

2. 把RuoYi-flowable項(xiàng)目中的ruoyi-flowable文件夾整個(gè)遷移到自己項(xiàng)目中

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

3. 在admin項(xiàng)目的pom文件中引入ruoyi-flowable項(xiàng)目

<dependency>
    <groupId>com.ruoyi</groupId>
    <artifactId>ruoyi-flowable</artifactId>
</dependency>

4. 遷移flowable相關(guān)類

根據(jù)若依項(xiàng)目的版本不同,缺少的實(shí)體類,mapper,service也會(huì)有所不同,所以需要根據(jù)flowable項(xiàng)目中所提示缺少的類進(jìn)行針對(duì)性的拷貝,如果為service接口記得補(bǔ)全對(duì)應(yīng)的controller。

5. 在admin項(xiàng)目的yml配置文件中新增如下配置

application.yml文件中添加如下配置

# flowable相關(guān)表
flowable:
  # true 會(huì)對(duì)數(shù)據(jù)庫中所有表進(jìn)行更新操作。如果表不存在,則自動(dòng)創(chuàng)建(建議開發(fā)時(shí)使用)
  database-schema-update: false
  # 關(guān)閉定時(shí)任務(wù)JOB
  async-executor-activate: false

數(shù)據(jù)源地址后需要加上nullCatalogMeansCurrent=true,保證自動(dòng)創(chuàng)建flowable表時(shí)不會(huì)報(bào)錯(cuò)。

6. 遷移數(shù)據(jù)庫表

新建一個(gè)庫執(zhí)行tony-flowable.sql文件,flowable項(xiàng)目中少什么表就將對(duì)應(yīng)的表導(dǎo)入到自己的數(shù)據(jù)庫中,mysql數(shù)據(jù)庫版本要用5.7。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

7. 數(shù)據(jù)遷移

sys_menu對(duì)應(yīng)下圖紅框中的菜單數(shù)據(jù)加入到自己的表中。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

?將sys_dict_type對(duì)應(yīng)下圖紅框中的字典類型數(shù)據(jù)添加到自己的表中。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

?將sys_dict_data對(duì)應(yīng)下圖紅框中的字典數(shù)據(jù)添加到自己的表中。

若依(RuoYi-Vue)+Flowable工作流前后端整合教程

8. 啟動(dòng)項(xiàng)目

第一次啟動(dòng)時(shí)需要把yml配置文件中的database-schema-update設(shè)置為true,這樣會(huì)自動(dòng)創(chuàng)建flowable中所需要的全部表。

完成上述操作后就可以在自己項(xiàng)目中正常使用了。?

若依(RuoYi-Vue)+Flowable工作流前后端整合教程文章來源地址http://www.zghlxwxcb.cn/news/detail-420513.html

到了這里,關(guān)于若依(RuoYi-Vue)+Flowable工作流前后端整合教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • flowable工作流--實(shí)操篇

    flowable工作流--實(shí)操篇

    本文通過申請(qǐng)發(fā)工資的業(yè)務(wù)場(chǎng)景來介紹使用工作流的全流程,包括畫流程圖,設(shè)置屬性,以及代碼編寫 使用工作流大致分為四步 第一步:根據(jù)自己的業(yè)務(wù)畫好流程圖 第二步:設(shè)置流程圖的屬性和變量,保存模型 第三步:部署畫好的流程圖(發(fā)布) 第四步:根據(jù)業(yè)務(wù)和流程圖寫一些服務(wù)和

    2024年02月11日
    瀏覽(23)
  • 工作流flowable實(shí)現(xiàn)撤回

    Flowable是一個(gè)開源的工作流引擎,可以實(shí)現(xiàn)工作流程的自動(dòng)化管理,包括任務(wù)分配、流轉(zhuǎn)、審批等。如果需要實(shí)現(xiàn)撤回功能,可以考慮以下方案: 在流程定義中添加一個(gè)撤回節(jié)點(diǎn),允許任務(wù)的發(fā)起人在任務(wù)未被處理前撤回任務(wù)。當(dāng)發(fā)起人選擇撤回任務(wù)時(shí),任務(wù)將被撤回至撤回

    2024年02月09日
    瀏覽(27)
  • SpringBoot集成Flowable工作流

    SpringBoot集成Flowable工作流

    官方文檔: https://tkjohn.github.io/flowable-userguide/#_introduction Flowable是一個(gè)使用Java編寫的輕量級(jí)業(yè)務(wù)流程引擎。Flowable流程引擎可用于部署B(yǎng)PMN 2.0流程定義(用于定義流程的行業(yè)XML標(biāo)準(zhǔn)), 創(chuàng)建這些流程定義的流程實(shí)例,進(jìn)行查詢,訪問運(yùn)行中或歷史的流程實(shí)例與相關(guān)數(shù)據(jù),等等

    2024年02月15日
    瀏覽(27)
  • 【學(xué)習(xí)筆記】Flowable - 01 - 工作流 快速上手

    【學(xué)習(xí)筆記】Flowable - 01 - 工作流 快速上手

    JDK8 Flowable6 (6.3 or 6.7.2) Postgresql (MySQL同樣支持) 波哥:2023年Flowable詳細(xì)講解 波哥:2022年Flowable教程-基礎(chǔ)篇 Flowable BPMN 用戶手冊(cè) 中文 官方網(wǎng)站 官方github源碼 IDEA低版本提供一個(gè)BPMN解析插件: 但是并沒有很好的支持流程的繪制。 存在幾個(gè)工具: 古老的Eclipse(太老的不推薦 官

    2024年01月19日
    瀏覽(29)
  • Flowable工作流入門&完整SpringBoot案例

    Flowable工作流入門&完整SpringBoot案例

    工作流(Workflow),是指對(duì)于一項(xiàng)業(yè)務(wù),按照規(guī)定的流程,逐級(jí)傳遞、申請(qǐng)、執(zhí)行等,并且受到了嚴(yán)格控制的一種業(yè)務(wù)過程。 BPM(Business Process Management)是指對(duì)于某項(xiàng)業(yè)務(wù)的整個(gè)生命周期進(jìn)行全面管理的一種模式,最核心的內(nèi)容包括了工作流、決策、交互等。在這些管理過程

    2024年02月12日
    瀏覽(19)
  • Spring Boot 中動(dòng)態(tài)創(chuàng)建 Flowable 工作流

    在 Spring Boot 中動(dòng)態(tài)創(chuàng)建 Flowable 工作流可以通過以下步驟實(shí)現(xiàn): 1.?創(chuàng)建 Flowable 配置:首先,您需要在 Spring Boot 應(yīng)用程序中配置 Flowable。您可以使用 Spring Boot 的配置文件或注解來配置 Flowable。 2.?創(chuàng)建工作流定義:接下來,您需要?jiǎng)?chuàng)建工作流定義。您可以使用 Flowable 的 API 來

    2024年02月10日
    瀏覽(18)
  • 若依框架SpringBoot+Activiti工作流的使用

    若依框架SpringBoot+Activiti工作流的使用

    使用簡(jiǎn)介:本技術(shù)點(diǎn)主要是針對(duì)類審批的業(yè)務(wù)流程的建模,可以有:任務(wù)發(fā)布(即流程開始)到一級(jí)一級(jí)的審批到最終結(jié)束(即流程結(jié)束)一整套完備的模型 1、idea下載activiti插件 ider以前版本下載actiBPM,但是新版ider這個(gè)插件已經(jīng)被淘汰,已經(jīng)被下面這個(gè)替代 ? ? 2、單獨(dú)起

    2024年02月11日
    瀏覽(29)
  • 若依低代碼平臺(tái)(帶工作流引擎版本)使用記錄

    若依低代碼平臺(tái)(帶工作流引擎版本)使用記錄

    目錄 0 平臺(tái)介紹 1 創(chuàng)建數(shù)據(jù)庫 2 Redis緩存數(shù)據(jù)庫 3 修改配置文件 4 修改maven依賴 5 運(yùn)行后臺(tái) 6 運(yùn)行前端 7 運(yùn)行效果 帶工作流引擎的開源低代碼平臺(tái)并不常有,這是基于若依開發(fā)的工作流版本低代碼平臺(tái),MIT開源協(xié)議,前后端分離,前端使用Vue框架,后端SpringBoot。 本文引用的

    2024年02月12日
    瀏覽(48)
  • 工作流Flowable入門教程:flowableUI的安裝使用,RepositoryService、RuntimeService、TaskService、HistoryService的使用

    工作流Flowable入門教程:flowableUI的安裝使用,RepositoryService、RuntimeService、TaskService、HistoryService的使用

    Flowable是一個(gè)使用Java編寫的輕量級(jí)業(yè)務(wù)流程引擎。Flowable流程引擎可用于部署B(yǎng)PMN 2.0流程定義(用于定義流程的行業(yè)XML標(biāo)準(zhǔn)), 創(chuàng)建這些流程定義的流程實(shí)例,進(jìn)行查詢,訪問運(yùn)行中或歷史的流程實(shí)例與相關(guān)數(shù)據(jù),等等。這個(gè)章節(jié)將用一個(gè)可以在你自己的開發(fā)環(huán)境中使用的例

    2024年01月18日
    瀏覽(28)
  • 若依Ruoyi-Vue生成代碼使用

    若依Ruoyi-Vue生成代碼使用

    目錄 一、效果一覽: 二、詳細(xì)步驟: ①登錄若依----點(diǎn)擊系統(tǒng)工具--點(diǎn)擊代碼生成模塊 ②使用Navicat在若依數(shù)據(jù)庫里面新建一張表單,我這示例創(chuàng)建了my_students表單 并為表設(shè)計(jì)字段添加數(shù)據(jù) ?③在代碼生成欄導(dǎo)入剛才創(chuàng)建的my_students表 并編輯這張表 ?④完成這些操作之后,點(diǎn)

    2024年02月05日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包