import React, { useEffect, useState } from 'react' import { connect } from 'react-redux'; // import LeftTop from './Lefttop' // import LeftCenter from './Leftcenter' import LeftBottom from './Leftbottom' // import RightTop from './Righttop' import Rightcenter from './Rightcenter' // import Rightbottom from './Rightbottom' import NoData from '../../public/noData'; import Module from '../../public/module' import RightBottom from './Rightbottom' import AutoRollComponent from './AutoRollComponent' import './style.less' import {getdaolutongji,getxuanchuan} from '../../../actions/example' import { number } from 'echarts'; const Build = (props) => { const { dispatch } = props let data1 = [ {name: "县", value: 207}, {name: "乡", value: 729}, {name: "村", value: 1938} ] // const safetyData = [ // {name: '一级公路', value: 42}, // {name: '二级公路', value: 17}, // {name: '三级公路', value: 17}, // {name: '四级公路', value: 30}, // ] const [buildingnumber,setbuildingnumber] = useState(0) const [data,setdata] = useState([]) const [xuandata,setxuandata] = useState(null) //获取道路管理数据 const requestbuildingnumber = async ()=>{ const res = await dispatch(getdaolutongji()); let alltype = Object.keys(res.payload.data?.roadType || {}).map((item)=>({name:item,value:Number(keepThreeNum(res.payload.data.roadType[item]))})) // console.log(alltype,'打他啊') setdata(alltype.filter(item=>item.name==='县'||item.name==="乡"||item.name==='村')) setbuildingnumber(res.payload.data) // console.log(res.payload.data,'哈哈哈') } //获取宣传栏数据 const requestxuanchuanlan = async ()=>{ const res = await dispatch(getxuanchuan()); // setdata(alltype.filter(item=>item.name!=='null')) setxuandata(res.payload.data) console.log(res.payload.data,'宣传栏数据') } let t1 = Object.values(buildingnumber?.townRoad || {}) let totalgongli = t1.length!==0 ? t1.reduce((x,y)=>x+y.mileage,0):0 //乡镇道路占比总公里数 let totalcount = t1.length !==0 ? t1.reduce((x,y)=>x+y.roadCount,0):0 //乡镇道路占比公路总条数 // let sungongli = alltype.reduce((x,y)=>x+y.value,0) const keepThreeNum=(value)=> { let resValue = 0 //小数点的位置 let index = value&&value.toString().indexOf('.') + 1 //小数的位数 let num = value&&Math.abs(Number(value)).toString().length - index if(index && num > 3){ resValue = value&&Number(value).toFixed(3) } else { resValue = value } return resValue } let datas = Object.keys(buildingnumber?.townRoad || {}).map((item)=>({name:item,number:buildingnumber.townRoad[item].roadCount,gongli:Number(keepThreeNum(buildingnumber.townRoad[item].mileage))})) let list = datas.sort((a,b)=>{ return b.number - a.number }) // console.log(list,'红红火') //道路等级数据 let alldengji = Object.keys(buildingnumber?.roadLevel || {}).map((item)=>({name:item,value:Number(keepThreeNum(buildingnumber.roadLevel[item]))})) let onlineproject = Object.keys(buildingnumber?.townProject||{}).map((item)=>({name:item,total:buildingnumber.townProject[item]})) onlineproject = onlineproject.sort((a,b)=>{ return b.total - a.total }) let sunonlineproject = onlineproject?.reduce((x,y)=>x+y.total,0) let safetyData = alldengji?.filter(item=>item.name==='一级公路'||item.name==='二级公路'||item.name==='三级公路'||item.name==='四级公路'||item.name==='等外公路') let sundata = data?.reduce((x,y)=>x+y.value,0) let sunsafetyData = safetyData?.reduce((x,y)=>x+y.value,0) // console.log(safetyData,'好凶猛') // console.log(data1,'对比') // console.log(totalgongli,"好好的") // console.log(keepThreeNum(totalgongli),'jjjjj') useEffect(()=>{ requestbuildingnumber(); requestxuanchuanlan() },[]) // const datas = new Array(15) // datas.fill({ // name:"东乡镇", // number:"11111", // gongli:'9999' // },0,15) const rendercontent = ()=>{ return (
{list.map(({name,number,gongli},index)=>
{name} {number} {gongli}
)}
) } const xuandata1 = undefined console.log(localStorage.getItem("qndmn"),'七牛') return (
{buildingnumber&&buildingnumber.buildedRoad!==0&&totalgongli!==0?
{/* */} 在建公路数量
{buildingnumber?.buildingRoad || 0}
{/* */} 已建公路数量
{buildingnumber?.buildedRoad || 0}
:}
{ totalcount && totalcount!==0?
公路公里数/公里 {keepThreeNum(totalgongli)}
公路总数/条 {totalcount||0}
乡镇名称 公路数量/条 公里
:}
{ data&&sundata!==0?:}
{/* */}

全面建设好农村公路,切实发挥先行官作用

{sunonlineproject!==0?:} {safetyData&&sunsafetyData!==0?:}
) } function mapStateToProps(state) { const { auth, depMessage } = state; const pakData = (dep) => { return dep.map((d) => { return { title: d.name, value: d.id, // children: d.type >= 2 ? [] : pakData(d.subordinate) children: pakData(d.subordinate) } }) } let depData = pakData(depMessage.data || []) return { user: auth.user, depMessage: depMessage.data || [], depLoading: depMessage.isRequesting, depData, }; } export default connect(mapStateToProps)(Build);