Beispiel #1
0
 /// <summary>
 /// Приплюсовать к текущим материалам перед. кластер
 /// </summary>
 /// <param name="entityCluster"></param>
 public void AddEntityCluster(EntityCluster entityCluster)
 {
     for (var entityIndex = 1; entityIndex < this.Entities.Count + 1; entityIndex++)
     {
         this.Entities[entityIndex] += entityCluster.Entities[entityIndex];
     }
 }
Beispiel #2
0
 public MaterialCluster(MaterialCluster copy)
 {
     cluster = new EntityCluster(copy.cluster, LIMITATION);
 }
Beispiel #3
0
 public MaterialCluster()
 {
     cluster = new EntityCluster(LIMITATION);
 }
Beispiel #4
0
 //конструктор, принимающий Dictionary или Array ЗАПРЕЩЕН!!!
 /// <summary>
 /// Конструктор копирования
 /// </summary>
 /// <param name="copy"></param>
 /// <param name="iLimitation"></param>
 public EntityCluster(EntityCluster copy, int clusterSize)
 {
     this.Entities = new Dictionary<int, int>(copy.Entities);
 }
Beispiel #5
0
 /// <summary>
 /// Вычесть из кластера материалы из перед. кластера
 /// </summary>
 /// <param name="entityCluster"></param>
 /// <returns></returns>
 public bool TakeAwayEntityCluster(EntityCluster entityCluster)
 {
     if (!IsEntityCluster(entityCluster))
     //проверка: есть ли такое кол-то материалов в кластере как в перед. кластере
     {
         return false;
     }
     for (int iEntityNumber = 1; iEntityNumber < this.Entities.Count + 1; iEntityNumber++)
     {
         this.Entities[iEntityNumber] -= entityCluster.Entities[iEntityNumber];
     }
     return true;
 }
Beispiel #6
0
        /// <summary>
        ///Проверяет есть ли такое кол-то материалов в кластере как в перед. кластере. 
        ///Если количество материалов по каждому наименованию больше или равно - возвращает true
        /// </summary>
        /// <param name="entityCluster"></param>
        /// <returns></returns>
        public bool IsEntityCluster(EntityCluster entityCluster)
        {
            for (int entityIndex = 1; entityIndex < this.Entities.Count + 1; entityIndex++)
            {
                if (this.Entities[entityIndex] < entityCluster.Entities[entityIndex])
                {
                    return false;
                }
            }

            return true;
        }
Beispiel #7
0
        public bool CompareNomenclatureIsMore(EntityCluster materialCluster)
        {
            bool isMoreFlag = false;

            for (int iEntityNumber = 1; iEntityNumber < this.Entities.Count + 1; iEntityNumber++)
            {
                if (this.Entities[iEntityNumber] < materialCluster.Entities[iEntityNumber])
                    return false;

                if ((this.Entities[iEntityNumber] > materialCluster.Entities[iEntityNumber]))
                    isMoreFlag = true;
            }

            return isMoreFlag;
        }
Beispiel #8
0
 public ProductCluster(ProductCluster copy)
 {
     Cluster = new EntityCluster(copy.Cluster, LIMITATION);
 }
Beispiel #9
0
 public ProductCluster()
 {
     Cluster = new EntityCluster(LIMITATION);
 }