Merge branch 'expert_review' of https://code.gitlink.org.cn/durian/forgeplus-react into dev_military_osredm

This commit is contained in:
何童崇 2022-01-19 16:47:50 +08:00
commit 9711945393
7 changed files with 18 additions and 16 deletions

View File

@ -53,21 +53,21 @@ const AdminPage = (propsF) => {
></Route>
{/* 创客任务评审规则 */}
<Route
path="/expert/admin/task/review/rules/:taskId"
path="/expert/admin/task/review/rules/:containerType/:containerId"
render={(props) => (
<ReviewRules {...propsF} {...props} />
)}
></Route>
{/* 创客任务选择评审专家 */}
<Route
path="/expert/admin/task/review/select/:taskId"
path="/expert/admin/task/review/select/:containerType/:containerId"
render={(props) => (
<SelectExpert {...propsF} {...props} />
)}
></Route>
{/* 创客任务评审结果查看 */}
<Route
path="/expert/admin/task/review/results/:taskId"
path="/expert/admin/task/review/results/:containerType/:containerId"
render={(props) => (
<ReviewResult {...propsF} {...props} />
)}

View File

@ -59,7 +59,7 @@ function ReviewTasks({ form, showNotification, match, history }) {
dataIndex: 'status',
key: 'status',
render: (text, record) => {
return text === -1 ? '未评审' : '已评审'
return text === -1 ? '未评审' : record.commitReview ? '已评审':'已过期'
}
},
{

View File

@ -145,16 +145,16 @@ function GradesModal({ setVisible, visible, taskId, opsDetail }) {
>
<div className="opsDetail">
综合排名: {opsDetail && opsDetail.id}
<span className="ml20">应征者: </span> {opsDetail && (opsDetail.applicantInfo.nickname == null ? opsDetail.applicantInfo.login : opsDetail.applicantInfo.nickname)}
<span className="ml20">平均得分: </span> {opsDetail && opsDetail.finalGrades}
<span className="ml20">是否胜出: </span> {opsDetail && opsDetail.isWin ? <div className="sucess df"><img src={sucess}/>胜出</div> : '未胜出'}
<span className="ml30">应征者:&nbsp;&nbsp;</span> {opsDetail && (opsDetail.applicantInfo.nickname == null ? opsDetail.applicantInfo.login : opsDetail.applicantInfo.nickname)}
<span className="ml30">平均得分:&nbsp;&nbsp;</span> {opsDetail && opsDetail.finalGrades || `--`}
<span className="ml30">是否胜出:&nbsp;&nbsp;</span> {opsDetail && opsDetail.isWin ? <div className="sucess df"><img src={sucess}/>胜出</div> : '未胜出'}
</div>
<Paginationtable
loading={loading}
dataSource={dataList}
columns={columns}
pagination={false}
scroll={{ y: 384 }}
scroll={{ y: 430 }}
/>
</Modal>
)

View File

@ -10,7 +10,7 @@ import '../index.scss';
import { queryString } from "educoder";
function ReviewResult({ history, match }) {
const {taskId} = match.params;
const taskId = match.params.containerId;
let {status, name, taskModeId} = queryString.parse(window.location.hash.slice(1));
const [dataList, setDateList] = useState(undefined);
const [openResultVisible, setOpenResultVisible] = useState(false);
@ -117,6 +117,8 @@ function ReviewResult({ history, match }) {
setErrorMessage('请输入数字!');
}else if(openRange && (openRange.indexOf('.')!==-1 || openRange.indexOf('-')!==-1)){
setErrorMessage('请输入正整数!');
}else if(openRange && openRange < winIds.length){
setErrorMessage('公示范围不能少于获胜人数!');
}else if(openRange && openRange > dataList.length){
setErrorMessage('公示范围超过应征者总数!');
}else{

View File

@ -11,7 +11,7 @@ import { queryString } from "educoder";
const {RangePicker} = DatePicker;
function ReviewRules({form, history, match}) {
const id = match.params.taskId;
const id = match.params.containerId;
const {name, status, createdAt, collectingEndTime, choosingDays} = queryString.parse(window.location.search.slice(1));
const { getFieldDecorator,setFieldsValue } = form;
//

View File

@ -14,7 +14,7 @@ const { Search } = Input;
function SelectExpert(props) {
const { history, form, current_user, match } = props;
const { taskId} = match.params;
const taskId = match.params.containerId;
const { name} = queryString.parse(window.location.search.slice(1));
const { getFieldDecorator, setFieldsValue } = form;
const [reload, setReload] = useState();
@ -261,11 +261,11 @@ function SelectExpert(props) {
}
assignExperts(params).then(response=>{
if(response && response.message === '专家指派成功'){
id.map(i=>setAllSelectedExpertsId(allSelectedExpertsId.add(i)));
setOkConfirmExps(false);
message.success(response.message);
setSelectedRowKeys([]);
setReload(Math.random());
id.map(i=>setAllSelectedExpertsId(allSelectedExpertsId.add(i)));
}
})
}

View File

@ -224,14 +224,14 @@ export default Form.create()(({ form, showNotification, match, history, state })
title: '评审规则',
dataIndex: 'ruleEditedCount',
render: (text, record) => {
return record.assignRuleAndExperts ? <Button size='small' type="primary" onClick={()=>{viewRules(record)}}>查看</Button> : record.expertReview && (record.status === 1 || record.status === 3) ? <Link className="line_1 primary-link" to={`/expert/admin/task/review/rules/${record.id}/?status=${record.status}&name=${record.name}&createdAt=${record.createdAt}&collectingEndTime=${record.collectingEndTime}&choosingDays=${record.choosingDays}`}>编辑</Link> : <span className='gary_span'>编辑</span>
return record.assignRuleAndExperts ? <Button size='small' type="primary" onClick={()=>{viewRules(record)}}>查看</Button> : record.expertReview && (record.status === 1 || record.status === 3) ? <Link className="line_1 primary-link" to={`/expert/admin/task/review/rules/${1}/${record.id}/?status=${record.status}&name=${record.name}&createdAt=${record.createdAt}&collectingEndTime=${record.collectingEndTime}&choosingDays=${record.choosingDays}`}>编辑</Link> : <span className='gary_span'>编辑</span>
}
},
{
title: '专家选取',
dataIndex: 'expertSelectedCount',
render: (text, record) => {
return record.assignRuleAndExperts ? <Button size='small' type="primary" onClick={()=>{viewExperts(record)}}>查看</Button> : record.expertReview && (record.status === 1 || record.status === 3) ? <Link className="line_1 primary-link" to={`/expert/admin/task/review/select/${record.id}/?name=${record.name}`}>选择</Link> : <span className='gary_span'>选择</span>
return record.assignRuleAndExperts ? <Button size='small' type="primary" onClick={()=>{viewExperts(record)}}>查看</Button> : record.expertReview && (record.status === 1 || record.status === 3) ? <Link className="line_1 primary-link" to={`/expert/admin/task/review/select/${1}/${record.id}/?name=${record.name}`}>选择</Link> : <span className='gary_span'>选择</span>
}
},
{
@ -245,7 +245,7 @@ export default Form.create()(({ form, showNotification, match, history, state })
title: '评审结果',
dataIndex: 'expertReview2',
render: (text, record) => {
return record.assignRuleAndExperts ? <Link className="line_1 primary-link" to={`/expert/admin/task/review/results/${record.id}/#status=${record.status}&name=${record.name}&taskModeId=${record.taskModeId}`}>查看</Link>:<span className='gary_span'>查看</span>
return record.assignRuleAndExperts ? <Link className="line_1 primary-link" to={`/expert/admin/task/review/results/${1}/${record.id}/#status=${record.status}&name=${record.name}&taskModeId=${record.taskModeId}`}>查看</Link>:<span className='gary_span'>查看</span>
}
},
{
@ -425,7 +425,7 @@ export default Form.create()(({ form, showNotification, match, history, state })
//
function viewRules(record){
let rules = undefined;
getRules({containerId: record.id, containerType: 1, statusString: '-1,1'}).then(response=>{
getRules({containerId: record.id, containerType: 1, statusString: '-1,1,2'}).then(response=>{
if(response && response.message === "success"){
rules = response.data;
}