Ejemplo n.º 1
0
        public HelpRequestResponse CreateClientHelpRequestResponse(HelpRequestResponseCreateModel vm)
        {
            var helpRequest = _context.HelpRequests
                              .Where(x => x.Id == vm.HelpRequestId)
                              .FirstOrDefault();

            var oldClientHelpRequest = _context.HelpRequestsResponses.Where(x => x.HelpRequest.ClientId == helpRequest.ClientId).ToList();


            oldClientHelpRequest.ForEach(x => x.IsActive = false);

            var newHelpRequest = new HelpRequestResponse
            {
                HelpIncomingDateTimeUtc = vm.ExpirationDateUtc,
                HelpRequestId           = vm.HelpRequestId,
                HelpRequestState        = vm.HelpRequestState,
                IsActive         = true,
                LanguageId       = vm.LanguageId,
                ShortInstruction = vm.ShortInstruction
            };

            _context.HelpRequestsResponses.Add(newHelpRequest);
            _context.SaveChanges();

            return(newHelpRequest);
        }
        private HelpRequestResponseModel MapHelpRequestResponse(HelpRequestResponse helpRequest, string userId)
        {
            var clientConfiguration = _clientConfigurationService.GetByUserId(userId);

            var result = new HelpRequestResponseModel
            {
                ClientId             = UserId,
                ContactPhoneNumber   = clientConfiguration.SupportNumber,
                HelpIncomingDateTime = helpRequest.HelpIncomingDateTimeUtc,
                HelpRequestState     = helpRequest.HelpRequestState,
                ShortInstructions    = helpRequest.ShortInstruction
            };

            return(result);
        }
Ejemplo n.º 3
0
        public async Task <bool> SendHelpRequestNotification(string clientId, HelpRequestResponse newRequest)
        {
            HelpRequestResponseModel model;

            if (newRequest == null)
            {
                model = new HelpRequestResponseModel();
            }
            else
            {
                model = new HelpRequestResponseModel
                {
                    ClientId             = clientId,
                    ContactPhoneNumber   = "",
                    HelpIncomingDateTime = newRequest.HelpIncomingDateTimeUtc,
                    HelpRequestId        = newRequest.HelpRequestId,
                    HelpRequestState     = newRequest.HelpRequestState,
                    Id                = newRequest.Id,
                    IsActive          = newRequest.IsActive,
                    ShortInstructions = newRequest.ShortInstruction
                };
            }
            return(await SendHelpRequestNotification(clientId, model));
        }