示例#1
0
        public async Task <JsonResult> RequestEnterpriseQuotation([Required] EnterpriseQuotationViewModel model)
        {
            var response = new ResultModel();

            if (!ModelState.IsValid)
            {
                return(Json(response.AttachModelState(ModelState)));
            }
            var emails = (await _userManager.UserManager.GetUsersInRoleAsync(GlobalResources.Roles.ADMINISTRATOR))
                         .Select(x => x.Email).ToList();
            const string subject         = "Quotation request for Enterprise";
            var          templateRequest = TemplateManager.GetTemplateBody("enterprise-quotation");

            if (!templateRequest.IsSuccess)
            {
                return(Json(response));
            }
            var template = templateRequest.Result;
            var message  = template.Inject(model).Inject(new Dictionary <string, string>
            {
                { "Frequency", model.FrequencyOfPayment.ToString() }
            });

            if (_hostingEnvironment.IsDevelopment())
            {
                emails = new List <string> {
                    EmailResources.SystemTestEmails.OUTLOOK_RECEIVER_EMAIL,
                    EmailResources.SystemTestEmails.GMAIL_RECEIVER_EMAIL
                };
            }
            await _emailSender.SendEmailAsync(emails, subject, message);

            response.IsSuccess = true;
            return(Json(response));
        }
示例#2
0
        public async Task <JsonResult> InviteNewUserAsync([FromBody] InviteNewUserViewModel model)
        {
            var resultModel = new ResultModel();

            if (!ModelState.IsValid)
            {
                resultModel.AttachModelState(ModelState);
                return(Json(resultModel));
            }

            resultModel = await _organizationService.InviteNewUserByEmailAsync(model);

            return(Json(resultModel));
        }
示例#3
0
        public async Task <JsonResult> RequestAdditionalServices([Required] AdditionalServicesViewModel model)
        {
            var response = new ResultModel();

            if (!ModelState.IsValid)
            {
                return(Json(response.AttachModelState(ModelState)));
            }
            var emails = (await _userManager.UserManager.GetUsersInRoleAsync(GlobalResources.Roles.ADMINISTRATOR))
                         .Select(x => x.Email).ToList();
            const string subject         = "Quotation request for additional services";
            var          templateRequest = TemplateManager.GetTemplateBody("quotation-additional-services");

            if (!templateRequest.IsSuccess)
            {
                return(Json(response));
            }
            var template = templateRequest.Result;
            var message  = template.Inject(model).Inject(new Dictionary <string, string>
            {
                { "ImplementationText", model.RequestForNewImplementation
                    ? "New implementation" : "Existing implementation" }
            });

            if (_hostingEnvironment.IsDevelopment())
            {
                emails = new List <string> {
                    EmailResources.SystemTestEmails.OUTLOOK_RECEIVER_EMAIL,
                    EmailResources.SystemTestEmails.GMAIL_RECEIVER_EMAIL
                };
            }

            await _emailSender.SendEmailAsync(emails, subject, message);

            response.IsSuccess = true;
            return(Json(response));
        }