import { Request, Response } from 'express';
import mongoose from 'mongoose';
import callService from '../utils/serviceCall';

export const orderSystemCheck = async (req: Request, res: Response) => {
  const { resStatus, resData } = await callService({
    url: '/order/test',
    baseURL: process.env.ORDER_SERVICE_URL!,
    method: 'get',
    payload: req,
  });
  res.status(resStatus).json(resData);
};

export const healthCheck = async (_req: Request, res: Response) => {
  const isHealthy = mongoose.connection.readyState === 1;
  if (isHealthy) {
    res.status(200).json({
      successs: true,
      messsage: 'RMS_API_GATEWAY works properly',
      version: '1.0.15',
    });
    return;
  }
  res.status(503).json({
    successs: false,
    messsage: `RMS_API_GATEWAY does not works properly. mongoose connection state is ${mongoose.connection.readyState}`,
  });
};
