예제 #1
0
        /// <summary>
        /// Get Tax Exempt Card Holder
        /// </summary>
        /// <param name="customerId"></param>
        /// <returns></returns>
        public teCardholder GetTaxExemptCustomer(string customerId)
        {
            var dateStart = DateTime.Now;

            _performancelog.Debug($"Start,CustomerService,GetTaxExemptCustomer,{string.Empty},{DateTime.Now:hh.mm.ss.ffffff}");

            var  cardHolder  = new teCardholder();
            bool returnValue = false;

            var dt = GetRecords("Select * From Client where CL_Code = \'" + customerId + "\'", DataSource.CSCMaster);

            if (dt != null && dt.Rows.Count > 0)
            {
                if (CommonUtility.GetBooleanValue(dt.Rows[0]["TaxExempt"]))
                {
                    returnValue             = true;
                    cardHolder.Name         = CommonUtility.GetStringValue(dt.Rows[0]["Cl_Name"]);
                    cardHolder.Address      = CommonUtility.GetStringValue(dt.Rows[0]["CL_Add1"]);
                    cardHolder.City         = CommonUtility.GetStringValue(dt.Rows[0]["CL_City"]);
                    cardHolder.PlateNumber  = CommonUtility.GetStringValue(dt.Rows[0]["PlateNumber"]);
                    cardHolder.PostalCode   = CommonUtility.GetStringValue(dt.Rows[0]["CL_Postal"]);
                    cardHolder.Note         = CommonUtility.GetStringValue(dt.Rows[0]["CL_Note"]);
                    cardHolder.CardholderID = customerId;
                    cardHolder.CardNumber   = customerId;
                }
                cardHolder.IsValidCardHolder = Convert.ToBoolean(returnValue);
            }
            _performancelog.Debug($"End,CustomerService,GetTaxExemptCustomer,{DateTime.Now.Subtract(dateStart).TotalMilliseconds},{DateTime.Now:hh.mm.ss.ffffff}");

            return(cardHolder);
        }
        /// <summary>
        /// Method to check if valid tax exempt customer
        /// </summary>
        /// <param name="cardHolder">Card holder</param>
        /// <param name="customerId">Customer Id</param>
        /// <returns>True or false</returns>
        public bool ValidTaxExemptCustomer(ref teCardholder cardHolder, string customerId)
        {
            cardHolder = _customerService.GetTaxExemptCustomer(customerId);
            var returnValue = cardHolder.IsValidCardHolder;

            return(returnValue);
        }
예제 #3
0
        /// <summary>
        /// Update tax exempt card holder
        /// </summary>
        /// <param name="taxExemptCardHolder">tax exempt card holder</param>
        public void UpdateTaxExemptCardHolder(teCardholder taxExemptCardHolder)
        {
            var dateStart = DateTime.Now;

            _performancelog.Debug($"Start,TaxService,UpdateTaxExemptCardHolder,{string.Empty},{dateStart:hh.mm.ss.ffffff}");

            var rsCardHolder = new DataTable();

            _connection = new SqlConnection(GetConnectionString(DataSource.CSCMaster));
            if (_connection.State == ConnectionState.Closed)
            {
                _connection.Open();
            }
            _adapter = new SqlDataAdapter("select * from TaxExemptCardRegistry Where CardholderID= \'" + taxExemptCardHolder.CardholderID + "\'", _connection);
            _adapter.Fill(rsCardHolder);
            if (rsCardHolder.Rows.Count > 0)
            {
                rsCardHolder.Rows[0]["TobaccoQuota"] = taxExemptCardHolder.TobaccoQuota;
                rsCardHolder.Rows[0]["GasQuota"]     = taxExemptCardHolder.GasQuota;
                rsCardHolder.Rows[0]["PropaneQuota"] = taxExemptCardHolder.PropaneQuota;
                SqlCommandBuilder builder = new SqlCommandBuilder(_adapter);
                _adapter.UpdateCommand = builder.GetUpdateCommand();
                _adapter.Update(rsCardHolder);
                _connection.Close();
                _adapter?.Dispose();
            }
            _performancelog.Debug($"End,TaxService,UpdateTaxExemptCardHolder,{DateTime.Now.Subtract(dateStart).TotalMilliseconds},{DateTime.Now:hh.mm.ss.ffffff}");
        }
예제 #4
0
        /// <summary>
        /// Method to get card holder
        /// </summary>
        /// <param name="isBarCode">Is bar code or not</param>
        /// <param name="strNumber">Number</param>
        /// <param name="matchCount">Match count</param>
        /// <param name="ageRestrict">Age restriction</param>
        /// <returns>Tax exempt card holder</returns>
        public teCardholder GetCardHolder(bool isBarCode, string strNumber, out short matchCount, int ageRestrict)
        {
            var dateStart = DateTime.Now;

            _performancelog.Debug($"Start,CustomerService,GetCardHolder,{string.Empty},{DateTime.Now:hh.mm.ss.ffffff}");

            string       strSql;
            teCardholder cardHolder = new teCardholder {
                IsValidCardHolder = false
            };

            if (isBarCode)
            {
                strSql = "Select * from TaxExemptCardRegistry where BarCode=\'" + strNumber + "\'  OR AltBarCode=\'" + strNumber + "\'";
            }
            else
            {
                strSql = "Select * from TaxExemptCardRegistry where CardNumber=\'" + strNumber + "\'  OR AltCardNumber=\'" + strNumber + "\'";
            }
            var dt = GetRecords(strSql, DataSource.CSCMaster);

            matchCount = 0;
            if (dt != null && dt.Rows.Count > 0)
            {
                matchCount = Convert.ToInt16(dt.Rows.Count);
                if (matchCount > 1)
                {
                    cardHolder.IsValidCardHolder = false;
                    return(cardHolder);
                }

                DateTime mBirthDate;
                if (CommonUtility.GetBooleanValue(dt.Rows[0]["Birthdate"]))
                {
                    mBirthDate = DateAndTime.DateAdd(DateInterval.Year, Convert.ToDouble(-1 * (ageRestrict + 1)), DateAndTime.Today);
                }
                else
                {
                    mBirthDate = CommonUtility.GetDateTimeValue(dt.Rows[0]["Birthdate"]);
                }
                cardHolder.Birthdate = mBirthDate;


                cardHolder.Name              = CommonUtility.GetStringValue(dt.Rows[0]["Name"]);
                cardHolder.CardholderID      = CommonUtility.GetStringValue(dt.Rows[0]["CardholderID"]);
                cardHolder.IsValidCardHolder = false;
                if (isBarCode)
                {
                    if (CommonUtility.GetStringValue(dt.Rows[0]["Barcode"]) == strNumber)
                    {
                        cardHolder.ValidateMode = 1;
                        cardHolder.CardNumber   = CommonUtility.GetStringValue(dt.Rows[0]["CardNumber"]);
                    }
                    else
                    {
                        cardHolder.ValidateMode = 2;
                        cardHolder.CardNumber   = CommonUtility.GetStringValue(dt.Rows[0]["AltCardNumber"]);
                    }
                    cardHolder.Barcode = strNumber;
                }
                else
                {
                    if (CommonUtility.GetStringValue(dt.Rows[0]["CardNumber"]) == strNumber)
                    {
                        cardHolder.ValidateMode = 3;
                        cardHolder.Barcode      = CommonUtility.GetStringValue(dt.Rows[0]["Barcode"]);
                    }
                    else
                    {
                        cardHolder.ValidateMode = 4;
                        cardHolder.Barcode      = CommonUtility.GetStringValue(dt.Rows[0]["AltBarCode"]);
                    }
                    cardHolder.CardNumber = strNumber;
                }
                cardHolder.GasQuota          = CommonUtility.GetFloatValue(dt.Rows[0]["GasQuota"]);
                cardHolder.PropaneQuota      = CommonUtility.GetFloatValue(dt.Rows[0]["PropaneQuota"]);
                cardHolder.TobaccoQuota      = CommonUtility.GetFloatValue(dt.Rows[0]["TobaccoQuota"]);
                cardHolder.IsValidCardHolder = true;
            }
            _performancelog.Debug($"End,CustomerService,GetCardHolder,{DateTime.Now.Subtract(dateStart).TotalMilliseconds},{DateTime.Now:hh.mm.ss.ffffff}");

            return(cardHolder);
        }
        /// <summary>
        /// Method to get valid card holder
        /// </summary>
        /// <param name="cardHolder">Card holder</param>
        /// <param name="isBarCode">Bar code exists or not</param>
        /// <param name="strNumber">Number</param>
        /// <param name="matchCount">Match count</param>
        /// <returns>True or false</returns>
        public bool ValidCardHolder(ref teCardholder cardHolder, bool isBarCode, string strNumber, ref short matchCount)
        {
            cardHolder = _customerService.GetCardHolder(isBarCode, strNumber, out matchCount, _policyManager.AgeRestrict);

            return(cardHolder.IsValidCardHolder);
        }