public static CBB.ExceptionHelper.OperationResult FavorMember(String fromMember, String toMember) { try { CBB.ExceptionHelper.OperationResult result = Relation.RelationProvider.AddFavorer(fromMember, toMember); if (result.ok) { BiZ.MemberManager.MemberManager.ModifyFavorMemberCount(fromMember, MemberManager.StatusModifyType.Add); BiZ.MemberManager.MemberManager.ModifyMemberFavoredMeCount(toMember, MemberManager.StatusModifyType.Add); BiZ.MemberManager.MemberManager.ModifyUnReadBeenFavorCountCount(toMember, MemberManager.StatusModifyType.Add); //关注他人时记录用户对该用户的关注度 Recommendation.MemberFavorTrainingData membFavoTrai = new Recommendation.MemberFavorTrainingData(fromMember, toMember, Recommendation.MemberFavorTrainingDataType.AddToFansGroup); //增加用户关联关注 AddActivityRelatedToMe( toMember, fromMember, ActivityType.BeenFavored, BiZ.Member.Activity.ActivityController.GetActivityContent_BeenFavored_Title(), BiZ.Member.Activity.ActivityController.GetActivityContent_BeenFavored(), false); } return new CBB.ExceptionHelper.OperationResult(true); } catch (System.Exception err) { throw new CBB.ExceptionHelper.OperationException( CBB.ExceptionHelper.ErrType.SystemErr, CBB.ExceptionHelper.ErrNo.DBOperationError, err); } }
public static CBB.ExceptionHelper.OperationResult MsgToMember(String fromMember, String toMember, String comment, ActivityType type) { try { CBB.ExceptionHelper.OperationResult result; //自己不能给自己发私信 if ((fromMember == toMember) && (type == BiZ.Member.Activity.ActivityType.Talk)) { return new CBB.ExceptionHelper.OperationResult(false, "自己不能给自己发私信"); } //如果对方已经屏蔽我,则更改类型 if (BiZ.Member.Relation.RelationProvider.IsMemberDisableMe(toMember, fromMember)) { if (type == BiZ.Member.Activity.ActivityType.Talk || type == BiZ.Member.Activity.ActivityType.AskToDate) //if (type == BiZ.Member.Activity.ActivityType.Talk || type == BiZ.Member.Activity.ActivityType.SaiHi || type == BiZ.Member.Activity.ActivityType.AskToDate) type = BiZ.Member.Activity.ActivityType.DisabledTalk; else type = BiZ.Member.Activity.ActivityType.DisabledMsg; } result = BiZ.Member.Link.MsgProvider.MsgToMember(fromMember, toMember, comment, type); if (result.ok) { if (type != ActivityType.DisabledTalk & type != ActivityType.DisabledMsg) { //增加未读信息数量 result = BiZ.MemberManager.MemberManager.ModifyUnReadMsgCount(toMember, MemberManager.StatusModifyType.Add, 1); } //增加总发出信息条数 result = BiZ.MemberManager.MemberManager.ModifyTotalMsgCount(fromMember, MemberManager.StatusModifyType.Add); //如果是用户聊天 if (type == ActivityType.Talk) { //如果用户设置中,设置了自动关注,则增加关注 Member mym = MemberManager.MemberManager.GetMember(fromMember); if (mym.Settings != null) if (mym.Settings.AutoAddOutCallingToMyFavorList) { result = FavorMember(fromMember, toMember); } } bool isFristConnect = false; result = Relation.RelationProvider.AddLastMsger(fromMember, toMember, comment, type, out isFristConnect); //用户对他人第一次主动发起时记录用户对该用户的关注度 if (isFristConnect) { Recommendation.MemberFavorTrainingData membFavoTrai = new Recommendation.MemberFavorTrainingData(fromMember, toMember, Recommendation.MemberFavorTrainingDataType.Call); } //增加用户动态到后台 BiZ.Sys.MemberActivity.MemberActivityProvider.CreateMemberActivity( fromMember, toMember, BiZ.Sys.MemberActivity.MemberActivityType.PrivateLetter, "/Content/TaContent/" + fromMember); } return result; } catch (System.Exception err) { throw new CBB.ExceptionHelper.OperationException( CBB.ExceptionHelper.ErrType.SystemErr, CBB.ExceptionHelper.ErrNo.DBOperationError, err); } }