Пример #1
0
        public ActionResult TaxConfigSaveChanges(TBTAXConfigVM obj)
        {
            if (obj.TAXNAME != null)
            {
                if (obj.TAXID > 0)
                {
                    TBTAXCONFIG objbrand = dbContext.TBTAXCONFIGs.Where(x => x.TAXID == obj.TAXID).FirstOrDefault();

                    objbrand.TAXNAME            = obj.TAXNAME;
                    objbrand.SALETAXCALCULATION = obj.SALETAXCALCULATION;
                    objbrand.TAX1_     = obj.TAX1_;
                    objbrand.TAX2_     = obj.TAX2_;
                    objbrand.TAX3_     = obj.TAX3_;
                    objbrand.SURONTAX3 = obj.SURONTAX3;
                    objbrand.TAXTYPE   = obj.TAXTYPE;
                }
                else
                {
                    TBTAXCONFIG objbrand = JsonConvert.DeserializeObject <TBTAXCONFIG>(JsonConvert.SerializeObject(obj));
                    dbContext.TBTAXCONFIGs.Add(objbrand);
                }
                dbContext.SaveChanges();
                if (obj.TAXTYPE == "SALE")
                {
                    return(RedirectToAction("TaxConfig"));
                }
                else
                {
                    return(RedirectToAction("PurchaseTaxConfig"));
                }
            }
            else
            {
                ViewBag.SalePurTaxAccountList = GetSalePurTaxAccount();
                ViewBag.SurchargeAccountList  = GetSurchargeAccount();
                ViewBag.Tax1AccountList       = GetTax1Account();
                ViewBag.Tax2AccountList       = GetTax2Account();
                ViewBag.TaxConfigList         = dbContext.TBTAXCONFIGs.ToList();
                if (obj.TAXTYPE == "SALE")
                {
                    ViewBag.TaxSalePurList = GetSalePurAccount("SALE");
                    return(View("TaxConfig", obj));
                    // return RedirectToAction("TaxConfig", obj);
                }
                else
                {
                    ViewBag.TaxSalePurList = GetSalePurAccount("PUR");
                    return(View("PurchaseTaxConfig", obj));
                    // return RedirectToAction("PurchaseTaxConfig",obj);
                }
            }
        }
Пример #2
0
        public ActionResult EditTaxConfig(int id = 0)
        {
            TBTAXCONFIG obj = dbContext.TBTAXCONFIGs.Where(x => x.TAXID == id).FirstOrDefault();

            if (obj == null)
            {
                return(HttpNotFound());
            }
            ViewBag.TaxSalePurList        = GetSalePurAccount("SALE");
            ViewBag.SalePurTaxAccountList = GetSalePurTaxAccount();
            ViewBag.SurchargeAccountList  = GetSurchargeAccount();
            ViewBag.Tax1AccountList       = GetTax1Account();
            ViewBag.Tax2AccountList       = GetTax2Account();
            ViewBag.TaxConfigList         = dbContext.TBTAXCONFIGs.ToList();
            return(View("TaxConfig", obj));
        }
Пример #3
0
        public decimal Getbillingamount(PurachaseDeatil obj)
        {
            decimal grandtotal = 0;

            foreach (var item in obj.purachasedetail)
            {
                if (item.ItemID != null)
                {
                    TBITEMMASTERHEADER objTBITEMMASTERHEADER = dbContext.TBITEMMASTERHEADERs.Where(x => x.ITEMID == item.ItemID).FirstOrDefault();
                    TBTAXCONFIG        objtbtaxconfig        = dbContext.TBTAXCONFIGs.Where(x => x.TAXID == objTBITEMMASTERHEADER.PURTAXID).FirstOrDefault();

                    item.Tax2 = objtbtaxconfig.TAX2_;

                    item.Tax3      = objtbtaxconfig.TAX3_;
                    item.SurCharge = objtbtaxconfig.SURONTAX3;

                    // objbrand.CdVal = obj.CdVal;
                    decimal gAmount   = Convert.ToDecimal(item.GAmount);
                    decimal cd        = Convert.ToDecimal(item.Cd);
                    decimal cdval     = (cd * gAmount / 100);
                    decimal netamount = gAmount - cdval;
                    decimal grosscd   = netamount;

                    decimal tax2    = Convert.ToDecimal(item.Tax2);
                    decimal tax2val = (netamount * tax2) / (100 + tax2);
                    netamount = netamount - tax2val;


                    decimal tax3    = Convert.ToDecimal(item.Tax3);
                    decimal tax3val = (netamount * tax3) / 100;
                    netamount = netamount + tax3val;
                    decimal SurCharge     = Convert.ToDecimal(item.SurCharge);
                    decimal surcharegeval = (tax3val * SurCharge) / 100;
                    netamount = netamount + surcharegeval;
                    //objTBPURCHASEDETAIL.Tax1Val = tax2;

                    grandtotal += netamount;
                }
            }
            return(grandtotal);
        }
Пример #4
0
        public ActionResult PurchaseHeaderSaveChanges(PurachaseDeatil obj)
        {
            TBPURCHASEHEADER objTBPURCHASEHEADER = new TBPURCHASEHEADER();
            TBPURCHASEDETAIL objTBPURCHASEDETAIL = new TBPURCHASEDETAIL();

            if (obj.PurchaseId > 0)
            {
                TBPURCHASEHEADER objbrand = dbContext.TBPURCHASEHEADERs.Where(x => x.PurchaseId == obj.PurchaseId).FirstOrDefault();

                objbrand.PurDate     = obj.PurDate;
                objbrand.BillDate    = obj.BillDate;
                objbrand.BillNo      = obj.BillNo;
                objbrand.PaymentMode = obj.PaymentMode;
                objbrand.ACCOUNTID   = obj.ACCOUNTID;
                objbrand.CustomerId  = obj.CustomerId;
                dbContext.SaveChanges();
            }
            else
            {
                objTBPURCHASEHEADER.PurDate     = obj.PurDate;
                objTBPURCHASEHEADER.BillDate    = obj.BillDate;
                objTBPURCHASEHEADER.BillNo      = obj.BillNo;
                objTBPURCHASEHEADER.PaymentMode = obj.PaymentMode;
                objTBPURCHASEHEADER.ACCOUNTID   = obj.ACCOUNTID;
                objTBPURCHASEHEADER.CustomerId  = obj.CustomerId;

                dbContext.TBPURCHASEHEADERs.Add(objTBPURCHASEHEADER);
                dbContext.SaveChanges();
                decimal grandtotal = 0;
                var     ids        = dbContext.TBPURCHASEHEADERs.OrderByDescending(p => p.PurchaseId).FirstOrDefault();
                if (ids.PurchaseId > 0)
                {
                    foreach (var item in obj.purachasedetail)
                    {
                        TBITEMMASTERHEADER objTBITEMMASTERHEADER = dbContext.TBITEMMASTERHEADERs.Where(x => x.ITEMID == item.ItemID).FirstOrDefault();
                        TBTAXCONFIG        objtbtaxconfig        = dbContext.TBTAXCONFIGs.Where(x => x.TAXID == objTBITEMMASTERHEADER.PURTAXID).FirstOrDefault();

                        item.Tax2 = objtbtaxconfig.TAX2_;

                        item.Tax3                        = objtbtaxconfig.TAX3_;
                        item.SurCharge                   = objtbtaxconfig.SURONTAX3;
                        objTBPURCHASEDETAIL.ItemID       = item.ItemID;
                        objTBPURCHASEDETAIL.SizeID       = item.SizeID;
                        objTBPURCHASEDETAIL.PurchaseId   = ids.PurchaseId;
                        objTBPURCHASEDETAIL.Quantity     = item.Quantity;
                        objTBPURCHASEDETAIL.BaseRate     = item.BaseRate;
                        objTBPURCHASEDETAIL.PurchaseRate = item.PurchaseRate;
                        objTBPURCHASEDETAIL.SaleRate     = item.SaleRate;
                        objTBPURCHASEDETAIL.MRP          = item.MRP;
                        objTBPURCHASEDETAIL.GAmount      = item.GAmount;
                        objTBPURCHASEDETAIL.Cd           = item.Cd;
                        objTBPURCHASEDETAIL.Td           = item.Td == null?0:item.Td;
                        objTBPURCHASEDETAIL.TdVal        = item.TdVal == null ? 0 : item.TdVal;
                        objTBPURCHASEDETAIL.Tax1         = item.Tax1 == null ? 0 : item.Tax1;
                        objTBPURCHASEDETAIL.Tax1Val      = item.Tax1Val == null ? 0 : item.Tax1Val;
                        // objbrand.CdVal = obj.CdVal;
                        decimal gAmount   = Convert.ToDecimal(item.GAmount);
                        decimal cd        = Convert.ToDecimal(item.Cd);
                        decimal cdval     = (cd * gAmount / 100);
                        decimal netamount = gAmount - cdval;
                        decimal grosscd   = netamount;
                        objTBPURCHASEDETAIL.CdVal = cdval;
                        objTBPURCHASEDETAIL.TdVal = item.TdVal;

                        objTBPURCHASEDETAIL.Tax1 = item.Tax1;
                        objTBPURCHASEDETAIL.Tax2 = item.Tax2;
                        decimal tax2    = Convert.ToDecimal(item.Tax2);
                        decimal tax2val = (netamount * tax2) / (100 + tax2);
                        netamount = netamount - tax2val;

                        objTBPURCHASEDETAIL.Tax3 = item.Tax3;
                        decimal tax3    = Convert.ToDecimal(item.Tax3);
                        decimal tax3val = (netamount * tax3) / 100;
                        netamount = netamount + tax3val;
                        decimal SurCharge     = Convert.ToDecimal(item.SurCharge);
                        decimal surcharegeval = (tax3val * SurCharge) / 100;
                        netamount = netamount + surcharegeval;
                        //objTBPURCHASEDETAIL.Tax1Val = tax2;
                        objTBPURCHASEDETAIL.Tax2Val       = tax2val;
                        objTBPURCHASEDETAIL.Tax3Val       = tax3val;
                        objTBPURCHASEDETAIL.NetAmount     = netamount;
                        objTBPURCHASEDETAIL.PurchaseAC    = objtbtaxconfig.SALE_PURACCOUNT;
                        objTBPURCHASEDETAIL.PurchaseTaxAc = objtbtaxconfig.SALES_PURTAXACCOUNT;
                        objTBPURCHASEDETAIL.SurChargeAC   = objtbtaxconfig.SURCHARGEACCOUNT;
                        objTBPURCHASEDETAIL.Tax1AC        = objtbtaxconfig.TAX1ACCOUNT;
                        objTBPURCHASEDETAIL.Tax2AC        = objtbtaxconfig.TAX2ACCOUNT;
                        objTBPURCHASEDETAIL.SurCharge     = SurCharge;
                        objTBPURCHASEDETAIL.SurChargeVal  = surcharegeval;
                        grandtotal += netamount;

                        dbContext.TBPURCHASEDETAILS.Add(objTBPURCHASEDETAIL);
                        dbContext.SaveChanges();

                        TBSTOCK objstock = new TBSTOCK();
                        objstock.ItemId    = item.ItemID;
                        objstock.SizeId    = item.SizeID;
                        objstock.STType    = "PUR";
                        objstock.EntryCode = ids.PurchaseId;
                        objstock.FDDate    = obj.PurDate;
                        objstock.Quantity  = item.Quantity;
                        dbContext.TBSTOCKs.Add(objstock);
                        dbContext.SaveChanges();

                        //Tax2 account
                        if (tax2val != 0)
                        {
                            TBDEBIT objDebit = new TBDEBIT();
                            objDebit.FNEntryCode = Convert.ToInt32(ids.PurchaseId);
                            objDebit.STType      = "PUR";
                            objDebit.HeadCode    = Convert.ToInt32(objtbtaxconfig.TAX2ACCOUNT);
                            objDebit.FNAmount    = tax2val;
                            objDebit.FNDate      = obj.PurDate;
                            objDebit.Description = "PURCHASE TAX2 AGAINST " + obj.BillNo;
                            dbContext.TBDEBITs.Add(objDebit);
                            dbContext.SaveChanges();
                        }

                        //Tax3 account
                        if (tax3val != 0)
                        {
                            TBDEBIT objDebit2 = new TBDEBIT();
                            objDebit2.FNEntryCode = Convert.ToInt32(ids.PurchaseId);
                            objDebit2.STType      = "PUR";
                            objDebit2.HeadCode    = Convert.ToInt32(objtbtaxconfig.SALES_PURTAXACCOUNT); //NEDD TO DISCUSS
                            objDebit2.FNAmount    = tax3val;
                            objDebit2.FNDate      = obj.PurDate;
                            objDebit2.Description = "PURCHASE TAX3 AGAINST " + obj.BillNo;
                            dbContext.TBDEBITs.Add(objDebit2);
                            dbContext.SaveChanges();
                        }

                        //Surcharge account
                        if (surcharegeval != 0)
                        {
                            TBDEBIT objDebit3 = new TBDEBIT();
                            objDebit3.FNEntryCode = Convert.ToInt32(ids.PurchaseId);
                            objDebit3.STType      = "PUR";
                            objDebit3.HeadCode    = Convert.ToInt32(objtbtaxconfig.SURCHARGEACCOUNT);
                            objDebit3.FNAmount    = surcharegeval;
                            objDebit3.FNDate      = obj.PurDate;
                            objDebit3.Description = "PURCHASE SURCHARGE AGAINST " + obj.BillNo;
                            dbContext.TBDEBITs.Add(objDebit3);
                            dbContext.SaveChanges();
                        }

                        //PURCHASE account
                        if (grosscd != 0)
                        {
                            TBDEBIT objDebit4 = new TBDEBIT();
                            objDebit4.FNEntryCode = Convert.ToInt32(ids.PurchaseId);
                            objDebit4.STType      = "PUR";
                            objDebit4.HeadCode    = Convert.ToInt32(objtbtaxconfig.SALE_PURACCOUNT);
                            objDebit4.FNAmount    = grosscd;
                            objDebit4.FNDate      = obj.PurDate;
                            objDebit4.Description = "PURCHASE AGAINST " + obj.BillNo;
                            dbContext.TBDEBITs.Add(objDebit4);
                            dbContext.SaveChanges();
                        }
                    }

                    TBCREDIT objCredit = new TBCREDIT();
                    objCredit.FNEntryCode = Convert.ToInt32(ids.PurchaseId);
                    objCredit.STType      = "PUR";
                    objCredit.HeadCode    = Convert.ToInt32(obj.ACCOUNTID);
                    objCredit.FDAmount    = grandtotal;
                    objCredit.FDDate      = obj.PurDate;
                    objCredit.Description = "PURCHASE AGAINST " + obj.BillNo;
                    dbContext.TBCREDITs.Add(objCredit);

                    dbContext.SaveChanges();
                    TBPURCHASEHEADER objTBPURCHASEHEADERs = new TBPURCHASEHEADER();
                    objTBPURCHASEHEADERs            = dbContext.TBPURCHASEHEADERs.Where(x => x.PurchaseId == ids.PurchaseId).FirstOrDefault();
                    objTBPURCHASEHEADERs.BillAmount = grandtotal;
                    dbContext.SaveChanges();
                }
            }

            return(RedirectToAction("PurchaseHeader"));
        }