Merge pull request 'issue修改-merge 解决冲突' (#302) from caishi/forgeplus-react:gitlink_server into gitlink_server

This commit is contained in:
xxq250 2021-11-30 18:07:33 +08:00
commit 82ac32d84f
10 changed files with 24 additions and 19 deletions

View File

@ -66,9 +66,10 @@ function AddMember({getID,login,showNotification}){
}; };
function addCollaborator(){ function addCollaborator(){
if(source && source.length>0){ if(source && source.length>0&&searchKey){
getID && getID(id); getID && getID(id);
setSearchKey(undefined); setSearchKey(undefined);
setID(undefined)
}else{ }else{
showNotification("请选择存在的用户!"); showNotification("请选择存在的用户!");
} }

View File

@ -17,6 +17,7 @@ function AddProjectModal(props){
function onOk() { function onOk() {
validateFields((error,values)=>{ validateFields((error,values)=>{
console.log(error)
if(!error){ if(!error){
const url = `/applied_projects.json`; const url = `/applied_projects.json`;
Axios.post(url,{ Axios.post(url,{
@ -40,6 +41,7 @@ function AddProjectModal(props){
callback("请输入6位数的邀请码"); callback("请输入6位数的邀请码");
} }
} }
callback();
} }
return( return(

View File

@ -414,7 +414,7 @@ class merge extends Component {
) : ( ) : (
"" ""
)} )}
{ data && data.issues && data.issues.length === 0 ? <NoneData _html="暂时还没有相关数据!" projectsId={projectsId} owner={owner} /> :""} { data && data.issues && data.issues.length === 0 ? <NoneData _html="暂时还没有相关数据!" user_admin_or_developer={data.user_admin_or_developer} projectsId={projectsId} owner={owner} /> :""}
</Spin> </Spin>
</div> </div>
</div> </div>

View File

@ -2,7 +2,7 @@ import React , { Component } from 'react';
import { Link } from "react-router-dom"; import { Link } from "react-router-dom";
class Nodata extends Component{ class Nodata extends Component{
render(){ render(){
const { _html, projectsId , owner , user_admin_or_member} = this.props; const { _html, projectsId , owner , user_admin_or_developer} = this.props;
return( return(
<div className="none_panels"> <div className="none_panels">
<div> <div>
@ -12,7 +12,7 @@ class Nodata extends Component{
<h3>欢迎使用合并请求</h3> <h3>欢迎使用合并请求</h3>
<div className="color-grey-8"> <div className="color-grey-8">
合并请求可以帮助您与他人协作编写代码{ user_admin_or_member && <span>在使用之前请先创建一个 <Link className="color-blue" to={`/${owner}/${projectsId}/compare/master...master`}>合并请求</Link></span> } 合并请求可以帮助您与他人协作编写代码{ user_admin_or_developer && <span>在使用之前请先创建一个 <Link className="color-blue" to={`/${owner}/${projectsId}/compare/master...master`}>合并请求</Link></span> }
</div> </div>
</div> </div>
</div> </div>

View File

@ -49,7 +49,7 @@ class OrderItem extends Component {
return ( return (
item && item &&
<div className="issueItem"> <div className="issueItem">
{(current_user && current_user.login) && user_admin_or_member && checkbox} {(current_user && current_user.login) && checkbox}
<div className="flex-1"> <div className="flex-1">
<p className="mb10 df" style={{alignItems:"center"}}> <p className="mb10 df" style={{alignItems:"center"}}>
<Link to={`/${owner}/${projectsId}/issues/${item.id}`} title={item.name} className="hide-1 font-16 color-grey-3 lineh-30 mr10" style={{maxWidth:"370px"}}>{item.name}</Link> <Link to={`/${owner}/${projectsId}/issues/${item.id}`} title={item.name} className="hide-1 font-16 color-grey-3 lineh-30 mr10" style={{maxWidth:"370px"}}>{item.name}</Link>

View File

@ -578,7 +578,7 @@ class order extends Component {
<div className="f-wrap-between screenWrap"> <div className="f-wrap-between screenWrap">
<div className="df"> <div className="df">
{ {
((current_user && current_user.login) && (data && data.user_admin_or_member)) ? ((current_user && current_user.login) && (data && data.user_operate_issue)) ?
<Checkbox value="0" style={{ lineHeight: "50px", marginRight: "15px" }} checked={all} onChange={this.changeAll}></Checkbox> <Checkbox value="0" style={{ lineHeight: "50px", marginRight: "15px" }} checked={all} onChange={this.changeAll}></Checkbox>
: "" : ""
} }
@ -823,14 +823,14 @@ class order extends Component {
<OrderItem <OrderItem
key={key} key={key}
item={item} item={item}
checkbox={current_user &&(data && data.user_admin_or_member) ? <Checkbox value={item.id} key={item.id} style={{ margin: '4px 15px 0px 0px' }}></Checkbox> : ""} checkbox={current_user &&(data && data.user_operate_issue) ? <Checkbox value={item.id} key={item.id} style={{ margin: '4px 15px 0px 0px' }}></Checkbox> : ""}
search_count={search_count} search_count={search_count}
page={select_params.page} page={select_params.page}
limit={select_params.limit} limit={select_params.limit}
{...this.props} {...this.props}
{...this.state} {...this.state}
deletedetail={this.deletedetail} deletedetail={this.deletedetail}
user_admin_or_member={data && data.user_admin_or_member} user_admin_or_member={data && data.user_operate_issue}
></OrderItem> ></OrderItem>
) )
})} })}

View File

@ -8,15 +8,16 @@ import Group from './CollaboratorGroup';
function Collaborator(props){ function Collaborator(props){
const [ nav , setNav] = useState("1"); const [ nav , setNav] = useState("1");
const [ newId , setNewId] = useState(undefined); const [ newId , setNewId] = useState(undefined);
const [ newIdFlag , setNewIdFlag ] = useState(false);
const [ addOperation , setAddOperation] = useState(true); const [ addOperation , setAddOperation] = useState(true);
const [ newGroupId , setNewGroupId] = useState(undefined); const [ newGroupId , setNewGroupId] = useState(undefined);
const {projectsId ,owner} = props.match.params; const {projectsId ,owner} = props.match.params;
const author = props && props.projectDetail && props.projectDetail.author; const author = props && props.projectDetail && props.projectDetail.author;
function getID(id){ function getID(id){
setNewId(id); setNewId(id);
setNewIdFlag(!newIdFlag);
} }
function getGroupID(id){ function getGroupID(id){
setNewGroupId(id); setNewGroupId(id);
@ -47,7 +48,7 @@ function Collaborator(props){
<div> <div>
{ {
nav === "1" ? nav === "1" ?
<Member newId={newId} projectsId={projectsId} owner={owner} project_id={props.project_id} author={props.projectDetail && props.projectDetail.author} showNotification={props.showNotification}/> <Member newId={newId} flag={newIdFlag} projectsId={projectsId} owner={owner} project_id={props.project_id} author={props.projectDetail && props.projectDetail.author} showNotification={props.showNotification}/>
: :
<Group setAddOperation={setAddOperation} owner={owner} projectsId={projectsId} newGroupId={newGroupId}/> <Group setAddOperation={setAddOperation} owner={owner} projectsId={projectsId} newGroupId={newGroupId}/>
} }

View File

@ -1,4 +1,4 @@
import React, { useEffect, useState } from 'react'; import React, { useEffect, useState , useImperativeHandle , forwardRef } from 'react';
import { Dropdown, Menu, Icon , Input , Spin , Table , Tooltip , Pagination , Popconfirm } from "antd"; import { Dropdown, Menu, Icon , Input , Spin , Table , Tooltip , Pagination , Popconfirm } from "antd";
import axios from 'axios'; import axios from 'axios';
import NoneData from "../Nodata"; import NoneData from "../Nodata";
@ -12,7 +12,7 @@ const MENU_LIST = [
{id: "Developer",name: "开发者"}, {id: "Developer",name: "开发者"},
{id: "Reporter",name: "报告者"} {id: "Reporter",name: "报告者"}
]; ];
function CollaboratorMember({projectsId,owner,project_id,author,showNotification,newId}){ function CollaboratorMember({projectsId,owner,project_id,author,showNotification,newId,flag}){
const [ roleName , setRoleName ] = useState(undefined); const [ roleName , setRoleName ] = useState(undefined);
const [ search , setSearch ] = useState(undefined); const [ search , setSearch ] = useState(undefined);
const [ page , setPage ] = useState(1); const [ page , setPage ] = useState(1);
@ -20,11 +20,12 @@ function CollaboratorMember({projectsId,owner,project_id,author,showNotification
const [ role , setRole ] = useState(undefined); const [ role , setRole ] = useState(undefined);
const [ listData , setListData ] = useState(undefined); const [ listData , setListData ] = useState(undefined);
const [ total , setTotal ] = useState(0); const [ total , setTotal ] = useState(0);
useEffect(()=>{ useEffect(()=>{
if(newId){ if(newId){
addCollaborator(newId); addCollaborator(newId);
} }
},[newId]) },[flag])
// //
function addCollaborator(id){ function addCollaborator(id){
if(id){ if(id){
@ -276,4 +277,4 @@ function CollaboratorMember({projectsId,owner,project_id,author,showNotification
</React.Fragment> </React.Fragment>
) )
} }
export default CollaboratorMember; export default forwardRef(CollaboratorMember);

View File

@ -310,7 +310,7 @@ class NewTags extends Component {
const columns = [ const columns = [
{ {
title: "颜色代码", title: "颜色代码",
width: "20%", width: "25%",
dataIndex: "color", dataIndex: "color",
render: (text, item) => ( render: (text, item) => (
<span className="grid-item"> <span className="grid-item">
@ -507,8 +507,8 @@ class NewTags extends Component {
> >
<div className="dialogdiv"> <div className="dialogdiv">
<Input <Input
placeholder="名称,10字以内" placeholder="名称,15字以内"
maxLength="10" maxLength={15}
className="inptwidth" className="inptwidth"
value={this.state.name} value={this.state.name}
onChange={this.changmodelname} onChange={this.changmodelname}

View File

@ -9,7 +9,7 @@ function ConcentrateBox({ visible , onCancel , onSure , username , choosed , his
const [ page , setPage ]= useState(1); const [ page , setPage ]= useState(1);
const [ total , setTotal ]= useState(0); const [ total , setTotal ]= useState(0);
const [ pageSize , setPageSize ] = useState(false); const [ pageSize , setPageSize ] = useState(false);
const [ search , setSearch ] = useState(undefined); const [ search , setSearch ] = useState("");
const [ list , setList ]= useState([]); const [ list , setList ]= useState([]);
const [ value , setValue ]= useState([]); const [ value , setValue ]= useState([]);
@ -24,7 +24,7 @@ function ConcentrateBox({ visible , onCancel , onSure , username , choosed , his
setIsSpin(true); setIsSpin(true);
getProjectList(); getProjectList();
}else{ }else{
setSearch(undefined); setSearch("");
setCopyAllList([]); setCopyAllList([]);
setCopyList([]); setCopyList([]);
setList([]); setList([]);