Пример #1
0
        /// <summary>
        /// 录入日志信息
        /// </summary>
        /// <param name="userId">用户ID</param>
        /// <param name="info">信息</param>
        /// <param name="operation">操作</param>
        /// <param name="ips">操作IP</param>
        /// <returns></returns>
        public async Task <bool> SaveLogInfo(int userId, string info, int operation, string ips)
        {
            var result = false;

            _context.Add(new SysLogger
            {
                LoggerUser        = userId,
                LoggerDescription = info,
                LoggerOperation   = operation,
                LoggerCreateTime  = DateTime.Now,
                LoggerIps         = ips
            });

            var save = await _context.SaveChangesAsync();

            if (save > 0)
            {
                result = true;
            }
            else
            {
                result = false;
            }

            return(result);
        }
Пример #2
0
        public async Task <IActionResult> ConfirmPassword([Bind("UserName", "UserPwd", "ComfirmPwd")] PyRegisterUser registerUser)
        {
            if (ModelState.IsValid)
            {
                if (string.IsNullOrWhiteSpace(registerUser.UserPwd))
                {
                    this.MsgBox("密码不能为空!");
                    return(View(registerUser));
                }
                else if (string.IsNullOrWhiteSpace(registerUser.ComfirmPwd))
                {
                    this.MsgBox("确认密码不能为空!");
                    return(View(registerUser));
                }
                else if (registerUser.UserPwd != registerUser.ComfirmPwd)
                {
                    this.MsgBox("密码和确认密码不相同!");
                    return(View(registerUser));
                }
                var key = $"checkConfirmPwd{registerUser.UserName}";
                if (!_cache.TryGetValue <PyUserInfo>(key, out var checkUser))
                {
                    return(RedirectToAction(nameof(HomeController.Error), "Home", new { msg = "请求已过期,重新操作!" }));
                }

                var user = _context.InfoUser.Where(b => b.UserId == checkUser.UserId && b.UserEmail == checkUser.UserEmail).SingleOrDefault();
                if (user == null)
                {
                    _cache.Remove(key);
                    return(RedirectToAction(nameof(HomeController.Error), "Home", new { msg = "重置密码失败,请稍后重试!" }));
                }

                if (user.UserPwd == registerUser.UserPwd.Trim()._Md5())
                {
                    this.MsgBox("新密码与旧密码不能相同!请确认。");
                    return(View(registerUser));
                }

                user.UserPwd = registerUser.UserPwd.Trim()._Md5();
                var result = await _context.SaveChangesAsync();

                if (result > 0)
                {
                    _cache.Remove(key);
                    this.MsgBox("重置密码成功!");
                }
                else
                {
                    this.MsgBox("重置密码失败!");
                }
            }
            return(View(registerUser));
        }
Пример #3
0
 public async Task <string> RecordMessageBoard(string msg, string userName, string token)
 {
     if (!string.IsNullOrEmpty(msg))
     {
         var ip = this.GetUserIp();
         _context.InfoMessageBoard.Add(new InfoMessageBoard()
         {
             MessageBoardCreateTime = DateTime.Now,
             MessageBoardIp         = ip,
             MessageBoardUser       = userName ?? "蒙面人",
             MessageBoardContent    = msg
         });
         await _context.SaveChangesAsync();
     }
     return("提交成功");
 }
Пример #4
0
        public async Task <int> InsertAsync(TEntity entity)
        {
            await _Entities.AddAsync(entity);

            return(await _context.SaveChangesAsync());
        }
Пример #5
0
        public async Task <IActionResult> AreaInfoCreate([Bind("AreaCode,AreaName,AreaPid,AreaLevel,AreaCoord,AreaZipCode,AreaNote,UpAreaName,UpAreaPathId")] AreaInfo _areaInfo)
        {
            if (ModelState.IsValid)
            {
                #region 验证是否存在重复
                if (_context.InfoArea.Any(b => b.AreaName.ToUpper() == _areaInfo.AreaName.Trim().ToUpper() && b.AreaLevel.Equals(_areaInfo.AreaLevel)))//验证名称是否重复
                {
                    this.MsgBox("已存在相同的名称!");
                    return(View(_areaInfo));
                }
                else if (_context.InfoArea.Any(b => b.AreaCode.ToUpper() == _areaInfo.AreaCode.Trim().ToUpper()))//验证编号是否重复
                {
                    this.MsgBox("已存在相同的编号!");
                    return(View(_areaInfo));
                }
                #endregion
                var a1 = _context.InfoArea.Select(s => s.AreaId.ToString()).Max() ?? "";
                var b2 = _dataClass.GetSerialNumber(a1.ToString());
                var c3 = _dataClass.FormatCode(b2).ToInt();
                _areaInfo.AreaId = c3;
                if (_areaInfo.AreaLevel > 0)
                {
                    _areaInfo.AreaPathId = _areaInfo.UpAreaPathId + "" + _areaInfo.AreaId + "|";
                }
                else if (_areaInfo.AreaLevel == 0)
                {
                    _areaInfo.AreaPathId = "|" + _areaInfo.AreaId + "|";
                }

                InfoArea infoArea = new InfoArea
                {
                    AreaId      = _areaInfo.AreaId,
                    AreaCode    = _areaInfo.AreaCode.Trim(),
                    AreaName    = _areaInfo.AreaName.Trim(),
                    AreaPathId  = _areaInfo.AreaPathId,
                    AreaPid     = _areaInfo.AreaPid,
                    AreaLevel   = _areaInfo.AreaLevel,
                    AreaCoord   = _areaInfo.AreaCoord,
                    AreaZipCode = _areaInfo.AreaZipCode,
                    AreaNote    = _areaInfo.AreaNote
                };
                _context.Add(infoArea);
                var result = await _context.SaveChangesAsync();

                if (result > 0)
                {
                    this.MsgBox("提交成功!");
                    _context.SysLogger.Add(new SysLogger
                    {
                        LoggerCreateTime  = DateTime.Now,
                        LoggerDescription = $"{EmLogStatus.增加}地区{infoArea.AreaName}信息",
                        LoggerIps         = _MyUserInfo.UserIps,
                        LoggerOperation   = (int)EmLogStatus.增加,
                        LoggerUser        = _MyUserInfo.UserId
                    });
                    await _context.SaveChangesAsync();

                    Response.Redirect($"AreaInfoCreate?tag=add&level={_areaInfo.AreaLevel}&id={_areaInfo.AreaId}");
                }
                else
                {
                    this.MsgBox("提交失败!请稍后再试...");
                    return(View(_areaInfo));
                }
            }
            return(View(_areaInfo));
        }
Пример #6
0
        public async Task <JsonResult> Register([Bind("UserName,UserPwd,ComfirmPwd")] PyRegisterUser registerUser)
        {
            var data = new PyStudioPromptData();

            if (ModelState.IsValid)
            {
                #region 验证
                if (_context.InfoUser.Any(b => b.UserName.ToUpper().Equals(registerUser.UserName.Trim().ToUpper())))
                {
                    data.IsOK = 2;
                    data.Msg  = "已存在相同的账号!";
                    return(Json(data));
                }
                #endregion

                InfoUser infoUser = new InfoUser();
                infoUser.UserName       = registerUser.UserName.Trim();
                infoUser.UserNickName   = registerUser.UserName;
                infoUser.UserPwd        = registerUser.UserPwd.Trim()._Md5();
                infoUser.UserSex        = 3;
                infoUser.UserHeadPhoto  = "/images/default.png";
                infoUser.UserStatus     = (int)EmUserStatus.启用;
                infoUser.UserCreateTime = DateTime.Now;
                infoUser.UserIps        = this.GetUserIp();

                _context.Add(infoUser);

                var result = await _context.SaveChangesAsync();

                if (result > 0)
                {
                    data.IsOK = 1;
                    data.Msg  = "注册成功";
                    var _pyUserInfo = new PyUserInfo
                    {
                        UserId         = infoUser.UserId,
                        UserName       = infoUser.UserName,
                        UserNickName   = infoUser.UserNickName,
                        UserEmail      = infoUser.UserEmail,
                        UserTel        = infoUser.UserTel,
                        UserSex        = infoUser.UserSex,
                        UserIntroduce  = infoUser.UserIntroduce,
                        UserHeadPhoto  = infoUser.UserHeadPhoto,
                        UserBirthday   = infoUser.UserBirthday,
                        UserAddress    = infoUser.UserAddress,
                        UserBlog       = infoUser.UserBlog,
                        UserStatus     = infoUser.UserStatus,
                        UserCreateTime = infoUser.UserCreateTime,
                        UserLoginTime  = infoUser.UserLoginTime,
                        UserIps        = infoUser.UserIps
                    };
                    HttpContext.Session.Set <PyUserInfo>(HttpContext.Session.SessionKey(), _pyUserInfo);

                    #region 操作日志记录
                    _context.SysLogger.Add(new SysLogger
                    {
                        LoggerUser        = _pyUserInfo.UserId,
                        LoggerDescription = $"用户{_pyUserInfo.UserName} {EmLogStatus.注册} ",
                        LoggerOperation   = (int)EmLogStatus.注册,
                        LoggerCreateTime  = DateTime.Now,
                        LoggerIps         = _pyUserInfo.UserIps
                    });

                    _context.SysLogger.Add(new SysLogger
                    {
                        LoggerUser        = _pyUserInfo.UserId,
                        LoggerDescription = $"用户{_pyUserInfo.UserName} {EmLogStatus.登录} ",
                        LoggerOperation   = (int)EmLogStatus.登录,
                        LoggerCreateTime  = DateTime.Now,
                        LoggerIps         = _pyUserInfo.UserIps
                    });

                    await _context.SaveChangesAsync();

                    #endregion
                }
                else
                {
                    data.IsOK = 0;
                    data.Msg  = "注册失败!请联系客服";
                }
            }
            else
            {
                data.IsOK = 0;
                data.Msg  = "注册失败!请联系客服";
            }
            return(Json(data));
        }
        public async Task <JsonResult> UpHeadPhoto([Bind("UserId")] PyUserInfo pyUserInfo)
        {
            var data = new PyStudioPromptData();
            var file = Request.Form.Files.Where(b => b.Name == "myHeadPhoto" && b.ContentType.Contains("image")).SingleOrDefault();

            if (file == null)
            {
                data.Msg  = "请选择要上传的图片!";
                data.IsOK = 2;
                return(Json(data));
            }
            var maxSize = 1024 * 1024 * 4;

            if (file.Length > maxSize)
            {
                data.Msg  = "头像大小不能大于4M!";
                data.IsOK = 2;
                return(Json(data));
            }
            var fileExtend  = file.FileName.Substring(file.FileName.LastIndexOf('.'));
            var fileNewName = $"{DateTime.Now.ToString("yyyyMMddhhmmssfff")}{fileExtend}";
            var path        = Path.Combine($"{_hostingEnvironment.WebRootPath}/{_pySelfSetting.HeadPhotoPath}", fileNewName);

            using (var stream = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite))
            {
                await file.CopyToAsync(stream);
            }

            var viewPath = $"{_pySelfSetting.HeadPhotoPath}/{fileNewName}";
            var user     = _context.InfoUser.Where(b => b.UserId == _MyUserInfo.UserId).SingleOrDefault();

            if (user == null)
            {
                data.Msg  = "上传失败,请稍后再试!";
                data.IsOK = 0;
                return(Json(data));
            }
            user.UserHeadPhoto = viewPath;
            var result = await _context.SaveChangesAsync();

            if (result > 0)
            {
                _MyUserInfo.UserHeadPhoto = viewPath;
                HttpContext.Session.Set <PyUserInfo>(HttpContext.Session.SessionKey(), _MyUserInfo);
                data.Msg  = "上传成功!";
                data.IsOK = 1;
                _context.SysLogger.Add(new SysLogger
                {
                    LoggerUser        = _MyUserInfo.UserId,
                    LoggerDescription = $"用户{_MyUserInfo.UserName}{EmLogStatus.修改}头像",
                    LoggerOperation   = (int)EmLogStatus.修改,
                    LoggerCreateTime  = DateTime.Now,
                    LoggerIps         = this.GetUserIp()
                });
                await _context.SaveChangesAsync();
            }
            else
            {
                data.Msg  = "上传失败,请稍后再试!";
                data.IsOK = 0;
                return(Json(data));
            }

            return(Json(data));
        }
Пример #8
0
        public async Task <JsonResult> ModifyUserInfo([Bind("UserId,UserName,UserNickName,UserEmail,UserTel,UserIntroduce,UserBirthday,UserAddress,UserBlog")] PyUserInfo pyUserInfo)
        {
            var data = new PyStudioPromptData();

            if (ModelState.IsValid)
            {
                var userInfo = _context.InfoUser.Where(b => b.UserId.Equals(pyUserInfo.UserId)).FirstOrDefault();
                if (userInfo != null)
                {
                    userInfo.UserNickName  = pyUserInfo.UserNickName;
                    userInfo.UserEmail     = pyUserInfo.UserEmail;
                    userInfo.UserTel       = pyUserInfo.UserTel;
                    userInfo.UserIntroduce = pyUserInfo.UserIntroduce;
                    userInfo.UserBirthday  = pyUserInfo.UserBirthday;
                    userInfo.UserAddress   = pyUserInfo.UserAddress;
                    userInfo.UserBlog      = pyUserInfo.UserBlog;

                    _MyUserInfo.UserNickName  = pyUserInfo.UserNickName;
                    _MyUserInfo.UserEmail     = pyUserInfo.UserEmail;
                    _MyUserInfo.UserTel       = pyUserInfo.UserTel;
                    _MyUserInfo.UserIntroduce = pyUserInfo.UserIntroduce;
                    _MyUserInfo.UserBirthday  = pyUserInfo.UserBirthday;
                    _MyUserInfo.UserAddress   = pyUserInfo.UserAddress;
                    _MyUserInfo.UserBlog      = pyUserInfo.UserBlog;

                    var result = await _context.SaveChangesAsync();

                    if (result > 0)
                    {
                        HttpContext.Session.Set <PyUserInfo>(HttpContext.Session.SessionKey(), _MyUserInfo);
                        _MyUserInfo = HttpContext.Session.Get <PyUserInfo>(HttpContext.Session.SessionKey());

                        data.IsOK = 1;
                        data.Msg  = "修改成功";
                        _context.SysLogger.Add(new SysLogger
                        {
                            LoggerUser        = _MyUserInfo.UserId,
                            LoggerDescription = $"用户{_MyUserInfo.UserName}{EmLogStatus.修改}个人信息",
                            LoggerOperation   = (int)EmLogStatus.修改,
                            LoggerCreateTime  = DateTime.Now,
                            LoggerIps         = this.GetUserIp()
                        });
                        await _context.SaveChangesAsync();
                    }
                    else
                    {
                        data.IsOK = 0;
                        data.Msg  = "修改失败!请稍后再试...";
                        return(Json(data));
                    }
                }
                else
                {
                    data.IsOK = 0;
                    data.Msg  = "修改失败!请稍后再试...";
                    return(Json(data));
                }
            }
            else
            {
                data.IsOK = 0;
                data.Msg  = "修改失败!请稍后再试...";
                return(Json(data));
            }
            return(Json(data));
        }