display workspace according to correct role in project

This commit is contained in:
Jim Wang 2024-05-31 00:28:09 +08:00
parent 1947c242db
commit d406369b61

View File

@ -693,15 +693,15 @@ export default {
return true return true
} else { } else {
if (milestone.status === milestoneStatusEnum.IMPLEMENTING) { if (milestone.status === milestoneStatusEnum.IMPLEMENTING) {
if (project.current_user_id === project.proposer_id) { if (project.providers.includes(project.current_user_id)) {
return false return false
} }
} else if (milestone.status === milestoneStatusEnum.OUTSTANDING) { } else if (milestone.status === milestoneStatusEnum.OUTSTANDING) {
if (project.current_user_id === project.requester_id) { if (project.issuers.includes(project.current_user_id)) {
return false return false
} }
} else if (milestone.status === milestoneStatusEnum.PAID) { } else if (milestone.status === milestoneStatusEnum.PAID) {
if (project.current_user_id === project.proposer_id) { if (project.providers.includes(project.current_user_id)) {
return false return false
} }
} }
@ -711,7 +711,7 @@ export default {
handleMilestoneAction(project, milestone) { handleMilestoneAction(project, milestone) {
if (milestone.index === project.current_milestone) { if (milestone.index === project.current_milestone) {
if (milestone.status === milestoneStatusEnum.IMPLEMENTING) { if (milestone.status === milestoneStatusEnum.IMPLEMENTING) {
if (project.current_user_id === project.proposer_id) { if (project.providers.includes(project.current_user_id)) {
WorksapceApi.setMillestoneStatus( WorksapceApi.setMillestoneStatus(
project.id, project.id,
milestone.index, milestone.index,
@ -725,7 +725,7 @@ export default {
}) })
} }
} else if (milestone.status === milestoneStatusEnum.OUTSTANDING) { } else if (milestone.status === milestoneStatusEnum.OUTSTANDING) {
if (project.current_user_id === project.requester_id) { if (project.issuers.includes(project.current_user_id)) {
WorksapceApi.createMilestoneCheckoutSession(project.id, milestone.index).then( WorksapceApi.createMilestoneCheckoutSession(project.id, milestone.index).then(
(response) => { (response) => {
if (response.data.result) { if (response.data.result) {
@ -740,7 +740,7 @@ export default {
) )
} }
} else if (milestone.status === milestoneStatusEnum.PAID) { } else if (milestone.status === milestoneStatusEnum.PAID) {
if (project.current_user_id === project.proposer_id) { if (project.providers.includes(project.current_user_id)) {
WorksapceApi.setMillestoneStatus(project.id, milestone.index, milestoneStatusEnum.DONE) WorksapceApi.setMillestoneStatus(project.id, milestone.index, milestoneStatusEnum.DONE)
.then((response) => { .then((response) => {
this.fetchView() this.fetchView()
@ -766,19 +766,19 @@ export default {
return 'Operation Complete' return 'Operation Complete'
} else if (milestone.index === project.current_milestone) { } else if (milestone.index === project.current_milestone) {
if (milestone.status === milestoneStatusEnum.IMPLEMENTING) { if (milestone.status === milestoneStatusEnum.IMPLEMENTING) {
if (project.current_user_id === project.requester_id) { if (project.issuers.includes(project.current_user_id)) {
return 'Wait for completion' return 'Wait for completion'
} else { } else {
return 'Mission complete' return 'Mission complete'
} }
} else if (milestone.status === milestoneStatusEnum.OUTSTANDING) { } else if (milestone.status === milestoneStatusEnum.OUTSTANDING) {
if (project.current_user_id === project.requester_id) { if (project.issuers.includes(project.current_user_id)) {
return 'Payment' return 'Payment'
} else { } else {
return 'Wait for payment' return 'Wait for payment'
} }
} else if (milestone.status === milestoneStatusEnum.PAID) { } else if (milestone.status === milestoneStatusEnum.PAID) {
if (project.current_user_id === project.requester_id) { if (project.issuers.includes(project.current_user_id)) {
return 'Wait for confirmation' return 'Wait for confirmation'
} else { } else {
return 'Confirm receipt' return 'Confirm receipt'
@ -889,17 +889,17 @@ export default {
switch (issue.status) { switch (issue.status) {
case projectIssueStatusEnum.OPEN: case projectIssueStatusEnum.OPEN:
if (button_text === 'Resolve') { if (button_text === 'Resolve') {
return project.current_user_id === project.proposer_id return project.providers.includes(project.current_user_id)
} }
break break
case 1: case 1:
if (button_text === 'Reopen' || button_text === 'Confirm') { if (button_text === 'Reopen' || button_text === 'Confirm') {
return project.current_user_id === project.requester_id return project.issuers.includes(project.current_user_id)
} }
break break
case projectIssueStatusEnum.CLOSED: case projectIssueStatusEnum.CLOSED:
if (button_text === 'Reopen') { if (button_text === 'Reopen') {
return project.current_user_id === project.requester_id return project.issuers.includes(project.current_user_id)
} }
break break
default: default: