Example #1
0
        public IHttpActionResult PuttblPurchaseOrder(decimal id, tblPurchaseOrder tblPurchaseOrder)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != tblPurchaseOrder.pd_id)
            {
                return(BadRequest());
            }

            db.Entry(tblPurchaseOrder).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!tblPurchaseOrderExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Example #2
0
 public bool Add(tblPurchaseOrder obj)
 {
     try
     {
         repository.tblPurchaseOrders.Add(obj);
         repository.SaveChanges();
         return(true);
     }
     catch (Exception)
     {
         return(false);
     }
 }
Example #3
0
        public IHttpActionResult DeletetblPurchaseOrder(int id)
        {
            tblPurchaseOrder tblPurchaseOrder = db.tblPurchaseOrders.Find(id);

            if (tblPurchaseOrder == null)
            {
                return(NotFound());
            }

            db.tblPurchaseOrders.Remove(tblPurchaseOrder);
            db.SaveChanges();

            return(Ok(tblPurchaseOrder));
        }
        protected void makeRequest_Click(object sender, EventArgs e)
        {
            var repository        = new PurchaseOrder();
            var repository_detail = new PurchaseOrderDetail();
            int result            = checkForCbTb();

            if (result == 0)
            {
                this.ShowErrorNotification("Please select any product");
            }
            else
            {
                tblPurchaseOrder       tbl        = new tblPurchaseOrder();
                tblPurchaseOrderDetail tbl_detail = new tblPurchaseOrderDetail();
                tbl.VendorId  = Convert.ToInt32(vendorName.SelectedValue);
                tbl.OrderDate = DateTime.Now;
                // tbl.TotalValue = q;
                repository.Add(tbl);
                int poid = repository.GetId();

                foreach (GridViewRow row in gridProduct.Rows)
                {
                    CheckBox cb = (CheckBox)row.FindControl("CheckBox1");
                    if (cb.Checked)
                    {
                        int     id       = Convert.ToInt32(gridProduct.DataKeys[row.RowIndex].Value);
                        TextBox txt      = (TextBox)row.FindControl("TextBox1");
                        string  quantity = txt.Text;
                        tbl_detail.POId      = poid;
                        tbl_detail.ProductId = id;



                        tbl_detail.Quantity = Convert.ToInt32(quantity);
                        Product pObj = new Product();

                        tblProduct selectedProduct = pObj.Get(id);
                        tbl.TotalValue += (selectedProduct.StandardCost * tbl_detail.Quantity);
                        repository_detail.Add(tbl_detail);
                        cb.Checked = false;
                        txt.Text   = "";
                        this.ShowSuccessfulNotification("Delivery Requested Successfully");
                    }
                }
                repository.Update(repository.Get(poid));
            }
        }
Example #5
0
 public bool Delete(int id)
 {
     try
     {
         tblPurchaseOrder result = Get(id);
         if (result != null)
         {
             result.Deleted = true;
             repository.SaveChanges();
             return(true);
         }
         return(false);
     }
     catch (Exception)
     {
         return(false);
     }
 }
Example #6
0
 public bool Update(tblPurchaseOrder obj)
 {
     try
     {
         tblPurchaseOrder result = Get(obj.POId);
         if (result != null)
         {
             repository.Entry(result).CurrentValues.SetValues(obj);
             repository.SaveChanges();
             return(true);
         }
         return(false);
     }
     catch (Exception)
     {
         return(false);
     }
 }
 protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (DropDownList1.SelectedIndex > 0)
     {
         po = repository.Get(Convert.ToInt32(DropDownList1.SelectedValue));
         lblOrderDate.Text     = "Order Date : " + po.OrderDate;
         lblVendorName.Text    = "Vendor Name : " + po.tblVendor.VendorName;
         lblVendorName.Visible = true;
         lblOrderDate.Visible  = true;
         btnDeliver.Visible    = true;
         btnEdit.Visible       = true;
     }
     else
     {
         lblVendorName.Visible = true;
         lblOrderDate.Visible  = true;
         btnDeliver.Visible    = true;
         btnEdit.Visible       = true;
     }
 }
Example #8
0
        public IHttpActionResult PosttblPurchaseOrder(tblPurchaseOrder tblPurchaseOrder)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                db.tblPurchaseOrders.Add(tblPurchaseOrder);
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                Log.Debug(ex.Message);
                throw;
            }

            return(CreatedAtRoute("DefaultApi", new { id = tblPurchaseOrder.pd_id }, tblPurchaseOrder));
        }
Example #9
0
        private void btnCreate_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtitemName.Text == string.Empty && txtQty.Text == string.Empty && txtWeight.Text == string.Empty)
                {
                    errorProvider1.Clear();
                    errorProvider1.SetError(txtitemName, "Enter all details.");
                    txtitemName.Focus();
                    panel3.Visible = true;
                    lblError.Text  = "Enter all details.";
                }
                else if (txtitemName.Text == string.Empty)
                {
                    errorProvider1.Clear();
                    errorProvider1.SetError(txtitemName, "Enter Product-name");
                    txtitemName.Focus();
                    panel3.Visible = true;
                    lblError.Text  = "Enter Party-name.";
                }
                else if (txtQty.Text == string.Empty)
                {
                    errorProvider1.Clear();
                    errorProvider1.SetError(txtQty, "Enter Qty.");
                    txtQty.Focus();
                    panel3.Visible = true;
                    lblError.Text  = "Enter Qty.";
                }
                else if (txtWeight.Text == string.Empty)
                {
                    errorProvider1.Clear();
                    errorProvider1.SetError(txtWeight, "Enter Weight.");
                    txtWeight.Focus();
                    panel3.Visible = true;
                    lblError.Text  = "Enter Weight.";
                }
                else
                {
                    DateTime date = DateTime.ParseExact(dateToday.Text, "dd-MM-yyyy", null);
                    if (btnCreate.Text == "Create")
                    {
                        //save code
                        _entities = new KBBQEntities();

                        var pId = _entities.purchaseProducts.Where(x => x.pName == txtitemName.Text.Trim()).FirstOrDefault().id;

                        //var checkForExisitingData = _entities.tblPurchaseOrders.Where(x => x.productId == pId).FirstOrDefault();

                        //if (checkForExisitingData != null)
                        //{
                        //    MessageBox.Show("Entry Already Exists. Update the Exisiting Entry.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        //    clear();
                        //    txtitemName.Focus();
                        //    return;
                        //}
                        //else
                        //{
                        //save Code
                        tblPurchaseOrder proDate = new tblPurchaseOrder();
                        proDate.productId = pId;
                        proDate.qty       = Convert.ToDecimal(txtQty.Text);
                        proDate.weight    = Convert.ToDecimal(txtWeight.Text);
                        proDate.unit      = comboUnit.Text.ToString();
                        proDate.date      = date;
                        proDate.cdate     = DateTime.Now;

                        _entities.tblPurchaseOrders.Add(proDate);
                        _entities.SaveChanges();

                        clear();
                        MessageBox.Show("Record Added Successfully");

                        //}
                    }
                    else
                    {
                        //Update Code

                        _entities = new KBBQEntities();
                        var pId = _entities.purchaseProducts.Where(x => x.pName == txtitemName.Text.Trim()).FirstOrDefault().id;


                        var proDataUpdate = _entities.tblPurchaseOrders.Where(x => x.id == passedId).FirstOrDefault();

                        proDataUpdate.productId = pId;
                        proDataUpdate.qty       = Convert.ToDecimal(txtQty.Text);
                        proDataUpdate.weight    = Convert.ToDecimal(txtWeight.Text);
                        proDataUpdate.unit      = comboUnit.Text.ToString();
                        proDataUpdate.date      = date;
                        proDataUpdate.udate     = DateTime.Now;

                        _entities.SaveChanges();

                        clear();
                        MessageBox.Show("Record Updated Successfully");
                    }
                    dataGridBind();
                }
            }
            catch (Exception x)
            {
            }
        }
Example #10
0
        public int Update(EntityPurchaseInvoice invoice, List<EntityPurchaseInvoiceDetails> lst)
        {
            int i = 0;
            try
            {
                tblPurchaseInvoice objExistInvoice = (from tbl in objData.tblPurchaseInvoices
                                                      where tbl.IsDelete == false
                                                      && tbl.PINo == invoice.PINo
                                                      select tbl).FirstOrDefault();
                if (objExistInvoice != null)
                {
                    bool flagISPOComplete = false;
                    if (invoice.PONo > 0)
                    {
                        if (objExistInvoice.PONo > 0)
                        {
                            List<tblPurchaseInvoiceDetail> lstExistedItems = (from tbl in objData.tblPurchaseInvoiceDetails
                                                                              where tbl.PINo == invoice.PINo
                                                                              && tbl.IsDelete == false
                                                                              select tbl).ToList();
                            if (lstExistedItems.Count > lst.Count)
                            {
                                foreach (tblPurchaseInvoiceDetail item in lstExistedItems)
                                {
                                    int cnt = (from tbl in lst
                                               where tbl.ProductCode == item.ProductCode
                                               && tbl.PurchaseInvoiceNo == item.PINo
                                               select tbl).Count();
                                    if (cnt == 0)
                                    {
                                        item.IsDelete = true;
                                    }

                                    tblPurchaseOrderDetail objOrder = (from tbl in objData.tblPurchaseOrderDetails
                                                                       join tblPurchaseInv in objData.tblPurchaseInvoices
                                                                       on tbl.PO_Id equals tblPurchaseInv.PONo
                                                                       where tblPurchaseInv.PINo == item.PINo
                                                                       && tbl.IsDelete == false
                                                                       && tbl.Product_Id == item.ProductCode
                                                                       select tbl).FirstOrDefault();
                                    if (objOrder != null)
                                    {
                                        objOrder.InvoiceQuantity = 0;
                                    }
                                }
                                objData.SubmitChanges();
                            }


                            #region Update Invoice Details
                            foreach (EntityPurchaseInvoiceDetails item in lst)
                            {

                                tblPurchaseInvoiceDetail invoiceItem = (from tbl in objData.tblPurchaseInvoiceDetails
                                                                        where tbl.PINo == invoice.PINo
                                                                        && tbl.IsDelete == false
                                                                        && tbl.ProductCode == item.ProductCode
                                                                        select tbl).FirstOrDefault();
                                if (invoiceItem != null)
                                {
                                    invoiceItem.Amount = item.Amount;
                                    invoiceItem.BatchNo = item.BatchNo;
                                    invoiceItem.ExpiryDate = item.ExpiryDate;
                                    invoiceItem.InvoicePrice = item.InvoicePrice;
                                    invoiceItem.InvoiceQty = item.InvoiceQty;
                                    invoiceItem.PINo = item.PurchaseInvoiceNo;
                                }
                                else
                                {
                                    invoiceItem = new tblPurchaseInvoiceDetail()
                                    {
                                        PINo = invoice.PINo,
                                        ProductCode = item.ProductCode,
                                        InvoiceQty = item.InvoiceQty,
                                        InvoicePrice = item.InvoicePrice,
                                        Amount = item.Amount,
                                        BatchNo = item.BatchNo,
                                        ExpiryDate = item.ExpiryDate,
                                        IsDelete = false
                                    };
                                    objData.tblPurchaseInvoiceDetails.InsertOnSubmit(invoiceItem);
                                }
                                tblPurchaseOrderDetail orderItem = (from tbl in objData.tblPurchaseOrderDetails
                                                                    where tbl.IsDelete == false
                                                                    && tbl.PO_Id == invoice.PONo
                                                                    && tbl.Product_Id == item.ProductCode
                                                                    select tbl).FirstOrDefault();
                                if (orderItem != null)
                                {
                                    if (orderItem.Quantity == item.InvoiceQty)
                                    {
                                        flagISPOComplete = true;
                                    }
                                    else
                                    {
                                        flagISPOComplete = false;
                                    }
                                    orderItem.InvoiceQuantity = item.InvoiceQty;
                                }

                                tblStockDetail stockItem = (from tbl in objData.tblStockDetails
                                                            where tbl.IsDelete == false
                                                            && tbl.TransactionType.Equals("PInvoice")
                                                            && Convert.ToInt32(tbl.DocumentNo) == invoice.PINo
                                                            && tbl.ProductId == Convert.ToInt32(item.ProductCode)
                                                            select tbl).FirstOrDefault();
                                if (stockItem != null)
                                {
                                    stockItem.ProductId = Convert.ToInt32(item.ProductCode);
                                    stockItem.InwardQty = item.InvoiceQty;
                                    stockItem.InwardPrice = item.InvoicePrice;
                                    stockItem.BatchNo = item.BatchNo;
                                    stockItem.ExpiryDate = item.ExpiryDate;
                                    stockItem.InwardAmount = item.Amount;
                                }
                                else
                                {
                                    stockItem = new tblStockDetail()
                                    {
                                        BatchNo = item.BatchNo,
                                        ExpiryDate = item.ExpiryDate,
                                        InwardPrice = item.InvoicePrice,
                                        InwardQty = item.InvoiceQty,
                                        DocumentNo = invoice.PINo,
                                        IsDelete = false,
                                        ProductId = Convert.ToInt32(item.ProductCode),
                                        TransactionType = "PInvoice",
                                        InwardAmount = item.Amount
                                    };
                                }
                            }
                            #endregion

                            #region Update Status of Order and Transaction
                            tblCustomerTransaction transact = (from tbl in objData.tblCustomerTransactions
                                                               where tbl.SupplierId == invoice.SupplierId
                                                               && tbl.IsDelete == false
                                                               && tbl.TransactionDocNo == invoice.PINo
                                                               && tbl.TransactionType.Equals("PInvoice")
                                                               select tbl).FirstOrDefault();
                            if (transact != null)
                            {
                                transact.BillAmount = invoice.Amount;
                            }
                            tblPurchaseOrder orderMain = (from tbl in objData.tblPurchaseOrders
                                                          where tbl.IsDelete == false
                                                          && tbl.PO_Id == invoice.PONo
                                                          select tbl).FirstOrDefault();
                            if (orderMain != null)
                            {
                                if (GetPOProductForEdit(Convert.ToInt32(invoice.PONo)).Count == lst.Count)
                                {
                                    flagISPOComplete = true;
                                }
                                else
                                {
                                    flagISPOComplete = false;
                                }
                                orderMain.IsPOComplete = flagISPOComplete;
                            }
                            objExistInvoice.Amount = invoice.Amount;
                            objExistInvoice.Discount = invoice.Discount;
                            objExistInvoice.PIDate = invoice.PIDate;
                            objExistInvoice.Tax1 = invoice.Tax1;
                            objExistInvoice.Tax2 = invoice.Tax2;

                            objData.SubmitChanges();
                            #endregion
                        }
                        else
                        {
                            ///Specifies that Current Invoice with PO
                            foreach (EntityPurchaseInvoiceDetails item in lst)
                            {

                            }
                        }
                    }
                    else if (objExistInvoice.PONo > 0)
                    {
                        List<tblPurchaseInvoiceDetail> lstExistedItems = (from tbl in objData.tblPurchaseInvoiceDetails
                                                                          where tbl.PINo == invoice.PINo
                                                                          && tbl.IsDelete == false
                                                                          select tbl).ToList();
                        if (lstExistedItems.Count > lst.Count)
                        {
                            foreach (tblPurchaseInvoiceDetail item in lstExistedItems)
                            {
                                int cnt = (from tbl in lst
                                           where tbl.ProductCode == item.ProductCode
                                           && tbl.PurchaseInvoiceNo == item.PINo
                                           select tbl).Count();
                                if (cnt == 0)
                                {
                                    item.IsDelete = true;
                                }
                                tblPurchaseOrderDetail objOrder = (from tbl in objData.tblPurchaseOrderDetails
                                                                   join tblPurchaseInv in objData.tblPurchaseInvoices
                                                                   on tbl.PO_Id equals tblPurchaseInv.PONo
                                                                   where tblPurchaseInv.PINo == item.PINo
                                                                   && tbl.IsDelete == false
                                                                   && tbl.Product_Id == item.ProductCode
                                                                   select tbl).FirstOrDefault();
                                if (objOrder != null)
                                {
                                    objOrder.InvoiceQuantity = 0;
                                }
                            }
                            objData.SubmitChanges();
                        }
                        if (invoice.PONo > 0)
                        {
                            #region Update Invoice Details
                            foreach (EntityPurchaseInvoiceDetails item in lst)
                            {

                                tblPurchaseInvoiceDetail invoiceItem = (from tbl in objData.tblPurchaseInvoiceDetails
                                                                        where tbl.PINo == invoice.PINo
                                                                        && tbl.IsDelete == false
                                                                        && tbl.ProductCode == item.ProductCode
                                                                        select tbl).FirstOrDefault();
                                if (invoiceItem != null)
                                {
                                    invoiceItem.Amount = item.Amount;
                                    invoiceItem.BatchNo = item.BatchNo;
                                    invoiceItem.ExpiryDate = item.ExpiryDate;
                                    invoiceItem.InvoicePrice = item.InvoicePrice;
                                    invoiceItem.InvoiceQty = item.InvoiceQty;
                                    invoiceItem.PINo = item.PurchaseInvoiceNo;
                                }
                                else
                                {
                                    invoiceItem = new tblPurchaseInvoiceDetail()
                                    {
                                        PINo = invoice.PINo,
                                        ProductCode = item.ProductCode,
                                        InvoiceQty = item.InvoiceQty,
                                        InvoicePrice = item.InvoicePrice,
                                        Amount = item.Amount,
                                        BatchNo = item.BatchNo,
                                        ExpiryDate = item.ExpiryDate,
                                        IsDelete = false
                                    };
                                    objData.tblPurchaseInvoiceDetails.InsertOnSubmit(invoiceItem);
                                }
                                tblPurchaseOrderDetail orderItem = (from tbl in objData.tblPurchaseOrderDetails
                                                                    where tbl.IsDelete == false
                                                                    && tbl.PO_Id == invoice.PONo
                                                                    && tbl.Product_Id == item.ProductCode
                                                                    select tbl).FirstOrDefault();
                                if (orderItem != null)
                                {
                                    if (orderItem.Quantity == item.InvoiceQty)
                                    {
                                        flagISPOComplete = true;
                                    }
                                    else
                                    {
                                        flagISPOComplete = false;
                                    }
                                    orderItem.InvoiceQuantity = item.InvoiceQty;
                                }

                                tblStockDetail stockItem = (from tbl in objData.tblStockDetails
                                                            where tbl.IsDelete == false
                                                            && tbl.TransactionType.Equals("PInvoice")
                                                            && Convert.ToInt32(tbl.DocumentNo) == invoice.PINo
                                                            && tbl.ProductId == Convert.ToInt32(item.ProductCode)
                                                            select tbl).FirstOrDefault();
                                if (stockItem != null)
                                {
                                    stockItem.ProductId = Convert.ToInt32(item.ProductCode);
                                    stockItem.InwardQty = item.InvoiceQty;
                                    stockItem.InwardPrice = item.InvoicePrice;
                                    stockItem.BatchNo = item.BatchNo;
                                    stockItem.ExpiryDate = item.ExpiryDate;
                                    stockItem.InwardAmount = item.Amount;
                                }
                                else
                                {
                                    stockItem = new tblStockDetail()
                                    {
                                        BatchNo = item.BatchNo,
                                        ExpiryDate = item.ExpiryDate,
                                        InwardPrice = item.InvoicePrice,
                                        InwardQty = item.InvoiceQty,
                                        DocumentNo = invoice.PINo,
                                        IsDelete = false,
                                        ProductId = Convert.ToInt32(item.ProductCode),
                                        TransactionType = "PInvoice",
                                        InwardAmount = item.Amount
                                    };
                                }
                            }
                            #endregion

                            #region Update Status of PO and Transaction Update
                            tblCustomerTransaction transact = (from tbl in objData.tblCustomerTransactions
                                                               where tbl.SupplierId == invoice.SupplierId
                                                               && tbl.IsDelete == false
                                                               && tbl.TransactionDocNo == invoice.PINo
                                                               && tbl.TransactionType.Equals("PInvoice")
                                                               select tbl).FirstOrDefault();
                            if (transact != null)
                            {
                                transact.BillAmount = invoice.Amount;
                            }

                            tblPurchaseOrder orderMain = (from tbl in objData.tblPurchaseOrders
                                                          where tbl.IsDelete == false
                                                          && tbl.PO_Id == invoice.PONo
                                                          select tbl).FirstOrDefault();
                            if (orderMain != null)
                            {
                                if (GetPOProduct(Convert.ToInt32(invoice.PONo)).Count == lst.Count)
                                {
                                    flagISPOComplete = true;
                                }
                                else
                                {
                                    flagISPOComplete = false;
                                }
                                orderMain.IsPOComplete = flagISPOComplete;
                            }

                            objExistInvoice.Amount = invoice.Amount;
                            objExistInvoice.Discount = invoice.Discount;
                            objExistInvoice.PIDate = invoice.PIDate;
                            objExistInvoice.Tax1 = invoice.Tax1;
                            objExistInvoice.Tax2 = invoice.Tax2;

                            objData.SubmitChanges();
                            #endregion
                        }
                        else
                        {
                            ///Specifies that Existing Invoice With PO and Current Not With PO

                            #region Update Invoice Details
                            foreach (EntityPurchaseInvoiceDetails item in lst)
                            {
                                tblPurchaseInvoiceDetail invoiceItem = (from tbl in objData.tblPurchaseInvoiceDetails
                                                                        where tbl.PINo == invoice.PINo
                                                                        && tbl.IsDelete == false
                                                                        && tbl.ProductCode == item.ProductCode
                                                                        select tbl).FirstOrDefault();
                                if (invoiceItem != null)
                                {
                                    invoiceItem.Amount = item.Amount;
                                    invoiceItem.BatchNo = item.BatchNo;
                                    invoiceItem.ExpiryDate = item.ExpiryDate;
                                    invoiceItem.InvoicePrice = item.InvoicePrice;
                                    invoiceItem.InvoiceQty = item.InvoiceQty;
                                    invoiceItem.PINo = item.PurchaseInvoiceNo;
                                }
                                else
                                {
                                    invoiceItem = new tblPurchaseInvoiceDetail()
                                    {
                                        PINo = invoice.PINo,
                                        ProductCode = item.ProductCode,
                                        InvoiceQty = item.InvoiceQty,
                                        InvoicePrice = item.InvoicePrice,
                                        Amount = item.Amount,
                                        BatchNo = item.BatchNo,
                                        ExpiryDate = item.ExpiryDate,
                                        IsDelete = false
                                    };
                                    objData.tblPurchaseInvoiceDetails.InsertOnSubmit(invoiceItem);
                                }
                                tblPurchaseOrderDetail orderItem = (from tbl in objData.tblPurchaseOrderDetails
                                                                    where tbl.IsDelete == false
                                                                    && tbl.PO_Id == objExistInvoice.PONo
                                                                    && tbl.Product_Id == item.ProductCode
                                                                    select tbl).FirstOrDefault();
                                if (orderItem != null)
                                {
                                    orderItem.InvoiceQuantity = 0;
                                }

                                tblStockDetail stockItem = (from tbl in objData.tblStockDetails
                                                            where tbl.IsDelete == false
                                                            && tbl.TransactionType.Equals("PInvoice")
                                                            && Convert.ToInt32(tbl.DocumentNo) == invoice.PINo
                                                            && tbl.ProductId == Convert.ToInt32(item.ProductCode)
                                                            select tbl).FirstOrDefault();
                                if (stockItem != null)
                                {
                                    stockItem.ProductId = Convert.ToInt32(item.ProductCode);
                                    stockItem.InwardQty = item.InvoiceQty;
                                    stockItem.InwardPrice = item.InvoicePrice;
                                    stockItem.BatchNo = item.BatchNo;
                                    stockItem.ExpiryDate = item.ExpiryDate;
                                    stockItem.InwardAmount = item.Amount;
                                }
                                else
                                {
                                    stockItem = new tblStockDetail()
                                    {
                                        BatchNo = item.BatchNo,
                                        ExpiryDate = item.ExpiryDate,
                                        InwardPrice = item.InvoicePrice,
                                        InwardQty = item.InvoiceQty,
                                        DocumentNo = invoice.PINo,
                                        IsDelete = false,
                                        ProductId = Convert.ToInt32(item.ProductCode),
                                        TransactionType = "PInvoice",
                                        InwardAmount = item.Amount
                                    };
                                }
                            }
                            #endregion

                            #region Update Status of PO and Transaction Update
                            tblCustomerTransaction transact = (from tbl in objData.tblCustomerTransactions
                                                               where tbl.SupplierId == invoice.SupplierId
                                                               && tbl.IsDelete == false
                                                               && tbl.TransactionDocNo == invoice.PINo
                                                               && tbl.TransactionType.Equals("PInvoice")
                                                               select tbl).FirstOrDefault();
                            if (transact != null)
                            {
                                transact.BillAmount = invoice.Amount;
                            }

                            tblPurchaseOrder orderMain = (from tbl in objData.tblPurchaseOrders
                                                          where tbl.IsDelete == false
                                                          && tbl.PO_Id == objExistInvoice.PONo
                                                          select tbl).FirstOrDefault();
                            if (orderMain != null)
                            {
                                orderMain.IsPOComplete = false;
                            }

                            objExistInvoice.Amount = invoice.Amount;
                            objExistInvoice.Discount = invoice.Discount;
                            objExistInvoice.PIDate = invoice.PIDate;
                            objExistInvoice.Tax1 = invoice.Tax1;
                            objExistInvoice.Tax2 = invoice.Tax2;
                            objExistInvoice.PONo = invoice.PONo;
                            objData.SubmitChanges();
                            #endregion
                        }
                    }
                }
                i++;
            }
            catch (Exception ex)
            {
                i = 0;
                throw ex;
            }
            return i;
        }
Example #11
0
        public int InsertPurchaseInvoice(EntityPurchaseInvoice entPurchaseInvoice, List<EntityPurchaseInvoiceDetails> lstInvoice)
        {
            try
            {
                int? id = 0;
                bool flagISPOComplete = false;
                objData.STP_Insert_PurchaseInvoice(Convert.ToDateTime(entPurchaseInvoice.PIDate), Convert.ToInt32(entPurchaseInvoice.PONo), Convert.ToInt32(entPurchaseInvoice.SupplierId), false, Convert.ToDecimal(entPurchaseInvoice.Amount), Convert.ToInt32(entPurchaseInvoice.Tax1), Convert.ToInt32(entPurchaseInvoice.Tax2), Convert.ToInt32(entPurchaseInvoice.Discount), ref id);
                foreach (EntityPurchaseInvoiceDetails item in lstInvoice)
                {
                    tblPurchaseInvoiceDetail obj = new tblPurchaseInvoiceDetail()
                    {
                        PINo = id,
                        ProductCode = item.ProductCode,
                        InvoiceQty = item.InvoiceQty,
                        InvoicePrice = item.InvoicePrice,
                        Amount = item.Amount,
                        BatchNo = item.BatchNo,
                        ExpiryDate = item.ExpiryDate,
                        IsDelete = false
                    };
                    tblPurchaseOrderDetail orderItem = (from tbl in objData.tblPurchaseOrderDetails
                                                        where tbl.IsDelete == false
                                                        && tbl.PO_Id == entPurchaseInvoice.PONo
                                                        && tbl.Product_Id == item.ProductCode
                                                        select tbl).FirstOrDefault();
                    if (orderItem != null)
                    {
                        if (orderItem.Quantity == item.InvoiceQty)
                        {
                            flagISPOComplete = true;
                        }
                        else
                        {
                            flagISPOComplete = false;
                        }
                        orderItem.InvoiceQuantity = item.InvoiceQty;
                    }
                    tblStockDetail objStock = new tblStockDetail()
                    {
                        BatchNo = item.BatchNo,
                        ExpiryDate = item.ExpiryDate,
                        InwardPrice = item.InvoicePrice,
                        InwardQty = item.InvoiceQty,
                        DocumentNo = id,
                        IsDelete = false,
                        ProductId = Convert.ToInt32(item.ProductCode),
                        TransactionType = "PInvoice",
                        InwardAmount = item.Amount
                    };
                    objData.tblStockDetails.InsertOnSubmit(objStock);
                    objData.tblPurchaseInvoiceDetails.InsertOnSubmit(obj);
                }
                int TId = new PatientInvoiceBLL().GetTransactionId();
                tblPurchaseOrder po = (from tbl in objData.tblPurchaseOrders
                                       where tbl.IsDelete == false
                                       && tbl.PO_Id == entPurchaseInvoice.PONo
                                       select tbl).FirstOrDefault();

                if (po != null)
                {
                    List<EntityProduct> lstProducts = GetPOProduct(Convert.ToInt32(entPurchaseInvoice.PONo));
                    if (lstProducts.Count == lstInvoice.Count)
                    {
                        flagISPOComplete = true;
                    }
                    else
                    {
                        flagISPOComplete = false;
                    }
                    po.IsPOComplete = flagISPOComplete;
                }
                tblCustomerTransaction objCust = new tblCustomerTransaction()
                {
                    BillAmount = entPurchaseInvoice.Amount,
                    IsCash = false,
                    IsDelete = false,
                    SupplierId = entPurchaseInvoice.SupplierId,
                    ReceiptDate = entPurchaseInvoice.PIDate,
                    TransactionDocNo = id,
                    TransactionId = TId,
                    TransactionType = "PInvoice"
                };
                objData.tblCustomerTransactions.InsertOnSubmit(objCust);
                objData.SubmitChanges();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return 1;
        }
Example #12
0
        public int UpdatePurchaseOrderDetails(List <EntityPurchaseOrderDetails> lstEdited, List <EntityPurchaseOrderDetails> lstUpdate)
        {
            try
            {
                tblPurchaseOrder objTest = (from tbl in objData.tblPurchaseOrders
                                            where tbl.IsDelete == false &&
                                            tbl.PO_Id == lstEdited[0].PO_Id
                                            select tbl).FirstOrDefault();

                List <EntityPurchaseOrderDetails> lstTemp = new List <EntityPurchaseOrderDetails>();

                if (objTest != null)
                {
                    objTest.PO_Amount = lstEdited[0].Total;
                }
                foreach (EntityPurchaseOrderDetails item in lstEdited)
                {
                    int cnt = (from tbl in objData.tblPurchaseOrderDetails
                               where tbl.PO_Id == item.PO_Id &&
                               tbl.IsDelete == false
                               select tbl).ToList().Count;
                    if (cnt == 0)
                    {
                        tblPurchaseOrderDetail objNewAdded = new tblPurchaseOrderDetail()
                        {
                            PO_Id      = lstEdited[0].PO_Id,
                            Product_Id = item.Product_Id,
                            Quantity   = item.Quantity,
                            Rate       = item.Rate,
                            Total      = item.Rate * item.Quantity,
                            IsDelete   = false
                        };
                        objData.tblPurchaseOrderDetails.InsertOnSubmit(objNewAdded);
                        objData.SubmitChanges();
                    }
                    else
                    {
                        lstTemp.Add(item);
                    }
                }


                foreach (EntityPurchaseOrderDetails item in lstUpdate)
                {
                    tblPurchaseOrderDetail cnt = (from tbl in objData.tblPurchaseOrderDetails
                                                  where tbl.PO_Id == item.PO_Id &&
                                                  tbl.Product_Id == item.Product_Id
                                                  select tbl).FirstOrDefault();

                    if (cnt != null)
                    {
                        int checkExist = (from tbl in lstTemp
                                          where tbl.Product_Id == item.Product_Id
                                          select tbl).ToList().Count;
                        if (checkExist == 0)
                        {
                            cnt.IsDelete = true;
                        }
                    }
                }
                objData.SubmitChanges();
                return(1);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #13
0
        public async Task <string> AddUpdatePurchaseOrder(PurchaseOrderDomainModel purchaseOrder)
        {
            string status = "";

            if (purchaseOrder.order_id > 0)
            {
                tblPurchaseOrder purchaseOrderToUpdate = await purchaseOrderRepository.SingleOrDefault(s => s.order_id == purchaseOrder.order_id);

                if (purchaseOrderToUpdate != null)
                {
                    await purchaseOrderRepository.Update(purchaseOrderToUpdate);

                    status = "updated";
                }
            }
            else
            {
                List <DetailOrderDomainModel> detailOrder = new List <DetailOrderDomainModel>();
                detailOrder = purchaseOrder.orderDetails;
                string strVchNo     = "";
                string strOrderDesc = "";
                int    vrNo         = 0;

                tblPurchaseOrder purchaseOrderToAdd = new tblPurchaseOrder();

                int lastOrderId = 0;

                using (abuhamzapetstoreEntities db = new abuhamzapetstoreEntities())
                {
                    try
                    {
                        vrNo = (from c in db.tblvches
                                orderby c.vch_id descending
                                select c.vch_id).Take(1).SingleOrDefault();

                        strVchNo = "0000" + (vrNo + 1);

                        strOrderDesc = purchaseOrder.description;
                        if (purchaseOrder.description == null)
                        {
                            strOrderDesc = "";
                        }

                        var result = db.stpPurchaseOrder(1, purchaseOrder.totalAmount, purchaseOrder.paidAmount,
                                                         strOrderDesc, purchaseOrder.supplier, purchaseOrder.paidAmount, strVchNo, 1, purchaseOrder.creditorAcc_Id);

                        lastOrderId = (from c in db.tblPurchaseOrders
                                       orderby c.order_id descending
                                       select c.order_id).Take(1).SingleOrDefault();

                        tblDetailOrder detailOrderToAdd = new tblDetailOrder();
                        foreach (DetailOrderDomainModel singleDetail in detailOrder)
                        {
                            result = db.stpDetailOrder(lastOrderId, singleDetail.quantity, singleDetail.barcode,
                                                       singleDetail.purchasePrice, strVchNo);
                        }
                    }
                    catch (Exception ex)
                    {
                        status = ex.Message;
                    }
                }
                status = "added";
            }
            return(status);
        }