/// <summary> /// 会员登录 /// </summary> /// <param name="req"></param> /// <returns></returns> public Ptcp <M_MemberLoginRes> MemberLogin(M_MemberLoginReq req) { var ptcp = new Ptcp <M_MemberLoginRes>(); if (req.IsNull()) { ptcp.DoResult = "请正确填写账号和密码"; return(ptcp); } string jsonParam = JsonConvert.SerializeObject(req); Logger.Write(LoggerLevel.Error, "MemberLogin_in", "", jsonParam, ""); if (string.IsNullOrEmpty(req.Mobile) || string.IsNullOrEmpty(req.MemPassWord)) { ptcp.DoResult = "账号和密码不能为空"; return(ptcp); } if (req.Mobile.Length != 11) { ptcp.DoResult = "账号格式有误"; return(ptcp); } if (req.MemPassWord.Length > 20 || req.MemPassWord.Length < 6) { ptcp.DoResult = "密码长度不能小于6位,大于20位"; return(ptcp); } if (req.SourceTypeSysNo <= 0) { ptcp.DoResult = "来源渠道不能为空"; return(ptcp); } if (string.IsNullOrEmpty(req.DeviceCode)) { ptcp.DoResult = "设备码不能为空"; return(ptcp); } var memInfo = DbSession.MLT.T_MemberRepository.QueryBy(new T_Member() { Mobile = req.Mobile }, " ORDER BY SysNo ASC").FirstOrDefault(); if (memInfo.IsNull() || memInfo.SysNo <= 0) { ptcp.DoResult = "账号或密码错误"; return(ptcp); } #region 校验 //校验密码 if (memInfo.MemPassWord == EncryptionExt.MD5Encrypt(req.MemPassWord.Trim(), 16)) { //登录成功 M_MemberEntity entity = TableT_MemberToM_MemberEntity(memInfo); //保存操作日志 AddOperationLog(new M_AddOperationLogReq() { OperType = (int)Enums.OperationLog.Login, UserId = memInfo.SysNo.GetValueOrDefault(), ClientIp = req.ClientIp, DeviceCode = req.DeviceCode, SourceTypeSysNo = req.SourceTypeSysNo }); //更新最后一次登录的时间 DbSession.MLT.T_MemberRepository.Update(new T_Member() { LastLoginTime = DateTime.Now }, new T_Member() { SysNo = memInfo.SysNo }); DbSession.MLT.SaveChange(); ptcp.ReturnValue = new M_MemberLoginRes(); ptcp.ReturnValue.MemberEntity = entity; ptcp.DoFlag = PtcpState.Success; ptcp.DoResult = "登录成功"; } else { ptcp.DoResult = "账号或密码错误"; return(ptcp); } #endregion return(ptcp); }
/// <summary> /// 会员数据转换 /// </summary> /// <param name="member"></param> /// <returns></returns> public M_MemberEntity TableT_MemberToM_MemberEntity(T_Member member) { M_MemberEntity memberEntity = new M_MemberEntity(); memberEntity.UserId = member.SysNo.GetValueOrDefault(); memberEntity.Mobile = member.Mobile; memberEntity.Portrait = member.Portrait; //memberEntity.MemPassWord = member.MemPassWord; memberEntity.NickName = member.NickName; memberEntity.Sex = member.Sex.GetValueOrDefault(); memberEntity.StrSex = pm.TableSex(memberEntity.Sex); memberEntity.MinWithdrawals = member.MinWithdrawals.GetValueOrDefault(); if (memberEntity.MinWithdrawals <= 0) { memberEntity.MinWithdrawals = 1; } memberEntity.Birthday = member.Birthday; if (memberEntity.Birthday != null) { memberEntity.StrBirthday = member.Birthday.ToString(); } memberEntity.RegProvince = member.RegProvince; memberEntity.RegArea = member.RegArea; memberEntity.RegCity = member.RegCity; //获取区域信息 var allReg = QueryRegionInfo(); if (allReg.DoFlag == PtcpState.Success && allReg.ReturnValue.IsNotNull() && allReg.ReturnValue.Entities.IsHasRow()) { var proInfo = allReg.ReturnValue.Entities.Where(c => c.RegionId == memberEntity.RegProvince).FirstOrDefault(); if (proInfo.IsNotNull()) { memberEntity.StrRegProvince = proInfo.RegionName; } var areaInfo = allReg.ReturnValue.Entities.Where(c => c.RegionId == memberEntity.RegArea).FirstOrDefault(); if (areaInfo.IsNotNull()) { memberEntity.StrRegArea = areaInfo.RegionName; } var cityInfo = allReg.ReturnValue.Entities.Where(c => c.RegionId == memberEntity.RegCity).FirstOrDefault(); if (cityInfo.IsNotNull()) { memberEntity.StrRegCity = cityInfo.RegionName; } } memberEntity.InforType = member.InforType; memberEntity.StrInfoType = pm.TableInforType(memberEntity.InforType.GetValueOrDefault()); memberEntity.MobileModel = member.MobileModel; memberEntity.Account = member.Account; memberEntity.StrAccount = string.Format("{0:F}", memberEntity.Account); memberEntity.AccountWithdrawn = member.AccountWithdrawn; memberEntity.StrAccountWithdrawn = string.Format("{0:F}", memberEntity.AccountWithdrawn); memberEntity.Score = member.Score; memberEntity.StrScore = string.Format("{0:F}", memberEntity.Score); memberEntity.ScoreWithdrawn = member.ScoreWithdrawn; memberEntity.StrScoreWithdrawn = string.Format("{0:F}", memberEntity.ScoreWithdrawn); //memberEntity.JpushId = member.JpushId; memberEntity.OpenidWxOpen = member.OpenidWxOpen; //memberEntity.OpenidWxMp = member.OpenidWxMp; memberEntity.LastLoginTime = member.LastLoginTime; if (memberEntity.LastLoginTime != null) { memberEntity.StrLastLoginTime = memberEntity.LastLoginTime.ToString(); } memberEntity.SourceTypeSysNo = member.SourceTypeSysNo; memberEntity.StrSourceTypeSysNo = pm.TableSourceTypeSysNo(memberEntity.SourceTypeSysNo.GetValueOrDefault()); memberEntity.ClientIp = member.ClientIp; memberEntity.DeviceCode = member.DeviceCode; memberEntity.RowCeateDate = member.RowCeateDate; if (memberEntity.RowCeateDate != null) { memberEntity.StrRowCeateDate = memberEntity.RowCeateDate.ToString(); } return(memberEntity); }