|
|
@@ -7,6 +7,9 @@ import MetricHistory from "@/features/trackSomething/components/MetricHistory";
|
|
|
import ActivityHistory from "@/features/trackSomething/components/ActivityHistory";
|
|
|
import { activityRecords, clearMetricRecords, cleartActivityRecords, metricRecords } from "@/services/trackSomething";
|
|
|
import Taro from "@tarojs/taro";
|
|
|
+import Layout from "@/context/locales/layout";
|
|
|
+import NoData from "@/components/NoData";
|
|
|
+import { NaviBarTitleShowType, TemplateType } from "@/utils/types";
|
|
|
|
|
|
export default function Page() {
|
|
|
const router = useRouter();
|
|
|
@@ -15,7 +18,9 @@ export default function Page() {
|
|
|
const [records, setRecords] = useState<any[]>([])
|
|
|
const [counter, setCounter] = useState(0)
|
|
|
const [timerId, setTimerId] = useState(null)
|
|
|
- const {refreshList} = router.params
|
|
|
+ const [showErrorPage, setShowErrorPage] = useState(false)
|
|
|
+ const { refreshList } = router.params
|
|
|
+ const [triggered, setTriggered] = useState(false)
|
|
|
|
|
|
useEffect(() => {
|
|
|
startTimer();
|
|
|
@@ -68,12 +73,14 @@ export default function Page() {
|
|
|
|
|
|
function getHistory(page = pageIndex) {
|
|
|
// debugger
|
|
|
+ setTriggered(true)
|
|
|
if (router.params.type == 'time') {
|
|
|
getClockRecords({
|
|
|
page: page,
|
|
|
limit: pageSize,
|
|
|
only_finished: false
|
|
|
}).then(res => {
|
|
|
+ setTriggered(false)
|
|
|
if (page == 1) {
|
|
|
setRecords((res as any).data)
|
|
|
} else {
|
|
|
@@ -89,6 +96,7 @@ export default function Page() {
|
|
|
code: '_walk'
|
|
|
}
|
|
|
).then(res => {
|
|
|
+ setTriggered(false)
|
|
|
if (page == 1) {
|
|
|
setRecords((res as any).data)
|
|
|
} else {
|
|
|
@@ -104,6 +112,7 @@ export default function Page() {
|
|
|
code: router.params.code
|
|
|
}
|
|
|
).then(res => {
|
|
|
+ setTriggered(false)
|
|
|
if (page == 1) {
|
|
|
setRecords((res as any).data)
|
|
|
} else {
|
|
|
@@ -156,26 +165,53 @@ export default function Page() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- return <View className="container">
|
|
|
-
|
|
|
- {
|
|
|
- (router.params.type == 'metric' || router.params.type == 'activity') && <View style={{ height: 50, fontSize: 30, color: '#fff' }} onClick={clear}>删除全部</View>
|
|
|
+ function detail() {
|
|
|
+ if (router.params.type == 'time') {
|
|
|
+ return <View>
|
|
|
+ {
|
|
|
+ records.map((item, index) => {
|
|
|
+ return <Schedule key={index} data={item} type="record" delSuccess={(item) => removeItem(item)} />
|
|
|
+ })
|
|
|
+ }
|
|
|
+ </View>
|
|
|
}
|
|
|
- <ScrollView scrollY style={{ height: '100vh', display: 'flex', flexDirection: 'column' }}
|
|
|
- onScrollToLower={more} enableFlex
|
|
|
- // onRefresh={refresh}
|
|
|
- >
|
|
|
- {
|
|
|
- router.params.type == 'time' && records.map((item, index) => {
|
|
|
- return <Schedule key={index} data={item} type="record" delSuccess={(item) => removeItem(item)} />
|
|
|
- })
|
|
|
- }
|
|
|
- {
|
|
|
- router.params.type == 'metric' && <MetricHistory records={records} />
|
|
|
- }
|
|
|
- {
|
|
|
- router.params.type == 'activity' && <ActivityHistory records={records} />
|
|
|
- }
|
|
|
- </ScrollView>
|
|
|
- </View>;
|
|
|
+ if (router.params.type == 'metric') {
|
|
|
+ return <MetricHistory records={records} />
|
|
|
+ }
|
|
|
+ if (router.params.type == 'activity') {
|
|
|
+ return <ActivityHistory records={records} />
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return <Layout children={showErrorPage ? <NoData refresh={() => { refresh() }} /> : detail()}
|
|
|
+ title={router.params.title}
|
|
|
+ type={TemplateType.list}
|
|
|
+ refresh={() => { refresh() }}
|
|
|
+ triggered={triggered}
|
|
|
+ more={() => { more() }}
|
|
|
+ titleShowStyle={NaviBarTitleShowType.scrollToShow}
|
|
|
+ />
|
|
|
+
|
|
|
+ // return <View className="container">
|
|
|
+
|
|
|
+ // {
|
|
|
+ // (router.params.type == 'metric' || router.params.type == 'activity') && <View style={{ height: 50, fontSize: 30, color: '#fff' }} onClick={clear}>删除全部</View>
|
|
|
+ // }
|
|
|
+ // <ScrollView scrollY style={{ height: '100%', display: 'flex', flexDirection: 'column' }}
|
|
|
+ // onScrollToLower={more} enableFlex
|
|
|
+ // // onRefresh={refresh}
|
|
|
+ // >
|
|
|
+ // {
|
|
|
+ // router.params.type == 'time' && records.map((item, index) => {
|
|
|
+ // return <Schedule key={index} data={item} type="record" delSuccess={(item) => removeItem(item)} />
|
|
|
+ // })
|
|
|
+ // }
|
|
|
+ // {
|
|
|
+ // router.params.type == 'metric' && <MetricHistory records={records} />
|
|
|
+ // }
|
|
|
+ // {
|
|
|
+ // router.params.type == 'activity' && <ActivityHistory records={records} />
|
|
|
+ // }
|
|
|
+ // </ScrollView>
|
|
|
+ // </View>;
|
|
|
}
|