Exemplo n.º 1
0
        public ActionResult SendMonthlyStatement(AuthorStatementRequestToken request, string img)
        {
            var token = _billingManageServices.GetAuthorMonthlyStatement(request);

            if (!token.IsValid)
            {
                return(ErrorResponse(token.Message));
            }

            string error;

            var imageBytes = Convert.FromBase64String(img.Substring(img.IndexOf(',') + 1));

            var stream = new MemoryStream(imageBytes.Length);

            stream.Write(imageBytes, 0, imageBytes.Length);

            var fileName = FileEnums.eFileOwners.Author + "/Charts/" + ShortGuid.NewGuid() + ".png";
            var etag     = _s3Wrapper.Upload(fileName, "image/png", stream, out error);
            var url      = string.IsNullOrEmpty(etag) ? "#" : _s3Wrapper.GetFileURL(fileName);

            token.ChartImageUrl = url;

            var body = RenderRazorViewToString("MonthlyStatementEmail", token);

            var result = _billingManageServices.SendAuthorMonthlyStatement(token, body, out error);

            return(Json(new JsonResponseToken {
                success = result, error = error
            }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 2
0
        public FileContentResult GetAuthorKpiChartImage(AuthorStatementRequestToken request)
        {
            var items = _reportServices.GetStatementKpiData(request);

            var svgText = RenderRazorViewToString("_AuthorKpiChart", items);


            var bytes = Encoding.ASCII.GetBytes(svgText);

            using (var stream = new MemoryStream(bytes))
            {
                var svgDocument = SvgDocument.Open(svgText);
                var bitmap      = svgDocument.Draw();
                bitmap.Save(stream, ImageFormat.Png);
                var imageBytes = stream.ToArray();

                return(new FileContentResult(imageBytes, "image/png"));
            }
        }
Exemplo n.º 3
0
        public ActionResult DownloadMonthlyStatement(int userId, short?currencyId = null)
        {
            var prevMonth = this.ToPrevMonthFirstDate();
            var request   = new AuthorStatementRequestToken
            {
                currencyId = currencyId ?? Constants.DEFAULT_CURRENCY_ID,
                userId     = userId,
                year       = prevMonth.Year,
                month      = prevMonth.Month
            };

            var token = _billingManageServices.GetAuthorMonthlyStatementsPrintToken(request);

            var htmlContent = this.ToHtml("MonthlyStatement", token);

            var buffer   = _pdfRenderer.Html2Pdf(htmlContent);
            var fileName = String.Format("{0}_{1}_monthly_statement.pdf", prevMonth.Year, prevMonth.Month);

            return(new BinaryContentResult(buffer, "application/pdf", fileName));
        }
Exemplo n.º 4
0
        public ActionResult MonthlyStatement(AuthorStatementRequestToken request)
        {
            var token = _billingManageServices.GetAuthorMonthlyStatement(request);

            return(View(token));
        }
Exemplo n.º 5
0
        //public ActionResult PaypalSubscriptionTooltip(string id)
        //{
        //    string error;
        //    var token = _paypalManageServices.GetSubscriptionProfileDetails(id,out error);
        //    if (token == null) return Content(String.Format("<h2>{0}</h2>",error));
        //    return PartialView("Billing/_PaypalSubscriptionInfo",token);
        //}

        //public ActionResult SubscriptionPaymentsTooltip(Guid? id)
        //{
        //    var list = _subscriptionsManageServices.GetSubscriptionPayments(id);
        //    return PartialView("Billing/_SubscriptionPayments", list);
        //}


        public ActionResult MonthlyStatementTab(AuthorStatementRequestToken request)
        {
            var token = _billingManageServices.GetAuthorMonthlyStatement(request);

            return(PartialView("Billing/_MonthlyStatementTab", token));
        }
Exemplo n.º 6
0
        public ActionResult GetStatementKpiData(AuthorStatementRequestToken token)
        {
            var facts = _reportServices.GetStatementKpiData(token);

            return(Json(facts, JsonRequestBehavior.AllowGet));
        }