Esempio n. 1
0
        public ActionResult AddUser([FromBody] AddUserInfoDto userInfo)
        {
            var response = new ResponseDataHelper <UserInfoDto>();

            try
            {
                //var user=
                var user = _userLogic.GetUserByLoginName(userInfo.LoginName);
                if (user == null)
                {
                    user = _userLogic.AddUser(userInfo.ToUser());
                    response.ResponseData = UserInfoDto.CreateFromUser(user);
                }
                else
                {
                    response.ResponseCode    = -1;
                    response.ResponseMessage = "登录名已存在";
                }
            }
            catch (Exception e)
            {
                response.ResponseCode    = -1;
                response.ResponseMessage = e.Message;
            }
            return(Json(response));
        }
Esempio n. 2
0
        /// <summary>
        /// 添加用户信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <bool> PostUserAsync(AddUserInfoDto input, string openId, string sessionKey)
        {
            Wx_UserInfo user = iMapper.Map <Wx_UserInfo>(input);

            user.ID = IdHelper.CreateGuid();

            if (openId != null)
            {
                user.OpenId = openId;
                if (input.EncryptedData != "" && input.IV != "")
                {
                    user.MobilePhone = WxHelper.getPhoneNumber(input.EncryptedData, input.IV, sessionKey);
                }
            }

            var result = 0;

            return(await Task.Run(() =>
            {
                var isAny = db.Queryable <Wx_UserInfo>().Where(a => a.OpenId == openId).Any();

                if (isAny == false)
                {
                    result = db.Insertable(user).ExecuteCommand();
                }
                else
                {
                    if (user.MobilePhone == null)
                    {
                        throw new Exception("没有获取到用户手机号码!");
                    }

                    result = db.Updateable <Wx_UserInfo>().SetColumns(a => new Wx_UserInfo()
                    {
                        MobilePhone = user.MobilePhone, FollowDate = DateTime.Now
                    })
                             .Where(a => a.OpenId == openId).ExecuteCommand();

                    if (result > 0)
                    {
                        if (input.TeamId != null)
                        {
                            var userId = db.Queryable <Wx_UserInfo>().Where(a => a.OpenId == openId).First()?.ID;

                            db.Updateable <TeamMember>().SetColumns(a => new TeamMember()
                            {
                                MobilePhone = user.MobilePhone
                            }).Where(a => a.TeamId == input.TeamId && a.JoinedUserId == userId && a.IsDeleted == false).ExecuteCommand();
                        }
                    }
                }
                return result > 0;
            }));
        }
Esempio n. 3
0
        public async Task <IActionResult> PostUserAsync([FromBody] AddUserInfoDto input)
        {
            var tokenInfo  = GetTokenInfo();
            var openId     = tokenInfo.OpenId;
            var sessionKey = tokenInfo.SessionKey;

            try
            {
                var data = await _userService.PostUserAsync(input, openId, sessionKey);

                return(SuccessMsg());
            }
            catch (Exception err)
            {
                _logger.Error(typeof(UserController), "添加用户失败!", new Exception(err.Message));
                return(FailedMsg("添加用户失败!" + err.Message));
            }
        }
Esempio n. 4
0
 /// <summary>
 /// 添加用户信息
 /// </summary>
 /// <param name="input"></param>
 /// <param name="tokenHeader"></param>
 /// <returns></returns>
 public async Task <bool> PostUserAsync(AddUserInfoDto input, string openId, string sessionKey)
 {
     return(await _userDal.PostUserAsync(input, openId, sessionKey));
 }