Example #1
0
        public Cabinet(int height, int width, int depth, int sizeElement, int backSize, string name, IConfig config)
        {
            Logger.Info("Start cabinet constructor");
            Logger.Trace("Start Automapper created");
            _mapperConfiguration = new MapperConfiguration(cfg =>
            {
                cfg.AddCollectionMappers();
                cfg.ShouldMapProperty = pi => pi.GetMethod != null && (pi.GetMethod.IsPublic || pi.GetMethod.IsPrivate);
                cfg.CreateMap <ElementModelDTO, ElementModel>().EqualityComparison((dto, o) => dto.GetGuid() == o.GetGuid());
                cfg.CreateMap <ElementModel, ElementModelDTO>().EqualityComparison((dto, o) => dto.GetGuid() == o.GetGuid());
                cfg.CreateMap <CabinetModel, CabinetModelDTO>();
            });
            _mapperConfiguration.AssertConfigurationIsValid();
            _mapper = _mapperConfiguration.CreateMapper();
            Logger.Trace("Stop AutoMapper created");

            _config = config;

            _height      = height;
            _width       = width;
            _depth       = depth;
            _sizeElement = sizeElement;
            BackSize     = backSize;
            Back         = EnumBack.Brak;
            _name        = name;
            CabinetType  = EnumCabinetType.Standard;

            Logger.Trace("Start GlobalCabinetElemen in cabinet constructor");
            GlobalCabinetElement();

            HorizontalBarrierFactory = new HorizontalBarrierFactory(this);
            VerticalBarrierFactory   = new VerticalBarrierFactory(this);
            FrontFactory             = new FrontFactory(this, _config);
        }
Example #2
0
 public void Redraw()
 {
     Logger.Info("Redraw in Cabinet");
     RedrawCabinetElements();
     // TODO  dodac wszelkie przeliczenia w klasie cabinet
     VerticalBarrier   = _mapper.Map <List <ElementModel> >(VerticalBarrierFactory.ReCount());
     HorizontalBarrier = _mapper.Map <List <ElementModel> >(HorizontalBarrierFactory.ReCount());
     FrontList         = _mapper.Map <List <ElementModel> >(FrontFactory.ReCount());
 }
Example #3
0
        public void NewCabinet()
        {
            Height(_config.CabinetHeight()).Width(_config.CabinetWidth()).Depth(_config.CabinetDepth()).SizeElement(_config.CabinetSizeElement())
            .Name(_config.CabinetName());
            HorizontalBarrierFactory = new HorizontalBarrierFactory(this);
            VerticalBarrierFactory   = new VerticalBarrierFactory(this);
            FrontFactory             = new FrontFactory(this, _config);

            Redraw();
        }
Example #4
0
        public void RemoveFront()
        {
            Logger.Info("Remove Front in Cabinet");

            try
            {
                FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.Remove());
            }
            catch (Exception ex)
            {
                Logger.Error(ex, "Error Remove Front Barrier");
            }
        }
Example #5
0
 public void DeleteLast_x_Front(int x)
 {
     Logger.Info("Delete last x front (int x) in Cabinet");
     Logger.Debug("X: {0}", x);
     try
     {
         FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.Delete(x));
     }
     catch (Exception ex)
     {
         Logger.Error(ex, "Error last x front (int x) in Cabinet");
     }
 }
Example #6
0
 public void DeleteFront(ElementModel front)
 {
     Logger.Info("Delete Front (ElementModel front) in Cabinet");
     Logger.Debug("Front: {0}", front);
     try
     {
         FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.DeleteElement(_mapper.Map <ElementModelDTO>(front)));
     }
     catch (Exception ex)
     {
         Logger.Error(ex, "Error Delete Front (ElementModel front) in Cabinet");
     }
 }
Example #7
0
 public void AddFront(List <ElementModelDTO> frontList)
 {
     Logger.Info("Add Front (List<ElementModelDTO> frontList) in Cabinet");
     Logger.Debug("FrontList: {0}", frontList.ToString());
     try
     {
         FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.AddFront(frontList));
     }
     catch (Exception ex)
     {
         Logger.Error(ex, "Error Add Front (List<ElementModelDTO> frontList) in Cabinet");
     }
 }
Example #8
0
 public void AddFront(SlotsModel slots, int number, EnumFront enumFront)
 {
     Logger.Info("Add Front (SlotsModel slots, int number, EnumFront enumFront) in Cabinet");
     Logger.Debug("Number: {0}, Slots: {1}, EnumFront: {2}", number, slots, enumFront);
     try
     {
         FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.NewFront(number, slots, enumFront));
     }
     catch (Exception ex)
     {
         Logger.Error(ex, "Error Add Front (SlotsModel slots, int number, EnumFront enumFront) in Cabinet");
     }
 }
Example #9
0
 private void AddFrontList(List <ElementModel> frontList)
 {
     Logger.Info("AddFrontList(List<ElementModel> frontList)  in Cabinet");
     Logger.Debug("frontList: {0}", frontList);
     try
     {
         FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.Add(_mapper.Map <List <ElementModelDTO> >(frontList)));
     }
     catch (Exception ex)
     {
         Logger.Error(ex, "Error AddFrontList(List<ElementModel> frontList)");
     }
 }
Example #10
0
 public void AddFront(int number)
 {
     Logger.Info("Add Front (int number) in Cabinet");
     Logger.Debug("Number: {0}", number);
     try
     {
         FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.Add(number));
     }
     catch (Exception ex)
     {
         Logger.Error(ex, "Error Add Front (int number) in Cabinet");
     }
 }
Example #11
0
        // TODO: Logger
        //public void FrontRecall()
        //{
        //    FrontFactory.Recal();
        //}

        public void FrontReCount(EnumFront enumFront)
        {
            Logger.Info("FrontReCount (EnumFront enum) in Cabinet");
            Logger.Debug("EnumFront: {0}", enumFront);
            try
            {
                FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.ReCount(enumFront));
            }
            catch (Exception ex)
            {
                Logger.Error(ex, "Error FrontReCount in Cabinet");
            }
        }
Example #12
0
 public void AddFront(FrontParameter frontParameter)
 {
     Logger.Info("Add Front (FrontParameter frontParameter) in Cabinet");
     Logger.Debug("FrontParameter: {0}", frontParameter);
     FrontParameter = frontParameter;
     try
     {
         FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.NewFront(frontParameter.Number, frontParameter.Slots, frontParameter.EnumFront));
     }
     catch (Exception ex)
     {
         Logger.Error(ex, "Error Add Front (FrontParameter frontParameter) in Cabinet");
     }
 }
Example #13
0
        public void AddFront(int number, EnumFront enumFront)
        {
            Logger.Info("Add Front (int number, EnumFront enumFront) in Cabinet");
            Logger.Debug("Number: {0}, EnumFront: {1}", number, enumFront);

            var slots = new SlotsModel(_config);

            try
            {
                FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.Add(number, enumFront));
            }
            catch (Exception ex)
            {
                Logger.Error(ex, "Error Add Front (int number, EnumFront enumFront) in Cabinet");
            }
        }
Example #14
0
        // TODO dodac dodatkowe logowanie i prawidłowe - w fabryce zmiany elementow
        public ElementModel ChangeElemenet(ElementModel element, EnumElementParameter parameter, string text)
        {
            Logger.Info("ChangeElemenet(ElementModel element, EnumElementParameter parameter, string text) in Cabinet");

            if (int.TryParse(text, out int result) || parameter == EnumElementParameter.Description)
            {
                bool find = false;

                foreach (var item in CabinetElements)
                {
                    if (item.GetGuid() == element.GetGuid())
                    {
                        find = true;
                        SwitchChange(parameter, text, result, item);

                        if (element.GetEnumName() == EnumCabinetElement.Leftside && parameter == EnumElementParameter.Width)
                        {
                            CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Top).SetHeight(_width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Leftside).Width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Rightside).Width, false);
                            CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Bottom).SetHeight(_width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Leftside).Width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Rightside).Width, false);
                            CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Top).SetX(CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Leftside).Width, false);
                            CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Bottom).SetX(CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Leftside).Width, false);
                        }
                        if (element.GetEnumName() == EnumCabinetElement.Rightside && parameter == EnumElementParameter.Width)
                        {
                            CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Top).SetHeight(_width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Leftside).Width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Rightside).Width, false);
                            CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Bottom).SetHeight(_width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Leftside).Width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Rightside).Width, false);
                            CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Rightside).SetX(_width - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Rightside).Width, false);
                        }
                        if (element.GetEnumName() == EnumCabinetElement.Top && parameter == EnumElementParameter.Width)
                        {
                            CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Top).SetY(_height - CabinetElements.Find(x => x.GetEnumName() == EnumCabinetElement.Top).Width, false);
                        }

                        HorizontalBarrier = _mapper.Map <List <ElementModel> >(HorizontalBarrierFactory.ReCount());
                        VerticalBarrier   = _mapper.Map <List <ElementModel> >(VerticalBarrierFactory.ReCount());
                        FrontList         = _mapper.Map <List <ElementModel> >(FrontFactory.ReCount());
                    }

                    if (find)
                    {
                        break;
                    }
                }

                foreach (var item in VerticalBarrier)
                {
                    if (item.GetGuid() == element.GetGuid())
                    {
                        find            = true;
                        VerticalBarrier = _mapper.Map <List <ElementModel> >(VerticalBarrierFactory.Update(parameter, text, result, _mapper.Map <ElementModelDTO>(item)));
                        element         = VerticalBarrier.Find(x => x.GetGuid() == element.GetGuid());
                    }
                }

                foreach (var item in HorizontalBarrier)
                {
                    if (item.GetGuid() == element.GetGuid())
                    {
                        find = true;
                        HorizontalBarrier = _mapper.Map <List <ElementModel> >(HorizontalBarrierFactory.Update(parameter, text, result, _mapper.Map <ElementModelDTO>(item)));
                        element           = HorizontalBarrier.Find(x => x.GetGuid() == element.GetGuid());
                    }
                }

                foreach (var item in FrontList)
                {
                    if (item.GetGuid() == element.GetGuid())
                    {
                        find      = true;
                        FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.Update(parameter, text, result, _mapper.Map <ElementModelDTO>(item)));
                        element   = FrontList.Find(x => x.GetGuid() == element.GetGuid());
                        break;
                    }
                }
            }

            return(element);
        }
Example #15
0
 private void RecalculateFront()
 {
     Logger.Info("Recalculate Front in Cabinet");
     FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.ReCount());
 }
Example #16
0
 public List <ElementModel> GetAllFront()
 {
     Logger.Info("Get All Front in Cabinet");
     FrontList = _mapper.Map <List <ElementModel> >(FrontFactory.GetAll());
     return(FrontList);
 }