Duffer Derek

Current Path : /var/www/api-mk-planner.bitkit.dk/httpdocs/Backend/src/controllers/
Upload File :
Current File : /var/www/api-mk-planner.bitkit.dk/httpdocs/Backend/src/controllers/syncController.js

import Log from "../configs/logger.js";
import {
  getFilesForApp,
  partnerSync,
  serviceMangers,
  syncEmployeeLeaves,
  taskSync,
  inquirySync,
  productSync,
  productLineSync
} from "../services/podio/syncPodioData.js";



export default {
  syncPartnerApp: async (req, res, next) => {
    try {
      partnerSync(process.env.PARTNER_APP_ID);
      res.status(200).json({
        status: 200,
        message: "Partner sync completed",
      });
    } catch (error) {
      Log.error(error);
      next(error);
    }
  },
  syncTaskApp: async (req, res, next) => {
    try {
      taskSync(process.env.TASK_APP_ID);
      res.status(200).json({
        status: 200,
        message: "Task sync completed",
      });
    } catch (error) {
      Log.error(error);
      next(error);
    }
  },
  getServiceManagers: async (req, res, next) => {
    try {
      serviceMangers(process.env.TASK_WS_ID);
      res.status(200).json({
        status: 200,
        message: "Service mangers sync completed",
      });
    } catch (error) {
      Log.error(error);
      next(error);
    }
  },
  downlaodFiles: async (req, res, next) => {
    try {
      Log.info("Syncing Podio Files ------------------");
      await getFilesForApp(process.env.TASK_APP_ID);
      res.status(200).json({
        status: 200,
        message: "File sync completed",
      });
    } catch (error) {
      Log.error(error);
      next(error);
    }
  },
  
  /**
   * sync leaves from podio
   * @param {*} req 
   * @param {*} res 
   * @param {*} next 
   */
  syncLeaveApp: async (req, res, next) => {
    try {
      syncEmployeeLeaves(process.env.LEAVE_APP_ID);
      res.status(200).json({
        status: 200,
        message: "Leave sync completed",
      });
    } catch (error) {
      Log.error(error);
      next(error);
    }
  },
  syncInquiryApp: async (req, res, next) => {
    try {
      inquirySync(process.env.INQUIRY_APP_ID);
      res.status(200).json({
        status: 200,
        message: "Inquiry sync completed",
      });
    } catch (error) {
      Log.error(error);
      next(error);
    }
  },
  syncProductApp: async (req, res, next) => {
    try {
      productSync(process.env.PRODUCT_APP_ID);
      res.status(200).json({
        status: 200,
        message: "Product sync completed",
      });
    } catch (error) {
      Log.error(error);
      next(error);
    }
  },
  syncProductLineApp: async (req, res, next) => {
    try {
      productLineSync(process.env.PRODUCT_LINE_APP_ID);
      res.status(200).json({
        status: 200,
        message: "Product Line sync completed",
      });
    } catch (error) {
      Log.error(error);
      next(error);
    }
  },
  
};

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists