예제 #1
0
        public IActionResult TransactionView(Guid code, FindModel model)
        {
            if (model != null)
            {
                code = model.Code;
            }
            StatusNames statusNames = new StatusNames();

            ViewBag.StatusEs = new SelectList(statusNames.GetStatuses().Where(s => s.Status != 1 && s.Status != 2), "Status", "Name");
            decimal            df      = 0;
            var                link    = transactionLinkService.GetTransactionLinks().Where(s => s.LinkCode == code).FirstOrDefault();
            var                tr      = transactionService.GetTransaction(link.TransactionID);
            TransactionDetails details = new TransactionDetails();

            details.TransactionID     = tr.Id;
            details.FirstName         = tr.FirstName;
            details.LastName          = tr.LastName;
            details.BuyerEmail        = tr.BuyerEmail;
            details.ItemName          = tr.ItemName;
            details.DescriptionOfItem = tr.DescriptionOfItem;
            details.Amount            = tr.Amount;
            details.DeliveryType      = tr.DeliveryTypeID == 1 ? "Free Delivery" : tr.DeliveryTypeID == 2 ? "Paid Delivery" : "";
            details.Deliveryfee       = tr.Deliveryfee != 0 ? tr.Deliveryfee : tr.Deliveryfee == 0 ? 0 : 0;
            details.DeliveryTime      = tr.DeliveryTime;
            details.TermsOfReturns    = tr.TermsOfReturns;
            details.ProductImageUrl   = tr.ProductImageUrl;
            details.ProductImageUrl1  = tr.ProductImageUrl1;
            details.ProductImageUrl2  = tr.ProductImageUrl2;
            details.ProductImageUrl3  = tr.ProductImageUrl3;
            details.ProductImageUrl4  = tr.ProductImageUrl4;
            details.SellerName        = tr.SellerName;
            details.SellerEmail       = tr.SellerEmail;
            details.escrowfee         = tr.escrowfee;
            details.Totalfee          = tr.Totalfee;
            details.LinkCode          = link.LinkCode;
            details.LinkID            = link.Id;
            details.statusID          = tr.Status;
            details.Status            = tr.Status == 1 ? "<div style=\"color:red\">Pending<div>" : tr.Status == 2 ? "<div style=\"color:yellow\">Paid</div>" : tr.Status == 3 ? "<div style=\"color:purple\">Shipped</div>" : tr.Status == 4 ? "<div style=\"color:green\">Receieved</div>" : "";

            return(View(details));
        }
예제 #2
0
        public IActionResult UpdateStatus(TransactionDetails payment, [FromServices] IEmailSender emailSender, [FromServices] IConfiguration configuration)
        {
            var tr        = transactionService.GetTransaction(payment.TransactionID);
            var link      = transactionLinkService.GetTransactionLinks().Where(s => s.TransactionID == tr.Id).FirstOrDefault();
            var payements = paymentService.GetPayments().Where(s => s.LinkID == link.Id).FirstOrDefault();

            link.Status      = payment.statusID;
            tr.Status        = payment.statusID;
            payements.Status = payment.statusID;
            paymentService.UpdatePayment(payements);
            transactionService.UpdateTransaction(tr);
            transactionLinkService.UpdateTransactionLink(link);
            if (payment.statusID == 4)
            {
                var    linkas = Url.Action("TransactionView", "MyTransaction", new { code = link.LinkCode }, Request.Scheme, Request.Host.ToString());
                string coded  = link.LinkCode.ToString();
                var    title  = "Pay Guardex: You have a transaction.";
                var    title1 = "Pay Guardex: You have started a transaction.";

                var mailbody = "<html>" +
                               "<head>" +
                               "<link rel=\"stylesheet\" href=\"https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css\" integrity=\"sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk\" crossorigin=\"anonymous\">" +
                               "</head>" +
                               "<body>" +
                               "<div class=\"container\">" +
                               "<div class=\"row\">" +
                               "<div class=\"col-md-12\" style=\"padding:30px;background-color:#d8e9ff\">" +
                               "<h3 style=\"color:forestgreen\">Pay Guardex</h3>" +
                               "<div>" +
                               "<p>You have recieved product from " + tr.SellerEmail + "  </p>" +
                               "</div>" +
                               "<div>" +
                               "<p>Your have successfully recieved product.</p>" +
                               "<p>You can still view the transaction.</p>" +
                               "<p>" + linkas + "</p>" +
                               "</div>" +
                               "<div style=\"text-align:center\">" +
                               "<a href=" + linkas + " class=\"btn btn-success\"> Manage Transaction : </a>" +
                               "</div>" +
                               "</div>" +
                               "</div>" +
                               "</div>" +
                               "</ body >" +
                               "</html>";
                var mailbody1 = "<html>" +
                                "<head>" +
                                "<link rel=\"stylesheet\" href=\"https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css\" integrity=\"sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk\" crossorigin=\"anonymous\">" +
                                "</head>" +
                                "<body>" +
                                "<div class=\"container\">" +
                                "<div class=\"row\">" +
                                "<div class=\"col-md-12\" style=\"padding:30px;background-color:#d8e9ff\">" +
                                "<h3 style=\"color:forestgreen\">Pay Guardex</h3>" +
                                "<div>" +
                                "<p> " + tr.BuyerEmail + " recieved the product</p>" +
                                "</div>" +
                                "<div>" +
                                "<p>" + tr.BuyerEmail + " recieved the product successfully.</p>" +
                                "<p>When buyer recieve the product we will inform you.</p>" +
                                "<p>Thank you.</p>" +
                                "<p></p>" +
                                "</div>" +
                                "<div style=\"text-align:center\">" +
                                "</div>" +
                                "</div>" +
                                "</div>" +
                                "</div>" +
                                "</ body >" +
                                "</html>";

                emailSender.Post(
                    subject: title,
                    body: mailbody,
                    recipients: tr.BuyerEmail,
                    sender: configuration["AdminContact"]);
                emailSender.Post(
                    subject: title1,
                    body: mailbody1,
                    recipients: tr.SellerEmail,
                    sender: configuration["AdminContact"]);
            }
            return(Redirect("/Myescrow/Index"));
        }