Exemplo n.º 1
0
        /// <summary>
        /// Save Users
        /// </summary>
        /// <param name="customer"></param>
        /// <param name="logId"></param>
        /// <param name="validateOnSaveEnabled"></param>
        /// <param name="mailBodyTemplate"></param>
        /// <returns></returns>
        public bool SaveSales(SalesViewModel salesViewModel)
        {
            bool status = false;

            tblProductSold product = new tblProductSold();

            Mapper.Map(salesViewModel, product);
            product.ProductId    = salesViewModel.ProductId;
            product.CustomerId   = salesViewModel.CustomerId;
            product.StoreId      = salesViewModel.StoreId;
            product.DateSold     = salesViewModel.PurchasedDate;
            product.IsActive     = true;
            product.CreatedDate  = DateTime.Now;
            product.ModifiedDate = DateTime.Now;
            product.CreatedBy    = "101";
            product.ModifiedBy   = "101";
            _Context.tblProductSolds.Add(product);
            _Context.Configuration.ValidateOnSaveEnabled = true;
            _Context.SaveChanges();
            status = true;


            return(status);
            // for new users
        }
        //public JsonResult AddSoldProductInfoToProductTransfer(int storeId, int shiftId, DateTime fromDate, List<VM_ProductSold> productsoldList)
        public JsonResult AddSoldProductInfoToProductTransfer(int storeId, int shiftId, List <VM_ProductSold> productsoldList)
        {
            try
            {
                foreach (var productsold in productsoldList)
                {
                    using (TransactionScope scope = new TransactionScope())
                    {
                        tblProductTransfer productTransfer = new tblProductTransfer();
                        productTransfer.StoreId = storeId;
                        //productTransfer.GroupId = groupId;
                        productTransfer.ShiftId = shiftId;
                        //productTransfer.TransferDate = fromDate;
                        productTransfer.TransferDate    = DateTime.Now;
                        productTransfer.ProductId       = productsold.ProductId;
                        productTransfer.Quantity        = productsold.Quantity;
                        productTransfer.Unit            = unitOfWork.ProductRepository.GetByID(productsold.ProductId).Unit;
                        productTransfer.UnitPrice       = unitOfWork.ProductRepository.GetByID(productsold.ProductId).UnitPrice;
                        productTransfer.isOut           = true;
                        productTransfer.DateTime        = DateTime.Now;
                        productTransfer.CreatedBy       = SessionManger.LoggedInUser(Session);
                        productTransfer.EditedBy        = null;
                        productTransfer.RestaurantId    = Int32.Parse(SessionManger.RestaurantOfLoggedInUser(Session).ToString());
                        productTransfer.CreatedDateTime = DateTime.Now;
                        unitOfWork.ProductTransferRepository.Insert(productTransfer);
                        unitOfWork.Save();



                        //add product to productSold table

                        tblProductSold productSold = new tblProductSold();

                        productSold.StoreId = storeId;
                        //productSold.GroupId = groupId;
                        productSold.ShiftId = shiftId;
                        //productSold.TransferDate = fromDate;
                        productSold.TransferDate    = DateTime.Now;
                        productSold.ProductId       = productsold.ProductId;
                        productSold.Quantity        = productsold.Quantity;
                        productSold.Unit            = unitOfWork.ProductRepository.GetByID(productsold.ProductId).Unit;
                        productSold.UnitPrice       = unitOfWork.ProductRepository.GetByID(productsold.ProductId).UnitPrice;
                        productSold.DateTime        = DateTime.Now;
                        productSold.CreatedBy       = SessionManger.LoggedInUser(Session);
                        productSold.EditedBy        = null;
                        productSold.RestaurantId    = Int32.Parse(SessionManger.RestaurantOfLoggedInUser(Session).ToString());
                        productSold.CreatedDateTime = DateTime.Now;
                        unitOfWork.ProductSoldRepository.Insert(productSold);
                        unitOfWork.Save();


                        if (shiftId == 1)
                        {
                            unitOfWork.CustomRepository.sp_InsertTotalAmountDailyByShiftWise();
                        }
                        else
                        {
                            unitOfWork.CustomRepository.sp_InsertTotalAmountDailyForNightShift();
                        }

                        scope.Complete();
                    }
                }
                return(Json(new { success = true, successMessage = "Product Sold" }));
            }
            catch (Exception ex)
            {
                return(Json(new { success = false, errorMessage = ex.Message }, JsonRequestBehavior.AllowGet));
            }
            //return Json(new { success = true, successMessage = "Product Sold" });
        }