Exemple #1
0
        public void KevvTitleTest()
        {
            conductor.AreaInSqrMm     = 1m;
            coverPolymerGroup.Title   = "PVC LS";
            billet.PolymerGroup.Title = "PVC LS";
            cable.ElementsCount       = 8;

            title = builder.GetCableTitle(cable, billet, null);
            Assert.That(title, Is.EqualTo("КЭВВнг(А)-LS 8х1,0"));
        }
        private void ParseTableCellData(Cable cable, TableCellData tableCellData, IEnumerable <InsulatedBillet> currentBilletsList,
                                        CablePropertySet?cableProps = null)
        {
            if (decimal.TryParse(tableCellData.ColumnHeaderData, NumberStyles.Any, _cultureInfo, out decimal elementsCount) &&
                decimal.TryParse(tableCellData.RowHeaderData, NumberStyles.Any, _cultureInfo, out decimal conductorAreaInSqrMm) &&
                decimal.TryParse(tableCellData.CellData, NumberStyles.Any, _cultureInfo, out decimal maxCoverDiameter))
            {
                var billet = (from b in currentBilletsList
                              where b.Conductor.AreaInSqrMm == conductorAreaInSqrMm
                              select b).First();
                cable.ElementsCount    = elementsCount;
                cable.MaxCoverDiameter = maxCoverDiameter;
                cable.Title            = _cableTitleBuilder.GetCableTitle(cable, billet, cableProps);

                var cableRec = _dbContext.Cables.Add(cable).Entity;

                _dbContext.ListCableBillets.Add(new ListCableBillets {
                    Billet = billet, Cable = cableRec
                });

                if (cableProps.HasValue)
                {
                    var listOfCableProperties = GetCableAssociatedPropertiesList(cableRec, cableProps.Value);
                    _dbContext.ListCableProperties.AddRange(listOfCableProperties);
                }
                _dbContext.SaveChanges();
            }
            else
            {
                throw new Exception($"Не удалось распарсить ячейку таблицы!");
            }
        }