|
@@ -13,6 +13,8 @@ import {
|
|
|
getMemberUserInfo,
|
|
|
getTasks,
|
|
|
storeAndPunchIn,
|
|
|
+ getAppMemberLevelConfigs,
|
|
|
+ getCircleTaskStatus,
|
|
|
} from '../../core/libs/requests'
|
|
|
import { useUserStore } from '../../store'
|
|
|
import { storeToRefs } from 'pinia'
|
|
@@ -21,7 +23,7 @@ import TasksCard from './components/tasks-card.vue'
|
|
|
import { useRouter } from '../../core/utils/router'
|
|
|
import { NetImages } from '../../core/libs/net-images'
|
|
|
import { qrCodeString2Object, requestToast, toQrCodeString } from '../../core/utils/common'
|
|
|
-import { QrCodeBusinessType } from '@/core/libs/enums'
|
|
|
+import { QrCodeBusinessType } from '../../core/libs/enums'
|
|
|
|
|
|
const router = useRouter()
|
|
|
const userStore = useUserStore()
|
|
@@ -31,10 +33,48 @@ const { data, run } = useRequest(getMemberUserInfo)
|
|
|
const { data: taskData, run: getTaskData } = useRequest(() => getTasks({}), {
|
|
|
initialData: { list: [] },
|
|
|
})
|
|
|
+const { data: taskStatusData, run: setTaskStatus } = useRequest(
|
|
|
+ async () => ({
|
|
|
+ data: await Promise.all<any>([
|
|
|
+ getCircleTaskStatus().then(({ data }) => ({
|
|
|
+ completed: data,
|
|
|
+ btnProps: {
|
|
|
+ content: data ? '已完成' : '去发布',
|
|
|
+ disabled: data,
|
|
|
+ onClick: () => router.push('/pages/publish/moment/index?circleType=1'),
|
|
|
+ },
|
|
|
+ })),
|
|
|
+ {
|
|
|
+ btnProps: {
|
|
|
+ content: '去打卡',
|
|
|
+ onClick: () => uni.showToast({ title: '请到店扫码完成', icon: 'none' }),
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ btnProps: {
|
|
|
+ content: '去邀请',
|
|
|
+ onClick: () => uni.showToast({ title: '敬请期待', icon: 'none' }),
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ btnProps: {
|
|
|
+ content: '去关注',
|
|
|
+ onClick: () => uni.showToast({ title: '敬请期待', icon: 'none' }),
|
|
|
+ },
|
|
|
+ },
|
|
|
+ ]),
|
|
|
+ code: 0,
|
|
|
+ msg: '',
|
|
|
+ }),
|
|
|
+ { initialData: [] },
|
|
|
+)
|
|
|
const { data: designerInfo, run: setDesignerInfo } = useRequest(
|
|
|
() => getDesignerInfo(userInfo.value.userId),
|
|
|
{ initialData: {} },
|
|
|
)
|
|
|
+const { data: levelConfigs, run: setLevelConfigs } = useRequest(() => getAppMemberLevelConfigs(), {
|
|
|
+ initialData: [],
|
|
|
+})
|
|
|
const menus = ref([
|
|
|
{ title: '积分明细', icon: integral, path: '/pages/mine/points/index' },
|
|
|
{ title: '优惠券包', icon: coupon, path: '/pages/mine/coupons/index' },
|
|
@@ -111,18 +151,6 @@ const nickNameClickHandle = async () => {
|
|
|
if (isLogined.value) return
|
|
|
uni.navigateTo({ url: '/pages/login/index' })
|
|
|
}
|
|
|
-onShow(async () => {
|
|
|
- if (isLogined.value) {
|
|
|
- await run()
|
|
|
- setUserInfo({
|
|
|
- ...userInfo.value,
|
|
|
- ...data.value,
|
|
|
- })
|
|
|
- await setDesignerInfo()
|
|
|
- await getTaskData()
|
|
|
- console.log(taskData.value)
|
|
|
- }
|
|
|
-})
|
|
|
const handleToAuthentication = () => {
|
|
|
if (!isLogined.value) return
|
|
|
uni.navigateTo({ url: '/pages/mine/authentication/index' })
|
|
@@ -161,8 +189,24 @@ const handle2Video = () => {
|
|
|
// wx.openChannelsUserProfile({ finderUserName: 'sphtEhk7olIepB0' })
|
|
|
uni.openChannelsUserProfile({ finderUserName: 'sphtEhk7olIepB0' })
|
|
|
}
|
|
|
-onMounted(async () => {})
|
|
|
const navBarProps = ref({ customClass: 'bg-transparent!' })
|
|
|
+onMounted(async () => {
|
|
|
+ await setLevelConfigs()
|
|
|
+})
|
|
|
+onShow(async () => {
|
|
|
+ if (isLogined.value) {
|
|
|
+ await run()
|
|
|
+ setUserInfo({
|
|
|
+ ...userInfo.value,
|
|
|
+ ...data.value,
|
|
|
+ })
|
|
|
+ // await setDesignerInfo()
|
|
|
+ // await getTaskData()
|
|
|
+ await Promise.all([setDesignerInfo(), getTaskData(), setTaskStatus()])
|
|
|
+ // console.log(taskData.value)
|
|
|
+ console.log(taskStatusData.value)
|
|
|
+ }
|
|
|
+})
|
|
|
onPageScroll(({ scrollTop }: { scrollTop: number }) => {
|
|
|
// console.log(scrollTop)
|
|
|
navBarProps.value.customClass = scrollTop === 0 ? 'bg-transparent!' : ''
|
|
@@ -353,7 +397,15 @@ onPageScroll(({ scrollTop }: { scrollTop: number }) => {
|
|
|
</div>
|
|
|
</template>
|
|
|
</div>
|
|
|
- <TasksCard custom-class="my-6" :items="taskData.list"></TasksCard>
|
|
|
+ <TasksCard
|
|
|
+ custom-class="my-6"
|
|
|
+ :items="
|
|
|
+ taskData.list.map((it, i) => ({
|
|
|
+ ...it,
|
|
|
+ ...(taskStatusData[i] || {}),
|
|
|
+ }))
|
|
|
+ "
|
|
|
+ ></TasksCard>
|
|
|
<SectionHeading custom-class="my-6" title="和筑巢荟一起共同成长"></SectionHeading>
|
|
|
<CardMenu :items="pieces" custom-class="grid-cols-2" />
|
|
|
<wd-button @click="handle2Video">视频号</wd-button>
|