Beispiel #1
0
        // GET: INV_PurchaseOrder/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            INV_IssueReturnViewModal _iNV_IssueReturnViewModal = new INV_IssueReturnViewModal();
            INV_IssueReturn          IssueReturnData           = db.INV_IssueReturn.Find(id);

            _iNV_IssueReturnViewModal.IssueReturnNo    = IssueReturnData.IssueReturnNo;
            _iNV_IssueReturnViewModal.IssueReturnItems = db.INV_StockHistory.Where(w => w.IssueNumber == IssueReturnData.IssueReturnNo).ToList();

            return(View(_iNV_IssueReturnViewModal));
        }
Beispiel #2
0
        public ActionResult SaveForAssmeble(INV_IssueReturnViewModal iNV_IssueReturnViewModal)
        {
            try
            {
                if (iNV_IssueReturnViewModal.IssueReturnItems.Count <= 0)
                {
                    TempData["errorIssue"] = "Select Item.";
                    return(View(iNV_IssueReturnViewModal));
                }

                #region Generate IssueReturnNo
                String _NewIssueReturnNo = CommonConfig.GetNextNumber("Issue");
                #endregion Generate IssueReturnNo

                INV_IssueReturn iNV_IssueReturn = new INV_IssueReturn();
                if (Session["UserID"] != null)
                {
                    iNV_IssueReturn.IssueReturnByUserID = Convert.ToInt16(Session["UserID"].ToString());
                }
                iNV_IssueReturn.CompanyID           = CommonConfig.GetCompanyID();
                iNV_IssueReturn.IssueReturnToUserID = iNV_IssueReturnViewModal.IssueReturnToUserID;
                iNV_IssueReturn.Created             = DateTime.Now;
                iNV_IssueReturn.Modified            = DateTime.Now;
                iNV_IssueReturn.Remarks             = "Issue for Assemble";
                iNV_IssueReturn.IssueReturnDate     = DateTime.Now;
                iNV_IssueReturn.IssueReturnNo       = _NewIssueReturnNo;
                iNV_IssueReturn.FinYearID           = CommonConfig.GetFinYearID();

                db.INV_IssueReturn.Add(iNV_IssueReturn);
                db.SaveChanges();

                string Err = "";
                TempData["errorIssue"] = "";
                if (iNV_IssueReturnViewModal.IssueReturnItems != null)
                {
                    foreach (var item in iNV_IssueReturnViewModal.IssueReturnItems)
                    {
                        INV_Item inv_Item = new INV_Item();
                        inv_Item = db.INV_Item.Where(i => i.ItemID == item.ItemID).FirstOrDefault();
                        if (inv_Item.Quantity - item.Quantity < 0)
                        {
                            if (Err == "")
                            {
                                Err = Err + "Check Stock for " + inv_Item.ItemName;
                            }
                            else
                            {
                                Err = Err + ", Check Stock for " + inv_Item.ItemName;
                            }
                        }

                        if (Session["UserID"] != null)
                        {
                            item.UserID = Convert.ToInt16(Session["UserID"].ToString());
                        }

                        INV_StockHistory new_INV_StockHistory = new INV_StockHistory();
                        new_INV_StockHistory.ItemID          = item.ItemID;
                        new_INV_StockHistory.OperationTypeID = 8;
                        new_INV_StockHistory.ReferenceID     = _NewIssueReturnNo;
                        new_INV_StockHistory.Quantity        = item.Quantity;
                        new_INV_StockHistory.UserID          = item.UserID;
                        new_INV_StockHistory.Created         = DateTime.Now;
                        new_INV_StockHistory.Modified        = DateTime.Now;
                        new_INV_StockHistory.Remarks         = "Issue";
                        new_INV_StockHistory.FinYearID       = CommonConfig.GetFinYearID();

                        new_INV_StockHistory.IssueNumber = _NewIssueReturnNo;
                        db.INV_StockHistory.Add(new_INV_StockHistory);

                        inv_Item.Quantity = inv_Item.Quantity - item.Quantity;
                    }
                    if (Err != "")
                    {
                        TempData["errorIssue"] = Err;
                        return(View(iNV_IssueReturnViewModal));
                    }
                    db.SaveChanges();
                }
            }
            catch (Exception exception)
            {
                //exception handiling
            }
            return(Json("failure", JsonRequestBehavior.AllowGet));
        }
Beispiel #3
0
        public ActionResult RertunNewItem(INV_IssueReturnViewModal iNV_IssueReturnViewModal)
        {
            try
            {
                if (iNV_IssueReturnViewModal.IssueReturnItems.Count <= 0)
                {
                    TempData["errorReturn"] = "Select Item.";
                    return(View(iNV_IssueReturnViewModal));
                }

                #region Generate IssueReturnNo
                String _NewIssueReturnNo = CommonConfig.GetNextNumber("Return");
                #endregion Generate IssueReturnNo

                INV_IssueReturn iNV_IssueReturn = new INV_IssueReturn();
                iNV_IssueReturn.CompanyID = CommonConfig.GetCompanyID();

                if (Session["UserID"] != null)
                {
                    iNV_IssueReturn.IssueReturnByUserID = Convert.ToInt16(Session["UserID"].ToString());
                }
                iNV_IssueReturn.IssueReturnToUserID = iNV_IssueReturnViewModal.IssueReturnToUserID;
                iNV_IssueReturn.Created             = DateTime.Now;
                iNV_IssueReturn.Modified            = DateTime.Now;
                iNV_IssueReturn.Remarks             = "Return";
                iNV_IssueReturn.IssueReturnDate     = DateTime.Now;
                iNV_IssueReturn.IssueReturnNo       = _NewIssueReturnNo;
                iNV_IssueReturn.FinYearID           = CommonConfig.GetFinYearID();
                iNV_IssueReturn.ReturnIssueNo       = iNV_IssueReturnViewModal.IssueReturnNo;

                db.INV_IssueReturn.Add(iNV_IssueReturn);
                //db.SaveChanges();

                string Err = "";
                TempData["errorReturn"] = "";
                if (iNV_IssueReturnViewModal.IssueReturnItems != null)
                {
                    foreach (var item in iNV_IssueReturnViewModal.IssueReturnItems)
                    {
                        INV_Item inv_Item = new INV_Item();
                        inv_Item = db.INV_Item.Where(i => i.ItemID == item.ItemID).FirstOrDefault();

                        INV_StockHistory _StockHistoryNew = new INV_StockHistory();
                        _StockHistoryNew = db.INV_StockHistory.Where(w => w.IssueNumber == iNV_IssueReturnViewModal.IssueReturnNo && w.ItemID == item.ItemID).FirstOrDefault();

                        List <INV_StockHistory> _receivedStockHistory = new List <INV_StockHistory>();
                        _receivedStockHistory = db.INV_StockHistory.Where(w => w.IssueNumber == iNV_IssueReturnViewModal.IssueReturnNo && w.ItemID == item.ItemID && w.Remarks == "Return" && w.OperationTypeID == 9).ToList();

                        if (_StockHistoryNew != null)
                        {
                            if (_StockHistoryNew.Quantity < (item.Quantity + _receivedStockHistory.Sum(i => i.Quantity)))
                            {
                                if (Err == "")
                                {
                                    Err = Err + "You can not return more than issue. " + inv_Item.ItemName;
                                }
                                else
                                {
                                    Err = Err + ", You can not return more than issue. " + inv_Item.ItemName;
                                }
                            }
                        }

                        if (Session["UserID"] != null)
                        {
                            item.UserID = Convert.ToInt16(Session["UserID"].ToString());
                        }

                        INV_StockHistory new_INV_StockHistory = new INV_StockHistory();
                        new_INV_StockHistory.ItemID          = item.ItemID;
                        new_INV_StockHistory.OperationTypeID = 9;
                        new_INV_StockHistory.ReferenceID     = _NewIssueReturnNo;
                        new_INV_StockHistory.Quantity        = item.Quantity;
                        new_INV_StockHistory.UserID          = item.UserID;
                        new_INV_StockHistory.Created         = DateTime.Now;
                        new_INV_StockHistory.Modified        = DateTime.Now;
                        new_INV_StockHistory.Remarks         = "Return";
                        new_INV_StockHistory.FinYearID       = CommonConfig.GetFinYearID();
                        new_INV_StockHistory.IssueNumber     = iNV_IssueReturnViewModal.IssueReturnNo;
                        new_INV_StockHistory.ReturnNumber    = _NewIssueReturnNo;
                        db.INV_StockHistory.Add(new_INV_StockHistory);
                        if (iNV_IssueReturnViewModal.IsRejected)
                        {
                            //inv_Item.Quantity = Convert.ToInt32(inv_Item.RejectedQuantity) + item.Quantity;
                            if (inv_Item.RejectedQuantity == null)
                            {
                                inv_Item.RejectedQuantity = item.Quantity;
                            }
                            else
                            {
                                inv_Item.RejectedQuantity = inv_Item.RejectedQuantity + item.Quantity;
                            }
                        }
                        else
                        {
                            inv_Item.Quantity = inv_Item.Quantity + item.Quantity;
                        }
                    }
                    if (Err != "")
                    {
                        TempData["errorReturn"] = Err;
                        ViewData["errorReturn"] = TempData["errorReturn"];
                        return(View(iNV_IssueReturnViewModal));
                    }
                    db.SaveChanges();
                }
            }
            catch (Exception exception)
            {
                //exception handiling
            }
            return(Json("failure", JsonRequestBehavior.AllowGet));
        }
        public static string GetNextNumber(string _NumberFor)
        {
            var db = new DB_A157D8_AnjaliMISEntities1();

            Int32  _NewIssueNo       = 0;
            String _NewIssueReturnNo = "";

            if (_NumberFor == "Issue")
            {
                Int32 TotalForMonth = db.INV_IssueReturn.Where(p => p.Created.Month == DateTime.Today.Month && p.Created.Year == DateTime.Today.Year && p.IssueReturnNo.Contains("IS")).Count();
                Int32 NextCount     = TotalForMonth + 1;
                _NewIssueNo       = Convert.ToInt32(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + NextCount);
                _NewIssueReturnNo = "IS-" + _NewIssueNo;

                #region Check No
                INV_IssueReturn _INV_IssueReturnNo = db.INV_IssueReturn.Where(w => w.IssueReturnNo == _NewIssueReturnNo).FirstOrDefault();
                if (_INV_IssueReturnNo != null)
                {
                    NextCount         = NextCount + 1;
                    _NewIssueNo       = Convert.ToInt32(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + NextCount);
                    _NewIssueReturnNo = "IS-" + _NewIssueNo;
                }
                #endregion Check No
            }
            if (_NumberFor == "Return")
            {
                Int32 TotalForMonth = db.INV_IssueReturn.Where(p => p.Created.Month == DateTime.Today.Month && p.Created.Year == DateTime.Today.Year && p.IssueReturnNo.Contains("RN")).Count();
                Int32 NextCount     = TotalForMonth + 1;
                _NewIssueNo       = Convert.ToInt32(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + NextCount);
                _NewIssueReturnNo = "RN-" + _NewIssueNo;

                #region Check No
                INV_IssueReturn _INV_IssueReturnNo = db.INV_IssueReturn.Where(w => w.IssueReturnNo == _NewIssueReturnNo).FirstOrDefault();
                if (_INV_IssueReturnNo != null)
                {
                    NextCount         = NextCount + 1;
                    _NewIssueNo       = Convert.ToInt32(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + NextCount);
                    _NewIssueReturnNo = "RN-" + _NewIssueNo;
                }
                #endregion Check No
            }
            if (_NumberFor == "Invoice")
            {
                Int32 TotalForMonth = db.INV_Invoice.Where(p => p.Created.Month == DateTime.Today.Month && p.Created.Year == DateTime.Today.Year).Count();
                Int32 NextCount     = TotalForMonth + 1;
                _NewIssueNo       = Convert.ToInt32(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + NextCount);
                _NewIssueReturnNo = "INV-" + _NewIssueNo;

                #region Check No
                INV_Invoice _INV_IssueReturnNo = db.INV_Invoice.Where(w => w.InvoiceNo == _NewIssueReturnNo).FirstOrDefault();
                if (_INV_IssueReturnNo != null)
                {
                    NextCount         = NextCount + 1;
                    _NewIssueNo       = Convert.ToInt32(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + NextCount);
                    _NewIssueReturnNo = "INV-" + _NewIssueNo;
                }
                #endregion Check No
            }
            if (_NumberFor == "PO")
            {
                Int32 TotalForMonth = db.INV_PurchaseOrder.Where(p => p.Created.Month == DateTime.Today.Month && p.Created.Year == DateTime.Today.Year).Count();
                Int32 NextCount     = TotalForMonth + 1;
                _NewIssueNo       = Convert.ToInt32(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + NextCount);
                _NewIssueReturnNo = "PO-" + _NewIssueNo;

                #region Check No
                INV_PurchaseOrder _INV_IssueReturnNo = db.INV_PurchaseOrder.Where(w => w.PONo == _NewIssueReturnNo).FirstOrDefault();
                if (_INV_IssueReturnNo != null)
                {
                    NextCount         = NextCount + 1;
                    _NewIssueNo       = Convert.ToInt32(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + NextCount);
                    _NewIssueReturnNo = "PO-" + _NewIssueNo;
                }
                #endregion Check No
            }

            return(_NewIssueReturnNo);
        }