import React, { useEffect, useState } from 'react' import Taro, { useRouter, useDidShow } from '@tarojs/taro' import { View } from '@tarojs/components' import { AtButton, AtSearchBar } from 'taro-ui' import { NoData } from '@/components/index' import Skeleton from '../components/skeleton' import moment from 'moment' import request from '@/services/request' import { getRoadSpotDetail } from '@/services/api' import './index.scss' function Index() { const { item, isOld } = useRouter().params const spotItem = item ? JSON.parse(decodeURIComponent(item)) : null const [keyword, setKeyword] = useState('') const [roadDetailList, setRoadDetailList] = useState([]) const [isNoData, setIsNoData] = useState(false) useDidShow(() => { getDetail() }) const getDetail = () => { if (spotItem) { Taro.showLoading({ title: '加载中' }) request.get(`${getRoadSpotDetail()}?previewId=${spotItem.id}&keyword=${keyword}`).then(res => { Taro.hideLoading() if (res.statusCode === 200) { setRoadDetailList(res.data) } else { Taro.showToast({ title: '获取详情失败', icon: 'error' }) } if (res.data?.length) { setIsNoData(false) } else { setIsNoData(true) } }) } } const renderList = () => { return roadDetailList.length ? roadDetailList.map(item => 道路类型:{item.road?.level ? (item.road?.level + '道') : '--'} 路线名称:{item.road?.routeName || '--'} 路线代码:{item.road?.routeCode || '--'} 路段序号:{item.road?.sectionNo || '--'} 起点地名:{item.road?.startingPlaceName || '--'} 止点地名:{item.road?.stopPlaceName || '--'} 里程:{item.road?.chainageMileage || '--'} 养护次数(次):{item.maintenanceCount} Taro.navigateTo({ url: `/packages/maintenanceSpotCheck/spotCheckRoadDetail/index?detail=${encodeURIComponent(JSON.stringify(item))}` })} >详情 Taro.navigateTo({ url: `/packages/maintenanceSpotCheck/spotChange/index?detail=${encodeURIComponent(JSON.stringify(item))}&spot=${encodeURIComponent(JSON.stringify(spotItem))}` })} disabled={ isOld === 'true' || item.roadSpotCheckPreview?.roadSpotCheckChangeLogs?.some(l => l.changeRoadId == item.roadId) } >调整 ) : } const renderNoData = () => { return } return ( setKeyword(v)} onActionClick={getDetail} /> 抽查日期:{moment(spotItem.date).format('YYYY-MM-DD')} {isNoData ? renderNoData() : renderList()} ) } export default Index