private void frmReactivation_Load(object sender, EventArgs e)
        {
            SetUserSecurity();
            cmbApprovalStatus.Text = "Not Saved";
            if (id != 0)
            {
                txtRegistrationNo.Enabled = false;
                clsReac                  = da.GetReactivationById(id);
                btnSelect.Enabled        = false;
                txtRegistrationNo.Text   = clsReac.RegistrationOrBookingNo;
                txtClientID.Text         = clsReac.ClientID;
                dTReactivationDate.Value = clsReac.ReActivationDate;
                txtRemarks.Text          = clsReac.Remarks;
                txtProject.Text          = clsReac.strProjectid;
                chkBoxApproved.Checked   = clsReac.Approved;

                EntryApproved = (ApprovalStatus)clsReac.ApprovalStatusCode;
                if ((ApprovalStatus)clsReac.ApprovalStatusCode == ApprovalStatus.Pending)
                {
                    cmbApprovalStatus.Text = "Pending";
                }
                else if ((ApprovalStatus)clsReac.ApprovalStatusCode == ApprovalStatus.Approved)
                {
                    cmbApprovalStatus.Text = "Approved";
                }
                else if ((ApprovalStatus)clsReac.ApprovalStatusCode == ApprovalStatus.Rejected)
                {
                    cmbApprovalStatus.Text = "Rejected";
                }

                var v = da.GetMemberRegistrationInfoByMembershipAndCNIC(clsReac.RegistrationOrBookingNo, clsReac.ClientID);
                txtSizeCode.Text       = v.Plan;
                txtClientName.Text     = v.Name;
                txtBookingDate.Text    = v.Booking.ToString("dd/MM/yyy");
                txtBookingPrice.Text   = v.BookingPrice.ToString("N2");
                txtNetRetailPrice.Text = v.NetOrRetailPrice.ToString("N2");
                txtRebatAmt.Text       = v.RebatAmt.ToString("N2");
                txtTotalPrice.Text     = v.TotalPrice.ToString("N2");


                LoadMemberImage();
            }
        }
        private void SaveCancellation(ApprovalStatus approvalStatus)
        {
            if (EntryApproved != ApprovalStatus.Pending)
            {
                MessageBox.Show("This entry has already been Approved/Rejected");
                return;
            }

            if (id == 0 && approvalStatus != ApprovalStatus.Pending)
            {
                MessageBox.Show("This entry needs to be saved first before approval process.");
                return;
            }

            var clsReac = new clsReactivation();

            clsReac.id = id;
            clsReac.RegistrationOrBookingNo = txtRegistrationNo.Text;
            clsReac.ClientID         = txtClientID.Text;
            clsReac.ReActivationDate = dTReactivationDate.Value.Date;
            clsReac.Remarks          = txtRemarks.Text.Trim();
            clsReac.Approved         = chkBoxApproved.Checked;
            clsReac.strProjectid     = txtProject.Text;

            if (id == 0)
            {
                clsReac.CreatedBy             = Microsoft.Dexterity.Applications.Dynamics.Globals.UserId;
                clsReac.CreationDate          = DateTime.Now;
                clsReac.ApprovalStatusCode    = (int)ApprovalStatus.Pending;
                clsReac.LastUpdateDate        = new DateTime(1900, 1, 1);
                clsReac.LastUpdateUser        = "";
                clsReac.ApprovalActionUser    = "";
                clsReac.ApprovalActionDate    = new DateTime(1900, 1, 1);
                clsReac.intPreviousStatusCode = infoMember.intStatusCode;
            }
            else if (id != 0)
            {
                clsReac.CreatedBy    = Microsoft.Dexterity.Applications.Dynamics.Globals.UserId;
                clsReac.CreationDate = DateTime.Now;

                clsReac.ApprovalStatusCode = (int)approvalStatus;

                clsReac.LastUpdateDate = DateTime.Now;
                clsReac.LastUpdateUser = Microsoft.Dexterity.Applications.Dynamics.Globals.UserId;

                if (approvalStatus != ApprovalStatus.Pending)
                {
                    clsReac.ApprovalActionUser = Microsoft.Dexterity.Applications.Dynamics.Globals.UserId;
                    clsReac.ApprovalActionDate = DateTime.Now;
                }
                else
                {
                    clsReac.ApprovalActionUser = "";
                    clsReac.ApprovalActionDate = new DateTime(1900, 1, 1);
                }
            }



            bool result = da.AddReActivation(clsReac);

            if (result == false)
            {
                MessageBox.Show("An Error Occurred.");
                return;
            }

            infoMember.RegistrationNo = txtRegistrationNo.Text;
            infoMember.ClientID       = txtClientID.Text;

            if (approvalStatus == ApprovalStatus.Approved)
            {
                infoMember.intStatusCode = (int)memberLookupCodes.Reactivate;
            }
            else if (approvalStatus == ApprovalStatus.Pending)
            {
                infoMember.intStatusCode = (int)memberLookupCodes.MarkedForReactivation;
            }


            result = da.UpdateMemberRegistrationAfterCancellation(infoMember);
            if (result == false)
            {
                MessageBox.Show("An Error Occured");
                return;
            }

            if (result == true)
            {
                MessageBox.Show("Reactivation successful.");
                Clear();
            }
        }