// get total length of balance barcode
        private int GetTotalLengthOfBalanceBarcode(BalanceBarcodeAc BalanceBarcode)
        {
            int maxValue = 0;

            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.PrefixStartPosition, BalanceBarcode.PrefixLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.SubBarcodeStartPosition, BalanceBarcode.SubBarcodeLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.WeightStartPosition, BalanceBarcode.WeightLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.WeightDecimalStartPosition, BalanceBarcode.WeightDecimalLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.WeightUnitStartPosition, BalanceBarcode.WeightUnitLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.AmountStartPosition, BalanceBarcode.AmountLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.AmountDecimalStartPosition, BalanceBarcode.AmountDecimalLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.SuffixStartPosition, BalanceBarcode.SuffixLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.CheckSumStartPosition, BalanceBarcode.CheckSumLength);
            maxValue = this.checkTotalLength(maxValue, BalanceBarcode.OtherStartPosition, BalanceBarcode.OtherLength);
            return(maxValue);
        }
 /// <summary>
 /// This method used for added balance barcode configuration. -An
 /// </summary>
 /// <param name="balanceBarcodeConfiguration"></param>
 /// <param name="balanceBarcodeConfigurationId"></param>
 private void AddedBalanceBarcodeSection(BalanceBarcodeAc balanceBarcodeConfiguration, int balanceBarcodeConfigurationId)
 {
     try
     {
         AddedBalanceBarcodeSectionDetail(BarcodeSection.Prefix, balanceBarcodeConfiguration.PrefixStartPosition, balanceBarcodeConfiguration.PrefixLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.Amount, balanceBarcodeConfiguration.AmountStartPosition, balanceBarcodeConfiguration.AmountLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.AmountDecimalPoint, balanceBarcodeConfiguration.AmountDecimalStartPosition, balanceBarcodeConfiguration.AmountDecimalLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.WeightDecimalPoint, balanceBarcodeConfiguration.WeightDecimalStartPosition, balanceBarcodeConfiguration.WeightDecimalLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.Weight, balanceBarcodeConfiguration.WeightStartPosition, balanceBarcodeConfiguration.WeightLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.WeightUnit, balanceBarcodeConfiguration.WeightUnitStartPosition, balanceBarcodeConfiguration.WeightUnitLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.Checksum, balanceBarcodeConfiguration.CheckSumStartPosition, balanceBarcodeConfiguration.CheckSumLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.Other, balanceBarcodeConfiguration.OtherStartPosition, balanceBarcodeConfiguration.OtherLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.SubBarcode, balanceBarcodeConfiguration.SubBarcodeStartPosition, balanceBarcodeConfiguration.SubBarcodeLength, balanceBarcodeConfigurationId);
         AddedBalanceBarcodeSectionDetail(BarcodeSection.Suffix, balanceBarcodeConfiguration.SuffixStartPosition, balanceBarcodeConfiguration.SuffixLength, balanceBarcodeConfigurationId);
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
        /// <summary>
        /// This method used for get balance barcode configuration. -An
        /// </summary>
        /// <param name="companyId"></param>
        /// <returns></returns>
        public List <BalanceBarcodeAc> GetBalanceBarcodeConfiguration(int companyId)
        {
            try
            {
                List <BalanceBarcodeAc>            listOfBalanceBarcode           = new List <BalanceBarcodeAc>();
                List <BalanceBarcodeConfiguration> getBalanceBarcodeConfiguration = _balanceBarcodeConfiguration.Fetch(x => x.CompanyId == companyId).ToList();

                foreach (var balanceBarcodeConfiguration in getBalanceBarcodeConfiguration)
                {
                    BalanceBarcodeAc balanceBarcodeAC = new BalanceBarcodeAc();
                    balanceBarcodeAC.Name = balanceBarcodeConfiguration.Name;
                    balanceBarcodeAC.Id   = balanceBarcodeConfiguration.Id;
                    var balanceBarcodeSectionList = _balanceBarcodeSection.Fetch(x => x.ConfigurationId == balanceBarcodeConfiguration.Id).ToList();
                    foreach (var barcodesection in balanceBarcodeSectionList)
                    {
                        if (barcodesection.Section == BarcodeSection.Prefix)
                        {
                            balanceBarcodeAC.PrefixLength        = Convert.ToInt32(barcodesection.Length);
                            balanceBarcodeAC.PrefixStartPosition = Convert.ToInt32(barcodesection.StartPosition);
                        }
                        else if (barcodesection.Section == BarcodeSection.Amount)
                        {
                            balanceBarcodeAC.AmountLength        = barcodesection.Length;
                            balanceBarcodeAC.AmountStartPosition = barcodesection.StartPosition;
                        }
                        else if (barcodesection.Section == BarcodeSection.AmountDecimalPoint)
                        {
                            balanceBarcodeAC.AmountDecimalLength        = barcodesection.Length;
                            balanceBarcodeAC.AmountDecimalStartPosition = barcodesection.StartPosition;
                        }
                        else if (barcodesection.Section == BarcodeSection.Checksum)
                        {
                            balanceBarcodeAC.CheckSumLength        = barcodesection.Length;
                            balanceBarcodeAC.CheckSumStartPosition = barcodesection.StartPosition;
                        }
                        else if (barcodesection.Section == BarcodeSection.Other)
                        {
                            balanceBarcodeAC.OtherLength        = barcodesection.Length;
                            balanceBarcodeAC.OtherStartPosition = barcodesection.StartPosition;
                        }
                        else if (barcodesection.Section == BarcodeSection.Weight)
                        {
                            balanceBarcodeAC.WeightLength        = Convert.ToInt32(barcodesection.Length);
                            balanceBarcodeAC.WeightStartPosition = Convert.ToInt32(barcodesection.StartPosition);
                        }
                        else if (barcodesection.Section == BarcodeSection.WeightDecimalPoint)
                        {
                            balanceBarcodeAC.WeightDecimalLength        = Convert.ToInt32(barcodesection.Length);
                            balanceBarcodeAC.WeightDecimalStartPosition = Convert.ToInt32(barcodesection.StartPosition);
                        }
                        else if (barcodesection.Section == BarcodeSection.WeightUnit)
                        {
                            balanceBarcodeAC.WeightUnitLength        = barcodesection.Length;
                            balanceBarcodeAC.WeightUnitStartPosition = barcodesection.StartPosition;
                        }
                        else if (barcodesection.Section == BarcodeSection.Suffix)
                        {
                            balanceBarcodeAC.SuffixLength        = barcodesection.Length;
                            balanceBarcodeAC.SuffixStartPosition = barcodesection.StartPosition;
                        }
                        else if (barcodesection.Section == BarcodeSection.SubBarcode)
                        {
                            balanceBarcodeAC.SubBarcodeLength        = Convert.ToInt32(barcodesection.Length);
                            balanceBarcodeAC.SubBarcodeStartPosition = Convert.ToInt32(barcodesection.StartPosition);
                        }
                    }
                    listOfBalanceBarcode.Add(balanceBarcodeAC);
                }
                return(listOfBalanceBarcode);
            }
            catch (Exception ex)
            {
                _errorLog.LogException(ex);
                throw;
            }
        }