|
|
|
|
@ -15,12 +15,12 @@ import {
|
|
|
|
|
} from "antd";
|
|
|
|
|
import dayjs from "dayjs";
|
|
|
|
|
import { FileAddOutlined, EditOutlined } from "@ant-design/icons";
|
|
|
|
|
import { groupBy, isEmpty } from "@/utils/commons";
|
|
|
|
|
import { groupBy, isNotEmpty, isEmpty } from "@/utils/commons";
|
|
|
|
|
import { useTranslation } from "react-i18next";
|
|
|
|
|
import useFormStore from "@/stores/Form";
|
|
|
|
|
import { usingStorage } from "@/hooks/usingStorage";
|
|
|
|
|
import useExternalReviewStore, {
|
|
|
|
|
fetchRecentGroup,
|
|
|
|
|
fetchRecentGroup, initialState
|
|
|
|
|
} from "@/stores/ExternalReview";
|
|
|
|
|
import useReservationStore, { fetchCityList } from "@/stores/Reservation";
|
|
|
|
|
import SearchForm from "@/components/SearchForm";
|
|
|
|
|
@ -101,7 +101,7 @@ function ReviewList() {
|
|
|
|
|
<Button
|
|
|
|
|
type="link"
|
|
|
|
|
icon={<EditOutlined />}
|
|
|
|
|
onClick={() => onReviewSeleted(review)}
|
|
|
|
|
onClick={() => openReviewDrawer(review)}
|
|
|
|
|
>
|
|
|
|
|
Edit
|
|
|
|
|
</Button>
|
|
|
|
|
@ -113,6 +113,7 @@ function ReviewList() {
|
|
|
|
|
const [formReview] = Form.useForm();
|
|
|
|
|
const [openReview, setOpenReview] = useState(false);
|
|
|
|
|
const [dataLoading, setDataLoading] = useState(false);
|
|
|
|
|
const [submitDisabled, setSubmitDisabled] = useState(true);
|
|
|
|
|
const [guideSelectOptions, setGuideSelectOptions] = useState([]);
|
|
|
|
|
const [groupListOptions, setGroupListOptions] = useState([]);
|
|
|
|
|
const [cityListOptions, setCityListOptions] = useState([]);
|
|
|
|
|
@ -189,13 +190,26 @@ function ReviewList() {
|
|
|
|
|
);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const onReviewSeleted = async (review) => {
|
|
|
|
|
const openReviewDrawer = (review) => {
|
|
|
|
|
if (review.approvalStatus === 136002 || review.approvalStatus === 136003) {
|
|
|
|
|
setSubmitDisabled(true)
|
|
|
|
|
} else {
|
|
|
|
|
setSubmitDisabled(false)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
initCityList(review.referenceId)
|
|
|
|
|
// 转换为 Form.Item DatePicker 格式
|
|
|
|
|
review.datePosted = dayjs(review.datePosted);
|
|
|
|
|
formReview.setFieldsValue(review);
|
|
|
|
|
setOpenReview(true);
|
|
|
|
|
};
|
|
|
|
|
if (isNotEmpty(review.datePosted)) {
|
|
|
|
|
review.datePosted = dayjs(review.datePosted)
|
|
|
|
|
}
|
|
|
|
|
formReview.setFieldsValue(review)
|
|
|
|
|
setOpenReview(true)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const closeReviewDrawer = (review) => {
|
|
|
|
|
setOpenReview(false);
|
|
|
|
|
formReview.resetFields();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const onReviewFinish = (values) => {
|
|
|
|
|
postReview(values, travelAgencyId)
|
|
|
|
|
@ -226,8 +240,7 @@ function ReviewList() {
|
|
|
|
|
size={"large"}
|
|
|
|
|
open={openReview}
|
|
|
|
|
onClose={() => {
|
|
|
|
|
setOpenReview(false);
|
|
|
|
|
formReview.resetFields();
|
|
|
|
|
closeReviewDrawer()
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
<Form
|
|
|
|
|
@ -318,10 +331,9 @@ function ReviewList() {
|
|
|
|
|
<Form.Item className="flex justify-end">
|
|
|
|
|
<Space className="w-full">
|
|
|
|
|
<Button block onClick={() => {
|
|
|
|
|
setOpenReview(false)
|
|
|
|
|
formReview.resetFields()
|
|
|
|
|
closeReviewDrawer()
|
|
|
|
|
}}>Cancel</Button>
|
|
|
|
|
<Button type="primary" htmlType="submit" block>
|
|
|
|
|
<Button type="primary" htmlType="submit" block disabled={submitDisabled}>
|
|
|
|
|
Submit
|
|
|
|
|
</Button>
|
|
|
|
|
</Space>
|
|
|
|
|
@ -348,7 +360,7 @@ function ReviewList() {
|
|
|
|
|
color="cyan"
|
|
|
|
|
variant="solid"
|
|
|
|
|
icon={<FileAddOutlined />}
|
|
|
|
|
onClick={() => setOpenReview(true)}
|
|
|
|
|
onClick={() => openReviewDrawer(initialState.review)}
|
|
|
|
|
>
|
|
|
|
|
Add Review
|
|
|
|
|
</Button>
|
|
|
|
|
|