private string UpdateSuiteRegistration(CreateRegistrationRequest registerRequest, string logId)
        {
            var suiteWrapper = new SuiteWrapper();

            suitesessionId = suiteWrapper.Login().GetAwaiter().GetResult();
            var request = new InsertRequest();

            request.SessionId  = suitesessionId;
            request.ModuleName = "reg_Registration";
            request.Entity     = registerRequest;
            var resp = suiteWrapper.Update(request).GetAwaiter().GetResult();

            common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
            {
                Description = "Updated Suite Registration successfully Id: " + resp.Id, Name = "UpdateSuiteRegistration", Entity_c = "Registration"
            }, logId);
            SuiteWrapper.WriteTraceLog("UpdateSuiteRegistration", "Updated Suite Registration successfully Id: " + resp.Id);
            return(resp.Id);
        }
        // ********************Check customer Registration for Auction *******************************
        private string CheckForRegistration(string auctionInternalId, SuiteContact suiteContact, string paddle, string auctionName, string logId)
        {
            var recordID        = "";
            var registerrequest = new CreateRegistrationRequest();

            registerrequest.Ac1_auction_calendar_id_c = auctionInternalId;
            registerrequest.Contact_id      = suiteContact.Id;
            registerrequest.Paddle_number_c = paddle;
            registerrequest.Name            = paddle + "-" + suiteContact.Name;

            try
            {
                var searchResultsRegistratioList = GetListSuiteRegistration(auctionInternalId, suiteContact.Id, logId);


                if (searchResultsRegistratioList != null && searchResultsRegistratioList.Count() > 0)
                {
                    foreach (var r in searchResultsRegistratioList)
                    {
                        registerrequest.Id = Convert.ToString(((Newtonsoft.Json.Linq.JProperty)r).Value);
                        recordID           = UpdateSuiteRegistration(registerrequest, logId);
                        return(registerrequest.Id);
                    }
                }
                else
                {
                    recordID           = InsertSuiteRegistration(registerrequest, logId);
                    registerrequest.Id = recordID;
                    recordID           = UpdateSuiteRegistration(registerrequest, logId);
                }
                return(recordID);
            }
            catch (Exception ex)
            {
                SuiteWrapper.WriteTraceLog("CheckForRegistration", "Error : " + ex.Message);
                common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
                {
                    Description = "Error : " + ex.Message, Name = "CheckForRegistration", Entity_c = "Registration"
                }, logId);
                throw ex;
            }
        }
예제 #3
0
        public async Task <IActionResult> PostRegistration(CreateRegistrationRequest request)
        {
            var existingRegistration = await _registrationService.GetByUserAndWorkshopIds(request.UserId, request.WorkshopId);

            var workshopToUpdate = await _workshopService.GetById(request.WorkshopId);

            if (existingRegistration == null && request.IsPaid)
            {
                await _registrationService.Create(new Registration
                {
                    UserId     = request.UserId,
                    WorkshopId = request.WorkshopId,
                    IsPaid     = request.IsPaid,
                    IsDesired  = false,
                });

                workshopToUpdate.CurrentUsersCount++;
                await _workshopService.Update(workshopToUpdate);
            }
            else if (request.IsDesired)
            {
                await _registrationService.Create(new Registration
                {
                    UserId     = request.UserId,
                    WorkshopId = request.WorkshopId,
                    IsPaid     = false,
                    IsDesired  = request.IsDesired,
                });
            }
            else
            {
                existingRegistration.IsPaid    = true;
                existingRegistration.IsDesired = false;
                await _registrationService.Update(existingRegistration);

                workshopToUpdate.CurrentUsersCount++;
                await _workshopService.Update(workshopToUpdate);
            }

            return(Ok());
        }
 public Task <IActionResult> Save(CreateRegistrationRequest request)
 {
     return(CreatedOrUnprocessableEntityAsync <CreateRegistrationCommand, RegistrationId>(
                CreateRegistrationCommand.Create(request, _systemTimeProvider, _examExistenceValidator),
                id => $"/api/registrations/{id}"));
 }