public void TryDisputeTransaction(int userId) { CheckRepresentativeModificationPermissions(userId); this.RepresentativeRequestStatus = RepresentativeRequestStatus.InDispute; this.Save(); }
public void TryRejectTransaction(int userId) { CheckRepresentativeModificationPermissions(userId); RepresentativesTransferManager representativesTransferManager = new RepresentativesTransferManager( Conversation.GetOtherUserId(userId), userId); this.RepresentativeRequestStatus = RepresentativeRequestStatus.Rejected; this.Save(); representativesTransferManager.RejectWithdrawal(this); }
public ConversationMessage(int conversationId, int senderId, DateTime dateTime, string text, MessageType messageType, RepresentativeRequestStatus representativeRequestStatus, Money representativeTransferAmount) { ConversationId = conversationId; UserId = senderId; DateTime = dateTime; Text = text; MessageType = messageType; RepresentativeRequestStatus = representativeRequestStatus; RepresentativeTransferAmount = representativeTransferAmount; IsRead = false; }
public void TryCancelTransaction(int userId) { int representativeId = Conversation.GetOtherUserId(userId); if (MessageType != MessageType.RepresentativeDepositRequest) { CheckRepresentativeModificationPermissions(representativeId); } else { CheckRepresentativeModificationPermissions(representativeId, false); } RepresentativesTransferManager representativesTransferManager = new RepresentativesTransferManager( userId, representativeId); representativesTransferManager.TryCancelDeposit(Member.CurrentInCache.Name, this); this.RepresentativeRequestStatus = RepresentativeRequestStatus.Cancelled; this.Save(); }
public static void SendMessage(this Member sender, int recipientId, string text, MessageType messageType, RepresentativeRequestStatus representativeRequestStatus, Money representativeTransferAmount) { //if (!sender.IsFriendsWith(recipientId) && messageType == MessageType.Normal) // throw new MsgException("You can only send messages to your friends."); if (string.IsNullOrEmpty(text)) { return; } var sentDate = AppSettings.ServerTime; var conversation = Conversation.GetAndUpdate(sender.Id, recipientId, sentDate); conversation.Save(); var message = new ConversationMessage(conversation.Id, sender.Id, sentDate, text, messageType, representativeRequestStatus, representativeTransferAmount); message.Save(); }
public string TryConfirmTransaction(int userId) { CheckRepresentativeModificationPermissions(userId); RepresentativesTransferManager representativesTransferManager = new RepresentativesTransferManager( Conversation.GetOtherUserId(userId), userId); string ResultMessage = String.Empty; if (this.MessageType == MessageType.RepresentativeDepositRequest) { ResultMessage = representativesTransferManager.TryConfirmDeposit(this); } if (this.MessageType == MessageType.RepresentativeWithdrawalRequest) { ResultMessage = representativesTransferManager.ConfirmWithdrawal(this); } this.RepresentativeRequestStatus = RepresentativeRequestStatus.Completed; this.Save(); return(ResultMessage); }