diff --git a/src/forge/Merge/MergeItem.js b/src/forge/Merge/MergeItem.js index f7fceacc9..4c82bb392 100644 --- a/src/forge/Merge/MergeItem.js +++ b/src/forge/Merge/MergeItem.js @@ -41,10 +41,19 @@ class MergeItem extends Component { } }; + toDetailFunc=(url)=>{ + const { disable_pr_vew } = this.props; + if(disable_pr_vew && disable_pr_vew === true){ + this.props.showNotification("暂无权限访问合并请求,请联系项目管理员开启访问权限!"); + }else{ + this.props.history.push(url); + window.scrollTo(0,0); + } + } + render() { - const { issues, project_name, project_author_name , user_admin_or_developer , open_blockchain} = this.props; + const { issues , project_author_name , user_admin_or_developer , open_blockchain } = this.props; const { projectsId , owner } = this.props.match.params; - const { current_user } = this.props; const renderList = () => { if (issues && issues.length > 0) { return issues.map((item, key) => { @@ -54,14 +63,13 @@ class MergeItem extends Component {

- {window.scrollTo(0,0)}} + this.toDetailFunc(`/${owner}/${projectsId}/pulls/${item.pull_request_number || item.pull_request_id}`)} className="hide-1 font-15 color-grey-3 fwb lineh-30 mr10" style={{ maxWidth: "600px" }} > {item.name} - + {status === "merged" ? "已合并" diff --git a/src/forge/Merge/MessageCount.js b/src/forge/Merge/MessageCount.js index cc23d6379..319994650 100644 --- a/src/forge/Merge/MessageCount.js +++ b/src/forge/Merge/MessageCount.js @@ -382,7 +382,7 @@ class MessageCount extends Component {

- {data.issue.subject} + {data.issue && data.issue.subject} diff --git a/src/forge/Merge/merge.js b/src/forge/Merge/merge.js index 253fd0b57..8773e1106 100644 --- a/src/forge/Merge/merge.js +++ b/src/forge/Merge/merge.js @@ -61,6 +61,7 @@ class merge extends Component { page: 1, limit: 15, }, + disable_pr_vew:false //访问pr的权限 }; } @@ -114,7 +115,8 @@ class merge extends Component { issues: result.data.issues, search_count: result.data.search_count, isSpin: false, - has_created_pull_requests:result.data.has_created_pull_requests + has_created_pull_requests:result.data.has_created_pull_requests, + disable_pr_vew:result.data.disable_pr_vew }); } }) @@ -249,7 +251,7 @@ class merge extends Component { data, isSpin, status_type, - select_params,has_created_pull_requests + select_params,has_created_pull_requests,disable_pr_vew } = this.state; const menu = ( this.getMenu(e)}> @@ -420,6 +422,7 @@ class merge extends Component { {...this.state} user_admin_or_developer={data && data.user_admin_or_developer} open_blockchain={open_blockchain} + disable_pr_vew={disable_pr_vew} >
):""} diff --git a/src/forge/Merge/merge_form.js b/src/forge/Merge/merge_form.js index 0fc0d5955..30ef66b08 100644 --- a/src/forge/Merge/merge_form.js +++ b/src/forge/Merge/merge_form.js @@ -27,7 +27,8 @@ class MergeForm extends Component { issue_priories: undefined, atWhoLoginList:undefined, issue_lists:undefined, - issue_id:undefined + issue_id:undefined, + disable_pr_vew:false//是否有权限访问pr }; } @@ -79,6 +80,7 @@ class MergeForm extends Component { issue_tags: result.data.issue_tags, issue_versions: result.data.issue_versions, issue_priories: result.data.issue_priories, + disable_pr_vew:result.data.disable_pr_vew }); } this.setState({ isSpin: false }); @@ -91,7 +93,6 @@ class MergeForm extends Component { set_defatul = () => { const { data, merge_type } = this.props; if (data && merge_type === "edit") { - console.log("dddddddd",data); this.setState({ desc: data.body, issue_tag_ids: data.issue_tag_ids ? data.issue_tag_ids[0] : undefined, @@ -168,7 +169,7 @@ class MergeForm extends Component { } else { values.issue_tag_ids = []; } - const { desc , atWhoLoginList } = this.state; + const { desc , atWhoLoginList , disable_pr_vew } = this.state; if (merge_type === "new") { let url = `/${owner}/${projectsId}/pulls.json`; axios.post(url, { @@ -190,7 +191,7 @@ class MergeForm extends Component { isSpin: false, }); const { pull_request_number } = result.data; - this.props.history.push({pathname: `/${owner}/${projectsId}/pulls/${pull_request_number}`, query:{showNps: true}}); + this.props.history.push({pathname: disable_pr_vew ? `/${owner}/${projectsId}/pulls`:`/${owner}/${projectsId}/pulls/${pull_request_number}`, query:{showNps: true}}); const { getDetail } = this.props; getDetail && getDetail(); } else { diff --git a/src/forge/users/Material/Base.jsx b/src/forge/users/Material/Base.jsx index 8675819df..20dc79e80 100644 --- a/src/forge/users/Material/Base.jsx +++ b/src/forge/users/Material/Base.jsx @@ -82,7 +82,7 @@ export default Form.create()( {getFieldDecorator("nickname",{ - rules:[{required:true,message:"请输入昵称"}] + rules:[] })( )}