Esempio n. 1
0
        public dynamic GetDefaultInfo()
        {
            WorkingDay model = new WorkingDay();

            try
            {
                model = _workingDayService.GetQueryable().FirstOrDefault();
            }
            catch (Exception ex)
            {
                LOG.Error("GetInfo", ex);
                Dictionary <string, string> Errors = new Dictionary <string, string>();
                Errors.Add("Generic", "Error " + ex);

                return(Json(new
                {
                    Errors
                }, JsonRequestBehavior.AllowGet));
            }

            return(Json(new
            {
                model.Id,
                model.Code,
                model.Name,
                model.IsEnabled,
                model.MinCheckIn,
                model.CheckIn,
                model.MaxCheckIn,
                model.BreakOut,
                model.BreakIn,
                model.MinCheckOut,
                model.CheckOut,
                model.MaxCheckOut,
                model.CheckInTolerance,
                model.CheckOutTolerance,
                model.WorkInterval,
                model.BreakInterval//,
                //  model.Errors
            }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 2
0
        public dynamic GetListWorkingDay(string _search, long nd, int rows, int?page, string sidx, string sord, int id, string filters = "")
        {
            // Construct where statement
            string strWhere = GeneralFunction.ConstructWhere(filters);
            string filter   = null;

            GeneralFunction.ConstructWhereInLinq(strWhere, out filter);
            if (filter == "")
            {
                filter = "true";
            }

            // Get Data
            var q = _workingDayService.GetQueryable().Include("WorkingTime").Where(x => x.WorkingTimeId == id);

            var query = (from model in q
                         select new
            {
                model.Id,
                model.Code,
                model.Name,
                model.IsEnabled,
                model.MinCheckIn,
                model.CheckIn,
                model.MaxCheckIn,
                model.BreakOut,
                model.BreakIn,
                model.MinCheckOut,
                model.CheckOut,
                model.MaxCheckOut,
                model.CheckInTolerance,
                model.CheckOutTolerance,
                model.WorkInterval,
                model.BreakInterval,
                model.CreatedAt,
                model.UpdatedAt,
            }).Where(filter).OrderBy(sidx + " " + sord);              //.ToList();

            var list = query.AsEnumerable();

            var pageIndex    = Convert.ToInt32(page) - 1;
            var pageSize     = rows;
            var totalRecords = query.Count();
            var totalPages   = (int)Math.Ceiling((float)totalRecords / (float)pageSize);

            // default last page
            if (totalPages > 0)
            {
                if (!page.HasValue)
                {
                    pageIndex = totalPages - 1;
                    page      = totalPages;
                }
            }

            list = list.Skip(pageIndex * pageSize).Take(pageSize);

            return(Json(new
            {
                total = totalPages,
                page = page,
                records = totalRecords,
                rows = (
                    from model in list
                    select new
                {
                    id = model.Id,
                    cell = new object[] {
                        model.Id,
                        model.Code,
                        model.Name,
                        model.IsEnabled,
                        model.MinCheckIn,
                        model.CheckIn,
                        model.MaxCheckIn,
                        model.BreakOut,
                        model.BreakIn,
                        model.MinCheckOut,
                        model.CheckOut,
                        model.MaxCheckOut,
                        model.CheckInTolerance,
                        model.CheckOutTolerance,
                        model.WorkInterval,
                        model.BreakInterval,
                        model.CreatedAt,
                        model.UpdatedAt,
                    }
                }).ToArray()
            }, JsonRequestBehavior.AllowGet));
        }