123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 |
-
- import { useState, useEffect } from 'react'
- import Taro from '@tarojs/taro'
- import { Slot } from '@tarojs/components'
- import AuthPage from '@/components/AuthPage'
- import boy from '@/assets/icons/UserCenter/boy.png'
- import girl from '@/assets/icons/UserCenter/girl.png'
- import awaitPay from '@/assets/icons/UserCenter/awaitPay.png'
- import AllOrder from '@/assets/icons/UserCenter/AllOrder.png'
- import Refund from '@/assets/icons/UserCenter/Refund.png'
- import ToShop from '@/assets/icons/UserCenter/ToShop.png'
- import HomeLogo from '@/assets/icons/UserCenter/HomeLogo.png'
- import ContactMe from '@/assets/icons/UserCenter/ContactMe.png'
- import collect from '@/assets/icons/UserCenter/collect.png'
- import Rules from '@/assets/icons/UserCenter/Rules.png'
- import DefaultImage from '@/assets/icons/UserCenter/DefaultImage.png'
- import cutoverUser from '@/assets/icons/UserCenter/cutoverUser.png'
- import SwitchSelect from '@/components/SwitchSelect'
- import { PaysOrder, getMineOrder } from '@/services/payOrder' //创建订单
-
- import { useModel } from '@/store'
- import './MineCss/style.less'
-
-
-
- export default (props) => {
- const { person } = props
-
-
- const { getAvatar } = useModel('person')
- const [showCutover, setShowCutover] = useState(false)
- const hasAvatar = !!person.avatar
- const [orderNum, setOrderNum] = useState([])
- console.log("🚀 ~ file: Mine.jsx ~ line 34 ~ orderNum", orderNum)
-
-
- const ShowMoldeOn = () => {
- setShowCutover(!showCutover)
- }
-
- useEffect(() => {
- getMineOrder().then(res => setOrderNum(res))
-
- }, [])
-
-
-
- // 通过getUserProfile获取微信用户信息
- const handleGetUserProfile = () => {
- if (hasAvatar) return;
-
- Taro.getUserProfile({
- lang: 'zh_CN',
- desc: "获取你的昵称、头像、地区及性别",
- success: (res) => {
- const sessionKey = Taro.getStorageSync('sessionKey')
- const data = {
- ...res,
- sessionKey,
- }
- getAvatar(data)
-
- },
- fail: () => {
- //拒绝授权
- console.error("拒绝了请求");
- return;
- }
- })
-
- };
- //#region
- // 待支付
- const handleTobePaid = () => {
- Taro.navigateTo({ url: '/pages/MineUserAll/AllOrder/index?tabJump=1' })
- }
- // 待核销
- const handleTobeWritten = () => {
- Taro.navigateTo({ url: '/pages/MineUserAll/AllOrder/index?tabJump=2' })
- }
- // 我的订单全部
- const handleAllOrder = () => {
- Taro.navigateTo({ url: '/pages/MineUserAll/AllOrder/index?tabJump=0' })
- }
-
- //退款
- const handleRefund = () => {
- Taro.navigateTo({ url: '/pages/MineUserAll/RefundMoney/index' })
- }
- //入住指引
- const handleHomeLogo = () => {
- Taro.navigateTo({ url: '/pages/index/index?tab=1' })
- }
- //收藏
- const handleCollect = () => {
- Taro.navigateTo({ url: '/pages/MineUserAll/Collect/index' })
- }
- //联系我们
- const handleContactMe = () => {
- Taro.navigateTo({ url: '/pages/MineUserAll/ContactMe/index' })
- }
-
- //条款
- const handleRules = () => {
- Taro.navigateTo({ url: '/pages/MineUserAll/Rules/index' })
- }
-
- //#endregion
-
- return !person.phone ? <AuthPage /> : (
- <scroll-view scroll-y style='height: 77vh;' >
-
-
- <view className='User-box'>
- {/* 身份切换 */}
- <SwitchSelect show={showCutover} maskClosable />
- <view className='User-info'>
- <view className='User-photos-box'>
- <image src={person.avatar || { DefaultImage }} className='User-photos' />
- </view>
- <view className='User-info-all'>
- <view onClick={handleGetUserProfile} className='User-name'>{hasAvatar ? person.nickName : '点击授权头像'}</view>
- <view className='User-phone'>{person.phone.replace(/^(\d{3})\d{4}(\d+)/, "$1****$2") || ''}</view>
- <image className='User-sex' src={person.sex === 1 ? boy : girl} />
- </view>
- {/* 切换身份 */}
- <view onClick={ShowMoldeOn} className='User-info-cutover'>
- <image className='User-info-cutover-image' src={cutoverUser} />
- </view>
- </view>
- <view>
- <view className='buy-list-box'>
- <view className='buy-list-Paybox' onClick={handleTobePaid} >
- <image className='buy-list-PayLogo' src={awaitPay} />
- <view className='buy-list-goPay'>待支付</view>
- <view className='buy-list-OrderNumber'>{orderNum?.unPayNum}笔订单</view>
- </view>
- <view className='buy-list-Paybox ' onClick={handleTobeWritten} >
- <image className='buy-list-PayLogo' src={ToShop} />
- <view className='buy-list-goPay'>待核销</view>
- <view className='buy-list-OrderNumber'>{orderNum?.unVerifiedNum}个订单</view>
- </view>
- <view className='buy-list-Paybox ' onClick={handleAllOrder} >
- <image className='buy-list-PayLogo' src={AllOrder} />
- <view className='buy-list-goPay'>全部订单</view>
- <view className='buy-list-OrderNumber'>查看详情</view>
- </view>
- <view className='buy-list-Paybox ' onClick={handleRefund} >
- <image className='buy-list-PayLogo' src={Refund} />
- <view className='buy-list-goPay'>退款/售后</view>
- <view className='buy-list-OrderNumber'>{orderNum?.refundNum}笔订单</view>
- </view>
- </view>
- <view className='Badge-box'>
- <view className='Badge-list' onClick={handleHomeLogo}>
- <image className='Badge-list-logo' src={HomeLogo} />
- <text className='Badge-list-titme'> 入住指引</text>
- <text className='Badge-list-gt'>></text>
- </view>
- <view className='Badge-list' onClick={handleCollect}>
- <image className='Badge-list-logo' src={collect} />
- <text className='Badge-list-titme'> 我的收藏</text>
- <text className='Badge-list-gt'>></text>
- </view>
- <view className='Badge-list' onClick={handleContactMe}>
- <image className='Badge-list-logo' src={ContactMe} />
- <text className='Badge-list-titme'> 联系我们</text>
- <text className='Badge-list-gt'>></text>
- </view>
- <view className='Badge-list' onClick={handleRules}>
- <image className='Badge-list-logo' src={Rules} />
- <text className='Badge-list-titme'> 协议声明</text>
- <text className='Badge-list-gt'>></text>
- </view>
- </view>
- </view>
-
- </view>
-
-
- </scroll-view>
- )
- }
|