|
@@ -2,7 +2,7 @@ import React, { useCallback, useEffect, useRef, useState } from 'react'
|
|
|
import styles from './index.module.scss'
|
|
|
import { useParams } from 'react-router-dom'
|
|
|
import ZexhiBtn from '@/components/ZexhiBtn'
|
|
|
-import { Button, Form, FormInstance, Input } from 'antd'
|
|
|
+import { Button, Form, FormInstance, Input, InputNumber } from 'antd'
|
|
|
import ZinfoPop from '@/components/ZinfoPop'
|
|
|
import history from '@/utils/history'
|
|
|
import classNames from 'classnames'
|
|
@@ -12,6 +12,7 @@ import MyPopconfirm from '@/components/MyPopconfirm'
|
|
|
import { B3_APIgetList, B4_APIsave } from '@/store/action/all'
|
|
|
import { B3ListApiType } from '../B3start/type'
|
|
|
import ZselectCity from '@/components/ZselectCity'
|
|
|
+import TextArea from 'antd/es/input/TextArea'
|
|
|
|
|
|
function B4form() {
|
|
|
// useEffect(() => {
|
|
@@ -29,6 +30,7 @@ function B4form() {
|
|
|
time: ''
|
|
|
})
|
|
|
|
|
|
+ // 路由参数key,1:个人/2:团体
|
|
|
const urlObjTemp: any = useParams()
|
|
|
|
|
|
const getInfoFu = useCallback(async () => {
|
|
@@ -57,7 +59,7 @@ function B4form() {
|
|
|
|
|
|
// 点击新增 参观人
|
|
|
const addFormFu = useCallback(() => {
|
|
|
- if (formArr.length >= 3) return MessageFu.warning('最多3位!')
|
|
|
+ if (formArr.length >= 5) return MessageFu.warning('最多5位!')
|
|
|
setFormArr([...formArr, { id: formArrNumRef.current + 1 }])
|
|
|
formArrNumRef.current += 1
|
|
|
}, [formArr])
|
|
@@ -82,6 +84,8 @@ function B4form() {
|
|
|
// 通过校验点击确定
|
|
|
const onFinish = useCallback(
|
|
|
async (values: any) => {
|
|
|
+ if (values.teamPcs && values.teamPcs > 20) return MessageFu.warning('参团人数最多20人!')
|
|
|
+
|
|
|
const cityArr = selectCityRef.current.getValue()
|
|
|
if (cityArr.length < 2) return MessageFu.warning('请选择地区!')
|
|
|
|
|
@@ -99,10 +103,24 @@ function B4form() {
|
|
|
city: cityArr[1]
|
|
|
})
|
|
|
})
|
|
|
- const res = await B4_APIsave(arr)
|
|
|
+
|
|
|
+ const obj = {
|
|
|
+ info: arr,
|
|
|
+ teamDesc: values.teamDesc,
|
|
|
+ teamPcs: values.teamPcs,
|
|
|
+ type: urlObjTemp.key === '1' ? 'person' : 'team'
|
|
|
+ }
|
|
|
+
|
|
|
+ // if (1 + 1 === 2) {
|
|
|
+ // console.log(123, obj)
|
|
|
+
|
|
|
+ // return
|
|
|
+ // }
|
|
|
+
|
|
|
+ const res = await B4_APIsave(obj)
|
|
|
if (res.code === 0) setTitPop('succ')
|
|
|
},
|
|
|
- [formArr, urlObj]
|
|
|
+ [formArr, urlObj.bookDate, urlObj.bookId, urlObj.time, urlObjTemp.key]
|
|
|
)
|
|
|
|
|
|
return (
|
|
@@ -117,15 +135,22 @@ function B4form() {
|
|
|
<span>入馆时间:</span>
|
|
|
{urlObj.time}
|
|
|
</p>
|
|
|
+ <p>
|
|
|
+ <span>预约类型:</span>
|
|
|
+ {urlObjTemp.key === '1' ? '个人预约' : '团队预约'}
|
|
|
+ </p>
|
|
|
</div>
|
|
|
|
|
|
{/* 按钮 */}
|
|
|
- <div
|
|
|
- className={classNames('B4addBtn', formArr.length >= 3 ? 'myBtnNo' : '')}
|
|
|
- onClick={addFormFu}
|
|
|
- >
|
|
|
- 新增参观人(最多3位)
|
|
|
- </div>
|
|
|
+ {/* 个人预约才有 */}
|
|
|
+ {urlObjTemp.key === '1' ? (
|
|
|
+ <div
|
|
|
+ className={classNames('B4addBtn', formArr.length >= 5 ? 'myBtnNo' : '')}
|
|
|
+ onClick={addFormFu}
|
|
|
+ >
|
|
|
+ 新增参观人(最多5位)
|
|
|
+ </div>
|
|
|
+ ) : null}
|
|
|
|
|
|
{/* 地区选择 */}
|
|
|
<div className='B4KaBox0'>
|
|
@@ -151,7 +176,9 @@ function B4form() {
|
|
|
{formArr.map((item, index) => (
|
|
|
<div className='B4Ka' key={item.id}>
|
|
|
<div className='B4tit'>
|
|
|
- <div className='B4titTxt'>参观人信息{index + 1}</div>
|
|
|
+ <div className='B4titTxt'>
|
|
|
+ {urlObjTemp.key === '1' ? `参观人信息${index + 1}` : '负责人信息'}
|
|
|
+ </div>
|
|
|
|
|
|
{formArr.length <= 1 ? (
|
|
|
<div></div>
|
|
@@ -208,6 +235,27 @@ function B4form() {
|
|
|
</div>
|
|
|
))}
|
|
|
|
|
|
+ {/* 团体才有的,团队信息 */}
|
|
|
+ {urlObjTemp.key === '2' ? (
|
|
|
+ <div className='B4Ka'>
|
|
|
+ <div className='B4tit'>
|
|
|
+ <div className='B4titTxt'>团队信息</div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <Form.Item
|
|
|
+ label='参团人数'
|
|
|
+ name='teamPcs'
|
|
|
+ rules={[{ required: true, message: '请输入参团人数!' }]}
|
|
|
+ >
|
|
|
+ <InputNumber min={0} max={999} precision={0} placeholder='请输入数字' />
|
|
|
+ </Form.Item>
|
|
|
+
|
|
|
+ <Form.Item label='团队描述' name='teamDesc' className='A5Text'>
|
|
|
+ <TextArea autoSize maxLength={200} placeholder='请输入内容,不超过200个字' />
|
|
|
+ </Form.Item>
|
|
|
+ </div>
|
|
|
+ ) : null}
|
|
|
+
|
|
|
{/* 底部按钮 */}
|
|
|
<ZexhiBtn
|
|
|
nextFu={() => {}}
|