# node_flow **Repository Path**: wujiz_admin/node_flow ## Basic Information - **Project Name**: node_flow - **Description**: node集成流程管理 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-11-01 - **Last Updated**: 2024-11-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README <<<<<<< HEAD bpmn-server =========== [![Project Status: Active - The project has reached a stable, usable state and is being actively developed.](http://www.repostatus.org/badges/latest/active.svg)](http://www.repostatus.org/#active) ## Introduction BPMN 2.0 Modeling, Execution and Presistence, an open source Workflow Server for Node.js This package is designed specifically for Node.js and TypeScript ### Documentation - [Featuers](./docs/features) - [Examples](./docs/examples.md) ## Features ### Web based Process modeller A web based modeler is included based on http://bpmn.io , models definitions are saved at your server ![Modeller](./docs/model-demo.gif) ### Full BPMN Process Engine bpmn-server provides an bpmnEngine to execute your workflow definition supporting all of BPMN 2.0 elements with advanced extensions bpmn-server is highly scalable solution, allow you to run multiple nodeJS either in same machine or in a distributed mode against same MongoDB ### Presistent Processes provides an environment to presist execution Instances while running and communicate with your application. Applications can monitor and communicate to Instances whether they are running or offline, allowing user interface to query and process Workflow steps ### Data Queries Since instances are saved in MongoDB you can easily query your instances (running or completed) ### Sample Web App Included is a sample web application (running Node.js and Express.js) to allow you to visualize your workflow # Installation This package requires Node.js and an access to MongoDB () if you don't have MongoDB already installed you can [create a free cloud account here](http://bit.ly/cyd-atlas) ```javascript $ mkdir myBPMN $ cd myBPMN $ npm install bpmn-server ``` Copy demo app into local folder ``` $ cp node_modules/bpmn-server/WebApp/. ./ -r Windows: xcopy /e /i /s /y node_modules\bpmn-server\WebApp\*.* . ``` Edit .env file to have MongoDB point to your server or free cloud account ```javascript API_KEY=12345 MONGO_DB_URL=mongodb://0.0.0.0:27017/bpmn <---- point to your MONGODB MONGO_DB_NAME=bpmn DEFINITIONS_PATH="./processes/" SESSION_SECRET=omni-secret SERVER_ID=PRIMARY ``` Run database setup ``` node setup.js ``` ## To start server ``` npm run start ``` Console will display: ```text bpmn-server WebApp.ts version 1.4.0 MongoDB URL mongodb://0.0.0.0:27017/bpmn db connection open App is running at http://localhost:3000 in development mode Press CTRL-C to stop ``` Use your browser to view the bpmn-server running ## to update to latest release ``` $ npm update bpmn-server ``` # Full Demo a full demo site is available @ http://bpmn.omniworkflow.com # Example Script ```javascript const server = new BPMNServer(configuration, logger); let response = await server.execute('Buy Used Car'); // let us get the items const items = response.items.filter(item => { return (item.status == 'wait'); }); items.forEach(item => { console.log(` waiting for <${item.name}> -<${item.elementId}> id: <${item.id}> `); }); console.log('Invoking Buy'); response = await server.invoke({instanceId: response.execution.id, elementId: 'task_Buy' }, { model: 'Thunderbird', needsRepairs: false, needsCleaning: false }); console.log("Ready to drive"); response = await server.invoke({ instanceId: response.execution.id, elementId: 'task_Drive' }); console.log(`that is it!, process is now complete status=<${response.execution.status}>`) ``` for more complete examples see [Examples](./docs/examples.md) # License This project is licensed under the terms of the MIT license. # Acknowledgments The **bpmn-server** resides upon the excellent library [bpmn-io/bpmn-moddle](https://github.com/bpmn-io/bpmn-moddle) developed by [bpmn.io](http://bpmn.io/) The **bpmn-server** is inspired by the library [bpmn-engine](https://github.com/paed01/bpmn-engine) ======= # node_flow #### 介绍 node集成流程管理 #### 软件架构 软件架构说明 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) >>>>>>> d22a49413ecb0e3d9a4575ae43c619f849c08b61