freeleaps_frontend/frontend/src/utils/backend/requestHub.js
2024-05-29 09:42:27 +08:00

70 lines
1.7 KiB
JavaScript

import { backendAxios } from './axios'
import { userUtils } from '../store/index'
class RequestHubApi {
static fetchRequestForHub() {
let jwt = userUtils.getJwtToken()
const request = backendAxios.post(
'/api/requests/fetch-requests-for-hub',
{},
{
headers: { Authorization: `Bearer ${jwt}` }
}
)
return request
}
static fetchRequestForProposal(request_id) {
let jwt = userUtils.getJwtToken()
const request = backendAxios.post(
'/api/requests/fetch-request-for-proposal',
{
request_id: request_id
},
{
headers: { Authorization: `Bearer ${jwt}` }
}
)
return request
}
static fetchMyProposals() {
let jwt = userUtils.getJwtToken()
const request = backendAxios.post(
'/api/requests/fetch-my-proposals',
{},
{
headers: { Authorization: `Bearer ${jwt}` }
}
)
return request
}
static fetchTemplatesForProposal() {
let jwt = userUtils.getJwtToken()
const request = backendAxios.post(
'/api/requests/fetch-templates-for-proposal',
{},
{
headers: { Authorization: `Bearer ${jwt}` }
}
)
return request
}
static makeProposalForRequest(request_id, proposal_content, stages, document_id) {
let jwt = userUtils.getJwtToken()
const requestData = {
request_id: request_id,
proposal_content: proposal_content,
stages: stages
}
if (document_id) {
requestData.document_id = document_id
}
const request = backendAxios.post('/api/requests/make-proposal-for-request', requestData, {
headers: { Authorization: `Bearer ${jwt}` }
})
return request
}
}
export { RequestHubApi }