/// <summary>
        /// Apply Regular Price
        /// </summary>
        /// <param name="priceCheck"></param>
        /// <param name="userCode">User code</param>
        /// <param name="error">Error</param>
        /// <returns>Stock price check</returns>
        public StockPriceCheck ApplyRegularPrice(RegularPriceCheck priceCheck,
                                                 string userCode, out ErrorMessage error)
        {
            if (priceCheck.RegularPrice > 9999.99)
            {
                priceCheck.RegularPrice = 9.99;
            }
            double price     = 0;
            var    stockItem = _stockService.GetStockItem(priceCheck.StockCode);

            if (stockItem == null)
            {
                var offSet = _policyManager.LoadStoreInfo().OffSet;
                error = new ErrorMessage
                {
                    MessageStyle = _resourceManager.CreateMessage(offSet, 39, 91, priceCheck.StockCode)
                };
                return(null);
            }
            var  vendorId          = stockItem.Vendor;
            bool activeVendorPrice = _stockService.IsActiveVendorPrice(priceCheck.StockCode, vendorId);

            _stockService.DeletePreviousPrices(priceCheck.StockCode, "R", activeVendorPrice, vendorId);

            _stockService.AddUpdateRegularPrice(priceCheck.StockCode, ref vendorId, ref price, priceCheck.RegularPrice);

            _stockService.TrackPriceChange(priceCheck.StockCode, price, priceCheck.RegularPrice, "PC", 1, userCode, vendorId);

            var      result   = GetStockPriceDetails(priceCheck.StockCode, priceCheck.TillNumber, priceCheck.SaleNumber, priceCheck.RegisterNumber, userCode, out error);
            Register register = new Register();

            _mainManager.SetRegister(ref register, priceCheck.RegisterNumber);
            if (register.Customer_Display)
            {
                result.CustomerDisplay = _mainManager.DisplayMsgLcd(register,
                                                                    _mainManager.FormatLcdString(register, result.Description,
                                                                                                 result.RegularPriceText), "");
            }
            return(result);
        }