예제 #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Page.IsPostBack)
            {
                if (Request["__EVENTARGUMENT"] == "SaveModelSwitchDetails")
                {
                    btnSave_Click();
                }
                else if (Request["__EVENTARGUMENT"] == "ChangeFund")
                {
                    replaceFund(int.Parse(this.hfFundIDOrig.Value), int.Parse(this.hfFundIDNew.Value));
                }
                else if (Request["__EVENTARGUMENT"] == "AddMoreFund")
                {
                    addNewFund(int.Parse(this.hfFundIDNew.Value));
                }
            }
            else
            {
                Session["SourcePage"] = string.Format("/MP/details.asp?MID={0}&MPID={1}", ModelGroupID(), ModelPortfolioID());

                clsPortfolio oPortfolio = new clsPortfolio(ModelGroupID(), ModelPortfolioID(), UserID());
                populateHeader(oPortfolio);
                populateDetails(oPortfolio.propPortfolioDetails);
                clsModelGroup     _clsModelGroup     = new clsModelGroup(Portfolio(), ModelGroupID(), ModelPortfolioID(), IFA_ID());
                clsModelPortfolio _clsModelPortfolio = _clsModelGroup.propModelPortfolio;
                populateSwitchDetails(_clsModelPortfolio.propModelPortfolioDetails);
            }
        }
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!Page.IsPostBack) {
         clsPortfolio Portfolio = new clsPortfolio(this.propClientID, this.propPortfolioID, this.propUserID);
         populate(Portfolio.propPortfolioDetails);             
     }
 }
예제 #3
0
        private void replaceFund(int intOldFundID, int intNewFundID)
        {
            captureSwitchGridviewDetails();

            List <clsSwitchDetails_Client> PreviousListSwitchDetails = (List <clsSwitchDetails_Client>)Session["SwitchDetails_Client"];

            strUserID      = Session[clsSystem_Session.strSession.User.ToString()].ToString();
            strClientID    = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();

            clsPortfolio Portfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            List <clsSwitchDetails_Client> newListSwitchDetails = new List <clsSwitchDetails_Client>();

            try
            {
                newListSwitchDetails = clsSwitchDetails_Client.FundChange(intOldFundID, intNewFundID, PreviousListSwitchDetails, strClientID, Portfolio.propPortfolioDetails[0].propClientCurrency);
            }
            catch (Exception ex)
            {
                populateAmendSwitch((List <clsSwitchDetails_Client>)Session["SwitchDetails_Client"]);
                ClientScript.RegisterStartupScript(this.GetType(), "errDuplicateDund", "alert('" + ex.Message + "');", true);
                return;
            }

            Session["SwitchDetails_Client"] = newListSwitchDetails;

            this.populateAmendSwitch(newListSwitchDetails);
        }
예제 #4
0
        private void saveSwitchHistory(clsPortfolio _clsPortfolio, int intSwitchID, string strPortfolioID, string strUserID, clsSwitch.enumSwitchStatus enumSwitchStatus, string strDescription)
        {
            clsSwitch oSwitch      = new clsSwitch(_clsPortfolio, strUserID);
            int       intHistoryID = clsHistory.insertHeader(strPortfolioID, intSwitchID, Convert.ToInt16(enumSwitchStatus));

            clsHistory.insertDetailsIFA(intHistoryID, oSwitch.propSwitchDetails);
            clsHistory.insertMessage(intHistoryID, strDescription);
        }
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!Page.IsPostBack)
     {
         clsPortfolio Portfolio = new clsPortfolio(this.propClientID, this.propPortfolioID, this.propUserID);
         populate(Portfolio.propPortfolioDetails);
     }
 }
예제 #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                //Session["SourcePage"] = "portfoliodetails.asp"; //local
                Session["SourcePage"] = "/report/portfoliodetails.asp"; //deploy

                strClientID    = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
                strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();
                strUserID      = Session[clsSystem_Session.strSession.User.ToString()].ToString();

                clsPortfolio objPortfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

                if (objPortfolio.propPortfolioDetails.Count != 0)
                {
                    Session["IFAPermit"] = objPortfolio.propPortfolioDetails[0].propSwitchIFAPermit;
                }
                else
                {
                    Session["IFAPermit"] = false;
                }


                enableButtons((clsSwitch.enumSwitchStatus)objPortfolio.propSwitch.propStatus);
                showhideButtons(enumPageState.hideAll);

                populateHeader(objPortfolio);
                populateOriginalPortfolio(objPortfolio.propPortfolioDetails);
                populateProposedSwitch(objPortfolio.propSwitch.propSwitchDetails);

                showhideButtons(enumPageState.view);
                ViewState["intSwitchID"] = objPortfolio.propSwitch.propSwitchID;

                clsSwitch_Client objSwitch_Client = new clsSwitch_Client((int)ViewState["intSwitchID"]);
                Session["SwitchDetails_Client"] = objSwitch_Client.propSwitchDetails;

                if (objPortfolio.propSwitch.propStatus == (int)clsSwitch.enumSwitchStatus.Amended)
                {
                    showhideAmendArea(false);
                }
            }
            else
            {
                if (Request["__EVENTARGUMENT"] == "SaveSwitchDetails")
                {
                    btnSave_Click();
                }
                else if (Request["__EVENTARGUMENT"] == "ChangeFund")
                {
                    replaceFund(int.Parse(this.hfFundIDOrig.Value), int.Parse(this.hfFundIDNew.Value));
                }
                else if (Request["__EVENTARGUMENT"] == "AddMoreFund")
                {
                    addNewFund(int.Parse(this.hfFundIDNew.Value));
                }
            }
        }
예제 #7
0
 private void populateHeader(clsPortfolio oPortfolio)
 {
     this.lblValue_PortfolioName.Text = oPortfolio.propAccountNumber;
     this.lblValue_Currency.Text      = oPortfolio.propPortfolioCurrency;
     this.lblValue_StartDate.Text     = oPortfolio.propPortfolioStartDate.ToString("dd/MM/yyyy");
     //this.lblValue_TotalInvestment.Text = oPortfolio.propTotalInvestments.ToString();
     //this.lblValue_CurrentValue.Text = oPortfolio.propCurrentValue.ToString();
     //this.lblValue_GainOrLoss.Text = oPortfolio.propGainLoss.ToString();
 }
예제 #8
0
        private string getSMSMessage(string strClientID, string strPortfolioID, string strUserID)
        {
            clsPortfolio _clsPortfolio = new clsPortfolio();

            _clsPortfolio.getPortfolioHeader(strClientID, strPortfolioID);
            string strPortfolioName = _clsPortfolio.propCompany;

            clsSMS.subclsSMSTemplate osubclsSMSTemplate = new clsSMS.subclsSMSTemplate(clsSMS.subclsSMSTemplate.enumSMSTemplateID.ProposeSwitch);
            string strReplacerVariable = clsSMS.subclsSMSTemplate.strPortfolioNameVariable;
            string strMessage          = osubclsSMSTemplate.propMessage.Replace(strReplacerVariable, strPortfolioName);

            return(strMessage);
        }
예제 #9
0
 private void populate(clsPortfolio _clsPortfolio, clsClient Client) 
 {
     this.lblValue_ClientName.Text = Client.propForename + " " + Client.propSurname + " (" + Client.propCode + ")";
     this.lblValue_Company.Text = _clsPortfolio.propCompany;
     this.lblValue_PortfolioType.Text = _clsPortfolio.propPortfolioType;
     this.lblValue_Currency.Text = _clsPortfolio.propPortfolioCurrency;
     this.lblValue_AccountNumber.Text = _clsPortfolio.propAccountNumber;
     this.lblValue_PlanStatus.Text = _clsPortfolio.propPlanStatus;
     this.lblValue_StartDate.Text = _clsPortfolio.propPortfolioStartDate.ToString("dd/MM/yyyy");
     this.lblValue_PolicyCategory.Text = _clsPortfolio.propLiquidity;
     this.lblValue_Profile.Text = _clsPortfolio.propRiskProfile;
     this.lblValue_SpecialistInformation.Text = _clsPortfolio.propRetentionTerm;
     this.lblValue_Discretionary.Text = _clsPortfolio.propMFPercent == 0 ? "no" : "yes";
 }
예제 #10
0
 private void populate(clsPortfolio _clsPortfolio, clsClient Client)
 {
     this.lblValue_ClientName.Text            = Client.propForename + " " + Client.propSurname + " (" + Client.propCode + ")";
     this.lblValue_Company.Text               = _clsPortfolio.propCompany;
     this.lblValue_PortfolioType.Text         = _clsPortfolio.propPortfolioType;
     this.lblValue_Currency.Text              = _clsPortfolio.propPortfolioCurrency;
     this.lblValue_AccountNumber.Text         = _clsPortfolio.propAccountNumber;
     this.lblValue_PlanStatus.Text            = _clsPortfolio.propPlanStatus;
     this.lblValue_StartDate.Text             = _clsPortfolio.propPortfolioStartDate.ToString("dd/MM/yyyy");
     this.lblValue_PolicyCategory.Text        = _clsPortfolio.propLiquidity;
     this.lblValue_Profile.Text               = _clsPortfolio.propRiskProfile;
     this.lblValue_SpecialistInformation.Text = _clsPortfolio.propRetentionTerm;
     this.lblValue_Discretionary.Text         = _clsPortfolio.propMFPercent == 0 ? "no" : "yes";
 }
예제 #11
0
        protected void Page_Load(object sender, EventArgs e)
        {

            if (!Page.IsPostBack)
            {
                //Session["SourcePage"] = "portfoliodetails.asp"; //local
                Session["SourcePage"] = "/report/portfoliodetails.asp"; //deploy

                strClientID = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
                strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();
                strUserID = Session[clsSystem_Session.strSession.User.ToString()].ToString();

                clsPortfolio objPortfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

                if (objPortfolio.propPortfolioDetails.Count != 0)
                {
                    Session["IFAPermit"] = objPortfolio.propPortfolioDetails[0].propSwitchIFAPermit;
                }
                else 
                { 
                    Session["IFAPermit"] = false; 
                }

                
                enableButtons((clsSwitch.enumSwitchStatus)objPortfolio.propSwitch.propStatus);
                showhideButtons(enumPageState.hideAll);
                    
                populateHeader(objPortfolio);                
                populateOriginalPortfolio(objPortfolio.propPortfolioDetails);                
                populateProposedSwitch(objPortfolio.propSwitch.propSwitchDetails);

                showhideButtons(enumPageState.view);
                ViewState["intSwitchID"] = objPortfolio.propSwitch.propSwitchID;

                clsSwitch_Client objSwitch_Client = new clsSwitch_Client((int)ViewState["intSwitchID"]);
                Session["SwitchDetails_Client"] = objSwitch_Client.propSwitchDetails;

                if (objPortfolio.propSwitch.propStatus == (int)clsSwitch.enumSwitchStatus.Amended)
                {
                    showhideAmendArea(false);
                }
            }
            else 
            {
                if (Request["__EVENTARGUMENT"] == "SaveSwitchDetails") { btnSave_Click(); }
                else if (Request["__EVENTARGUMENT"] == "ChangeFund") { replaceFund(int.Parse(this.hfFundIDOrig.Value), int.Parse(this.hfFundIDNew.Value)); }
                else if (Request["__EVENTARGUMENT"] == "AddMoreFund") { addNewFund(int.Parse(this.hfFundIDNew.Value)); }
            }
        }
예제 #12
0
        protected void btnCheckSecurityCode_Click(object sender, EventArgs e)
        {
            strUserID = Session[clsSystem_Session.strSession.User.ToString()].ToString();

            //try
            //{
            if (!txtSecurityCode.Text.Equals(string.Empty))
            {
                strClientID    = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
                strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();
                int intSwitchID = (int)ViewState["intSwitchID"];

                clsSecurityCode oSecurityCode          = new clsSecurityCode(this.txtSecurityCode.Text.Trim());
                string          strSecurityCodeMessage = oSecurityCode.ValidateSecurityCode(intSwitchID, strClientID, strPortfolioID);

                if (strSecurityCodeMessage.Contains("Sorry, the security code you have entered is incorrect, please re-enter the security code."))
                {
                    this.mpeSecurityCodePanel.Show();
                }
                else if (strSecurityCodeMessage.Contains("Thank you, the proposed changes will be made to your portfolio."))
                {
                    clsSwitchDetails.transferClientSwitchToIFA((List <clsSwitchDetails_Client>)Session["SwitchDetails_Client"], strUserID);

                    int intHistoryID = clsHistory.insertHeader(strPortfolioID, intSwitchID, (Int16)clsSwitch.enumSwitchStatus.Approved);
                    clsHistory.insertDetailsClient(intHistoryID, (List <clsSwitchDetails_Client>)Session["SwitchDetails_Client"]);
                    clsHistory.insertMessage(intHistoryID, new clsSwitch_Client(intSwitchID).propDescription);

                    NotifyApprovedSwtich(new clsSwitch(new clsPortfolio(strClientID, strPortfolioID, ""), ""));

                    ClientScript.RegisterStartupScript(this.GetType(), "showApproveSwitch", string.Format("showApproveSwitchPanel();"), true);

                    showhideAmendArea(false);
                    showhideButtons(enumPageState.view);
                }
                ClientScript.RegisterStartupScript(this.GetType(), "alertMessage", string.Format("alert('{0}');", strSecurityCodeMessage), true);
            }

            clsPortfolio oPortfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            populateHeader(oPortfolio);
            populateProposedSwitch(oPortfolio.propSwitch.propSwitchDetails);
            //}
            //catch (Exception ex)
            //{
            //    string backPageURL = "https://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"] + "/report/" + "portfoliodetails.asp";
            //    ClientScript.RegisterStartupScript(this.GetType(), "alertApproveError", "alert('Error! " + ex.ToString().Replace("'", "") + "'); window.location='" + backPageURL + "';", true);
            //}
        }
예제 #13
0
        private void populateHeader(clsPortfolio _clsPortfolio)
        {
            //this.lblValue_ PortfolioName.Text = strPortfolioName;
            this.lblValue_Company.Text               = _clsPortfolio.propCompany;
            this.lblValue_PortfolioType.Text         = _clsPortfolio.propPortfolioType;
            this.lblValue_Currency.Text              = _clsPortfolio.propPortfolioCurrency;
            this.lblValue_AccountNumber.Text         = _clsPortfolio.propAccountNumber;
            this.lblValue_PlanStatus.Text            = _clsPortfolio.propPlanStatus;
            this.lblValue_StartDate.Text             = _clsPortfolio.propPortfolioStartDate.ToString("dd/MM/yyyy");
            this.lblValue_PolicyCategory.Text        = _clsPortfolio.propLiquidity;
            this.lblValue_Profile.Text               = _clsPortfolio.propRiskProfile;
            this.lblValue_SpecialistInformation.Text = _clsPortfolio.propRetentionTerm;
            this.lblValue_Discretionary.Text         = _clsPortfolio.propMFPercent == 0 ? "no" : "yes";

            Session["Company"] = _clsPortfolio.propCompany;
        }
예제 #14
0
        protected void btnContactMeSend_Click(object sender, EventArgs e)
        {
            strClientID    = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();
            strUserID      = Session[clsSystem_Session.strSession.User.ToString()].ToString();

            clsIFA       IFA       = new clsIFA(int.Parse(Session["ifaid"].ToString()));
            clsClient    Client    = new clsClient(strClientID);
            clsPortfolio Portfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            String strEmailMessage = "";

            try
            {
                String strRecipient = IFA.propIFAEmail;

                try
                {
                    strEmailMessage = clsEmail.generateEmailBody("ClientRequestContact", IFA.propIFA_Name, Client.propForename + " " + Client.propSurname,
                                                                 Portfolio.propCompany, this.txtContactMeByTel.Text.Trim(), this.txtContactMeComments.Text.Trim(), null, null);
                }
                catch
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "AlertNoEmailTemplate", "alert('System error! No email template found for this purpose. Please report this error to your systems administrator');", true);
                    return;
                }


                clsEmail.Send(strRecipient, "*****@*****.**", "NAV-Switch client request", strEmailMessage, Portfolio.propSwitch.propSwitchID, strClientID, clsEmail.enumEmailPurpose.ClientRequestingContact);

                clsSwitch.updateSwitchHeader(Portfolio.propSwitch.propSwitchID, clsSwitch.enumSwitchStatus.Request_ForDiscussion);

                int intHistoryID = clsHistory.insertHeader(Portfolio.propPortfolioID, Portfolio.propSwitch.propSwitchID, (Int16)clsSwitch.enumSwitchStatus.Request_ForDiscussion);
                clsHistory.insertMessage(intHistoryID, strEmailMessage);

                ClientScript.RegisterStartupScript(this.GetType(), "EmailRequestContactSent", "alert('Request for contact to your IFA has been sent successfully');", true);

                populateProposedSwitch(Portfolio.propSwitch.propSwitchDetails);

                enableButtons(clsSwitch.enumSwitchStatus.Request_ForDiscussion);
            }
            catch (Exception ex)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "EmailFailedAlert", "alert('Sending failed. Error:  " + ex.Message.Replace("'", " ") + "');", true);
                return;
            }
        }
예제 #15
0
        protected void btnDeclineSwitch_Click(object sender, EventArgs e)
        {
            strUserID      = Session[clsSystem_Session.strSession.User.ToString()].ToString();
            strClientID    = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();

            clsPortfolio oPortfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            int intSwitchID = (int)ViewState["intSwitchID"];

            string backPageURL = "https://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"] + "/report/" + "portfoliodetails.asp";

            try
            {
                clsIFA    IFA             = new clsIFA(int.Parse(Session["ifaid"].ToString()));
                clsClient Client          = new clsClient(strClientID);
                String    strEmailMessage = "";

                String strRecipient = IFA.propIFAEmail;

                try
                {
                    strEmailMessage = clsEmail.generateEmailBody("ClientDeclineNotification", IFA.propIFA_Name, Client.propForename + " " + Client.propSurname, oPortfolio.propCompany, null, this.txtDeclineDescription.Text.Trim(), null, null);
                }
                catch
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "AlertNoEmailTemplate", "alert('System error! No email template found for declining email. Please report this error to your systems administrator');", true);
                    return;
                }

                clsEmail.Send(strRecipient, "*****@*****.**", "NAV-Switch client declined proposed switch", strEmailMessage, intSwitchID, strClientID, clsEmail.enumEmailPurpose.ClientDeclinedSwitchPortfolio);

                clsSwitch.updateSwitchHeader(intSwitchID, clsSwitch.enumSwitchStatus.Declined_Client, new clsSwitch(intSwitchID).propDescription);

                int intHistoryID = clsHistory.insertHeader(oPortfolio.propPortfolioID, intSwitchID, (Int16)clsSwitch.enumSwitchStatus.Declined_Client);
                clsHistory.insertMessage(intHistoryID, strEmailMessage);

                clsSwitch_Client.declineSwitch(intSwitchID);

                ClientScript.RegisterStartupScript(this.GetType(), "alertDeclinedSwitch", "alert('This switch has been declined.'); window.location='" + backPageURL + "';", true);
            }
            catch (Exception ex)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "alertDeclinedSwitcherror", "alert('Error declining switch! " + ex.ToString().Replace("'", " ") + "'); window.location='" + backPageURL + "';", true);
            }
        }
예제 #16
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                ((NAV)this.Page.Master).FindControl("btnBack_Classic").Visible = false;
                ViewState["MID"]  = Request.QueryString["MID"];
                ViewState["MGID"] = Request.QueryString["MGID"];
                ViewState["MPID"] = Request.QueryString["MPID"];
                ViewState["CID"]  = Request.QueryString["CID"];
                ViewState["PID"]  = Request.QueryString["PID"];

                clsPortfolio _clsPortfolio = new clsPortfolio(ClientID(), PortfolioID(), UserID());
                _clsPortfolio.propModelGroupID     = ViewState["MGID"].ToString();
                _clsPortfolio.propModelPortfolioID = ViewState["MPID"].ToString();

                clsModelPortfolio _clsModelPortfolio = new clsModelPortfolio(_clsPortfolio, ViewState["MGID"].ToString(), ViewState["MPID"].ToString());
                clsSwitchTemp     _clsSwitchTemp     = new clsSwitchTemp();
                _clsSwitchTemp.propModelGroupID     = _clsModelPortfolio.propModelGroupID;
                _clsSwitchTemp.propModelPortfolioID = _clsModelPortfolio.propModelPortfolioID;
                _clsPortfolio.propSwitchTemp        = new clsSwitchTemp(_clsPortfolio, UserID(), IFA_ID(), _clsModelPortfolio.propModelID, ViewState["MGID"].ToString(), ViewState["MPID"].ToString());

                //Load the data
                populateHeader(_clsPortfolio);
                populateDetails(_clsPortfolio.propPortfolioDetails);
                populateSwitchDetails(_clsPortfolio.propSwitchTemp.propSwitchDetails, Portfolio());
            }
            else
            {
                if (Request["__EVENTARGUMENT"] == "SaveSwitchDetails")
                {
                    btnSave_Click();
                }
                else if (Request["__EVENTARGUMENT"] == "ChangeFund")
                {
                    replaceFund(int.Parse(this.hfFundIDOrig.Value), int.Parse(this.hfFundIDNew.Value));
                }
                else if (Request["__EVENTARGUMENT"] == "AddMoreFund")
                {
                    addNewFund(int.Parse(this.hfFundIDNew.Value));
                }
            }
        }
예제 #17
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Page.IsPostBack)
            {
                if (Request["__EVENTARGUMENT"] == "SaveModelSwitchDetails") { btnSave_Click(); }
                else if (Request["__EVENTARGUMENT"] == "ChangeFund") { replaceFund(int.Parse(this.hfFundIDOrig.Value), int.Parse(this.hfFundIDNew.Value)); }
                else if (Request["__EVENTARGUMENT"] == "AddMoreFund") { addNewFund(int.Parse(this.hfFundIDNew.Value)); }
            }
            else
            {
                Session["SourcePage"] = string.Format("/MP/details.asp?MID={0}&MPID={1}", ModelGroupID(), ModelPortfolioID());

                clsPortfolio oPortfolio = new clsPortfolio(ModelGroupID(), ModelPortfolioID(), UserID());
                populateHeader(oPortfolio);
                populateDetails(oPortfolio.propPortfolioDetails);
                clsModelGroup _clsModelGroup = new clsModelGroup(Portfolio(), ModelGroupID(), ModelPortfolioID(), IFA_ID());
                clsModelPortfolio _clsModelPortfolio = _clsModelGroup.propModelPortfolio;
                populateSwitchDetails(_clsModelPortfolio.propModelPortfolioDetails);
            }
        }
예제 #18
0
        private void btnSave_Click()
        {
            captureSwitchGridviewDetails();

            strUserID      = Session[clsSystem_Session.strSession.User.ToString()].ToString();
            strClientID    = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();

            List <clsSwitchDetails_Client> ListSwitchDetails = (List <clsSwitchDetails_Client>)Session["SwitchDetails_Client"];

            saveclientSwitch(clsSwitch.enumSwitchStatus.Saved, ListSwitchDetails[0].propSwitchID, null);

            clsPortfolio Portfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            Session["SwitchDetails_Client"] = Portfolio.propSwitchClient.propSwitchDetails;
            populateAmendSwitch((List <clsSwitchDetails_Client>)Session["SwitchDetails_Client"]);

            string backPageURL = "https://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"] + "/report/" + "portfoliodetails.asp";

            ClientScript.RegisterStartupScript(this.GetType(), "alertSaveSuccess", "alert('Amendments saved.'); window.location='" + backPageURL + "';", true);
        }
예제 #19
0
        private void processBulkSwitch(string _strClientID, string strMobileNumber, clsModelPortfolio _clsModelPortfolio)
        {
            int intSwitchID = 0;

            clsSwitch.enumSwitchStatus enumSwitchStatus;

            foreach (GridViewRow row in gvClientListInModel.Rows)
            {
                Label  lblSwitchID      = (Label)row.FindControl("lblSwitchID");
                Label  lblClientName    = (Label)row.FindControl("gvBulkSwitchListLabelClientName");
                Label  lblDiscretionary = (Label)row.FindControl("lblDiscretionary");
                Label  lblCustomized    = (Label)row.FindControl("lblCustomized");
                string strClientID      = Convert.ToString(gvClientListInModel.DataKeys[row.RowIndex].Values[0]);
                string strPortfolioID   = Convert.ToString(gvClientListInModel.DataKeys[row.RowIndex].Values[1]);

                if (_strClientID.Trim().Equals(strClientID.Trim()))
                {
                    enumSwitchStatus = determineDiscretionaryStatus(lblDiscretionary.Text.Trim());

                    string strMessage = getSMSMessage(strClientID, strPortfolioID, UserID());
                    if (sendSMS(UserID(), strMessage, lblClientName.Text.Trim(), strMobileNumber))
                    {
                        clsPortfolio _clsPortfolio = new clsPortfolio(strClientID, strPortfolioID, UserID());
                        if (lblCustomized.Text.Trim() == enumYesNO.Yes.ToString())
                        {
                            intSwitchID = saveCustomizedSwitch(IFA_ID(), strClientID, strPortfolioID, UserID(), enumSwitchStatus, int.Parse(lblSwitchID.Text.Trim()), ModelID(), ModelPortfolioID());
                        }
                        else
                        {
                            _clsPortfolio.propModelGroupID     = ModelID();
                            _clsPortfolio.propModelPortfolioID = ModelPortfolioID();
                            _clsPortfolio.propSwitchTemp       = new clsSwitchTemp(_clsPortfolio, UserID(), IFA_ID(), _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID());
                            intSwitchID = saveSwitch(strClientID, strPortfolioID, UserID(), enumSwitchStatus, int.Parse(lblSwitchID.Text.Trim()), _clsPortfolio.propSwitchTemp.propSwitchDetails, _clsModelPortfolio.propModelPortfolioDesc, _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID());
                        }
                        saveSwitchHistory(_clsPortfolio, intSwitchID, strPortfolioID, UserID(), enumSwitchStatus, _clsModelPortfolio.propModelPortfolioDesc);
                    } //end if
                }     //end if
            }         //end foreach
        }
        private void processBulkSwitch(string _strClientID, string strMobileNumber, clsModelPortfolio _clsModelPortfolio)
        {
            int intSwitchID = 0;
            clsSwitch.enumSwitchStatus enumSwitchStatus;

            foreach (GridViewRow row in gvClientListInModel.Rows)
            {
                Label lblSwitchID = (Label)row.FindControl("lblSwitchID");
                Label lblClientName = (Label)row.FindControl("gvBulkSwitchListLabelClientName");
                Label lblDiscretionary = (Label)row.FindControl("lblDiscretionary");
                Label lblCustomized = (Label)row.FindControl("lblCustomized");
                string strClientID = Convert.ToString(gvClientListInModel.DataKeys[row.RowIndex].Values[0]);
                string strPortfolioID = Convert.ToString(gvClientListInModel.DataKeys[row.RowIndex].Values[1]);

                if (_strClientID.Trim().Equals(strClientID.Trim()))
                {
                    enumSwitchStatus = determineDiscretionaryStatus(lblDiscretionary.Text.Trim());

                    string strMessage = getSMSMessage(strClientID, strPortfolioID, UserID());
                    if (sendSMS(UserID(), strMessage, lblClientName.Text.Trim(), strMobileNumber))
                    {
                        clsPortfolio _clsPortfolio = new clsPortfolio(strClientID, strPortfolioID, UserID());
                        if (lblCustomized.Text.Trim() == enumYesNO.Yes.ToString())
                        {
                            intSwitchID = saveCustomizedSwitch(IFA_ID(), strClientID, strPortfolioID, UserID(), enumSwitchStatus, int.Parse(lblSwitchID.Text.Trim()), ModelID(), ModelPortfolioID());
                        }
                        else
                        {
                            _clsPortfolio.propModelGroupID = ModelID();
                            _clsPortfolio.propModelPortfolioID = ModelPortfolioID();
                            _clsPortfolio.propSwitchTemp = new clsSwitchTemp(_clsPortfolio, UserID(), IFA_ID(), _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID());
                            intSwitchID = saveSwitch(strClientID, strPortfolioID, UserID(), enumSwitchStatus, int.Parse(lblSwitchID.Text.Trim()), _clsPortfolio.propSwitchTemp.propSwitchDetails, _clsModelPortfolio.propModelPortfolioDesc, _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID());
                        }
                        saveSwitchHistory(_clsPortfolio, intSwitchID, strPortfolioID, UserID(), enumSwitchStatus, _clsModelPortfolio.propModelPortfolioDesc);
                    }//end if
                }//end if
            }//end foreach
        }
예제 #21
0
 private void populateHeader(clsPortfolio _clsPortfolio, string strPortfolioName)
 {
     this.lblValue_PortfolioName.Text         = strPortfolioName;
     this.lblValue_Company.Text               = _clsPortfolio.propCompany;
     this.lblValue_PortfolioType.Text         = _clsPortfolio.propPortfolioType;
     this.lblValue_Currency.Text              = _clsPortfolio.propPortfolioCurrency;
     this.lblValue_AccountNumber.Text         = _clsPortfolio.propAccountNumber;
     this.lblValue_PlanStatus.Text            = _clsPortfolio.propPlanStatus;
     this.lblValue_StartDate.Text             = _clsPortfolio.propPortfolioStartDate.ToString("dd/MM/yyyy");
     this.lblValue_PolicyCategory.Text        = _clsPortfolio.propLiquidity;
     this.lblValue_Profile.Text               = _clsPortfolio.propRiskProfile;
     this.lblValue_SpecialistInformation.Text = _clsPortfolio.propRetentionTerm;
     if (_clsPortfolio.propPortfolioDetails.Count > 0)
     {
         this.lblValue_Discretionary.Text = _clsPortfolio.propPortfolioDetails[0].propMFPercent == 0 ? "no" : "yes";
     }
     else
     {
         btnSave.Disabled             = true;
         btnSwitch.Disabled           = true;
         btnCancel.Enabled            = false;
         lblSwitchStatusTitle.Visible = false;
     }
 }
        private string getSMSMessage(string strClientID, string strPortfolioID, string strUserID)
        {
            clsPortfolio _clsPortfolio = new clsPortfolio();
            _clsPortfolio.getPortfolioHeader(strClientID, strPortfolioID);
            string strPortfolioName = _clsPortfolio.propCompany;
            clsSMS.subclsSMSTemplate osubclsSMSTemplate = new clsSMS.subclsSMSTemplate(clsSMS.subclsSMSTemplate.enumSMSTemplateID.ProposeSwitch);
            string strReplacerVariable = clsSMS.subclsSMSTemplate.strPortfolioNameVariable;
            string strMessage = osubclsSMSTemplate.propMessage.Replace(strReplacerVariable, strPortfolioName);

            return strMessage;
        }
        //original function to Process Bulk Switch
        private void doBulkSwitch()
        {
            int intSwitchID = 0;
            string strPopupMessage = "Message sent.";
            GridView gvClientList = new GridView();
            List<clsSwitchDetails> clsSwitchDetailsList = new List<clsSwitchDetails>();
            clsModelGroup _clsModelGroup = new clsModelGroup(Portfolio(), ModelID(), ModelPortfolioID(), IFA_ID());
            clsModelPortfolio _clsModelPortfolio = _clsModelGroup.propModelPortfolio;

            foreach (clsModelPortfolioDetails item in _clsModelPortfolio.propModelPortfolioDetails)
            {
                clsSwitchDetails _clsSwitchDetails = new clsSwitchDetails();
                _clsSwitchDetails.propSwitchID = 0;
                _clsSwitchDetails.propFund = item.propFund;
                _clsSwitchDetails.propFundID = item.propFundID;
                _clsSwitchDetails.propAllocation = item.propAllocation;
                _clsSwitchDetails.propSwitchDetailsID = 0;
                _clsSwitchDetails.propIsDeletable = item.propIsDeletable;

                clsSwitchDetailsList.Add(_clsSwitchDetails);
            }
            gvClientList = this.gvClientListInModel;

            clsSwitch.enumSwitchStatus enumSwitchStatus;// = (clsSwitch.enumSwitchStatus)Enum.ToObject(typeof(clsSwitch.enumSwitchStatus), intSwitchStatus);

            foreach (GridViewRow row in gvClientList.Rows)
            {
                CheckBox cbox = (CheckBox)row.FindControl("cboxSelected");
                Label lblSwitchID = (Label)row.FindControl("lblSwitchID");
                Label lblDiscretionary = (Label)row.FindControl("lblDiscretionary");
                Label lblCustomized = (Label)row.FindControl("lblCustomized");
                if (lblDiscretionary.Text == "Yes")
                {
                    enumSwitchStatus = clsSwitch.enumSwitchStatus.Approved;
                }
                else
                {
                    enumSwitchStatus = clsSwitch.enumSwitchStatus.Proposed;
                }

                string strClientID = Convert.ToString(gvClientList.DataKeys[row.RowIndex].Values[0]);
                string strPortfolioID = Convert.ToString(gvClientList.DataKeys[row.RowIndex].Values[1]);

                if (cbox.Checked)
                {
                    string strMessage = getSMSMessage(strClientID, strPortfolioID, UserID());
                    string strMobileNum = clsSMS.getMobileNumber(strClientID);
                    if (strMobileNum.Trim().Equals(string.Empty))
                    {
                        strMobileNum = "9228829490";
                    }
                    //if (sendSMS(UserID(), strMessage, strPopupMessage, strMobileNum))
                    //{
                    if (lblCustomized.Text.Trim() == "Yes")
                    {
                        intSwitchID = saveCustomizedSwitch(IFA_ID(), strClientID, strPortfolioID, UserID(), enumSwitchStatus, int.Parse(lblSwitchID.Text.Trim()), ModelID(), ModelPortfolioID());
                        clsPortfolio _clsPortfolio = new clsPortfolio(strClientID, strPortfolioID, UserID());
                        saveSwitchHistory(_clsPortfolio, intSwitchID, strPortfolioID, UserID(), enumSwitchStatus, _clsModelPortfolio.propModelPortfolioDesc);
                    }
                    else
                    {
                        clsPortfolio _clsPortfolio = new clsPortfolio(strClientID, strPortfolioID, UserID());
                        _clsPortfolio.propModelGroupID = ModelID();
                        _clsPortfolio.propModelPortfolioID = ModelPortfolioID();
                        //_clsPortfolio.propSwitchTemp = new clsSwitchTemp(_clsPortfolio, UserID(), 1, IFA_ID(), ModelID(), ModelPortfolioID());


                        //clsModelPortfolio _clsModelPortfolio = new clsModelPortfolio(_clsPortfolio, ViewState["MGID"].ToString(), ViewState["MPID"].ToString());
                        clsSwitchTemp _clsSwitchTemp = new clsSwitchTemp();
                        //_clsSwitchTemp.propModelID = _clsModelPortfolio.propModelID;
                        _clsSwitchTemp.propModelGroupID = _clsModelPortfolio.propModelGroupID;
                        _clsSwitchTemp.propModelPortfolioID = _clsModelPortfolio.propModelPortfolioID;
                        _clsPortfolio.propSwitchTemp = new clsSwitchTemp(_clsPortfolio, UserID(), IFA_ID(), _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID());

                        intSwitchID = saveSwitch(strClientID, strPortfolioID, UserID(), enumSwitchStatus, int.Parse(lblSwitchID.Text.Trim()), _clsPortfolio.propSwitchTemp.propSwitchDetails, _clsModelPortfolio.propModelPortfolioDesc, _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID());

                        saveSwitchHistory(_clsPortfolio, intSwitchID, strPortfolioID, UserID(), enumSwitchStatus, _clsModelPortfolio.propModelPortfolioDesc);
                    }
                    //}
                }
            }
            _clsModelPortfolio.propIsConsumed = true;
            _clsModelPortfolio.updateModelPortfolioHeader();
            clsSwitchTemp.deleteSwitchTempByModel(_clsModelPortfolio.propModelID);

            List<clsPortfolio> clientListWithModel = clsPortfolio.getClientListWithModel(IFA_ID(), _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID(), "");
            populateModelClientList(clientListWithModel);
        }
예제 #24
0
        protected void NotifyApprovedSwtich(clsPortfolio Portfolio)
        {
            //try
            //{
                int intIFAID = int.Parse(Session["ifaid"].ToString());
                clsIFA IFA = new clsIFA(intIFAID);

                string htmlTemplate = clsOutput.generateApprovedSwitch(Portfolio, IFA.propIFA_ID);
                StyleSheet style = clsOutput.getStyleSheet_ApprovedSwitch();
                string strFilename = clsOutput.generateOutputFile(clsOutput.enumOutputType.PDF, htmlTemplate, style, Portfolio.propSwitch.propSwitchID, clsOutput.enumSwitchType.Portfolio);

                string strRecepient = IFA.propIFAEmail;
                string strSender = "*****@*****.**";
                string strSubject = "Switch Instruction";
                string strBody = clsEmail.generateEmailBody(((new clsCompany(Portfolio.propCompanyID)).propSignedConfirmation ? "NotifyApprovedEmailReqSign" : "NotifyApprovedEmail"), null, null, null, null, null, Portfolio.propCompany, Portfolio.propSwitch.propSwitchID.ToString());
                clsEmail.SendWithAttachment(strRecepient, strSender, strSubject, strBody, Portfolio.propSwitch.propSwitchID, Portfolio.propClientID, clsEmail.enumEmailPurpose.ApproveSwitchNotification, strFilename);

                clsClient client = new clsClient(Portfolio.propClientID);
                string ClientName = client.propForename + " " + client.propSurname;
                if (!String.IsNullOrEmpty(client.propEmailWork))
                {
                    strRecepient = client.propEmailWork;
                    strBody = clsEmail.generateEmailBody(((new clsCompany(Portfolio.propCompanyID)).propSignedConfirmation ? "NotifyClientApprovedEmailReqSign" : "NotifyClientApprovedEmail"), null, null, ClientName, null, null, Portfolio.propCompany, null);
                    clsEmail.SendWithAttachment(strRecepient, strSender, strSubject, strBody, Portfolio.propSwitch.propSwitchID, Portfolio.propClientID, clsEmail.enumEmailPurpose.ApproveSwitchNotification, strFilename);
                }
                if (!String.IsNullOrEmpty(client.propEmailPersonal))
                {
                    strRecepient = client.propEmailPersonal;
                    strBody = clsEmail.generateEmailBody(((new clsCompany(Portfolio.propCompanyID)).propSignedConfirmation ? "NotifyClientApprovedEmailReqSign" : "NotifyClientApprovedEmail"), null, null, ClientName, null, null, Portfolio.propCompany, null);
                    clsEmail.SendWithAttachment(strRecepient, strSender, strSubject, strBody, Portfolio.propSwitch.propSwitchID, Portfolio.propClientID, clsEmail.enumEmailPurpose.ApproveSwitchNotification, strFilename);
                }

                //:SwitchType_IFA Name_Client Name_yyyy-mm-dd.pdf
            //}
            //catch (Exception ex)
            //{
            //    Response.Write("Exception Occured<br/>");
            //    Response.Write(String.Format("<p>{0}</p><br/>", ex.ToString()));
            //}
        }
예제 #25
0
        private void btnSave_Click()
        {
            captureSwitchGridviewDetails();

            strUserID = Session[clsSystem_Session.strSession.User.ToString()].ToString();
            strClientID = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();

            List<clsSwitchDetails_Client> ListSwitchDetails = (List<clsSwitchDetails_Client>)Session["SwitchDetails_Client"];
            saveclientSwitch(clsSwitch.enumSwitchStatus.Saved, ListSwitchDetails[0].propSwitchID, null);

            clsPortfolio Portfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            Session["SwitchDetails_Client"] = Portfolio.propSwitchClient.propSwitchDetails;
            populateAmendSwitch((List<clsSwitchDetails_Client>)Session["SwitchDetails_Client"]);

            string backPageURL = "https://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"] + "/report/" + "portfoliodetails.asp";
            ClientScript.RegisterStartupScript(this.GetType(), "alertSaveSuccess", "alert('Amendments saved.'); window.location='" + backPageURL + "';", true);

        }
예제 #26
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                if (Request.QueryString["SourcePage"] != null)
                {
                    Session["SourcePage"] = Request.QueryString["SourcePage"];
                }

                int    intSwitchID    = int.Parse(Request.QueryString["SID"].ToString());
                string strPortfolioID = Request.QueryString["PID"].ToString();
                string strClientID    = Request.QueryString["CID"].ToString();

                this.ucCurrentPortfolio.propClientID    = strClientID;
                this.ucCurrentPortfolio.propPortfolioID = strPortfolioID;
                this.ucCurrentPortfolio.propUserID      = strClientID;

                this.ucHeader1.propClientID    = strClientID;
                this.ucHeader1.propPortfolioID = strPortfolioID;
                this.ucHeader1.propUserID      = strClientID;

                clsPortfolio Portfolio = new clsPortfolio(strClientID, strPortfolioID);

                foreach (clsHistory History in clsHistory.getListHistory(strPortfolioID, intSwitchID))
                {
                    switch (History.propStatus)
                    {
                    case 0:     //draft
                        break;

                    case 1:     //save
                        break;

                    case 2:     //proposed
                        WebUserControl1 ucProposed = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                        ucProposed.propSwitchDetails = clsHistory.getSwitchDetailsIFA(Portfolio, intSwitchID, History.propHistoryID);
                        ucProposed.propStatus        = History.propStatus;
                        ucProposed.propDateAction    = History.propAction_Date;
                        ucProposed.propMessage       = clsHistory.getMessage(History.propHistoryID);
                        ucProposed.propTitle         = "IFA Proposed Switch";
                        this.divHistoryHolder.Controls.Add(ucProposed);
                        break;

                    case 3:     //amended
                        WebUserControl1 ucAmended = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                        ucAmended.propSwitchDetails = clsHistory.getSwitchDetailsIFA(Portfolio, intSwitchID, History.propHistoryID);
                        ucAmended.propStatus        = History.propStatus;
                        ucAmended.propDateAction    = History.propAction_Date;
                        ucAmended.propMessage       = clsHistory.getMessage(History.propHistoryID);
                        ucAmended.propTitle         = "Client Proposed Switch";
                        this.divHistoryHolder.Controls.Add(ucAmended);
                        break;

                    case 4:     //decline IFA
                        break;

                    case 5:     //decline Client
                        WebUserControl1 ucDeclinedClient = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                        ucDeclinedClient.propStatus     = History.propStatus;
                        ucDeclinedClient.propDateAction = History.propAction_Date;
                        ucDeclinedClient.propMessage    = clsHistory.getMessage(History.propHistoryID);
                        ucDeclinedClient.propTitle      = "Switch Declined";
                        this.divHistoryHolder.Controls.Add(ucDeclinedClient);
                        break;

                    case 6:     //Approved
                        WebUserControl1 ucApproved = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                        ucApproved.propStatus     = History.propStatus;
                        ucApproved.propDateAction = History.propAction_Date;
                        ucApproved.propTitle      = "Switch Approved";
                        this.divHistoryHolder.Controls.Add(ucApproved);
                        break;

                    case 7:     //lock
                        break;

                    case 8:     //request for discussion
                        WebUserControl1 ucRequest = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                        ucRequest.propStatus     = History.propStatus;
                        ucRequest.propDateAction = History.propAction_Date;
                        ucRequest.propMessage    = clsHistory.getMessage(History.propHistoryID);
                        ucRequest.propTitle      = "Client Requested Contact";
                        this.divHistoryHolder.Controls.Add(ucRequest);
                        break;

                    case 9:     //Cancelled
                        break;

                    case 10:     //Completed
                        WebUserControl1 ucCompleted = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                        ucCompleted.propStatus     = History.propStatus;
                        ucCompleted.propDateAction = History.propAction_Date;
                        ucCompleted.propTitle      = "Switch Completed";
                        this.divHistoryHolder.Controls.Add(ucCompleted);
                        break;
                    }
                }
            }
        }
예제 #27
0
        //original function to Process Bulk Switch
        private void doBulkSwitch()
        {
            int      intSwitchID     = 0;
            string   strPopupMessage = "Message sent.";
            GridView gvClientList    = new GridView();
            List <clsSwitchDetails> clsSwitchDetailsList = new List <clsSwitchDetails>();
            clsModelGroup           _clsModelGroup       = new clsModelGroup(Portfolio(), ModelID(), ModelPortfolioID(), IFA_ID());
            clsModelPortfolio       _clsModelPortfolio   = _clsModelGroup.propModelPortfolio;

            foreach (clsModelPortfolioDetails item in _clsModelPortfolio.propModelPortfolioDetails)
            {
                clsSwitchDetails _clsSwitchDetails = new clsSwitchDetails();
                _clsSwitchDetails.propSwitchID        = 0;
                _clsSwitchDetails.propFund            = item.propFund;
                _clsSwitchDetails.propFundID          = item.propFundID;
                _clsSwitchDetails.propAllocation      = item.propAllocation;
                _clsSwitchDetails.propSwitchDetailsID = 0;
                _clsSwitchDetails.propIsDeletable     = item.propIsDeletable;

                clsSwitchDetailsList.Add(_clsSwitchDetails);
            }
            gvClientList = this.gvClientListInModel;

            clsSwitch.enumSwitchStatus enumSwitchStatus;// = (clsSwitch.enumSwitchStatus)Enum.ToObject(typeof(clsSwitch.enumSwitchStatus), intSwitchStatus);

            foreach (GridViewRow row in gvClientList.Rows)
            {
                CheckBox cbox             = (CheckBox)row.FindControl("cboxSelected");
                Label    lblSwitchID      = (Label)row.FindControl("lblSwitchID");
                Label    lblDiscretionary = (Label)row.FindControl("lblDiscretionary");
                Label    lblCustomized    = (Label)row.FindControl("lblCustomized");
                if (lblDiscretionary.Text == "Yes")
                {
                    enumSwitchStatus = clsSwitch.enumSwitchStatus.Approved;
                }
                else
                {
                    enumSwitchStatus = clsSwitch.enumSwitchStatus.Proposed;
                }

                string strClientID    = Convert.ToString(gvClientList.DataKeys[row.RowIndex].Values[0]);
                string strPortfolioID = Convert.ToString(gvClientList.DataKeys[row.RowIndex].Values[1]);

                if (cbox.Checked)
                {
                    string strMessage   = getSMSMessage(strClientID, strPortfolioID, UserID());
                    string strMobileNum = clsSMS.getMobileNumber(strClientID);
                    if (strMobileNum.Trim().Equals(string.Empty))
                    {
                        strMobileNum = "9228829490";
                    }
                    //if (sendSMS(UserID(), strMessage, strPopupMessage, strMobileNum))
                    //{
                    if (lblCustomized.Text.Trim() == "Yes")
                    {
                        intSwitchID = saveCustomizedSwitch(IFA_ID(), strClientID, strPortfolioID, UserID(), enumSwitchStatus, int.Parse(lblSwitchID.Text.Trim()), ModelID(), ModelPortfolioID());
                        clsPortfolio _clsPortfolio = new clsPortfolio(strClientID, strPortfolioID, UserID());
                        saveSwitchHistory(_clsPortfolio, intSwitchID, strPortfolioID, UserID(), enumSwitchStatus, _clsModelPortfolio.propModelPortfolioDesc);
                    }
                    else
                    {
                        clsPortfolio _clsPortfolio = new clsPortfolio(strClientID, strPortfolioID, UserID());
                        _clsPortfolio.propModelGroupID     = ModelID();
                        _clsPortfolio.propModelPortfolioID = ModelPortfolioID();
                        //_clsPortfolio.propSwitchTemp = new clsSwitchTemp(_clsPortfolio, UserID(), 1, IFA_ID(), ModelID(), ModelPortfolioID());


                        //clsModelPortfolio _clsModelPortfolio = new clsModelPortfolio(_clsPortfolio, ViewState["MGID"].ToString(), ViewState["MPID"].ToString());
                        clsSwitchTemp _clsSwitchTemp = new clsSwitchTemp();
                        //_clsSwitchTemp.propModelID = _clsModelPortfolio.propModelID;
                        _clsSwitchTemp.propModelGroupID     = _clsModelPortfolio.propModelGroupID;
                        _clsSwitchTemp.propModelPortfolioID = _clsModelPortfolio.propModelPortfolioID;
                        _clsPortfolio.propSwitchTemp        = new clsSwitchTemp(_clsPortfolio, UserID(), IFA_ID(), _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID());

                        intSwitchID = saveSwitch(strClientID, strPortfolioID, UserID(), enumSwitchStatus, int.Parse(lblSwitchID.Text.Trim()), _clsPortfolio.propSwitchTemp.propSwitchDetails, _clsModelPortfolio.propModelPortfolioDesc, _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID());

                        saveSwitchHistory(_clsPortfolio, intSwitchID, strPortfolioID, UserID(), enumSwitchStatus, _clsModelPortfolio.propModelPortfolioDesc);
                    }
                    //}
                }
            }
            _clsModelPortfolio.propIsConsumed = true;
            _clsModelPortfolio.updateModelPortfolioHeader();
            clsSwitchTemp.deleteSwitchTempByModel(_clsModelPortfolio.propModelID);

            List <clsPortfolio> clientListWithModel = clsPortfolio.getClientListWithModel(IFA_ID(), _clsModelPortfolio.propModelID, ModelID(), ModelPortfolioID(), "");

            populateModelClientList(clientListWithModel);
        }
예제 #28
0
        protected void btnDeclineSwitch_Click(object sender, EventArgs e)
        {
            strUserID = Session[clsSystem_Session.strSession.User.ToString()].ToString();
            strClientID = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();

            clsPortfolio oPortfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            int intSwitchID = (int)ViewState["intSwitchID"];

            string backPageURL = "https://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"] + "/report/" + "portfoliodetails.asp";

            try
            {
                clsIFA IFA = new clsIFA(int.Parse(Session["ifaid"].ToString()));
                clsClient Client = new clsClient(strClientID);
                String strEmailMessage = "";

                String strRecipient = IFA.propIFAEmail;

                try
                {
                    strEmailMessage = clsEmail.generateEmailBody("ClientDeclineNotification", IFA.propIFA_Name, Client.propForename + " " + Client.propSurname, oPortfolio.propCompany, null, this.txtDeclineDescription.Text.Trim(), null, null);
                }
                catch
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "AlertNoEmailTemplate", "alert('System error! No email template found for declining email. Please report this error to your systems administrator');", true);
                    return;
                }

                clsEmail.Send(strRecipient, "*****@*****.**", "NAV-Switch client declined proposed switch", strEmailMessage, intSwitchID, strClientID, clsEmail.enumEmailPurpose.ClientDeclinedSwitchPortfolio);
                
                clsSwitch.updateSwitchHeader(intSwitchID, clsSwitch.enumSwitchStatus.Declined_Client, new clsSwitch(intSwitchID).propDescription);

                int intHistoryID = clsHistory.insertHeader(oPortfolio.propPortfolioID, intSwitchID, (Int16)clsSwitch.enumSwitchStatus.Declined_Client);                
                clsHistory.insertMessage(intHistoryID, strEmailMessage);

                clsSwitch_Client.declineSwitch(intSwitchID);
                
                ClientScript.RegisterStartupScript(this.GetType(), "alertDeclinedSwitch", "alert('This switch has been declined.'); window.location='" + backPageURL + "';", true);

            }
            catch (Exception ex)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "alertDeclinedSwitcherror", "alert('Error declining switch! " + ex.ToString().Replace("'", " ") + "'); window.location='" + backPageURL + "';", true);
            }
        }
예제 #29
0
        protected void btnContactMeSend_Click(object sender, EventArgs e) {

            strClientID = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();
            strUserID = Session[clsSystem_Session.strSession.User.ToString()].ToString();

            clsIFA IFA = new clsIFA(int.Parse(Session["ifaid"].ToString()));
            clsClient Client = new clsClient(strClientID);
            clsPortfolio Portfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            String strEmailMessage = "";

            try
            {
                String strRecipient = IFA.propIFAEmail;

                try 
                { 
                    strEmailMessage = clsEmail.generateEmailBody("ClientRequestContact", IFA.propIFA_Name, Client.propForename + " " + Client.propSurname,
                                                                     Portfolio.propCompany, this.txtContactMeByTel.Text.Trim(), this.txtContactMeComments.Text.Trim(), null, null);
                }
                catch
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "AlertNoEmailTemplate", "alert('System error! No email template found for this purpose. Please report this error to your systems administrator');", true);
                    return;
                }
                

                clsEmail.Send(strRecipient, "*****@*****.**", "NAV-Switch client request", strEmailMessage, Portfolio.propSwitch.propSwitchID, strClientID, clsEmail.enumEmailPurpose.ClientRequestingContact);                

                clsSwitch.updateSwitchHeader(Portfolio.propSwitch.propSwitchID, clsSwitch.enumSwitchStatus.Request_ForDiscussion);

                int intHistoryID = clsHistory.insertHeader(Portfolio.propPortfolioID, Portfolio.propSwitch.propSwitchID, (Int16)clsSwitch.enumSwitchStatus.Request_ForDiscussion);
                clsHistory.insertMessage(intHistoryID, strEmailMessage);

                ClientScript.RegisterStartupScript(this.GetType(), "EmailRequestContactSent", "alert('Request for contact to your IFA has been sent successfully');", true);

                populateProposedSwitch(Portfolio.propSwitch.propSwitchDetails);

                enableButtons(clsSwitch.enumSwitchStatus.Request_ForDiscussion);

            }
            catch (Exception ex)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "EmailFailedAlert", "alert('Sending failed. Error:  " + ex.Message.Replace("'", " ") + "');", true);
                return;
            }

        }
예제 #30
0
        protected void btnCheckSecurityCode_Click(object sender, EventArgs e)
        {
            strUserID = Session[clsSystem_Session.strSession.User.ToString()].ToString();

            //try 
            //{
                if (!txtSecurityCode.Text.Equals(string.Empty))
                {
                    strClientID = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
                    strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();
                    int intSwitchID = (int)ViewState["intSwitchID"];

                    clsSecurityCode oSecurityCode = new clsSecurityCode(this.txtSecurityCode.Text.Trim());
                    string strSecurityCodeMessage = oSecurityCode.ValidateSecurityCode(intSwitchID, strClientID, strPortfolioID);

                    if (strSecurityCodeMessage.Contains("Sorry, the security code you have entered is incorrect, please re-enter the security code."))
                    {
                        this.mpeSecurityCodePanel.Show();
                    }
                    else if (strSecurityCodeMessage.Contains("Thank you, the proposed changes will be made to your portfolio."))
                    {
                        clsSwitchDetails.transferClientSwitchToIFA((List<clsSwitchDetails_Client>)Session["SwitchDetails_Client"], strUserID);

                        int intHistoryID = clsHistory.insertHeader(strPortfolioID, intSwitchID, (Int16)clsSwitch.enumSwitchStatus.Approved);
                        clsHistory.insertDetailsClient(intHistoryID, (List<clsSwitchDetails_Client>)Session["SwitchDetails_Client"]);
                        clsHistory.insertMessage(intHistoryID, new clsSwitch_Client(intSwitchID).propDescription);

                        NotifyApprovedSwtich(new clsPortfolio(strClientID, strPortfolioID, strUserID));

                        ClientScript.RegisterStartupScript(this.GetType(), "showApproveSwitch", string.Format("showApproveSwitchPanel();"), true);

                        showhideAmendArea(false);
                        showhideButtons(enumPageState.view);

                    }
                    ClientScript.RegisterStartupScript(this.GetType(), "alertMessage", string.Format("alert('{0}');", strSecurityCodeMessage), true);
                }

                clsPortfolio oPortfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);
                populateHeader(oPortfolio);
                populateProposedSwitch(oPortfolio.propSwitch.propSwitchDetails);
            //}
            //catch (Exception ex)
            //{
            //    string backPageURL = "https://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"] + "/report/" + "portfoliodetails.asp";
            //    ClientScript.RegisterStartupScript(this.GetType(), "alertApproveError", "alert('Error! " + ex.ToString().Replace("'", "") + "'); window.location='" + backPageURL + "';", true);
            //}
        }
예제 #31
0
        protected void btnAmendSave_Click(object sender, EventArgs e)
        {
            captureSwitchGridviewDetails();

            strUserID = Session[clsSystem_Session.strSession.User.ToString()].ToString();
            strClientID = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();

            List<clsSwitchDetails_Client> ListSwitchDetails = (List<clsSwitchDetails_Client>)Session["SwitchDetails_Client"];
            saveclientSwitch(clsSwitch.enumSwitchStatus.Saved, ListSwitchDetails[0].propSwitchID, this.txtAmendDesc.Text.Trim());

            clsPortfolio oPortfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            bool hasIFAPermit = oPortfolio.propPortfolioDetails[0].propSwitchIFAPermit;
            int intSwitchID = ListSwitchDetails[0].propSwitchID;

            if (hasIFAPermit)
            {                
                sendValidationCode(this.txtSMSMobileNoApproval.Text.Trim());
            }
            else
            {
                clsIFA IFA = new clsIFA(int.Parse(Session["ifaid"].ToString()));
                clsClient Client = new clsClient(strClientID);
                String strEmailMessage = "";

                try
                {
                    String strRecipient = IFA.propIFAEmail;

                    try
                    {
                        strEmailMessage = clsEmail.generateEmailBody("ClientAmendmentNotification", null, Client.propForename + " " + Client.propSurname, null, null, null, null, null);
                    }
                    catch 
                    {
                        ClientScript.RegisterStartupScript(this.GetType(), "AlertNoEmailTemplate", "alert('System error! No email template found for this purpose. Please report this error to your systems administrator');", true);
                        return;
                    }
                    clsEmail.Send(strRecipient, "*****@*****.**", "NAV-Switch client amended proposed switch", strEmailMessage, oPortfolio.propSwitch.propSwitchID, strClientID, clsEmail.enumEmailPurpose.ClientRequestingContact);
                    clsSwitch_Client.updateSwitchHeader(clsSwitch.enumSwitchStatus.Proposed, intSwitchID, this.txtAmendDesc.Text.Trim());
                    clsSwitch.updateSwitchHeader(intSwitchID, clsSwitch.enumSwitchStatus.Amended, new clsSwitch(intSwitchID).propDescription);

                    int intHistoryID = clsHistory.insertHeader(oPortfolio.propPortfolioID, intSwitchID, (Int16)clsSwitch.enumSwitchStatus.Amended);
                    clsHistory.insertDetailsClient(intHistoryID, ListSwitchDetails);
                    clsHistory.insertMessage(intHistoryID, this.txtAmendDesc.Text.Trim());

                    string backPageURL = "https://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"] + "/report/" + "portfoliodetails.asp";
                    ClientScript.RegisterStartupScript(this.GetType(), "EmailAmendNotification", "alert('An email was sent to notify your IFA regarding the amendments in the proposed switch.'); window.location='" + backPageURL + "';", true);                    
                }
                catch (Exception ex)
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "EmailFailedAlert", "alert('Sending failed. Error:  " + ex.Message.Replace("'", " ") + "');", true);
                    return;
                }

            }

            Session["SwitchDetails_Client"] = oPortfolio.propSwitchClient.propSwitchDetails;
            populateAmendSwitch((List<clsSwitchDetails_Client>)Session["SwitchDetails_Client"]);
        }
예제 #32
0
        protected void Page_Load(object sender, EventArgs e)
        {            
            if (!Page.IsPostBack) {

                if (Request.QueryString["SourcePage"] != null)
                {
                    Session["SourcePage"] = Request.QueryString["SourcePage"];
                }

                int intSwitchID = int.Parse(Request.QueryString["SID"].ToString());
                string strPortfolioID = Request.QueryString["PID"].ToString();
                string strClientID = Request.QueryString["CID"].ToString();

                this.ucCurrentPortfolio.propClientID = strClientID;
                this.ucCurrentPortfolio.propPortfolioID = strPortfolioID;
                this.ucCurrentPortfolio.propUserID = strClientID;

                this.ucHeader1.propClientID = strClientID;
                this.ucHeader1.propPortfolioID = strPortfolioID;
                this.ucHeader1.propUserID = strClientID;

                clsPortfolio Portfolio = new clsPortfolio(strClientID, strPortfolioID);                
  
                foreach (clsHistory History in clsHistory.getListHistory(strPortfolioID, intSwitchID))
                {
                    switch (History.propStatus){
                        case 0: //draft
                            break;
                        case 1: //save
                            break;
                        case 2: //proposed
                            WebUserControl1 ucProposed = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                            ucProposed.propSwitchDetails = clsHistory.getSwitchDetailsIFA(Portfolio, intSwitchID, History.propHistoryID);
                            ucProposed.propStatus = History.propStatus;
                            ucProposed.propDateAction = History.propAction_Date;
                            ucProposed.propMessage = clsHistory.getMessage(History.propHistoryID);
                            ucProposed.propTitle = "IFA Proposed Switch";
                            this.divHistoryHolder.Controls.Add(ucProposed);
                            break;
                        case 3: //amended
                            WebUserControl1 ucAmended = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                            ucAmended.propSwitchDetails = clsHistory.getSwitchDetailsIFA(Portfolio, intSwitchID, History.propHistoryID);
                            ucAmended.propStatus = History.propStatus;
                            ucAmended.propDateAction = History.propAction_Date;
                            ucAmended.propMessage = clsHistory.getMessage(History.propHistoryID);
                            ucAmended.propTitle = "Client Proposed Switch";
                            this.divHistoryHolder.Controls.Add(ucAmended);
                            break;
                        case 4: //decline IFA
                            break;
                        case 5: //decline Client
                            WebUserControl1 ucDeclinedClient = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");                            
                            ucDeclinedClient.propStatus = History.propStatus;
                            ucDeclinedClient.propDateAction = History.propAction_Date;
                            ucDeclinedClient.propMessage = clsHistory.getMessage(History.propHistoryID);
                            ucDeclinedClient.propTitle = "Switch Declined";
                            this.divHistoryHolder.Controls.Add(ucDeclinedClient);
                            break;
                        case 6: //Approved
                            WebUserControl1 ucApproved = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                            ucApproved.propStatus = History.propStatus;
                            ucApproved.propDateAction= History.propAction_Date;
                            ucApproved.propTitle = "Switch Approved";
                            this.divHistoryHolder.Controls.Add(ucApproved);
                            break;
                        case 7: //lock
                            break;
                        case 8: //request for discussion
                            WebUserControl1 ucRequest = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                            ucRequest.propStatus = History.propStatus;
                            ucRequest.propDateAction = History.propAction_Date;
                            ucRequest.propMessage = clsHistory.getMessage(History.propHistoryID);
                            ucRequest.propTitle = "Client Requested Contact";
                            this.divHistoryHolder.Controls.Add(ucRequest);
                            break;
                        case 9: //Cancelled
                            break;
                        case 10: //Completed
                            WebUserControl1 ucCompleted = (WebUserControl1)LoadControl("UserControl/ucSwitchDetails.ascx");
                            ucCompleted.propStatus = History.propStatus;
                            ucCompleted.propDateAction = History.propAction_Date;
                            ucCompleted.propTitle = "Switch Completed";
                            this.divHistoryHolder.Controls.Add(ucCompleted);
                            break;
                    }
                }
            }
        }
예제 #33
0
        private void populateSwitchDetails(List <clsSwitchDetails> lstSwitchDetailsTemp, clsPortfolio _clsPortfolio)
        {
            this.gvSwitchDetails.DataSource = lstSwitchDetailsTemp;
            this.gvSwitchDetails.DataBind();

            //this.lblSwitchStatusValue.Text = new clsSwitch(listSwitchDetails[0].propSwitchID).propStatusString;
            //int intStatus = new clsSwitch(listSwitchDetails[0].propSwitchID).propStatus;

            Label gvSwitchFooterLblTotalValue = (Label)this.gvSwitchDetails.FooterRow.Cells[3].FindControl("gvSwitchFooterLblTotalValue");

            gvSwitchFooterLblTotalValue.Text = _clsPortfolio.propTotalValue.ToString("n0");//lstSwitchDetailsTemp[0].propTotalValue.ToString("n0");

            Label gvSwitchFooterLblTotalAllocationOrig = (Label)this.gvSwitchDetails.FooterRow.Cells[4].FindControl("gvSwitchFooterLblTotalAllocationOrig");

            gvSwitchFooterLblTotalAllocationOrig.Text = lstSwitchDetailsTemp[lstSwitchDetailsTemp.Count - 1].propTotalAllocation.ToString("n2");

            Label gvSwitchFooterLblTotalAllocation = (Label)this.gvSwitchDetails.FooterRow.Cells[4].FindControl("gvSwitchFooterLblTotalAllocation");

            gvSwitchFooterLblTotalAllocation.Text = lstSwitchDetailsTemp[lstSwitchDetailsTemp.Count - 1].propTotalAllocation.ToString("n2");

            gvSwitchFooterHfTotalAllocation.Value = lstSwitchDetailsTemp[lstSwitchDetailsTemp.Count - 1].propTotalAllocation.ToString("n2");

            this.hfCurrentValueClientTotal.Value = _clsPortfolio.propTotalValue.ToString("n0");//lstSwitchDetailsTemp[0].propTotalValue.ToString("n0");
            this.hfFundCount.Value = lstSwitchDetailsTemp.Count.ToString();

            if (float.Parse(gvSwitchFooterLblTotalAllocationOrig.Text) != 100)
            {
                gvSwitchFooterLblTotalAllocation.Style.Add("color", "#FF0000");
                gvSwitchFooterLblTotalAllocationOrig.Style.Add("color", "#FF0000");
            }
            else
            {
                gvSwitchFooterLblTotalAllocation.Style.Add("color", "#000000");
                gvSwitchFooterLblTotalAllocationOrig.Style.Add("color", "#000000");
            }
            Session["SwitchDetails"] = lstSwitchDetailsTemp;
        }
 private void saveSwitchHistory(clsPortfolio _clsPortfolio, int intSwitchID, string strPortfolioID, string strUserID, clsSwitch.enumSwitchStatus enumSwitchStatus, string strDescription)
         {
             clsSwitch oSwitch = new clsSwitch(_clsPortfolio, strUserID);
             int intHistoryID = clsHistory.insertHeader(strPortfolioID, intSwitchID, Convert.ToInt16(enumSwitchStatus));
             clsHistory.insertDetailsIFA(intHistoryID, oSwitch.propSwitchDetails);
             clsHistory.insertMessage(intHistoryID, strDescription);
         }
예제 #35
0
        private void populateHeader(clsPortfolio _clsPortfolio)
        {
            //this.lblValue_ PortfolioName.Text = strPortfolioName;
            this.lblValue_Company.Text = _clsPortfolio.propCompany;
            this.lblValue_PortfolioType.Text = _clsPortfolio.propPortfolioType;
            this.lblValue_Currency.Text = _clsPortfolio.propPortfolioCurrency;
            this.lblValue_AccountNumber.Text = _clsPortfolio.propAccountNumber;
            this.lblValue_PlanStatus.Text = _clsPortfolio.propPlanStatus;
            this.lblValue_StartDate.Text = _clsPortfolio.propPortfolioStartDate.ToString("dd/MM/yyyy");
            this.lblValue_PolicyCategory.Text = _clsPortfolio.propLiquidity;
            this.lblValue_Profile.Text = _clsPortfolio.propRiskProfile;
            this.lblValue_SpecialistInformation.Text = _clsPortfolio.propRetentionTerm;
            this.lblValue_Discretionary.Text = _clsPortfolio.propMFPercent == 0 ? "no" : "yes";

            Session["Company"] = _clsPortfolio.propCompany;
        }
예제 #36
0
 private void populateHeader(clsPortfolio _clsPortfolio, string strPortfolioName)
 {
     this.lblValue_PortfolioName.Text = strPortfolioName;
     this.lblValue_Company.Text = _clsPortfolio.propCompany;
     this.lblValue_PortfolioType.Text = _clsPortfolio.propPortfolioType;
     this.lblValue_Currency.Text = _clsPortfolio.propPortfolioCurrency;
     this.lblValue_AccountNumber.Text = _clsPortfolio.propAccountNumber;
     this.lblValue_PlanStatus.Text = _clsPortfolio.propPlanStatus;
     this.lblValue_StartDate.Text = _clsPortfolio.propPortfolioStartDate.ToString("dd/MM/yyyy");
     this.lblValue_PolicyCategory.Text = _clsPortfolio.propLiquidity;
     this.lblValue_Profile.Text = _clsPortfolio.propRiskProfile;
     this.lblValue_SpecialistInformation.Text = _clsPortfolio.propRetentionTerm;
     if (_clsPortfolio.propPortfolioDetails.Count > 0)
     {
         this.lblValue_Discretionary.Text = _clsPortfolio.propPortfolioDetails[0].propMFPercent == 0 ? "no" : "yes";
     }
     else
     {
         btnSave.Disabled = true;
         btnSwitch.Disabled = true;
         btnCancel.Enabled = false;
         lblSwitchStatusTitle.Visible = false;
     }
 }
예제 #37
0
        private void replaceFund(int intOldFundID, int intNewFundID)
        {
            captureSwitchGridviewDetails();

            List<clsSwitchDetails_Client> PreviousListSwitchDetails = (List<clsSwitchDetails_Client>)Session["SwitchDetails_Client"];

            strUserID = Session[clsSystem_Session.strSession.User.ToString()].ToString();
            strClientID = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();

            clsPortfolio Portfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            List<clsSwitchDetails_Client> newListSwitchDetails = new List<clsSwitchDetails_Client>();

            try
            {
                newListSwitchDetails = clsSwitchDetails_Client.FundChange(intOldFundID, intNewFundID, PreviousListSwitchDetails, strClientID, Portfolio.propPortfolioDetails[0].propClientCurrency);
            }
            catch (Exception ex)
            {
                populateAmendSwitch((List<clsSwitchDetails_Client>)Session["SwitchDetails_Client"]);
                ClientScript.RegisterStartupScript(this.GetType(), "errDuplicateDund", "alert('" + ex.Message + "');", true);
                return;
            }

            Session["SwitchDetails_Client"] = newListSwitchDetails;

            this.populateAmendSwitch(newListSwitchDetails);

        }
예제 #38
0
 private void populateHeader(clsPortfolio oPortfolio)
 {
     this.lblValue_PortfolioName.Text = oPortfolio.propAccountNumber;
     this.lblValue_Currency.Text = oPortfolio.propPortfolioCurrency;
     this.lblValue_StartDate.Text = oPortfolio.propPortfolioStartDate.ToString("dd/MM/yyyy");
     //this.lblValue_TotalInvestment.Text = oPortfolio.propTotalInvestments.ToString();
     //this.lblValue_CurrentValue.Text = oPortfolio.propCurrentValue.ToString();
     //this.lblValue_GainOrLoss.Text = oPortfolio.propGainLoss.ToString();
 }
예제 #39
0
        protected void btnAmendSave_Click(object sender, EventArgs e)
        {
            captureSwitchGridviewDetails();

            strUserID      = Session[clsSystem_Session.strSession.User.ToString()].ToString();
            strClientID    = Session[clsSystem_Session.strSession.clientID.ToString()].ToString();
            strPortfolioID = Session[clsSystem_Session.strSession.tempportfolioid.ToString()].ToString();

            List <clsSwitchDetails_Client> ListSwitchDetails = (List <clsSwitchDetails_Client>)Session["SwitchDetails_Client"];

            saveclientSwitch(clsSwitch.enumSwitchStatus.Saved, ListSwitchDetails[0].propSwitchID, this.txtAmendDesc.Text.Trim());

            clsPortfolio oPortfolio = new clsPortfolio(strClientID, strPortfolioID, strUserID);

            bool hasIFAPermit = oPortfolio.propPortfolioDetails[0].propSwitchIFAPermit;
            int  intSwitchID  = ListSwitchDetails[0].propSwitchID;

            if (hasIFAPermit)
            {
                sendValidationCode(this.txtSMSMobileNoApproval.Text.Trim());
            }
            else
            {
                clsIFA    IFA             = new clsIFA(int.Parse(Session["ifaid"].ToString()));
                clsClient Client          = new clsClient(strClientID);
                String    strEmailMessage = "";

                try
                {
                    String strRecipient = IFA.propIFAEmail;

                    try
                    {
                        strEmailMessage = clsEmail.generateEmailBody("ClientAmendmentNotification", null, Client.propForename + " " + Client.propSurname, null, null, null, null, null);
                    }
                    catch
                    {
                        ClientScript.RegisterStartupScript(this.GetType(), "AlertNoEmailTemplate", "alert('System error! No email template found for this purpose. Please report this error to your systems administrator');", true);
                        return;
                    }
                    clsEmail.Send(strRecipient, "*****@*****.**", "NAV-Switch client amended proposed switch", strEmailMessage, oPortfolio.propSwitch.propSwitchID, strClientID, clsEmail.enumEmailPurpose.ClientRequestingContact);
                    clsSwitch_Client.updateSwitchHeader(clsSwitch.enumSwitchStatus.Proposed, intSwitchID, this.txtAmendDesc.Text.Trim());
                    clsSwitch.updateSwitchHeader(intSwitchID, clsSwitch.enumSwitchStatus.Amended, new clsSwitch(intSwitchID).propDescription);

                    int intHistoryID = clsHistory.insertHeader(oPortfolio.propPortfolioID, intSwitchID, (Int16)clsSwitch.enumSwitchStatus.Amended);
                    clsHistory.insertDetailsClient(intHistoryID, ListSwitchDetails);
                    clsHistory.insertMessage(intHistoryID, this.txtAmendDesc.Text.Trim());

                    string backPageURL = "https://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"] + "/report/" + "portfoliodetails.asp";
                    ClientScript.RegisterStartupScript(this.GetType(), "EmailAmendNotification", "alert('An email was sent to notify your IFA regarding the amendments in the proposed switch.'); window.location='" + backPageURL + "';", true);
                }
                catch (Exception ex)
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "EmailFailedAlert", "alert('Sending failed. Error:  " + ex.Message.Replace("'", " ") + "');", true);
                    return;
                }
            }

            Session["SwitchDetails_Client"] = oPortfolio.propSwitchClient.propSwitchDetails;
            populateAmendSwitch((List <clsSwitchDetails_Client>)Session["SwitchDetails_Client"]);
        }