import React, { useEffect, useRef, useState } from 'react'; import { Form, Row, Col, Card, Modal, Input, Select, Upload, Button, message } from 'antd'; import { connect } from 'umi'; import styles from './index.less'; import { ForkOutlined, PlusOutlined, ExclamationCircleFilled, UploadOutlined, EditOutlined, EyeOutlined, } from '@ant-design/icons'; import { recurrent, severity, bug_categories } from './const'; const formItemLayout = { labelCol: { span: 5, }, wrapperCol: { span: 19, }, }; const Step2 = (props) => { const [form] = Form.useForm(); const [addCaseForm] = Form.useForm(); const [addBugForm] = Form.useForm(); const { data, dispatch, reportCommonInfo, testCaseList, caseBugList,categories } = props; const [showTaskRecommendModal, setTaskRecommendModal] = useState(false); const [showAddTestCaseModal, setAddTestCaseModal] = useState(false); const [showAddBugModal, setAddTestBugModal] = useState(false); const currentTestCaseRef = useRef({}); const [isAddCaseStatus, setIsAddCaseStatus] = useState(true); const [currActiveTestCase, setCurrActiveTestCase] = useState({}); if (!data) { return null; } const handleAddOrEditTestCase = () => { addCaseForm.validateFields().then((res) => { let formData = new FormData(); // formData.append("id", values.reportName); formData.append('report_id', reportCommonInfo.id); formData.append('name', res.name); formData.append('front', res.front); formData.append('behind', res.behind); formData.append('description', res.description); if (!isAddCaseStatus) { //处理编辑用例 formData.append('id', currentTestCaseRef.current.id); dispatch({ type: 'editReport/updateTestCase', payload: { formData, report_id: reportCommonInfo.id, }, }).then((res) => { if (res && res.status === 200) { message.success('修改成功!'); } }); } else { //处理添加用例 dispatch({ type: 'editReport/createTestCase', payload: { formData, report_id: reportCommonInfo.id, }, }).then((res) => { if (res && res.id) { message.success('添加成功!'); } }); } setAddTestCaseModal(false); }); }; const handleAddBug = () => { addBugForm.validateFields().then((res) => { console.log(res); let formData = new FormData(); formData.append('report_id', reportCommonInfo.id); formData.append('name', res.name); formData.append('front', res.front); formData.append('behind', res.behind); formData.append('description', res.description); }); // if (true) { // //新建bug的逻辑 // setAddTestBugModal(true); // dispatch({ // type: 'editReport/createTestCase', // payload: { // report_id:reportCommonInfo.id // }, // }).then((res)=>{ // if(res&&res.id){ // message.success('添加成功!'); // } // }); // } else { // //编辑bug的逻辑 // } }; const handleClickTestCase = (caseItem) => { setCurrActiveTestCase(caseItem); dispatch({ type: 'editReport/getCaseBugList', payload: caseItem.id, }); }; const handleEditTestCase = (item) => { setIsAddCaseStatus(false); currentTestCaseRef.current = item; addCaseForm.setFieldsValue(currentTestCaseRef.current); setAddTestCaseModal(true); }; const handleClickAddCase = () => { currentTestCaseRef.current = {}; addCaseForm.resetFields(); setAddTestCaseModal(true); }; // const handleEditBug = (item) => { // setIsAddCaseStatus(false); // currentTestCaseRef.current = item; // addBugForm.setFieldsValue(currentTestCaseRef.current) // setAddTestCaseModal(true); // }; const handleClickAddBug = () => { addBugForm.resetFields(); setAddTestBugModal(true); }; useEffect(() => { //判断是否已经有报告 dispatch({ type: 'editReport/getReportInfo', payload: { case_take_id: '1718-1718', worker_id: 1, }, }).then(() => { //有报告,获取对应信息。没有就直接转去了第一步 dispatch({ type: 'editReport/getTestCaseList', payload: { report_id: reportCommonInfo.id }, }); dispatch({ type: 'editReport/getCategories', payload: { examId: 1945 }, }); }); }, [dispatch]); return (
{'2021.4.12'} {reportCommonInfo.name} {reportCommonInfo.device_brand} {reportCommonInfo.device_model} {reportCommonInfo.device_os}

测试用例列表

{testCaseList && testCaseList.map((item) => { return (
{ handleClickTestCase(item); }}>

{item.name}

handleEditTestCase(item)} />
); })}

缺陷列表

{caseBugList.map((item) => { return (
Bug标题:{item.detail.title}
复现程度:{recurrent.get(item.detail.recurrent)}
严重程度:{item.detail.severity}
缺陷分类:{severity.get(item.detail.bug_category)}
); })}
确定, ]} onCancel={() => { setAddTestCaseModal(false); }} > 为了评分准确,请勿提交重复测试用例
确定, ]} onCancel={() => { setAddTestBugModal(false); }} > 为了评分准确,请勿提交重复Bug
{/**/} {/* */} {/* */} {/* */} {/**/}
setTaskRecommendModal(false)} onCancel={() => setTaskRecommendModal(false)} className="addModal">
); }; export default connect(({ editReport, loading }) => ({ submitting: loading.effects['editReport/submitStepForm'], data: editReport.step, reportCommonInfo: editReport.reportCommonInfo, testCaseList: editReport.testCaseList, caseBugList: editReport.caseBugList, categories:editReport.categories }))(Step2);