예제 #1
0
        public async Task RequestFinished()
        {
            var request = new OfferUpdateRequest
            {
                OfferStatusId = (int)Models.OfferStatus.Finished
            };

            await _offerService.Update <Offer>(AcceptedOfferId, request);


            var notificationRequest = new NotificationInsertRequest
            {
                CreatedAt          = DateTime.Now,
                ItemId             = Id,
                NotificationTypeId = (int)NotificationType.OfferFinished,
                UserFromId         = ClientId,
                UserToId           = SupplierId
            };

            await _notificationService.Insert <Model.Notification>(notificationRequest);

            await UpdateStatus((int)Models.Status.Finished);

            await Init();
        }
예제 #2
0
        public async Task RejectOffer(int offerId)
        {
            var request = new OfferUpdateRequest
            {
                OfferStatusId = (int)Models.OfferStatus.Rejected
            };

            await _offerService.Update <Offer>(offerId, request);
        }
예제 #3
0
        public async Task AcceptOffer(int offerId, int supplierId)
        {
            var request = new OfferUpdateRequest();

            foreach (var offer in OfferList)
            {
                if (offer.OfferId == offerId)
                {
                    request.OfferStatusId = (int)Models.OfferStatus.Accepted;
                    await _offerService.Update <Offer>(offer.OfferId, request);
                    await SendNotifcationAccept(offer.UserFromId);
                }
                else
                {
                    request.OfferStatusId = (int)Models.OfferStatus.Rejected;
                    await _offerService.Update <Offer>(offer.OfferId, request);
                    await SendNotifcationReject(offer.UserFromId);
                }
            }

            await UpdateStatus((int)Models.Status.Accepted);
        }