コード例 #1
0
        public JsonResult SetFood(FoodDateViewModel model)
        {
            Response response;

            try
            {
                var userId       = GetAuthenticatedUserId();
                var selectedDate = DateUtility.GetDateTime(model.date);
                using (var db = new KiaGalleryContext())
                {
                    var food = db.FoodRegistration.Where(x => x.FoodCensus.Date == selectedDate && x.UserId == model.userId && x.FoodCensusId == model.id).SingleOrDefault();
                    if (food != null)
                    {
                        food.Food         = model.food;
                        food.Date         = selectedDate;
                        food.FoodStatus   = 0;
                        food.ModifyUserId = userId;
                        food.ModifyDate   = DateTime.Now;
                        food.Ip           = Request.UserHostAddress;
                    }
                    else
                    {
                        var item = new FoodRegistration()
                        {
                            Food         = model.food,
                            UserId       = model.userId.Value,
                            FoodCensusId = model.id.Value,
                            Date         = DateUtility.GetDateTime(model.date),
                            FoodStatus   = 0,
                            CreateUserId = userId,
                            ModifyUserId = userId,
                            CreateDate   = DateTime.Now,
                            ModifyDate   = DateTime.Now,
                            Ip           = Request.UserHostAddress,
                        };
                        db.FoodRegistration.Add(item);
                    }
                    db.SaveChanges();
                }

                response = new Response()
                {
                    status = 200,
                };
            }
            catch (Exception ex)
            {
                response = Core.GetExceptionResponse(ex);
            }
            return(Json(response, JsonRequestBehavior.AllowGet));
        }
コード例 #2
0
        public JsonResult SendingSms(FoodDateViewModel model)
        {
            Response response;

            try
            {
                var userId      = GetAuthenticatedUserId();
                var date        = DateUtility.GetDateTime(model.date);
                var nextToday   = DateTime.Now.AddDays(3);
                var persianDate = DateUtility.GetPersianDate(date);

                using (var db = new KiaGalleryContext())
                {
                    var food = db.FoodRegistration.Where(x => DbFunctions.TruncateTime(x.Date) == DbFunctions.TruncateTime(date)).ToList();

                    var foodName               = db.FoodCensus.Where(x => DbFunctions.TruncateTime(x.Date) == DbFunctions.TruncateTime(date)).Select(x => x.FoodName).FirstOrDefault();
                    var foodWithoutRice        = db.FoodRegistration.Where(x => DbFunctions.TruncateTime(x.Date) == DbFunctions.TruncateTime(date) && x.FoodWithoutRice == true).Count();
                    var registerFoodCount      = db.FoodRegistration.Where(x => DbFunctions.TruncateTime(x.Date) == DbFunctions.TruncateTime(date) && x.Food == true).Count();
                    var foodSettingCount       = int.Parse(db.FoodSetting.SingleOrDefault(x => x.Key == FoodSetting.KeyFoodCount)?.Value);
                    var foodSum                = registerFoodCount + foodSettingCount;
                    var registerAppetizerCount = db.FoodRegistration.Where(x => DbFunctions.TruncateTime(x.Date) == DbFunctions.TruncateTime(date) && x.Appertizer == true).Count();
                    var appetizerSettingCount  = int.Parse(db.FoodSetting.SingleOrDefault(x => x.Key == FoodSetting.KeyAppetizerCount)?.Value);
                    var apertizerSum           = registerAppetizerCount + appetizerSettingCount;
                    var messageFood            = db.FoodCensus.Where(x => DbFunctions.TruncateTime(x.Date) == DbFunctions.TruncateTime(date)).Select(x => x.TypeFood).SingleOrDefault();


                    if (date > DateTime.Now && date <= nextToday)
                    {
                        var numbers = new List <string>()
                        {
                            "09193121247", "09120815107", "09124254257"
                        };
                        if (messageFood == true)
                        {
                            Task.Factory.StartNew(() =>
                            {
                                NikSmsWebServiceClient.SendSmsNik("اصلاحیه غذا؛ \n اطلاعات غذا به تاریخ " + persianDate + "به شرح ذیل تغییر یافت.\n نام غذا:" + foodName + "\n تعداد غذا بدون برنج برای هر نفر: " + foodWithoutRice + "\n تعداد غذا با برنج برای هر نفر: " + foodSum + "\n تعداد سالاد به تعداد نفرات: " + apertizerSum + " \n با تشکر", numbers);
                            });
                        }
                        else
                        {
                            Task.Factory.StartNew(() =>
                            {
                                NikSmsWebServiceClient.SendSmsNik("اصلاحیه غذا؛ \n اطلاعات غذا به تاریخ " + persianDate + "به شرح ذیل تغییر یافت.\n نام غذا:" + foodName + "\n تعداد غذا برای هر نفر: " + foodSum + "\n تعداد سالاد به تعداد نفرات: " + apertizerSum + " \n با تشکر", numbers);
                            });
                        }
                    }
                    else
                    {
                        response = new Response()
                        {
                            status  = 200,
                            message = "عملیات با موفقیت  انجام شد و پیامک در روز موعد ارسال خواهد شد."
                        };
                        return(Json(response, JsonRequestBehavior.AllowGet));
                    }
                }
                response = new Response()
                {
                    status  = 200,
                    message = "عملیات با موفقیت انجام شد و پیام ارسال گردید."
                };
            }
            catch (Exception ex)
            {
                response = Core.GetExceptionResponse(ex);
            }
            return(Json(response, JsonRequestBehavior.AllowGet));
        }