浏览代码

@IPU_REQ_2022@完善《低代码模块服务逻辑流》模板,编写testcase

weihf 3 年之前
父节点
当前提交
99bed86b7e
共有 30 个文件被更改,包括 1175 次插入56 次删除
  1. 46 0
      qb-auth-server/src/main/resources/flow/menu/aggregate_menu_select.xml
  2. 44 0
      qb-auth-server/src/main/resources/flow/menu/aggregate_priv_entity_select.xml
  3. 39 8
      qb-auth-server/src/main/resources/flow/menu/menu_delete.xml
  4. 1 1
      qb-auth-server/src/main/resources/flow/menu/model/sec_menu.xml
  5. 14 1
      qb-auth-server/src/main/resources/flow/menu/model/sec_priv_entity.xml
  6. 42 0
      qb-auth-server/src/main/resources/flow/menu/priv_entity_delete.xml
  7. 0 0
      qb-auth-server/src/main/resources/flow/menu/priv_entity_select.xml
  8. 35 0
      qb-auth-server/src/main/resources/flow/menu/priv_entity_update_by_cond.xml
  9. 82 0
      qb-auth-server/src/main/resources/flow/menu/priv_entity_update_menu_by_cond.xml
  10. 34 13
      qb-auth-server/src/main/resources/flow/role/model/sec_role.xml
  11. 10 0
      qb-auth-server/src/main/resources/flow/role/model/sec_role_grant.xml
  12. 19 22
      qb-auth-server/src/main/resources/flow/menu/model/sec_role.xml
  13. 78 0
      qb-auth-server/src/main/resources/flow/role/role_delete.xml
  14. 30 0
      qb-auth-server/src/main/resources/flow/role/role_grant_delete.xml
  15. 27 0
      qb-auth-server/src/main/resources/flow/role/role_grant_select.xml
  16. 29 0
      qb-auth-server/src/main/resources/flow/role/role_grant_update_by_cond.xml
  17. 27 0
      qb-auth-server/src/main/resources/flow/role/role_insert.xml
  18. 27 0
      qb-auth-server/src/main/resources/flow/role/role_select.xml
  19. 0 0
      qb-auth-server/src/main/resources/flow/role/role_select_by_cond.xml
  20. 0 0
      qb-auth-server/src/main/resources/flow/role/role_select_by_id.xml
  21. 0 0
      qb-auth-server/src/main/resources/flow/role/role_update.xml
  22. 29 0
      qb-auth-server/src/main/resources/flow/role/role_update_by_cond.xml
  23. 31 0
      qb-auth-server/src/main/resources/flow/role/role_user_rel_delete_by_cond.xml
  24. 27 0
      qb-auth-server/src/main/resources/flow/role/role_user_rel_insert.xml
  25. 44 0
      qb-auth-server/src/main/resources/flow/role/role_user_rel_select_by_cond.xml
  26. 25 7
      qb-auth-server/src/test/java/com/ipu/logicflow/server/MenuTest.java
  27. 81 2
      qb-auth-server/src/test/java/com/ipu/logicflow/server/PrivEntityTest.java
  28. 63 2
      qb-auth-server/src/test/java/com/ipu/logicflow/server/RoleGrantTest.java
  29. 184 0
      qb-auth-server/src/test/java/com/ipu/logicflow/server/RoleTest.java
  30. 107 0
      qb-auth-server/src/test/java/com/ipu/logicflow/server/RoleUserRelTest.java

+ 46 - 0
qb-auth-server/src/main/resources/flow/menu/aggregate_menu_select.xml

@ -0,0 +1,46 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="aggregate_menu_select"
3
            name="菜单查询"
4
            desc="菜单查询">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_menu"/>
8
        <import model="sec_role"/>
9
    </declare>
10
11
    <start id="start" name="开始节点" next="selectRole">
12
        <var key="role_id" model="sec_role" attr="role_id"/>
13
    </start>
14
15
    <action id="selectRole" name="查询用户" next="selectMenu">
16
        <input>
17
            <var key="role_id" />
18
        </input>
19
        <sql conn="auth">
20
            select * from sec_role where role_id = ${role_id}
21
        </sql>
22
        <output>
23
            <var key="role_info"/>
24
        </output>
25
    </action>
26
    
27
    <action id="selectMenu" name="查询用户" next="end">
28
        <input>
29
            <var key="role_id" />
30
        </input>
31
        <sql conn="auth">
32
            SELECT d.* from sec_role_grant b, sec_priv_entity c, sec_menu d
33
            where  b.PRIV_ENT_ID = c.PRIV_ENT_ID
34
            and c.BUSI_OBJ_ID = d.MENU_ID
35
            and b.role_id = ${role_id}
36
        </sql>
37
        <output>
38
            <var key="menu_info"/>
39
        </output>
40
    </action>
41
42
    <end id="end" name="结束节点">
43
        <var key="menu_info"/>
44
        <var key="role_info"/>
45
    </end>
46
</logic-flow>

+ 44 - 0
qb-auth-server/src/main/resources/flow/menu/aggregate_priv_entity_select.xml

@ -0,0 +1,44 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="aggregate_priv_entity_select"
3
            name="菜单查询"
4
            desc="菜单查询">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_priv_entity"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="selectPrivEntity">
11
        <var key="priv_ent_id" model="sec_priv_entity" attr="priv_ent_id"/>
12
    </start>
13
14
    <action id="selectPrivEntity" name="查询用户" next="selectMenu">
15
        <input>
16
            <var key="priv_ent_id" />
17
        </input>
18
        <sql conn="auth">
19
            select * from sec_priv_entity where priv_ent_id = ${priv_ent_id}
20
        </sql>
21
        <output>
22
            <var key="priv_entity_info"/>
23
        </output>
24
    </action>
25
    
26
    <action id="selectMenu" name="查询用户" next="end">
27
        <input>
28
            <var key="priv_ent_id" />
29
        </input>
30
        <sql conn="auth">
31
            SELECT d.* from sec_priv_entity c, sec_menu d
32
            where  c.BUSI_OBJ_ID = d.MENU_ID
33
            and c.priv_ent_id = ${priv_ent_id}
34
        </sql>
35
        <output>
36
            <var key="menu_info"/>
37
        </output>
38
    </action>
39
40
    <end id="end" name="结束节点">
41
        <var key="menu_info"/>
42
        <var key="priv_entity_info"/>
43
    </end>
44
</logic-flow>

+ 39 - 8
qb-auth-server/src/main/resources/flow/menu/menu_delete.xml

@ -1,5 +1,5 @@
1 1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="menu_delete"
2
<logic-flow id="menu_delete_by_cond"
3 3
            name="菜单删除"
4 4
            desc="菜单删除">
5 5
    <declare>
@ -42,13 +42,14 @@
42 42
        <if test="menus.size==0" next="deleteRoleGrant"/>
43 43
    </action>
44 44
45
    <action id="deleteRoleGrant" name="删除角色权限" next="aggregateMenuId">
45
    <action id="deleteRoleGrant" name="删除角色权限" next="aggregateBusiObjId">
46 46
        <input>
47 47
            <var key="menu_id" model="sec_menu" attr="menu_id"/>
48 48
        </input>
49 49
        <sql conn="auth">
50
            delete from sec_role_grant where priv_ent_id in (
51
            select priv_ent_id from sec_priv_entity where busi_obj_id = ${menu_id}
50
            delete a from sec_role_grant a where exists (
51
            select 1 from sec_priv_entity b 
52
            where b.busi_obj_id = ${menu_id} and b.priv_ent_id = a.priv_ent_id
52 53
            )
53 54
        </sql>
54 55
        <output>
@ -56,7 +57,7 @@
56 57
        </output>
57 58
    </action>
58 59
59
    <action id="aggregateMenuId" name="聚合菜单条件" next="printPrivEntity">
60
    <action id="aggregateBusiObjId" name="聚合菜单条件" next="printPrivEntity">
60 61
        <input>
61 62
            <var key="menu_id" model="sec_menu" attr="menu_id"/>
62 63
        </input>
@ -78,7 +79,7 @@
78 79
        </expression>
79 80
    </action>
80 81
81
    <action id="deletePrivEntity" name="删除角色授权表" next="end">
82
    <action id="deletePrivEntity" name="删除角色授权表" next="aggregateMenuId">
82 83
        <input>
83 84
            <var key="priv_entity" model="sec_priv_entity" attrExists="false"/>
84 85
        </input>
@ -92,8 +93,38 @@
92 93
            <var key="delete_num"/>
93 94
        </output>
94 95
    </action>
95
96
    
97
    <action id="aggregateMenuId" name="聚合菜单条件" next="deleteMenu">
98
        <input>
99
            <var key="menu_id" model="sec_menu" attr="menu_id"/>
100
        </input>
101
        <aggregate>
102
            <![CDATA[
103
            {"menu_id":"menu_id"}
104
        ]]>
105
        </aggregate>
106
        <output>
107
            <var key="menu"/>
108
        </output>
109
    </action>
110
    
111
    <action id="deleteMenu" name="删除组织下人员信息" next="end">
112
        <input>
113
            <var key="menu" model="sec_menu" attrExists="false"/>
114
        </input>
115
        <!-- <behavior model="sec_menu" id="deleteMenu"/> -->
116
        <function domain="DB" name="deleteByCond">
117
            <param value="auth" type="string"/>
118
            <param value="sec_menu" type="string"/>
119
            <param key="menu" type="map"/>
120
            <param value="uppercase" type="string"/>
121
        </function>
122
        <output>
123
            <var key="result"/>
124
        </output>
125
    </action>
126
    
96 127
    <end id="end" name="结束节点">
97
        <var key="delete_num"/>
128
        <var key="result"/>
98 129
    </end>
99 130
</logic-flow>

+ 1 - 1
qb-auth-server/src/main/resources/flow/menu/model/sec_menu.xml

@ -66,7 +66,7 @@
66 66
        </function>
67 67
    </behavior>
68 68
69
    <behavior id="deletetMenu" name="删除菜单信息">
69
    <behavior id="deleteMenu" name="删除菜单信息">
70 70
        <function domain="DB" name="delete">
71 71
            <param value="auth" type="string"/>
72 72
            <param value="sec_menu" type="string"/>

+ 14 - 1
qb-auth-server/src/main/resources/flow/menu/model/sec_priv_entity.xml

@ -2,13 +2,26 @@
2 2
<model id="sec_priv_entity" name="角色关联菜单信息模型">
3 3
    <attr id="priv_ent_id" type="int" name="角色关联菜单标识"/>
4 4
    <attr id="priv_ent_name" type="string" name="菜单名称"/>
5
    <attr id="priv_ent_code" type="string" name="菜单名称"/>
6
    <attr id="app_id" type="int" name="使用系统标识"/>
7
    <attr id="priv_ent_type_id" type="int" name="权限对象类型标识(用户权限分组管理)"/>
5 8
    <attr id="busi_obj_id" type="string" name="业务对象标识"/>
6 9
    <attr id="busi_obj_type" type="int" name="业务对象类型"/>
10
    <attr id="sensitive_level" type="string" name="业务对象类型"/>
11
    <attr id="remark" type="string" name=""/>
12
    <attr id="valid_date" type="datetime" name="操作人员"/>
13
    <attr id="expire_date" type="datetime" name="操作人员"/>
7 14
    <attr id="data_status" type="string" name="数据状态"/>
8 15
    <attr id="create_date" type="datetime" name="创建日期"/>
9 16
    <attr id="create_op_id" type="string" name="创建人员"/>
17
    <attr id="create_org_id" type="string" name="操作人员"/>
10 18
    <attr id="done_date" type="datetime" name="操作日期"/>
11 19
    <attr id="op_id" type="string" name="操作人员"/>
20
    <attr id="org_id" type="string" name="操作人员"/>
21
    <attr id="mgmt_district" type="string" name="操作人员"/>
22
    <attr id="mgmt_county" type="string" name="操作人员"/>
23
    <attr id="region_id" type="string" name="操作人员"/>
24
    <attr id="tenant_code" type="string" name="操作人员"/>
12 25
13 26
    <behavior id="insertPrivEntity" name="新增角色关联菜单信息">
14 27
        <function domain="DB" name="insert">
@ -46,7 +59,7 @@
46 59
        </function>
47 60
    </behavior>
48 61
49
    <behavior id="deletetByCondPrivEntity" name="删除角色关联菜单信息">
62
    <behavior id="deletetPrivEntityByCond" name="删除角色关联菜单信息">
50 63
        <function domain="DB" name="deleteByCond">
51 64
            <param value="auth" type="string"/>
52 65
            <param value="sec_priv_entity" type="string"/>

+ 42 - 0
qb-auth-server/src/main/resources/flow/menu/priv_entity_delete.xml

@ -0,0 +1,42 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="priv_entity_delete"
3
            name="菜单查询"
4
            desc="菜单查询">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_priv_entity"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="deleteRoleGrant">
11
        <var key="priv_ent_id" model="sec_priv_entity" attr="priv_ent_id"/>
12
    </start>
13
14
    <action id="deleteRoleGrant" name="查询用户" next="deletePrivEntity">
15
        <input>
16
            <var key="priv_ent_id" />
17
        </input>
18
        <sql conn="auth">
19
            delete  from sec_role_grant where priv_ent_id = ${priv_ent_id}
20
        </sql>
21
        <output>
22
            <var key="delete_role_grant_num"/>
23
        </output>
24
    </action>
25
    
26
    <action id="deletePrivEntity" name="查询用户" next="end">
27
        <input>
28
            <var key="priv_ent_id" />
29
        </input>
30
        <sql conn="auth">
31
            delete from sec_priv_entity where priv_ent_id = ${priv_ent_id}
32
        </sql>
33
        <output>
34
            <var key="delete_priv_entity_num"/>
35
        </output>
36
    </action>
37
38
    <end id="end" name="结束节点">
39
        <var key="delete_role_grant_num"/>
40
        <var key="delete_priv_entity_num"/>
41
    </end>
42
</logic-flow>

+ 0 - 0
qb-auth-server/src/main/resources/flow/menu/priv_entity_select.xml


+ 35 - 0
qb-auth-server/src/main/resources/flow/menu/priv_entity_update_by_cond.xml

@ -0,0 +1,35 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="priv_entity_update_by_cond"
3
            name="菜单修改"
4
            desc="菜单修改">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_priv_entity"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="updatePrivEntityByCond">
11
        <var key="priv_entity" model="sec_priv_entity" attrExists="false"/>
12
        <var key="priv_entity_cond" model="sec_priv_entity" attrExists="false"/>
13
    </start>
14
15
    <action id="updatePrivEntityByCond" name="启用用户" next="end">
16
        <input>
17
            <var key="priv_entity" />
18
            <var key="priv_entity_cond" />
19
        </input>
20
        <function domain="DB" name="updateByCond">
21
            <param value="auth" type="string"/>
22
            <param value="sec_priv_entity" type="string"/>
23
            <param key="priv_entity" type="map"/>
24
            <param key="priv_entity_cond" type="map"/>
25
            <param value="uppercase" type="string"/>
26
        </function>
27
        <output>
28
            <var key="update_num"/>
29
        </output>
30
    </action>
31
32
    <end id="end" name="结束节点">
33
        <var key="update_num"/>
34
    </end>
35
</logic-flow>

+ 82 - 0
qb-auth-server/src/main/resources/flow/menu/priv_entity_update_menu_by_cond.xml

@ -0,0 +1,82 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="priv_entity_update_menu_by_cond"
3
            name="菜单删除"
4
            desc="菜单删除">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_menu"/>
8
        <import model="sec_priv_entity"/>
9
    </declare>
10
11
    <start id="start" name="开始节点" next="menuCond">
12
        <var key="busi_obj_id" model="sec_priv_entity"  attr="busi_obj_id"/>
13
        <var key="priv_ent_id" model="sec_priv_entity" attr="priv_ent_id"/>
14
    </start>
15
16
    <action id="menuCond" name="判断菜单条件" next="printMenu">
17
        <input>
18
            <var key="busi_obj_id"/>
19
        </input>
20
        <aggregate>
21
            <![CDATA[
22
            {"busi_obj_id":"menu_id"}
23
        ]]>
24
        </aggregate>
25
        <output>
26
            <var key="menu"/>
27
        </output>
28
    </action>
29
    
30
    <action id="printMenu" name="判断" next="selectMenuCount">
31
        <expression>
32
            <![CDATA[
33
            System.out.println("menu_id==="+DATABUS.menu);
34
        ]]>
35
        </expression>
36
    </action>
37
     
38
    <action id="selectMenuCount" name="查询判断" next="printMenuInfo">
39
        <input>
40
            <var key="menu" model="sec_menu" attrExists="false"/>
41
        </input>
42
        <behavior model="sec_menu" id="selectMenu"/>
43
        <output>
44
            <var key="menu_info"/>
45
        </output>
46
    </action>
47
48
    <action id="printMenuInfo" name="判断" next="menuCountCond">
49
        <expression>
50
            <![CDATA[
51
            System.out.println("menu_id===【${menu_info}】");
52
        ]]>
53
        </expression>
54
    </action>
55
56
    <action id="menuCountCond" name="判断菜单条件" next="end">
57
        <input>
58
            <var key="menu_info"/>
59
        </input>
60
        <if test="menu_info != null" next="updatePrivEntity"/>
61
        <if test="menu_info == null" interrupt="【${busi_obj_id}】菜单不存在,无法执行修改!"/>
62
    </action>
63
    
64
    <action id="updatePrivEntity" name="删除角色权限" next="end">
65
        <input>
66
            <var key="busi_obj_id" />
67
        <var key="priv_ent_id" />
68
        </input>
69
        <sql conn="auth">
70
            update sec_priv_entity 
71
            set busi_obj_id = ${busi_obj_id} 
72
            where priv_ent_id = ${priv_ent_id}
73
        </sql>
74
        <output>
75
            <var key="update_num"/>
76
        </output>
77
    </action>
78
    
79
    <end id="end" name="结束节点">
80
        <var key="update_num"/>
81
    </end>
82
</logic-flow>

+ 34 - 13
qb-auth-server/src/main/resources/flow/role/model/sec_role.xml

@ -1,16 +1,27 @@
1 1
<?xml version="1.0" encoding="UTF-8"?>
2 2
<model id="sec_role" name="角色信息模型">
3
    <attr id="role_id" type="int" name="角色标识"/>
4
    <attr id="role_name" type="string" name="角色名称"/>
5
    <attr id="role_type" type="int" name="角色类型"/>
6
    <attr id="description" type="string" name="角色描述"/>
7
    <attr id="data_status" type="string" name="数据状态"/>
8
    <attr id="create_date" type="datetime" name="创建日期"/>
9
    <attr id="create_op_id" type="string" name="创建人员"/>
10
    <attr id="done_date" type="datetime" name="操作日期"/>
11
    <attr id="op_id" type="datetime" name="操作人员"/>
3
    <attr id="ROLE_ID" type="int" name="角色标识"/>
4
    <attr id="JOB_ID" type="int" name="岗位标识"/>
5
    <attr id="ROLE_NAME" type="string" name="角色"/>
6
    <attr id="ROLE_TYPE" type="string" name="角色"/>
7
    <attr id="ROLE_LEVEL" type="int" name="角色级别 1:低;2:中;3:高;"/>
8
    <attr id="DESCRIPTION" type="string" name="角色"/>
9
    <attr id="VALID_DATE" type="datetime" name="角色生效日期"/>
10
    <attr id="EXPIRE_DATE" type="datetime" name="角色失效日期"/>
11
    <attr id="DATA_STATUS" type="string" name="角色"/>
12
    <attr id="CREATE_DATE" type="datetime" name="角色创建日期"/>
13
    <attr id="CREATE_OP_ID" type="string" name="角色"/>
14
    <attr id="CREATE_ORG_ID" type="string" name="角色"/>
15
    <attr id="DONE_CODE" type="int" name="事务编号"/>
16
    <attr id="DONE_DATE" type="datetime" name="操作日期"/>
17
    <attr id="OP_ID" type="string" name="角色"/>
18
    <attr id="ORG_ID" type="string" name="角色"/>
19
    <attr id="mgmt_district" type="string" name="操作人员"/>
20
    <attr id="mgmt_county" type="string" name="操作人员"/>
21
    <attr id="region_id" type="string" name="操作人员"/>
22
    <attr id="tenant_code" type="string" name="操作人员"/>
12 23
13
    <behavior id="insertRole" name="新增角色信息">
24
    <behavior id="insertRole" name="新增菜单信息">
14 25
        <function domain="DB" name="insert">
15 26
            <param value="auth" type="string"/>
16 27
            <param value="sec_role" type="string"/>
@ -19,7 +30,7 @@
19 30
        </function>
20 31
    </behavior>
21 32
22
    <behavior id="selectRole" name="查询角色信息">
33
    <behavior id="selectRole" name="查询菜单信息">
23 34
        <function domain="DB" name="select">
24 35
            <param value="auth" type="string"/>
25 36
            <param value="sec_role" type="string"/>
@ -28,7 +39,17 @@
28 39
        </function>
29 40
    </behavior>
30 41
31
    <behavior id="updateRole" name="修改角色信息">
42
    <behavior id="updateRoleByCond" name="根据条件修改菜单信息">
43
        <function domain="DB" name="updateByCond">
44
            <param value="auth" type="string"/>
45
            <param value="sec_role" type="string"/>
46
            <param key="role" type="map"/>
47
            <param key="role_cond" type="map"/>
48
            <param value="uppercase" type="string"/>
49
        </function>
50
    </behavior>
51
    
52
    <behavior id="updateRole" name="修改菜单信息">
32 53
        <function domain="DB" name="update">
33 54
            <param value="auth" type="string"/>
34 55
            <param value="sec_role" type="string"/>
@ -37,7 +58,7 @@
37 58
        </function>
38 59
    </behavior>
39 60
40
    <behavior id="deletetRole" name="删除角色信息">
61
    <behavior id="deletetRole" name="删除菜单信息">
41 62
        <function domain="DB" name="delete">
42 63
            <param value="auth" type="string"/>
43 64
            <param value="sec_role" type="string"/>

+ 10 - 0
qb-auth-server/src/main/resources/flow/role/model/sec_role_grant.xml

@ -46,6 +46,16 @@
46 46
        </function>
47 47
    </behavior>
48 48
49
    <behavior id="updateRoleGrantByCond" name="根据条件修改菜单信息">
50
        <function domain="DB" name="updateByCond">
51
            <param value="auth" type="string"/>
52
            <param value="sec_role_grant" type="string"/>
53
            <param key="role_grant" type="map"/>
54
            <param key="role_grant_cond" type="map"/>
55
            <param value="uppercase" type="string"/>
56
        </function>
57
    </behavior>
58
    
49 59
    <behavior id="deletetRoleGrant" name="删除角色授权信息">
50 60
        <function domain="DB" name="delete">
51 61
            <param value="auth" type="string"/>

+ 19 - 22
qb-auth-server/src/main/resources/flow/menu/model/sec_role.xml

@ -1,11 +1,8 @@
1 1
<?xml version="1.0" encoding="UTF-8"?>
2
<model id="sec_role" name="角色信息模型">
2
<model id="sec_role_user_rel" name="角色信息模型">
3
    <attr id="ROLE_USER_REL_ID" type="int" name="角色标识"/>
4
    <attr id="USER_ID" type="int" name="角色标识"/>
3 5
    <attr id="ROLE_ID" type="int" name="角色标识"/>
4
    <attr id="JOB_ID" type="int" name="岗位标识"/>
5
    <attr id="ROLE_NAME" type="string" name="角色"/>
6
    <attr id="ROLE_TYPE" type="string" name="角色"/>
7
    <attr id="ROLE_LEVEL" type="int" name="角色级别 1:低;2:中;3:高;"/>
8
    <attr id="DESCRIPTION" type="string" name="角色"/>
9 6
    <attr id="VALID_DATE" type="datetime" name="角色生效日期"/>
10 7
    <attr id="EXPIRE_DATE" type="datetime" name="角色失效日期"/>
11 8
    <attr id="DATA_STATUS" type="string" name="角色"/>
@ -21,48 +18,48 @@
21 18
    <attr id="region_id" type="string" name="操作人员"/>
22 19
    <attr id="tenant_code" type="string" name="操作人员"/>
23 20
24
    <behavior id="insertRole" name="新增菜单信息">
21
    <behavior id="insertRoleUserRel" name="新增菜单信息">
25 22
        <function domain="DB" name="insert">
26 23
            <param value="auth" type="string"/>
27
            <param value="sec_role" type="string"/>
28
            <param key="role" type="map"/>
24
            <param value="sec_role_user_rel" type="string"/>
25
            <param key="role_user_rel" type="map"/>
29 26
            <param value="uppercase" type="string"/>
30 27
        </function>
31 28
    </behavior>
32 29
33
    <behavior id="selectRole" name="查询菜单信息">
30
    <behavior id="selectRoleUserRel" name="查询菜单信息">
34 31
        <function domain="DB" name="select">
35 32
            <param value="auth" type="string"/>
36
            <param value="sec_role" type="string"/>
37
            <param key="role" type="map"/>
33
            <param value="sec_role_user_rel" type="string"/>
34
            <param key="role_user_rel" type="map"/>
38 35
            <param value="uppercase" type="string"/>
39 36
        </function>
40 37
    </behavior>
41 38
42
    <behavior id="updateRoleByCond" name="根据条件修改菜单信息">
39
    <behavior id="updateRoleUserRelByCond" name="根据条件修改菜单信息">
43 40
        <function domain="DB" name="updateByCond">
44 41
            <param value="auth" type="string"/>
45
            <param value="sec_role" type="string"/>
46
            <param key="role" type="map"/>
47
            <param key="role_cond" type="map"/>
42
            <param value="sec_role_user_rel" type="string"/>
43
            <param key="role_user_rel" type="map"/>
44
            <param key="role_user_rel_cond" type="map"/>
48 45
            <param value="uppercase" type="string"/>
49 46
        </function>
50 47
    </behavior>
51 48
    
52
    <behavior id="updateRole" name="修改菜单信息">
49
    <behavior id="updateRoleUserRel" name="修改菜单信息">
53 50
        <function domain="DB" name="update">
54 51
            <param value="auth" type="string"/>
55
            <param value="sec_role" type="string"/>
56
            <param key="role" type="map"/>
52
            <param value="sec_role_user_rel" type="string"/>
53
            <param key="role_user_rel" type="map"/>
57 54
            <param value="uppercase" type="string"/>
58 55
        </function>
59 56
    </behavior>
60 57
61
    <behavior id="deletetRole" name="删除菜单信息">
58
    <behavior id="deletetRoleUserRel" name="删除菜单信息">
62 59
        <function domain="DB" name="delete">
63 60
            <param value="auth" type="string"/>
64
            <param value="sec_role" type="string"/>
65
            <param key="role" type="map"/>
61
            <param value="sec_role_user_rel" type="string"/>
62
            <param key="role_user_rel" type="map"/>
66 63
            <param value="uppercase" type="string"/>
67 64
        </function>
68 65
    </behavior>

+ 78 - 0
qb-auth-server/src/main/resources/flow/role/role_delete.xml

@ -0,0 +1,78 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_delete"
3
            name="角色删除"
4
            desc="角色删除">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="selectRoleUserCount">
11
        <var key="role_id" model="sec_role" attr="role_id"/>
12
    </start>
13
14
    <action id="selectRoleUserCount" name="查询判断" next="roleUserCond">
15
        <input>
16
            <var key="role_id" />
17
        </input>
18
        <sql conn="auth">
19
            <![CDATA[
20
            select role_user_rel_id,role_id from sec_role_user_rel where role_id = ${role_id};
21
        ]]>
22
        </sql>
23
        <output>
24
            <var key="roleUsers"/>
25
        </output>
26
    </action>
27
28
    <action id="roleUserCond" name="判断菜单条件" next="deletePrivEntity">
29
        <input>
30
            <var key="roleUsers"/>
31
        </input>
32
        <if test="roleUsers.size>=1" interrupt="【${role_id}】存在关联用户无法删除!"/>
33
        <if test="roleUsers.size==0" next="deletePrivEntity"/>
34
    </action>
35
36
    <action id="deletePrivEntity" name="删除权限实体表关联数据" next="deleteRoleGrant">
37
        <input>
38
            <var key="role_id" />
39
        </input>
40
        <sql conn="auth">
41
            delete a
42
            from sec_priv_entity a 
43
            where exists (select 1 from sec_role_grant b 
44
            where b.priv_ent_id = a.priv_ent_id and b.role_id =  ${role_id} )
45
        </sql>
46
        <output>
47
            <var key="delete_priv_entity_num"/>
48
        </output>
49
    </action>
50
    
51
    <action id="deleteRoleGrant" name="删除角色权限" next="deleteRole">
52
        <input>
53
            <var key="role_id" />
54
        </input>
55
        <sql conn="auth">
56
            delete from sec_role_grant where role_id = ${role_id}
57
        </sql>
58
        <output>
59
            <var key="delete_role_grant_num"/>
60
        </output>
61
    </action>
62
    
63
    <action id="deleteRole" name="删除角色权限" next="end">
64
        <input>
65
            <var key="role_id" />
66
        </input>
67
        <sql conn="auth">
68
            delete from sec_role where role_id = ${role_id}
69
        </sql>
70
        <output>
71
            <var key="role_delete"/>
72
        </output>
73
    </action>
74
75
    <end id="end" name="结束节点">
76
        <var key="role_delete"/>
77
    </end>
78
</logic-flow>

+ 30 - 0
qb-auth-server/src/main/resources/flow/role/role_grant_delete.xml

@ -0,0 +1,30 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_grant_delete"
3
            name="角色删除"
4
            desc="角色删除">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role_grant"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="deleteRoleGrant">
11
        <var key="role_grant_id" model="sec_role_grant" attr="role_grant_id"/>
12
    </start>
13
14
    
15
    <action id="deleteRoleGrant" name="删除角色权限" next="end">
16
        <input>
17
            <var key="role_grant_id" />
18
        </input>
19
        <sql conn="auth">
20
            delete from sec_role_grant where role_grant_id = ${role_grant_id}
21
        </sql>
22
        <output>
23
            <var key="delete_num"/>
24
        </output>
25
    </action>
26
27
    <end id="end" name="结束节点">
28
        <var key="role_delete"/>
29
    </end>
30
</logic-flow>

+ 27 - 0
qb-auth-server/src/main/resources/flow/role/role_grant_select.xml

@ -0,0 +1,27 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_grant_select"
3
            name="角色查询"
4
            desc="角色查询">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role_grant"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="selectRoleGrant">
11
        <var key="role_grant" model="sec_role_grant" attrExists="false"/>
12
    </start>
13
14
    <action id="selectRoleGrant" name="查询角色" next="end">
15
        <input>
16
            <var key="role_grant" />
17
        </input>
18
        <behavior model="sec_role_grant" id="selectRoleGrant"/>
19
        <output>
20
            <var key="role_grant_info"/>
21
        </output>
22
    </action>
23
24
    <end id="end" name="结束节点">
25
        <var key="role_grant_info"/>
26
    </end>
27
</logic-flow>

+ 29 - 0
qb-auth-server/src/main/resources/flow/role/role_grant_update_by_cond.xml

@ -0,0 +1,29 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_grant_update_by_cond"
3
            name="角色修改"
4
            desc="角色修改">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role_grant"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="updateRoleGrantByCond">
11
        <var key="role_grant" model="sec_role_grant" attrExists="false"/>
12
        <var key="role_grant_cond" model="sec_role_grant" attrExists="false"/>
13
    </start>
14
15
    <action id="updateRoleGrantByCond" name="角色修改" next="end">
16
        <input>
17
            <var key="role_grant" />
18
            <var key="role_grant_cond" />
19
        </input>
20
        <behavior model="sec_role_grant" id="updateRoleGrantByCond"/>
21
        <output>
22
            <var key="update_num"/>
23
        </output>
24
    </action>
25
26
    <end id="end" name="结束节点">
27
        <var key="update_num"/>
28
    </end>
29
</logic-flow>

+ 27 - 0
qb-auth-server/src/main/resources/flow/role/role_insert.xml

@ -0,0 +1,27 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_insert"
3
            name="角色新增"
4
            desc="角色新增">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="insertRole">
11
        <var key="role" model="sec_role"  attrExists="false"/>
12
    </start>
13
14
    <action id="insertRole" name="新增菜单" next="end">
15
        <input>
16
            <var key="role"/>
17
        </input>
18
        <behavior model="sec_role" id="insertRole"/>
19
        <output>
20
            <var key="insert_num"/>
21
        </output>
22
    </action>
23
24
    <end id="end" name="结束节点">
25
        <var key="insert_num"/>
26
    </end>
27
</logic-flow>

+ 27 - 0
qb-auth-server/src/main/resources/flow/role/role_select.xml

@ -0,0 +1,27 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_select"
3
            name="角色查询"
4
            desc="角色查询">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="selectRole">
11
        <var key="role" model="sec_role" attrExists="false"/>
12
    </start>
13
14
    <action id="selectRole" name="查询角色" next="end">
15
        <input>
16
            <var key="role" />
17
        </input>
18
        <behavior model="sec_role" id="selectRole"/>
19
        <output>
20
            <var key="role_info"/>
21
        </output>
22
    </action>
23
24
    <end id="end" name="结束节点">
25
        <var key="role_info"/>
26
    </end>
27
</logic-flow>

+ 0 - 0
qb-auth-server/src/main/resources/flow/role/role_select_by_cond.xml


+ 0 - 0
qb-auth-server/src/main/resources/flow/role/role_select_by_id.xml


+ 0 - 0
qb-auth-server/src/main/resources/flow/role/role_update.xml


+ 29 - 0
qb-auth-server/src/main/resources/flow/role/role_update_by_cond.xml

@ -0,0 +1,29 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_update_by_cond"
3
            name="角色修改"
4
            desc="角色修改">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="updateRoleByCond">
11
        <var key="role" model="sec_role" attrExists="false"/>
12
        <var key="role_cond" model="sec_role" attrExists="false"/>
13
    </start>
14
15
    <action id="updateRoleByCond" name="角色修改" next="end">
16
        <input>
17
            <var key="role" />
18
            <var key="role_cond" />
19
        </input>
20
        <behavior model="sec_role" id="updateRoleByCond"/>
21
        <output>
22
            <var key="update_num"/>
23
        </output>
24
    </action>
25
26
    <end id="end" name="结束节点">
27
        <var key="update_num"/>
28
    </end>
29
</logic-flow>

+ 31 - 0
qb-auth-server/src/main/resources/flow/role/role_user_rel_delete_by_cond.xml

@ -0,0 +1,31 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_user_rel_delete_by_cond"
3
            name="删除组织下人员信息"
4
            desc="删除组织下人员信息">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role_user_rel"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="deleteRoleUserRelByUserId">
11
        <var key="user_id" model="sec_role_user_rel" attr="user_id"/>
12
        <var key="role_id" model="sec_role_user_rel" attr="role_id"/>
13
    </start>
14
15
    <action id="deleteRoleUserRelByUserId" name="删除组织下人员信息" next="end">
16
        <input>
17
            <var key="user_id" />
18
            <var key="role_id" />
19
        </input>
20
        <sql conn="auth">
21
            delete from sec_role_user_rel where user_id = ${user_id} and role_id = ${role_id}
22
        </sql>
23
        <output>
24
            <var key="result"/>
25
        </output>
26
    </action>
27
28
    <end id="end" name="结束节点">
29
        <var key="result"/>
30
    </end>
31
</logic-flow>

+ 27 - 0
qb-auth-server/src/main/resources/flow/role/role_user_rel_insert.xml

@ -0,0 +1,27 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_user_rel_insert"
3
            name="角色授权新增"
4
            desc="角色授权新增">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role_user_rel"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="insertRoleUserRel">
11
        <var key="role_user_rel" model="sec_role_user_rel" attrExists="false"/>
12
    </start>
13
14
    <action id="insertRoleUserRel" name="新增角色授权" next="end">
15
        <input>
16
            <var key="role_user_rel"/>
17
        </input>
18
        <behavior model="sec_role_user_rel" id="insertRoleUserRel"/>
19
        <output>
20
            <var key="insert_num"/>
21
        </output>
22
    </action>
23
24
    <end id="end" name="结束节点">
25
        <var key="insert_num"/>
26
    </end>
27
</logic-flow>

+ 44 - 0
qb-auth-server/src/main/resources/flow/role/role_user_rel_select_by_cond.xml

@ -0,0 +1,44 @@
1
<?xml version="1.0" encoding="UTF-8"?>
2
<logic-flow id="role_user_rel_select_by_cond"
3
            name="菜单查询"
4
            desc="菜单查询">
5
    <declare>
6
        <!-- 引入model定义 -->
7
        <import model="sec_role_user_rel"/>
8
    </declare>
9
10
    <start id="start" name="开始节点" next="selectUser">
11
        <var key="user_id" model="sec_role_user_rel" attr="user_id"/>
12
    </start>
13
14
    <action id="selectUser" name="查询用户" next="selectRole">
15
        <input>
16
            <var key="user_id" />
17
        </input>
18
        <sql conn="auth">
19
            select * from sec_user where user_id = ${user_id}
20
        </sql>
21
        <output>
22
            <var key="user_info"/>
23
        </output>
24
    </action>
25
    
26
    <action id="selectRole" name="查询用户" next="end">
27
        <input>
28
            <var key="user_id" />
29
        </input>
30
        <sql conn="auth">
31
            SELECT c.* from sec_user a, sec_role_user_rel b, sec_role c
32
            where a.user_id = b.user_id and b.role_id = c.role_id 
33
            and a.user_id = ${user_id}
34
        </sql>
35
        <output>
36
            <var key="role_info"/>
37
        </output>
38
    </action>
39
40
    <end id="end" name="结束节点">
41
        <var key="user_info"/>
42
        <var key="role_info"/>
43
    </end>
44
</logic-flow>

+ 25 - 7
qb-auth-server/src/test/java/com/ipu/logicflow/server/MenuTest.java

@ -30,13 +30,15 @@ public class MenuTest {
30 30
            param.put("menu", new JSONObject(myMenu));
31 31
            result = LogicFlowEngine.execute("menu_insert", param);
32 32
            System.out.println("执行结果:" + result);
33
            Assert.assertEquals("新增菜单信息成功!", result.getInt("insert_num"), 1);
33 34
            
34 35
            JSONObject menu = new JSONObject();
35 36
            menu.put("menu_id", myMenu.get("menu_id"));
36 37
            param.put("menu", menu);
37 38
            result = LogicFlowEngine.execute("menu_select", param);
38 39
            System.out.println("执行结果:" + result);
39
            Assert.assertEquals("新增菜单信息成功!", result.getInt("insert_num"), 1);
40
            Assert.assertNotNull(result.get("menu_info"));
41
            
40 42
        } catch (Exception e) {
41 43
            System.out.println("错误信息:" + e.getMessage());
42 44
            Assert.assertTrue(false);
@ -44,14 +46,14 @@ public class MenuTest {
44 46
    }
45 47
46 48
    @Test
47
    public void testDeleteMenu(){
49
    public void testDeleteMenuByCond(){
48 50
        JMap result = null;
49 51
        try {
50 52
            JMap param = new JsonMap();
51 53
            param.put("menu_id", 613901);
52
            result = LogicFlowEngine.execute("menu_delete", param);
54
            result = LogicFlowEngine.execute("menu_delete_by_cond", param);
53 55
            System.out.println("执行结果:" + result);
54
            Assert.assertEquals("删除菜单信息失败!", result.getInt("delete_num"), 1);
56
            Assert.assertTrue(true);
55 57
        } catch (Exception e) {
56 58
            System.out.println("错误信息:" + e.getMessage());
57 59
            Assert.assertTrue(false);
@ -76,6 +78,21 @@ public class MenuTest {
76 78
    }
77 79
    
78 80
    @Test
81
    public void testSelectAggregateMenu() {
82
        JMap param = new JsonMap();
83
        param.put("role_id", 284247);
84
        try{
85
            JMap result = LogicFlowEngine.execute("aggregate_menu_select", param);
86
            System.out.println("执行结果:" + result);
87
            Assert.assertTrue(true);
88
        }catch (Exception e){
89
            e.printStackTrace();
90
            System.out.println("错误信息:" + e.getMessage());
91
            Assert.assertTrue(false);
92
        }
93
    }
94
    
95
    @Test
79 96
    public void testUpdateMenuByCond(){
80 97
        String menu_id = "613901";
81 98
        JSONObject menu_cond = new JSONObject();
@ -104,8 +121,8 @@ public class MenuTest {
104 121
    @Before
105 122
    public void before() throws IOException {
106 123
        String[] models = {
107
                "flow/menu/model/sec_menu.xml"
108
        		,
124
                "flow/menu/model/sec_menu.xml",
125
                "flow/role/model/sec_role.xml",
109 126
                "flow/menu/model/sec_priv_entity.xml"
110 127
        };
111 128
        LogicFlowUtil.loadLogicModels(models);
@ -113,8 +130,9 @@ public class MenuTest {
113 130
        String[] flows = {
114 131
                "flow/menu/menu_insert.xml",
115 132
                "flow/menu/menu_select.xml",
133
                "flow/menu/aggregate_menu_select.xml",
116 134
                "flow/menu/menu_update_by_cond.xml",
117
                "flow/menu/menu_delete.xml"
135
                "flow/menu/menu_delete_by_cond.xml"
118 136
        };
119 137
120 138
        LogicFlowUtil.loadLogicFlows(flows);

+ 81 - 2
qb-auth-server/src/test/java/com/ipu/logicflow/server/PrivEntityTest.java

@ -35,16 +35,95 @@ public class PrivEntityTest {
35 35
            Assert.assertTrue(false);
36 36
        }
37 37
    }
38
    
39
    @Test
40
    public void testSelectAggregatePrivEntity() {
41
        JMap param = new JsonMap();
42
        param.put("priv_ent_id", 2);
43
        try{
44
            JMap result = LogicFlowEngine.execute("aggregate_priv_entity_select", param);
45
            System.out.println("执行结果:" + result);
46
            Assert.assertTrue(true);
47
        }catch (Exception e){
48
            e.printStackTrace();
49
            System.out.println("错误信息:" + e.getMessage());
50
            Assert.assertTrue(false);
51
        }
52
    }
53
    
54
    @Test
55
    public void testUpdatePrivEntityByCond(){
56
        String priv_ent_id = "2";
57
        JSONObject priv_entity_cond = new JSONObject();
58
        priv_entity_cond.put("priv_ent_id", priv_ent_id);
59
60
        JSONObject priv_entity = new JSONObject();
61
        priv_entity.put("priv_ent_code", "1");
62
        priv_entity.put("priv_ent_name", "管理员菜单");
38 63
64
        JMap param = new JsonMap();
65
        param.put("priv_entity_cond", priv_entity_cond);
66
        param.put("priv_entity", priv_entity);
67
        try{
68
            JMap result = LogicFlowEngine.execute("priv_entity_update_by_cond", param);
69
            System.out.println("执行结果:" + result);
70
            Assert.assertTrue(true);
71
72
        }catch (Exception e){
73
            e.printStackTrace();
74
            System.out.println("错误信息:" + e.getMessage());
75
            Assert.assertTrue(false);
76
        }
77
    }
78
    
79
    @Test
80
    public void testUpdatePrivEntityMenuByCond(){
81
        String priv_ent_id = "2";
82
83
        JMap param = new JsonMap();
84
        param.put("priv_ent_id", priv_ent_id);
85
        param.put("busi_obj_id", 309238);
86
        try{
87
            JMap result = LogicFlowEngine.execute("priv_entity_update_menu_by_cond", param);
88
            System.out.println("执行结果:" + result);
89
            Assert.assertTrue(true);
90
91
        }catch (Exception e){
92
            e.printStackTrace();
93
            System.out.println("错误信息:" + e.getMessage());
94
            Assert.assertTrue(false);
95
        }
96
    }
97
    
98
    @Test
99
    public void testDeletePrivEntity() {
100
        JMap param = new JsonMap();
101
        param.put("priv_ent_id", 1);
102
        try{
103
            JMap result = LogicFlowEngine.execute("priv_entity_delete", param);
104
            System.out.println("执行结果:" + result);
105
            Assert.assertTrue(true);
106
        }catch (Exception e){
107
            e.printStackTrace();
108
            System.out.println("错误信息:" + e.getMessage());
109
            Assert.assertTrue(false);
110
        }
111
    }
112
    
39 113
    @Before
40 114
    public void before() throws IOException {
41 115
        String[] models = {
42
                "flow/menu/model/sec_priv_entity.xml"
116
                "flow/menu/model/sec_priv_entity.xml",
117
                "flow/menu/model/sec_menu.xml"
43 118
        };
44 119
        LogicFlowUtil.loadLogicModels(models);
45 120
46 121
        String[] flows = {
47 122
                "flow/menu/priv_entity_insert.xml",
123
                "flow/menu/aggregate_priv_entity_select.xml",
124
                "flow/menu/priv_entity_update_by_cond.xml",
125
                "flow/menu/priv_entity_update_menu_by_cond.xml",
126
                "flow/menu/priv_entity_delete.xml"
48 127
        };
49 128
50 129
        LogicFlowUtil.loadLogicFlows(flows);
@ -55,7 +134,7 @@ public class PrivEntityTest {
55 134
        JMap param = new JsonMap();
56 135
        param.put("priv_ent_id", priv_ent_id);
57 136
        param.put("priv_ent_name", "角色关联菜单范例");
58
        param.put("busi_obj_id", "4");
137
        param.put("busi_obj_id", 414544);
59 138
        param.put("busi_obj_type", "1");
60 139
        param.put("data_status", "1");
61 140
        param.put("create_date", new InitialMethod().getDatetime());

+ 63 - 2
qb-auth-server/src/test/java/com/ipu/logicflow/server/RoleGrantTest.java

@ -35,7 +35,65 @@ public class RoleGrantTest {
35 35
            Assert.assertTrue(false);
36 36
        }
37 37
    }
38
    
39
    @Test
40
    public void testDeleteRoleGrant(){
41
        JMap result = null;
42
        try {
43
            JMap param = new JsonMap();
44
            param.put("role_grant_id", 1);
45
            result = LogicFlowEngine.execute("role_grant_delete", param);
46
            System.out.println("执行结果:" + result);
47
            Assert.assertTrue(true);
48
        } catch (Exception e) {
49
            System.out.println("错误信息:" + e.getMessage());
50
            Assert.assertTrue(false);
51
        }
52
    }
53
54
    @Test
55
    public void testUpdateRoleGrantByCond(){
56
        String role_grant_id = "2";
57
        JSONObject role_grant_cond = new JSONObject();
58
        role_grant_cond.put("role_grant_id", role_grant_id);
59
60
        JSONObject role_grant = new JSONObject();
61
        role_grant.put("role_id", 284247);
62
        role_grant.put("priv_ent_id", 2);
38 63
64
        JMap param = new JsonMap();
65
        param.put("role_grant_cond", role_grant_cond);
66
        param.put("role_grant", role_grant);
67
        try{
68
            JMap result = LogicFlowEngine.execute("role_grant_update_by_cond", param);
69
            System.out.println("执行结果:" + result);
70
            Assert.assertTrue(true);
71
72
        }catch (Exception e){
73
            e.printStackTrace();
74
            System.out.println("错误信息:" + e.getMessage());
75
            Assert.assertTrue(false);
76
        }
77
    }
78
    
79
    @Test
80
    public void testSelectRoleGrant() {
81
        JMap param = new JsonMap();
82
        JSONObject role_grant = new JSONObject();
83
        role_grant.put("role_grant_id", 2);
84
        param.put("role_grant", role_grant);
85
        try{
86
        	
87
            JMap result = LogicFlowEngine.execute("role_grant_select", param);
88
            System.out.println("执行结果:" + result);
89
            Assert.assertNotNull(result.get("role_grant_info"));
90
        }catch (Exception e){
91
            e.printStackTrace();
92
            System.out.println("错误信息:" + e.getMessage());
93
            Assert.assertTrue(false);
94
        }
95
    }
96
    
39 97
    @Before
40 98
    public void before() throws IOException {
41 99
        String[] models = {
@ -45,6 +103,9 @@ public class RoleGrantTest {
45 103
46 104
        String[] flows = {
47 105
                "flow/role/role_grant_insert.xml",
106
                "flow/role/role_grant_select.xml",
107
                "flow/role/role_grant_update_by_cond.xml",
108
                "flow/role/role_grant_delete.xml"
48 109
        };
49 110
50 111
        LogicFlowUtil.loadLogicFlows(flows);
@ -54,8 +115,8 @@ public class RoleGrantTest {
54 115
        String role_grant_id = String.valueOf(System.currentTimeMillis()).substring(7);
55 116
        JMap menuParam = new JsonMap();
56 117
        menuParam.put("role_grant_id", role_grant_id);
57
        menuParam.put("role_id", "1");
58
        menuParam.put("priv_ent_id", "2");
118
        menuParam.put("role_id", 284247);
119
        menuParam.put("priv_ent_id", 414544);
59 120
        menuParam.put("valid_date", new InitialMethod().getDatetime());
60 121
        menuParam.put("data_status", "1");
61 122
        menuParam.put("create_date", new InitialMethod().getDatetime());

+ 184 - 0
qb-auth-server/src/test/java/com/ipu/logicflow/server/RoleTest.java

@ -0,0 +1,184 @@
1
package com.ipu.logicflow.server;
2
3
import com.ai.ipu.data.JMap;
4
import com.ai.ipu.data.impl.JsonMap;
5
import com.alibaba.fastjson.JSONObject;
6
import com.nuosi.flow.logic.LogicFlowEngine;
7
import com.nuosi.flow.logic.inject.initial.InitialMethod;
8
import com.nuosi.flow.util.LogicFlowUtil;
9
import org.junit.Assert;
10
import org.junit.Before;
11
import org.junit.Test;
12
13
import java.io.IOException;
14
15
/**
16
 * <p>desc: 角色对象逻辑的测试 </p>
17
 * <p>date: 2022/6/20 9:10 </p>
18
19
 */
20
public class RoleTest {
21
22
    @Test
23
    public void testInsertRole(){
24
        JMap result = null;
25
        try {
26
            JMap param = new JsonMap();
27
            JMap myRole = createRole();
28
            param.put("role", new JSONObject(myRole));
29
            result = LogicFlowEngine.execute("role_insert", param);
30
            System.out.println("执行结果:" + result);
31
            
32
            JSONObject role = new JSONObject();
33
            role.put("role_id", myRole.get("role_id"));
34
            param.put("role", role);
35
            result = LogicFlowEngine.execute("role_select", param);
36
            System.out.println("执行结果:" + result);
37
            Assert.assertNotNull(result.get("role_info"));
38
        } catch (Exception e) {
39
            System.out.println("错误信息:" + e.getMessage());
40
            Assert.assertTrue(false);
41
        }
42
    }
43
44
    @Test
45
    public void testDeleteRole(){
46
        JMap result = null;
47
        try {
48
            JMap param = new JsonMap();
49
            param.put("role_id", 284247);
50
            result = LogicFlowEngine.execute("role_delete", param);
51
            System.out.println("执行结果:" + result);
52
            Assert.assertEquals("删除角色信息失败!", result.getInt("role_delete"), 1);
53
        } catch (Exception e) {
54
            System.out.println("错误信息:" + e.getMessage());
55
            Assert.assertTrue(false);
56
        }
57
    }
58
59
    @Test
60
    public void testSelectRole() {
61
        JMap param = new JsonMap();
62
        JSONObject role = new JSONObject();
63
        role.put("role_id", "284247");
64
        param.put("role", role);
65
        try{
66
        	
67
            JMap result = LogicFlowEngine.execute("role_select", param);
68
            System.out.println("执行结果:" + result);
69
            Assert.assertNotNull(result.get("role_info"));
70
        }catch (Exception e){
71
            e.printStackTrace();
72
            System.out.println("错误信息:" + e.getMessage());
73
            Assert.assertTrue(false);
74
        }
75
    }
76
    
77
    @Test
78
    public void testUpdateRoleByCond(){
79
        String role_id = "284247";
80
        JSONObject role_cond = new JSONObject();
81
        role_cond.put("role_id", role_id);
82
83
        JSONObject role = new JSONObject();
84
        role.put("ROLE_NAME", "嘉信立恒管理员");
85
        
86
87
        JMap param = new JsonMap();
88
        param.put("role_cond", role_cond);
89
        param.put("role", role);
90
        try{
91
            JMap result = LogicFlowEngine.execute("role_update_by_cond", param);
92
            System.out.println("执行结果:" + result);
93
            Assert.assertTrue(true);
94
95
        }catch (Exception e){
96
            e.printStackTrace();
97
            System.out.println("错误信息:" + e.getMessage());
98
            Assert.assertTrue(false);
99
        }
100
    }
101
    
102
    @Test
103
    public void testEnableRole(){
104
        String role_id = "284247";
105
        JSONObject role_cond = new JSONObject();
106
        role_cond.put("role_id", role_id);
107
108
        JSONObject role = new JSONObject();
109
        role.put("data_status", "1");
110
        
111
112
        JMap param = new JsonMap();
113
        param.put("role_cond", role_cond);
114
        param.put("role", role);
115
        try{
116
            JMap result = LogicFlowEngine.execute("role_update_by_cond", param);
117
            System.out.println("执行结果:" + result);
118
            Assert.assertTrue(true);
119
120
        }catch (Exception e){
121
            e.printStackTrace();
122
            System.out.println("错误信息:" + e.getMessage());
123
            Assert.assertTrue(false);
124
        }
125
    }
126
    
127
    @Test
128
    public void testDisableRole(){
129
        String role_id = "284247";
130
        JSONObject role_cond = new JSONObject();
131
        role_cond.put("role_id", role_id);
132
133
        JSONObject role = new JSONObject();
134
        role.put("data_status", "0");
135
        
136
137
        JMap param = new JsonMap();
138
        param.put("role_cond", role_cond);
139
        param.put("role", role);
140
        try{
141
            JMap result = LogicFlowEngine.execute("role_update_by_cond", param);
142
            System.out.println("执行结果:" + result);
143
            Assert.assertTrue(true);
144
145
        }catch (Exception e){
146
            e.printStackTrace();
147
            System.out.println("错误信息:" + e.getMessage());
148
            Assert.assertTrue(false);
149
        }
150
    }
151
    
152
    @Before
153
    public void before() throws IOException {
154
        String[] models = {
155
                "flow/role/model/sec_role.xml"
156
157
        };
158
        LogicFlowUtil.loadLogicModels(models);
159
160
        String[] flows = {
161
                "flow/role/role_insert.xml",
162
                "flow/role/role_select.xml",
163
                "flow/role/role_update_by_cond.xml",
164
                "flow/role/role_delete.xml"
165
        };
166
167
        LogicFlowUtil.loadLogicFlows(flows);
168
    }
169
170
    private JMap createRole() throws Exception {
171
        String role_id = String.valueOf(System.currentTimeMillis()).substring(7);
172
        JMap roleParam = new JsonMap();
173
        roleParam.put("role_id", role_id);
174
        roleParam.put("job_id", "1");
175
        roleParam.put("role_type", "2");
176
        roleParam.put("role_name", "系统管理");
177
        roleParam.put("role_level", "1");
178
        roleParam.put("data_status", "1");
179
        roleParam.put("create_date", new InitialMethod().getDatetime());
180
        roleParam.put("done_date", new InitialMethod().getDatetime());
181
        roleParam.put("op_id", "1");
182
        return roleParam;
183
    }
184
}

+ 107 - 0
qb-auth-server/src/test/java/com/ipu/logicflow/server/RoleUserRelTest.java

@ -0,0 +1,107 @@
1
package com.ipu.logicflow.server;
2
3
import com.ai.ipu.data.JMap;
4
import com.ai.ipu.data.impl.JsonMap;
5
import com.alibaba.fastjson.JSONObject;
6
import com.nuosi.flow.logic.LogicFlowEngine;
7
import com.nuosi.flow.logic.inject.initial.InitialMethod;
8
import com.nuosi.flow.util.LogicFlowUtil;
9
import org.junit.Assert;
10
import org.junit.Before;
11
import org.junit.Test;
12
13
import java.io.IOException;
14
15
/**
16
 * <p>desc: 用户组织信息管理逻辑的测试 </p>
17
 * <p>date: 2022/6/24 09:58 </p>
18
 *
19
 * @author weihf@asiainfo.com
20
 * @version v1.0.0
21
 */
22
public class RoleUserRelTest {
23
24
    @Test
25
    public void testInsertRoleUserRel(){
26
        JMap result = null;
27
        try {
28
            JMap param = new JsonMap();
29
            param.put("role_user_rel", new JSONObject(createRoleUserRel()));
30
            result = LogicFlowEngine.execute("role_user_rel_insert", param);
31
            System.out.println("执行结果:" + result);
32
            Assert.assertEquals("新增组织下人员信息失败!", result.getInt("insert_num"), 1);
33
        } catch (Exception e) {
34
            System.out.println("错误信息:" + e.getMessage());
35
            Assert.assertTrue(false);
36
        }
37
    }
38
    
39
 
40
    
41
    @Test
42
    public void testSelectRoleUserRelByUserId() {
43
        JMap param = new JsonMap();
44
        param.put("user_id", 308075);
45
46
        try{
47
            JMap result = LogicFlowEngine.execute("role_user_rel_select_by_cond", param);
48
            System.out.println("执行结果:" + result);
49
            Assert.assertTrue(true);
50
        }catch (Exception e){
51
            e.printStackTrace();
52
            System.out.println("错误信息:" + e.getMessage());
53
            Assert.assertTrue(false);
54
        }
55
    }
56
    
57
 
58
    
59
    @Test
60
    public void testDeleteRoleUserRelByCond(){
61
    	JMap param = new JsonMap();
62
        param.put("role_id", 284247);
63
        param.put("user_id", 308075);
64
        JMap result = null;
65
        try {
66
            
67
            result = LogicFlowEngine.execute("role_user_rel_delete_by_cond", param);
68
            System.out.println("执行结果:" + result);
69
            Assert.assertTrue(true);
70
        } catch (Exception e) {
71
            System.out.println("错误信息:" + e.getMessage());
72
            Assert.assertTrue(false);
73
        }
74
    }
75
    
76
77
    @Before
78
    public void before() throws IOException {
79
        String[] models = {
80
                "flow/role/model/sec_role_user_rel.xml"
81
        };
82
        LogicFlowUtil.loadLogicModels(models);
83
84
        String[] flows = {
85
                "flow/role/role_user_rel_insert.xml",
86
                "flow/role/role_user_rel_select_by_cond.xml",
87
                "flow/role/role_user_rel_delete_by_cond.xml"
88
        };
89
90
        LogicFlowUtil.loadLogicFlows(flows);
91
    }
92
93
    private JMap createRoleUserRel() throws Exception {
94
        String role_user_rel_id = String.valueOf(System.currentTimeMillis()).substring(7);
95
        JMap menuParam = new JsonMap();
96
        menuParam.put("role_user_rel_id", role_user_rel_id);
97
        menuParam.put("ROLE_ID", "284247");
98
        menuParam.put("USER_ID", "308075");
99
        menuParam.put("DATA_STATUS", "1");      
100
        menuParam.put("CREATE_DATE", new InitialMethod().getDatetime());
101
        menuParam.put("CREATE_OP_ID", "1");
102
        menuParam.put("DONE_DATE", new InitialMethod().getDatetime());
103
        menuParam.put("OP_ID", "1");
104
105
        return menuParam;
106
    }
107
}