[TOC] ## 范围查询设置默认值 ### 1、数值默认值查询 - 效果展示 ![](https://img.kancloud.cn/ba/76/ba762c3c242d03ecb9c06b4149829cb2_1141x661.png) - 默认查询年龄在16-22岁之间的,中间用`|`表示,`16|22` ![](https://img.kancloud.cn/f9/b4/f9b4272523e8c478214c0e205503aafa_1901x912.png) ### 2、日期范围设置默认值 #### 2.1 非表达式默认值 - 效果展示 ![](https://img.kancloud.cn/c0/74/c074af7d8a6fb2545b19c5d045c0aa55_1242x805.png) - 日期查询2021年11月1日到2021年11月30日的数据 ![](https://img.kancloud.cn/ea/31/ea310c081e6cd472fce7da912a053cb2_1920x900.png) 默认值配置成:`2021-11-01|2021-11-30` #### 2.2 表达式默认值 - 效果展示 ![](https://img.kancloud.cn/e7/da/e7da0fc1dfb2629c8e7d8b759a18dc67_985x504.png) - 通过表达式设置默认,查询当月1号到今日的数据: ![](https://img.kancloud.cn/d5/80/d5805c88ea5a46f66905d58ee294637a_1915x832.png) 默认值配置成:`=concat(string.substring(dateStr('yyyy-MM-dd'),0, 8), '01')|=dateStr('yyyy-MM-dd')` 注意: 示例2和示例3本质上是一样的,传到后台的查询值都是日期字符串,**字符串**,所以sql执行的时候也是直接用这个字符串作的比较。 #### 2.3 查询N天前数据 - 效果展示 ![](https://img.kancloud.cn/4f/9c/4f9c996d01ef79078293e64860d4adcc_594x78.png) - 默认查询N天前数据,时间格式为:yyyy-MM-dd HH:mm:ss,例如:配置10天前的零点至当前时间 ![](https://img.kancloud.cn/12/e0/12e0c4311525bb0262735611d1574132_1916x894.png) 默认值配置:`=concat(dateStr('yyyy-MM-dd',-10),' 00:00:00')|=dateStr('yyyy-MM-dd HH:mm:ss')` 查询日期格式:`yyyy-MM-dd HH:mm:ss` 不填时默认为yyyy-MM-dd #### 2.4 查询近3个月数据 - 效果展示 ![](https://img.kancloud.cn/2d/7c/2d7cd65dbe8534b10811d6930b50b989_906x342.png) - 默认查询近3个月数据 ![](https://img.kancloud.cn/51/a4/51a4316be10c3dd4116e24b17e3606b1_1904x895.png) 默认值配置:`=concat(dateStr('yyyy',-1),'-', dateStr('MM', -3),'-',dateStr('dd'))|=dateStr('yyyy-MM-dd')` 日期格式:`yyyy-MM-dd` dateStr('MM', -3) 中负数为月份往前,正数为月份往后,年日同理 #### 2.5 查询当前月第一天和最后一天数据 通过JS增强动态赋值 [js增强专题](http://report.jeecg.com/2373408) * 字段设置日期范围查询,设置默认格式 ![](https://img.kancloud.cn/8e/90/8e90f6bdd5784faf8b2abb00c13e3d04_1782x148.png) * 设置js增强 ![](https://img.kancloud.cn/13/00/13001cdef30f9856aa1a1521db5a692e_1658x620.png) ``` function init(){ var date=new Date(); //获取当月第一天 date.setDate(1); var month = parseInt(date.getMonth() + 1); var day = date.getDate(); if (month < 10) { month = '0' + month } if (day < 10) { day = '0' + day } var start = date.getFullYear() + '-' + month + '-' + day; //获取当月最后一天 var currentMonth=date.getMonth(); var nextMonth=++currentMonth; var nextMonthFirstDay=new Date(date.getFullYear(),nextMonth,1); var oneDay=1000*60*60*24; var end = new Date(nextMonthFirstDay-oneDay) //赋值 this.updateSearchFormValue('dbCode', 'fieldName', start+'|'+end) } ```