コード例 #1
0
ファイル: MemberRecord.cs プロジェクト: kimykunjun/test
        public bool Reprint(string strMembershipID, int nEmployee, int CardStatus, string strCardBranchCode)
        {
            ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();
            TblMember      sqlMember      = new TblMember();
            TblCardRequest sqlCardRequest = new TblCardRequest();
            TblAudit       sqlAudit       = new TblAudit();

            bool isSuccess = false;

            try
            {
                sqlMember.MainConnectionProvider      = connProvider;
                sqlCardRequest.MainConnectionProvider = connProvider;
                sqlAudit.MainConnectionProvider       = connProvider;
                connProvider.OpenConnection();
                connProvider.BeginTransaction("ReprintCard");

                sqlMember.UpdateCardStatus(strMembershipID, CardStatus, strCardBranchCode);
                sqlCardRequest.NEmployeeID     = nEmployee;
                sqlCardRequest.NStatusID       = CardStatus;
                sqlCardRequest.StrBranchCode   = strCardBranchCode;
                sqlCardRequest.StrMembershipID = strMembershipID;
                sqlCardRequest.DtLastEditDate  = DateTime.Now;
                sqlCardRequest.Insert();

                sqlAudit.NAuditTypeID  = ACMSLogic.AuditTypeID.MemberCard;
                sqlAudit.NEmployeeID   = nEmployee;
                sqlAudit.StrAuditEntry = "Reprint member card.";
                sqlAudit.StrReference  = strMembershipID;
                sqlAudit.DtDate        = DateTime.Now;
                sqlAudit.Insert();

                connProvider.CommitTransaction();
                isSuccess = true;
            }
            catch (Exception)
            {
                connProvider.RollbackTransaction("ReprintCard");
                throw;
            }
            finally
            {
                if (connProvider.CurrentTransaction != null)
                {
                    connProvider.CurrentTransaction.Dispose();
                }
                if (connProvider.DBConnection != null)
                {
                    if (connProvider.DBConnection.State == ConnectionState.Open)
                    {
                        connProvider.DBConnection.Close();
                    }
                    connProvider.DBConnection.Dispose();
                }
                sqlMember.Dispose();
                sqlCardRequest.Dispose();
                sqlAudit.Dispose();
            }
            return(isSuccess);
        }
コード例 #2
0
ファイル: MemberRecord.cs プロジェクト: kimykunjun/test
 public DataTable GetCardRequestAudit(string strMembershipID)
 {
     if (myCardRequestAudit == null)
     {
         myCardRequestAudit = new TblAudit();
     }
     return(myCardRequestAudit.SelectBynAuditTypeIDstrMembershipID(strMembershipID, ACMSLogic.AuditTypeID.MemberCard));
 }
コード例 #3
0
ファイル: MemberRecord.cs プロジェクト: kimykunjun/test
 public DataTable GetAuditTrail(string strMembershipID)
 {
     if (myAuditTrail == null)
     {
         myAuditTrail = new TblAudit();
     }
     return(myAuditTrail.SelectForMemberRecord(strMembershipID));
 }
コード例 #4
0
ファイル: SpaBooking.cs プロジェクト: kimykunjun/test
        public bool DeleteBooking(int nSessionID)
        {
            myServiceSession.NSessionID = nSessionID;
            myServiceSession.SelectOne();

            if (myServiceSession.NStatusID.Value == 5)
            {
                throw new Exception("You are not allow to delete marked service.");
            }

            myServiceSession.NStatusID      = 7;
            myServiceSession.DtLastEditDate = DateTime.Now;
            myServiceSession.NEmployeeID    = ACMSLogic.User.EmployeeID;

            TblAudit audit = new TblAudit();

            audit.DtDate        = DateTime.Today;
            audit.NAuditTypeID  = AuditTypeID.Service;
            audit.NEmployeeID   = ACMSLogic.User.EmployeeID;
            audit.StrAuditEntry = "Cancel Booking " + nSessionID.ToString();
            audit.StrReference  = nSessionID.ToString();

            ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();

            try
            {
                myServiceSession.MainConnectionProvider = connProvider;
                audit.MainConnectionProvider            = connProvider;
                connProvider.OpenConnection();
                connProvider.BeginTransaction("CancelBooking");
                myServiceSession.Update();
                audit.Insert();
                connProvider.CommitTransaction();
                return(true);
            }
            catch (Exception)
            {
                connProvider.RollbackTransaction("CancelBooking");
                throw;
            }
            finally
            {
                if (connProvider.CurrentTransaction != null)
                {
                    connProvider.CurrentTransaction.Dispose();
                }
                if (connProvider.DBConnection != null)
                {
                    if (connProvider.DBConnection.State == ConnectionState.Open)
                    {
                        connProvider.DBConnection.Close();
                    }
                    //connProvider.DBConnection.Dispose();
                }
                myServiceSession.MainConnactionIsCreatedLocal = true;
                audit.MainConnactionIsCreatedLocal            = true;
            }
        }
コード例 #5
0
ファイル: MemberRecord.cs プロジェクト: kimykunjun/test
        public bool Delete(string strMembershipID, User aUser, string strRemark)
        {
            ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();
            TblMember sqlMember = new TblMember();
            TblAudit  sqlAudit  = new TblAudit();

            bool isSuccess = false;

            try
            {
                sqlMember.MainConnectionProvider = connProvider;
                sqlAudit.MainConnectionProvider  = connProvider;
                connProvider.OpenConnection();
                connProvider.BeginTransaction("DeleteMember");

                sqlMember.DeleteMember(strMembershipID, strRemark);
                sqlAudit.NAuditTypeID  = ACMSLogic.AuditTypeID.MemberRecord;
                sqlAudit.NEmployeeID   = aUser.NEmployeeID();
                sqlAudit.StrAuditEntry = "Delete member " + strMembershipID;
                sqlAudit.StrReference  = strMembershipID;
                sqlAudit.DtDate        = DateTime.Now;
                sqlAudit.Insert();

                connProvider.CommitTransaction();
                isSuccess = true;
            }
            catch (Exception)
            {
                connProvider.RollbackTransaction("DeleteMember");
                throw;
            }
            finally
            {
                if (connProvider.CurrentTransaction != null)
                {
                    connProvider.CurrentTransaction.Dispose();
                }
                if (connProvider.DBConnection != null)
                {
                    if (connProvider.DBConnection.State == ConnectionState.Open)
                    {
                        connProvider.DBConnection.Close();
                    }
                    connProvider.DBConnection.Dispose();
                }
                sqlMember.Dispose();
                sqlAudit.Dispose();
            }
            return(isSuccess);
        }
コード例 #6
0
        public bool Delete(int creditPackageID)
        {
            myCreditPkg.NCreditPackageID = creditPackageID;
            myCreditPkg.SelectOne();
            myCreditPkg.NStatusID = 2;
            TblAudit audit = new TblAudit();

            audit.NAuditTypeID  = AuditTypeID.DeleteMemberCreditPackage;
            audit.NEmployeeID   = User.EmployeeID;
            audit.StrAuditEntry = " Delete member credit Package " + creditPackageID.ToString();
            audit.StrReference  = creditPackageID.ToString();

            ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();

            try
            {
                myCreditPkg.MainConnectionProvider = connProvider;
                audit.MainConnectionProvider       = connProvider;
                connProvider.OpenConnection();
                connProvider.BeginTransaction("DeleteMemberCreditPackage");

                myCreditPkg.Update();
                audit.Insert();

                connProvider.CommitTransaction();
                return(true);
            }
            catch (Exception)
            {
                connProvider.RollbackTransaction("DeleteMemberCreditPackage");
                throw;
            }
            finally
            {
                if (connProvider.CurrentTransaction != null)
                {
                    connProvider.CurrentTransaction.Dispose();
                }
                if (connProvider.DBConnection != null)
                {
                    if (connProvider.DBConnection.State == ConnectionState.Open)
                    {
                        connProvider.DBConnection.Close();
                    }
                }
                myCreditPkg.MainConnactionIsCreatedLocal = true;
                audit.MainConnactionIsCreatedLocal       = true;
            }
        }
コード例 #7
0
ファイル: Logic2.cs プロジェクト: atezaz/CharteredAccountants
        public static void SaveClientAudit(ClientsModel model, int clientId)
        {
            DataContext db  = new DataContext();
            TblAudit    tbl = new TblAudit();

            tbl.UpdatedBy       = model.UpdatedById;
            tbl.FilePathNew     = model.FilePathNew;
            tbl.FilePathOld     = model.FilePathOld;
            tbl.ClientId        = clientId;
            tbl.UserId          = model.UserId;
            tbl.YearId          = model.YearId;
            tbl.LastChangesInfo = model.LastChanges;
            db.TblAudits.InsertOnSubmit(tbl);
            db.SubmitChanges();
            db.Dispose();
        }
コード例 #8
0
ファイル: Logic2.cs プロジェクト: atezaz/CharteredAccountants
        public static void UpdateClientAudit(ClientsModel model, int clientId)
        {
            DataContext db     = new DataContext();
            TblAudit    result = (from a in db.TblAudits
                                  join c in db.TblClients on a.ClientId equals c.Id
                                  join u in db.TblUsers on a.UserId equals u.Id
                                  join y in db.TblYears on a.YearId equals y.Id
                                  where a.ClientId == clientId && y.Year == model.Year
                                  select a).SingleOrDefault();

            result.LastChangesInfo = model.LastChanges;
            result.FilePathNew     = model.FilePathNew;
            result.FilePathOld     = model.FilePathOld;
            result.UpdatedBy       = model.UpdatedById;
            result.UserId          = model.UserId;
            InsertForUniqueId();
            db.SubmitChanges();
        }
コード例 #9
0
ファイル: Logic2.cs プロジェクト: atezaz/CharteredAccountants
        public static int ReturnLastAuditId()
        {
            DataContext db     = new DataContext();
            TblAudit    obj    = new TblAudit();
            var         result = (from e in db.TblAudits
                                  orderby e.Id descending
                                  select e).FirstOrDefault();

            obj = result;
            if (result != null)
            {
                return(obj.Id);
            }
            else
            {
                return(0);
            }
        }
コード例 #10
0
ファイル: MemberRecord.cs プロジェクト: kimykunjun/test
        public string ConvertMember(DataRow rowMember, User aUser)
        {
            ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();
            TblMember      sqlMember      = new TblMember();
            TblBranch      sqlBranch      = new TblBranch();
            TblAudit       sqlAudit       = new TblAudit();
            TblCardRequest sqlCardRequest = new TblCardRequest();

            try
            {
                sqlBranch.MainConnectionProvider      = connProvider;
                sqlMember.MainConnectionProvider      = connProvider;
                sqlAudit.MainConnectionProvider       = connProvider;
                sqlCardRequest.MainConnectionProvider = connProvider;
                connProvider.OpenConnection();
                connProvider.BeginTransaction("ConvertMember");

                sqlBranch.StrBranchCode = aUser.StrBranchCode();
                sqlBranch.IncOne();
                string newMembershipID = aUser.StrBranchCode().TrimEnd() + sqlBranch.NMembershipNo;
                sqlMember.StrBranchCode = aUser.StrBranchCode();
                sqlMember.ConvertMember(rowMember["strMembershipID"].ToString(), newMembershipID);
                sqlMember.ConvertMemberPurchase(rowMember["strMembershipID"].ToString(), newMembershipID);
                sqlAudit.UpdateAllWstrReferenceLogic(newMembershipID, rowMember["strMembershipID"].ToString());
                sqlAudit.NAuditTypeID  = ACMSLogic.AuditTypeID.MemberRecord;
                sqlAudit.NEmployeeID   = aUser.NEmployeeID();
                sqlAudit.StrAuditEntry = "Convert member from " + rowMember["strMembershipID"].ToString() + " to " + newMembershipID;
                sqlAudit.StrReference  = newMembershipID;
                sqlAudit.DtDate        = DateTime.Now;
                sqlAudit.Insert();

                //Request print for convert non member to member
                //sqlCardRequest.NEmployeeID = aUser.NEmployeeID();
                //sqlCardRequest.NStatusID = (int)CardStatusType.RequestPrint;
                //sqlCardRequest.StrBranchCode = aUser.StrBranchCode();
                //sqlCardRequest.StrMembershipID = newMembershipID;
                //sqlCardRequest.DtLastEditDate = DateTime.Now;
                //sqlCardRequest.Insert();

                ////Audit trail for request print
                //sqlAudit.NAuditTypeID = ACMSLogic.AuditTypeID.MemberCard;
                //sqlAudit.NEmployeeID = aUser.NEmployeeID();
                //sqlAudit.StrAuditEntry = "New member card request when create convert member.";
                //sqlAudit.StrReference = newMembershipID;
                //sqlAudit.DtDate = DateTime.Now;
                //sqlAudit.Insert();

                connProvider.CommitTransaction();
                return(newMembershipID);
            }
            catch (Exception)
            {
                connProvider.RollbackTransaction("ConvertMember");
                throw;
            }
            finally
            {
                if (connProvider.CurrentTransaction != null)
                {
                    connProvider.CurrentTransaction.Dispose();
                }
                if (connProvider.DBConnection != null)
                {
                    if (connProvider.DBConnection.State == ConnectionState.Open)
                    {
                        connProvider.DBConnection.Close();
                    }
                    connProvider.DBConnection.Dispose();
                }
                sqlBranch.Dispose();
                sqlMember.Dispose();
                sqlAudit.Dispose();
                sqlCardRequest.Dispose();
            }
        }
コード例 #11
0
        public void TransferMemberCreditPackage(int nCreditPackageID, string newStrMemberShipID, string remark)
        {
            myCreditPkg.NCreditPackageID = nCreditPackageID;
            myCreditPkg.SelectOne();
            myCreditPkg.StrRemarks = remark;
            TblAudit audit = new TblAudit();

            audit.NAuditTypeID          = AuditTypeID.TransferMemberCreditPackage;
            audit.NEmployeeID           = User.EmployeeID;
            audit.DtDate                = DateTime.Now;
            audit.StrReference          = nCreditPackageID.ToString();
            audit.StrAuditEntry         = "Old Owner : " + myCreditPkg.StrMembershipID + " New Owner : " + newStrMemberShipID;
            myCreditPkg.StrMembershipID = newStrMemberShipID;

            TblMemberPackage sqlMemberPackage = new TblMemberPackage();

            ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();

            try
            {
                myCreditPkg.MainConnectionProvider      = connProvider;
                audit.MainConnectionProvider            = connProvider;
                sqlMemberPackage.MainConnectionProvider = connProvider;

                sqlMemberPackage.NCreditPackageID = nCreditPackageID;
                DataTable memberPackageTable = sqlMemberPackage.SelectAllWnCreditPackageIDLogic();

                foreach (DataRow row in memberPackageTable.Rows)
                {
                    row["strMembershipID"] = newStrMemberShipID;
                }

                connProvider.OpenConnection();
                connProvider.BeginTransaction("TransferMemberCreditPackage");

                myCreditPkg.Update();
                sqlMemberPackage.SaveData(memberPackageTable);
                audit.Insert();

                connProvider.CommitTransaction();
            }
            catch (Exception)
            {
                connProvider.RollbackTransaction("TransferMemberCreditPackage");
                throw;
            }
            finally
            {
                if (connProvider.CurrentTransaction != null)
                {
                    connProvider.CurrentTransaction.Dispose();
                }
                if (connProvider.DBConnection != null)
                {
                    if (connProvider.DBConnection.State == ConnectionState.Open)
                    {
                        connProvider.DBConnection.Close();
                    }
                }
                myCreditPkg.MainConnactionIsCreatedLocal = true;
                audit.MainConnactionIsCreatedLocal       = true;
            }
        }
コード例 #12
0
 private AuditDetailsModel MapDetails(TblAudit unit)
 {
     return(_mapper.Map <AuditDetailsModel>(unit));
 }
コード例 #13
0
        public AuditDetailsModel GetById(long id)
        {
            TblAudit obj = _repository.GetById(id);

            return(obj == null ? new AuditDetailsModel() : MapDetails(obj));
        }
コード例 #14
0
ファイル: MemberRecord.cs プロジェクト: kimykunjun/test
        public bool UpdateCardStatus(string strMembershipID, User aUser, CardStatusType myType, int nRequestID,
                                     string strBranchCode)
        {
            ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();
            TblMember      sqlMember      = new TblMember();
            TblCardRequest sqlCardRequest = new TblCardRequest();
            TblAudit       sqlAudit       = new TblAudit();

            bool isSuccess = false;

            try
            {
                sqlMember.MainConnectionProvider      = connProvider;
                sqlCardRequest.MainConnectionProvider = connProvider;
                sqlAudit.MainConnectionProvider       = connProvider;
                connProvider.OpenConnection();
                connProvider.BeginTransaction("ChangeCardStatus");

                if (CardStatusType.RequestPrint == myType)
                {
                    sqlMember.UpdateCardStatus(strMembershipID, (int)myType, "HQ");
                }
                else
                {
                    sqlMember.UpdateCardStatus(strMembershipID, (int)myType, strBranchCode);
                }
                sqlCardRequest.NEmployeeID     = aUser.NEmployeeID();
                sqlCardRequest.NRequestID      = nRequestID;
                sqlCardRequest.NStatusID       = (int)myType;
                sqlCardRequest.StrBranchCode   = strBranchCode;
                sqlCardRequest.StrMembershipID = strMembershipID;
                sqlCardRequest.DtLastEditDate  = DateTime.Now;
                sqlCardRequest.Update();

                sqlAudit.NAuditTypeID  = ACMSLogic.AuditTypeID.MemberCard;
                sqlAudit.NEmployeeID   = aUser.NEmployeeID();
                sqlAudit.StrAuditEntry = "Update member card to " + myType.ToString() + ".";
                sqlAudit.StrReference  = strMembershipID;
                sqlAudit.DtDate        = DateTime.Now;
                sqlAudit.Insert();

                connProvider.CommitTransaction();
                isSuccess = true;
            }
            catch (Exception)
            {
                connProvider.RollbackTransaction("ChangeCardStatus");
                throw;
            }
            finally
            {
                if (connProvider.CurrentTransaction != null)
                {
                    connProvider.CurrentTransaction.Dispose();
                }
                if (connProvider.DBConnection != null)
                {
                    if (connProvider.DBConnection.State == ConnectionState.Open)
                    {
                        connProvider.DBConnection.Close();
                    }
                    connProvider.DBConnection.Dispose();
                }
                sqlMember.Dispose();
                sqlCardRequest.Dispose();
                sqlAudit.Dispose();
            }
            return(isSuccess);
        }
コード例 #15
0
ファイル: MemberRecord.cs プロジェクト: kimykunjun/test
        public bool UpdateMember(string strMembershipID,
                                 object dateDob,
                                 bool fAirCrew,
                                 bool fBoundCheck,
                                 bool fEmail,
                                 bool fGiroFailed,
                                 bool fPostalMail,
                                 bool fSingaporean,
                                 bool fSMS,
                                 int nLoyaltyStatusID,
                                 string strAdd1,
                                 string strAdd2,
                                 string strAltEmail,
                                 string strCardName,
                                 string strCompany,
                                 string strCreditCardNo,
                                 string strEmail,
                                 string strEmergencyContactNo,
                                 string strEmergencyContactPerson,
                                 string strHomeNo,
                                 string strMemberName,
                                 string strMobileNo,
                                 string strNIRCFIN,
                                 string strOccupation,
                                 string strOfficeNo,
                                 string strPagerNo,
                                 string strPostalCode,
                                 string strRemark,
                                 int nMediaSourceID,
                                 string strMediaSource,
                                 string strBeforePhoto,
                                 string strAfterPhoto,
                                 byte[] imgPhoto,
                                 User aUser,
                                 bool fFemale,
                                 bool fPhoneCall,
                                 string strSecurityQuestion,
                                 string strSecurityAnswer,
                                 string strMobileAppPwd)
        {
            ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();
            TblMember sqlMember = new TblMember();
            TblAudit  sqlAudit  = new TblAudit();

            bool isSuccess = false;

            try
            {
                sqlMember.MainConnectionProvider = connProvider;
                sqlAudit.MainConnectionProvider  = connProvider;
                connProvider.OpenConnection();
                connProvider.BeginTransaction("UpdateMemberRecord");

                sqlMember.StrMembershipID = strMembershipID;
                sqlMember.FFemale         = fFemale;
                sqlMember.FAirCrew        = fAirCrew;
                sqlMember.FBounceCheck    = fBoundCheck;
                sqlMember.FEmail          = fEmail;
                sqlMember.FGIROFailed     = fGiroFailed;
                sqlMember.FPostalMail     = fPostalMail;
                sqlMember.FSingaporean    = fSingaporean;
                sqlMember.FSMS            = fSMS;
                sqlMember.FPhoneCall      = fPhoneCall;

                if (nLoyaltyStatusID != 0)
                {
                    sqlMember.NLoyaltyStatusID = nLoyaltyStatusID;
                }

                sqlMember.StrAddress1               = strAdd1;
                sqlMember.StrAddress2               = strAdd2;
                sqlMember.StrAltEmail               = strAltEmail;
                sqlMember.StrCardName               = strCardName;
                sqlMember.StrCompany                = strCompany;
                sqlMember.StrCreditCardNo           = strCreditCardNo;
                sqlMember.StrEmail                  = strEmail;
                sqlMember.StrEmergencyContactNumber = strEmergencyContactNo;
                sqlMember.StrEmergencyContactPerson = strEmergencyContactPerson;
                sqlMember.StrHomeNo                 = strHomeNo;
                sqlMember.StrMemberName             = strMemberName;
                sqlMember.StrMobileNo               = strMobileNo;
                sqlMember.StrNRICFIN                = strNIRCFIN;
                sqlMember.StrOccupation             = strOccupation;
                sqlMember.StrOfficeNo               = strOfficeNo;
                sqlMember.StrPagerNo                = strPagerNo;
                sqlMember.StrPostalCode             = strPostalCode;
                sqlMember.StrRemarks                = strRemark;
                sqlMember.NMediaSourceID            = nMediaSourceID;
                sqlMember.StrMediaSource            = strMediaSource;
                sqlMember.NEmployeeID               = aUser.NEmployeeID();
                sqlMember.StrSecurityQuestion       = strSecurityQuestion;
                sqlMember.StrSecurityAnswer         = strSecurityAnswer;
                sqlMember.StrPassword               = strMobileAppPwd;

                sqlMember.Update2(dateDob, strBeforePhoto, strAfterPhoto, imgPhoto);

                sqlAudit.NAuditTypeID  = ACMSLogic.AuditTypeID.MemberRecord;
                sqlAudit.NEmployeeID   = aUser.NEmployeeID();
                sqlAudit.StrAuditEntry = "Update member " + strMembershipID;
                sqlAudit.StrReference  = strMembershipID;
                sqlAudit.DtDate        = DateTime.Now;
                sqlAudit.Insert();

                connProvider.CommitTransaction();
                isSuccess = true;
            }
            catch (Exception)
            {
                connProvider.RollbackTransaction("UpdateMemberRecord");
                throw;
            }
            finally
            {
                if (connProvider.CurrentTransaction != null)
                {
                    connProvider.CurrentTransaction.Dispose();
                }
                if (connProvider.DBConnection != null)
                {
                    if (connProvider.DBConnection.State == ConnectionState.Open)
                    {
                        connProvider.DBConnection.Close();
                    }
                    connProvider.DBConnection.Dispose();
                }
                sqlMember.Dispose();
                sqlAudit.Dispose();
            }
            return(isSuccess);
        }
コード例 #16
0
 private AuditModel Map(TblAudit unit)
 {
     return(_mapper.Map <AuditModel>(unit));
 }
コード例 #17
0
ファイル: MemberRecord.cs プロジェクト: kimykunjun/test
        /// <summary>
        /// Include member or non member
        /// </summary>
        /// <param name="isMember"></param>
        /// <param name="branchCode"></param>
        /// <param name="name"></param>
        /// <param name="isSingaporean"></param>
        /// <param name="NRIC"></param>
        /// <param name="nSignUpID"></param>
        /// <param name="dob"></param>
        /// <param name="aUser"></param>
        ///
        /// 0705
        public string AddNewMember(bool isMember, string branchCode, string name, bool isSingaporean, string NRIC, int nSignUpID,
                                   DateTime dob, User aUser, bool isFemale, int nmediaSource)
        {
            string    membershipID = string.Empty;
            TblMember sqlMember    = new TblMember();

            sqlMember.FMember       = isMember;
            sqlMember.StrMemberName = name;
            sqlMember.FFemale       = isFemale;
            if (name.Length >= 19)
            {
                sqlMember.StrCardName = name.Substring(0, 19);
            }
            else
            {
                sqlMember.StrCardName = name;
            }
            sqlMember.StrNRICFIN     = NRIC;
            sqlMember.DtDOB          = dob;
            sqlMember.StrBranchCode  = branchCode;
            sqlMember.FSingaporean   = isSingaporean;
            sqlMember.NMediaSourceID = nmediaSource;
            TblCardRequest sqlCardRequest = new TblCardRequest();
            TblAudit       sqlAudit       = new TblAudit();

            if (!isMember)
            {
                ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();
                TblCompany sqlCompany = new TblCompany();

                try
                {
                    sqlCompany.MainConnectionProvider     = connProvider;
                    sqlMember.MainConnectionProvider      = connProvider;
                    sqlCardRequest.MainConnectionProvider = connProvider;
                    sqlAudit.MainConnectionProvider       = connProvider;
                    connProvider.OpenConnection();
                    connProvider.BeginTransaction("AddNewNonMember");

                    sqlCompany.IncOne();
                    sqlMember.NMembershipNo   = sqlCompany.NNonMembershipNo;
                    sqlMember.NStatus         = 1;
                    sqlMember.NSignupID       = nSignUpID;
                    sqlMember.StrMembershipID = "NMC" + sqlCompany.NNonMembershipNo;
                    sqlMember.DtSignupDate    = DateTime.Now;
                    //sqlMember.NCardStatusID = (int)CardStatusType.RequestPrint;
                    sqlMember.NLoyaltyStatusID = 1;
                    sqlMember.Insert();

                    membershipID = "NMC" + sqlCompany.NNonMembershipNo;

                    connProvider.CommitTransaction();
                }
                catch (Exception)
                {
                    connProvider.RollbackTransaction("AddNewNonMember");
                    throw;
                }
                finally
                {
                    if (connProvider.CurrentTransaction != null)
                    {
                        connProvider.CurrentTransaction.Dispose();
                    }
                    if (connProvider.DBConnection != null)
                    {
                        if (connProvider.DBConnection.State == ConnectionState.Open)
                        {
                            connProvider.DBConnection.Close();
                        }
                        connProvider.DBConnection.Dispose();
                    }
                    sqlCompany.MainConnactionIsCreatedLocal     = true;
                    sqlMember.MainConnactionIsCreatedLocal      = true;
                    sqlCardRequest.MainConnactionIsCreatedLocal = true;
                }
            }
            else
            {
                ACMSDAL.ConnectionProvider connProvider = new ConnectionProvider();
                TblBranch sqlBranch = new TblBranch();

                try
                {
                    sqlBranch.MainConnectionProvider      = connProvider;
                    sqlMember.MainConnectionProvider      = connProvider;
                    sqlCardRequest.MainConnectionProvider = connProvider;
                    sqlAudit.MainConnectionProvider       = connProvider;
                    connProvider.OpenConnection();
                    connProvider.BeginTransaction("AddNewNonMember");

                    sqlBranch.StrBranchCode = branchCode;
                    //sqlBranch.StrBranchCode = "PM";
                    sqlBranch.IncOne();
                    sqlMember.NMembershipNo   = sqlBranch.NMembershipNo;
                    sqlMember.NStatus         = 1;
                    sqlMember.NSignupID       = nSignUpID;
                    sqlMember.StrMembershipID = branchCode.TrimEnd() + sqlBranch.NMembershipNo;
                    // sqlMember.StrMembershipID = "PM" + sqlBranch.NMembershipNo;
                    sqlMember.DtSignupDate      = DateTime.Now;
                    sqlMember.NCardStatusID     = (int)CardStatusType.RequestPrint;
                    sqlMember.StrCardBranchCode = "HQ";
                    sqlMember.NLoyaltyStatusID  = 1;
                    sqlMember.Insert();

                    //Request print for member --now only for fitness member
//					sqlCardRequest.NEmployeeID = aUser.NEmployeeID();
//					sqlCardRequest.NStatusID = (int)CardStatusType.RequestPrint;
//					sqlCardRequest.StrBranchCode = aUser.StrBranchCode();
//					sqlCardRequest.StrMembershipID = branchCode.TrimEnd() +sqlBranch.NMembershipNo;
//					sqlCardRequest.DtLastEditDate = DateTime.Now;
//					sqlCardRequest.Insert();

                    //Audit trail for request print
//					sqlAudit.NAuditTypeID = ACMSLogic.AuditTypeID.MemberCard;
//					sqlAudit.NEmployeeID = aUser.NEmployeeID();
//					sqlAudit.StrAuditEntry = "New member card request when create new member.";
//					sqlAudit.StrReference = branchCode.TrimEnd() +sqlBranch.NMembershipNo;
//					sqlAudit.DtDate = DateTime.Now;
//					sqlAudit.Insert();

                    membershipID = branchCode.TrimEnd() + sqlBranch.NMembershipNo;

                    connProvider.CommitTransaction();
                }
                catch (Exception)
                {
                    connProvider.RollbackTransaction("AddNewNonMember");
                    throw;
                }
                finally
                {
                    if (connProvider.CurrentTransaction != null)
                    {
                        connProvider.CurrentTransaction.Dispose();
                    }
                    if (connProvider.DBConnection != null)
                    {
                        if (connProvider.DBConnection.State == ConnectionState.Open)
                        {
                            connProvider.DBConnection.Close();
                        }
                        connProvider.DBConnection.Dispose();
                    }
                    sqlBranch.Dispose();
                    sqlMember.Dispose();
                    sqlCardRequest.Dispose();
                }
            }

            return(membershipID);
        }