2、jeecg 笔记之 t:dictSelect 或 t:dgCol 自定义字典
1、需求
先说一下需求场景吧,我们知道 jeecg 中提供了下拉,其中包含两种使用场景;
一种是直接通过 t:dictSelect 使用,再就是 t:dgCol 用于表头的列表工具条标签;
总之就是这个样子

需求来了,我们想要下拉的数据有个排序,比如原来没有排序的

再来看一下数据字典表中的数据如下:

然后,我们希望通过 类型编码做一个 倒序的排序,最终的效果如下:

2、解决过程
首先通过查找资料了解到,下拉中有个 dictionary 属性,可以通过自定义字典实现效果,格式:表名,编码,显示文本;
但是想使用自定义字典需要结合 dictCondition(自定义字典表的显示文本-字典查询条件) 属性;
在 DataGridTag 类 559 行找到了,找到了字典查询条件 dictCondition 的使用

图片展示已经很明确了,就是一个 sql 的拼装,我们只需要能把 sql 写出来就完事了,如下图

SELECT a.typecode,a.typename FROM t_s_type a ,t_s_typegroup b WHERE a.typegroupid = b.id AND b.typegroupcode = 'mwo_work_order_status' ORDER BY typecode DESC
因为界面要用到编码以及显示文本,所以只需要 typecode、typename作为显示项。
我们再来看一下自定义字典的格式 【表名,编码,显示文本】
<t:dgCol title="啦啦啦" field="xxx" queryMode="single" query="true"
dictionary="t_s_type,a.typecode,a.typename"
dictCondition="a ,t_s_typegroup b WHERE a.typegroupid = b.id
AND b.typegroupcode = 'mwo_work_order_status' ORDER BY typecode DESC ">
</t:dgCol>
dictionary="t_s_type,a.typecode,a.typename" >>> 表名,编码,显示文本
dictCondition="a ,t_s_typegroup b WHERE a.typegroupid = b.id AND b.typegroupcode = 'mwo_work_order_status' ORDER BY typecode DESC "
最终拼接起来的 sql 如上边那段了。
再给一个参考:
<t:dictSelect field="mwoApplyDelayProcess" type="radio"
dictTable="t_s_type a ,t_s_typegroup b"
dictField="a.typecode,a.typename,a.typecode"
dictCondition="WHERE a.typegroupid = b.id AND b.typegroupcode = 'mwo_apply_delay_process' AND a.`typecode` IN (2,3)"
dictText="typename"
defaultVal="${myyWorkOrderPage.mwoApplyDelayProcess}" hasLabel="false" title="申请延期状态" datatype="*">
</t:dictSelect>
3、最后
这种实现方式是比较。。那啥的。。不喜勿喷,欢迎补充。
博客地址:http://www.cnblogs.com/niceyoo
18年专科毕业后,期间一度迷茫,最近我创建了一个公众号用来记录自己的成长

2、jeecg 笔记之 t:dictSelect 或 t:dgCol 自定义字典的更多相关文章
- Java基础笔记 – Annotation注解的介绍和使用 自定义注解
Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 | 被围观 25,969 views+ 1.Anno ...
- 11、jeecg 笔记之 界面常用整理 - 方便复制粘贴
1.datagrid 操作按钮(按钮样式) 操作按钮的显示主要依赖于 <t:dgCol title="操作" field="opt" ></ ...
- 8、jeecg 笔记之 自定义word 模板导出(一)
1.前言 jeecg 中已经自带 word 的导出导出功能,其所使用的也是 easypoi,尽管所导出的 word 能满足大部分需求, 但总是有需要用到自定义 word导出模板,下文所用到的皆是 ea ...
- 6、jeecg 笔记之 自定义excel 模板导出(一)
1.前言 jeecg 中已经自带 excel 的导出导出功能,其所使用的是 easypoi,尽管所导出的 excel 能满足大部分需求, 但总是有需要用到自定义 excel 导出模板,下文所用到的皆是 ...
- 4、jeecg 笔记之 自定义显示按钮 (exp 属性)
1.需求 先看一下需求吧,我们希望 datagrid 操作栏中的按钮,可以根据条件进行动态显示. 2.实现 其实 jeecg 提供了一个属性 - exp ,通过该属性即可实现. <t:dgFun ...
- 5、jeecg 笔记之 minidao 条件判断
1.前言 我们知道 mybatis 中的动态sql语句是基于 OGNL 表达式的. 额外补充一点:mybatis 中的 #{} 和 ${} ,可直接跳过. #{}表示一个占位符号,#{}接收输 ...
- 3、jeecg 笔记之 模糊查询
1.前言 jeecg 考虑到默认模糊查询的话,会增加系统压力,导致查询慢,本来系统就挺那啥的... 2.方式一之实体赋值 实体重新赋值查询,用 * %% * 实现,我们知道 sql 中通常使用 % 去 ...
- 1、jeecg 笔记开篇
1. 前言 终究还是入了 jeecg 的 "坑",国庆后公司采用该框架开发,故开篇记录. 虽说入"坑",但不得不承认 jeecg 确实是一个非常强大的平台. 其 ...
- UI标签库专题十一:JEECG智能开发平台 DictSelect (数据字典下拉选择框)
1. DictSelect (数据字典下拉选择框) 1.1. 參数 属性名 类型 描写叙述 是否必须 默认值 typeGroupCode string 字典分组编码 是 null field s ...
随机推荐
- web字体分析
一.衬线字体与非衬线字体 衬线体(serif)和无衬线体(sans-serif)的分类起源于英文字体界. 衬线体(serif)-Georgia-Times 「衬线」指的是字形笔画在首位的装饰和笔画的粗 ...
- Redis面试刁难大全
转自:https://mp.weixin.qq.com/s?__biz=MzI0MzQyMTYzOQ==&mid=2247483686&idx=1&sn=18dfa0fd08b ...
- IIS7设置将域名不带www跳转到带www上
很多朋友在IIS环境中搭建好网站后,习惯性将带www和不带www的域名都绑定到一个网站上,这样做虽然两个域名都能访问,但容易造成权重分散,从而导致网站权重降低.其实我们可以将访问不带www的域名自动跳 ...
- js实现根据文本下标位置添加特殊标识
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- css实现高度或者宽度不固定的div元素垂直左右居中
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- java.lang.UnsatisfiedLinkError: No implementation found for long org.opencv.core.Mat.n_Mat()
Android调试openCV4Android的时候出现以下错误 java.lang.UnsatisfiedLinkError: No implementation found for long or ...
- [转java发送http的get、post请求]
Http请求类 package wzh.Http; import java.io.BufferedReader; import java.io.IOException; import java.io. ...
- VSCode之快捷键和常用插件
前言 介绍一下我在VSCode中常用的一些快捷方式: ctrl+上下箭头 上下滚动页面 Ctrl+Shift+K 删除某一行 Alt+ ↑ / ↓ 移动某一行 Shift+Alt + ↓ / ↑ 复制 ...
- phpmyadmin 上传超过50m限制
sql文件太大(达到400m),导致无法正常导入.需要修改php,nginx的配置文件 php.ini配置 post_max_size = 500M upload_max_filesize = 500 ...
- git报错You are not allowed to force push code to a protected branch on this project
当我们有时候回滚了代码,想强制push到远程仓库的时候, git push origin --force 会报如下错误: You are not allowed to force push code ...