2024-08-12 23:23:29 +08:00
|
|
|
|
<script setup>
|
2024-08-13 15:33:03 +08:00
|
|
|
|
import {getAssignmentList, getCanReceiveAssignment, acceptAssignment, receiveAssignment} from '@/apis/assignmentApi'
|
|
|
|
|
|
import {onMounted, reactive, ref} from "vue";
|
2024-08-12 23:23:29 +08:00
|
|
|
|
|
|
|
|
|
|
const canReceiveAssignmentList=ref([]);
|
2024-08-13 15:33:03 +08:00
|
|
|
|
|
|
|
|
|
|
const assignmentList=ref([]);
|
|
|
|
|
|
const queryForm=reactive({
|
|
|
|
|
|
assignmentQueryState:"Progress"
|
|
|
|
|
|
});
|
|
|
|
|
|
|
2024-08-12 23:23:29 +08:00
|
|
|
|
onMounted( async ()=>{
|
2024-08-13 15:33:03 +08:00
|
|
|
|
await refreshData();
|
|
|
|
|
|
});
|
|
|
|
|
|
//刷新数据
|
|
|
|
|
|
const refreshData=async ()=>{
|
|
|
|
|
|
|
2024-08-12 23:23:29 +08:00
|
|
|
|
const {data:canReceiveAssignmentListData}= await getCanReceiveAssignment();
|
|
|
|
|
|
canReceiveAssignmentList.value=canReceiveAssignmentListData;
|
2024-08-13 15:33:03 +08:00
|
|
|
|
|
|
|
|
|
|
const {data}= await getAssignmentList(queryForm);
|
|
|
|
|
|
assignmentList.value=data;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//接收任务
|
|
|
|
|
|
const onClickAcceptAssignment=async (id)=>{
|
|
|
|
|
|
await acceptAssignment(id);
|
|
|
|
|
|
await refreshData();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const onClickReceiveAssignment=async (id)=>{
|
|
|
|
|
|
await receiveAssignment(id);
|
|
|
|
|
|
await refreshData();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//切换tab
|
|
|
|
|
|
const changeTab=async (state)=>{
|
|
|
|
|
|
queryForm.assignmentQueryState=state;
|
|
|
|
|
|
await refreshData();
|
|
|
|
|
|
}
|
2024-08-12 23:23:29 +08:00
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
<template>
|
2024-08-13 15:33:03 +08:00
|
|
|
|
|
|
|
|
|
|
<h3>可接收任务</h3>
|
|
|
|
|
|
<div>
|
|
|
|
|
|
<div v-for="item in canReceiveAssignmentList">{{item}}
|
|
|
|
|
|
<button type="button" @click="onClickAcceptAssignment(item.id)">接收任务</button>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<hr/>
|
|
|
|
|
|
<h3>已接收任务
|
|
|
|
|
|
<button type="button" @click="changeTab('Progress')">切换正在进行</button>
|
|
|
|
|
|
<button type="button" @click="changeTab('End')">切换已结束</button></h3>
|
2024-08-12 23:23:29 +08:00
|
|
|
|
<div>
|
2024-08-13 15:33:03 +08:00
|
|
|
|
<div v-for="item in assignmentList">{{item}}
|
|
|
|
|
|
<button type="button" @click="onClickReceiveAssignment(item.id)">领取奖励</button>
|
|
|
|
|
|
</div>
|
2024-08-12 23:23:29 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</template>
|