Element-ui 实现多个日期时间发范围查询

这篇具有很好参考价值的文章主要介绍了Element-ui 实现多个日期时间发范围查询。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、前端

<el-form-item label="生产时间">

            <el-date-picker

                v-model="dateProduct"

                style="width: 240px"

                value-format="yyyy-MM-dd"

                type="daterange"

                range-separator="-"

                start-placeholder="生产开始日期"

                end-placeholder="生产结束日期"

                :picker-options="pickerOptions"

            ></el-date-picker>

      </el-form-item>

      <el-form-item label="激活时间">

            <el-date-picker

                v-model="dateActivate"

                style="width: 240px"

                value-format="yyyy-MM-dd"

                type="daterange"

                range-separator="-"

                start-placeholder="激活开始日期"

                end-placeholder="激活结束日期"

                :picker-options="pickerOptions"

            ></el-date-picker>

      </el-form-item>

Element-ui 实现多个日期时间发范围查询,VUE,ui,vue.js,elementui

 

      // 别名  'CreateTime'  、'ProductTime'、'ActivateTime'

      let range=this.addDateRange(this.queryParams, this.dateRange,'CreateTime');

      range=this.addDateRange(this.queryParams, this.dateProduct,'ProductTime');

      range=this.addDateRange(this.queryParams, this.dateActivate,'ActivateTime');

------------------------------------------------------------------------------------------------------------------------

调用ruoyi.js的addDateRange方法,传递到后端参数名就会变成

beginActivateTime、endActivateTime

2、后端

接收参数:

参数:[{"params[beginActivateTime]":["2023-07-10"],"params[endCreateTime]":["2023-06-30"],"params[beginProductTime]":["2023-07-01"],"pageSize":["10"],"params[beginCreateTime]":["2023-06-01"],"params[endActivateTime]":["2023-07-14"],"params[endProductTime]":["2023-07-05"}]

解析参数:
Date beginTime = bo.getParams().get("beginCreateTime") == null ? null : DateUtils.dateTime("yyyy-MM-dd", String.valueOf(bo.getParams().get("beginCreateTime")));
Date endTime = bo.getParams().get("endCreateTime") == null ? null : DateUtils.dateTime("yyyy-MM-dd", String.valueOf(bo.getParams().get("endCreateTime")));

3、调用addDateRange

// 添加日期范围
params: 传递参数
dateRange:日期范围 是数组
propName: 别名 用于多个时间筛选场景
-----------------------------------------------------------------------------------------------------
export function addDateRange(params, dateRange, propName) {
  let search = params;
  search.params = typeof (search.params) === 'object' && search.params !== null && !Array.isArray(search.params) ? search.params : {};
  dateRange = Array.isArray(dateRange) ? dateRange : [];
  if (typeof (propName) === 'undefined') {
    search.params['beginTime'] = dateRange[0];
    search.params['endTime'] = dateRange[1];
  } else {
    search.params['begin' + propName] = dateRange[0];
    search.params['end' + propName] = dateRange[1];
  }
  return search;
}

按照以上步骤,就可以实现多个日期范围查询;


 文章来源地址https://www.toymoban.com/news/detail-516164.html

到了这里,关于Element-ui 实现多个日期时间发范围查询的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包