public override bool TakeAction()
        {
            receipt = GetTransfer.FindReceive(newid);
            if (receipt == null)
            {
                return(false);
            }

            return(true);
        }
Example #2
0
 public void AddReceive(ReceiveTransferItemData data)
 {
     ReceiveList.Add(data);
 }
Example #3
0
        public override bool TakeAction()
        {
            receipt = new SendTransferItemReceipt();
            if (GetTransfer.SendCount >= 3)
            {
                receipt.Result = TransferItemResult.SendCountOut;
                return(true);
            }

            var itemdata = GetPackage.FindItem(itemId);

            if (itemdata == null || itemdata.Num < itemNum)
            {
                return(false);
            }
            var dest = UserHelper.FindUserBasis(destId);

            if (dest == null)
            {
                return(false);
            }
            var destTransfer = UserHelper.FindUserTransfer(destId);

            string newId = Guid.NewGuid().ToString("N");
            ReceiveTransferItemData receiveData = new ReceiveTransferItemData()
            {
                ID               = newId,
                Sender           = Current.UserId,
                SenderName       = GetBasis.NickName,
                SenderProfession = GetBasis.Profession,
                SenderAvatar     = GetBasis.AvatarUrl,
                Date             = DateTime.Now,
                IsReceived       = false,
            };

            receiveData.AppendItem.ID  = itemId;
            receiveData.AppendItem.Num = itemNum;

            receipt.Data = new SendTransferItemData()
            {
                ID                 = newId,
                Receiver           = dest.UserID,
                ReceiverName       = dest.NickName,
                ReceiverProfession = dest.Profession,
                ReceiverAvatar     = dest.AvatarUrl,
                Date               = DateTime.Now,
                IsReceived         = false,
            };
            receipt.Data.Password       = Util.GetRandom4Pwd();
            receipt.Data.AppendItem.ID  = itemId;
            receipt.Data.AppendItem.Num = itemNum;

            GetPackage.RemoveItem(itemId, itemNum);

            destTransfer.ReceiveList.Add(receiveData);
            PushMessageHelper.NewReceiveTransferItemNotification(GameSession.Get(destId), newId);

            GetTransfer.SendList.Add(receipt.Data);

            GetTransfer.SendCount++;
            receipt.Result = TransferItemResult.Successfully;
            return(true);
        }