예제 #1
0
        //
        // GET: /ProfileImageMerging/

        public ActionResult Index(ProfileImageMergingIndexModel model)
        {
            if (model == null)
            {
                model = new ProfileImageMergingIndexModel();
            }

            // return this.Submit(model);
            ViewData["UploadAvatarWidth"]  = _appSettings.UploadAvatarWidth;
            ViewData["UploadAvatarHeight"] = _appSettings.UploadAvatarHeight;

            return(View(model));
        }
예제 #2
0
        public ActionResult Submit(ProfileImageMergingIndexModel model)
        {
            byte[] result;

            try
            {
                result = _profileImageMergingService.MergeImageToProfile(model.DistNumber, model.ProfilePageIndex, model.UndersignedPoint,
                                                                         model.SecondPersonPoint);

                if (result == null)
                {
                    throw new NullReferenceException();
                }
            }
            catch (ABOException ex)
            {
                if (ex.ExceptionType == AboExceptionType.Warning)
                {
                    WarningNotification(ex.Message);

                    model.SupressWarning = true;
                    ModelState.Clear();
                    return(View("Index", model));
                }

                ErrorNotification(ex.Message);
                return(View("Index", model));
            }
            catch (Exception ex)
            {
                _logger.Error("Error occurred when merging image: ", ex);
                return(PageError());
            }

            var cd = new ContentDisposition()
            {
                FileName = model.DistNumber + ".pdf",
                Inline   = false
            };

            Response.AppendHeader("Content-Disposition", cd.ToString());
            return(File(result, "application/pdf"));
        }