ShareRoom.jsx 2.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import React from 'react'
  2. import Popup from '@/components/Popup'
  3. import Taro from '@tarojs/taro'
  4. import { Input, Button, View, Picker, Label } from '@tarojs/components'
  5. import { shareRoom } from '@/services/landlord'
  6. import './ShareRoom.less'
  7. import { useState } from 'react'
  8. export default (props) => {
  9. const { showCutover, onClose, room, onFinish } = props
  10. const [startDate, setStartDate] = useState('')
  11. const [endDate, setEndDate] = useState('')
  12. const [roomNum, setRoomNum] = useState('')
  13. const handelStartDate = (e) => {
  14. setStartDate(e.detail.value)
  15. }
  16. const handelEndDate = (e) => {
  17. setEndDate(e.detail.value)
  18. }
  19. const handelShare = () => {
  20. if (roomNum != '' && startDate != '' && endDate != '') {
  21. shareRoom({ hotelId: room.hotelId, personNum: roomNum, roomId: room.roomId, startDate: startDate, endDate: endDate }).then((res) => {
  22. onFinish(res)
  23. setStartDate('')
  24. setEndDate('')
  25. setRoomNum()
  26. })
  27. }
  28. }
  29. return (
  30. <Popup show={showCutover} onClose={onClose}>
  31. <View className='from-room'>
  32. <Label style={{ color: 'black' }}>请输入入住人信息</Label>
  33. <View className='flex'>
  34. <Label>入住人数:</Label><Input focus dataField='nm' onInput={(e) => setRoomNum(e.detail.value)} value={roomNum} type='number' placeholder='请输入入住人数' /></View>
  35. <View className='flex'>
  36. <Label>入住开始时间:</Label>
  37. <Picker mode='date' className='picker' onChange={handelStartDate}>
  38. {startDate == '' ? '请选择入住开始时间' : startDate}
  39. </Picker>
  40. </View>
  41. <View className='flex'>
  42. <Label>入住结束时间:</Label>
  43. <Picker className='picker' mode='date' onChange={handelEndDate}>
  44. {endDate == '' ? '请选择入住结束时间' : endDate}
  45. </Picker>
  46. </View>
  47. <View><Button className='cancel' onClick={onClose}>取消</Button><Button className='btn' onClick={handelShare}>分享</Button></View>
  48. </View>
  49. </Popup>
  50. )
  51. }