下发任务 修改任务处理
This commit is contained in:
129
src/pages/collectPage/index.vue
Normal file
129
src/pages/collectPage/index.vue
Normal file
@ -0,0 +1,129 @@
|
||||
<script setup>
|
||||
import TopNav from "@/components/topNav.vue";
|
||||
import Search from "@/components/search.vue";
|
||||
import {onMounted, reactive, ref} from "vue";
|
||||
import ListItemWrapper from "@/pages/collectPage/copmonents/listItemWrapper.vue";
|
||||
import router from "@/router";
|
||||
import {getSelectPage} from "@/api/collectPage";
|
||||
|
||||
const finished = ref(false);
|
||||
const loading = ref(false);
|
||||
const loadingRefresh = ref(false);
|
||||
const searchValue = ref("")
|
||||
const pageData = reactive({
|
||||
pageSize: 10,
|
||||
pageCurrent: 1,
|
||||
total: 0,
|
||||
})
|
||||
|
||||
const data = reactive({
|
||||
list: []
|
||||
})
|
||||
|
||||
const onSearch = (value) => {
|
||||
loading.value = true;
|
||||
pageData.pageCurrent = 1;
|
||||
data.list = []
|
||||
getData()
|
||||
}
|
||||
|
||||
const onRefresh = () => {
|
||||
loading.value = false;
|
||||
loadingRefresh.value = true;
|
||||
finished.value = false;
|
||||
pageData.pageCurrent = 1;
|
||||
data.list = []
|
||||
getData()
|
||||
}
|
||||
|
||||
const getData = async () => {
|
||||
try {
|
||||
const { total, ...ret } = pageData
|
||||
const res = await getSelectPage({ ...ret, bddMc: searchValue.value })
|
||||
if (res?.records.length > 0) {
|
||||
data.list = data.list.concat(res?.records) || []
|
||||
pageData.total = res?.total
|
||||
loading.value = false;
|
||||
}
|
||||
loadingRefresh.value = false;
|
||||
} catch (error) {
|
||||
loading.value = false;
|
||||
loadingRefresh.value = false;
|
||||
}
|
||||
}
|
||||
const onLoad = () => {
|
||||
if (data.list.length >= pageData?.total) {
|
||||
finished.value = true;
|
||||
return
|
||||
}
|
||||
|
||||
pageData.pageCurrent++
|
||||
getData()
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
data.list = []
|
||||
getData()
|
||||
})
|
||||
|
||||
const handleTo = () => {
|
||||
router.push("/collectAndAdd")
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<TopNav navTitle="必到点采集列表" :showLeft="true" />
|
||||
|
||||
<van-sticky>
|
||||
<div class="header">
|
||||
<search placeholder="请输入部门、所属方格或必到点名称进行查询"
|
||||
v-model="searchValue"
|
||||
@update:modelValue="onSearch"
|
||||
/>
|
||||
</div>
|
||||
</van-sticky>
|
||||
|
||||
<div class="content">
|
||||
<van-pull-refresh v-model="loadingRefresh" @refresh="onRefresh">
|
||||
<van-list v-model:loading="loading" :finished="finished" finished-text="" @load="onLoad" offset="1" :immediate-check="false">
|
||||
<list-item-wrapper :list="data.list" />
|
||||
|
||||
<van-empty description="暂无采集数据" image="default" v-if="data.list.length <= 0 && loadingRefresh === false" />
|
||||
</van-list>
|
||||
</van-pull-refresh>
|
||||
</div>
|
||||
|
||||
<div class="footer" @click="handleTo">
|
||||
<van-button
|
||||
round
|
||||
native-type="submit"
|
||||
block
|
||||
type="primary"
|
||||
>
|
||||
新增必到点采集
|
||||
</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@/assets/styles/mixin.scss";
|
||||
|
||||
.header {
|
||||
margin-top: 13vw;
|
||||
@include bg_color($background-color-theme);
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-bottom: 16vw;
|
||||
}
|
||||
|
||||
.footer {
|
||||
position: fixed;
|
||||
padding: 2vw;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: calc(100% - 4vw);
|
||||
}
|
||||
</style>
|
Reference in New Issue
Block a user