forked from Gitlink/forgeplus-react
修改需求发布弹框及回归部分issue
This commit is contained in:
parent
b87c57f77d
commit
a6e01fbeb6
|
@ -30,11 +30,11 @@ function Collaborator(props){
|
|||
{
|
||||
author && author.type === "Organization" ?
|
||||
<span>
|
||||
<span style={{cursor:"pointer"}} className={nav === "1" ? "font-18 text-black color-blue":"font-18 text-black"} onClick={()=>{setNav("1");setNewId(undefined)}}>协作者管理</span>
|
||||
<span style={{cursor:"pointer"}} className={nav === "1" ? "font-18 text-black color-blue":"font-18 text-black"} onClick={()=>{setNav("1");setNewId(undefined)}}>成员管理</span>
|
||||
<span style={{cursor:"pointer"}} className={nav === "2" ? "font-18 text-black ml30 color-blue":"font-18 text-black ml30"} onClick={()=>{setNav("2");setNewId(undefined);setNewGroupId(undefined)}}>团队管理</span>
|
||||
</span>
|
||||
:
|
||||
<span className="font-18 text-black">协作者管理</span>
|
||||
<span className="font-18 text-black">成员管理</span>
|
||||
}
|
||||
{
|
||||
nav === "1" &&
|
||||
|
|
|
@ -74,7 +74,7 @@ class Index extends Component {
|
|||
<p>
|
||||
<Link to={`/${owner}/${projectsId}/settings/collaborators`} className="w-100">
|
||||
<i className="iconfont icon-chengyuan font-18 mr10"></i>
|
||||
协作者管理
|
||||
成员管理
|
||||
</Link>
|
||||
</p>
|
||||
</li>
|
||||
|
|
|
@ -183,7 +183,7 @@ function NeedApply(props){
|
|||
{helper(<span>悬赏金额来源<span style={{color: 'rgba(112, 123, 139, 1)'}}>(注:只有部分已获授权的特殊用户才能使用红山开源经费)</span></span>,"fundingSource",[{required:true,message:"请输入悬赏金额"}],undefined,
|
||||
<Select>
|
||||
<Select.Option key={1} value={1}>自行携带经费</Select.Option>
|
||||
<Select.Option key={2} value={2}>红山开源经费</Select.Option>
|
||||
<Select.Option key={2} value={2}>红山开源平台提供经费</Select.Option>
|
||||
</Select>
|
||||
)}
|
||||
{helper("上传任务书","assignmentBook1",[{ validator: (rule,val,callback) =>{
|
||||
|
|
|
@ -5,6 +5,10 @@ import {projectsGatheringList, tasksGatheringList, competitionGatheringList, ach
|
|||
import PaginationTable from 'src/components/pagination-table';
|
||||
import './index.scss';
|
||||
|
||||
const fundingObj={
|
||||
'1':'自行携带经费',
|
||||
'2':'红山开源平台提供经费'
|
||||
};
|
||||
// 管理员查看需求申请列表页面
|
||||
function List(props){
|
||||
const [loading, setLoading] = useState(false);
|
||||
|
@ -148,7 +152,7 @@ function List(props){
|
|||
dataIndex: 'fundingSource',
|
||||
width: '10%',
|
||||
ellipsis: true,
|
||||
render: (text, record) => {return <Tooltip title = {text} placement="topLeft" overlayStyle={{maxWidth: '400px'}}><span>{text}</span></Tooltip>}
|
||||
render: (text, record) => {return <Tooltip title = {fundingObj[text]} placement="topLeft" overlayStyle={{maxWidth: '400px'}}><span>{fundingObj[text]}</span></Tooltip>}
|
||||
},
|
||||
{
|
||||
title: '联系人',
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 25 KiB |
Binary file not shown.
After Width: | Height: | Size: 141 KiB |
|
@ -12,13 +12,16 @@
|
|||
.ant-form-item {
|
||||
margin: 0 1rem 0 0;
|
||||
}
|
||||
|
||||
.ant-form-item-control-wrapper {
|
||||
display: inline-block;
|
||||
}
|
||||
.status-item{
|
||||
|
||||
.status-item {
|
||||
margin-right: 2rem;
|
||||
}
|
||||
}
|
||||
|
||||
.center-left-but {
|
||||
.circle-button {
|
||||
border-radius: 1rem;
|
||||
|
@ -26,25 +29,29 @@
|
|||
}
|
||||
}
|
||||
|
||||
.flex-column{
|
||||
flex-direction: column;
|
||||
.status-list{
|
||||
padding-bottom: 0;
|
||||
}
|
||||
.flex-column {
|
||||
flex-direction: column;
|
||||
|
||||
.status-list {
|
||||
padding-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.ant-select {
|
||||
min-width: 200px;
|
||||
}
|
||||
|
||||
.ant-table-thead th {
|
||||
text-align: center;
|
||||
// &:first-child {
|
||||
// text-align: left;
|
||||
// }
|
||||
}
|
||||
|
||||
td {
|
||||
text-align: center;
|
||||
color: #333;
|
||||
|
||||
&:first-child {
|
||||
// text-align: left;
|
||||
font-size: 1rem;
|
||||
|
@ -65,21 +72,27 @@
|
|||
span.list-yellow {
|
||||
background: #fa6400;
|
||||
}
|
||||
|
||||
span.list-red {
|
||||
background: #fe0e36;
|
||||
}
|
||||
|
||||
span.list-orange {
|
||||
background: #ffb121;
|
||||
}
|
||||
|
||||
span.list-done {
|
||||
background: #35d77e;
|
||||
}
|
||||
|
||||
span.list-pay {
|
||||
background: #1ad757;
|
||||
}
|
||||
|
||||
span.list-error {
|
||||
background: #f56c6c;
|
||||
}
|
||||
|
||||
span.list-gray {
|
||||
background: #bababa;
|
||||
}
|
||||
|
@ -89,11 +102,25 @@ span.list-gray {
|
|||
text-align: right;
|
||||
margin: 2rem auto !important;
|
||||
text-align: center;
|
||||
.ant-pagination-item:focus, .ant-pagination-item:hover, .ant-pagination-item-active, .ant-pagination-prev:hover a, .ant-pagination-next:hover a, .ant-pagination-options-quick-jumper input:focus, .ant-pagination-options-quick-jumper input:hover{
|
||||
|
||||
.ant-pagination-item:focus,
|
||||
.ant-pagination-item:hover,
|
||||
.ant-pagination-item-active,
|
||||
.ant-pagination-prev:hover a,
|
||||
.ant-pagination-next:hover a,
|
||||
.ant-pagination-options-quick-jumper input:focus,
|
||||
.ant-pagination-options-quick-jumper input:hover {
|
||||
border-color: #4154f1;
|
||||
}
|
||||
.ant-pagination-disabled{
|
||||
& a, & :hover a, & :focus a, & .ant-pagination-item-link, &:hover .ant-pagination-item-link , &:focus .ant-pagination-item-link {
|
||||
|
||||
.ant-pagination-disabled {
|
||||
|
||||
& a,
|
||||
& :hover a,
|
||||
& :focus a,
|
||||
& .ant-pagination-item-link,
|
||||
&:hover .ant-pagination-item-link,
|
||||
&:focus .ant-pagination-item-link {
|
||||
color: rgba(0, 0, 0, 0.25) !important;
|
||||
border-color: #d9d9d9;
|
||||
}
|
||||
|
@ -109,36 +136,121 @@ span.list-gray {
|
|||
|
||||
.upload-form {
|
||||
display: flex;
|
||||
|
||||
.ant-form-item-control-wrapper {
|
||||
max-width: 80%;
|
||||
}
|
||||
}
|
||||
|
||||
.demand_submission,.demand_submission:focus,.failByPression .ant-modal-body .ant-btn-primary{
|
||||
.demand_submission,
|
||||
.demand_submission:focus,
|
||||
.failByPression .ant-modal-body .ant-btn-primary {
|
||||
background-color: #4154f1;
|
||||
border: none;
|
||||
&:hover{
|
||||
|
||||
&:hover {
|
||||
background-color: #4154f1;
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
.center-right-but, .center-left-but{
|
||||
|
||||
.center-right-but,
|
||||
.center-left-but {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.center-right-but .ant-input:hover, .center-content .ant-pagination-prev:hover{
|
||||
|
||||
.center-right-but .ant-input:hover,
|
||||
.center-content .ant-pagination-prev:hover {
|
||||
border-color: #4154f1 !important;
|
||||
}
|
||||
.failByPression .ant-modal-body .anticon, .center-right-but .ant-input-search-icon:hover, .center-content .ant-pagination-item-active a{
|
||||
|
||||
.failByPression .ant-modal-body .anticon,
|
||||
.center-right-but .ant-input-search-icon:hover,
|
||||
.center-content .ant-pagination-item-active a {
|
||||
color: #4154f1;
|
||||
}
|
||||
.go_profiles .ant-modal-body{
|
||||
|
||||
.go_profiles .ant-modal-body {
|
||||
text-align: center;
|
||||
.anticon{
|
||||
|
||||
.anticon {
|
||||
color: #4154f1;
|
||||
margin-left: 30px;
|
||||
}
|
||||
.ant-modal-confirm-btns{
|
||||
|
||||
.ant-modal-confirm-btns {
|
||||
float: none;
|
||||
}
|
||||
}
|
||||
|
||||
.go_profiles {
|
||||
width: 800px !important;
|
||||
height: 492px;
|
||||
background-image: url('./image/polifyBg.png');
|
||||
background-size: 100% 100%;
|
||||
|
||||
.ant-modal-content {
|
||||
background: none;
|
||||
}
|
||||
|
||||
.ant-modal-body {
|
||||
padding: 30px 20px 20px;
|
||||
}
|
||||
|
||||
.ant-modal-close{
|
||||
right: 22px;
|
||||
top: 16px !important;
|
||||
}
|
||||
.ant-modal-close-x {
|
||||
font-size: 24px;
|
||||
color: #4154f1;
|
||||
|
||||
.iconfont{
|
||||
font-size: 16px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.profiles-tit {
|
||||
color: #181818;
|
||||
font-size: 18px;
|
||||
line-height: 33px;
|
||||
text-align: left;
|
||||
padding-left: 20px;
|
||||
|
||||
span {
|
||||
color: rgba(251, 143, 48, 1);
|
||||
}
|
||||
}
|
||||
|
||||
.profiles-content {
|
||||
padding-left: 20px;
|
||||
text-align: left;
|
||||
color: #181818;
|
||||
font-size: 14px;
|
||||
line-height: 25px;
|
||||
|
||||
a {
|
||||
color: #4154f1;
|
||||
}
|
||||
}
|
||||
|
||||
.polify {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.ant-modal-footer{
|
||||
text-align: right;
|
||||
padding-right: 47px;
|
||||
border-top:1px solid #ebedfe;
|
||||
padding-top: 22px;
|
||||
.ant-btn:first-child{
|
||||
display: none;
|
||||
}
|
||||
.ant-btn-primary{
|
||||
width: 102px;
|
||||
height: 36px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -7,7 +7,9 @@ import SortBox from '../../components/sortBox';
|
|||
import ItemListTask from '../components/itemListTask';
|
||||
import { taskTimeArr, taskStatusArr, sortArr, taskModeIdArr } from '../static';
|
||||
import { getTaskList, getTaskCategory, getCompanyInfo } from '../api';
|
||||
import polify from '../image/polify.png';
|
||||
import '../index.scss';
|
||||
import { Link } from 'react-router-dom';
|
||||
const Search = Input.Search;
|
||||
|
||||
|
||||
|
@ -28,6 +30,7 @@ export default ({ history, current_user, showLoginDialog, location, mygetHelmeta
|
|||
const [curPage, setCurPage] = useState(1);
|
||||
const [total, setTotal] = useState(0);
|
||||
const [taskList, setTaskList] = useState([]);
|
||||
const [visible,setVisible]=useState(false);
|
||||
|
||||
// 获取分类数据
|
||||
useEffect(() => {
|
||||
|
@ -147,27 +150,29 @@ export default ({ history, current_user, showLoginDialog, location, mygetHelmeta
|
|||
if (res) {
|
||||
if (res.message === 'success') {
|
||||
history.push("/task/taskAdd");
|
||||
} else if (res.message === '未进行实体认证') {
|
||||
Modal.info({
|
||||
title: '因为以下原因,您暂时不能进行本操作',
|
||||
content: <div className="mt10">
|
||||
<p>完成条件后,重新点击查看您的最新参与资格</p>
|
||||
<div className="inline mt10">
|
||||
<span className="mr30"> <i className="iconfont icon-mingpian"></i> <span className="color-red">未进行实名未认证</span> </span>
|
||||
</div>
|
||||
</div>,
|
||||
onOk: () => {
|
||||
window.location.href = mygetHelmetapi && mygetHelmetapi.main_web_site_url + `/users/${current_user.login}/profiles`;
|
||||
},
|
||||
okText: '立即完善',
|
||||
className: 'go_profiles'
|
||||
});
|
||||
} else {
|
||||
Modal.info({
|
||||
content: '您没有权限需求提报',
|
||||
className:'failByPression'
|
||||
});
|
||||
}
|
||||
} else { //if (res.message === '未进行实体认证')
|
||||
setVisible(true)
|
||||
// Modal.info({
|
||||
// title: '因为以下原因,您暂时不能进行本操作',
|
||||
// content: <div className="mt10">
|
||||
// <p>完成条件后,重新点击查看您的最新参与资格</p>
|
||||
// <div className="inline mt10">
|
||||
// <span className="mr30"> <i className="iconfont icon-mingpian"></i> <span className="color-red">未进行实名未认证</span> </span>
|
||||
// </div>
|
||||
// </div>,
|
||||
// onOk: () => {
|
||||
// window.location.href = mygetHelmetapi && mygetHelmetapi.main_web_site_url + `/users/${current_user.login}/profiles`;
|
||||
// },
|
||||
// okText: '好的',
|
||||
// className: 'go_profiles'
|
||||
// });
|
||||
}
|
||||
// else {
|
||||
// Modal.info({
|
||||
// content: '您没有权限需求提报',
|
||||
// className:'failByPression'
|
||||
// });
|
||||
// }
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -229,7 +234,7 @@ export default ({ history, current_user, showLoginDialog, location, mygetHelmeta
|
|||
onSearch={(value) => { setSearchInput(value); setCurPage(1); }}
|
||||
/>
|
||||
|
||||
<Button className="mr20 font-12 demand_submission" type="primary" onClick={goAdd}><i className="iconfont icon-zaibianji font-12 mr3"></i>需求提报</Button>
|
||||
<Button className="mr20 font-12 demand_submission" type="primary" onClick={goAdd}><i className="iconfont icon-zaibianji font-12 mr3"></i>需求发布</Button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
@ -246,6 +251,22 @@ export default ({ history, current_user, showLoginDialog, location, mygetHelmeta
|
|||
</div>
|
||||
|
||||
|
||||
<Modal
|
||||
className='go_profiles'
|
||||
visible={visible}
|
||||
closable={true}
|
||||
onOk={()=>{setVisible(false)}}
|
||||
onCancel={()=>{setVisible(false)}}
|
||||
okText='好的'
|
||||
cancelButtonProps={null}
|
||||
closeIcon={<i className='iconfont icon-shanchuicon'></i>}
|
||||
>
|
||||
<div className='profiles-tit'>您暂无发布权限,仅<span >平台指定企业</span>允许需求发布</div>
|
||||
<img className='polify' src={polify} />
|
||||
<div className='profiles-content'>
|
||||
若想发布需求,请在账号管理处<a href={`${mygetHelmetapi && mygetHelmetapi.main_web_site_url}/users/${current_user.login}/profiles`}>完善企业认证信息</a>,或<Link to={'/needs/new'}>点击此处</Link>提交需求申请信息,后续管理员将与您联系。
|
||||
</div>
|
||||
</Modal>
|
||||
</div>
|
||||
)
|
||||
}
|
|
@ -333,6 +333,8 @@ function Register(props) {
|
|||
|
||||
<p>6、用户不得故意或者过失损害红山开源平台合法权利和利益,包括但不限于恶意获取、删除或修改平台的原始数据和其他数据及其他任何有损本平台一切相关知识产权的行为。</p>
|
||||
|
||||
<p>7、用户需承诺代码仓库创建内容不违反任何国家法律法规;不侵犯任何单位及个人的版权和权益。</p>
|
||||
|
||||
<h3>三、关于责任</h3>
|
||||
|
||||
鉴于网络服务的特殊性,用户同意红山开源团队有权在事先通知的情况下,变更、中断、升级部分网络服务。红山开源团队不担保网络服务不会中断,但承诺在用户可承受的时间内快速恢复服务,同时确保用户数据的安全性和可靠性。
|
||||
|
|
Loading…
Reference in New Issue