zoukankan      html  css  js  c++  java
  • OSWorkflow表结构分析

    研究了一段时间的OSWorkflow,对其表结构做了一些分析,能帮助深入的学习:

    以Oracle为例

    1.========================================================================================
    create table OS_PROPERTYENTRY  --存储propertyset的值(具体字段还不清晰以后补充)
    (
     GLOBAL_KEY varchar(255),
     ITEM_KEY varchar(255),
     ITEM_TYPE smallint,
     STRING_VALUE varchar(255),
     DATE_VALUE date,
     DATA_VALUE blob,
     FLOAT_VALUE float,
     NUMBER_VALUE numeric,
     primary key (GLOBAL_KEY, ITEM_KEY)
    );
    2.========================================================================================
    create table OS_USER           --用户表
    (
        USERNAME varchar(20),      --用户名
        PASSWORDHASH varchar(2024),--经过加密的密码
        primary key (USERNAME)
    );
    3.========================================================================================
    create table OS_GROUP          --组结构表
    (
        GROUPNAME varchar(20),     --组名称
        primary key (GROUPNAME)
    );
    4.========================================================================================
    create table OS_MEMBERSHIP     --用户与组的关系表
    (
        USERNAME varchar(20),      --用户名
        GROUPNAME varchar(20),     --组名称
        primary key (USERNAME, GROUPNAME),
        foreign key (USERNAME) references OS_USER(USERNAME),
        foreign key (GROUPNAME) references OS_GROUP(GROUPNAME)
    );
    5.========================================================================================
    create table OS_WFENTRY        --工作流主表,存放工作流名称和状态
    (
        ID number,                 
        NAME varchar(20),          --工作流名称
        STATE integer,             --工作流状态
        primary key (ID)          
    );
    6.========================================================================================
    create table OS_CURRENTSTEP    --当前步骤表,存放当前步骤的数据
    (
        ID number,                 --自动编号
        ENTRY_ID number,           --工作流编号
        STEP_ID integer,           --步骤编号
        ACTION_ID integer,         --动作编号
        OWNER varchar(20),         --步骤的所有者
        START_DATE date,           --开始时间
        FINISH_DATE date,          --结束时间
        DUE_DATE date,             --授权时间
        STATUS varchar(20),        --当前状态
        CALLER varchar(20),        --实际执行的用户
        primary key (ID),
        foreign key (ENTRY_ID) references OS_WFENTRY(ID),
        foreign key (OWNER) references OS_USER(USERNAME),
        foreign key (CALLER) references OS_USER(USERNAME)
    );
     
    7.========================================================================================
    create table OS_HISTORYSTEP    --历史步骤表,存放当前步骤的数据
    (
        ID number,                 --自动编号
        ENTRY_ID number,           --工作流编号
        STEP_ID integer,           --步骤编号
        ACTION_ID integer,         --动作编号
        OWNER varchar(20),         --步骤的所有者
        START_DATE date,           --开始时间
        FINISH_DATE date,          --结束时间
        DUE_DATE date,             --授权时间
        STATUS varchar(20),        --状态
        CALLER varchar(20),        --实际执行的用户
        primary key (ID),
        foreign key (ENTRY_ID) references OS_WFENTRY(ID),
        foreign key (OWNER) references OS_USER(USERNAME),
        foreign key (CALLER) references OS_USER(USERNAME)
    );
    8.========================================================================================
    create table OS_CURRENTSTEP_PREV  --上一步骤表,存放当前步骤和上一个步骤的关联数据
    (
        ID number,                    --当前步骤编号
        PREVIOUS_ID number,           --上一步骤编号
        primary key (ID, PREVIOUS_ID),
        foreign key (ID) references OS_CURRENTSTEP(ID),
        foreign key (PREVIOUS_ID) references OS_HISTORYSTEP(ID)
    );
    9.========================================================================================
    create table OS_HISTORYSTEP_PREV      --上一历史步骤表,存放历史步骤和上一个步骤的关联数据
    (
        ID number,                        --当前历史步骤编号
        PREVIOUS_ID number,               --上一历史步骤编号
        primary key (ID, PREVIOUS_ID),
        foreign key (ID) references OS_HISTORYSTEP(ID),
        foreign key (PREVIOUS_ID) references OS_HISTORYSTEP(ID)
    );

    ER图:

  • 相关阅读:
    3个同一行div的摆放div
    Android 项目开发
    iOS 8
    iOS 8
    __FILE__ 与 $_SERVER['SCRIPT_FILENAME']的区别
    高德百度坐标系转换方法
    高德百度坐标系转换方法
    在iOS开发中使用icon font的方法
    在iOS开发中使用icon font的方法
    UIView的setNeedsLayout, layoutIfNeeded 和 layoutSubviews 方法之间的关系解释
  • 原文地址:https://www.cnblogs.com/SoulStore/p/2006041.html
Copyright © 2011-2022 走看看