import React, { useEffect, useState, useRef, useMemo } from 'react' import { useLocation } from 'react-router' import { useDispatch, useSelector } from 'react-redux' import {Form, Input, DatePicker, Popover, Collapse , Button, message, Table, Col, Modal} from 'antd'; import { createCrudService } from '../../../components/crud/_'; import apiurl from '../../../service/apiurl'; import ModalForm from './information'; import { getTableData } from './service'; import moment from 'moment'; const { RangePicker } = DatePicker const Page = ({ setCtx }) => { const dispatch = useDispatch(); let mapObj = useSelector(s => s.map.map) const [index,setIndex] = useState(0) const [data,setData] = useState([]) const [projectId, setProjectId] = useState('') const [open, setOpen] = useState(false) const [name, setName] = useState('') const [tms,setTms] = useState([]) const listData = useMemo(()=>{ let list = [...data] if(name){ list = list.filter((i)=>i.name.indexOf(name)>-1) } if(tms&&tms.length>0){ list = list.filter((i)=>{ const stm = moment(tms[0]) const etm = moment(tms[1]) const tm = moment(i.updateTm) if(tm.isAfter(stm)&&etm.isAfter(tm)){ return true }else{ return false } }) } return list },[data,name,tms]) useEffect(() => { getData() }, []) const getData = async()=>{ const data = await getTableData() setData(data) } const openModal = (item)=>{ setOpen(true) setProjectId(item.id) } const closeModal = ()=>{ setOpen(false) setProjectId(null) } return ( <>
预报方案
setName(e.nativeEvent.target.value)}/> setTms(v)} value={tms} format='YYYY-MM-DD HH:mm' />
{ listData?.map((item,listIndex)=>( <>
setIndex(listIndex)} >
{(listIndex+1)+'.'+item.name}{ listIndex===index? openModal(item)}>方案配置: 方案配置 }
预报时段:
{item.startTm}至{item.endTm}
预报最高调洪水位(m):
{item.ycMaxSwH||'-'}
预报最大入库流量(m³/s):
{item.ycMaxRkQ||'-'}
预报最大下泄流量(m³/s):
{item.ycMaxCkQ||'-'}
预报洪水总量(万m³):
{item.ycSumFlood||'-'}
方案制作时间:
{item.updateTm}
)) }
) } export default Page