ソースを参照

日期区间选择90天限制,终止时间不能早于起始时间

Luolei 6 年 前
コミット
79222b13a7
1 ファイル変更29 行追加6 行削除
  1. 29 6
      src/components/TimeInterval/index.jsx

+ 29 - 6
src/components/TimeInterval/index.jsx

@@ -1,8 +1,9 @@
 import React from "react";
 import style from "./index.less";
 import $ from "jquery";
-import { Calendar } from '@commonComp';
+import { Calendar,Notify } from '@commonComp';
 import { getCalendarDate, getCurrentDate } from "@utils/tools";
+
 /**
  * top  定位距离
  * sure 是否显示确认按钮
@@ -58,20 +59,42 @@ class TimeInterval extends React.Component {
   timeSure(date) {
     const { getStartTime, getEndTime } = this.props;
     if (this.state.flg == 1) {
+      let time = getCalendarDate(date, true);
+      let dateBegin = (new Date(time)).getTime()
+      let dateEnd = (new Date(this.state.endTime)).getTime()
+      let dateDes = (dateEnd - dateBegin)/(24 * 3600 * 1000)
+      if(dateEnd < dateBegin){
+        Notify.info("终止时间不能早于起始时间");
+        return
+      }else if(dateDes>90){
+        Notify.info("只能搜索最近90天的数据");
+        return
+      }
       this.setState({
         show: false,
-        startTime: getCalendarDate(date, true),//页面显示的时间
+        startTime: time,//页面显示的时间
         timeLisStart: date//事件组件的日期
       })
-      
-      getStartTime(getCalendarDate(date, true))
+      getStartTime(time)
+
     } else if (this.state.flg == 2) {
+      let time = getCalendarDate(date, true);
+      let dateBegin = (new Date(this.state.startTime)).getTime()
+      let dateEnd = (new Date(time)).getTime()
+      let dateDes = (dateEnd - dateBegin)/(24 * 3600 * 1000)
+      if(dateEnd < dateBegin){
+        Notify.info("终止时间不能早于起始时间");
+        return
+      }else if(dateDes>90){
+        Notify.info("只能搜索最近90天的数据");
+        return
+      }
       this.setState({
         show: false,
-        endTime: getCalendarDate(date, true),
+        endTime: time,
         timeLisEnd: date
       })
-      getEndTime(getCalendarDate(date, true))
+      getEndTime(time)
     }
   }
   handleShowTime(flg) {