修改多个issue,修改管理页路由组件引入方式

This commit is contained in:
何童崇 2021-09-09 16:35:19 +08:00
parent 6e82862307
commit 94ee3601c9
22 changed files with 215 additions and 180 deletions

View File

@ -5,7 +5,8 @@ import cookie from 'react-cookies';
let actionUrl = '';
if (window.location.href.indexOf(':3007') > -1) {
actionUrl = 'http://117.50.100.12:8008';
actionUrl="https://taskapi.osredm.com"; //测试环境
// actionUrl = 'http://117.50.100.12:8008';
// actionUrl='http://192.168.31.74:8081'; //万佳后台
} else if (window.location.href.indexOf('117.50.100.12') > -1 ) {
actionUrl = "http://117.50.100.12:8008"; //测试环境

View File

@ -31,50 +31,13 @@ const MyTask = Loadable({
loading: Loading,
});
const TaskManage = Loadable({
loader: () => import("./task/taskManage"),
const TaskAdminRouter = Loadable({
loader: () => import("./task/taskAdminRouter"),
loading: Loading,
});
const PaperManage = Loadable({
loader: () => import("./task/paperManage"),
loading: Loading,
});
const PaperComplain = Loadable({
loader: () => import("./task/paperComplain"),
loading: Loading,
});
const ProofManage = Loadable({
loader: () => import("./task/proofManage"),
loading: Loading,
});
const PublicityComplain = Loadable({
loader: () => import("./task/publicityComplain"),
loading: Loading,
});
const AgreementManage = Loadable({
loader: () => import("./task/agreementManage"),
loading: Loading,
});
const PayProof = Loadable({
loader: () => import("./task/payProof"),
loading: Loading,
});
const TaskAdmin = Loadable({
loader: () => import("./task/taskAdmin"),
loading: Loading,
});
const DelayManage = Loadable({
loader: () => import("./task/delayManage"),
loading: Loading,
});
const Index = (propsTransmit) => {
// 开发时,从代理的位置获取用户信息
@ -126,77 +89,11 @@ const Index = (propsTransmit) => {
)}
></Route>
{/* 任务管理审核 */}
{/* 管理员管理 */}
<Route
path="/task/taskManage"
path="/task/:admin"
render={(props) => (
<React.Fragment>
<TaskManage {...propsF} {...props} />
</React.Fragment>
)}
></Route>
{/* 成果管理审核 */}
<Route
path="/task/paperManage"
render={(props) => (
<PaperManage {...propsF} {...props} />
)}
></Route>
{/* 成果申诉管理审核 */}
<Route
path="/task/paperComplain"
render={(props) => (
<PaperComplain {...propsF} {...props} />
)}
></Route>
{/* 公示期成果申诉管理审核 */}
<Route
path="/task/publicityComplain"
render={(props) => (
<PublicityComplain {...propsF} {...props} />
)}
></Route>
{/* 佐证管理审核 */}
<Route
path="/task/proofManage"
render={(props) => (
<ProofManage {...propsF} {...props} />
)}
></Route>
{/* 协议审核 */}
<Route
path="/task/agreementManage"
render={(props) => (
<AgreementManage {...propsF} {...props} />
)}
></Route>
{/* 管理员上传支付凭证 */}
<Route
path="/task/payProof"
render={(props) => (
<PayProof {...propsF} {...props} />
)}
></Route>
{/* 管理员任务列表 */}
<Route
path="/task/taskAdmin"
render={(props) => (
<TaskAdmin {...propsF} {...props} />
)}
></Route>
{/* 延期管理 */}
<Route
path="/task/delayManage"
render={(props) => (
<DelayManage {...propsF} {...props} />
<TaskAdminRouter {...propsF} {...props} />
)}
></Route>
@ -208,7 +105,6 @@ const Index = (propsTransmit) => {
)}
></Route>
</Switch>
</div>
);

View File

@ -1,6 +1,6 @@
import React, { useCallback, useEffect, useState } from 'react';
import { Input, Button, Form, Select } from 'antd';
import AdminRouter from '../components/adminRouter';
import ItemAgreementManage from '../components/itemAgreementManage';
import StatusNav from '../../components/statusNav';
import { agreementArr } from '../static';
@ -125,7 +125,7 @@ export default Form.create()(({ form, showNotification, match, history }) => {
return (
<div className="centerbox task-manage">
<AdminRouter history={history} />
<div className="center-screen" >
<div className="center-left-but">
{helper(

View File

@ -94,7 +94,7 @@ export default props => {
return (
<div className="managements_menus clearfix">
<div className="centerbox managements_menus clearfix">
<Dropdown key={'projectMenu'} overlay={projectMenu} placement="bottomLeft">
<div className="drop-div">
项目

View File

@ -6,7 +6,7 @@ import '../../index.scss';
export default Form.create()(props => {
const { visible, setVisible, checkedItem, form, showNotification } = props;
const { visible, setVisible, checkedItem, form, showNotification ,reloadList } = props;
const { getFieldDecorator, validateFields, setFieldsValue, } = form;
const [fileList, setFileList] = useState([]);
@ -35,6 +35,7 @@ export default Form.create()(props => {
});
setVisible(false);
showNotification("上传协议成功!");
reloadList();
} else {
showNotification(res.message || "上传协议失败")
}

View File

@ -221,7 +221,7 @@ export default Form.create()((props) => {
}
{
item.status === 4 && item.papersCount > 0 && (!item.isProofBoolean) &&
item.status === 4 && item.papersCount > 0 && (!item.isProofBoolean) && (!item.isProofBoolean)&&
<a onClick={() => { uploadProofs(item) }} className="line_1 color-blue">上传佐证材料</a>
}

View File

@ -144,7 +144,6 @@ export default Form.create()((props) => {
<React.Fragment>
{
list.map(item => {
return (
<div className="fileComments df" key={item.id}>
@ -152,7 +151,7 @@ export default Form.create()((props) => {
<div className="flex1">
<ul>
<li className="fl pr">
<span className={item.user.nickname === "******" ? "font-16 mr20 color-grey3":"user-box font-16 mr20 color-grey3 clickable"} onClick={() => { item.user.nickname === "******" ? "" : goUser(item.user.login) }}>
<span className={item.user.nickname === "******" ? "font-16 mr20 color-grey3" : "user-box font-16 mr20 color-grey3 clickable"} onClick={() => { item.user.nickname === "******" ? "" : goUser(item.user.login) }}>
{item.user.nickname || item.user.login}
</span>
<span className="color-grey9">{timeAgo(item.createdAt)}</span>
@ -162,7 +161,7 @@ export default Form.create()((props) => {
{((item.needComplain && detailStatus === 3) || (detailStatus === 5 && item.publicTaskComplain && item.checkStatus === 1 && item.status !== 2)) && (current_user.login === item.user.login) &&
<a className="base_smallBtn blue_line_btn fl" onClick={() => { setComplainVisible(true); setCheckedItem(item) }}>申诉</a>}
{item.status === 2 && detailStatus === 6 && (current_user.login === item.user.login) && (!item.sign) && (item.canApplicantSign||item.canApplicantSignByPlatform) &&
{item.status === 2 && detailStatus === 6 && (current_user.login === item.user.login) && (!item.sign) && (item.canApplicantSign || item.canApplicantSignByPlatform) &&
<a className="base_smallBtn blue_line_btn fl" onClick={() => { setAgreeVisible(true); setCheckedItem(item) }}>签订协议</a>}
{item.status === 2 && detailStatus === 7 && (current_user.login === item.user.login) && (item.task && item.task.agreementSigning === 1) && (!item.isPay) &&
@ -186,7 +185,7 @@ export default Form.create()((props) => {
{item.comments && item.comments.length > 0 && <div className="padding20 fileCommentsList">
{item.comments.map(commentsItem => {
return <div className="comments-item">
return <div className="comments-item" key={commentsItem.id}>
<div className="comments-author">
<span className="color-grey3 font-bd mr20">{commentsItem.user.nickname || commentsItem.user.login}</span>
<span className="color-grey9">{timeAgo(commentsItem.createdAt)}</span>
@ -196,7 +195,6 @@ export default Form.create()((props) => {
</div>
})
}
{/* <!-- <a href="javascript:void(0)" className="mt10 mb10 color-blue">查看更多回复>></a>--> */}
</div>}
@ -206,7 +204,7 @@ export default Form.create()((props) => {
<span className="fl"><span className="color-grey9">稿件状态</span>{item.read ? '雇主已浏览' : '雇主未浏览'}</span>
{
item.user.nickname !== "******" && <span className="fr">
<a className="mr20" onClick={() => { setReportVisible(true); setCheckedItem(item) }}><i className="iconfont icon-jinggao font-15 mr3"></i>举报</a>
{[4, 5].includes(detailStatus) && <a className="mr20" onClick={() => { setReportVisible(true); setCheckedItem(item) }}><i className="iconfont icon-jinggao font-15 mr3"></i>举报</a>}
<a className="mr20" onClick={() => { commentEdit(item.id) }}><i className="iconfont icon-huifu1 font-15 mr3"></i>{item.comments ? item.comments.length : 0}</a>
<a onClick={() => { thumbUp(item.id) }}><i className="iconfont icon-dianzan11 font-16 mr3"></i>{item.thumbsUp}</a>
</span>
@ -227,6 +225,7 @@ export default Form.create()((props) => {
</React.Fragment>}
</div>
</div>
)

View File

@ -77,34 +77,29 @@ export default Form.create()((props) => {
<span className="fl color-grey-9 mt3 mr15">{timeAgo(item.createdAt)}</span>
<span className="infos_item color-grey-9 fl">发布方式:</span>
<span className="infos_item mr15 fl">{item.task && item.task.publishMode === 1 ? '统筹任务' : '自主提交'}</span>
<span className="fr">
{/* {item.status === 2 && <span className="spanTitle color-grey-6 fl ml20">已同意</span>} */}
{/* {item.status === 0 && <span className="spanTitle color-red fl ml20">已驳回</span>} */}
{
item.status === 1 && <React.Fragment>
<a className="edu-default-btn edu-orangeline-btn ml20 fl" onClick={() => { item.user && goUserMes(item.user.login) }}>私信</a>
</React.Fragment>
}
</span>
<span className="fr"><a className="edu-default-btn edu-orangeline-btn ml20 fl" onClick={() => { item.user && goUserMes(item.user.login) }}>私信</a></span>
</li>
<div className="clearfix">
<div className="width100 lineh-35" style={{ display: "inline-flex" }}>
<div className="width100 lineh-35" >
<span className="with40 fl lineh-35">
<span className="color-grey-9 fl">任务编号:</span>
<span className="infos_item mr15">{item.task.number}</span>
<span className="fl lineh-35 ml5">
<Link className="primary-link" to={`/task/taskDetail/${item.taskId}`}>{item.task.name}</Link>
</span>
</span>
<span className="with40 fl lineh-35">
<span className="color-grey-9 fl">任务编号:</span>
<span className="infos_item">{item.task.number}</span>
</span>
</div>
<div className="clearfix">
<span className="with40 fl lineh-35" style={{ display: "inline-flex" }}>
<span className="color-grey-9 fl">联系手机:</span>
<span className="infos_item">{item.user.phone}</span>
</span>
</div>
<div className="clearfix"></div>
{!item.isPay && (item.status !== 8) && <div className="width100 lineh-35 clearfix">
<Button type="primary" onClick={() => { setVisible(true); setCheckedItem(item) }}>上传支付报酬凭证</Button>

View File

@ -102,7 +102,25 @@ export default (props) => {
</span>
</li>
<ul className="clearfix">
<div className="width100" style={{ display: "inline-flex" }}>
<div className="width100">
<span className="with40 fl inline-block lineh-35">
<span className="color-grey-9 fl">任务名称:</span>
<span className="fl lineh-35 ml5">
<Link className="primary-link" to={`/task/taskDetail/${item.id}`}>{item.name}</Link>
</span>
</span>
<span className=" lineh-35">
<span className="color-grey-9 fl">任务编号:</span>
<span className="infos_item">{item.number}</span>
</span>
{item.status === 1 && <div className="fr text-center">
<Button type="primary" onClick={() => { window.open(`${main_web_site_url}/admin/tasks/export_task_files.zip?task_id=${item.id}`) }} className="edu-default-btn edu-blueback-btn">导出任务需求材料</Button>
</div>}
</div>
<div className="clearfix"></div>
<div className="width100">
<div className="width100">
<span className="with40 fl lineh-35">
<span className="color-grey-9 fl">主体名称:</span>
@ -110,24 +128,19 @@ export default (props) => {
</span>
<span className="inline-block lineh-35">
<span className="color-grey-9 fl">信用代码:</span>
<span className="infos_item">123456789123456789</span>
<span className="infos_item"></span>
</span>
{item.status === 1 && <div class="fr text-center">
<Button type="primary" onClick={() => { window.open(`${main_web_site_url}/admin/tasks/export_task_files.zip?task_id=${item.id}`) }} class="edu-default-btn edu-blueback-btn">导出任务需求材料</Button>
</div>}
</div>
</div>
<div className="clearfix"></div>
<div className="width100">
<span className="with40 fl lineh-35">
<span className="color-grey-9 fl">联系手机:</span>
<span className="infos_item">{item.contactPhone}位置分析{item.belongTo||'河北-唐山'}</span>
<span className="infos_item">{item.contactPhone}{item.belongTo && `(位置分析:${item.belongTo}`}</span>
</span>
<span className="inline-block lineh-35">
<span className="color-grey-9 fl">IP地址:</span>
<span className="infos_item">{item.ip}位置分析{item.belongTo||'河北-唐山'}</span>
<span className="infos_item">{item.ip}{item.belongTo && `(位置分析:${item.belongTo}`}</span>
</span>
</div>
<div className="clearfix"></div>
@ -145,19 +158,7 @@ export default (props) => {
<span className="infos_item">普通员工</span>
</span>
</div>
<div className="clearfix"></div>
<div className="width100">
<span className="with40 fl lineh-35">
<span className="color-grey-9 fl">任务编号:</span>
<span className="infos_item">{item.number}</span>
</span>
<span className="inline-block lineh-35">
<span className="color-grey-9 fl">任务名称:</span>
<span className="fl lineh-35 ml5">
<Link className="primary-link" to={`/task/taskDetail/${item.id}`}>{item.name}</Link>
</span>
</span>
</div>
</ul>
</div>

View File

@ -154,6 +154,8 @@ export default Form.create()(props => {
if (res && res.message === 'success') {
changeVisible(false);
reloadList();
} else {
showNotification((res && res.message) || "评选提交失败");
}
});
}

View File

@ -1,6 +1,6 @@
import React, { useCallback, useEffect, useState } from 'react';
import { Input, Button } from 'antd';
import AdminRouter from '../components/adminRouter';
import ItemDelayManage from '../components/itemDelayManage';
import StatusNav from '../../components/statusNav';
import { delayTaskArr, delayDealArr } from '../static';
@ -69,7 +69,7 @@ export default ({ current_user, showNotification, history }) => {
return (
<div className="centerbox task-manage">
<AdminRouter history={history} />
<div className="center-screen" >
<div className="center-left-but">
<Button className="circle-button" type={operationStatus === 0 ? 'primary' : ''} onClick={() => { changeOperationStatus(0) }}>待处理</Button>

View File

@ -130,7 +130,7 @@ export default ({ taskCategoryValueArr, showNotification }) => {
<Button type="danger" size="small" onClick={() => { setComplainVisible(true); setCheckedItem(record) }}>申诉</Button>
}
{record.status === 2 && record.task.status === 6 && (record.task.agreementSigning === 1) &&
{record.status === 2 && record.task.status === 6 && (record.task.agreementSigning === 1 || record.task.canApplicantSignByPlatform) &&
< Button type="primary" size="small" onClick={() => { setAgreeVisible(true); setCheckedItem(record) }}>签订协议</Button>
}
@ -153,6 +153,7 @@ export default ({ taskCategoryValueArr, showNotification }) => {
confirmReceipt(paperId).then(res => {
if (res && res.message === "success") {
showNotification("您已确认收款!");
reloadList();
}
})
}
@ -264,6 +265,7 @@ export default ({ taskCategoryValueArr, showNotification }) => {
checkedItem={checkedItem}
detailStatus={checkedItem.task && checkedItem.task.status}
showNotification={showNotification}
reloadList={reloadList}
/>
{agreeVisible && <AgreementModal

View File

@ -1,7 +1,7 @@
import React, { useCallback, useMemo, useEffect, useState } from 'react';
import { Input, Button, Form, Table, Pagination, Modal } from 'antd';
import { Link } from "react-router-dom";
import AdminRouter from '../components/adminRouter';
import StatusNav from '../../components/statusNav';
import { complainPaperList, checkComplain } from '../api';
import { paperComplainStatusArr } from '../static';
@ -188,7 +188,7 @@ export default Form.create()(({ form, showNotification, history}) => {
return (
<div className="centerbox task-manage">
<AdminRouter history={history}/>
<div className="center-screen" >
<div className="center-left-but">

View File

@ -1,7 +1,6 @@
import React, { useCallback, useEffect, useState, useMemo } from 'react';
import { Input, Radio, Select, Button, Form, DatePicker, Table, Pagination, Modal } from 'antd';
import { Link } from "react-router-dom";
import AdminRouter from '../components/adminRouter';
import { paperCheckStatusArr } from '../static';
import { readyCheckPapers, checkPaper, } from '../api';
import '../index.scss';
@ -205,7 +204,6 @@ export default Form.create()(({ current_user, form, showNotification, match, his
return (
<div className="centerbox task-manage">
<AdminRouter history={history} />
<div className="center-screen" >
<div className="center-left-but">
{helper(

View File

@ -1,7 +1,7 @@
import React, { useCallback, forwardRef, useEffect, useState } from 'react';
import { Input, Button, Form } from 'antd';
import ItemPayProof from '../components/itemPayProof';
import AdminRouter from '../components/adminRouter';
// import StatusNav from '../../components/statusNav';
import { agreementArr } from '../static';
import { uploadPayProofList } from '../api';
@ -76,7 +76,7 @@ export default Form.create()(({ current_user, form, showNotification, match, his
return (
<div className="centerbox task-manage">
<AdminRouter history={history}/>
<div className="center-screen" >
<div className="center-left-but">

View File

@ -1,6 +1,6 @@
import React, { useCallback, forwardRef, useEffect, useState } from 'react';
import { Input, Button, Form } from 'antd';
import AdminRouter from '../components/adminRouter';
import ItemProofManage from '../components/itemProofManage';
import StatusNav from '../../components/statusNav';
import { proofArr } from '../static';
@ -85,7 +85,7 @@ export default Form.create()(({ current_user, form, showNotification, match, his
return (
<div className="centerbox task-manage">
<AdminRouter history={history} />
<div className="center-screen" >
<div className="center-left-but">
<Button className="circle-button" type={approve === 1 ? 'primary' : ''} onClick={() => { changeApprove(1) }}>待审批</Button>

View File

@ -1,6 +1,6 @@
import React, { useCallback, useEffect, useState } from 'react';
import { Input, Button, Form } from 'antd';
import AdminRouter from '../components/adminRouter';
import ItemPublicityComplain from '../components/itemPublicityComplain';
import StatusNav from '../../components/statusNav';
import { publicityArr } from '../static';
@ -83,7 +83,7 @@ export default Form.create()(({ current_user, form, showNotification, match, his
return (
<div className="centerbox task-manage">
<AdminRouter history={history} />
<div className="center-screen" >
<div className="center-left-but">
<Button className="circle-button" type={approve === 1 ? 'primary' : ''} onClick={() => { changeApprove(1) }}>待审批</Button>

View File

@ -2,7 +2,7 @@ import React, { useCallback, useEffect, useState, useMemo } from 'react';
import classNames from 'classnames';
import { Input, Select, Button, Form, DatePicker, Table, Pagination, } from 'antd';
import { Link } from "react-router-dom";
import AdminRouter from '../components/adminRouter';
import { paperCheckStatusArr, publishModeArr, taskStatusAllArr, showUserModeArr ,main_web_site_url} from '../static';
import { getTaskAdminList, changeShowUserMode } from '../api';
import '../index.scss';
@ -238,7 +238,7 @@ export default Form.create()(({ form, showNotification, match, history }) => {
return (
<div className="centerbox task-manage-all ">
<AdminRouter history={history} />
<div className="search-screen" >
{helper(
"任务名称",

View File

@ -0,0 +1,136 @@
import React from "react";
import { Route, Switch } from "react-router-dom";
import Loadable from "react-loadable";
import Loading from "../../Loading";
import AdminRouter from "./components/adminRouter";
const TaskManage = Loadable({
loader: () => import("./taskManage"),
loading: Loading,
});
const PaperManage = Loadable({
loader: () => import("./paperManage"),
loading: Loading,
});
const PaperComplain = Loadable({
loader: () => import("./paperComplain"),
loading: Loading,
});
const ProofManage = Loadable({
loader: () => import("./proofManage"),
loading: Loading,
});
const PublicityComplain = Loadable({
loader: () => import("./publicityComplain"),
loading: Loading,
});
const AgreementManage = Loadable({
loader: () => import("./agreementManage"),
loading: Loading,
});
const PayProof = Loadable({
loader: () => import("./payProof"),
loading: Loading,
});
const TaskAdmin = Loadable({
loader: () => import("./taskAdmin"),
loading: Loading,
});
const DelayManage = Loadable({
loader: () => import("./delayManage"),
loading: Loading,
});
const AdminPage = (propsF) => {
return (
<React.Fragment>
<AdminRouter {...propsF} />
<Switch {...propsF}>
{/* 任务管理审核 */}
<Route
path="/task/taskManage"
render={(props) => (
<TaskManage {...propsF} {...props} />
)}
></Route>
{/* 成果管理审核 */}
<Route
path="/task/paperManage"
render={(props) => (
<PaperManage {...propsF} {...props} />
)}
></Route>
{/* 成果申诉管理审核 */}
<Route
path="/task/paperComplain"
render={(props) => (
<PaperComplain {...propsF} {...props} />
)}
></Route>
{/* 公示期成果申诉管理审核 */}
<Route
path="/task/publicityComplain"
render={(props) => (
<PublicityComplain {...propsF} {...props} />
)}
></Route>
{/* 佐证管理审核 */}
<Route
path="/task/proofManage"
render={(props) => (
<ProofManage {...propsF} {...props} />
)}
></Route>
{/* 管理员协议审核 */}
<Route
path="/task/agreementManage"
render={(props) => (
<AgreementManage {...propsF} {...props} />
)}
></Route>
{/* 管理员上传支付凭证 */}
<Route
path="/task/payProof"
render={(props) => (
<PayProof {...propsF} {...props} />
)}
></Route>
{/* 管理员任务列表 */}
<Route
path="/task/taskAdmin"
render={(props) => (
<TaskAdmin {...propsF} {...props} />
)}
></Route>
{/* 延期管理 */}
<Route
path="/task/delayManage"
render={(props) => (
<DelayManage {...propsF} {...props} />
)}
></Route>
</Switch>
</React.Fragment>
);
}
// }
export default AdminPage;

View File

@ -169,13 +169,12 @@ export default Form.create()(
surplusTimetext = formatDuring(surplus);
}
return (
// && (![4, 5, 6, 7].includes(status) || ([4, 5, 6, 7].includes(status) && (!detailData.exceptClosedBoolean)))
<li key={title} className={classNames({ active: (detailData.currentStatus !== 9 && detailData.currentStatus >= status) || (status === 8 && detailData.exceptClosedBoolean) })} >
<li key={title} className={classNames({ 'active': (detailData.currentStatus !== 9 && detailData.currentStatus >= status), 'except-close': (status === 8 && detailData.exceptClosedBoolean) })} >
<span>{title}</span>
{detailData.status !== status && days && <p className="color-grey-6 font-12">{days}</p>}
{detailData.status !== status && days ? <p className="color-grey-6 font-12">{days}</p> : ''}
{/* 因为有时只延期几秒或者几分钟时后端没有返回延期,所以这里加一个判断 */}
{detailData.status === status && days && <p className="color-grey-6 font-12">{surplus < 0 ? ('延期' + surplusTimetext) : ('剩余' + surplusTimetext)}</p>}
{detailData.status === status && days ? <p className="color-grey-6 font-12">{surplus < 0 ? ('延期' + surplusTimetext) : ('剩余' + surplusTimetext)}</p> : ''}
</li>
)
}, [detailData]);
@ -397,7 +396,9 @@ export default Form.create()(
{process('支付', 7, detailData.payingDays)}
{process('任务完成', 8)}
{
detailData.exceptClosedBoolean ? process('任务关闭', 8) : process('任务完成', 8)
}
</ul>
</div>
@ -435,7 +436,7 @@ export default Form.create()(
<a onClick={goUserProfiles} className="color-blue_4C">请先完善主体信息</a>
</div>}
{current_user.enterpriseCertification && detailData.status === 3 && signContent()}
{current_user.enterpriseCertification && detailData.status === 3 && (!detailData.exceptClosedBoolean) && signContent()}
<div className="applyList edu-back-white padding30 mt20">
<div className="font-16 font-bd">交稿{dataList.length}

View File

@ -156,4 +156,9 @@
padding: 0px 20px;
height: 50vh;
overflow-y: scroll;
}
li.except-close{
background: #fa6400;
color: #fff;
}

View File

@ -1,6 +1,5 @@
import React, { useCallback, forwardRef, useEffect, useState } from 'react';
import { Input, Button, Form } from 'antd';
import AdminRouter from "../components/adminRouter";
import ItemTaskManage from '../components/itemTaskManage';
import StatusNav from '../../components/statusNav';
import { approveArr, main_web_site_url } from '../static';
@ -99,7 +98,6 @@ export default Form.create()(({ current_user, form, showNotification, match, his
return (
<div className="centerbox task-manage">
<AdminRouter history={history} />
<div className="center-screen" >
<div className="center-left-but">
<Button className="circle-button" type={approve === 1 ? 'primary' : ''} onClick={() => { changeApprove(1) }}>待审批</Button>