index.js 20.2 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409
import React, { useEffect, useState } from "react";

import Image from "next/image";
import PageBanner from "@/components/reuseables/PageBanner";
import { Col, Container, Row } from "react-bootstrap";
import Heading from "@/components/reuseables/Heading";
import { motion } from "framer-motion";
import { slideFromLeft } from "@/components/reuseables/variants";
import Link from "next/link";
import { useDispatch, useSelector } from "react-redux";
import { fetchTaxwireList } from "@/redux/slices/taxwireslice";
import { cleanImage } from "@/layout/imageHandling";
import qs from "qs";
import axios from "axios";
import ReactPaginate from "react-paginate";
import Seo from "@/components/reuseables/Seo/Seo";
import Pagination from "react-js-pagination";

// const services = [
//   {
//     id: 0,
//     serviceTitle: "Supreme Court of India's Safari Retreats' Verdict: TaxWire 25.10.2024",
//     serviceShortDescription: "The recent Indian Supreme Court judgement in the Chief Commissioner of Central Goods and Service Tax vs. Safari Retreats Private Limited & Others1 case is a landmark judgement under the Goods & Services Tax (GST) law in India,",
//     date: "25 Oct 2024",
//     pdfUrl: "/images/knoweledge/pdf/taxwire/TaxWire_25.10.2024.pdf",
//   },
//   {
//     id: 1,
//     serviceTitle: "Mismatch in year of taxation of Income and TDS Credit – Form 71 to the relief",
//     serviceShortDescription: "The Income Tax Law in India requires that income from a particular assessment year be subjected to tax in that assessment year.",
//     serviceDetailsUrl: "/services/details",
//     date: "21 Sep 2023",
//     pdfUrl: "/images/knoweledge/pdf/taxwire/Mismatch_in_year_of_taxation_of_Income_and_TDS_Credit_–_Form_71_to_the_relief.pdf",
//   },
//   {
//     id: 2,
//     serviceTitle: "GST on Renting of residential property to registered person",
//     serviceShortDescription: "For more than 15 years, renting of property has been covered under either service taxor Goods and Service Tax (GST). Broadly,the Government's intention seemed clear –tax commercial rentals and exemptresidential rentals. ",
//     serviceDetailsUrl: "/services/details",
//     date: "04 Aug 2022",
//     pdfUrl: "/images/knoweledge/pdf/taxwire/GST_on_Renting_of_residential_property_to_registered_person.pdf",
//   },
//   {
//     id: 3,
//     serviceTitle: "Remission of Duties and Taxes on Exported Products (RoDTEP)",
//     serviceShortDescription: "RoDTEP rates and scheme details have been announced by the Ministry of Commerce and Industry by making suitable amendments to chapter 4 of the Foreign Trade Policy (FTP) in the notification (19/2015-2020) dated 17th August 2021.",
//     serviceDetailsUrl: "/services/details",
//     date: "25 Aug 2021",
//     pdfUrl: "/images/knoweledge/pdf/taxwire/Remission_of_Duties_and_Taxes_on_Exported_Products_(RoDTEP).pdf",
//   },
//   {
//     id: 4,
//     serviceTitle: "Section 2(42C) of the Income-tax Act, 1961(IT Act) defines 'slump sale' as transfer ofone or more undertakings for a lumpsumconsideration without the value beingassigned to individual assets and liabilities in such cases.",
//     serviceShortDescription: "Section 2(42C) of the Income-tax Act, 1961 (IT Act) defines 'slump sale' as transfer of one or more undertakings for a lumpsum consideration without the value being assigned to individual assets and liabilities in such cases.",
//     serviceDetailsUrl: "/services/details",
//     date: "07 Jun 2021",
//     pdfUrl: "/images/knoweledge/pdf/taxwire/PDF1629220424.pdf",
//   },
//   {
//     id: 5,
//     serviceTitle: "Consideration for sale of software - Royalty or not: Delhi tax tribunal ruling",
//     serviceShortDescription: "It is a known fact that buying licenses for software usage is a very common business transaction. It is also fairly common for Indian entities to buy suchsoftware from foreign companies. ",
//     serviceDetailsUrl: "/services/details",
//     date: "19 Jan 2021",
//     pdfUrl: "/images/knoweledge/pdf/taxwire/Delhi_High_Court_ruling_on_Constitutional_Validity_of_Income_Computation_and_Disclosure_Standards_(ICDS).pdf",
//   },
//   {
//     id: 6,
//     serviceTitle: "Finance Act, 2020 – Passed with multiple amendments",
//     serviceShortDescription: "Indian Finance Minister had presented the Budget containing the Finance Bill, 2020 on 1st February, 2020. This was tabled in both the houses of Parliament and wassupposed to be discussed.  ",
//     serviceDetailsUrl: "/services/details",
//     date: "02 Apr 2020",
//     pdfUrl: "/images/knoweledge/pdf/taxwire/Finance_Act,_2020_–_Passed_with_multiple_amendments.pdf",
//   },
//   {
//     id: 7,
//     serviceTitle: "Direct Tax Vivad se Vishwas Act, 2020",
//     serviceShortDescription: "The Finance Minister introduced the Direct Tax Vivad se Vishwas Bill, 2020('DTVSV' or 'the scheme') in the Parliament on 05-02-2020 for providingresolution of disputed tax and for mattersconnected therewith and incidentalthereto.",
//     serviceDetailsUrl: "/services/details",
//     date: "30 Mar 2020",
//     pdfUrl: "/images/knoweledge/pdf/taxwire/Direct_Tax_Vivad_se_Vishwas_Act,_2020.pdf",
//   },

//     {
//       id: 8,
//       serviceTitle: "Key highlights of 31st and 32nd GST Council Meet",
//       serviceShortDescription: "As you all are aware, w.e.f 01st July 2017, India moved into a comprehensive Indirect tax regimeunder the Goods and Services Tax (GST) Law. GST Council is a constitutional body for makingrecommendations to the Union and State Government on issues related to Goods and Service Tax.",
//       serviceDetailsUrl: "/services/details",
//       date: "23 Jan 2019",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Key_highlights_of_31st_and_32nd_GST_Council_Meet.pdf",
//     },
//     {
//       id: 9,
//       serviceTitle: "Mumbai tax tribunal holds that 'Conversion of CCPS into equity shares is Not taxable'",
//       serviceShortDescription: "The provisions of section 45(1) of the Income Tax Act, 1961 (the Act) brings into tax the profits or gains arising from the transfer of capital asset under the head'Capital Gains'. Both the terms transfer and capital asset has been defined under the Act.",
//       serviceDetailsUrl: "/services/details",
//       date: "16 Jan 2019",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Mumbai_tax_tribunal_holds_that_'Conversion_of_CCPS_into_equity_shares_is_Not_taxable'.pdf",
//     },
//     {
//       id: 10,
//       serviceTitle: "Tax Benefit for Start-ups – an overview",
//       serviceShortDescription: "To keep a check on the closely held companies from bringing in undisclosed income into the company by issuing the shares at abnormal premium, section 56(2)(viib) was introduced into the Income Tax Act, 1961(the Act) by the Finance Act2012. ",
//       serviceDetailsUrl: "/services/details",
//       date: "24 Apr 2018",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Tax_Benefit_for_Start-ups_–_an_overview.pdf",
//     },
//     {
//       id: 11,
//       serviceTitle: "Changes in the ITR Forms AY 2018-19",
//       serviceShortDescription: "Income Tax filings in India are based on self-assessment mechanism. Meaning, every person earning income in India and who is required to file tax returns, is required to compute his income and tax thereon. He needs to remit the tax and then file the said return with the income tax authority within the said date",
//       serviceDetailsUrl: "/services/details",
//       date: "17 Apr 2018",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Changes_in_the_ITR_Forms_AY_2018-19.pdf",
//     },
//     {
//       id: 12,
//       serviceTitle: "Delhi High Court ruling on Constitutional Validity of Income Computation and Disclosure Standards (ICDS)",
//       serviceShortDescription: "'Accountancy is a matter of taste. One tax payer may be conservative and others may not.' - So was told by Lord Greene in Henriksen (Inspector of Taxes) vs GraftonHotel Ltd",
//       serviceDetailsUrl: "/services/details",
//       date: "23 Nov 2017",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Delhi_High_Court_ruling_on_Constitutional_Validity_of_Income_Computation_and_Disclosure_Standards_(ICDS).pdf",
//     },
//     {
//       id: 13,
//       serviceTitle: "Green or not Green?",
//       serviceShortDescription: "“Agriculture is the backbone of the Indian economy”. This is a statement that all of us are familiar with right from elementary school. Rightly so, as agriculture contributes around 22% to our country's",
//       serviceDetailsUrl: "/services/details",
//       date: "12 Sep 2017",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Green_or_not_Green.pdf",
//     },
//     {
//       id: 14,
//       serviceTitle: "Penny wise, Pound foolish!",
//       serviceShortDescription: "It has been constantly the effort of the Government to encourage the habit of savings and investment amongst its people and to ensure the surplus funds ",
//       serviceDetailsUrl: "/services/details",
//       date: "16 Jun 2017",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Penny_wise,_Pound_foolish!.pdf",
//     },
//     {
//       id: 15,
//       serviceTitle: "Changes in the ITR Forms AY 2017-18",
//       serviceShortDescription: "The year 2016-17 saw a lot of steps taken by the Government of India to ensure that black money is subject to taxes and the revenue of the government is secured. ",
//       serviceDetailsUrl: "/services/details",
//       date: "08 Apr 2017",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Changes_in_the_ITR_Forms_AY_2017-18.pdf",
//     },
//     {
//       id: 16,
//       serviceTitle: "Bollywood Badshah's tryst with the tax department!",
//       serviceShortDescription: "Mr. Shahrukh Khan (hereinafter referred to as Mr. Khan/the assessee for brevity) is a well-known name in the film industry and also referred to as Badshah ",
//       serviceDetailsUrl: "/services/details",
//       date: "07 Apr 2017",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Bollywood_Badshah_s_tryst_with_the_tax_department!.pdf",
//     },
//     {
//       id: 17,
//       serviceTitle: "India enters into protocol amending Singapore DTAA",
//       serviceShortDescription: "It has always been a matter of dispute in India whether alienation of shares of Indian companies by companies located in tax jurisdictions like Mauritius or Cyprus can avail the benefit of treaty.",
//       serviceDetailsUrl: "/services/details",
//       date: "09 Jan 2017",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/India_enters_into_protocol_amending_Singapore_DTAA.pdf",
//     },
//     {
//       id: 18,
//       serviceTitle: "Update on Section 44AD & Section 44ADA of Income Tax Act, 1961",
//       serviceShortDescription: "This communication is to apprise you of some amendment that has happened to Income Tax act relating to professional starting FY 2016-17. The amendment will apply to taxpayers engaged in specified profession like:",
//       serviceDetailsUrl: "/services/details",
//       date: "23 Dec 2016",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Update_on_Section_44AD_&_Section_44ADA_of_Income_Tax_Act,_1961.pdf",
//     },
//     {
//       id: 19,
//       serviceTitle: "Opportunity hardly ever knocks twice!",
//       serviceShortDescription: "In light of the recent developments in the administration of the country, with the introduction of the Income Declaration scheme,",
//       serviceDetailsUrl: "/services/details",
//       date: "21 Dec 2016",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Opportunity_hardly_ever_knocks_twice!.pdf",
//     },
//     {
//       id: 20,
//       serviceTitle: "Relaxation for Non-residents from obtaining PAN",
//       serviceShortDescription: "The requirement to have a Permanent Account Number (PAN) for the purpose of Income Tax Act was first introduced in 1976. ",
//       serviceDetailsUrl: "/services/details",
//       date: "09 Jul 2016",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Relaxation_for_Non_residents_from_obtaining_PAN.pdf",
//     },
//     {
//       id: 21,
//       serviceTitle: "Government frees 'Startup' from 'Angel Tax'",
//       serviceShortDescription: "Infusing unaccounted money into closely held companies by issuing shares at abnormal premiums was a practice that prevailed as a method to convert unaccounted money into accounted money. In order to curb such practice, the",
//       serviceDetailsUrl: "/services/details",
//       date: "02 Jul 2016",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Government_frees_'Startup'_from_'Angel_Tax'.pdf",
//     },
//     {
//       id: 22,
//       serviceTitle: "TDS and TCS amendments applicable from 1st June, 2016",
//       serviceShortDescription: "The Finance Act, 2016 has brought changes in rates and limits for withholding as well as collection of taxes. These changes are applicable from 1st June, 2016. We have tried to summarise these changes as below",
//       serviceDetailsUrl: "/services/details",
//       date: "01 Jun 2016",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/TDS_and_TCS_amendments_applicable_from_1st_June,_2016.pdf",
//     },
//     {
//       id: 23,
//       serviceTitle: "Compliances for Foreign Remittances Rationalized",
//       serviceShortDescription: "Section 195 of the Income Tax Act, 1961 mandates withholding of taxes from payments being made to a non-resident ifsuch incomes is taxable in India.",
//       serviceDetailsUrl: "/services/details",
//       date: "25 Mar 2016",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Compliances_for_Foreign_Remittances_Rationalized.pdf",
//     },

//     {
//       id: 24,
//       serviceTitle: "Madras High Court's ruling on Taxation of unclaimed trading liability of discontinued business",
//       serviceShortDescription: "When a person claims allowance or deduction in respect of losses, expenditures or trading liability in the earlier years and subsequently he obtainsany benefit/recovery/remission/cessation with respect to such allowances or deductions, such benefit is deemed to be the profits and gains from business or profession u/s 41(1) of the Income Tax Act, 1961 (the Act)",
//       serviceDetailsUrl: "/services/details",
//       date: "26 Apr 2019",
//       pdfUrl: "/images/knoweledge/pdf/taxwire/Madras_High_Court`s_ruling_on_Taxation_of_unclaimed_trading_liability_of_discontinued_business.pdf",
//     },

// ];

const TaxWire = ({ TaxwireData }) => {
  const banners = [
    {
      imageSrc: cleanImage(TaxwireData?.Banner?.Image?.url),
      pageTitle: TaxwireData?.Banner?.Heading,
      homePageUrl: "/knowledge",
      homePageText: "knowledge",
      activePageText: TaxwireData?.Banner?.Heading,
    },
  ];
  const dispatch = useDispatch();
  useEffect(() => {
    dispatch(fetchTaxwireList());
  }, []);
  const taxwirelist = useSelector((state) => state.taxwirelist.data);

  // Pagination setup
   // Pagination setup
   const [currentPage, setCurrentPage] = useState(1); // Start at page 1
   const postsPerPage = 6; // Number of items per page
   const offset = (currentPage - 1) * postsPerPage; // Calculate offset
   const currentItems = taxwirelist?.slice(offset, offset + postsPerPage);
 
   // Handle page click
   const handlePageClick = (pageNumber) => {
     setCurrentPage(pageNumber); // Update current page
   };
 

  const seo = TaxwireData?.seo;
  //  console.log(seo)

  return (
    <>
      <Seo seo={seo} />
      <PageBanner banners={banners} />

      <div className="tax-wire-page-area pt-70 pb-100 bg-light ">
        <Container>
          <div className="section-title">
            <Heading heading={TaxwireData?.Heading?.Title} el="h2" />
          </div>
          <p className="text-center mb-3 mb-lg-5 ">
            {TaxwireData?.Heading?.Description}
          </p>
          <Row className="align-items-center">
            {currentItems &&
              currentItems?.map((service, index) => (
                <Col lg={4} md={6} sm={12} key={service.id}>
                  <motion.div
                    variants={slideFromLeft(0.5)}
                    initial={"hidden"}
                    whileInView={"show"}
                    viewport={{ once: false, amount: 0.4 }}
                  >
                    <div className="services-box-budget">
                      <div className="d-flex align-items-center">
                        <Image
                          src={cleanImage(service?.Image?.url)}
                          alt={
                            service?.alternativeText
                              ? service?.alternativeText
                              : "image"
                          }
                          width={40}
                          height={40}
                          className="img-fluid me-3"
                        />
                        <h3>
                          <Link
                            href={
                              service?.slug?.endsWith(".pdf")
                                ? `https://api.advithconsulting.in/uploads/${service.slug}`
                                : `/taxwire/${
                                    service?.slug ? service.slug : "#"
                                  }`
                            }
                            target={
                              service?.slug?.endsWith(".pdf")
                                ? "_blank"
                                : "_self"
                            }
                            rel={
                              service?.slug?.endsWith(".pdf")
                                ? "noopener noreferrer"
                                : undefined
                            }
                          >
                            {service?.Title || "Default Service Name"}
                          </Link>
                        </h3>
                      </div>

                      <p>{service.Description}</p>

                      <Link
                        href={
                          service?.slug?.endsWith(".pdf")
                            ? `https://api.advithconsulting.in/uploads/${service.slug}`
                            : `/taxwire/${service?.slug ? service.slug : "#"}`
                        }
                        target={
                          service?.slug?.endsWith(".pdf") ? "_blank" : "_self"
                        }
                        rel={
                          service?.slug?.endsWith(".pdf")
                            ? "noopener noreferrer"
                            : undefined
                        }
                        className="default-btn"
                      >
                        Read More
                        <i className="ri-arrow-right-line"></i>
                      </Link>
                    </div>
                  </motion.div>
                </Col>
              ))}
          </Row>

          {/* <ReactPaginate
            previousLabel={"<<"}
            nextLabel={">>"}
            breakLabel={"..."}
            pageCount={pageCount}
            marginPagesDisplayed={2}
            pageRangeDisplayed={3}
            onPageChange={handlePageClick}
            containerClassName={"pagination custom-pagination"}
            activeClassName={"active"}
          /> */}


          {taxwirelist?.length > postsPerPage && (
            <div className="custom-pagination">
              <Pagination
                activePage={currentPage}
                itemsCountPerPage={postsPerPage}
                totalItemsCount={taxwirelist?.length}
                onChange={handlePageClick}
                hideNavigation={true}
                itemClass="page-item"
                linkClass="page-numbers"
                linkClassFirst="prev"
                linkClassLast="next"
              />
            </div>
          )}

        </Container>
      </div>
    </>
  );
};

export default TaxWire;

export async function getServerSideProps() {
  try {
    const query1 = {
      populate: [
        "Banner.Image",
        "Heading",
        "seo",
        "seo.metaImage",
        "seo.schema",
      ],
    };

    const query1String = qs.stringify(query1, {
      encodeValuesOnly: true,
    });

    const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/taxwire-page?${query1String}`;
    console.log(`Final url: ${endpoint1}`);

    const response1 = await axios.get(endpoint1);
    const TaxwireData = response1.data.data;

    return {
      props: { TaxwireData },
    };
  } catch (error) {
    console.log("Error", error);
  }
}