private bool SendApproveMail(PolicyDetailViewModel detail)
        {
            var apiKey      = ConfigurationManager.AppSettings["SendGridKey"].ToString();
            var client      = new SendGridClient(apiKey);
            var bodymessage = @"<html><head><title> Policy Detail </title> <style> table {    border-collapse: collapse; } table, th, td {    border: 1px solid black;
                        }</style>
                    </head><body><table >" +
                              "<thead class='thead-dark'><tr><td>Policy No</td><td>Customer Name</td><td>Date Of Birth</td><td>Phone No</td><td>Sum Assured</td><td>Policy Created Date</td><td>PremiumAmount</td></tr></thead>" +
                              "<tr><td>" + detail.PolicyNo + "</td><td>" + detail.FirstName + " " + detail.LastName + "</td><td>" + detail.DateofBirth + "</td><td>" + detail.MobileNo + "</td><td>" + detail.SumAssured + "</td><td>" + detail.CreatedDate + "</td><td>" + detail.PremiumAmount + "</td></tr>" +
                              "</table>" +
                              "<br/> THIS IS AN AUTOMATED MESSAGE - PLEASE DO NOT REPLY DIRECTLY TO THIS EMAIL." +
                              "</body></html>";
            var msg = new SendGridMessage()
            {
                From    = new EmailAddress("*****@*****.**", "Charles"),
                Subject = "Policy No : " + detail.PolicyNo + " has been Approved.",
                // PlainTextContent = "Hello, Email!",
                HtmlContent = bodymessage
            };

            msg.AddTo(new EmailAddress("*****@*****.**", "Insurance Admin"));
            var response = client.SendEmailAsync(msg);

            return(true);
        }
        public ActionResult loadTabPolicyDetail(long tempPolicyNo)
        {
            PolicyDetailViewModel detail = manager.GetPolicyAllDetail(tempPolicyNo);

            detail.Documents = manager.GetSupportingDocument(tempPolicyNo);
            return(Json(detail, JsonRequestBehavior.AllowGet));
        }
        public long AddUnwriterReviewDetail([FromBody] UnderWriterReview detail)
        {
            long result = 0;

            try
            {
                result = repository.AddUnwriterReviewDetail(detail);
                PolicyDetailViewModel policydetail = repository.GetPolicyAllDetail(detail.TempPolicyNo);
                SendApproveMail(policydetail);
            }
            catch (Exception dbEx)
            {
                return(result);
            }
            return(result);
        }
示例#4
0
 /// <summary>
 /// 打开确认投保窗体
 /// </summary>
 /// <param name="vm"></param>
 /// <param name="call"></param>
 internal static void ShowConfirmPayInsurance(PolicyDetailViewModel vm, Action <bool?> call = null)
 {
     DispatcherHelper.UIDispatcher.Invoke(new Action(() =>
     {
         var win = new PayInsuranceConfirmWindow {
             Owner = Application.Current.MainWindow, DataContext = vm
         };
         vm.IsDone  = false;
         var result = win.ShowDialog();
         if (call != null)
         {
             call(result);
         }
         win.DataContext = null;
     }));
 }
示例#5
0
        /// <summary>
        /// 显示选择购买航意险乘客信息窗体
        /// </summary>
        /// <param name="tvm"></param>
        /// <param name="call"></param>
        internal static void ShowPassengers(PolicyDetailViewModel tvm, Action <bool?> call = null)
        {
            DispatcherHelper.UIDispatcher.Invoke(new Action(() =>
            {
                var window         = new ChoosePassengersWindow(tvm.Flag);
                var vm             = new ChoosePassengersViewModel(tvm);
                window.Owner       = Application.Current.MainWindow;
                window.DataContext = vm;
                var result         = window.ShowDialog();

                if (call != null)
                {
                    call(result);
                }
                window.DataContext = null;
            }));
        }
示例#6
0
        /// <summary>
        /// 二次支付保险窗体
        /// </summary>
        /// <param name="orderId"></param>
        /// <param name="call"></param>
        internal static void ShowSecondPayInsurance(string orderId, Action <bool?> call = null)
        {
            DispatcherHelper.UIDispatcher.Invoke(new Action(() =>
            {
                var window   = new PayInsuranceSecondWindow();
                var vm       = new PolicyDetailViewModel();
                window.Owner = Application.Current.MainWindow;
                vm.LoadOrderInfo(orderId);
                window.DataContext = vm;
                var result         = window.ShowDialog();

                if (call != null)
                {
                    call(result);
                }
                window.DataContext = null;
            }));
        }
示例#7
0
        public PolicyDetailViewModel GetPolicyAllDetail(long tempPolicyNo)
        {
            var detail = new PolicyDetailViewModel();

            try
            {
                using (IDbConnection db = new SqlConnection(ConnectionString))
                {
                    string sql = @"EXEC uspGetInsuranceAllTabDetail @TempPolicyNo";
                    detail = db.Query <PolicyDetailViewModel>(sql,
                                                              new { TempPolicyNo = tempPolicyNo }).FirstOrDefault();
                }
            }
            catch (Exception ex)
            {
                return(detail);
            }
            return(detail);
        }
示例#8
0
        public ChoosePassengersViewModel(PolicyDetailViewModel vm)
        {
            if (vm == null)
            {
                return;
            }
            _vm = vm;
            if (vm.Order == null)
            {
                return;
            }
            switch (vm.Flag)
            {
            case 0:    //航意险
                Passengers = vm.InPassers.Select(p => new ChoosePassengersModel
                {
                    BuyInsuranceCount = p.BuyInsuranceCount,
                    CardNo            = p.CardNo,
                    Id                = p.Id,
                    IsBuyInsurance    = p.IsBuyInsurance,
                    IsInsuranceRefund = p.IsInsuranceRefund,
                    IsSelected        = p.IsBuyInsurance,
                    Mobile            = p.Mobile,
                    PassengerName     = p.PassengerName,
                    PassengerType     = p.PassengerType,
                }).ToList();
                break;

            case 1:    //极速退
                Passengers = vm.RePassers.Select(p => new ChoosePassengersModel
                {
                    CardNo            = p.CardNo,
                    Id                = p.Id,
                    IsBuyInsurance    = p.IsBuyInsurance,
                    IsInsuranceRefund = p.IsInsuranceRefund,
                    IsSelected        = p.IsInsuranceRefund,
                    Mobile            = p.Mobile,
                    PassengerName     = p.PassengerName,
                    PassengerType     = p.PassengerType,
                }).ToList();
                break;
            }
        }