index.jsx 5.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. import React, { useEffect, useMemo, useState } from 'react'
  2. // import { useEffect, useLayoutEffect, useReducer, useState, useContext, useRef, useCallback, useMemo } from '@tarojs/taro'
  3. import Taro, { useShareAppMessage, useRouter } from "@tarojs/taro";
  4. import { useSelector, } from 'react-redux'
  5. import { View, Input, Text, Image, Picker } from '@tarojs/components'
  6. import Layout from '../../layout/index'
  7. import Tab from '../../compents/tab/index'
  8. import Container from '../../compents/container/index'
  9. import locationicon from '../../assets/locationicon.png'
  10. import './index.scss'
  11. import request from '../../util/request';
  12. // Page({
  13. // data: {
  14. // text: 'init data',
  15. // array: [{ msg: '1' }, { msg: '2' }]
  16. // }
  17. // })
  18. const index = (props) => {
  19. const router = useRouter()
  20. const { houseId } = router.params
  21. const user = useSelector(state => state.user)
  22. const [userRole, setUserRole] = useState('1')
  23. const [pageState, setPageState] = useState('1')
  24. const [list, setList] = useState([])
  25. const [personNum, setPersonNum] = useState()
  26. const [startTime, setStartTime] = useState('')
  27. const [endTime, setEndTime] = useState('')
  28. useEffect(() => {
  29. // console.log(page, 'page')
  30. setList([
  31. {
  32. name: 'zhou',
  33. phone: '177'
  34. },
  35. {
  36. name: 'zhou',
  37. phone: '177'
  38. },
  39. {
  40. name: 'zhou',
  41. phone: '177'
  42. }
  43. ])
  44. }, [])
  45. useShareAppMessage(res => {
  46. console.log('3333')
  47. if (res.from === 'button') {
  48. // 来自页面内转发按钮
  49. console.log(res.target)
  50. }
  51. const data = {
  52. houseId,
  53. personNum,
  54. startDate: startTime,
  55. endDate: endTime
  56. }
  57. return request({ url: '/taHouseSetting', method: 'post', data }).then(res => {
  58. const { data } = res.data
  59. if (res.data.data) {
  60. console.log(data.taHouseOrder.orderId)
  61. const { orderId } = data.taHouseOrder
  62. return request({ url: `/taHouse/${houseId}/share` }).then(res => {
  63. return {
  64. title: '分享到微信',
  65. path: `/pages/index/index?houseId=${houseId}&personNum=${personNum}&startTime=${startTime}&endTime=${endTime}&orderId=${orderId}`
  66. }
  67. })
  68. } else {
  69. Taro.showModal({
  70. title: '输入信息有误',
  71. content: '请重新输入',
  72. showCancel: false,
  73. success: function (res) {
  74. if (res.confirm) {
  75. console.log('用户点击确定')
  76. } else if (res.cancel) {
  77. console.log('用户点击取消')
  78. }
  79. }
  80. })
  81. }
  82. })
  83. })
  84. async function syncAddOrder() {
  85. }
  86. const onTimeChange = (e) => {
  87. console.log(e, '111')
  88. setStartTime(e.detail.value)
  89. }
  90. return <View className='share'>
  91. <Layout>
  92. <View className='inputstyle-view'>
  93. <Text className='title'>入住人数</Text>
  94. <Container className='inputstyle-view-card ' style={{ borderRadius: '20rpx', padding: '0 40rpx' }} >
  95. <Input type='number' value={personNum} onInput={(e) => setPersonNum(e.detail.value)} placeholderClass='placeholderinput' className='input' type='text' placeholder='' />
  96. </Container>
  97. </View>
  98. <View className='inputstyle-view'>
  99. <Text className='title'>入住日期</Text>
  100. <Container className='inputstyle-view-card ' style={{ borderRadius: '20rpx', padding: '0 40rpx' }} >
  101. <Picker mode='date' onChange={onTimeChange}>
  102. <View className='input' style={{ height: '44rpx', lineHeight: '44rpx', fontsize: '28rpx' }}>
  103. {startTime}
  104. </View>
  105. </Picker>
  106. {/* <Input placeholderClass='placeholderinput' className='input' type='text' placeholder='' /> */}
  107. </Container>
  108. </View>
  109. <View className='inputstyle-view'>
  110. <Text className='title'>离店日期</Text>
  111. <Container className='inputstyle-view-card ' style={{ borderRadius: '20rpx', padding: '0 40rpx' }} >
  112. <Picker mode='date' onChange={(e) => { setEndTime(e.detail.value) }}>
  113. <View className='input' style={{ height: '44rpx', lineHeight: '44rpx', fontsize: '28rpx' }}>
  114. {endTime}
  115. </View>
  116. </Picker>
  117. </Container>
  118. </View>
  119. </Layout>
  120. <Tab openType="share" className='addhousetab' color='#ffffff' pageState='3' onClick={(e) => console.log(33)} value={['分享到微信']} ></Tab>
  121. </View>
  122. }
  123. export default index