Beispiel #1
0
 /// <summary>
 /// 角色删除
 /// </summary>
 /// <param name="Parameter"></param>
 /// <returns></returns>
 public BaseResponse <bool> RoleInfoDelete(DeleteRoleParameter Parameter)
 {
     if (ValidateData <DeleteRoleParameter>(Parameter))
     {
         return(roleManager.DeleteRoleInfo(Parameter));
     }
     else
     {
         BaseResponse <bool> result = new BaseResponse <bool>();
         result.IsSuccessful = false;
         result.Code         = "001281";
         LogHelper.WriteLog(string.Format("未通过安全验证:({0}:{1}", result.Code, result.Reason));
         return(result);
     }
 }
Beispiel #2
0
        /// <summary>
        /// 角色删除
        /// </summary>
        /// <param name="Parameter"></param>
        /// <returns></returns>
        public BaseResponse <bool> DeleteRoleInfo(DeleteRoleParameter Parameter)
        {
            BaseResponse <bool> result = new BaseResponse <bool>();
            Dictionary <EntityBase, EntityState> dicOperator = new Dictionary <EntityBase, EntityState>();

            try
            {
                if (Parameter.RoleID.Count == 0)
                {
                    result.IsSuccessful = false;
                    result.Code         = "003982";
                    return(result);
                }

                if (roleRepository
                    .GetDatas <Role>(p => Parameter.RoleID.Contains(p.RoleID) &&
                                     p.IsDeault == 1, true)
                    .Any())
                {
                    result.IsSuccessful = false;
                    result.Code         = "003992";
                    return(result);
                }
                if (userRepository
                    .GetDatas <User>(p => p.IsDeleted == false &&
                                     Parameter.RoleID.Contains(p.RoleID), true)
                    .Any())
                {
                    result.IsSuccessful = false;
                    result.Code         = "004002";
                    return(result);
                }

                List <Role> roleList = roleRepository
                                       .GetDatas <Role>(p => Parameter.RoleID.Contains(p.RoleID), true).ToList();

                foreach (var role in roleList)
                {
                    dicOperator.Add(role, EntityState.Deleted);
                    //修改:王龙杰 2017-09-27 根据RoleCode关联RoleModule
                    var list = roleModuleRepository
                               .GetDatas <RoleModule>(p => p.RoleCode == role.RoleCode, false);
                    foreach (var item in list)
                    {
                        dicOperator.Add(item, EntityState.Deleted);
                    }
                }

                OperationResult operationResult = roleRepository.TranMethod(dicOperator);
                if (operationResult.ResultType == EnumOperationResultType.Success)
                {
                    result.IsSuccessful = true;
                    return(result);
                }
                else
                {
                    result.IsSuccessful = false;
                    result.Code         = "004011";
                    return(result);
                }
            }
            catch (Exception e)
            {
                LogHelper.WriteLog(e);
                result.IsSuccessful = false;
                result.Code         = "004011";
                return(result);
            }
        }