Ejemplo n.º 1
0
        /// <summary>
        /// 根據目前登入者檢查是否有權限存取功能
        /// </summary>
        /// <param name="appFunctionId"></param>
        /// <returns></returns>
        public static bool CheckAuthorization(MasterMember loginUser, SiteEntities appFunction)
        {
            int appFunctionId = (int)appFunction;

            if (loginUser == null)
            {
                return(false);
            }

            if (loginUser != null && appFunctionId == 0)
            {
                return(true);
            }

            bool returnValue = false;

            //// 判斷使用者是否具有可以存取功能的角色,只要AdminValue大於0表示有此Menu
            var roles = from userRole in loginUser.AdminRoles
                        where userRole.AdminBar.AdminBarId == appFunctionId &&
                        userRole.AdminValue > 0
                        select userRole;

            if (roles.Count() > 0)
            {
                returnValue = true;
            }

            return(returnValue);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 根據目前登入者檢查是否有權限存取功能
        /// </summary>
        /// <param name="appFunctionId"></param>
        /// <returns></returns>
        public static bool CheckAuthorization(MasterMember loginUser, SiteEntities appFunction)
        {
            int appFunctionId = (int)appFunction;

            if (loginUser == null)
            {
                return false;
            }

            if (loginUser != null && appFunctionId == 0)
            {
                return true;
            }

            bool returnValue = false;

            //// 判斷使用者是否具有可以存取功能的角色,只要AdminValue大於0表示有此Menu
            var roles = from userRole in loginUser.AdminRoles
                        where userRole.AdminBar.AdminBarId == appFunctionId
                        && userRole.AdminValue > 0
                        select userRole;

            if (roles.Count() > 0)
            {
                returnValue = true;
            }

            return returnValue;
        }
Ejemplo n.º 3
0
        //ListSchedule? userId = 4131 & orgId = 8 & dateTime = 08 - 05 - 2015
        public ActionResult ListSchedule(int userId, int orgId, DateTime dateTime)
        {
            var db        = new SiteEntities();
            var schedules = new List <ScheduleViewModel>();

            schedules = (
                from user in db.Users
                join contact in db.Contacts
                on user.ContactId equals contact.Id
                join lookup in db.Lookups
                on user.RoleId equals lookup.Id
                join staffroster in db.StaffRosters
                on user.Id equals staffroster.StaffId
                join org_user in db.Org_User
                on user.Id equals org_user.UserId
                join org in db.Orgs
                on org_user.OrgId equals org.Id
                where (user.Id == userId) && (org.Id == orgId) && (DbFunctions.TruncateTime(staffroster.StartDate) == dateTime)
                select new ScheduleViewModel
            {
                startTime = staffroster.StartDate,
                endTime = staffroster.EndDate
            }).ToList();
            return(Json(schedules, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 4
0
        private string[] GetRolesBarList(MasterMember entity, SiteEntities siteEntities)
        {
            IList <string> list = new List <string>();

            foreach (SiteOperations operation in Enum.GetValues(typeof(SiteOperations)))
            {
                if (operation == SiteOperations.None)
                {
                    continue;
                }

                if (ACUtility.CheckAuthorization(entity, (int)siteEntities, (int)operation))
                {
                    list.Add(((int)operation).ToString());
                }
            }

            if (list.Count > 0)
            {
                return(list.ToArray());
            }
            else
            {
                return(new string[] { });
            }
        }
Ejemplo n.º 5
0
        public ActionResult ListSite()
        {
            var db    = new SiteEntities();
            var sites = new List <SiteViewModel>();

            sites = (from org in db.Orgs
                     join lookup in db.Lookups
                     on org.TypeId equals lookup.Id
                     where lookup.Description == "Site"
                     select new SiteViewModel
            {
                siteName = org.Name
                           //siteId
            }).ToList();

            return(Json(sites, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 6
0
        public ActionResult ListStaff(int siteId)
        {
            var db     = new SiteEntities();
            var staffs = new List <StaffViewModel>();

            staffs = (from org in db.Orgs
                      join org_user in db.Org_User
                      on org.Id equals org_user.OrgId
                      join user in db.Users
                      on org_user.UserId equals user.Id
                      join contact in db.Contacts
                      on user.ContactId equals contact.Id
                      join lookup in db.Lookups
                      on user.RoleId equals lookup.Id
                      where org.TypeId == 6 && lookup.Description != "parent" && org.Id == 8
                      select new StaffViewModel
            {
                staffName = contact.FirstName + " " + contact.LastName
            }).ToList();
            return(Json(staffs, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 7
0
 /// <summary>
 /// 根據目前登入者檢查是否有權限存取功能
 /// </summary>
 /// <param name="appFunctionId"></param>
 /// <returns></returns>
 public static bool CheckAuthorization(MasterMember loginUser, SiteEntities appFunction, SiteOperations operation)
 {
     return CheckAuthorization(loginUser, (int)appFunction, (int)operation);
 }
Ejemplo n.º 8
0
        private string[] GetRolesBarList(MasterMember entity , SiteEntities siteEntities)
        {
            IList<string> list = new List<string>();

            foreach (SiteOperations operation in Enum.GetValues(typeof(SiteOperations)))
            {
                if (operation == SiteOperations.None)
                {
                    continue;
                }

                if (ACUtility.CheckAuthorization(entity, (int)siteEntities, (int)operation))
                {
                    list.Add(((int)operation).ToString());
                }
            }

            if (list.Count > 0)
            {
                return list.ToArray();
            }
            else
            {
                return new string[] { };
            }
        }        
Ejemplo n.º 9
0
 /// <summary>
 /// 根據目前登入者檢查是否有權限存取功能
 /// </summary>
 /// <param name="appFunctionId"></param>
 /// <returns></returns>
 public static bool CheckAuthorization(MasterMember loginUser, SiteEntities appFunction, SiteOperations operation)
 {
     return(CheckAuthorization(loginUser, (int)appFunction, (int)operation));
 }