|
@@ -1,7 +1,6 @@
|
|
|
<template>
|
|
|
<view>
|
|
|
- <!-- 志愿者 -->
|
|
|
- <view class="classify-main" v-if="userType == '2'">
|
|
|
+ <view class="classify-main" >
|
|
|
<up-tabs
|
|
|
:list="column"
|
|
|
:scrollable="false"
|
|
@@ -12,64 +11,47 @@
|
|
|
transform: 'scale(1.05)',
|
|
|
}"
|
|
|
lineColor="rgba(221, 94, 69, 1)"
|
|
|
- :current="tabKey"
|
|
|
+ v-model:current="tabKey"
|
|
|
>
|
|
|
</up-tabs>
|
|
|
<view class="list">
|
|
|
- <List :data="data" v-if="data.length > 0" />
|
|
|
+ <List :data="data" v-if="data && data.length > 0" @refresh="getList" ref="listRef"/>
|
|
|
<view v-else>
|
|
|
<NoneView value="您还没有相关订单" />
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <!-- 用户 -->
|
|
|
- <OrderList
|
|
|
- :dataList="dataList"
|
|
|
- :dictSort="dictData"
|
|
|
- @fetchData="getListData"
|
|
|
- v-else
|
|
|
- />
|
|
|
-
|
|
|
<custom-tab-bar :page="2" />
|
|
|
</view>
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
-import { ref } from 'vue'
|
|
|
+import { ref,computed } from 'vue'
|
|
|
import List from '@/pages/common/orderList/index.vue'
|
|
|
import { provide } from 'vue'
|
|
|
import { getVolunteerOrderList } from '@/api/volunteer.js'
|
|
|
import { onMounted } from 'vue'
|
|
|
import { useDict } from '@/utils/dict.js'
|
|
|
-import { onLoad, onShow } from '@dcloudio/uni-app'
|
|
|
-import OrderList from '@/pages/common/classify/orderlist.vue'
|
|
|
+import { onShow } from '@dcloudio/uni-app'
|
|
|
import NoneView from '@/components/NoneView/index.vue'
|
|
|
-import { userMainOrderList, systemDictdaTalist } from '@/api/userList.js'
|
|
|
+import { userMainOrderList } from '@/api/userList.js'
|
|
|
import CustomTabBar from '@/components/CustomTabBar/index.vue'
|
|
|
import { wxMakePhoneCall } from '@/utils/wxRequest.js'
|
|
|
const {
|
|
|
order_status,
|
|
|
- // lrr_service_status
|
|
|
} = useDict('order_status', 'lrr_service_status')
|
|
|
|
|
|
provide('order_status', order_status) //订单/服务状态
|
|
|
-// provide('lrr_service_status', lrr_service_status); //订单/服务状态
|
|
|
|
|
|
const userType = uni.getStorageSync('userType') //读取本地存储
|
|
|
-
|
|
|
-// 用户/志愿者 识别标识
|
|
|
-const userOrWorker = uni.getStorageSync('storage_data').vuex_userOrWorker //读取本地存储
|
|
|
-
|
|
|
const tab = ref('')
|
|
|
const tabKey = ref(0)
|
|
|
-const dataList = ref([]) //用户
|
|
|
const data = ref([]) //志愿者
|
|
|
-// 定义存储字典数据的响应式变量
|
|
|
-const dictData = ref([])
|
|
|
+const listRef =ref(null)
|
|
|
/**
|
|
|
* 0待支付 1已支付 2支付超时或取消 3进行中 4已完成 5申请退款中 6已退款 7部分退款 8 待确认
|
|
|
*/
|
|
|
-const column = [
|
|
|
+const admin = [
|
|
|
{
|
|
|
name: '全部',
|
|
|
value: '',
|
|
@@ -91,41 +73,64 @@ const column = [
|
|
|
value: '2',
|
|
|
},
|
|
|
]
|
|
|
+const user = [
|
|
|
+{
|
|
|
+ name: "全部",
|
|
|
+ value: "",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "待支付",
|
|
|
+ value: "0",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "待服务",
|
|
|
+ value: "1",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "进行中",
|
|
|
+ value: "3",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "已完成",
|
|
|
+ value: "4",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "售后",
|
|
|
+ value: '2,5,6,7',
|
|
|
+ }
|
|
|
+]
|
|
|
|
|
|
-//获取用户订单列表状态
|
|
|
-async function getData() {
|
|
|
- console.log('进入')
|
|
|
- try {
|
|
|
- const res = await systemDictdaTalist().catch((err) => {
|
|
|
- throw err // 重新抛出以进入 catch 块
|
|
|
- })
|
|
|
- console.log(res, '用户状态获取成功')
|
|
|
- dictData.value = res.rows
|
|
|
- console.log(dictData.value, 'dictData.value')
|
|
|
- } catch (e) {
|
|
|
- console.error('获取数据异常:', e) // 确保这里打印错误
|
|
|
- }
|
|
|
-}
|
|
|
+const column = computed(() => {
|
|
|
+ return userType === 1 ? user : admin
|
|
|
+})
|
|
|
|
|
|
async function getList() {
|
|
|
try {
|
|
|
- uni.hideLoading()
|
|
|
uni.showLoading({
|
|
|
title: '数据加载中...',
|
|
|
})
|
|
|
|
|
|
+ const listApi = userType === 1 ? userMainOrderList : getVolunteerOrderList
|
|
|
+ const res = await listApi({
|
|
|
+ orderStatus: tab.value,
|
|
|
+ })
|
|
|
+ data.value =res.rows || res.data
|
|
|
+
|
|
|
// 判断 userType 来决定调用哪个接口
|
|
|
- let res
|
|
|
- if (userType === 1) {
|
|
|
- // 如果 userType 是 1,调用 userMainOrderList 接口
|
|
|
- res = await getListData()
|
|
|
- } else if (userType === 2) {
|
|
|
- // 如果 userType 是 2,调用 getVolunteerOrderList 接口
|
|
|
- res = await getVolunteerOrderList({
|
|
|
- orderStatus: tab.value,
|
|
|
- })
|
|
|
- data.value = res.data
|
|
|
- }
|
|
|
+ // let res
|
|
|
+ // if (userType === 1) {
|
|
|
+ // // 如果 userType 是 1,调用 userMainOrderList 接口
|
|
|
+ // // res = await getListData()
|
|
|
+ // res = await userMainOrderList({
|
|
|
+ // orderStatus: tab.value
|
|
|
+ // })
|
|
|
+ // } else if (userType === 2) {
|
|
|
+ // // 如果 userType 是 2,调用 getVolunteerOrderList 接口
|
|
|
+ // res = await getVolunteerOrderList({
|
|
|
+ // orderStatus: tab.value,
|
|
|
+ // })
|
|
|
+ // }
|
|
|
+ // data.value = res.data
|
|
|
} catch (error) {
|
|
|
console.log('error', error)
|
|
|
uni.showToast({
|
|
@@ -133,27 +138,13 @@ async function getList() {
|
|
|
icon: 'error',
|
|
|
})
|
|
|
} finally {
|
|
|
+ if(listRef.value && listRef.value.handleRefreshing){
|
|
|
+ listRef.value.handleRefreshing(false)
|
|
|
+ }
|
|
|
uni.hideLoading()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-const getListData = async (orderStatus = tab.value) => {
|
|
|
- // 如果dataList已经有数据,则从dataList中获取orderStatus
|
|
|
- if (dataList.value && dataList.value.length > 0) {
|
|
|
- const statusList = dataList.value.map(item => item.orderStatus);
|
|
|
- const statusString = statusList.join(',');
|
|
|
- const res = await userMainOrderList({
|
|
|
- orderStatus: statusString
|
|
|
- });
|
|
|
- dataList.value = res.rows;
|
|
|
- } else {
|
|
|
- // 首次加载时使用传入的orderStatus
|
|
|
- const res = await userMainOrderList({
|
|
|
- orderStatus: orderStatus
|
|
|
- });
|
|
|
- dataList.value = res.rows;
|
|
|
- }
|
|
|
-}
|
|
|
/**
|
|
|
* 1: 查看
|
|
|
* 2:沟通
|
|
@@ -171,9 +162,6 @@ function btnClick(row, type) {
|
|
|
url: `/pages_classify/pages/handle/index?orderId=${row.secondOrderId}`,
|
|
|
})
|
|
|
return
|
|
|
- console.log('res==>', res)
|
|
|
-
|
|
|
- data.value = res.data
|
|
|
}
|
|
|
|
|
|
//前往沟通
|
|
@@ -191,14 +179,12 @@ function onChange(tabItem) {
|
|
|
|
|
|
onMounted(() => {
|
|
|
getList()
|
|
|
- getListData()
|
|
|
- getData()
|
|
|
})
|
|
|
|
|
|
onShow(() => {
|
|
|
const params = getApp().globalData.switchTabParams || {}
|
|
|
tabKey.value = params.tabKey || 0
|
|
|
- onChange(column[tabKey.value])
|
|
|
+ onChange(column.value[tabKey.value])
|
|
|
// 使用后建议清除参数,避免重复读取
|
|
|
getApp().globalData.switchTabParams = null
|
|
|
})
|
|
@@ -214,6 +200,7 @@ onShow(() => {
|
|
|
bottom: 150rpx;
|
|
|
left: 0px;
|
|
|
right: 0px;
|
|
|
+ background: rgba(245, 245, 245, 1);
|
|
|
}
|
|
|
}
|
|
|
</style>
|