示例#1
0
        /// <summary>
        /// ذخیره اطلاعات صفحه
        /// </summary>
        /// <param name="model">مدل حاوی اطلاعات صفحه</param>
        /// <returns>نتیجه ذخیره صفحه</returns>
        public JsonResult SavePage(BaseInformationViewModel model)
        {
            try
            {
                var keys = new string[] { BaseInformationKey.AboutUs,
                                          BaseInformationKey.eBusinessLaw,
                                          BaseInformationKey.Solicitorship,
                                          BaseInformationKey.ExportProduct,
                                          BaseInformationKey.HowToOrder,
                                          BaseInformationKey.TrackingOrder,
                                          BaseInformationKey.Delivery,
                                          BaseInformationKey.PaymentTerms,
                                          BaseInformationKey.ReturnPolicy,
                                          BaseInformationKey.Warranty };

                if (!keys.Any(x => x.ToLower() == model.key.ToLower()))
                {
                    return(Error("اطلاعات مورد نظر صحیح نیست."));
                }

                var currentUser = GetAuthenticatedUser();
                foreach (var item in model.translations)
                {
                    var entity = _context.BaseInformation.Where(x => x.Key.ToLower() == model.key.ToLower() && x.LanguageId == item.languageId).SingleOrDefault();
                    if (entity == null)
                    {
                        entity = new BaseInformation
                        {
                            Key          = model.key,
                            Value        = item.value.ToStandardPersian(),
                            LanguageId   = item.languageId,
                            ModifyUserId = currentUser.id,
                            ModifyDate   = GetDatetime(),
                            ModifyIp     = GetCurrentIp()
                        };

                        _context.BaseInformation.Add(entity);
                    }
                    else
                    {
                        entity.Key          = model.key;
                        entity.Value        = item.value.ToStandardPersian();
                        entity.ModifyUserId = currentUser.id;
                        entity.ModifyDate   = GetDatetime();
                        entity.ModifyIp     = GetCurrentIp();
                    }
                }


                _context.SaveChanges();

                return(Success("اطلاعات صفحه با موفقیت به روزرسانی شد."));
            }
            catch (Exception ex)
            {
                return(ServerError(ex));
            }
        }
示例#2
0
        /// <summary>
        /// دریافت اطلاعات پایه برنامه گزارش روزانه
        /// </summary>
        /// <param name="token">توکن کاربر</param>
        /// <returns>مقدارهای پایه شعبه کاربر صاحب توکن</returns>
        public JsonResult GetBaseData(string token)
        {
            Response response;

            using (var db = new KiaGalleryContext())
            {
                var branch = db.Token.Where(x => x.Code == token && x.Voided == false).Select(x => x.User.Branch).SingleOrDefault();

                if (branch != null)
                {
                    var baseInformarion = new BaseInformationViewModel();

                    baseInformarion.bankList = db.Bank.Where(x => x.BranchId == branch.Id && x.Active == true).OrderBy(x => x.Order).Select(x => new BankViewModel
                    {
                        id    = x.Id,
                        order = x.Order,
                        name  = x.Name
                    }).ToList();

                    baseInformarion.currencyList = db.Currency.Where(x => x.Active == true).OrderBy(x => x.Order).Select(x => new CurrencyViewModel
                    {
                        id    = x.Id,
                        order = x.Order,
                        name  = x.Name
                    }).ToList();

                    var date     = DateTime.Today;
                    var helper   = new PersianCalendar();
                    var month    = helper.GetMonth(date) == 1 ? 12 : helper.GetMonth(date) - 1;
                    var year     = month == 12 ? helper.GetYear(date) - 1 : helper.GetYear(date);
                    var fromDate = helper.ToDateTime(year, month, 1, 0, 0, 0, 0);
                    var toDate   = fromDate.AddMonths(2).AddDays(-1);

                    var calendarList = db.BranchCalendar.Where(x => x.BranchId == branch.Id && x.ReportDate >= fromDate && x.ReportDate <= toDate).Select(x => new
                    {
                        id     = x.Id,
                        date   = x.ReportDate,
                        status = x.DailyReportList.Count > 0 ? x.DailyReportList.FirstOrDefault().Status : CalendarStatus.None
                    }).ToList();

                    baseInformarion.calendarList = calendarList.Select(x => new CalendarViewModel
                    {
                        id      = x.id,
                        date    = DateUtility.GetPersianDate(x.date),
                        status  = x.status,
                        canEdit = (x.date > date.AddDays(-2) && x.date < date.AddDays(1))
                    }).ToList();

                    response = new Response()
                    {
                        status = 200,
                        data   = baseInformarion
                    };
                }
                else
                {
                    response = new Response()
                    {
                        status  = 403,
                        message = "شما دسترسی استفاده از برنامه را ندارید."
                    };
                }
            }

            return(Json(response, JsonRequestBehavior.AllowGet));
        }