zoukankan      html  css  js  c++  java
  • 记一次前端中国标准时间转换为yyyy-MM-dd类型

    记一次前端中国标准时间转换为yyyy-MM-dd类型

    最新在工作中遇到一个常见的需求,按照时间区间进行查询。这里使用的是Elementui模板,但是获取过后的时间是一个中国标准时间并不是想要的yyyy-MM-dd类型,时间类型如下:

    我的js处理如下:

    let searchDjmObj = _self.searchDjm;
          let searchPmsjObj= _self.searchPmsj;
          let startTime = '';
          let endTime = '';
          // 因为split是分割string类型的,所以如果不是string类型要先转换
          if(searchPmsjObj != '' && searchPmsjObj != null) {
            if(typeof searchPmsjObj != 'string') {
            searchPmsjObj = searchPmsjObj.toString();
          }
          // 分割出来开始时间和结束时间,一个数组
          var result = searchPmsjObj.split(",");
          // 获取开始时间
          let startDate = result[0];
          // 获取结束时间
          let endDate = result[1];
          // 将string类型时间转换为date类型,因为只有时间类型才可以使用getFullyear,getMonth等
          let startDateTemp = new Date(startDate);
          // 将string类型时间转换为date类型,因为只有时间类型才可以使用getFullyear,getMonth等
          let endDateTemp = new Date(endDate);
          console.log(startDateTemp);
          console.log(endDateTemp);
          // 将剥离的时间年转换为string
          let yyyys = startDateTemp.getFullYear().toString();
          // 将剥离的时间月转换为string
          let months = (startDateTemp.getMonth() + 1).toString();
          // 将剥离的时间日转换为string
          let days = startDateTemp.getDate().toString();
          // 判断月和日是否是小于10,小于10的补0
          startTime = yyyys +"-"+(months[1]?months:"0" + months[0]) + "-" + (days[1] ? days:"0"+days[0]);
          let yyyye = endDateTemp.getFullYear().toString();
          let monthe = (endDateTemp.getMonth() + 1).toString();
          let daye = endDateTemp.getDate().toString();
          endTime = yyyye +"-"+(monthe[1]?monthe:"0" + monthe[0]) + "-" + (daye[1] ? daye:"0"+daye[0]);
    

    那么后台接收就可以使用String了

    相对应的sql编写就可以是:

      <select id="getDjmInfo" parameterType="String" resultMap="BaseResultMap">
        select t.djm,s.* from ymgd.t_djm s left join sde.st_djmdk t on s.bsm = t.xmbsm
        where 1=1
        <if test="null != djm and '' != djm">
          and ((t.djm like  concat(concat('%',#{djm}),'%')) or  (s.dkmc like  concat(concat('%',#{djm}),'%')) or (s.pmjg like  concat(concat('%',#{djm}),'%')))
        </if>
        <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
          and (to_char(s.pmsj,'yyyy-MM-dd') between #{startTime} and #{endTime})
        </if>
        order by s.pmsj desc
      </select>
    

    注意这里要使用#来获取变量不能使用$!

    参考链接:
    https://www.cnblogs.com/gudi/p/8031219.html
    
  • 相关阅读:
    黄聪: PHP WkHtmlToPdf/WkHtmlToImage 将网页直接转换成pdf和图片
    黄聪:PHP页面跳转如何实现延时跳转
    黄聪:wkhtmltopdf解决分页问题
    黄聪:wkhtmtopdf--高分辨率HTML转PDF
    黄聪:Wordpress二级域名共享用户cookie出现错误解决方案及WP的Cookie机制
    黄聪:wordpress向一个页面POST数据,出现404页面访问不了
    黄聪:PHP解决textarea内容换行存入数据库,如何解析取出不能自动换行
    黄聪:PHP7.0中htmlspecialchars出错解决方案(wordpress)
    黄聪:WordPress: 使用 wp_insert_attachment 上传附件
    黄聪: 50 个 Bootstrap 插件
  • 原文地址:https://www.cnblogs.com/clover-forever/p/13542042.html
Copyright © 2011-2022 走看看