/// <summary>
        /// Letters the template.
        /// </summary>
        /// <param name="letterTemplateId">The letter template identifier.</param>
        /// <returns></returns>
        public ActionResult LetterTemplate(int letterTemplateId)
        {
            LetterTemplateViewModel letterTemplateViewModel = new LetterTemplateViewModel();

            if (letterTemplateId > 0)
            {
                LetterTemplate letterTemplate = new LetterTemplate {
                    LetterTemplateId = letterTemplateId, UserName = GetCurrentUserName()
                };
                letterTemplate = PostApiResponse <LetterTemplate>(Constants.LetterTemplate, Constants.Get,
                                                                  letterTemplate);


                if (letterTemplate != null && letterTemplate.TemplateText != null)
                {
                    letterTemplate = LetterReportUtil.UpdateImageUrl(letterTemplate, Request.ApplicationPath);

                    letterTemplateViewModel = Mapper.Map <LetterTemplate, LetterTemplateViewModel>(letterTemplate);
                }
            }
            return(View(letterTemplateViewModel));
        }
Beispiel #2
0
        /// <summary>
        /// Generates the appeal letter.
        /// </summary>
        /// <param name="leterTemplateId">The leter template identifier.</param>
        /// <param name="modelId">The model identifier.</param>
        /// <param name="dateType">Type of the date.</param>
        /// <param name="startDate">The start date.</param>
        /// <param name="endDate">The end date.</param>
        /// <param name="criteria">The criteria.</param>
        /// <returns></returns>
        public ActionResult GenerateAppealLetter(long leterTemplateId, long modelId, int?dateType, DateTime?startDate, DateTime?endDate, string criteria)
        {
            AppealLetter appealLetter = new AppealLetter
            {
                LetterTemplateId    = leterTemplateId,
                NodeId              = modelId,
                DateType            = Convert.ToInt32(dateType),
                StartDate           = Convert.ToDateTime(startDate),
                EndDate             = Convert.ToDateTime(endDate),
                ClaimSearchCriteria = criteria,
                //Added RequestedUserID and RequestedUserName with reference to HIPAA logging feature
                RequestedUserId =
                    string.IsNullOrEmpty(GetLoggedInUserName()) ? Guid.Empty.ToString() : GetUserKey(),
                RequestedUserName = GetLoggedInUserName(),
                MaxNoOfRecords    = GlobalConfigVariable.MaxNoOfDataForLetters
            };

            appealLetter = PostApiResponse <AppealLetter>(Constants.AppealLetter,
                                                          Constants.GetAppealLetter, appealLetter);
            string[] fileName = LetterReportUtil.GetExportedFileName(appealLetter,
                                                                     GlobalConfigVariable.ReportsFilePath, Constants.AppealLetterFileBaseName);
            return(Json(fileName));
        }
        public ActionResult Preview(LetterTemplateViewModel letterTemplateViewModel)
        {
            if (letterTemplateViewModel.LetterTemplateId > 0 && letterTemplateViewModel.TemplateText == null)
            {
                LetterTemplate letterTemplate = new LetterTemplate
                {
                    UserName         = GetCurrentUserName(),
                    LetterTemplateId = letterTemplateViewModel.LetterTemplateId
                };
                letterTemplate = PostApiResponse <LetterTemplate>(Constants.LetterTemplate, Constants.Get,
                                                                  letterTemplate);
                if (letterTemplate != null)
                {
                    letterTemplateViewModel = Mapper.Map <LetterTemplate, LetterTemplateViewModel>(letterTemplate);
                }
            }
            else
            {
                letterTemplateViewModel.UserName = GetCurrentUserName();
                PostApiResponse <bool>(Constants.LetterTemplate, Constants.InsertAuditLog,
                                       letterTemplateViewModel);
            }
            var serializer = new JavaScriptSerializer {
                MaxJsonLength = Int32.MaxValue
            };

            string[] fileName = LetterReportUtil.RtfPreview(letterTemplateViewModel,
                                                            GlobalConfigVariable.ReportsFilePath);
            var result = new ContentResult
            {
                Content     = serializer.Serialize(new { fileNameData = fileName }),
                ContentType = Constants.ContentTypeApplication
            };

            return(result);
        }