project.ts 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. import axios from '@/utils/axios';
  2. import { PROJECT_PREFIX } from './prefix';
  3. interface AddProjectMemberPayload {
  4. phone: string;
  5. projectId: number;
  6. }
  7. export const getProjectById = (projectId: number) => axios.get(`${PROJECT_PREFIX}/${projectId}`);
  8. export const createProject = (name: string, description: string) => axios.post(`${PROJECT_PREFIX}/create`, {
  9. name,
  10. description,
  11. });
  12. export const getProjectListByUserId = () => axios.get(`${PROJECT_PREFIX}/listByUser`);
  13. export const addProjectMember = (addProjectMemberPayload: AddProjectMemberPayload) => axios.post(`${PROJECT_PREFIX}/members`, null, {
  14. params: addProjectMemberPayload,
  15. });
  16. export const getProjectMembersByProjectId = (projectId: number) => axios.get(`${PROJECT_PREFIX}/members`, {
  17. params: {
  18. projectId,
  19. },
  20. });
  21. export const generateRelateCode = (projectId: number) => axios.post(`${PROJECT_PREFIX}/relate/code?projectId=${projectId}`);
  22. export const relateProject = (projectId: number, code: string) => axios.post(
  23. `${PROJECT_PREFIX}/relate?projectId=${projectId}&relateCode=${code}`,
  24. );