ProjectManagementApi.js 3.06 KB
import {axiosInstance} from '@/Request/PublicAxiosInstance'
import {filterEmptyValueInObject, } from "@/PublicUtil/PublicUtil"

class ProjectApi {
    getProjectList(id) {
        return axiosInstance.request(
            {
                method: 'GET',
                url: '/tasks',
                params: filterEmptyValueInObject(
                    {
                        accountId: id
                    }
                )
            }
        )
    }

    addProject(data) {
        return axiosInstance.request(
            {
                method: 'POST',
                url: '/tasks',
                data: filterEmptyValueInObject(
                    {
                        name: data.name,
                        description: data.description,
                        type: 1,
                        labelType: 0,
                        createUser: localStorage.getItem('currentUserId'),
                    }
                )
            }
        )
    }

    editProject(id, data) {
        return axiosInstance.request(
            {
                method: 'POST',
                url: `/tasks/${id}`,
                data: data
            }
        )
    }

    finishProject(id) {
        return axiosInstance.request(
            {
                method: 'POST',
                url: `/tasks/${id}`,
                data: {
                    status: 0
                }
            }
        )
    }

    startProject(id) {
        return axiosInstance.request(
            {
                method: 'POST',
                url: `/tasks/${id}`,
                data: {
                    status: 1
                }
            }
        )
    }

    getUsedBatchList(id) {
        return axiosInstance.request(
            {
                method: 'GET',
                url: `/packs`,
                params: filterEmptyValueInObject(
                    {
                        taskId: id
                    }
                )
            }
        )
    }

    getUnusedBatchList() {
        return axiosInstance.request(
            {
                method: 'GET',
                url: `/packs`,
                params: filterEmptyValueInObject(
                    {
                        taskId_null: 'true'
                    }
                )
            }
        )
    }

    distributeBatch(data) {
        return axiosInstance.request(
            {
                method: 'GET',
                url: `/packs/assignTo`,
                params: filterEmptyValueInObject(
                    {
                        taskId: data.taskId,
                        packIds: data.packIds,
                    }
                )
            }
        )
    }

    cancelDistributeBatch(data) {
        return axiosInstance.request(
            {
                method: 'GET',
                url: `/packs/assignTo`,
                params: filterEmptyValueInObject(
                    {
                        packIds: data.packIds,
                    }
                )
            }
        )
    }

}

const projectApi = new ProjectApi()

export default projectApi