private void Save()
        {
            if (SerialNo.Text != null && SerialNo.Text != "")
            {
                using (invetoryEntities db = new invetoryEntities())
                {
                    purchase_master purchase_master = new purchase_master
                    {
                        serial_no           = Convert.ToInt32(SerialNo.Text),
                        book_no             = Convert.ToInt32(BookNo.Text),
                        purchase_date       = PurchaseInvoiceDate.SelectedDate,
                        party_name_id       = Convert.ToInt32(PartyName.SelectedValue),
                        supplier_invoice_no = Convert.ToInt32(SupplierInvoiceNo.Text),
                        purchase_date1      = Date.SelectedDate,
                        gross_amount        = Convert.ToDecimal(GrossAmount.Text),
                        paking_amount       = Convert.ToDecimal(Paking.Text),
                        dis_amount          = Convert.ToDecimal(Dis.Text),
                        other_charges       = Convert.ToDecimal(OtherCharges.Text),
                        round_off           = Convert.ToDecimal(RoundOff.Text),
                        net_amount          = Convert.ToDecimal(NetAmount.Text),
                        status     = 1,
                        created_by = 1,
                        company_id = 1,
                        created_on = DateTime.Now,
                    };
                    db.purchase_master.Add(purchase_master);
                    db.SaveChanges();

                    db.purchase_expenses.Add(new purchase_expenses {
                        purchase_id = purchase_master.purchase_id,
                        adhat       = Convert.ToDecimal(Adhat.Text),
                        taulai      = Convert.ToDecimal(Taulai.Text),
                        majoori     = Convert.ToDecimal(Majdoori.Text),
                        packing     = Convert.ToDecimal(Packing.Text),
                        mandi_sulk  = Convert.ToDecimal(MandiSulk.Text),
                        vikash_sesh = Convert.ToDecimal(VikashSesh.Text),
                        other       = Convert.ToDecimal(Other.Text),
                        status      = 1,
                        company_id  = 1,
                        created_by  = 1,
                        created_on  = DateTime.Now
                    });
                    db.SaveChanges();

                    List <SalesInvoiceCollectionViewModel> salesInvoiceCollectionViewModels = (List <SalesInvoiceCollectionViewModel>)PurchaseInvoiceDataGrid.ItemsSource;
                    for (int i = 0; i < salesInvoiceCollectionViewModels.Count - 1; i++)
                    {
                        purchase_details purchase_details = new purchase_details
                        {
                            purchase_id   = purchase_master.purchase_id,
                            product_id    = Convert.ToInt32(salesInvoiceCollectionViewModels[i].name),
                            sr_no         = Convert.ToInt32(salesInvoiceCollectionViewModels[i].sr),
                            alternate_qty = salesInvoiceCollectionViewModels[i].qty.ToString(),
                            gross_weight  = Convert.ToDecimal(salesInvoiceCollectionViewModels[i].grossnet),
                            less          = Convert.ToDecimal(salesInvoiceCollectionViewModels[i].less),
                            net_weight    = salesInvoiceCollectionViewModels[i].netweight.ToString(),
                            rate          = Convert.ToDecimal(salesInvoiceCollectionViewModels[i].rate),
                            per           = salesInvoiceCollectionViewModels[i].per,
                            amount        = Convert.ToDecimal(salesInvoiceCollectionViewModels[i].amount),
                            created_by    = 1,
                            company_id    = 1,
                            created_on    = DateTime.Now,
                            status        = 1
                        };
                        db.purchase_details.Add(purchase_details);
                        db.SaveChanges();
                    }
                    MessageBox.Show("Purchase save successfully.");
                    //Clear_Form();
                }
            }
            else
            {
                MessageBox.Show("Please fill compulsory data.");
            }
        }
Example #2
0
        public ActionResult create(purchaseVM pvm)
        {
            decimal total_amount = 0;

            if (pvm != null && pvm.product_id.Count() != 0)
            {
                purchase p = new purchase();
                p.supplier_id  = pvm.supplier_id;
                p.warehouse_id = pvm.warehouse_id;
                p.total_amount = pvm.total_amount;
                p.create_date  = DateTime.Now;
                db.purchases.Add(p);
                db.SaveChanges();

                //get the purchas id
                var id = db.purchases.Find(p.purchase_id);

                //create purchase invoice
                id.pInv = "#PINV-" + id.purchase_id + id.supplier_id;
                //save all data in purchasse detiels page
                purchase_details purchaseDetails = new purchase_details();
                for (int i = 0; i < pvm.product_id.Count(); i++)
                {
                    purchaseDetails.product_id     = pvm.product_id[i];
                    purchaseDetails.quantity       = pvm.quantity[i];
                    purchaseDetails.purchase_price = pvm.bayPrice[i];
                    purchaseDetails.sale_price     = pvm.salePrice[i];
                    purchaseDetails.purchase_id    = id.purchase_id;
                    purchaseDetails.sku            = "SKU=" + purchaseDetails.product_id + "-" + purchaseDetails.purchase_id;
                    db.purchase_details.Add(purchaseDetails);
                    db.SaveChanges();

                    //samition the total price
                    total_amount += Convert.ToDecimal(purchaseDetails.purchase_price);
                    //update every product colams
                    var pro = db.product_tbl.Find(purchaseDetails.product_id);

                    //first create itemladger
                    ItemladgerController ic = new ItemladgerController();
                    ic.ladgerItem(Convert.ToInt32(pro.product_id), Convert.ToInt32(purchaseDetails.quantity), "in", Convert.ToInt32(p.warehouse_id), Convert.ToString(id.pInv));

                    pro.quantity += purchaseDetails.quantity;
                    pro.price     = purchaseDetails.sale_price;

                    db.Entry(pro).State = EntityState.Modified;
                    db.SaveChanges();
                }


                //save the total price in
                id.total_amount    = total_amount;
                db.Entry(id).State = EntityState.Modified;
                db.SaveChanges();


                message = " Purchase Created Is Successfully";
                status  = true;

                TempData["Message"] = message;
                TempData["Status"]  = status;

                return(RedirectToAction("purchaseInvoice", new { id = id.purchase_id }));
            }
            else
            {
                message = "There Are Some Problems";
            }

            TempData["Message"] = message;
            TempData["Status"]  = status;

            return(RedirectToAction("create"));
        }