控件类型
积木报表填报功能提供20种控件类型,可满足用户基本使用
1. 单选框、多选框、下拉选择
效果展示
选项设置方式
- 设置选项有三种方式:静态数据源、数据字典、Api
- 静态数据源:可直接添加选项
- 数据字典:选择数据字典,可选择系统维护的数据字典
- Api:填写Api地址
例:http://api.jeecg.com/mock/26/option_api
Api 返回格式:
[{
"text": "群众",
"value": 0
},{
"text": "团员",
"value": 1
},{
"text": "党员",
"value": 2
}]
2. 下拉树
效果展示
选项设置方式
- 下拉树选项支持api方式,支持多选
例:http://api.jeecg.com/mock/26/tree_api
- api返回格式
{
"data": [
{
"izLeaf": 0,
"id": "1",
"parentId": "",
"departName": "积木报表团队"
}
],
"total":null
}
3. 组织角色
效果展示
选项设置方式
方式一:api方式获取选项数据**
- 组织角色选项支持api方式,支持多选
例:http://api.jeecg.com/mock/26/role_api
- api返回格式
{
"total": 11,
"data": [
{
"roleName": "CEO0",
"id": 0
},
{
"roleName": "CEO1",
"id": 1
},
{
"roleName": "CEO2",
"id": 2
},
{
"roleName": "CEO3",
"id": 3
},
{
"roleName": "CEO4",
"id": 4
},
{
"roleName": "CEO5",
"id": 5
},
{
"roleName": "CEO6",
"id": 6
},
{
"roleName": "CEO7",
"id": 7
},
{
"roleName": "CEO8",
"id": 8
},
{
"roleName": "CEO9",
"id": 9
}
]
}
方式二:java增强方式获取选项数据
支持版本:v1.8.2+ | 2024-09-12
可以编写自定义的java实现,来确保在不填写api地址时,仍然能获取到正确的角色数据。

编写java
类,实现JmFormOptionsServiceI
接口,并且重写getRoleList
方法,在getRoleList
方法中编写具体的角色查询的代码,返回OptionsResult<RoleOptionsVO>
格式的数据
代码示例:
package com.jeecg.modules.jmreport.submit;
import org.jeecg.modules.jmreport.api.JmFormOptionsServiceI;
import org.jeecg.modules.jmreport.api.vo.OptionsResult;
import org.jeecg.modules.jmreport.api.vo.RoleOptionsVO;
import java.util.ArrayList;
import java.util.List;
/**
* 自定义选项数据获取实现类
* @Author: chenrui
* @Date: 2024/9/12 19:33
*/
@Service("jmFormOptionsService")
public class CustomFormOpsGetServiceImpl implements JmFormOptionsServiceI {
/**
* 获取角色选项列表
*
* @param roleName 角色名称
* @param pageNo 页码
* @param pageSize 每页数量
* @param ids 通过id集合查询
* @param queryAll 是否查询全部
* @return
*/
@Override
public OptionsResult<RoleOptionsVO> getRoleList(String roleName, Integer pageNo, Integer pageSize, String ids, Boolean queryAll) {
// TODO author: chenrui for:获取角色的具体实现代码 date:2024/9/12
/* 以下仅为示例代码,请自行编写自己的业务实现! */
List<RoleOptionsVO> list = new ArrayList<>();
for (int i = 0; i < 12; i++) {
RoleOptionsVO role = new RoleOptionsVO();
role.setId(i+"");
role.setRoleName("CEO" + i);
list.add(role);
}
OptionsResult<RoleOptionsVO> resp = new OptionsResult<>();
resp.setData(list);
resp.setTotal(11);
return resp;
}
}
4. 部门组件
效果展示
选项设置方式
方式一:api方式获取选项数据
- 部门组件选项支持api方式,支持多选
例:http://api.jeecg.com/mock/26/dept_api
- api返回格式
{
"data": [
{
"izLeaf": 0,
"id": "1",
"parentId": "",
"departName": "积木报表团队"
}
]
}
方式二:java增强方式获取选项数据
支持版本:v1.8.2+ | 2024-09-12
可以编写自定义的java实现,来确保在不填写api地址时,仍然能获取到正确的部门数据。

编写java
类,实现JmFormOptionsServiceI
接口,并且重写getDepartmentList
方法,在getDepartmentList
方法中编写具体的角色查询的代码,返回OptionsResult<DeptOptionsVO>
格式的数据
代码示例:
package com.jeecg.modules.jmreport.submit;
import org.jeecg.modules.jmreport.api.JmFormOptionsServiceI;
import org.jeecg.modules.jmreport.api.vo.DeptOptionsVO;
import org.jeecg.modules.jmreport.api.vo.OptionsResult;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* 自定义选项数据获取实现类
* @Author: chenrui
* @Date: 2024/9/12 19:33
*/
@Service("jmFormOptionsService")
public class CustomFormOpsGetServiceImpl implements JmFormOptionsServiceI {
/**
* 获取部门选项列表
*
* @param departName 部门名称
* @param parentId 父id
* @param ids 部门id集合
* @return
*/
@Override
public OptionsResult<DeptOptionsVO> getDepartmentList(String departName, String parentId, String ids) {
// TODO author: chenrui for:获取角色的具体实现代码 date:2024/9/12
/* 以下仅为示例代码,请自行编写自己的业务实现! */
List<DeptOptionsVO> list = new ArrayList<>();
DeptOptionsVO dept = new DeptOptionsVO();
dept.setId("1");
dept.setDepartName("积木报表团队");
dept.setParentId("");
dept.setIzLeaf(0);
//封装子级
List<DeptOptionsVO> children = new ArrayList<>();
DeptOptionsVO child = new DeptOptionsVO();
child.setId("2");
child.setDepartName("研发部");
child.setParentId("1");
child.setIzLeaf(1);
children.add(child);
//将子级作为一个children给父级
dept.setChildren(children);
list.add(dept);
OptionsResult<DeptOptionsVO> resp = new OptionsResult<>();
resp.setData(list);
return resp;
}
}
5. 用户组件
效果展示
选项设置方式
方式一:api方式获取选项数据
- 用户组件选项支持api方式,支持多选
例:http://api.jeecg.com/mock/26/user_api
- api返回格式
{
"total": 11,
"data": [
{
"avatar": "",
"id": 0,
"username": "admin0",
"realname": "管理员0"
},
{
"avatar": "",
"id": 1,
"username": "admin1",
"realname": "管理员1"
},
{
"avatar": "",
"id": 2,
"username": "admin2",
"realname": "管理员2"
},
{
"avatar": "",
"id": 3,
"username": "admin3",
"realname": "管理员3"
},
{
"avatar": "",
"id": 4,
"username": "admin4",
"realname": "管理员4"
},
{
"avatar": "",
"id": 5,
"username": "admin5",
"realname": "管理员5"
},
{
"avatar": "",
"id": 6,
"username": "admin6",
"realname": "管理员6"
},
{
"avatar": "",
"id": 7,
"username": "admin7",
"realname": "管理员7"
},
{
"avatar": "",
"id": 8,
"username": "admin8",
"realname": "管理员8"
},
{
"avatar": "",
"id": 9,
"username": "admin9",
"realname": "管理员9"
}
]
}
方式二:java增强方式获取选项数据
支持版本:v1.8.2+ | 2024-09-12
可以编写自定义的java实现,来确保在不填写api地址时,仍然能获取到正确的用户数据。

编写java
类,实现JmFormOptionsServiceI
接口,并且重写getUserList
方法,在getUserList
方法中编写具体的角色查询的代码,返回OptionsResult<UserOptionsVO>
格式的数据。
代码示例:
package com.jeecg.modules.jmreport.submit;
import org.jeecg.modules.jmreport.api.JmFormOptionsServiceI;
import org.jeecg.modules.jmreport.api.vo.OptionsResult;
import org.jeecg.modules.jmreport.api.vo.UserOptionsVO;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* 自定义选项数据获取实现类
* @Author: chenrui
* @Date: 2024/9/12 19:33
*/
@Service("jmFormOptionsService")
public class CustomFormOpsGetServiceImpl implements JmFormOptionsServiceI {
/**
* 获取用户选项列表
*
* @param username 用户名
* @param realname 真实姓名
* @param pageNo 页码
* @param pageSize 每页数量
* @param ids 通过id集合查询
* @param queryAll 是否查询全部
* @return
*/
@Override
public OptionsResult<UserOptionsVO> getUserList(String username, String realname, Integer pageNo, Integer pageSize, String ids, Boolean queryAll) {
// TODO author: chenrui for:获取角色的具体实现代码 date:2024/9/12
/* 以下仅为示例代码,请自行编写自己的业务实现! */
List<UserOptionsVO> list = new ArrayList<>();
for (int i = 0; i < 12; i++) {
UserOptionsVO user = new UserOptionsVO();
user.setUsername("admin" + i);
user.setAvatar("");
user.setRealname("管理员" + i);
user.setId(i+"");
list.add(user);
}
OptionsResult<UserOptionsVO> mapList = new OptionsResult<UserOptionsVO>();
mapList.setData(list);
mapList.setTotal(11);
return mapList;
}
}
6. 日期、日期时间
6.1 效果展示
6.2 日期配置
- ① 默认值:支持选择某一天作为默认值,或默认系统变量 点击查看系统变量
点击
图标,切换至输入模式,输入
#{sysDate}
即可
- ② 格式:支持yyyy-MM-dd、yyyy-MM、yyyy
- ③ 显示类型:支持年、年-月、年-月-日
6.3 日期时间配置
默认值:支持选择某一天作为默认值,或默认系统变量 点击查看系统变量
点击
图标,切换至输入模式,输入
#{sysDateTime}
即可。
7. 文本默认值
单行文本、多行文本可在默认值中填写系统变量#{sysUserCode}
获取当前登录人账号 点击查看系统变量