Browse Source

FIX:修复三级菜单bug

wjj 4 years ago
parent
commit
9e8bbbfceb

+ 25 - 25
src/components/GlobalHeader/RightContent.jsx

@@ -22,31 +22,31 @@ const GlobalHeaderRight = (props) => {
     className = `${styles.right}  ${styles.dark}`;
   }
 
-  useEffect(()=>{
-    let token = window.location.search.split('token=') && window.location.search.split('token=')[1];
-    dispatch({
-      type: 'editReport/getIdByToken',
-      payload: {
-        token
-      }
-    }).then(res=>{
-      //{result: "fail", cause: "身份验证失败,请重新点击按钮进入答题页面"}
-      if(res.result === 'success'){
-        let idInfo = {
-          roleId:res.roleId,
-          caseId:res.caseId,
-          examId:res.examId,
-          userId:res.userId,
-          case_take_id:res.caseId + '-' + res.examId,
-        }
-        setIdInfo(idInfo);
-      }else{
-        //错误处理
-        message.error(res.cause);
-        console.log(res)
-      }
-    })
-  },[])
+  // useEffect(()=>{
+  //   let token = window.location.search.split('token=') && window.location.search.split('token=')[1];
+  //   dispatch({
+  //     type: 'editReport/getIdByToken',
+  //     payload: {
+  //       token
+  //     }
+  //   }).then(res=>{
+  //     //{result: "fail", cause: "身份验证失败,请重新点击按钮进入答题页面"}
+  //     if(res.result === 'success'){
+  //       let idInfo = {
+  //         roleId:res.roleId,
+  //         caseId:res.caseId,
+  //         examId:res.examId,
+  //         userId:res.userId,
+  //         case_take_id:res.caseId + '-' + res.examId,
+  //       }
+  //       setIdInfo(idInfo);
+  //     }else{
+  //       //错误处理
+  //       message.error(res.cause);
+  //       console.log(res)
+  //     }
+  //   })
+  // },[])
 
 
   useEffect(() => {

+ 5 - 1
src/pages/edit/components/Step1/index.jsx

@@ -42,7 +42,11 @@ const Step1 = (props) => {
     formData.append('device_os', values.device_os);
     dispatch({
       type: 'editReport/saveReportCommonDetail',
-      payload: formData,
+      payload: {
+        formData,
+        case_take_id:`${commonId.caseId}-${commonId.examId}`,
+        worker_id:commonId.userId
+      },
     });
   };
 

+ 30 - 14
src/pages/edit/components/Step2/index.jsx

@@ -15,7 +15,7 @@ import {
 } from '@ant-design/icons';
 const { Search } = Input;
 import * as echarts from 'echarts';
-import { recurrent, severity, bug_categories } from './const';
+import { recurrent as bug_recurrent, severity, bug_categories } from './const';
 import { timeToString, getBase64 } from '@/utils/common';
 
 import BugGuideTree from '../BugGuideTree';
@@ -171,12 +171,26 @@ const Step2 = (props) => {
           useCase: currentTestCaseRef.current.id,
         },
       }).then(res => {
-        setFileList([])
+        addBugForm.resetFields();
+        setPage2List([]);
+        setPage3List([]);
+        setFileList([]);
+        forkStatus.current=false;
         setAddTestBugModal(false);
       });
     });
   };
 
+  const handleCancelTestBug = ()=>{
+    setAddTestBugModal(false);
+    setFileList([]);
+    forkInput.current.state.value = '';
+    forkStatus.current = false;
+    addBugForm.resetFields();
+    setPage2List([]);
+    setPage3List([]);
+  }
+
   const handleClickTestCase = (caseItem) => {
     // setCurrActiveTestCase(caseItem);
     currentTestCaseRef.current = caseItem;
@@ -294,7 +308,11 @@ const Step2 = (props) => {
       type: 'editReport/getBugDetail',
       payload: { id: value},
     }).then(res=>{
-      setCurrBugDetail(res.detail);
+      let detail = res.detail;
+      // detail['recurrent'] = bug_recurrent[res.detail.recurrent-1];
+      // console.log(bug_recurrent[res.detail.recurrent-1])
+      console.log(detail['recurrent'])
+      setCurrBugDetail(detail);
       const {bug_page, bug_category, severity, recurrent}  = res.detail;
       const pages = bug_page.split("-");
       const page1 = pages[0];
@@ -311,8 +329,8 @@ const Step2 = (props) => {
 
   const handleInitThreePages = ()=>{
     let detail = { ...currBugDetail };
-    detail['recurrent'] = recurrent[currBugDetail.recurrent];
-    detail['severity'] = severity[currBugDetail.severity];
+    detail['recurrent'] = bug_recurrent[currBugDetail.recurrent-1];
+    detail['severity'] = severity[currBugDetail.severity-1];
     if(JSON.stringify(detail)!=='{}') {
       let pages = detail.bug_page.split("-");
       detail.page1 = pages[0];
@@ -503,7 +521,7 @@ const Step2 = (props) => {
                             </div>
                             <div className={styles.testBugItemTitleBlock}>
                               <span className={styles.testBugItemTitle}>特征:</span>
-                              <Tag color="cyan">{recurrent[item.recurrent - 1]}</Tag>
+                              <Tag color="cyan">{bug_recurrent[item.recurrent - 1]}</Tag>
                               <Tag color="red">{severity[item.severity - 1]}</Tag>
                               <Tag color="geekblue">{item.bug_category}</Tag>
                             </div>
@@ -640,12 +658,10 @@ const Step2 = (props) => {
                <Button key='submit' type="primary" htmlType="submit" onClick={handleAddBug}>确定</Button>,
                <Button key='cancel' htmlType="button" style={{ marginLeft: '10px' }}
                        onClick={() => {
-                         setAddTestBugModal(false);
-                         setFileList([]);
-                         forkInput.current.state.value = '';
+                         handleCancelTestBug()
                        }}>取消</Button>]}
              onCancel={() => {
-               setAddTestBugModal(false);
+               handleCancelTestBug();
              }}
              className={styles.bugForm}
       >
@@ -696,7 +712,7 @@ const Step2 = (props) => {
                   ]}
                 >
                   <Select value={addBugForm.getFieldValue('page1')}
-                          disabled={forkStatus}
+                          disabled={forkStatus.current}
                           onSelect={(val) => {
                     handleSelectPage1(val);
 
@@ -719,7 +735,7 @@ const Step2 = (props) => {
                   ]}
                 >
                     <Select value={addBugForm.getFieldValue('page2')}
-                      disabled={(!page2List.length&& !addBugForm.getFieldValue('page2'))||forkStatus}
+                      disabled={(!page2List.length&& !addBugForm.getFieldValue('page2'))||forkStatus.current}
                           onSelect={(val) => {
                             handleSelectPage2(val);
                           }}>
@@ -740,7 +756,7 @@ const Step2 = (props) => {
                   ]}
                   >
                   <Select value={addBugForm.getFieldValue('page3')}
-                          disabled={(!page3List.length&& !addBugForm.getFieldValue('page3'))||forkStatus}>
+                          disabled={(!page3List.length&& !addBugForm.getFieldValue('page3'))||forkStatus.current}>
                     {page3List.map((item) => {
                       return <Select.Option value={item.item} key={item.item}>{item.item}</Select.Option>;
                     })}
@@ -792,7 +808,7 @@ const Step2 = (props) => {
             ]}
           >
             <Select>
-              {recurrent.map((item) => {
+              {bug_recurrent.map((item) => {
                 return <Select.Option value={item} key={item}>{item}</Select.Option>;
               })}
             </Select>

+ 17 - 16
src/pages/edit/model.js

@@ -46,14 +46,14 @@ const Model = {
     recommendPath: [],
     bugRecommendList: [],
     commonId:{
-      // result:"success",
-      // roleId:1,
-      // caseId:"1718",
-      // examId:"1718",
-      // beginTime:"1621945823000",
-      // endTime:"1624291200000",
-      // userId:"99222",
-      // case_take_id:"1718_1718",
+      result:"success",
+      roleId:1,
+      caseId:"1718",
+      examId:"1718",
+      beginTime:"1621945823000",
+      endTime:"1624291200000",
+      userId:"99557",
+      case_take_id:"1718_1718",
     },
   },
   effects: {
@@ -135,15 +135,16 @@ const Model = {
     },
     //todo:保存报告基础信息
     * saveReportCommonDetail({ payload }, { call, put }) {
-      let res = yield call(createReportCommon, payload);
+      let {formData,case_take_id,worker_id} = payload;
+      yield call(createReportCommon, formData);
       //res拿到报告id,组装生成report对象
-      let report = { id: res.id };
-      for (let key of payload.keys()) {
-        report[key] = payload.get(key);
-      }
-      yield put({
-        type: 'saveReportCommonInfo',
-        payload: report,
+      // let report = { id: res.id };
+      // for (let key of payload.keys()) {
+      //   report[key] = payload.get(key);
+      // }
+      yield put.resolve({
+        type: 'getReportInfo',
+        payload: { case_take_id,worker_id },
       });
       yield put({
         type: 'saveCurrentStep',

+ 1 - 1
src/utils/common.js

@@ -3,7 +3,7 @@ export const timeToString = (time)=>{
   const date = new Date(Number(time));
   const Y = date.getFullYear() + '-';
   const M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
-  const D = date.getDate() + ' ';
+  const D = (date.getDate() < 10 ? ('0' + date.getDate()) : date.getDate())+ ' ';
   const h = date.getHours() < 10 ? ('0' + date.getHours()) : date.getHours();
   const m = ':' + (date.getMinutes() < 10 ? ('0' + date.getMinutes()) : date.getMinutes()) + ':';
   const s = date.getSeconds() < 10 ? ('0' + date.getSeconds()) : date.getSeconds();