工作流程数据表设计Mysql数据库

本文探讨了如何在Mysql数据库中有效地设计工作流程数据表,涵盖了关键的设计原则和最佳实践,以确保数据的高效存储和查询。通过合理组织表结构,利用索引优化,以及考虑与其他技术如Redis的集成,实现高性能的工作流程管理。
/*
Navicat MySQL Data Transfer 流程模块数据表设计

Source Server         : local
Source Server Version : 50724
Source Host           : localhost:3306
Source Database       : process

Target Server Type    : MYSQL
Target Server Version : 50724
File Encoding         : 65001

Date: 2021-04-09 16:22:58
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for process_account
-- ----------------------------
DROP TABLE IF EXISTS `process_account`;
CREATE TABLE `process_account` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `account_name` varchar(128) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '银行卡户名',
  `account_num` varchar(32) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '银行卡卡号',
  `account_bank` varchar(64) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '开户行名称',
  `amount` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '余额额',
  `remark` varchar(1024) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '备注',
  `user_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '创建人:用户id',
  `editer_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '编辑人:用户id',
  `company_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '细胞id',
  `status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '1=删除禁用,0=正常',
  `is_platform` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '0=个人银行卡,1=平台银行卡',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `deleted_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `user_id` (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=104 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='流程管理:银行卡账号管理表';

-- ----------------------------
-- Table structure for process_account_log
-- ----------------------------
DROP TABLE IF EXISTS `process_account_log`;
CREATE TABLE `process_account_log` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `account_sn` varchar(32) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '交易流水',
  `operation_type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '操作类型:1=收入,0=支出',
  `transaction_type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '交易类型:1=付款,0=购买,2=充值,3=出售 等',
  `amount` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '收支变动的金额',
  `balance` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '变动后的余额',
  `remark` varchar(1024) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '备注',
  `user_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '用户id',
  `payer_account_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '付款银行卡id',
  `payee_account_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '对方银行卡id',
  `files_url` varchar(2048) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '付款收款-截图URL',
  `program_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '流程id',
  `status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '1=删除禁用,0=正常',
  `pay_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '付款时间',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `deleted_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `user_id` (`user_id`),
  KEY `payer_account_id` (`payer_account_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='流程管理:收款账号收入支出流水表';

-- ----------------------------
-- Table structure for process_contract
-- ----------------------------
DROP TABLE IF EXISTS `process_contract`;
CREATE TABLE `process_contract` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `con
工作流引擎数据库设计全文共3页,当前为第1页。工作流引擎数据库设计全文共3页,当前为第1页。工作流引擎数据库设计 工作流引擎数据库设计全文共3页,当前为第1页。 工作流引擎数据库设计全文共3页,当前为第1页。 概述 基于打造一个灵活、高效、轻量级的工作流引擎,暂时不考虑功能的完备和复杂,只是实现其中必不可少的功能和条件。主要考虑以下三个方面的内容: 流程定义:工作流中的流程极其相关活动的定义和模型数据搭建 运行调度控制:执行工作流过程中流程活动任务分配、调度控制 运行阶段的人机交互:实现各种活动执行过程中用户与IT应用工具之间的交互 数据库定义 流程定义 主要是跟流程模型定义相关的数据表,主要包括流程模型定义表(WF_FlowTemplate)、流程步骤模型定义表(WF_StepTemplate)、流程链路表(WF_FlowLink)、流程类型表(WF_FlowType) WF_FlowType 字段 类型 描述 备注 FlowTypeID int 流程类型ID 标示 not null FlowTypeName nvarchar(50) 流程分类名称 Description nvarchar(200) 流程类别描述 WF_FlowTemplate 字段 类型 描述 备注 FlowID int 流程ID 标示 not null FlowName nvarchar(50) 流程名称 FlowTypeID int 流程类型编码 Manager nvarchar(50) 流程实例管理者 CreateUserID int 创建人ID CreateDate Date 创建时间 ModifyUserID int 最后修改人ID ModifyDate Date 最后修改时间 Version int 版本 WF_StepTemplate 工作流引擎数据库设计全文共3页,当前为第2页。工作流引擎数据库设计全文共3页,当前为第2页。字段 工作流引擎数据库设计全文共3页,当前为第2页。 工作流引擎数据库设计全文共3页,当前为第2页。 类型 描述 备注 StepID int 步骤ID 标示 not null StepName nvarchar(100) 步骤名称 FlowID int 流程ID FormURL nvarchar(200) 表单URL PositionX float X坐标 PositionY Float Y坐标 LimitTime int 步骤时限 SubFlowID int 子流程ID Description nvarchar(200) 步骤描述 WF_FlowLink 字段 类型 描述 备注 FlowLinkID int 流程链路ID 标示 not null FlowID nvarchar(50) 流程ID FromStep int 前一步骤ID ToStep Int 后一步骤ID Action nvarchar(200) 流转条件行为 Description nvarchar(200) 流转路径描述 Expression nvarchar(200) 条件表达式 流程调度 针对运行中的流程实例以及活动实例进行管理和调度,主要包括流程实例表(WF_FlowInstance)、步骤实例表(WF_StepInstance) WF_FlowInstance 字段 类型 描述 备注 FlowInstanceID int 流程实例ID 标示 not null FlowInstanceName nvarchar(100) 流程实例名称 FlowID int 流程ID CreateUserID int 创建人ID CreateDate Date 创建时间 FinishDate Date 完成时间 Status int 流程实例状态 WF_StepInstance 字段 类型 描述 备注 StepInstanceID int 步骤实例ID 标示 not null FlowInstanceID int 流程实例ID StepID int 步骤ID 工作流引擎数据库设计全文共3页,当前为第3页。工作流引擎数据库设计全文共3页,当前为第3页。StartDate 工作流引擎数据库设计全文共3页,当前为第3页。 工作流引擎数据库设计全文共3页,当前为第3页。 datetime 开始时间 FinishDate datetime 完成时间 Status int 步骤状态 TrackRemark nvarchar(200) 轨迹备注 任务管理 流程实例运行过程中产生的工作项任务,主要包括任务列表(WF_TaskList)、消息列表(WF_MessageList) WF_TaskList 字段 类型 描述 备注 TaskID int 步骤实例
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值