コード例 #1
0
        public IEnumerable <SYS_FunctionPermissionsDto> GetFunctionPermissionsByGroupCode(string groupCode)
        {
            List <SYS_FunctionPermissionsDto> listOfFunctionPermissions = new List <SYS_FunctionPermissionsDto>();
            List <sy_operas> listOfRight = this.GetListOfRights();

            //1. Get all functions for group
            using (BaseDao context = new BaseDao())
            {
                IQueryable <sy_functions> functions = context.sy_functions.AsQueryable();
                foreach (sy_functions item in functions)
                {
                    SYS_FunctionPermissionsDto newFunction = new SYS_FunctionPermissionsDto()
                    {
                        FunctionPermissionID = Guid.NewGuid(),
                        GroupCode            = groupCode,
                        FunctionID           = item.ID,
                        FunctionCode         = item.FunctionID,
                        FunctionNameVN       = item.Name1,
                        FunctionNameEL       = item.Name2,
                        FunctionNameJP       = item.Name3,
                    };
                    listOfFunctionPermissions.Add(newFunction);
                }
            }
            //--------------------------------------------------------------------------------
            //2. Assign Function's permission
            IQueryable <ms_permissionsassign> listofFunctionAssign = this.GetExsitingFunctionPermission(groupCode);

            foreach (ms_permissionsassign ms_permissionsassign in listofFunctionAssign)
            {
                sy_functionmapping sy_functionmapping = this.GetFunctionMapping(ms_permissionsassign.MappingID);
                if (sy_functionmapping != null)
                {
                    SYS_FunctionPermissionsDto sys_FunctionPermission = listOfFunctionPermissions.Where(c => c.FunctionCode == sy_functionmapping.FunctionID).FirstOrDefault();
                    if (sys_FunctionPermission != null)
                    {
                        sys_FunctionPermission.MappingID = ms_permissionsassign.MappingID;
                        sy_operas operate = listOfRight.Where(c => c.OperID == sy_functionmapping.OperID).FirstOrDefault();
                        if (operate != null)
                        {
                            sys_FunctionPermission.Add    = (operate.Name2 == "Add");
                            sys_FunctionPermission.All    = (operate.Name2 == "All");
                            sys_FunctionPermission.Close  = (operate.Name2 == "Close");
                            sys_FunctionPermission.Delete = (operate.Name2 == "Delete");
                            sys_FunctionPermission.Edit   = (operate.Name2 == "Edit");
                            sys_FunctionPermission.Export = (operate.Name2 == "Export");
                            sys_FunctionPermission.Import = (operate.Name2 == "Import");
                            sys_FunctionPermission.Lock   = (operate.Name2 == "Lock");
                            sys_FunctionPermission.Open   = (operate.Name2 == "Open");
                            sys_FunctionPermission.Print  = (operate.Name2 == "Print");
                            sys_FunctionPermission.View   = (operate.Name2 == "View");
                        }
                    }
                }
            }

            return(listOfFunctionPermissions);
        }
コード例 #2
0
 public void UpdateFunctionPermissions(SYS_FunctionPermissionsDto updateFunctionPermission)
 {
     new SYS_FunctionPermissionsDao().UpdateFunctionPermissions(updateFunctionPermission);
 }
コード例 #3
0
        public void UpdateFunctionPermissions(SYS_FunctionPermissionsDto functionPermissionDto)
        {
            // 1 Insert/Delete ms_permissionassign
            bool             isRight = false;
            int              mappID;
            List <sy_operas> listOfRight = this.GetListOfRights();
            sy_operas        rightChange = listOfRight.Where(c => c.Name2 == functionPermissionDto.PropertiesChange).FirstOrDefault();

            // Get mappID
            if (rightChange != null)
            {
                mappID = this.GetFunctionMappingID(functionPermissionDto.FunctionCode, rightChange.OperID);
                if (functionPermissionDto.PropertiesChange == "All")
                {
                    isRight = functionPermissionDto.All;
                }
                if (functionPermissionDto.PropertiesChange == "Add")
                {
                    isRight = functionPermissionDto.Add;
                }
                if (functionPermissionDto.PropertiesChange == "Close")
                {
                    isRight = functionPermissionDto.Close;
                }
                if (functionPermissionDto.PropertiesChange == "Delete")
                {
                    isRight = functionPermissionDto.Delete;
                }

                if (functionPermissionDto.PropertiesChange == "Edit")
                {
                    isRight = functionPermissionDto.Edit;
                }
                if (functionPermissionDto.PropertiesChange == "Export")
                {
                    isRight = functionPermissionDto.Export;
                }

                if (functionPermissionDto.PropertiesChange == "Import")
                {
                    isRight = functionPermissionDto.Import;
                }
                if (functionPermissionDto.PropertiesChange == "Lock")
                {
                    isRight = functionPermissionDto.Lock;
                }
                if (functionPermissionDto.PropertiesChange == "Open")
                {
                    isRight = functionPermissionDto.Open;
                }
                if (functionPermissionDto.PropertiesChange == "Print")
                {
                    isRight = functionPermissionDto.Print;
                }
                if (functionPermissionDto.PropertiesChange == "View")
                {
                    isRight = functionPermissionDto.View;
                }

                if (isRight)
                {
                    // Insert ms_permissionassign
                    this.InsertMs_Permissionsassign(new ms_permissionsassign()
                    {
                        MappingID = mappID, GroupCode = functionPermissionDto.GroupCode
                    });
                }
                else
                {
                    // Delete ms_permissionassign
                    this.DeleteMs_Permissionsassign(new ms_permissionsassign()
                    {
                        MappingID = mappID, GroupCode = functionPermissionDto.GroupCode
                    });
                }
            }
        }