控件类型
积木报表填报功能提供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}获取当前登录人账号 点击查看系统变量