diff --git a/public/react/src/forge/Main/Detail.js b/public/react/src/forge/Main/Detail.js index 1b31010f7..700e10972 100644 --- a/public/react/src/forge/Main/Detail.js +++ b/public/react/src/forge/Main/Detail.js @@ -12,6 +12,10 @@ const FileNew = Loadable({ loader: () => import('../Newfile/Index'), loading: Loading, }) +const OrderNew = Loadable({ + loader: () => import('../Order/New'), + loading: Loading, +}) const OrderIndex = Loadable({ loader: () => import('../Order/order'), loading: Loading, @@ -30,7 +34,10 @@ class Detail extends Component{ projectDetail:undefined, isManager:false, isReporter:false, - isDeveloper:false + isDeveloper:false, + watchers_count:undefined , + praises_count:undefined , + forked_count:undefined } } @@ -48,16 +55,60 @@ class Detail extends Component{ projectDetail:result.data, isManager:result.data.permission && result.data.permission === "Manager", isReporter:result.data.permission && result.data.permission === "Reporter", - isDeveloper:result.data.permission && result.data.permission === "Developer" + isDeveloper:result.data.permission && result.data.permission === "Developer", + + watchers_count:result.data.watchers_count, + praises_count:result.data.praises_count, + forked_count:result.data.forked_count, }) } }).catch((error)=>{}) } + // 关注和取消关注 + focusFunc =(flag)=>{ + const { projectsId } = this.props.match.params; + if(flag){ + const url = `/projects/${projectsId}/watchers/follow.json`; + axios.post(url).then(result=>{ + if(result){ + this.props.showNotification('关注成功'); + } + }) + }else{ + const url = `/projects/${projectsId}/watchers/unfollow.json`; + axios.delete(url).then(result=>{ + if(result){ + this.props.showNotification('取消关注成功'); + } + }) + } + } + + // 点赞和取消点赞 + pariseFunc=(flag)=>{ + const { projectsId } = this.props.match.params; + if(flag){ + const url = `/projects/${projectsId}/praise_tread/like.json`; + axios.post(url).then(result=>{ + if(result){ + this.props.showNotification('点赞成功'); + } + }) + }else{ + const url = `/projects/${projectsId}/praise_tread/unlike.json`; + axios.delete(url).then(result=>{ + if(result){ + this.props.showNotification('取消点赞成功'); + } + }) + } + } + render(){ const { projectsId } = this.props.match.params; - const { projectDetail } = this.state; + const { projectDetail , watchers_count , praises_count , forked_count } = this.state; const url = this.props.history.location.pathname; return(
{projectDetail && projectDetail.author && projectDetail.author.name} / { projectDetail && projectDetail.identifier }
- - {projectDetail && projectDetail.watchers_count} - {projectDetail && projectDetail.praises_count} - {projectDetail && projectDetail.forked_count} + + + this.focusFunc(true)}>关注 + {watchers_count} + + + this.pariseFunc(true)}>点赞 + {praises_count} + + + Fork + {forked_count} +只有企业所有人或拥有权限的企业成员才能看到
+ 标签 + 里程 +
+ ) + } +} +export default Nav; \ No newline at end of file diff --git a/public/react/src/forge/Order/New.js b/public/react/src/forge/Order/New.js new file mode 100644 index 000000000..1eb00657f --- /dev/null +++ b/public/react/src/forge/Order/New.js @@ -0,0 +1,16 @@ +import React , { Component } from "react"; + +import Nav from './Nav'; + +class New extends Component{ + render(){ + return( +- 标签 - 里程 -
+ 创建工单