Example #1
0
        protected virtual ContentResult ApiResult(AppApiResult apiResult)
        {
            ContentResult result = new ContentResult();

            result.ContentEncoding = Encoding.UTF8;
            result.Content         = JsonHelper.NewtonsoftSerializer(apiResult);
            return(result);
        }
Example #2
0
        protected virtual ContentResult FailedResult(string message)
        {
            AppApiResult apiResult = new AppApiResult()
            {
                result  = "error",
                message = message,
                token   = UserContext?.Token
            };

            return(ApiResult(apiResult));
        }
Example #3
0
        protected virtual ContentResult ApiResult(bool successful, string message)
        {
            AppApiResult apiResult = new AppApiResult()
            {
                result = successful ? "success" : "error",
                //   errorcode = errorcode,
                message = message,
                token   = UserContext?.Token
            };

            return(ApiResult(apiResult));
        }
Example #4
0
        public ActionResult GetDirectMember()
        {
            List <Member> memberList = _memberManager.GetDirectMemberList(this.UserContext.UserId);
            AppApiResult  apiResult  = new AppApiResult()
            {
                result  = "success",
                message = "查询下级列表信息成功!",
                token   = this.UserContext.Token,
                data    = Mapper.Map <List <Member>, List <MemberAppDto> >(memberList)
            };

            return(ApiResult(apiResult));
        }
Example #5
0
        public ActionResult Get(int id)
        {
            if (id == 0)
            {
                return(FailedResult("参数无效"));
            }
            MemberAppDto member    = Mapper.Map <Member, MemberAppDto> (_memberManager.GetMember(id));
            AppApiResult apiResult = new AppApiResult()
            {
                result  = "success",
                message = "查询用户信息成功!",
                token   = this.UserContext.Token,
                data    = member
            };

            return(ApiResult(apiResult));
        }
Example #6
0
        public ActionResult Login()
        {
            MemberLoginArgs args = RequestArgs <MemberLoginArgs>();

            if (args == null)
            {
                return(FailedResult("参数无效。"));
            }
            args.password = IOHelper.GetMD5HashFromString(args.password);
            Member member = _memberManager.GetMemberByMobilePhoneAndPassword(args.mobilephone, args.password);

            if (member == null == false)
            {
                //TODO:初始化 memberDto
                MemberAppDto memberAppDto = Mapper.Map <Member, MemberAppDto>(member);

                memberAppDto.primaryDistributionCount = _memberManager.GetMemberDistributionCount(memberAppDto.id, null);
                memberAppDto.secondDistributionCount  = _memberManager.GetMemberDistributionCount(null, Convert.ToInt32(memberAppDto.superiorAgentId));
                MemberUserContext userContext = new MemberUserContext()
                {
                    LoginTime = DateTime.Now,
                    Token     = Guid.NewGuid().ToString(),
                    UserId    = member.id,
                    Member    = memberAppDto
                };
                NormalResult <MemberUserContext> result = new NormalResult <MemberUserContext>();
                result.Data = userContext;

                _cachingService.Set(userContext.Token, userContext);

                //一般返回结果不需要自己new AppApiResult,看 return ApiResult 这个方法的几个重载
                AppApiResult apiResult = new AppApiResult()
                {
                    result  = "success",
                    message = "登录成功",
                    token   = result.Data.Token,
                    data    = memberAppDto
                };
                return(ApiResult(apiResult));
            }
            else
            {
                return(FailedResult("手机号或密码无效。"));
            }
        }
Example #7
0
        protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            base.OnActionExecuting(filterContext);

            object[] objAllowedAnonymousArray =
                filterContext.ActionDescriptor.GetCustomAttributes(typeof(AllowedAnonymous), false);
            if (objAllowedAnonymousArray.Length > 0)
            {
                return;
            }

            //从请求中提取token
            string token = Request.Headers["token"];

            if (String.IsNullOrEmpty(token))
            {
                AppApiResult apiResult = new AppApiResult()
                {
                    result  = "error",
                    message = "会话失效,请重新登录"
                };

                filterContext.Result = ApiResult(apiResult);
                return;
            }

            UserContext = _cachingService.Get <MemberUserContext>(token);

            if (UserContext == null)
            {
                AppApiResult apiResult = new AppApiResult()
                {
                    result  = "error",
                    message = "会话失效,请重新登录"
                };

                filterContext.Result = ApiResult(apiResult);
                return;
            }
        }