Пример #1
0
    private void OnTriggerEnter(Collider other)
    {
        if (other.tag == "Moveable")
        {
            Destroy(other.gameObject);
            IngredientMovement movement   = other.GetComponent <IngredientMovement>();
            Ingredient         ingredient = other.GetComponent <Ingredient>();
            // Disables player input:
            // Stops the momentum of the object (Only for TODO pull animation):
            movement.StopMovement();

            // Increment counter:
            int amount = Random.Range(5, 11);
            if (ingredient.index == 4)
            {
                destroyedIngredient = Random.Range(0, 4);
                GameSystem.Instance.AddIngredient(destroyedIngredient, -amount);
            }
            else
            {
                GameSystem.Instance.AddIngredient(ingredient.index, amount);
            }
            // Save Counter
            GameSystem.SaveGameSystem();

            // Destroy Object TODO? Replace with animation pulling into black hole
            IngredientSpawner.objectCounter -= 1;
        }
    }
Пример #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            IngredientMovement ingredientMovement = db.IngredientMovements.Find(id);

            db.IngredientMovements.Remove(ingredientMovement);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #3
0
        // GET: IngredientMovements/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            IngredientMovement ingredientMovement = db.IngredientMovements.Find(id);

            if (ingredientMovement == null)
            {
                return(HttpNotFound());
            }
            return(View(ingredientMovement));
        }
        public ActionResult AddIngredientCorrection([Bind(Include = "Id,Ingredient_Id,MovementType_Id,Warehouse_Id,Quantity,Remark,IsActive,CreatedBy,CreatedDate,ChangedBy,ChangedDate")] IngredientMovement ingredientMovement)
        {
            if (ModelState.IsValid)
            {
                //INGREDIENTMOVEMENT ELKÉSZÍTÉSE
                var identity = (ClaimsIdentity)User.Identity;
                var sid      = identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault();
                ingredientMovement.CreatedDate = DateTime.Now;
                ingredientMovement.CreatedBy   = Convert.ToInt32(sid);
                db.IngredientMovements.Add(ingredientMovement);



                //CURRENTINGREDIENTSTOCK MÓDOSÍTÁSA
                var ingredienttoupdate         = db.CurrentIngredientStocks.First(i => i.Ingredient_Id == ingredientMovement.Ingredient_Id);
                var originalingredientquantity = db.CurrentIngredientStocks.First(i => i.Ingredient_Id == ingredientMovement.Ingredient_Id).Quantity;
                ingredienttoupdate.Quantity        = originalingredientquantity + ingredientMovement.Quantity;
                ingredienttoupdate.ChangedDate     = DateTime.Now;
                ingredienttoupdate.ChangedBy       = Convert.ToInt32(sid);
                db.Entry(ingredienttoupdate).State = EntityState.Modified;


                if (db.SaveChanges() > 0)
                {
                    TempData["Operation"] = "success";
                }
                else
                {
                    TempData["Operation"] = "danger";
                }
                return(RedirectToAction("AddIngredientCorrection", "StockOperations"));
            }

            ViewBag.MovementType_Id = new SelectList(db.MovementTypes.Where(i => i.MovementKey == "correction"), "Id", "Name");
            var existingIngredient = new List <Ingredient>();

            foreach (var ai in db.Ingredients)
            {
                if (db.CurrentIngredientStocks.Any(x => x.Ingredient_Id == ai.Id))
                {
                    ai.Name = string.Format("{0} - {1} kg", ai.Name, string.Format("{0:0.##}", db.CurrentIngredientStocks.First(x => x.Ingredient_Id == ai.Id).Quantity));
                    existingIngredient.Add(ai);
                }
                ;
            }
            ViewBag.Ingredient_Id = new SelectList(existingIngredient, "Id", "Name");

            ViewBag.Warehouse_Id = new SelectList(db.Warehouses, "Id", "Name");
            return(View(ingredientMovement));
        }
Пример #5
0
 public ActionResult Edit([Bind(Include = "Id,Production_Id,Ingredient_Id,MovementType_Id,Warehouse_Id,Quantity,Remark,IsActive,CreatedBy,CreatedDate,ChangedBy,ChangedDate")] IngredientMovement ingredientMovement)
 {
     if (ModelState.IsValid)
     {
         db.Entry(ingredientMovement).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.Ingredient_Id   = new SelectList(db.Ingredients, "Id", "Name", ingredientMovement.Ingredient_Id);
     ViewBag.MovementType_Id = new SelectList(db.MovementTypes, "Id", "Name", ingredientMovement.MovementType_Id);
     ViewBag.Production_Id   = new SelectList(db.Productions, "Id", "Remark", ingredientMovement.Production_Id);
     ViewBag.CreatedBy       = new SelectList(db.SystemUsers, "Id", "Email", ingredientMovement.CreatedBy);
     ViewBag.ChangedBy       = new SelectList(db.SystemUsers, "Id", "Email", ingredientMovement.ChangedBy);
     ViewBag.Warehouse_Id    = new SelectList(db.Warehouses, "Id", "Name", ingredientMovement.Warehouse_Id);
     return(View(ingredientMovement));
 }
Пример #6
0
        // GET: IngredientMovements/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            IngredientMovement ingredientMovement = db.IngredientMovements.Find(id);

            if (ingredientMovement == null)
            {
                return(HttpNotFound());
            }
            ViewBag.Ingredient_Id   = new SelectList(db.Ingredients, "Id", "Name", ingredientMovement.Ingredient_Id);
            ViewBag.MovementType_Id = new SelectList(db.MovementTypes, "Id", "Name", ingredientMovement.MovementType_Id);
            ViewBag.Production_Id   = new SelectList(db.Productions, "Id", "Remark", ingredientMovement.Production_Id);
            ViewBag.CreatedBy       = new SelectList(db.SystemUsers, "Id", "Email", ingredientMovement.CreatedBy);
            ViewBag.ChangedBy       = new SelectList(db.SystemUsers, "Id", "Email", ingredientMovement.ChangedBy);
            ViewBag.Warehouse_Id    = new SelectList(db.Warehouses, "Id", "Name", ingredientMovement.Warehouse_Id);
            return(View(ingredientMovement));
        }
Пример #7
0
        public ActionResult EditReceipt(DTOEditReceipt r)
        {
            if (ModelState.IsValid)
            {
                var identity = (ClaimsIdentity)User.Identity;
                var sid      = identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault();
                //var deliveryNoteCreted = false;

                var existingDeliveryNote = db.DeliveryNotes.Find(r.Id);

                //DELIVERYNOTE UPDATE
                existingDeliveryNote.DeliveryNoteDate = (DateTime)r.DeliveryNote.DeliveryNoteDate;
                existingDeliveryNote.Customer_Id      = r.DeliveryNote.Customer_Id;
                existingDeliveryNote.Number           = r.DeliveryNote.Number;
                existingDeliveryNote.Remark           = r.DeliveryNote.Remark;
                existingDeliveryNote.IsActive         = r.DeliveryNote.IsActive;
                existingDeliveryNote.ChangedBy        = Convert.ToInt32(sid);
                existingDeliveryNote.ChangedDate      = DateTime.Now;

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


                for (int x = 0; x < r.DeliveryNote.DeliveryNoteItems.Count; x++)
                {
                    //INGREDIENTMOVEMENT UPDATE
                    var currentIndex              = x;
                    var currentIngredientId       = r.DeliveryNote.DeliveryNoteItems[currentIndex].Ingredient_Id;
                    var currentWarehouseId        = r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id;
                    var currentIngredientQuantity = r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity;

                    if (r.DeliveryNote.DeliveryNoteItems[currentIndex].IngredientMovementIsActive || r.DeliveryNote.DeliveryNoteItems[currentIndex].Id == 0)
                    {
                        //HA VAN MÁR INGREDIENT MOVEMENT -- UPDATE
                        if (r.DeliveryNote.DeliveryNoteItems[currentIndex].IngredientMovement_Id != null)
                        {
                            var existingIngredientMovement =
                                db.IngredientMovements.Find(r.DeliveryNote.DeliveryNoteItems[currentIndex].IngredientMovement_Id);
                            var originalQuantity = existingIngredientMovement.Quantity;
                            //HA NEM EGYEZNEK A MENNYISÉGEK VAGY A RAKTÁR, UPDATE
                            if (
                                existingIngredientMovement.Quantity != r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity ||
                                existingIngredientMovement.Warehouse_Id != r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id
                                )
                            {
                                existingIngredientMovement.Quantity =
                                    (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity;
                                existingIngredientMovement.Warehouse_Id = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id;
                                existingIngredientMovement.IsActive     = r.DeliveryNote.DeliveryNoteItems[currentIndex]
                                                                          .IngredientMovementIsActive;
                                existingIngredientMovement.ChangedBy       = Convert.ToInt32(sid);
                                existingIngredientMovement.ChangedDate     = DateTime.Now;
                                db.Entry(existingIngredientMovement).State = EntityState.Modified;

                                var quantityDifference = originalQuantity -
                                                         (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity;

                                //HA VAN MENNYISÉG VÁLTOZÁS, INGREDIENTSTOCK MÓDOSÍTÁSA
                                if (quantityDifference != 0)
                                {
                                    var currentIngredientStock = db.CurrentIngredientStocks.SingleOrDefault(c => c.Ingredient_Id == currentIngredientId && c.Warehouse_Id == currentWarehouseId);
                                    currentIngredientStock.Quantity        = currentIngredientStock.Quantity - quantityDifference;
                                    currentIngredientStock.ChangedBy       = Convert.ToInt32(sid);
                                    currentIngredientStock.ChangedDate     = DateTime.Now;
                                    db.Entry(currentIngredientStock).State = EntityState.Modified;
                                }
                            }
                        }
                        //HA MÉG NINCS INGREDIENT MOVEMENT -- CREATE
                        else
                        {
                            var ingredientMovement = new IngredientMovement
                            {
                                Ingredient_Id   = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Ingredient_Id,
                                MovementType_Id = db.MovementTypes.SingleOrDefault(c => c.MovementKey == "receipt").Id,
                                Warehouse_Id    = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id,
                                Quantity        = (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity,
                                Remark          = r.DeliveryNote.Remark,
                                IsActive        = true,
                                CreatedDate     = DateTime.Now,
                                CreatedBy       = Convert.ToInt32(sid)
                            };
                            db.IngredientMovements.Add(ingredientMovement);

                            //CURRENTINGREDIENTSTOCK MÓDOSÍTÁSA
                            var ingredientexists = db.CurrentIngredientStocks.Where(i => i.Ingredient_Id == currentIngredientId);
                            //HA NINCS AZ ALAPANYAGBÓL, HOZZÁADJUK
                            if (!ingredientexists.Any())
                            {
                                db.CurrentIngredientStocks.Add(new CurrentIngredientStock
                                {
                                    CreatedDate   = DateTime.Now,
                                    CreatedBy     = Convert.ToInt32(sid),
                                    IsActive      = true,
                                    Ingredient_Id = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Ingredient_Id,
                                    Warehouse_Id  = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id,
                                    Quantity      = (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity,
                                });
                            }
                            //HA VAN AZ ALAPANYAGBÓL, UPDATE
                            else
                            {
                                var ingredienttoupdate         = db.CurrentIngredientStocks.First(i => i.Ingredient_Id == currentIngredientId);
                                var originalingredientquantity = db.CurrentIngredientStocks.First(i => i.Ingredient_Id == currentIngredientId).Quantity;
                                ingredienttoupdate.Quantity        = (decimal)(originalingredientquantity + currentIngredientQuantity);
                                ingredienttoupdate.ChangedDate     = DateTime.Now;
                                ingredienttoupdate.ChangedBy       = Convert.ToInt32(sid);
                                db.Entry(ingredienttoupdate).State = EntityState.Modified;
                            }

                            //SZÁLLÍTÓLEVÉL TÉTELEK HOZZÁADÁSA
                            var existingDeliveryNoteId = r.DeliveryNote.Id;
                            var deliveryNoteItem       = new DeliveryNoteItem
                            {
                                DeliveryNote_Id    = existingDeliveryNoteId,
                                IngredientMovement = ingredientMovement
                            };
                            db.DeliveryNoteItems.Add(deliveryNoteItem);
                        }
                    }
                    else
                    {
                        //HA TÖRÖLTEK SORT A SZÁLLÍTÓLEVÉLRŐL

                        //DELIVERYNOTEITEM TÖRLÉSE
                        var deliveryNoteItemToDelete     = db.DeliveryNoteItems.Find(r.DeliveryNote.DeliveryNoteItems[currentIndex].Id);
                        var affectedIngredientMovementId = deliveryNoteItemToDelete.IngredientMovement_Id;

                        db.Entry(deliveryNoteItemToDelete).State = EntityState.Deleted;

                        //INGREDIENTMOVEMENT ISACTIVE=0
                        var ingredientMovementToDelete = db.IngredientMovements.Find(affectedIngredientMovementId);
                        var affectedIngredientId       = ingredientMovementToDelete.Ingredient_Id;
                        ingredientMovementToDelete.IsActive    = false;
                        ingredientMovementToDelete.ChangedBy   = Convert.ToInt32(sid);
                        ingredientMovementToDelete.ChangedDate = DateTime.Now;

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

                        //CURRENTINGREDIENTSTOCK MÓDOSÍTÁSA
                        var affectedCurrentIngredientStock = db.CurrentIngredientStocks.First(c => c.Ingredient_Id == affectedIngredientId);
                        affectedCurrentIngredientStock.Quantity =
                            (decimal)(affectedCurrentIngredientStock.Quantity - r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity);
                        affectedCurrentIngredientStock.ChangedBy   = Convert.ToInt32(sid);
                        affectedCurrentIngredientStock.ChangedDate = DateTime.Now;

                        db.Entry(affectedCurrentIngredientStock).State = EntityState.Modified;
                    }
                }

                if (db.SaveChanges() > 0)
                {
                    TempData["Operation"] = "success";
                }
                else
                {
                    TempData["Operation"] = "danger";
                }
                return(RedirectToAction("Index", "CurrentIngredientStocks"));
            }
            return(View(r));
        }
Пример #8
0
        public ActionResult AddReceipt([Bind(Include = "Id,deliveryNoteItem,Customer_Id,DeliveryNote_Number,DeliveryNote_Remark,DeliveryNote_Date,MovementType_Id,Remark,IsActive,CreatedBy,CreatedDate,ChangedBy,ChangedDate")] InventoryOperationViewModel inventoryReceipt)
        {
            if (ModelState.IsValid)
            {
                var identity           = (ClaimsIdentity)User.Identity;
                var sid                = identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault();
                var deliveryNoteCreted = false;

                for (int x = 0; x < inventoryReceipt.deliveryNoteItem.Count; x++)
                {
                    //INGREDIENTMOVEMENT ELKÉSZÍTÉSE
                    var currentIndex              = x;
                    var currentIngredientId       = inventoryReceipt.deliveryNoteItem[x].Ingredient_Id;
                    var currentIngredientQuantity = inventoryReceipt.deliveryNoteItem[currentIndex].Quantity;
                    var ingredientMovement        = new IngredientMovement
                    {
                        Ingredient_Id   = inventoryReceipt.deliveryNoteItem[currentIndex].Ingredient_Id,
                        MovementType_Id = inventoryReceipt.MovementType_Id,
                        Warehouse_Id    = inventoryReceipt.deliveryNoteItem[currentIndex].Warehouse_Id,
                        Quantity        = inventoryReceipt.deliveryNoteItem[currentIndex].Quantity,
                        Remark          = inventoryReceipt.Remark,
                        IsActive        = true,
                        CreatedDate     = DateTime.Now,
                        CreatedBy       = Convert.ToInt32(sid)
                    };
                    db.IngredientMovements.Add(ingredientMovement);


                    //CURRENTINGREDIENTSTOCK MÓDOSÍTÁSA
                    var ingredientexists = db.CurrentIngredientStocks.Where(i => i.Ingredient_Id == currentIngredientId);
                    //HA NINCS AZ ALAPANYAGBÓL, HOZZÁADJUK
                    if (!ingredientexists.Any())
                    {
                        db.CurrentIngredientStocks.Add(new CurrentIngredientStock
                        {
                            CreatedDate   = DateTime.Now,
                            CreatedBy     = Convert.ToInt32(sid),
                            IsActive      = true,
                            Warehouse_Id  = inventoryReceipt.deliveryNoteItem[currentIndex].Warehouse_Id,
                            Ingredient_Id = inventoryReceipt.deliveryNoteItem[currentIndex].Ingredient_Id,
                            Quantity      = inventoryReceipt.deliveryNoteItem[currentIndex].Quantity
                        });
                    }
                    //HA VAN AZ ALAPANYAGBÓL, UPDATE
                    else
                    {
                        var ingredienttoupdate         = db.CurrentIngredientStocks.First(i => i.Ingredient_Id == currentIngredientId);
                        var originalingredientquantity = db.CurrentIngredientStocks.First(i => i.Ingredient_Id == currentIngredientId).Quantity;
                        ingredienttoupdate.Quantity        = originalingredientquantity + currentIngredientQuantity;
                        ingredienttoupdate.ChangedDate     = DateTime.Now;
                        ingredienttoupdate.ChangedBy       = Convert.ToInt32(sid);
                        db.Entry(ingredienttoupdate).State = EntityState.Modified;
                    }

                    //SZÁLLÍTÓLEVÉL HOZZÁADÁSA
                    var existingDeliveryNoteId = 0;
                    if (deliveryNoteCreted == false)
                    {
                        var deliveryNote = new DeliveryNote
                        {
                            Customer_Id      = inventoryReceipt.Customer_Id,
                            Type             = "receipt",
                            Number           = inventoryReceipt.DeliveryNote_Number,
                            Remark           = inventoryReceipt.DeliveryNote_Remark,
                            IsActive         = true,
                            CreatedDate      = DateTime.Now,
                            CreatedBy        = Convert.ToInt32(sid),
                            DeliveryNoteDate = inventoryReceipt.DeliveryNote_Date
                        };
                        db.DeliveryNotes.Add(deliveryNote);
                        deliveryNoteCreted     = true;
                        existingDeliveryNoteId = deliveryNote.Id;
                        //SZÁLLÍTÓLEVÉL TÉTELEK HOZZÁADÁSA
                        var deliveryNoteItem = new DeliveryNoteItem
                        {
                            DeliveryNote       = deliveryNote,
                            IngredientMovement = ingredientMovement
                        };
                        db.DeliveryNoteItems.Add(deliveryNoteItem);
                    }
                    else
                    {
                        //SZÁLLÍTÓLEVÉL TÉTELEK HOZZÁADÁSA
                        var deliveryNoteItem = new DeliveryNoteItem
                        {
                            DeliveryNote_Id    = existingDeliveryNoteId,
                            IngredientMovement = ingredientMovement
                        };
                        db.DeliveryNoteItems.Add(deliveryNoteItem);
                    }
                }

                if (db.SaveChanges() > 0)
                {
                    TempData["Operation"] = "success";
                }
                else
                {
                    TempData["Operation"] = "danger";
                }
                return(RedirectToAction("Index", "CurrentIngredientStocks"));
            }
            ViewBag.MovementType_Id = new SelectList(db.MovementTypes.Where(i => i.MovementKey == "receipt"), "Id", "Name");
            ViewBag.Ingredient_Id   = new SelectList(db.Ingredients, "Id", "Name");
            ViewBag.Warehouse_Id    = new SelectList(db.Warehouses, "Id", "Name");
            ViewBag.Customer_Id     = new SelectList(db.Customers.Where(i => i.IsSupplier == true).OrderBy(i => i.Name), "Id", "Name");
            return(View(inventoryReceipt));
        }