コード例 #1
0
        /// <summary>
        /// 更改密码
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public ChangePasswordResponse ChangePassword(ChangePasswordRequest request)
        {
            var response = new ChangePasswordResponse();

            if (request.OldPassword.IsNullOrEmpty())
            {
                response.IsSuccess   = false;
                response.MessageCode = "1";
                response.MessageText = "旧密码不能为空";
                return(response);
            }

            if (request.NewPassword.IsNullOrEmpty())
            {
                response.IsSuccess   = false;
                response.MessageCode = "2";
                response.MessageText = "新密码不能为空";
                return(response);
            }

            try
            {
                var entity = _userInfoRepository.Find <UserInfoPo>(e => e.IsValid == 1 && e.Id == request.UserId);

                if (entity == null)
                {
                    response.IsSuccess   = false;
                    response.MessageCode = "2";
                    response.MessageText = "用户不存在";
                    return(response);
                }

                if (entity.Password != request.OldPassword.GetMd5())
                {
                    response.IsSuccess   = false;
                    response.MessageCode = "3";
                    response.MessageText = "旧密码有误";
                    return(response);
                }

                entity.Password = request.NewPassword.GetMd5();

                EntityLogger.UpdateEntity(entity);

                _userInfoRepository.UpdateColumns(entity, e => new
                {
                    e.Password,
                    e.UpdateUserId,
                    e.UpdateTime
                });
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("更改密码出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #2
0
        /// <summary>
        /// 保存应用授权Token
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveAppIdAuthResponse SaveAppIdAuthToken(SaveAppIdAuthRequest request)
        {
            var response = new SaveAppIdAuthResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "1";
                response.MessageText = "应用授权信息不存在";
                return(response);
            }
            try
            {
                var entity = request.Entity.As <AppIdAuthPo>();
                if (entity.Id == 0)
                {
                    if (_appIdAuthTokenRepository.Any <AppIdAuthPo>(e => e.IsValid == 1 && e.AppId == entity.AppId))
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "-1";
                        response.MessageText = "应用标识不能重复";
                        return(response);
                    }
                    EntityLogger.CreateEntity(entity);

                    entity.Id = _appIdAuthTokenRepository.InsertReturnIdentity(entity);
                }
                else
                {
                    var entitytemp = _appIdAuthTokenRepository.FindSingle <AppIdAuthPo>(entity.Id);

                    if (entitytemp == null)
                    {
                        throw new Exception("更新应用授权信息不存在");
                    }
                    EntityLogger.UpdateEntity(entity);
                    _appIdAuthTokenRepository.UpdateIgnoreColumns(entity, e => new
                    {
                        e.IsValid,
                        e.CreateTime,
                        e.CreateUserId,
                        e.SecretKey,
                        e.PrivateKey,
                        e.PublicKey
                    });
                }

                var key = entity.AppId.AddCachePrefix("AppIdAuth");

                CacheManager.RedisDefault.Del(key);
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("保存应用授权信息出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #3
0
        /// <summary>
        /// 删除系统栏目
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public DelResponse Del(DelReqeust request)
        {
            var response = new DelResponse();

            try
            {
                var entity = _systemNavbarRepository.Find <SystemNavbarPo>(e => e.IsValid == 1 && e.Id == request.Id);

                if (entity == null)
                {
                    throw new Exception("删除系统栏目不存在");
                }

                EntityLogger.UpdateEntity(entity);

                entity.IsValid = 0;

                _systemNavbarRepository.UpdateColumns <SystemNavbarPo>(entity, (e) => new { e.IsValid, e.UpdateTime, e.UpdateUserId });
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();
                LogManager.LogicLogger.ErrorFormat("删除系统栏目出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #4
0
        /// <summary>
        /// 删除用户角色关联
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public DelUserRoleJoinResponse DelUserRoleJoin(DelUserRoleJoinRequest request)
        {
            var response = new DelUserRoleJoinResponse();

            try
            {
                var entity = _userRoleJoinRepository.Find <UserRoleJoinPo>(e => e.IsValid == 1 && e.Id == request.Id);

                if (entity == null)
                {
                    throw new Exception("删除用户角色关联不存在");
                }

                entity.IsValid = 0;
                EntityLogger.UpdateEntity(entity);
                _userRoleJoinRepository.UpdateColumns(entity, e => new
                {
                    e.IsValid,
                    e.UpdateTime,
                    e.UpdateUserId
                });
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("删除用户角色关联出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #5
0
        /// <summary>
        /// 更新启用状态
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public UpdateStatusResponse UpdateStatus(UpdateStatusRequest request)
        {
            var response = new UpdateStatusResponse();

            try
            {
                var entity = _appIdAuthTokenRepository.Find <AppIdAuthPo>(e => e.IsValid == 1 && e.Id == request.Id);

                if (entity == null)
                {
                    throw new Exception("修改应用授权不存在");
                }

                entity.Status = request.Status;
                EntityLogger.UpdateEntity(entity);

                _appIdAuthTokenRepository.UpdateColumns(entity, (e) => new { e.Status, e.UpdateTime, e.UpdateUserId });

                var key = entity.AppId.AddCachePrefix("AppIdAuth");

                CacheManager.RedisDefault.Del(key);
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("更新启用状态出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #6
0
        /// <summary>
        /// 删除应用项目
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public DelAppProjectResponse DelAppProject(DelAppProjectRequest request)
        {
            var response = new DelAppProjectResponse();

            try
            {
                var entity = _appProjectRepository.Find <AppProjectPo>(e => e.IsValid == 1 && e.Id == request.Id);

                if (entity == null)
                {
                    throw new Exception("删除应用项目不存在");
                }
                EntityLogger.UpdateEntity(entity);
                entity.IsValid = 0;

                _appProjectRepository.UpdateColumns(entity, e => new
                {
                    e.IsValid,
                    e.UpdateTime,
                    e.UpdateUserId
                });
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("");
            }

            return(response);
        }
コード例 #7
0
        /// <summary>
        /// 保存系统配置
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveSysAppSettingResponse SaveSysAppSetting(SaveSysAppSettingReqeust request)
        {
            var response = new SaveSysAppSettingResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "1";
                response.MessageText = "系统配置不能为空";
                return(response);
            }

            try
            {
                var entity = request.Entity.As <SystemAppSettingsPo>();
                if (entity.Id == 0)
                {
                    if (!_systemAppSettingsRepository.Any <SystemAppSettingsPo>(e => e.IsValid == 1 && e.KeyWord == entity.KeyWord))
                    {
                        EntityLogger.CreateEntity(entity);

                        _systemAppSettingsRepository.InsertReturnIdentity(entity);
                    }
                    else
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "2";
                        response.MessageText = "Key已经存在";

                        return(response);
                    }
                }
                else
                {
                    EntityLogger.UpdateEntity(entity);

                    _systemAppSettingsRepository.UpdateIgnoreColumns(entity, e => new
                    {
                        e.IsValid,
                        e.CreateUserId,
                        e.CreateTime
                    });
                }

                //更新缓存
                var cachekey = entity.KeyWord.AddCachePrefix("systemappsetting");
                CacheManager.RedisDefault.Del(cachekey);
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();

                LogManager.LogicLogger.ErrorFormat("保存系统配置出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #8
0
        /// <summary>
        /// 保存部门
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveDepartmentResponse SaveDeparment(SaveDepartmentRequest request)
        {
            var response = new SaveDepartmentResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "1";
                response.MessageText = "保存部门信息不存在";
                return(response);
            }

            try
            {
                var entity = request.Entity.As <DepartmentPo>();

                if (entity.Id == 0)
                {
                    #region 新增部门信息
                    if (_departmentRepository.Any <DepartmentPo>(e => e.IsValid == 1 && e.Name == request.Entity.Name))
                    {
                        throw new Exception("部门名称已存在");
                    }

                    EntityLogger.CreateEntity(entity);
                    entity.Id = _departmentRepository.InsertReturnIdentity(entity);
                    #endregion
                }
                else
                {
                    #region 更新部门信息
                    var entitytemp = _departmentRepository.FindSingle <DepartmentPo>(entity.Id);

                    if (entitytemp == null)
                    {
                        throw new Exception("更新部门信息不存在");
                    }

                    EntityLogger.UpdateEntity(entity);

                    _departmentRepository.UpdateIgnoreColumns(entity, e => new
                    {
                        e.IsValid,
                        e.CreateTime,
                        e.CreateUserId
                    });
                    #endregion
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();
                LogManager.LogicLogger.ErrorFormat("保存部门出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #9
0
        /// <summary>
        /// 保存系统栏目
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveResponse Save(SaveRequest request)
        {
            var response = new SaveResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "1";
                response.MessageText = "系统栏目参数不能为空";
                return(response);
            }

            try
            {
                var entity = request.Entity.As <SystemNavbarPo>();

                if (entity.Id == 0)
                {
                    #region 新增

                    EntityLogger.CreateEntity(entity);

                    response.Id = _systemNavbarRepository.InsertReturnIdentity <SystemNavbarPo>(entity);
                    #endregion
                }
                else
                {
                    #region 更新
                    var entitytemp = _systemNavbarRepository.FindSingle <SystemNavbarPo>(entity.Id);

                    if (entitytemp == null)
                    {
                        throw new Exception("更新系统栏目不存在");
                    }

                    EntityLogger.UpdateEntity(entity);

                    _systemNavbarRepository.UpdateIgnoreColumns(entity, e => new
                    {
                        e.IsValid,
                        e.CreateTime,
                        e.CreateUserId
                    });

                    #endregion
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();

                LogManager.LogicLogger.ErrorFormat("保存系统栏目出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #10
0
        /// <summary>
        /// 保存应用项目
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveAppProjectResponse SaveAppProject(SaveAppProjectRequest request)
        {
            var response = new SaveAppProjectResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = "参数不能为空";
                return(response);
            }
            try
            {
                var entity = request.Entity.As <AppProjectPo>();

                if (entity.Id == 0)
                {
                    if (_appProjectRepository.Any <AppProjectPo>(e => e.IsValid == 1 && e.ApplicationId == entity.ApplicationId))
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "2";
                        response.MessageText = "应用Id已存在";
                        return(response);
                    }

                    EntityLogger.CreateEntity(entity);
                    response.Id = _appProjectRepository.InsertReturnIdentity(entity);
                }
                else
                {
                    var entitytemp = _appProjectRepository.Find <AppProjectPo>(e => e.IsValid == 1 && e.Id == entity.Id);

                    if (entitytemp == null)
                    {
                        throw new Exception("更新项目不存在");
                    }

                    EntityLogger.UpdateEntity(entity);
                    _appProjectRepository.UpdateIgnoreColumns(entity, e => new
                    {
                        e.IsValid,
                        e.CreateUserId,
                        e.UpdateTime
                    });
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("");
            }

            return(response);
        }
コード例 #11
0
        /// <summary>
        /// 保存权限
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SavePermissionsResponse SavePermissions(SavePermissionsRequest request)
        {
            var response = new SavePermissionsResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "1";
                response.MessageText = "权限信息不能为空";
                return(response);
            }

            try
            {
                var entity = request.Entity.As <PermissionsPo>();

                if (entity.Id == 0)
                {
                    //新增权限
                    EntityLogger.CreateEntity(entity);

                    _permissionsRepository.InsertReturnIdentity(entity);
                }
                else
                {
                    #region 更新权限信息
                    var entitytemp = _permissionsRepository.FindSingle <PermissionsPo>(entity.Id);

                    if (entitytemp == null)
                    {
                        throw new Exception("更新权限信息不存在");
                    }

                    EntityLogger.UpdateEntity(entity);

                    _permissionsRepository.UpdateIgnoreColumns(entity, e => new
                    {
                        e.IsValid,
                        e.CreateTime,
                        e.CreateUserId
                    });
                    #endregion
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();

                LogManager.LogicLogger.ErrorFormat("保存权限出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #12
0
        /// <summary>
        /// 保存角色权限
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveRolePermissionsResponse SaveRolePermissions(SaveRolePermissionsRequest request)
        {
            var response = new SaveRolePermissionsResponse();

            request.PermissionsIds = request.PermissionsIds ?? new List <int>();

            try
            {
                var oldrolepjoinlist = _rolePermissionsJoinRepository.FindWhere <RolePermissionsJoinPo>(
                    e => e.IsValid == 1 &&
                    e.NavbarId == request.NavbarId &&
                    e.MenuId == request.MenuId &&
                    e.RoleId == request.RoleId);

                #region  除角色权限
                var delrolepjoin = oldrolepjoinlist.Where(e => !request.PermissionsIds.Contains(e.PermissionsId)).ToList();
                foreach (var item in delrolepjoin)
                {
                    item.IsValid = 0;
                    EntityLogger.UpdateEntity(item);

                    _rolePermissionsJoinRepository.UpdateColumns(item, e => new { e.IsValid, e.UpdateTime, e.UpdateUserId });
                }
                #endregion

                #region 新增角色权限
                var newrolepjoinlist = request.PermissionsIds.Where(e => oldrolepjoinlist.All(o => o.PermissionsId != e));

                foreach (var item in newrolepjoinlist)
                {
                    var entity = new RolePermissionsJoinPo
                    {
                        NavbarId      = request.NavbarId,
                        MenuId        = request.MenuId,
                        RoleId        = request.RoleId,
                        PermissionsId = item
                    };

                    EntityLogger.CreateEntity(entity);
                    _rolePermissionsJoinRepository.Insert(entity);
                }
                #endregion
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;

                LogManager.LogicLogger.ErrorFormat("保存角色权限出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #13
0
        /// <summary>
        /// 保存用户角色
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveUserRoleResponse SaveUserRole(SaveUserRoleRequest request)
        {
            var response = new SaveUserRoleResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = "用户角色不能为空";
                return(response);
            }

            try
            {
                var entity = request.Entity.As <UserRolePo>();

                if (entity.Id == 0)
                {
                    if (_userRoleRepository.Any <UserRolePo>(e => e.IsValid == 1 && e.Name == entity.Name))
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "-1";
                        response.MessageText = "用户角色不能重复";
                        return(response);
                    }

                    EntityLogger.CreateEntity(entity);
                    entity.Id = _userRoleRepository.InsertReturnIdentity(entity);
                }
                else
                {
                    var entitytemp = _userRoleRepository.FindSingle <UserRolePo>(entity.Id);

                    if (entitytemp == null)
                    {
                        throw new Exception("更新用户角色信息不存在");
                    }

                    EntityLogger.UpdateEntity(entity);
                    _userRoleRepository.UpdateIgnoreColumns(entity, e => new { e.IsValid, e.CreateTime, e.CreateUserId, });
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();
                LogManager.LogicLogger.ErrorFormat("保存用户角色出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #14
0
        /// <summary>
        /// 保存用户部门
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveUserDepartmentResponse SaveUserDepartment(SaveUserDepartmentRequest request)
        {
            var response = new SaveUserDepartmentResponse();

            try
            {
                var list = _userDepartmentJoinRepository.FindWhere <UserDepartmentJoinPo>(e => e.IsValid == 1 && e.UserId == request.UserId);


                if (list != null && list.Count > 0)
                {
                    var templist = list.Where(e => e.DepartmentId != request.DepartmentId);

                    foreach (var item in templist)
                    {
                        item.IsValid = 0;
                        EntityLogger.UpdateEntity(item);

                        _userDepartmentJoinRepository.UpdateColumns(item, e => new
                        {
                            e.IsValid,
                            e.UpdateUserId,
                            e.UpdateTime
                        });
                    }

                    if (request.DepartmentId == 0 || list.Any(e => e.DepartmentId == request.DepartmentId))
                    {
                        return(response);
                    }
                }

                //新增用户部门关系
                var entity = new UserDepartmentJoinPo
                {
                    UserId       = request.UserId,
                    DepartmentId = request.DepartmentId
                };

                EntityLogger.CreateEntity(entity);
                _userDepartmentJoinRepository.InsertReturnIdentity(entity);
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("保存用户部门出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #15
0
        /// <summary>
        /// 保存用户角色关联
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveUserRoleJoinResponse SaveUserRoleJoin(SaveUserRoleJoinRequest request)
        {
            var response = new SaveUserRoleJoinResponse();

            request.RoleIdList = request.RoleIdList ?? new List <int>();
            try
            {
                var olduserrolejoinlist = _userRoleJoinRepository.FindWhere <UserRoleJoinPo>(e => e.IsValid == 1 && e.UserId == request.UserId);

                #region  除角色关联
                var deluserrolejoin = olduserrolejoinlist.Where(e => !request.RoleIdList.Contains(e.RoleId)).ToList();

                foreach (var item in deluserrolejoin)
                {
                    item.IsValid = 0;
                    EntityLogger.UpdateEntity(item);

                    _userRoleJoinRepository.UpdateColumns(item, e => new { e.IsValid, e.UpdateTime, e.UpdateUserId });
                }
                #endregion

                #region 新增角色关联
                var newuserrolejoinlist = request.RoleIdList.Where(e => olduserrolejoinlist.All(o => o.RoleId != e));

                foreach (var item in newuserrolejoinlist)
                {
                    var entity = new UserRoleJoinPo
                    {
                        UserId = request.UserId,
                        RoleId = item
                    };

                    EntityLogger.CreateEntity(entity);
                    _userRoleJoinRepository.Insert(entity);
                }
                #endregion
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();
                LogManager.LogicLogger.ErrorFormat("保存用户角色关联出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #16
0
        /// <summary>
        /// 删除系统菜单
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public DelSystemMenuResponse DelSystemMenu(DelSystemMenuRequest request)
        {
            var response = new DelSystemMenuResponse();

            try
            {
                var list = _systemMenuRepository.UseStoredProcedure <SystemMenuPo>("proc_SystemMenuById_select", new { Id = request.Id });

                if (list != null && list.Count > 0)
                {
                    foreach (var item in list)
                    {
                        var entity = item;
                        EntityLogger.UpdateEntity(entity);
                        entity.IsValid = 0;

                        _systemMenuRepository.UpdateColumns(entity, e => new
                        {
                            e.IsValid,
                            e.UpdateTime,
                            e.UpdateUserId
                        });
                    }
                }
                else
                {
                    throw new Exception("删除系统菜单不存在");
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();

                LogManager.LogicLogger.ErrorFormat("删除系统菜单出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #17
0
        /// <summary>
        /// 保存用户信息
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveUserInfoResponse SaveUserInfo(SaveUserInfoRequest request)
        {
            var response = new SaveUserInfoResponse();

            if (request.UserInfoEntity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "1";
                response.MessageText = "用户信息不能为空";
                return(response);
            }

            try
            {
                var entity = request.UserInfoEntity.As <UserInfoPo>();

                if (entity.Id == 0)
                {
                    #region 新增
                    if (_userInfoRepository.Any <UserInfoPo>(e => e.IsValid == 1 && e.LoginName == entity.LoginName))
                    {
                        throw new Exception("账号已经存在");
                    }

                    if (_userInfoRepository.Any <UserInfoPo>(e => e.IsValid == 1 && e.Email == entity.Email))
                    {
                        throw new Exception("邮箱已经存在");
                    }

                    EntityLogger.CreateEntity(entity);

                    entity.Id = _userInfoRepository.InsertReturnIdentity(entity);
                    #endregion
                }
                else
                {
                    #region 更新
                    var entitytemp = _userInfoRepository.FindSingle <UserInfoPo>(entity.Id);

                    if (entitytemp == null)
                    {
                        throw new Exception("更新用户信息不存在");
                    }

                    EntityLogger.UpdateEntity(entity);

                    _userInfoRepository.UpdateIgnoreColumns(entity, e => new { e.IsValid, e.CreateTime, e.CreateUserId, e.HeadimgUrl });
                    #endregion
                }

                response.UserInfoEntity = entity.As <UserInfoDto>();
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("登录查询出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }

            return(response);
        }
コード例 #18
0
        /// <summary>
        /// 保存用户授权Id
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveUserAppIdResponse SaveUserAppId(SaveUserAppIdRequest request)
        {
            var response = new SaveUserAppIdResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = "参数不能为空";
                return(response);
            }

            try
            {
                var entity = request.Entity.As <UserAppIdAuthPo>();

                if (entity.Id == 0)
                {
                    if (_userApIdAuthRepository.Any <UserAppIdAuthPo>(e => e.IsValid == 1 && e.UserId == entity.UserId && e.AppId == entity.AppId))
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "-1";
                        response.MessageText = "不能重复授权";
                        return(response);
                    }

                    EntityLogger.CreateEntity(entity);

                    _userApIdAuthRepository.Insert(entity);
                }
                else
                {
                    var entitytemp = _userApIdAuthRepository.Find <UserAppIdAuthPo>(e => e.IsValid == 1 && e.Id == entity.Id);;

                    if (entitytemp == null)
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "-1";
                        response.MessageText = "更新不存在";
                        return(response);
                    }

                    EntityLogger.UpdateEntity(entity);

                    _userApIdAuthRepository.UpdateIgnoreColumns(entity, e => new
                    {
                        e.IsValid,
                        e.CreateTime,
                        e.CreateUserId,
                    });
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat(new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
コード例 #19
0
        /// <summary>
        /// 保存秘钥
        /// </summary>
        /// <param name="request">参数</param>
        /// <returns></returns>
        public SaveSecretKeyResponse SaveSecretKey(SaveSecretKeyRequest request)
        {
            var response = new SaveSecretKeyResponse();

            try
            {
                if (request.Entity == null || request.Entity.Id == 0)
                {
                    response.IsSuccess   = false;
                    response.MessageCode = "1";
                    response.MessageText = "参数不能为空";
                    return(response);
                }

                var entitytemp = _appIdAuthTokenRepository.FindSingle <AppIdAuthPo>(request.Entity.Id);

                if (entitytemp == null)
                {
                    response.IsSuccess   = false;
                    response.MessageCode = "2";
                    response.MessageText = "修改不存在";
                    return(response);
                }

                entitytemp.SecretKey  = request.Entity.SecretKey;
                entitytemp.PrivateKey = request.Entity.PrivateKey;
                entitytemp.PublicKey  = request.Entity.PublicKey;

                EntityLogger.UpdateEntity(entitytemp);

                if (entitytemp.EncryptionType == 3)
                {
                    #region 检查秘钥是否合法
                    var testtxt = "mayiboy";

                    if (RsaCryption.Decrypt(request.Entity.PrivateKey, RsaCryption.Encrypt(request.Entity.PublicKey, testtxt)) != testtxt)
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "4";
                        response.MessageText = "非对称加密有误";
                        return(response);
                    }
                    #endregion

                    _appIdAuthTokenRepository.UpdateColumns(entitytemp, e => new
                    {
                        e.UpdateUserId,
                        e.UpdateTime,
                        e.PrivateKey,
                        e.PublicKey
                    });
                }
                else
                {
                    #region 检查秘钥是否合法
                    if (entitytemp.EncryptionType == 1 && entitytemp.SecretKey.Length < 8)
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "3";
                        response.MessageText = "秘钥长度不能小于8";
                        return(response);
                    }
                    else if (entitytemp.EncryptionType == 2 && entitytemp.SecretKey.Length < 32)
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "4";
                        response.MessageText = "秘钥长度不能小于32";
                        return(response);
                    }
                    #endregion

                    _appIdAuthTokenRepository.UpdateColumns(entitytemp, e => new
                    {
                        e.UpdateUserId,
                        e.UpdateTime,
                        e.SecretKey,
                    });
                }

                var key = entitytemp.AppId.AddCachePrefix("AppIdAuth");

                CacheManager.RedisDefault.Del(key);
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.Message;
                LogManager.LogicLogger.ErrorFormat("保存秘钥出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }