import metodosFetch from "../../../../assets/js/app/metodosFetch.js?v=2.0.0";
import { obtenerNombreModulo } from "../../../../assets/js/app/funcionesGenerales.js?v=2.0.0";

class TipoPlanilla {
  constructor({ id, tipoPlanilla, aplicaBoletaPago = false }) {
    this.id = id;
    this.tipoPlanilla = tipoPlanilla;
    this.aplicaBoletaPago = aplicaBoletaPago;
  }

  static async obtenerParaEnvioBoletas() {
    try {
      const respuesta = await metodosFetch.get({
        archivo: `controllers/tipoPlanillaController`,
        modulo: obtenerNombreModulo(),
        parametros: {
          accion: "obtenerParaEnvioBoletas",
        },
        loader: false,
      });

      return respuesta;
    } catch (err) {
      throw err;
    }
  }

  static async obtenerTodosParaCombo() {
    try {
      const respuesta = await metodosFetch.get({
        archivo: `controllers/tipoPlanillaController`,
        modulo: obtenerNombreModulo(),
        parametros: {
          accion: "obtenerTodosParaCombo",
        },
        loader: false,
      });

      return respuesta;
    } catch (err) {
      throw err;
    }
  }

  static async obtenerPorUsuario() {
    try {
      const response = await metodosFetch.get({
        archivo: `controllers/tipoPlanillaController`,
        modulo: obtenerNombreModulo(),
        parametros: { accion: "obtenerPorUsuario" },
        loader: false,
      });
      return response;
    } catch (err) {
      throw err;
    }
  }
}

export default TipoPlanilla;
