Ejemplo n.º 1
0
        public ActionResult ViewDetail()
        {
            //当前登录用户

            ViewBag.Title = "下线详情";;
            MpUser mpUser = _mpUserService.GetById(MpUserID);

            if (mpUser == null || mpUser.IsAuth != 1)
            {
                return(Json(new { message = "您没有权限,请先申请成为业务员!" }));
            }
            MpUser mpUserUnder = new MpUser();

            if (!string.IsNullOrWhiteSpace(RQuery["Id"]))
            {
                mpUserUnder = _userService.GetById(new Guid(RQuery["Id"]));
            }
            //VehicleLicense vehicleLicense = _vehicleLicenseService.GetUnique("from VehicleLicense where Id = '" +id +  "'");

            if (mpUserUnder != null && mpUserUnder.ParentPhone != mpUser.MobilePhone)
            {
                return(Json(new { message = "您没有权限,请先申请成为业务员!" }));
            }
            return(View(mpUserUnder));
        }
Ejemplo n.º 2
0
        protected string WriteMpUserCookie(MpUser user)
        {
            Session["LUserID"] = user.Id.ToString();//user.ID;
            StringBuilder userBuilder = new StringBuilder(Session.SessionID);

            userBuilder.Append("|");
            userBuilder.Append(user.Id.ToString());//user.ID
            userBuilder.Append("|");
            userBuilder.Append(user.OpenID.ToString());
            userBuilder.Append("|");
            userBuilder.Append(user.HeadImgUrl ?? "");
            userBuilder.Append("|");
            userBuilder.Append((!string.IsNullOrEmpty(user.NickName) ? Url.Encode(user.NickName) : ""));
            userBuilder.Append("|");
            userBuilder.Append(user.MpGroupID.ToString());
            userBuilder.Append("|");
            userBuilder.Append((!string.IsNullOrEmpty(user.Name) ? Url.Encode(user.Name) : ""));
            userBuilder.Append("|");
            userBuilder.Append(user.Sex);
            userBuilder.Append("|");
            userBuilder.Append(user.OrginID);
            userBuilder.Append("|");
            userBuilder.Append("");
            userBuilder.Append("|");
            userBuilder.Append("");
            userBuilder.Append("|");
            userBuilder.Append("");
            UserLogin.Instance.WriteCookie("LUser", userBuilder.ToString(), 0, "/", "localhost");
            return(userBuilder.ToString());
        }
Ejemplo n.º 3
0
        public ActionResult AllotEditProvide(Guid id)
        {
            if (!base.HasPermission("DrivingLicense", PermissionOperate.track))
            {
                return(JsonMessage(false, "你没有分配业务员的权限"));
            }

            DrivingLicense drivingLicense = _drivingLicenseService.GetById(id);

            if (drivingLicense == null)
            {
                return(JsonMessage(false, "该笔行驶证已不存在,不能继续操作!"));
            }
            string bussMan     = RQuery["AssignBussinessMan"].ToString();
            string bussPhone   = RQuery["BussinessManPhone"].ToString();
            MpUser bussManUser = _mpUserService.GetUnique("from MpUser where Name = '" + bussMan.Trim() + "' and MobilePhone = '" + bussPhone.Trim() + "'");

            if (bussManUser == null)
            {
                return(JsonMessage(false, "业务员信息有错!"));
            }
            drivingLicense.MpUserId = bussManUser.Id;
            _drivingLicenseService.Update(drivingLicense);

            base.AddLog(string.Format("分配业务员[{0}]成功", drivingLicense.Name + "To" + bussMan.Trim()), AdminLoggerModuleEnum.DrivingLicense);
            return(JsonMessage(true, "处理成功"));
        }
Ejemplo n.º 4
0
        public IHttpActionResult Get(string username)
        {
            return(Authorized(token =>
            {
                try
                {
                    int userid = _userRepository.GetUserIdByUsername(username);
                    MpUser user = _userRepository.GetUserByRecordId(userid);
                    var userRoles = _userRepository.GetUserRoles(userid);
                    MpMyContact contact = _contactRepository.GetContactByUserRecordId(user.UserRecordId);

                    var r = new LoginReturn
                    {
                        userToken = token,
                        userTokenExp = "",
                        refreshToken = "",
                        userId = contact.Contact_ID,
                        username = contact.First_Name,
                        userEmail = contact.Email_Address,
                        roles = userRoles,
                        age = contact.Age,
                        userPhone = contact.Mobile_Phone,
                        canImpersonate = user.CanImpersonate
                    };

                    return Ok(r);
                }
                catch (Exception e)
                {
                    var apiError = new ApiErrorDto($"{e.Message}");
                    throw new HttpResponseException(apiError.HttpResponseMessage);
                }
            }));
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 订阅(关注)事件
        /// </summary>
        /// <returns></returns>
        public override IResponseMessageBase OnEvent_SubscribeRequest(RequestMessageEvent_Subscribe requestMessage)
        {
            Log4NetImpl.Write("关注事件触发:");
            MpUser fromUser = MpUserService.GetByOpenID(requestMessage.FromUserName);

            if (fromUser != null)
            {
                Log4NetImpl.Write("EventKey:" + requestMessage.EventKey);
                fromUser.IsSubscribe = true;
                if (!string.IsNullOrEmpty(requestMessage.EventKey))
                {
                    fromUser.SceneId = Convert.ToInt32(requestMessage.EventKey.Replace("qrscene_", ""));
                    Log4NetImpl.Write("OnEvent_SubscribeRequest:" + fromUser.SceneId.ToString());
                }
                fromUser.LastVisitDate = DateTime.Now;
                MpUserService.Update(fromUser);
            }
            var     responseMessage = ResponseMessageBase.CreateFromRequestMessage <ResponseMessageText>(requestMessage);
            MpReply reply           = MpReplyService.GetALL(k => k.Action == "beadded").FirstOrDefault();

            if (reply != null)
            {
                return(ResponseMsg(reply.MpMaterial));
            }
            return(responseMessage);
        }
Ejemplo n.º 6
0
        public void TestAdminGetProfile()
        {
            var user = new MpUser
            {
                UserRecordId = 987
            };

            _userService.Setup(mocked => mocked.GetByAuthenticationToken(_authType + " " + _authToken)).Returns(user);
            _userService.Setup(mocked => mocked.GetUserRoles(987)).Returns(new List <MpRoleDto>
            {
                new MpRoleDto
                {
                    Id = 765
                },
                new MpRoleDto
                {
                    Id = 456
                }
            });

            var person = new Person();

            _personServiceMock.Setup(mocked => mocked.GetPerson(13579)).Returns(person);

            var result = _fixture.AdminGetProfile(13579);

            Assert.IsNotNull(result);
            Assert.IsInstanceOf <OkNegotiatedContentResult <Person> >(result);
            var r = (OkNegotiatedContentResult <Person>)result;

            Assert.IsNotNull(r.Content);
            Assert.AreSame(person, r.Content);
            _userService.VerifyAll();
            _personServiceMock.VerifyAll();
        }
Ejemplo n.º 7
0
        private int ExistingParticipant(Registration registration, string token)
        {
            // update the user record?
            MpUser user = _userService.GetByAuthenticationToken(token);

            user.UserId      = registration.Self.EmailAddress;
            user.UserEmail   = registration.Self.EmailAddress;
            user.DisplayName = registration.Self.LastName + ", " + registration.Self.FirstName;

            try
            {
                _userService.UpdateUser(user);
            }
            catch (FaultException e)
            {
                throw new DuplicateUserException(user.UserId);
            }

            // update name/email/dob/mobile
            var dict = registration.Self.GetDictionary();

            _contactService.UpdateContact(registration.Self.ContactId, dict);

            //get participant
            var participant = _participantService.GetParticipantRecord(token);

            return(participant.ParticipantId);
        }
Ejemplo n.º 8
0
 public MyUnderDTO(MpUser user)
 {
     this.Id         = user.Id;
     this.CreateDate = user.CreateDate;
     this.Name       = user.Name;
     this.Phone      = user.MobilePhone;
     this.IsAuth     = user.IsAuth;
 }
Ejemplo n.º 9
0
        public MpUser GetByAuthenticationToken(string authToken)
        {
            var userId = _ministryPlatformService.GetContactInfo(authToken).UserId;

            string columns = "User_ID, User_Name, User_Email, User_GUID, COALESCE(Can_Impersonate, 0) AS Can_Impersonate";
            MpUser user    = _ministryPlatformRest.UsingAuthenticationToken(ApiLogin()).Get <MpUser>(userId, columns);

            return(user);
        }
Ejemplo n.º 10
0
        public ActionResult LoanMessage()
        {
            //当前登录用户
            MpUser mpUser = _mpUserService.GetById(MpUserID);
            //用户最近的一笔贷款申请[未撤销]
            Loan loan = _loanService.GetNewestLoanApplyByMpUserId(MpUserID);

            ViewBag.Loan = loan;
            return(View(mpUser));
        }
Ejemplo n.º 11
0
        public ActionResult Ucenter()
        {
            MpUser currUser = MpUserService.GetById(this.MpUserID);

            if (currUser != null)
            {
                ViewBag.Point = currUser.LocationX + "," + currUser.LocationY;
            }
            return(View());
        }
Ejemplo n.º 12
0
        /// <summary>
        /// 退订
        /// 实际上用户无法收到非订阅账号的消息,所以这里可以随便写。
        /// unsubscribe事件的意义在于及时删除网站应用中已经记录的OpenID绑定,消除冗余数据。并且关注用户流失的情况。
        /// </summary>
        /// <returns></returns>
        public override IResponseMessageBase OnEvent_UnsubscribeRequest(RequestMessageEvent_Unsubscribe requestMessage)
        {
            MpUser fromUser = MpUserService.GetByOpenID(requestMessage.FromUserName);

            if (fromUser != null)
            {
                fromUser.IsSubscribe   = false;
                fromUser.LastVisitDate = DateTime.Now;
                MpUserService.Update(fromUser);
            }
            return(null);
        }
Ejemplo n.º 13
0
        public void ShouldGetUserByName()
        {
            var    username = "******";
            MpUser mpUser   = new MpUser()
            {
                CanImpersonate = true,
                DisplayName    = "Testy McTestface",
                Guid           = "123123123123123",
                UserEmail      = "*****@*****.**",
                UserId         = "test",
                UserRecordId   = 1
            };
            MpMyContact mpMyContact = new MpMyContact()
            {
                Contact_ID    = 2,
                First_Name    = "Testy",
                Email_Address = mpUser.UserEmail,
                Age           = 30,
                Mobile_Phone  = "1234567890"
            };
            List <MpRoleDto> roles = new List <MpRoleDto>();
            LoginReturn      dto   = new LoginReturn()
            {
                userToken      = _authType + " " + _authToken,
                userTokenExp   = "",
                refreshToken   = "",
                userId         = mpMyContact.Contact_ID,
                username       = mpMyContact.First_Name,
                userEmail      = mpMyContact.Email_Address,
                roles          = roles,
                age            = mpMyContact.Age,
                userPhone      = mpMyContact.Mobile_Phone,
                canImpersonate = mpUser.CanImpersonate
            };


            _userRepository.Setup(mocked => mocked.GetUserIdByUsername(username)).Returns(mpUser.UserRecordId);
            _userRepository.Setup(mocked => mocked.GetUserByRecordId(mpUser.UserRecordId)).Returns(mpUser);
            _userRepository.Setup(mocked => mocked.GetUserRoles(mpUser.UserRecordId)).Returns(roles);
            _contactRepository.Setup(mocked => mocked.GetContactByUserRecordId(mpUser.UserRecordId)).Returns(mpMyContact);

            var response = _fixture.Get(username);

            _userRepository.VerifyAll();
            _contactRepository.VerifyAll();
            Assert.IsNotNull(response);
            Assert.IsInstanceOf <OkNegotiatedContentResult <LoginReturn> >(response);
            var r = (OkNegotiatedContentResult <LoginReturn>)response;

            Assert.IsNotNull(r.Content);
            Assert.AreEqual(JsonConvert.SerializeObject(dto), JsonConvert.SerializeObject(r.Content));
        }
Ejemplo n.º 14
0
        /// <summary>
        /// 会员退出登录
        /// </summary>
        public void Logout()
        {
            MpUser mpUser = LoginUser;

            if (mpUser != null)
            {
                string userCacheIdentification = GetUserCacheIdentification(mpUser.Id);
                _cacheManager.Remove(userCacheIdentification);
                UpdateCookie(Guid.Empty, "0", "00000000", 1);
                //移除出本地用户列表
                RemoveCacheUser(mpUser.Id);
            }
        }
Ejemplo n.º 15
0
        public void UpdateUser(MpUser user)
        {
            var userDict = new Dictionary <string, object>()
            {
                { "User_Name", user.UserId },
                { "Display_Name", user.DisplayName },
                { "User_Email", user.UserEmail },
                { "User_ID", user.UserRecordId },
                { "Can_Impersonate", user.CanImpersonate },
                { "User_GUID", user.Guid }
            };

            UpdateUser(userDict);
        }
Ejemplo n.º 16
0
        public override IResponseMessageBase OnEvent_LocationRequest(RequestMessageEvent_Location requestMessage)
        {
            MpUser fromUser = MpUserService.GetByOpenID(requestMessage.FromUserName);

            if (fromUser != null)
            {
                fromUser.LocationX     = requestMessage.Latitude;
                fromUser.LocationY     = requestMessage.Longitude;
                fromUser.LocationLabel = string.IsNullOrEmpty(fromUser.LocationLabel) ? "" : fromUser.LocationLabel;
                fromUser.LastVisitDate = DateTime.Now;
                MpUserService.Update(fromUser);
            }
            return(null);
        }
Ejemplo n.º 17
0
        public ActionResult AutoLogin2()
        {
            string code   = RQuery["code"];
            string state  = RQuery["state"];
            string refUrl = RQuery["refUrl"];
            string openid = RQuery["openid"];
            string gid    = RQuery["guid"];

            Log4NetImpl.Write("refUrl:" + refUrl);
            if (string.IsNullOrEmpty(openid))
            {
                OAuthAccessTokenResult authResult = OAuth.GetAccessToken(MpCenterCache.AppID, MpCenterCache.AppSecret, code);
                openid = authResult.openid;
            }
            if (!string.IsNullOrEmpty(openid))
            {
                Log4NetImpl.Write("currUser:"******"默认分组").Id;
                    currUser.IsSubscribe   = true;
                    currUser.LastVisitDate = DateTime.Now;
                    currUser.OpenID        = openid;
                    currUser.OrginID       = MpCenterCache.OriginID;
                    currUser.UserState     = 0;
                    MpUserService.Insert(currUser);
                }
                if (currUser != null)
                {
                    Log4NetImpl.Write("oAuth:" + currUser.OpenID);
                    WriteMpUserCookie(currUser);
                }
                if (string.IsNullOrEmpty(OpenID))
                {
                    Log4NetImpl.Write("用户未识别:" + currUser.OpenID);
                    return(Content("用户未识别"));
                }
                if (!string.IsNullOrEmpty(refUrl))
                {
                    Log4NetImpl.Write("跳转回来!");
                    //Response.Redirect(refUrl);
                    return(RedirectToRoute(new { controller = "PluginsScene", action = "PluginScratch", id = gid }));
                }
            }
            return(Content("请联系管理员"));
        }
Ejemplo n.º 18
0
        public MpUser GetUserByRecordId(int recordId)
        {
            var record = _ministryPlatformService.GetRecordDict(_usersPageId, recordId, ApiLogin());

            var user = new MpUser
            {
                CanImpersonate = record["Can_Impersonate"] as bool? ?? false,
                Guid           = record.ContainsKey("User_GUID") ? record["User_GUID"].ToString() : null,
                UserId         = record["User_Name"] as string,
                UserEmail      = record["User_Email"] as string,
                UserRecordId   = Int32.Parse(record["User_ID"].ToString())
            };

            return(user);
        }
Ejemplo n.º 19
0
        public ActionResult Index()
        {
            //当前登录用户

            ViewBag.Title = "我的下线";
            MpUser mpUser = _mpUserService.GetById(MpUserID);

            if (mpUser == null || mpUser.IsAuth != 1)
            {
                return(Json(new { message = "您没有权限,请先申请成为业务员!" }));
            }
            IList <MpUser> myUnderList = _mpUserService.GetList("from MpUser where ParentPhone = (select MobilePhone from MpUser where Id = '" + mpUser.Id + "')");

            //ViewBag.VehicleList = new JavaScriptSerializer().Serialize(Json(vehicleList).Data); //Json(vehicleList, JsonRequestBehavior.AllowGet);
            return(View(myUnderList));
        }
Ejemplo n.º 20
0
        public ResponseMessageNews GetResponseMessage(RequestMessageLocation requestMessage)
        {
            MpUser fromUser = MpUserService.GetByOpenID(requestMessage.FromUserName);

            if (fromUser != null)
            {
                fromUser.LocationX     = requestMessage.Location_X;
                fromUser.LocationY     = requestMessage.Location_Y;
                fromUser.LocationLabel = requestMessage.Label;
                fromUser.LastVisitDate = DateTime.Now;
                MpUserService.Update(fromUser);
            }

            double longitude = requestMessage.Location_Y;
            double latitude  = requestMessage.Location_X;

            //修正坐标
            DistanceHelper.ConvertCoordinate(ref longitude, ref latitude);
            IList <BranchDTO> listBranch = BranchService.GetBranch(longitude, latitude);
            var responseMessage          = ResponseMessageBase.CreateFromRequestMessage <ResponseMessageNews>(requestMessage);

            responseMessage.Articles.Add(new Article()
            {
                Title       = "石狮农商银行周边网点",
                Description = "",
                PicUrl      = GlobalConfig.GetConfig()["ResourceDomain"] + "/funongbaotop.jpg",
                Url         = "http://wx.ssrcb.com/Branch/BranchListMap?point=" + longitude + "," + latitude,
            });
            //responseMessage.Articles.Add(new Article()
            //{
            //    Title = "石狮农商银行周边网点",
            //    Description = "",
            //    PicUrl = GlobalConfig.GetConfig()["ResourceDomain"] + "/funongbaotop.jpg",
            //    Url = "http://wx.ssrcb.com/Branch/BranchList?point=" + longitude + "," + latitude,
            //});
            //foreach (var item in listBranch)
            //{
            //    responseMessage.Articles.Add(new Article()
            //    {
            //        Title = item.Name+"("+item.Distance+"千米)"+"\n"+item.Address,
            //        Description = item.Address,
            //        PicUrl = "",
            //        Url = "http://wx.ssrcb.com/Branch/BranchInfo?id=" + item.Id.ToString() + "&longitude=" + longitude + "&latitude=" + latitude
            //    });
            //}
            return(responseMessage);
        }