Exemple #1
0
        public PlumResult DeleteMaterial(int materialId)
        {
            var result = new PlumResult();

            try
            {
                var foodMaterialModel = GetOne(materialId);

                if (foodMaterialModel == null)
                {
                    result.IsChange = false;
                    result.Message  = "این شرکت حذف شده است";
                    return(result);
                }

                if (foodMaterialModel.MaterialPrices.Any())
                {
                    result.IsChange = false;
                    result.Message  = "قادر به حذف این کالا نمی باشد زیرا در چندین کالا اولیه در حال استفاده است";
                    return(result);
                }
                result = DeleteMaterial(foodMaterialModel);
                return(result);
            }
            catch (Exception)
            {
                result.IsChange = false;
                result.Message  = "خطایی رخ داده است";
                return(result);
            }
        }
        public PlumResult DeleteFoodMAterial(Data.FoodMaterial foodMaterial)
        {
            var result = new PlumResult();

            try
            {
                _db.Entry(foodMaterial).State = EntityState.Deleted;
                if (_db.SaveChanges() > 0)
                {
                    result.IsChange = true;
                    result.Message  = "کالا با موفقیت حذف شد";
                    return(result);
                }
            }
            catch (Exception e)
            {
                result.IsChange = false;
                result.Message  = e.Message;

                return(result);
            }
            result.IsChange = false;
            result.Message  = "خطایی رخ داده است";

            return(result);
        }
Exemple #3
0
        public PlumResult EditMaterial(Material Material)
        {
            var result = new PlumResult();

            if (IsAnyMaterial(Material))
            {
                result.IsChange = false;
                result.Message  = "رکورد تکراری می باشد";
                return(result);
            }

            _db.Entry(Material).State = EntityState.Modified;
            result.Message            = "رکورد با موفقیت تغییر کرد";
            return(result);
        }
Exemple #4
0
        public Plum.Model.Model.PlumResult AddMaterial(Material Material)
        {
            var result = new PlumResult();

            if (IsAnyMaterial(Material.MaterialName))
            {
                result.IsChange = false;
                result.Message  = "رکورد تکراری می باشد";
                return(result);
            }

            _db.Entry(Material).State = EntityState.Added;
            result.Message            = "رکورد با موفقیت ثبت شد";
            return(result);
        }
Exemple #5
0
        public PlumResult EditCompany(Company company)
        {
            var result = new PlumResult();

            if (IsAnyCompany(company))
            {
                result.IsChange = false;
                result.Message  = "رکورد تکراری می باشد";
                return(result);
            }

            _db.Entry(company).State = EntityState.Modified;
            result.Message           = "رکورد با موفقیت تغییر کرد";
            return(result);
        }
Exemple #6
0
        public PlumResult AddCompany(Company company)
        {
            var result = new PlumResult();

            if (IsAnyCompany(company.CompanyName))
            {
                result.IsChange = false;
                result.Message  = "رکورد تکراری می باشد";
                return(result);
            }

            _db.Entry(company).State = EntityState.Added;
            result.Message           = "رکورد با موفقیت ثبت شد";
            return(result);
        }
Exemple #7
0
        public PlumResult AddUser(User user)
        {
            var result   = new PlumResult();
            var userName = GetUser(user);

            if (userName != null)
            {
                db.Entry(user).State = EntityState.Added;
                result.Message       = "کاربر تعریف شد";
                return(result);
            }

            result.IsChange = false;
            result.Message  = "کاربر تکراری میباشد";
            return(result);
        }
        public PlumResult DeleteMaterial(MaterialPrice material)
        {
            var result = new PlumResult();

            try
            {
                db.Entry(material).State = EntityState.Deleted;
                result.Message           = "کالا با موفقیت حذف شد";
                return(result);
            }
            catch (Exception e)
            {
                result.IsChange = false;
                result.Message  = e.Message;
                return(result);
            }
        }
Exemple #9
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="foodSurplusPrices"></param>
        /// <returns></returns>
        public PlumResult AddFoodSurplusPrice(ICollection <Data.FoodSurplusPrice> foodSurplusPrices)
        {
            PlumResult result = new PlumResult();

            foreach (Data.FoodSurplusPrice foodSurplusPrice in foodSurplusPrices)
            {
                db.FoodSurplusPrices.Add(foodSurplusPrice);
            }

            if (db.SaveChanges() > 0)
            {
                result.Message = "عملیات با موفقیت انجام شد";
                return(result);
            }
            result.IsChange = false;
            result.Message  = "عملیات انجام نشد";
            return(result);
        }
Exemple #10
0
        public PlumResult UpdateUser(User user)
        {
            var result   = new PlumResult();
            var userName = GetUser(user);
            var data     = Encoding.ASCII.GetBytes(user.Password);

            user.UserName = userName.UserName;
            var md5            = new MD5CryptoServiceProvider();
            var md5data        = md5.ComputeHash(data);
            var hashedPassword = Encoding.UTF8.GetString(md5data);

            user.Password        = hashedPassword;
            user.UserId          = userName.UserId;
            db.Entry(user).State = EntityState.Modified;

            result.Message = "کاربر تعریف شدرمز عبور با موفقیت تغییر  یافت";
            return(result);
        }
Exemple #11
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="foodSurplusPrices"></param>
        /// <param name="foodId"></param>
        /// <returns></returns>
        public PlumResult UpdateFoodSurplusPrice(ICollection <Data.FoodSurplusPrice> foodSurplusPrices, int foodId)
        {
            PlumResult result          = new PlumResult();
            var        foodpriceModels = GetFoodSurplusPricesByFoodId(foodId);

            foreach (Data.FoodSurplusPrice foodSurplusPrice in foodSurplusPrices)
            {
                var foodprice = foodpriceModels.First(a => a.AdjustKind == foodSurplusPrice.AdjustKind);
                foodprice.Price = foodSurplusPrice.Price;
            }

            if (db.SaveChanges() > 0)
            {
                result.Message = "عملیات با موفقیت انجام شد";
                return(result);
            }
            result.IsChange = false;
            result.Message  = "عملیات انجام نشد";
            return(result);
        }
Exemple #12
0
        public PlumResult DeleteCompany(Company company)
        {
            var result = new PlumResult();

            try
            {
                _db.Entry(company).State = EntityState.Deleted;

                result.IsChange = true;
                result.Message  = "کالا با موفقیت حذف شد";
                return(result);
            }
            catch (Exception e)
            {
                result.IsChange = false;
                result.Message  = e.Message;

                return(result);
            }
        }
Exemple #13
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="foodMaterialId"></param>
        /// <returns></returns>
        public PlumResult DeleteFood(int foodMaterialId)
        {
            var result = new PlumResult();

            try
            {
                var foodMaterialModel = GetOne(foodMaterialId);
                if (foodMaterialModel == null)
                {
                    result.Message = "این کالا حذف شده است";
                }
                result = DeleteFoodMAterial(foodMaterialModel);
                return(result);
            }
            catch (Exception)
            {
                result.IsChange = false;
                result.Message  = "خطایی رخ داده است";

                return(result);
            }
        }
        public PlumResult DeleteMaterial(int materialId)
        {
            var result   = new PlumResult();
            var material = GetOne(materialId);

            if (material.FoodMaterials.Any())
            {
                result.IsChange = false;
                result.Message  = "قادر به حذف این کالا نمی باشید زیرا در بعضی از غذاها استفاده شده است";
                return(result);
            }
            try
            {
                result = DeleteMaterial(material);
                return(result);
            }
            catch (Exception e)
            {
                result.IsChange = false;
                result.Message  = e.Message;
                return(result);
            }
        }
        public PlumResult InsertMaterial(MaterialPrice material)
        {
            var result = new PlumResult();

            try
            {
                if (db.MaterialsPrice.Any(a => a.MaterialId == material.MaterialId && a.CompanyId == material.CompanyId && a.Active))
                {
                    result.IsChange = false;
                    result.Message  = "کالای وارد شده قبلا قیمت گذاری شده است";
                    return(result);
                }
                db.MaterialsPrice.Add(material);
                result.Message = "عملیات با موفقیت انجام شد";
                return(result);
            }
            catch (Exception e)
            {
                result.IsChange = false;

                result.Message = e.Message;
                return(result);
            }
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="material"></param>
        /// <param name="inHistory"></param>
        /// <returns></returns>
        public PlumResult UpdateMaterial(MaterialPrice material, bool inHistory)
        {
            var result = new PlumResult();

            try
            {
                MaterialPrice materialModel = GetOne(material.Id);
                if (db.MaterialsPrice.Any(a => a.Id != material.Id && a.MaterialId == material.MaterialId && a.CompanyId == material.CompanyId && a.Active))
                {
                    result.IsChange = false;
                    result.Message  = "کالای وارد شده قبلا قیمت گذاری شده است";
                    return(result);
                }
                if (materialModel.UnitPrice != material.UnitPrice && inHistory)
                {
                    var oldMaterial = new MaterialPrice()
                    {
                        MaterialId       = materialModel.MaterialId,
                        Active           = false,
                        CompanyId        = materialModel.CompanyId,
                        ParentId         = materialModel.Id,
                        UnitPrice        = materialModel.UnitPrice,
                        InsertTime       = materialModel.InsertTime,
                        MaterialTypeData = materialModel.MaterialTypeData
                    };

                    db.MaterialsPrice.Add(oldMaterial);
                }

                materialModel.MaterialId = material.MaterialId;
                materialModel.UnitPrice  = material.UnitPrice;
                materialModel.InsertTime = material.InsertTime;

                //تغییر قیمت یک در لیست مواد اولیه غذاها
                foreach (var item in materialModel.FoodMaterials.ToList())
                {
                    item.UnitPrice = material.UnitPrice;

                    var unitPrice  = material.UnitPrice / 1000;
                    var quantity   = item.Quantity;
                    var totalPrice = unitPrice * quantity;
                    item.MaterialTotalPrice = totalPrice;
                    db.Entry(item).State    = EntityState.Modified;

                    var foodId = item.FoodId;
                    //پس از تغییر قیمت کالا قیمت ناهایی کالا نیز تغییر میکند
                    if (item.Food.FoodSurplusPrices.Any())
                    {
                        var foodPRice            = item.Food.FoodSurplusPrices.FirstOrDefault(a => a.AdjustKind == 8);
                        var sumfoodMAterialPrice = 0.0;
                        using (var unit = new UnitOfWork())
                        {
                            var foodDetails = unit.FoodService.GetOne(foodId);
                            foreach (var foodMaterial in foodDetails.FoodMaterials)
                            {
                                if (foodMaterial.Id == item.Id)
                                {
                                    sumfoodMAterialPrice = sumfoodMAterialPrice + totalPrice;
                                }
                                else
                                {
                                    sumfoodMAterialPrice = sumfoodMAterialPrice + foodMaterial.MaterialTotalPrice;
                                }
                            }
                            var sumFoodPrice = unit.FoodSurplusPricService.CalculatorFinalPrice(foodId, sumfoodMAterialPrice, 1);
                            if (foodPRice != null)
                            {
                                foodPRice.Price = sumFoodPrice;
                            }
                        }
                        db.Entry(foodPRice).State = EntityState.Modified;
                    }
                }

                result.Message = "عملیات با موفقیت انجام شد";
                return(result);
            }
            catch (Exception e)
            {
                result.IsChange = false;

                result.Message = e.Message;
                return(result);
            }
        }