Merge branch 'main' of github.com:hainatravel/GHHub

release
Jimmy Liow 2 years ago
commit 2ef1468c55

@ -19,3 +19,8 @@ antd https://ant-design.antgroup.com/components/upload-cn#uploadfile
Bucket 名称global-highlights-hub
Endpointoss-cn-hongkong.aliyuncs.com
global-highlights-hub.oss-cn-hongkong.aliyuncs.com
反馈表测试链接
http://202.103.68.111:5173/feedback/330948

@ -19,6 +19,7 @@ import ReservationPrint from "@/views/reservation/Print";
import ReservationNameCard from "@/views/reservation/NameCard";
import FeedbackIndex from "@/views/feedback/Index";
import FeedbackDetail from "@/views/feedback/Detail";
import NoticeIndex from "@/views/notice/Index";
configure({
@ -43,6 +44,7 @@ const router = createBrowserRouter([
{ path: "reservation/:reservationId/name-card", element: <ReservationNameCard />},
{ path: "feedback", element: <FeedbackIndex />},
{ path: "feedback/:GRI_SN", element: <FeedbackDetail />},
{ path: "notice", element: <NoticeIndex />},
]
},
{

@ -10,7 +10,7 @@ class Auth {
login = {
userId: 1,
username: 'Vu Xuan Giang(ANP)',
travelAgencyId: 32531
travelAgencyId: 32531 //30008供应商id对应HT的VEI_SN
}
}

@ -77,6 +77,7 @@ function App() {
{ key: "/reservation/newest", label: <Link to="/reservation/newest">Reservation</Link> },
{ key: "/feedback", label: <Link to="/feedback">Feedback</Link> },
{ key: "/invoice/list", label: <Link to="/invoice/list">Invoice</Link> },
{ key: "/notice", label: <Link to="/notice">Notice</Link> },
]}
/>
</Col>

@ -12,14 +12,14 @@ import * as config from "@/config";
function Detail() {
const navigate = useNavigate();
const { GRI_SN } = useParams();
const { feedbackStore } = useStore();
const { feedbackStore, authStore } = useStore();
const { feedbackRate, feedbackReview } = feedbackStore;
const [value, setValue] = useState(3);
const desc = ["none", "Unacceptable", "Poor", "Fair", "Very Good", "Excellent"];
useEffect(() => {
console.info("Detail.useEffect: " + GRI_SN);
feedbackStore.getFeedbackDetail(30008, GRI_SN);
feedbackStore.getFeedbackDetail(authStore.login.travelAgencyId, GRI_SN);
}, [GRI_SN]);
const HWO_Guide = feedbackRate && feedbackRate.HWO_Guide ? feedbackRate.HWO_Guide : 0;
@ -29,6 +29,7 @@ function Detail() {
const HWO_Activity = feedbackRate && feedbackRate.HWO_Activity ? feedbackRate.HWO_Activity : 0;
const OtherThoughts = feedbackRate && feedbackRate.OtherThoughts ? feedbackRate.OtherThoughts : "";
const PhotoPermission = feedbackRate && feedbackRate.PhotoPermission && feedbackRate.PhotoPermission == "YES" ? true : false;
const ECI_Content = feedbackReview && feedbackReview.ECI_Content ? feedbackReview.ECI_Content : "None";
const [fileList, setFileList] = useState([
{
@ -63,17 +64,17 @@ function Detail() {
let newFileList = [...info.fileList];
newFileList = newFileList.map(file => {
if (file.response) {
file.url = file.response.url;
file.url = file.response;
}
return file;
});
setFileList(newFileList);
};
const handRemove=info=>{
const handRemove = info => {
console.log(info);
return true
}
return true;
};
return (
<Space direction="vertical" style={{ width: "100%" }}>
@ -145,6 +146,21 @@ function Detail() {
</Col>
<Col span={4}></Col>
</Row>
<Row gutter={16}>
<Col span={20}>
<Title level={4}>站外好评</Title>
</Col>
<Col span={4}></Col>
</Row>
<Row gutter={16}>
<Col span={4}></Col>
<Col span={18}>
<Text>{ECI_Content}</Text>
</Col>
<Col span={4}></Col>
</Row>
<Row gutter={16}>
<Col span={20}>
<Title level={4}>地接社的反馈</Title>
@ -156,25 +172,33 @@ function Detail() {
<Col span={4}></Col>
<Col span={18}>
<Form labelCol={{ span: 5 }}>
<Divider orientation="left">地接社反馈</Divider>
<Form.Item>
<Input.TextArea rows={6}></Input.TextArea>
</Form.Item>
<Divider orientation="left">上传照片</Divider>
<Form.Item>
<Upload name="ghhfile" accept="image/*" action={"http://202.103.68.157:890/service-fileServer/FileTransfer?filename=test11111.jpg"}>
<Button type="primary">上传</Button>
</Upload>
</Form.Item>
<Form.Item>
<Upload name="ghhfile-111" accept="image/*" action={config.HT_HOST + "/service-fileServer/FileTransfer?filename=test11111.jpg"} fileList={fileList} listType="picture-card" onChange={handleChange} onRemove={handRemove}>
<Upload
name="ghhfile"
accept="image/*"
multiple={true}
action={config.HT_HOST + `/service-fileServer/FileUpload?GRI_SN=${GRI_SN}&VEI_SN=${authStore.login.travelAgencyId}`}
fileList={fileList}
listType="picture-card"
onChange={handleChange}
onRemove={handRemove}>
<div>
<PlusOutlined />
<div style={{ marginTop: 8 }}>Click to Upload</div>
</div>
</Upload>
</Form.Item>
<Divider orientation="left">地接社反馈信息</Divider>
<Form.Item>
<Input.TextArea rows={6}></Input.TextArea>
</Form.Item>
<Form.Item>
<Button type="primary" onClick={() => console.info("submit")}>
Submit
</Button>
</Form.Item>
</Form>
</Col>
<Col span={4}></Col>

@ -37,7 +37,7 @@ const feedbackListColumns = [
];
function Index() {
const { feedbackStore } = useStore();
const { feedbackStore, authStore } = useStore();
const { feedbackList } = feedbackStore;
const [selectedDateRange, onDateRangeChange] = useState([config.DATE_PRESETS[0].value]);
const [referenceNo, onNumberChange] = useState("");
@ -71,7 +71,7 @@ function Index() {
/>
</Col>
<Col md={24} lg={4} xxl={4}>
<Button type="primary" loading={feedbackStore.loading} onClick={() => feedbackStore.searchFeedbackList(30008, referenceNo, selectedDateRange[0], selectedDateRange[1] + " 23:59")}>
<Button type="primary" loading={feedbackStore.loading} onClick={() => feedbackStore.searchFeedbackList(authStore.login.travelAgencyId, referenceNo, selectedDateRange[0], selectedDateRange[1] + " 23:59")}>
搜索
</Button>
</Col>

@ -0,0 +1,59 @@
import { NavLink } from "react-router-dom";
import { useEffect, useState } from "react";
import { observer } from "mobx-react";
import { toJS } from "mobx";
import { Row, Col, Space, Button, Table, Input, Typography, DatePicker, Radio } from "antd";
import { useStore } from "@/stores/StoreContext.js";
import * as config from "@/config";
import * as comm from "@/utils/commons";
import dayjs from "dayjs";
const { Title, Paragraph, Text } = Typography;
function Index() {
const { feedbackStore } = useStore();
useEffect(() => {
console.info("feedback.useEffect");
}, []);
const [ellipsis, setEllipsis] = useState(true);
return (
<Space direction="vertical" style={{ width: "100%" }}>
<Row gutter={16}>
<Col span={4}></Col>
<Col span={18}>
<Title level={2}>Guidelines and Resources</Title>
<Paragraph ellipsis={{ expandable: true, rows: 5 }}>
We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product prototypes beautifully and We
supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product prototypes beautifully and We
supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product prototypes beautifully and We
supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product prototypes beautifully and
efficiently. efficiently. We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product
prototypes beautifully and We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product
prototypes beautifully and efficiently. efficiently. We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help
people create their product prototypes beautifully and We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help
people create their product prototypes beautifully and efficiently. efficiently. efficiently. efficiently.
</Paragraph>
<Title level={2}>第二个公告</Title>
<Paragraph ellipsis={{ expandable: true, rows: 5 }}>
We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product prototypes beautifully and We
supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product prototypes beautifully and We
supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product prototypes beautifully and We
supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product prototypes beautifully and
efficiently. efficiently. We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product
prototypes beautifully and We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help people create their product
prototypes beautifully and efficiently. efficiently. We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help
people create their product prototypes beautifully and We supply a series of design principles, practical patterns and high quality design resources (<Text code>Sketch</Text> and <Text code>Axure</Text>), to help
people create their product prototypes beautifully and efficiently. efficiently. efficiently. efficiently.
</Paragraph>
</Col>
<Col span={4}></Col>
</Row>
</Space>
);
}
export default observer(Index);
Loading…
Cancel
Save