import React, { forwardRef } from "react";
import { PropTypes } from "prop-types";
import logo from "../../../../assets/images/reportHeader.png";
import logoFooter from "../../../../assets/images/reportFooter.png";
import { formatJustDate, formatJustTime } from "../../../../utils/formatTime";
import moment from "moment";
import { useCeoName } from "../../../../utils/getCeoName";
import { useSystemName } from "../../../../utils/getSystemName";

const styles = {
  page: {
    width: "214mm",
    height: "302mm",
    display: "flex",
    margin: "0 auto",
    flexDirection: "column",
    position: "relative",
    direction: "rtl",
    fontFamily: "titr",
    fontWeight: "bold",
  },
  pageData: {
    margin: "20px",
    position: "relative",
    display: "flex",
    direction: "rtl",
    flexDirection: "column",
  },
  tableInNewPage: {
    pageBreakAfter: "always",
    paddingLeft: "40px",
    paddingRight: "40px",
    direction: "rtl",
    fontFamily: "titr",
    fontWeight: "bold",
  },
  container: {
    width: "95%",
    alignSelf: "center",
    pageBreakInside: "avoid",
  },
  p: {
    fontFamily: "titr",
    fontWeight: "bold",
    pAlign: "justify",
  },
  span: {
    fontFamily: "titr",
    fontWeight: "bold",
    pAlign: "justify",
  },
  invoiceTable: {
    width: "100%",
    borderCollapse: "collapse",
    alignSelf: "center",
    marginBottom: "2px",
  },
  tableCell: {
    border: "1px solid #000",
    pAlign: "left",
    textAlign: "center",
    fontSize: 10,
  },
  tableCellMobile: {
    border: "1px solid #000",
    pAlign: "left",
    textAlign: "center",
    fontSize: 10,
  },
  tableInnerCell: {
    border: "1px solid #000",
    pAlign: "left",
    textAlign: "center",
    fontSize: 8,
    whiteSpace: "nowrap",
  },
  tableHeader: {
    backgroundColor: "rgba(211, 211, 211, 0.3)",
    pageBreakAfter: "auto",
  },
  headerRow: {
    backgroundColor: "rgba(211, 211, 211, 0.3)",
    color: "black",
    pageBreakInside: "avoid",
    pageBreakAfter: "auto",
  },
  logo: {
    width: "300px",
    height: "auto",
  },
  logoFooter: {
    width: "100px",
    height: "auto",
  },
  contentContainer: {
    alignItems: "center",
    display: "flex",
    justifyContent: "space-between",
    marginRight: "20px",
  },
  contentInLine: {
    display: "flex",
    flexDirection: "column",
    alignItems: "center",
  },
  mainTitle: {
    fontFamily: "titr",
    fontSize: 11,
    pAlign: "center",
    fontWeight: "bolder",
  },
  signature: {
    display: "flex",
    flexDirection: "column",
    alignItems: "flex-end",
    marginLeft: "20px",
  },
  watermarkContainer: {
    position: "fixed",
    top: 250,
    left: 30,
    right: 0,
    bottom: 0,
    justifyContent: "center",
    alignItems: "center",
    opacity: 0.15,
    zIndex: -1,
    userSelect: "none",
  },
  watermarkp: {
    fontFamily: "nazanin",
    fontSize: 100,
    fontWeight: "bolder",
    color: "grey",
    transform: "rotate(-45deg)",
    left: "50%",
    userSelect: "none",
  },
  title: {
    fontSize: 12,
    fontWeight: "bolder",
    pAlign: "center",
  },
  titleTopic: {
    fontSize: 12,
    fontWeight: "bolder",
    pAlign: "center",
  },
  firsttitle: {
    marginLeft: "40px",
    pAlign: "center",
    color: "#00008b",
    fontWeight: "800",
  },
  title2: {
    fontSize: 10,
    marginBottom: 10,
    pAlign: "center",
  },
  options: {
    marginLeft: "50px",
    padding: "10px",
    display: "flex",
    flexDirection: "column",
    alignItems: "flex-start",
  },
  divider: {
    width: "100%",
    height: "2px",
    backgroundColor: "red",
  },
  pTitleContainer: {
    pAlign: "center",
    margin: "15px",
    textAlign: "justify",
    textJustify: "inter-word",
    fontFamily: "nazanin",
    fontSize: "20px",
    fontWeight: "bolder",
  },
  tableHeaderCell: {
    backgroundColor: "rgba(211, 211, 211, 0.3)",
    fontSize: 10,
    border: "1px solid #000",
    padding: "4px",
    textAlign: "center",
    fontWeight: "bold",
  },
  footer: {
    left: 0,
    bottom: 0,
    width: "100%",
    position: "absolute",
  },
  footerContainer: {
    alignItems: "center",
    display: "flex",
  },
  circle: {
    borderRadius: "50%",
    width: "20px",
    height: "20px",
    padding: "10px",
    background: "#ecf0f1",
    border: " 1px solid #000",
    color: "#000",
    textAlign: "center",
    marginRight: "130px",
  },
  tableRowEven: {
    backgroundColor: "rgba(170, 183, 255, 0.3)",
  },
};

const ProvinceGetReportFile = forwardRef((props, ref) => {
  const { item } = props;
  const { inDate } = props;
  const { targetperson } = props;
  const { reportType } = props;
  const systemName = useSystemName();
  const ceoName = useCeoName();

  const getItemState = (item) => {
    let sellType = "";
    if (item?.directBuying) {
      sellType = "خرید مستقیم";
    } else if (item?.union) {
      sellType = "خرید خارج از استان";
    } else {
      sellType = "اتحادیه";
    }
    return sellType;
  };

  function totalCapacity(item) {
    return item?.reduce(
      (total, currentItem) => total + (currentItem?.quantity || 0),
      0
    );
  }

  function getItemInfoWeight(item) {
    let totalQuantity = 0;
    item?.forEach((option) => {
      if (option?.hatching?.totalWeight) {
        if (option?.hatching?.totalWeight !== undefined) {
          totalQuantity += option?.hatching?.totalWeight;
        }
      }
    });
    return totalQuantity;
  }

  function getItemInfoQuantityPage2(item) {
    let totalQuantity = 0;
    item?.forEach((option) => {
      if (option?.provinceKillRequests) {
        option.provinceKillRequests.forEach((request) => {
          if (request.info?.quantity !== undefined) {
            totalQuantity += request.info.quantity;
          }
        });
      }
    });
    return totalQuantity;
  }

  function getItemInfoWeightPage2(item) {
    let totalQuantity = 0;
    item?.forEach((option) => {
      if (option?.provinceKillRequests) {
        option.provinceKillRequests.forEach((request) => {
          if (request.info?.weight !== undefined) {
            totalQuantity += request.info.weight;
          }
        });
      }
    });
    return totalQuantity;
  }

  function totalQuantityCar() {
    return item?.serializerKillHouseRequestsThirdLetter.reduce(
      (total, currentItem) => total + (currentItem?.weightInfo?.weight || 0),
      0
    );
  }

  const HeaderPDF = () => {
    return (
      <>
        <div style={styles.contentContainer}>
          <div style={styles.contentInLine}>
            <span
              style={{
                ...styles.firsttitle,
                fontSize: 19,
                zIndex: 1,
              }}
            >
              گزارش فرآیند کشتار وتوزیع مرغ گوشتی سامانه رصدیار
            </span>
            <span style={{ fontSize: "20px" }}>
              {systemName} {" - "}
              مورخ {formatJustDate(inDate)}
            </span>
            <span
              style={{
                fontSize: "12px",
                color: "red",
                alignSelf: "start",
                marginTop: "30px",
              }}
            >
              این گزارش در تاریخ {formatJustDate(moment())} ساعت{" "}
              {formatJustTime(moment())} صادر شده است.
            </span>
          </div>

          <div style={styles.contentInLine}>
            <img alt="logo" src={logo} style={styles.logo} />
          </div>
        </div>

        <hr style={styles.divider} />
      </>
    );
  };

  let pageNumber = 0;
  const FooterPDF = () => {
    pageNumber++;
    return (
      <>
        <div style={styles.footer}>
          <div style={styles.divider} />
          <div style={styles.footerContainer}>
            <img alt="logo" src={logoFooter} style={styles.logoFooter} />

            <p style={{ fontSize: 15, padding: "10px", marginRight: "10px" }}>
              گزارش فرآیند کامل کشتار و پخش مرغ گوشتی سامانه رصدیار
              www.rasadyaar.ir
            </p>
            <div style={styles.circle}>{pageNumber}</div>
          </div>
        </div>
      </>
    );
  };

  const TablePage2 = ({ items, start, end }) => {
    const slicedItems = items?.slice(start - 1, end);
    return (
      <table style={styles.invoiceTable}>
        <thead style={styles.tableHeader}>
          <tr style={styles.headerRow}>
            <th style={styles.tableHeaderCell}>ردیف</th>
            <th style={styles.tableHeaderCell}>کد سفارش</th>
            <th style={styles.tableHeaderCell}>نوع فروش</th>
            <th style={styles.tableHeaderCell}>تاریخ کشتار</th>
            <th style={styles.tableHeaderCell}>مرغدار</th>
            <th style={styles.tableHeaderCell}>شهر/تعاونی</th>
            <th style={styles.tableHeaderCell}>سن مرغ</th>
            <th style={styles.tableHeaderCell}>میانگین وزن</th>
            <th style={styles.tableHeaderCell}>وزن تقریبی</th>
            <th style={styles.tableHeaderCell}>مانده در سالن</th>
            <th style={styles.tableHeaderCell}>تعداد درخواست کشتار</th>
          </tr>
        </thead>
        <tbody>
          {slicedItems?.map((item, i) => (
            <tr key={i} style={i % 2 === 0 ? styles.tableRowEven : {}}>
              <td style={styles.tableCell}>{i + start}</td>
              <td style={styles.tableCell}>{item.orderCode}</td>
              <td style={styles.tableCell}>{getItemState(item)}</td>
              <td style={styles.tableCell}>{formatJustDate(item?.sendDate)}</td>
              <td
                style={styles.tableCell}
              >{`${item?.poultry?.unitName} (${item?.poultry?.user?.mobile})`}</td>
              <td style={styles.tableCell}>{`${
                item?.poultry?.address?.city?.name
              }/${
                item?.poultry?.cityOperator
                  ? item?.poultry?.cityOperator
                  : "بدون تعاونی"
              }`}</td>
              <td style={styles.tableCell}>{item?.hatching?.age}</td>
              <td style={styles.tableCell}>{item?.IndexWeight}</td>
              <td style={styles.tableCell}>
                {item?.hatching?.totalWeight?.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.hatching?.leftOver?.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.firstQuantity?.toLocaleString()}
              </td>
            </tr>
          ))}
        </tbody>
      </table>
    );
  };

  const TablePage3 = ({ items, start, end }) => {
    const slicedItems = items?.slice(start - 1, end);

    return (
      <table style={styles.invoiceTable}>
        <thead style={styles.tableHeader}>
          <tr style={styles.headerRow}>
            <th style={styles.tableHeaderCell}>ردیف</th>
            <th style={styles.tableHeaderCell}>مرغدار</th>
            <th style={styles.tableHeaderCell}>تلفن</th>
            <th style={styles.tableHeaderCell}>شهر</th>
            <th style={styles.tableHeaderCell}>تعداد</th>
            <th style={styles.tableHeaderCell}>میانگین وزنی</th>
            <th style={styles.tableHeaderCell}>سن</th>
            <th style={styles.tableHeaderCell}>خریدار</th>
            <th style={styles.tableHeaderCell}>تعداد</th>
            <th style={styles.tableHeaderCell}>وزن تقریبی بار</th>
            <th style={styles.tableHeaderCell}>محل کشتار</th>
          </tr>
        </thead>
        <tbody>
          {slicedItems?.map((item, i) => (
            <tr key={i} style={i % 2 === 0 ? styles.tableRowEven : {}}>
              <td style={styles.tableCell}>{i + start}</td>
              <td style={styles.tableCell}>{item?.poultry?.user?.fullname}</td>
              <td style={styles.tableCellMobile}>
                {item?.poultry?.user?.mobile}
              </td>
              <td style={styles.tableCell}>
                {item?.poultry?.address?.city?.name}
              </td>
              <td style={styles.tableCell}>
                {item?.quantity.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.IndexWeight.toLocaleString()}
              </td>
              <td style={styles.tableCell}>{item?.hatching?.age}</td>
              <td style={styles.tableInnerCell}>
                {item?.provinceKillRequests?.map((item, i, array) => (
                  <>
                    {item?.killhouseUser?.killHouseOperator?.user?.fullname
                      ? item?.killhouseUser?.killHouseOperator?.user?.fullname
                      : "............"}
                    <br />
                    {i < array.length - 1 && (
                      <div style={{ borderBottom: "1px solid #000" }} />
                    )}
                  </>
                ))}
              </td>
              <td style={styles.tableInnerCell}>
                {item?.provinceKillRequests?.map((item, i, array) => (
                  <>
                    {item?.info?.quantity
                      ? item?.info?.quantity.toLocaleString()
                      : "............"}
                    <br />
                    {i < array.length - 1 && (
                      <div style={{ borderBottom: "1px solid #000" }} />
                    )}
                  </>
                ))}
              </td>
              <td style={styles.tableInnerCell}>
                {item?.provinceKillRequests?.map((item, i, array) => (
                  <>
                    {Math.round(item?.info?.weight)
                      ? Math.round(item?.info?.weight).toLocaleString()
                      : "............"}
                    <br />
                    {i < array.length - 1 && (
                      <div style={{ borderBottom: "1px solid #000" }} />
                    )}
                  </>
                ))}
              </td>
              <td style={styles.tableInnerCell}>
                {item?.provinceKillRequests?.map((item, i, array) => (
                  <>
                    {item?.info?.killPlace
                      ? item?.info?.killPlace
                      : "............"}
                    <br />
                    {i < array.length - 1 && (
                      <div style={{ borderBottom: "1px solid #000" }} />
                    )}
                  </>
                ))}
              </td>
            </tr>
          ))}
        </tbody>
      </table>
    );
  };

  const TablePage4 = ({ items, start, end }) => {
    const slicedItems = items?.slice(start - 1, end);

    return (
      <table style={styles.invoiceTable}>
        <thead style={styles.tableHeader}>
          <tr style={styles.headerRow}>
            <th style={styles.tableHeaderCell}>ردیف</th>
            <th style={styles.tableHeaderCell}>کد بار</th>
            <th style={styles.tableHeaderCell}>خریدار</th>
            <th style={styles.tableHeaderCell}>ماشین</th>
            <th style={styles.tableHeaderCell}>راننده</th>
            <th style={styles.tableHeaderCell}>نژاد</th>
            <th style={styles.tableHeaderCell}>تعداد</th>
            <th style={styles.tableHeaderCell}>وزن بار</th>
            <th style={styles.tableHeaderCell}>میانگین وزن</th>
            <th style={styles.tableHeaderCell}>مرغدار</th>
            <th style={styles.tableHeaderCell}>محل کشتار</th>
          </tr>
        </thead>
        <tbody>
          {slicedItems?.map((item, i) => (
            <tr key={i} style={i % 2 === 0 ? styles.tableRowEven : {}}>
              <td style={styles.tableCell}>{i + start}</td>
              <td style={styles.tableCell}>{item?.barCode}</td>
              <td style={styles.tableCell}>
                {item.killhouseUser?.name} (
                {item.killhouseUser?.killHouseOperator?.user?.mobile})
              </td>
              <td style={styles.tableCell}>
                {item.addCar.driver.typeCar} {item?.addCar.driver.pelak}
              </td>
              <td style={styles.tableCell}>
                {item?.addCar?.driver?.driverName} (
                {item?.addCar?.driver?.driverMobile})
              </td>
              <td style={styles.tableCell}>
                {item?.poultryRequest?.chickenBreed}
              </td>
              <td style={styles.tableCell}>
                {item?.quantity?.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.weightInfo?.weight?.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.weightInfo?.indexWeight?.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.poultryRequest?.poultry?.unitName} (
                {item.poultryRequest.poultry?.user?.mobile})
              </td>
              <td style={styles.tableCell}>{item?.killPlace}</td>
            </tr>
          ))}
        </tbody>
      </table>
    );
  };

  const TablePage5 = ({ items, start, end }) => {
    const slicedItems = items?.slice(start - 1, end);

    return (
      <table style={styles.invoiceTable}>
        <thead style={styles.tableHeader}>
          <tr style={styles.headerRow}>
            <th style={styles.tableHeaderCell}>ردیف</th>
            <th style={styles.tableHeaderCell}>خریدار/تلفن</th>
            <th style={styles.tableHeaderCell}>شهر</th>
            <th style={styles.tableHeaderCell}>حجم لاشه ها</th>
            <th style={styles.tableHeaderCell}>وزن لاشه ها</th>
            <th style={styles.tableHeaderCell}>لاشه های تخصیص داده شده</th>
            <th style={styles.tableHeaderCell}>وزن تخصیص داده شده</th>
            <th style={styles.tableHeaderCell}>لاشه قابل تخصیص</th>
            <th style={styles.tableHeaderCell}>وزن قابل تخصیص</th>
          </tr>
        </thead>
        <tbody>
          {slicedItems?.map((item, i) => (
            <tr key={i} style={i % 2 === 0 ? styles.tableRowEven : {}}>
              <td style={styles.tableCell}>{i + start}</td>
              <td
                style={styles.tableCell}
              >{`${item?.killHouseOperator.user?.fullname} (${item?.killHouseOperator.user?.mobile})`}</td>
              <td style={styles.tableCell}>{item?.systemAddress?.address}</td>
              <td style={styles.tableCell}>
                {item?.provinceKillRequestInformation?.totalNumberOfCarcasses.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.provinceKillRequestInformation?.totalWeightOfCarcasses.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.provinceKillRequestInformation?.allocatedTotalNumberOfCarcasses.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.provinceKillRequestInformation?.allocatedTotalWeightOfCarcasses.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.provinceKillRequestInformation?.remainTotalNumberOfCarcasses.toLocaleString()}
              </td>
              <td style={styles.tableCell}>
                {item?.provinceKillRequestInformation?.remainTotalWeightOfCarcasses.toLocaleString()}
              </td>
            </tr>
          ))}
        </tbody>
      </table>
    );
  };

  const TablePage6 = ({ items, start, end }) => {
    const slicedItems = items?.slice(start - 1, end);

    return (
      <table style={styles.invoiceTable}>
        <thead style={styles.tableHeader}>
          <tr style={styles.headerRow}>
            <th style={styles.tableHeaderCell}>ردیف</th>
            <th style={styles.tableHeaderCell}>خریدار</th>
            <th style={styles.tableHeaderCell}>تاریخ تخصیص</th>
            <th style={styles.tableHeaderCell}>ماهیت</th>
            <th style={styles.tableHeaderCell}>نوع تخصیص</th>
            <th style={styles.tableHeaderCell}>نام واحد صنفی</th>
            <th style={styles.tableHeaderCell}>موبایل مالک</th>
            <th style={styles.tableHeaderCell}>شناسه صنف</th>
            <th style={styles.tableHeaderCell}>نوع فعالیت</th>
            <th style={styles.tableHeaderCell}>حوزه فعالیت</th>
            <th style={styles.tableHeaderCell}>شهرستان</th>
            <th style={styles.tableHeaderCell}>حجم لاشه</th>
            <th style={styles.tableHeaderCell}>وزن لاشه</th>
          </tr>
        </thead>
        <tbody>
          {slicedItems?.map((item, i) => (
            <tr key={i} style={i % 2 === 0 ? styles.tableRowEven : {}}>
              <td style={styles.tableCell}>{i + start}</td>
              <td style={styles.tableCell}>
                {item?.wareHouse?.killHouse?.killer === "true"
                  ? "کشتارکن"
                  : "کشتارگاه"}{" "}
                {item?.wareHouse?.killHouse?.name}
              </td>
              <td style={styles.tableCell}>{formatJustDate(item?.date)}</td>
              <td style={styles.tableCell}>
                {item?.steward ? "مباشر" : "صنف"}
              </td>
              <td style={styles.tableCell}>
                {item?.type === "manual" ? "دستی" : "اتوماتیک"}
              </td>
              <td style={styles.tableCell}>
                {item?.steward?.guilds?.guildsName
                  ? item?.steward?.guilds?.guildsName
                  : item?.guilds?.guildsName}
              </td>
              <td style={styles.tableCell}>
                {item?.steward?.guilds?.user.mobile
                  ? item?.steward?.guilds?.user.mobile
                  : item?.guilds?.user.mobile}
              </td>
              <td style={styles.tableCell}>
                {item?.steward?.guilds?.guildsId
                  ? item?.steward?.guilds?.guildsId
                  : item?.guilds?.guildsId}
              </td>
              <td style={styles.tableCell}>
                {item?.steward?.guilds?.typeActivity
                  ? item?.steward?.guilds?.typeActivity
                  : item?.guilds?.typeActivity}
              </td>
              <td style={styles.tableCell}>
                {item?.steward?.guilds?.areaActivity
                  ? item?.steward?.guilds?.areaActivity
                  : item?.guilds?.areaActivity}
              </td>
              <td style={styles.tableCell}>
                {item?.steward?.guilds?.user?.city
                  ? item?.steward?.guilds?.user?.city
                  : item?.guilds?.user?.city}
              </td>
              <td style={styles.tableCell}>{item?.numberOfCarcasses}</td>
              <td style={styles.tableCell}>{item?.weightOfCarcasses}</td>
            </tr>
          ))}
        </tbody>
      </table>
    );
  };

  return (
    <div ref={ref}>
      <div style={styles.watermarkContainer}>
        <p style={styles.watermarkp}>سامانه رصدیار </p>
      </div>
      <div style={styles.page}>
        <HeaderPDF />
        <div style={styles.pageData}>
          <h3 style={{ margin: "10px" }}>{targetperson}</h3>
          <h3 style={{ margin: "10px", fontSize: "15px" }}>با سلام</h3>
          <h3 style={{ margin: "10px", fontSize: "16px" }}>
            احتراماً به پیوست، گزارش کامل فرآیند کشتار و توزیع مرغ گوشتی استان
            جهت استحضار بحضورتان ارسال میگردد.
          </h3>
          <h3 style={{ margin: "10px", fontSize: "15px" }}>خلاصه گزارش:</h3>
          <p style={styles.pTitleContainer}>
            در مورخ{" "}
            {reportType === "slaughter"
              ? formatJustDate(moment(inDate))
              : formatJustDate(moment(inDate).subtract(1, "days"))}{" "}
            تعداد
            {item?.serializerPoultryRequestsFirstLetter.length} درخواست کشتار
            توسط مرغداران استان برای کشتار{" "}
            {totalCapacity(item?.serializerPoultryRequestsFirstLetter) !==
              undefined &&
              totalCapacity(
                item?.serializerPoultryRequestsFirstLetter
              ).toLocaleString()}{" "}
            قطعه مرغ زنده با وزن تقریبی{" "}
            {getItemInfoWeight(
              item?.serializerPoultryRequestsFirstLetter
            ).toLocaleString()}{" "}
            کیلوگرم به اتحادیه مرغداران گوشتی استان ارسال گردید بعد از پایش
            اطلاعات تعداد{" "}
            {getItemInfoQuantityPage2(
              item?.serializerPoultryRequestsSecondeLetter
            ).toLocaleString()}{" "}
            قطعه مرغ با وزن تقریبی{" "}
            {Math.round(
              getItemInfoWeightPage2(
                item?.serializerPoultryRequestsSecondeLetter
              )
            ).toLocaleString()}{" "}
            کیلوگرم به {item?.serializerKillHouseRequestsFourthPartOne.buyers}{" "}
            خریدار تخصیص داده شد .از مجموع ذکر شده تخصیصی به خریداران،{" "}
            {item?.serializerKillHouseRequestsThirdLetter.length}
            بار (خودرو) به تعداد{" "}
            {item?.killHouseRequestsThirdLetterQuantity.toLocaleString()} قطعه و
            وزن {totalQuantityCar()?.toLocaleString()} کیلوگرم ایجاد شد از
            بارهای ایجاد شده تعداد{" "}
            {item?.serializerKillHouseRequestsThirdLetterPartThree} بار توسط
            دامپزشک فارم کد قرنطینه دریافت کرده اند و{" "}
            {item?.serializerKillHouseRequestsThirdLetterPartTwo} بار به تعداد{" "}
            {item?.killHouseRequestsThirdLetterPartTwoQuantity.toLocaleString()}{" "}
            قطعه و وزن{" "}
            {item?.killHouseRequestsThirdLetterPartTwoWeight?.toLocaleString()}{" "}
            کیلوگرم توسط دامپزشک کشتارگاه یا کاربر کشتارگاه عملیات تخلیه و تکمیل
            اطلاعات انجام پذیرفته است.از بار های تخلیه (تکمیل) شده توسط خریداران
            و کشتارگاه ها بعد از کسر 25 % افت مرغ زنده، مقدار{" "}
            {Math.floor(
              (item?.killHouseRequestsThirdLetterPartTwoWeight / 100) * 75
            ).toLocaleString()}{" "}
            کیلوگرم لاشه مرغ برای توزیع در بین مباشرین و اصناف
            {reportType === "broadcast"
              ? ` در انبار امروز (${formatJustDate(
                  inDate
                )}) خریداران موجود گردید`
              : ` در انبار خریداران موجود گردید`}
            {reportType === "slaughter"
              ? "."
              : `            ، از مجموع موجودی انبار خریداران
            و کشتارگاه ها مقدار ${Math.floor(
              item?.serializerKillHouseRequestsFourthPartFifth
            ).toLocaleString()} کیلوگرم به تعداد ${item?.serializerKillHouseRequestsFourthPartFourth.toLocaleString()} قطعه
            بین ${
              item?.serializerKillHouseRequestsFourthPartSixth
            } مباشر و صنف توزیع شد.`}
            <br />
            <br />
            {reportType === "broadcast" && (
              <span style={{ color: "red" }}>
                *باتوجه به اینکه گوشت مرغ پخش شده در تاریخ امروز (
                {formatJustDate(inDate)}) مربوط به اطلاعات و کشتار دیروز (
                {reportType === "slaughter"
                  ? formatJustDate(moment(inDate))
                  : formatJustDate(moment(inDate).subtract(1, "days"))}
                ) میباشد مبنای گزارش، تاریخ توزیع گوشت مرغ گرم در بین مباشرین
                است.
              </span>
            )}
          </p>
          <div
            style={{
              ...styles.contentInLine,
              alignSelf: "end",
              fontFamily: "nazanin",
              marginLeft: "50px",
            }}
          >
            <span style={{ fontSize: "16 px" }}>✒️ مدیرعامل</span>
            <span style={{ fontSize: "22px" }}>{ceoName}</span>
          </div>
        </div>

        <FooterPDF />
      </div>

      <div style={styles.page}>
        <HeaderPDF />
        <div style={styles.pageData}>
          <h3 style={{ margin: "10px" }}>درخواست کشتار مرغداران:</h3>

          <div style={styles.container}>
            <p style={{ marginTop: "10px" }}>
              اطلاعات درخواست:{" "}
              <span style={{ color: "green", fontWeight: "boler" }}>
                {" "}
                تعداد درخواست کشتار (
                {totalCapacity(item?.serializerPoultryRequestsFirstLetter) !==
                  undefined &&
                  totalCapacity(
                    item?.serializerPoultryRequestsFirstLetter
                  ).toLocaleString()}{" "}
                قطعه)، وزن کل (
                {getItemInfoWeight(
                  item?.serializerPoultryRequestsFirstLetter
                ).toLocaleString()}{" "}
                کیلوگرم).
              </span>
            </p>

            <TablePage2
              items={item?.serializerPoultryRequestsFirstLetter}
              start={1}
              end={18}
            />
          </div>
        </div>

        <FooterPDF />
      </div>

      {item?.serializerPoultryRequestsFirstLetter.length > 18 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3>درخواست کشتار مرغداران:</h3>
            <TablePage2
              items={item?.serializerPoultryRequestsFirstLetter}
              start={19}
              end={40}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      {item?.serializerPoultryRequestsFirstLetter.length > 40 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3>درخواست کشتار مرغداران:</h3>
            <TablePage2
              items={item?.serializerPoultryRequestsFirstLetter}
              start={41}
              end={65}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      <div style={styles.page}>
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.pageData}>
            <h3 style={{ margin: "10px" }}>تخصیص به خریداران توسط اتحادیه:</h3>

            <div style={styles.container}>
              <p style={{ marginTop: "10px" }}>
                اطلاعات تخصیص:{" "}
                <span style={{ color: "green", fontWeight: "boler" }}>
                  {" "}
                  تعداد درخواست کشتار (
                  {totalCapacity(
                    item?.serializerPoultryRequestsSecondeLetter
                  ) !== undefined &&
                    totalCapacity(
                      item?.serializerPoultryRequestsSecondeLetter
                    ).toLocaleString()}{" "}
                  قطعه)، تخصیص داده شده (
                  {getItemInfoQuantityPage2(
                    item?.serializerPoultryRequestsSecondeLetter
                  ).toLocaleString()}{" "}
                  قطعه)، وزن کل تخصیص ({" "}
                  {Math.round(
                    getItemInfoWeightPage2(
                      item?.serializerPoultryRequestsSecondeLetter
                    )
                  ).toLocaleString()}{" "}
                  کیلوگرم).
                </span>
              </p>

              <TablePage3
                items={item?.serializerPoultryRequestsSecondeLetter}
                start={1}
                end={25}
              />
            </div>
          </div>
        </div>
        <FooterPDF />
      </div>

      {item?.serializerPoultryRequestsSecondeLetter.length > 25 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3>تخصیص به خریداران توسط اتحادیه:</h3>
            <TablePage3
              items={item?.serializerPoultryRequestsSecondeLetter}
              start={26}
              end={50}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      {item?.serializerPoultryRequestsSecondeLetter.length > 50 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3>تخصیص به خریداران توسط اتحادیه:</h3>
            <TablePage3
              items={item?.serializerPoultryRequestsSecondeLetter}
              start={51}
              end={75}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      <div style={styles.page}>
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.pageData}>
            <h3 style={{ margin: "10px" }}>
              ثبت خودرو توسط خریدار (ایجاد بار):
            </h3>

            <div style={styles.container}>
              {/* <p style={{ marginTop: "10px" }}>
            اطلاعات درخواست:{" "}
            <span style={{ color: "green", fontWeight: "boler" }}>
              {" "}
              تعداد درخواست کشتار (
              {totalCapacity(item?.serializerPoultryRequestsFirstLetter) !==
                undefined &&
                totalCapacity(
                  item?.serializerPoultryRequestsFirstLetter
                ).toLocaleString()}{" "}
              قطعه)، وزن کل تقریبی (
              {getItemInfoWeight(
                item?.serializerPoultryRequestsFirstLetter
              ).toLocaleString()}{" "}
              کیلوگرم).
            </span>
          </p> */}
              <TablePage4
                items={item?.serializerKillHouseRequestsThirdLetter}
                start={1}
                end={16}
              />
            </div>
          </div>
        </div>
        <FooterPDF />
      </div>
      {item?.serializerKillHouseRequestsThirdLetter.length > 16 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3>ثبت خودرو توسط خریدار (ایجاد بار):</h3>
            <TablePage4
              items={item?.serializerKillHouseRequestsThirdLetter}
              start={17}
              end={34}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      {item?.serializerKillHouseRequestsThirdLetter.length > 34 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3>ثبت خودرو توسط خریدار (ایجاد بار):</h3>
            <TablePage4
              items={item?.serializerKillHouseRequestsThirdLetter}
              start={35}
              end={54}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      {item?.serializerKillHouseRequestsThirdLetter.length > 54 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3>ثبت خودرو توسط خریدار (ایجاد بار):</h3>
            <TablePage4
              items={item?.serializerKillHouseRequestsThirdLetter}
              start={55}
              end={75}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      {item?.serializerKillHouseRequestsThirdLetter.length > 75 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3>ثبت خودرو توسط خریدار (ایجاد بار):</h3>
            <TablePage4
              items={item?.serializerKillHouseRequestsThirdLetter}
              start={76}
              end={95}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      {reportType === "broadcast" && (
        <>
          <div style={styles.page}>
            <HeaderPDF />
            <div style={styles.pageData}>
              <h3 style={{ margin: "10px" }}>
                اطلاعات انبار خریداران و پخش به مباشرین:
              </h3>

              <div style={styles.container}>
                <p style={{ marginTop: "10px" }}>
                  اطلاعات :{" "}
                  <span
                    style={{
                      color: "green",
                      fontWeight: "boler",
                      fontSize: "14px",
                    }}
                  >
                    تعداد خریداران (
                    {item?.serializerKillHouseRequestsFourthPartOne?.buyers})،
                    حجم لاشه ها (
                    {Math.floor(
                      item?.serializerKillHouseRequestsFourthPartOne
                        ?.totalNumberOfCarcasses
                    ).toLocaleString()}
                    ) ، وزن لاشه ها (
                    {Math.floor(
                      item?.serializerKillHouseRequestsFourthPartOne
                        ?.totalWeightOfCarcasses
                    ).toLocaleString()}
                    ) کیلوگرم.
                  </span>
                </p>

                <TablePage5
                  items={item?.serializerKillHouseRequestsFourthPartTwo}
                  start={1}
                  end={25}
                />
              </div>
            </div>
            <FooterPDF />
          </div>

          {item?.serializerKillHouseRequestsFourthPartTwo.length > 25 && (
            <div style={styles.page}>
              <HeaderPDF />
              <div style={styles.tableInNewPage}>
                <h3 style={{ margin: "10px" }}>
                  اطلاعات انبار خریداران و پخش به مباشرین:
                </h3>
                <TablePage5
                  items={item?.serializerKillHouseRequestsThirdLetter}
                  start={26}
                  end={50}
                />
              </div>
              <FooterPDF />
            </div>
          )}

          {item?.serializerKillHouseRequestsFourthPartTwo.length > 50 && (
            <div style={styles.page}>
              <HeaderPDF />
              <div style={styles.tableInNewPage}>
                <h3 style={{ margin: "10px" }}>
                  اطلاعات انبار خریداران و پخش به مباشرین:
                </h3>
                <TablePage5
                  items={item?.serializerKillHouseRequestsThirdLetter}
                  start={51}
                  end={75}
                />
              </div>
              <FooterPDF />
            </div>
          )}
        </>
      )}

      <div style={styles.page}>
        <HeaderPDF />
        <div style={styles.pageData}>
          <h3 style={{ margin: "10px" }}>
            گزارش توزیع و پخش گوشت مرغ گرم به مباشرین و اصناف:{" "}
          </h3>

          <div style={styles.container}>
            <p style={{ marginTop: "10px" }}>
              اطلاعات :{" "}
              <span
                style={{
                  color: "green",
                  fontWeight: "boler",
                  fontSize: "14px",
                }}
              >
                تعداد تخصیصات: (
                {item?.serializerKillHouseRequestsFourthPartSixth.toLocaleString()}
                ) مورد، حجم لاشه ها (
                {item?.serializerKillHouseRequestsFourthPartFourth.toLocaleString()}
                ) قطعه، وزن لاشه ها (
                {Math.floor(
                  item?.serializerKillHouseRequestsFourthPartFifth
                ).toLocaleString()}
                ) کیلوگرم.
              </span>
            </p>

            <TablePage6
              items={item?.serializerKillHouseRequestsFourthPartThree}
              start={1}
              end={26}
            />
          </div>
        </div>
        <FooterPDF />
      </div>

      {item?.serializerKillHouseRequestsFourthPartThree.length > 26 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3 style={{ margin: "10px" }}>
              گزارش توزیع و پخش گوشت مرغ گرم به مباشرین و اصناف:{" "}
            </h3>
            <TablePage6
              items={item?.serializerKillHouseRequestsFourthPartThree}
              start={27}
              end={55}
            />
          </div>
          <FooterPDF />
        </div>
      )}

      {item?.serializerKillHouseRequestsFourthPartThree.length > 55 && (
        <div style={styles.page}>
          <HeaderPDF />
          <div style={styles.tableInNewPage}>
            <h3 style={{ margin: "10px" }}>
              گزارش توزیع و پخش گوشت مرغ گرم به مباشرین و اصناف:{" "}
            </h3>
            <TablePage6
              items={item?.serializerKillHouseRequestsFourthPartThree}
              start={56}
              end={100}
            />
          </div>
          <FooterPDF />
        </div>
      )}
    </div>
  );
});

ProvinceGetReportFile.displayName = "ProvinceGetReportFile";

export default ProvinceGetReportFile;

ProvinceGetReportFile.propTypes = {
  item: PropTypes.any,
};
