import { createAsyncThunk } from "@reduxjs/toolkit";
import axios from "axios";
import { LOADING_END, LOADING_START } from "../../../lib/redux/slices/appSlice";
import { getRoleFromUrl } from "../../../utils/getRoleFromUrl";

export const slaughterGetDistributionInfo = createAsyncThunk(
  "SLAUGHTER_GET_DISTRIBUTION_INFO",
  async (d, { dispatch }) => {
    dispatch(LOADING_START());
    const { data, status } = await axios.get("kill-house-distribution-info/", {
      params: {
        role: getRoleFromUrl(),
      },
    });
    dispatch(LOADING_END());
    return { data, status };
  }
);
export const slaughterGetVBroadcastInfo = createAsyncThunk(
  "SLAUGHTER_GET_BROARDCAST_INFO",
  async (d) => {
    const { data, status } = await axios.get(
      "kill-house-sales-info-dashboard",
      {
        params: {
          role: getRoleFromUrl(),
          ...d,
        },
      }
    );
    return { data, status };
  }
);

export const slaughterGetBarsInfo = createAsyncThunk(
  "SLAUGHTER_GET_BARS_INFO",
  async (d, { dispatch }) => {
    dispatch(LOADING_START());
    const { data, status } = await axios.get("bars_for_kill_house_dashboard/", {
      params: {
        role: getRoleFromUrl(),
        role_key: d.role_key || "",
      },
    });
    dispatch(LOADING_END());
    return { data, status };
  }
);
