ShareRoom.jsx 2.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import React, { useState } from 'react'
  2. import Taro from '@tarojs/taro'
  3. import { Input, Button, View, Picker, Label } from '@tarojs/components'
  4. import Popup from '@/components/Popup'
  5. import { shareRoom } from '@/services/landlord'
  6. import './ShareRoom.less'
  7. export default (props) => {
  8. const { showCutover, onClose, room, onFinish } = props
  9. const [startDate, setStartDate] = useState('')
  10. const [endDate, setEndDate] = useState('')
  11. const [roomNum, setRoomNum] = useState('')
  12. const [loading, setLoading] = useState(false)
  13. const handelStartDate = (e) => {
  14. setStartDate(e.detail.value)
  15. }
  16. const handelEndDate = (e) => {
  17. setEndDate(e.detail.value)
  18. }
  19. const handelShare = () => {
  20. setLoading(true)
  21. var myDate = new Date();
  22. shareRoom({
  23. hotelId: room.hotelId,
  24. personNum: roomNum == '' ? 0 : roomNum,
  25. roomId: room.roomId,
  26. startDate: startDate == '' ? myDate.toLocaleDateString() : startDate,
  27. endDate: endDate == '' ? myDate.toLocaleDateString() : endDate
  28. }).then((res) => {
  29. onFinish(res)
  30. setStartDate('')
  31. setEndDate('')
  32. setRoomNum()
  33. setLoading(false)
  34. })
  35. }
  36. return (
  37. <Popup show={showCutover} onClose={onClose}>
  38. <View className='from-room srl'>
  39. <View style={{ marginBottom: '25px' }}>
  40. <View className='rzline' /><Label className='srl mg'>请输入入住人信息</Label><View className='rzline' />
  41. </View>
  42. <View className='srleft'>
  43. <Label>入住人数:</Label>
  44. <Input onInput={(e) => setRoomNum(e.detail.value)} value={roomNum} type='number' placeholder='请输入入住人数' />
  45. </View>
  46. <View className='srleft'>
  47. <Label >入住开始时间:</Label>
  48. <Picker className='picker' mode='date' onChange={handelStartDate}>
  49. {startDate == '' ? '请选择入住开始时间' : startDate}
  50. </Picker>
  51. </View>
  52. <View className='srleft'>
  53. <Label>入住结束时间:</Label>
  54. <Picker className='picker' mode='date' onChange={handelEndDate}>
  55. {endDate == '' ? '请选择入住结束时间' : endDate}
  56. </Picker>
  57. </View>
  58. <View>
  59. <Button className='cancel' onClick={onClose}>取消</Button>
  60. <Button className='btn' onClick={handelShare} loading={loading} disabled={loading}>分享</Button>
  61. </View>
  62. </View>
  63. </Popup>
  64. )
  65. }