public void CalculateEndorsementQuote(bool showPremium)
        {
            master.IsSessionAvailable();
            var userInfo = CommonMethods.GetUserDetails();
            var service  = CommonMethods.GetLogedInService();

            if (string.IsNullOrEmpty(txtNewPremium.Text))
            {
                master.ShowErrorPopup("Please enter premium value !!", "Change Premium");
                return;
            }

            bool    premiumDeduct = false;
            decimal newPremium    = Convert.ToDecimal(txtNewPremium.Text);

            if (Convert.ToDecimal(txtNewPremium.Text) < 0)
            {
                newPremium    = Math.Abs(Convert.ToDecimal(txtNewPremium.Text));
                premiumDeduct = true;
            }

            var commisionRequest = new BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest();

            commisionRequest.AgentCode     = userInfo.AgentCode;
            commisionRequest.Agency        = userInfo.Agency;
            commisionRequest.SubClass      = subClass.Value;
            commisionRequest.PremiumAmount = newPremium;
            commisionRequest.IsDeductable  = true;

            //Get commision for the endorsement premium.
            var commissionresult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                     <BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionResponse>,
                                                     BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest>
                                       ("api/insurance/Commission", commisionRequest);

            if (commissionresult.StatusCode == 200 && commissionresult.Result.IsTransactionDone &&
                commissionresult.Result.CommissionAmount >= 0)
            {
                //commission.Text = Convert.ToString(commissionresult.Result.CommissionAmount);

                if (premiumDeduct)
                {
                    calculatedPremium.Value    = Convert.ToString(newPremium * -1);
                    adjustedPremium.Value      = Convert.ToString(newPremium * -1);
                    calculatedCommission.Value = Convert.ToString(commissionresult.Result.CommissionAmount * -1);
                    adjustedCommission.Value   = Convert.ToString(commissionresult.Result.CommissionAmount * -1);
                    ShowPremium(userInfo, newPremium * -1, commissionresult.Result.CommissionAmount * -1);
                }
                else
                {
                    calculatedPremium.Value    = Convert.ToString(newPremium);
                    adjustedPremium.Value      = Convert.ToString(newPremium);
                    calculatedCommission.Value = Convert.ToString(commissionresult.Result.CommissionAmount);
                    adjustedCommission.Value   = Convert.ToString(commissionresult.Result.CommissionAmount);
                    ShowPremium(userInfo, newPremium, commissionresult.Result.CommissionAmount);
                }
                btnSubmit.Visible = true;
            }
        }
        public void CalculateEndorsementQuote(bool showPremium)
        {
            master.IsSessionAvailable();
            var userInfo = CommonMethods.GetUserDetails();
            var service  = CommonMethods.GetLogedInService();

            var motorEndorementQuote = new BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuote
            {
                Agency            = userInfo.Agency,
                AgentCode         = userInfo.AgentCode,
                MainClass         = MainClass,
                SubClass          = SubClass,
                EffectiveFromDate = txtEffectiveFromDate.Text.CovertToCustomDateTime(),
                EffectiveToDate   = txtEffectiveToDate.Text.CovertToCustomDateTime(),
                PaidPremium       = string.IsNullOrEmpty(paidPremium.Value) ? decimal.Zero : Convert.ToDecimal(paidPremium.Value),
                EndorsementType   = "AddRemoveBank",
                CancelationDate   = DateTime.Now,
                NewInsuredCode    = string.Empty
            };

            //Calculate the motor endorsement premium.
            var motorEndoQuoteResult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                         <BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuoteResult>,
                                                         BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuote>
                                           (BKIC.SellingPoint.DTO.Constants.MotorEndorsementURI.GetMotorEndorsementQuote, motorEndorementQuote);

            if (motorEndoQuoteResult.StatusCode == 200 && motorEndoQuoteResult.Result.IsTransactionDone)
            {
                var endoresementPremium = motorEndoQuoteResult.Result.EndorsementPremium;
                calculatedPremium.Value = endoresementPremium.ToString();

                var commisionRequest = new BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest();
                commisionRequest.AgentCode     = userInfo.AgentCode;
                commisionRequest.Agency        = userInfo.Agency;
                commisionRequest.SubClass      = subClass.Value;
                commisionRequest.PremiumAmount = endoresementPremium;

                //Get commision for the endorsement premium.
                var commissionresult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                         <BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionResponse>,
                                                         BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest>("api/insurance/Commission", commisionRequest);

                if (commissionresult.StatusCode == 200 && commissionresult.Result.IsTransactionDone && commissionresult.Result.CommissionAmount > 0)
                {
                    //commission.Text = Convert.ToString(commissionresult.Result.CommissionAmount);
                    calculatedCommision.Value = Convert.ToString(commissionresult.Result.CommissionAmount);
                    //ShowPremium(userInfo, endoresementPremium, commissionresult.Result.CommissionAmount);
                }
            }
        }
 public RR.CommissionResponse GetCommision(RR.CommissionRequest request)
 {
     try
     {
         BLO.CommissionRequest  requestdetails = _mapper.Map <RR.CommissionRequest, BLO.CommissionRequest>(request);
         BLO.CommissionResponse result         = _insurancePortalRepository.GetCommission(requestdetails);
         return(_mapper.Map <BLO.CommissionResponse, RR.CommissionResponse>(result));
     }
     catch (Exception ex)
     {
         return(new RR.CommissionResponse
         {
             IsTransactionDone = false,
             TransactionErrorMessage = ex.Message
         });
     }
 }
Example #4
0
        public void CalculateEndorsementQuote(bool showPremium)
        {
            master.IsSessionAvailable();
            var userInfo = CommonMethods.GetUserDetails();
            var service  = CommonMethods.GetLogedInService();

            var homeEndorementQuote = new BKIC.SellingPoint.DTO.RequestResponseWrappers.HomeEndorsementQuote
            {
                Agency            = userInfo.Agency,
                AgentCode         = userInfo.AgentCode,
                MainClass         = MainClass,
                SubClass          = SubClass,
                EffectiveFromDate = txtEffectiveFromDate.Text.CovertToCustomDateTime(),
                EffectiveToDate   = txtEffectiveToDate.Text.CovertToCustomDateTime(),
                PaidPremium       = string.IsNullOrEmpty(paidPremium.Value) ? decimal.Zero : Convert.ToDecimal(paidPremium.Value),
                EndorsementType   = "ChangeAddress",
                CancelationDate   = DateTime.Now
            };

            //Calculate the home endorsement premium.
            var homeEndoQuoteResult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                        <BKIC.SellingPoint.DTO.RequestResponseWrappers.HomeEndorsementQuoteResponse>,
                                                        BKIC.SellingPoint.DTO.RequestResponseWrappers.HomeEndorsementQuote>
                                          (BKIC.SellingPoint.DTO.Constants.HomeEndorsementURI.GetHomeEndorsementQuote, homeEndorementQuote);

            if (homeEndoQuoteResult.StatusCode == 200 && homeEndoQuoteResult.Result.IsTransactionDone)
            {
                var endoresementPremium = homeEndoQuoteResult.Result.EndorsementPremium;
                calculatedPremium.Value = endoresementPremium.ToString();


                var  product           = master.GetHomeProduct(MainClass, SubClass);
                bool includeCommission = false;
                if (product != null)
                {
                    var hEndorsement = product.HomeEndorsementMaster.Find(c => c.EndorsementType == "ChangeAddress");
                    if (hEndorsement != null)
                    {
                        includeCommission = hEndorsement.HasCommission;
                    }
                }

                var commisionRequest = new BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest();
                commisionRequest.AgentCode     = userInfo.AgentCode;
                commisionRequest.Agency        = userInfo.Agency;
                commisionRequest.SubClass      = string.IsNullOrEmpty(subClass.Value) ? "SH" : subClass.Value;
                commisionRequest.PremiumAmount = includeCommission ? endoresementPremium : decimal.Zero;

                //Get commision for the endorsement premium.
                var commissionresult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                         <BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionResponse>,
                                                         BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest>("api/insurance/Commission", commisionRequest);

                if (commissionresult.StatusCode == 200 && commissionresult.Result.IsTransactionDone && commissionresult.Result.CommissionAmount > 0)
                {
                    //commission.Text = Convert.ToString(commissionresult.Result.CommissionAmount);
                    calculatedCommision.Value = Convert.ToString(commissionresult.Result.CommissionAmount);
                    //ShowPremium(userInfo, endoresementPremium, commissionresult.Result.CommissionAmount);
                }
            }
        }
        public void CalculateEndorsementQuote(bool showPremium)
        {
            master.IsSessionAvailable();
            var userInfo = CommonMethods.GetUserDetails();
            var service  = CommonMethods.GetLogedInService();

            if (string.IsNullOrEmpty(txtNewPremium.Text))
            {
                master.ShowErrorPopup("Please enter premium value !!", "Change Premium");
                return;
            }

            bool    premiumDeduct    = false;
            decimal newPremium       = Convert.ToDecimal(txtNewPremium.Text);
            var     commisionRequest = new BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest
            {
                AgentCode = userInfo.AgentCode,
                Agency    = userInfo.Agency,
                SubClass  = subClass.Value
            };

            if (Convert.ToDecimal(txtNewPremium.Text) < 0)
            {
                newPremium    = Math.Abs(Convert.ToDecimal(txtNewPremium.Text));
                premiumDeduct = true;
            }

            var  product           = master.GetProduct(MainClass, SubClass);
            bool includeCommission = false;

            if (product != null)
            {
                var mEndorsement = product.MotorEndorsementMaster.Find(c => c.EndorsementType == "ChangePremium");
                if (mEndorsement != null)
                {
                    includeCommission = mEndorsement.HasCommission;
                }
            }
            commisionRequest.PremiumAmount = includeCommission ? newPremium : decimal.Zero;
            commisionRequest.IsDeductable  = true;

            //Get commision for the endorsement premium.
            var commissionresult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                     <BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionResponse>,
                                                     BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest>
                                       (BKIC.SellingPoint.DTO.Constants.CommissionURI.CalculateCommission, commisionRequest);

            if (commissionresult.StatusCode == 200 && commissionresult.Result.IsTransactionDone &&
                commissionresult.Result.CommissionAmount >= 0)
            {
                if (showPremium)
                {
                    if (premiumDeduct)
                    {
                        calculatedPremium.Value    = Convert.ToString(newPremium * -1);
                        adjustedPremium.Value      = Convert.ToString(newPremium * -1);
                        calculatedCommission.Value = Convert.ToString(commissionresult.Result.CommissionAmount * -1);
                        adjustedCommission.Value   = Convert.ToString(commissionresult.Result.CommissionAmount * -1);
                        ShowPremium(userInfo, newPremium * -1, commissionresult.Result.CommissionAmount * -1);
                    }
                    else
                    {
                        calculatedPremium.Value    = Convert.ToString(newPremium);
                        adjustedPremium.Value      = Convert.ToString(newPremium);
                        calculatedCommission.Value = Convert.ToString(commissionresult.Result.CommissionAmount);
                        adjustedCommission.Value   = Convert.ToString(commissionresult.Result.CommissionAmount);
                        ShowPremium(userInfo, newPremium, commissionresult.Result.CommissionAmount);
                    }
                }
            }
            else
            {
                master.ShowLoading = false;
                master.ShowErrorPopup(commissionresult.Result.TransactionErrorMessage, "Request Failed !");
                return;
            }
            //Calculate VAT.
            var vatResponse = master.GetVat(newPremium, commissionresult.Result.CommissionAmount);

            if (vatResponse != null && vatResponse.IsTransactionDone)
            {
                decimal TotalPremium    = newPremium + vatResponse.VatAmount;
                decimal TotalCommission = commissionresult.Result.CommissionAmount + vatResponse.VatCommissionAmount;
                if (premiumDeduct)
                {
                    ShowVAT(userInfo, vatResponse.VatAmount * -1, vatResponse.VatCommissionAmount * -1, TotalPremium * -1, TotalCommission * -1);
                }
                else
                {
                    ShowVAT(userInfo, vatResponse.VatAmount, vatResponse.VatCommissionAmount, TotalPremium, TotalCommission);
                }
            }
            btnSubmit.Visible = true;
        }
        public void CalculateEndorsementQuote(bool showPremium)
        {
            master.IsSessionAvailable();
            var userInfo = CommonMethods.GetUserDetails();
            var service  = CommonMethods.GetLogedInService();

            var motorEndorementQuote = new BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuote
            {
                Agency            = userInfo.Agency,
                AgentCode         = userInfo.AgentCode,
                MainClass         = MainClass,
                SubClass          = SubClass,
                EffectiveFromDate = txtEffectiveFromDate.Text.CovertToCustomDateTime(),
                EffectiveToDate   = txtEffectiveToDate.Text.CovertToCustomDateTime(),
                PaidPremium       = string.IsNullOrEmpty(paidPremium.Value) ? decimal.Zero : Convert.ToDecimal(paidPremium.Value),
                EndorsementType   = "Extended",
                CancelationDate   = DateTime.Now,
                NewInsuredCode    = string.Empty
            };
            var daysDiff = (txtEffectiveToDate.Text.CovertToCustomDateTime() - expireDate.Value.CovertToCustomDateTime()).TotalDays;

            motorEndorementQuote.ExtendedDays = Convert.ToInt32(daysDiff);
            motorEndorementQuote.DocumentNo   = ddlMotorPolicies.SelectedItem.Text.Trim();

            //Calculate the motor endorsement premium.
            var motorEndoQuoteResult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                         <BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuoteResult>,
                                                         BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuote>
                                           (BKIC.SellingPoint.DTO.Constants.MotorEndorsementURI.GetMotorEndorsementQuote, motorEndorementQuote);

            if (motorEndoQuoteResult.StatusCode == 200 && motorEndoQuoteResult.Result.IsTransactionDone)
            {
                var endoresementPremium = motorEndoQuoteResult.Result.EndorsementPremium;
                calculatedPremium.Value = endoresementPremium.ToString();
                adjustedPremium.Value   = endoresementPremium.ToString();

                var  product           = master.GetProduct(MainClass, SubClass);
                bool includeCommission = false;
                if (product != null)
                {
                    var mEndorsement = product.MotorEndorsementMaster.Find(c => c.EndorsementType == "Extended");
                    if (mEndorsement != null)
                    {
                        includeCommission = mEndorsement.HasCommission;
                    }
                }

                var commisionRequest = new BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest();
                commisionRequest.AgentCode     = userInfo.AgentCode;
                commisionRequest.Agency        = userInfo.Agency;
                commisionRequest.SubClass      = subClass.Value;
                commisionRequest.PremiumAmount = includeCommission ? endoresementPremium : decimal.Zero;
                commisionRequest.IsDeductable  = true;

                //Get commision for the endorsement premium.
                var commissionresult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                         <BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionResponse>,
                                                         BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest>
                                           (BKIC.SellingPoint.DTO.Constants.CommissionURI.CalculateCommission, commisionRequest);

                if (commissionresult.StatusCode == 200 && commissionresult.Result.IsTransactionDone &&
                    commissionresult.Result.CommissionAmount >= 0)
                {
                    calculatedCommission.Value = Convert.ToString(commissionresult.Result.CommissionAmount);
                    adjustedCommission.Value   = Convert.ToString(commissionresult.Result.CommissionAmount);

                    if (showPremium)
                    {
                        ShowPremium(userInfo, endoresementPremium, commissionresult.Result.CommissionAmount);
                    }
                }
                else
                {
                    master.ShowLoading = false;
                    master.ShowErrorPopup(commissionresult.Result.TransactionErrorMessage, "Request Failed !");
                    return;
                }
                //Calculate VAT.
                var vatResponse = master.GetVat(endoresementPremium, commissionresult.Result.CommissionAmount);
                if (vatResponse != null && vatResponse.IsTransactionDone)
                {
                    decimal TotalPremium    = endoresementPremium + vatResponse.VatAmount;
                    decimal TotalCommission = commissionresult.Result.CommissionAmount + vatResponse.VatCommissionAmount;
                    ShowVAT(userInfo, vatResponse.VatAmount, vatResponse.VatCommissionAmount, TotalPremium, TotalCommission);
                }
                btnSubmit.Visible = true;
            }
            else
            {
                master.ShowLoading = false;
                master.ShowErrorPopup(motorEndoQuoteResult.Result.TransactionErrorMessage, "Request Failed !");
                return;
            }
        }
Example #7
0
        public void CalculateEndorsementQuote(bool showPremium)
        {
            master.IsSessionAvailable();
            var userInfo = CommonMethods.GetUserDetails();
            var service  = CommonMethods.GetLogedInService();

            if (string.IsNullOrEmpty(txtNewExcess.Text))
            {
                master.ShowErrorPopup("Please enter new excess amount !!", "Change Excess");
                return;
            }
            var motorEndorementQuote = new BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuote();

            motorEndorementQuote.Agency            = userInfo.Agency;
            motorEndorementQuote.AgentCode         = userInfo.AgentCode;
            motorEndorementQuote.MainClass         = MainClass;
            motorEndorementQuote.SubClass          = SubClass;
            motorEndorementQuote.EffectiveFromDate = txtEffectiveFromDate.Text.CovertToCustomDateTime();
            motorEndorementQuote.EffectiveToDate   = txtEffectiveToDate.Text.CovertToCustomDateTime();
            motorEndorementQuote.PaidPremium       = string.IsNullOrEmpty(paidPremium.Value) ? decimal.Zero : Convert.ToDecimal(paidPremium.Value);
            motorEndorementQuote.EndorsementType   = "ChangeExcess";
            motorEndorementQuote.CancelationDate   = txtEffectiveToDate.Text.CovertToCustomDateTime();
            motorEndorementQuote.NewInsuredCode    = string.Empty;

            //Calculate the motor endorsement premium.
            var motorEndoQuoteResult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                         <BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuoteResult>,
                                                         BKIC.SellingPoint.DTO.RequestResponseWrappers.MotorEndorsementQuote>
                                           (BKIC.SellingPoint.DTO.Constants.MotorEndorsementURI.GetMotorEndorsementQuote, motorEndorementQuote);

            if (motorEndoQuoteResult.StatusCode == 200 && motorEndoQuoteResult.Result.IsTransactionDone)
            {
                var endoPremium = motorEndoQuoteResult.Result.RefundPremium;
                calculatedPremium.Value = endoPremium.ToString();


                var  product           = master.GetProduct(MainClass, SubClass);
                bool includeCommission = false;
                if (product != null)
                {
                    var mEndorsement = product.MotorEndorsementMaster.Find(c => c.EndorsementType == "ChangeExcess");
                    if (mEndorsement != null)
                    {
                        includeCommission = mEndorsement.HasCommission;
                    }
                }
                var commisionRequest = new BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest();
                commisionRequest.AgentCode     = userInfo.AgentCode;
                commisionRequest.Agency        = userInfo.Agency;
                commisionRequest.SubClass      = subClass.Value;
                commisionRequest.PremiumAmount = includeCommission ? endoPremium : decimal.Zero;
                // commisionRequest.PremiumAmount = decimal.Zero;

                //Get commision for the endorsement premium.
                var commissionresult = service.PostData <BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper
                                                         <BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionResponse>,
                                                         BKIC.SellingPoint.DTO.RequestResponseWrappers.CommissionRequest>
                                           (BKIC.SellingPoint.DTO.Constants.CommissionURI.CalculateCommission, commisionRequest);

                if (commissionresult.StatusCode == 200 && commissionresult.Result.IsTransactionDone &&
                    commissionresult.Result.CommissionAmount >= 0)
                {
                    //commission.Text = Convert.ToString(commissionresult.Result.CommissionAmount);
                    calculatedCommision.Value = Convert.ToString(commissionresult.Result.CommissionAmount);
                    if (showPremium)
                    {
                        ShowPremium(userInfo, endoPremium, commissionresult.Result.CommissionAmount);
                    }
                }
            }
        }