Esempio n. 1
0
        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);
        }