RightContent.jsx 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. import { Tooltip, Tag ,message} from 'antd';
  2. import { QuestionCircleOutlined } from '@ant-design/icons';
  3. import React, { useEffect, useState } from 'react';
  4. import { connect, SelectLang } from 'umi';
  5. import Avatar from './AvatarDropdown';
  6. import HeaderSearch from '../HeaderSearch';
  7. import styles from './index.less';
  8. import NoticeIconView from './NoticeIconView';
  9. const ENVTagColor = {
  10. dev: 'orange',
  11. test: 'green',
  12. pre: '#87d068',
  13. };
  14. const GlobalHeaderRight = (props) => {
  15. const { theme, layout, dispatch, taskName,collaborative_type } = props;
  16. const [idInfo, setIdInfo] = useState({});
  17. let className = styles.right;
  18. if (theme === 'dark' && layout === 'top') {
  19. className = `${styles.right} ${styles.dark}`;
  20. }
  21. useEffect(()=>{
  22. let token = window.location.search.split('token=') && window.location.search.split('token=')[1];
  23. dispatch({
  24. type: 'editReport/getIdByToken',
  25. payload: {
  26. token
  27. }
  28. }).then(res=>{
  29. //{result: "fail", cause: "身份验证失败,请重新点击按钮进入答题页面"}
  30. if(res.result === 'success'){
  31. let idInfo = {
  32. roleId:res.roleId,
  33. caseId:res.caseId,
  34. examId:res.examId,
  35. userId:res.userId,
  36. case_take_id:res.caseId + '-' + res.examId,
  37. }
  38. setIdInfo(idInfo);
  39. }else{
  40. //错误处理
  41. message.error(res.cause);
  42. console.log(res)
  43. }
  44. })
  45. },[])
  46. useEffect(() => {
  47. console.log('这里发请求了,right');
  48. if (idInfo && idInfo.examId) {
  49. dispatch({
  50. type: 'report/getTaskName',
  51. payload: { examId: idInfo.examId },
  52. });
  53. dispatch({
  54. type: 'editReport/getOsType',
  55. payload: { examId: idInfo.examId },
  56. },[idInfo.examId])
  57. }
  58. },[dispatch, idInfo.examId]);
  59. return (
  60. <div className={className}>
  61. {/*<NoticeIconView />*/}
  62. <h3>{taskName ? `${taskName} [${collaborative_type==='0' ? '智能推荐模式' : ''}]` : ''}</h3>
  63. {/*<h3>{taskName || ''}</h3>*/}
  64. {/*<SelectLang className={styles.action}/>*/}
  65. </div>
  66. );
  67. };
  68. export default connect(({ report, settings }) => ({
  69. theme: settings.navTheme,
  70. layout: settings.layout,
  71. taskName: report.taskName,
  72. collaborative_type: report.collaborative_type,
  73. }))(GlobalHeaderRight);