예제 #1
0
 /// <summary>
 /// Удалить интервал
 /// </summary>
 /// <param name="interval"></param>
 public void RemoveInterval(MaintenanceInterval interval)
 {
     if(interval!=null && intervals.Contains(interval))
     {
         intervals.Remove(interval);
     }
 }
예제 #2
0
        private void BuildElectromotor(IRepository repository)
        {
            var eMotors = new ObjectGroup {
                Name = "Электродвигатели"
            };
            var eMotorType = new ObjectGroup {
                Name = "ЭД синхронный с к.з. ротором"
            };
            var eMotorModel = new ObjectGroup {
                Name = "1AN3R-355Z-6"
            };

            eMotors.AddChild(eMotorType);
            eMotorType.AddChild(eMotorModel);

            eMotors.AddSpecification(new GroupSpecification(SpecificationFactory.Power));
            eMotors.AddSpecification(new GroupSpecification(SpecificationFactory.RPM));

            var interval_T = new MaintenanceInterval(
                MaintenanceTypeFactory.T_Repair,
                MeasureUnitFactory.WorkHours,
                8000,
                8760,
                12
                );

            var interval_C = new MaintenanceInterval(
                MaintenanceTypeFactory.C_Repair,
                MeasureUnitFactory.WorkHours,
                42000,
                43800,
                2
                );

            var interval_K = new MaintenanceInterval(
                MaintenanceTypeFactory.K_Repair,
                MeasureUnitFactory.WorkHours,
                130000,
                131400,
                1
                );

            eMotors.AddIntervals(interval_T, interval_C, interval_K);

            repository.Save(eMotors);

            ElectroMotor = new MaintenanceObject(eMotorModel, "К-401В", DateTime.Now)
            {
                InventoryNumber = "123456678"
            };

            ElectroMotor.AddSpecificationsFromGroup();
            ElectroMotor.AddSpecification(new ObjectSpecification(SpecificationFactory.Execution, "2"));

            repository.Save(ElectroMotor);
        }
예제 #3
0
 public MaintenanceIntervalDto(MaintenanceInterval interval)
 {
     Id = interval.Id;
     MaintenanceTypeId = interval.MaintenanceType.Id;
     MeasureUnitId     = interval.MeasureUnit?.Id;
     MinUsage          = interval.MinUsage;
     MaxUsage          = interval.MaxUsage;
     TimePeriod        = interval.TimePeriod;
     PeriodQuantity    = interval.PeriodQuantity;
     QuantityInCycle   = interval.QuantityInCycle;
 }
예제 #4
0
        protected override void Build(IRepository repository)
        {
            new SpecificationFactory(repository);
            new MaintenanceTypeFactory(repository);
            new MeasureUnitFactory(repository);

            var ts = new RepairObjectGroup {
                Name = "Транспортные средства"
            };

            ts.AddSpecification(new GroupSpecification(SpecificationFactory.RegistrationNumber));
            ts.AddSpecification(new GroupSpecification(SpecificationFactory.EngineVolume));

            var cars = new RepairObjectGroup {
                Name = "Легковые автомобили"
            };
            var engine_1_8 = new RepairObjectGroup {
                Name = "Объём двигателя от 1,8 л до 3,5 л"
            };

            cars.AddChild(engine_1_8);
            ts.AddChild(cars);

            repository.Save(ts);
            repository.Save(cars);
            repository.Save(engine_1_8);

            //Интервал ТО-1 10 ткм, либо 1 раз в 2 года
            var Interval_TO1 = new MaintenanceInterval(
                engine_1_8,
                MaintenanceTypeFactory.TO1_Repair,
                TimePeriod.Year, 2,
                MeasureUnitFactory.Km, 10000
                );

            //Интервал ТО-2 20 ткм
            var Interval_TO2 = new MaintenanceInterval(
                engine_1_8,
                MaintenanceTypeFactory.TO2_Repair,
                MeasureUnitFactory.Km,
                20000
                );

            repository.Save(Interval_TO1);
            repository.Save(Interval_TO2);

            Car = new RepairObject(engine_1_8, "999", DateTime.Now);
            repository.Save(Car);
        }
예제 #5
0
        protected override void Build(IRepository repository)
        {
            new MaintenanceTypeFactory(repository);
            new SpecificationFactory(repository);
            new MeasureUnitFactory(repository);

            var eMotors = new RepairObjectGroup {
                Name = "Электродвигатели"
            };
            var eMotorType = new RepairObjectGroup {
                Name = "ЭД синхронный с к.з. ротором"
            };
            var eMotorModel = new RepairObjectGroup {
                Name = "1AN3R-355Z-6"
            };

            eMotors.AddChild(eMotorType);
            eMotorType.AddChild(eMotorModel);

            var interval_T = new MaintenanceInterval(
                eMotorType,
                MaintenanceTypeFactory.T_Repair,
                MeasureUnitFactory.WorkHours,
                8000,
                8760,
                12
                );

            var interval_C = new MaintenanceInterval(
                eMotorType,
                MaintenanceTypeFactory.C_Repair,
                MeasureUnitFactory.WorkHours,
                42000,
                43800,
                2
                );

            var interval_K = new MaintenanceInterval(
                eMotorType,
                MaintenanceTypeFactory.K_Repair,
                MeasureUnitFactory.WorkHours,
                130000,
                131400,
                1
                );

            repository.Save(interval_T);
            repository.Save(interval_C);
            repository.Save(interval_K);

            eMotors.AddSpecification(new GroupSpecification(SpecificationFactory.Power));
            eMotors.AddSpecification(new GroupSpecification(SpecificationFactory.RPM));

            repository.Save(eMotors);

            var eMotor = new RepairObject(eMotorModel, "К-401В", DateTime.Now)
            {
                FactoryNumber   = "3452",
                InventoryNumber = "123456678"
            };

            eMotor.AddSpecification(new ObjectSpecification(SpecificationFactory.Execution, "1"));

            ElectroMotor = eMotor;
        }
예제 #6
0
        private void BuildCrane(IRepository repository)
        {
            var gpm = new ObjectGroup {
                Name = "Грузоподъёмные механизмы"
            };
            var electroCranes = new ObjectGroup {
                Name = "Краны электрические"
            };
            var bridgeCranes = new ObjectGroup {
                Name = "Краны мостовые"
            };

            gpm.AddChild(electroCranes);
            electroCranes.AddChild(bridgeCranes);

            var fullTO = new MaintenanceInterval
                         (
                MaintenanceTypeFactory.TO_Full,
                null, null, null, 1,
                TimePeriod.Month,
                36
                         );

            var partialTO = new MaintenanceInterval
                            (
                MaintenanceTypeFactory.TO_Partial,
                null, null, null, 1,
                TimePeriod.Month,
                12
                            );

            var O = new MaintenanceInterval
                    (
                MaintenanceTypeFactory.O_Repair,
                null, null, null, 14,
                TimePeriod.Month,
                6
                    );

            var T = new MaintenanceInterval
                    (
                MaintenanceTypeFactory.T_Repair,
                null, null, null, 13,
                TimePeriod.Month,
                12
                    );

            var K = new MaintenanceInterval
                    (
                MaintenanceTypeFactory.K_Repair,
                null, null, null, 1,
                TimePeriod.Month,
                186
                    );

            bridgeCranes.AddIntervals(fullTO, partialTO, O, T, K);
            repository.Save(gpm);

            Crane = new MaintenanceObject(bridgeCranes, "", DateTime.Now);
            Crane.AddSpecificationsFromGroup();
            repository.Save(Crane);
        }
예제 #7
0
        private void BuildCompressor(IRepository repository)
        {
            var nko = new ObjectGroup {
                Name = "Насосно-компрессорное оборудование"
            };
            var kompressors = new ObjectGroup {
                Name = "Компрессоры"
            };
            var kompressorsTypes = new ObjectGroup {
                Name = "Поршневые"
            };
            var kompressorsModels = new ObjectGroup {
                Name = "5Г-300/15-30"
            };

            nko.AddChild(kompressors);
            kompressors.AddChild(kompressorsTypes);
            kompressorsTypes.AddChild(kompressorsModels);

            kompressors.AddSpecification(new GroupSpecification(SpecificationFactory.InjectionPressure));

            var O = new MaintenanceInterval(
                MaintenanceTypeFactory.O_Repair,
                MeasureUnitFactory.WorkHours,
                2630,
                3210,
                12
                );
            var T = new MaintenanceInterval(
                MaintenanceTypeFactory.T_Repair,
                MeasureUnitFactory.WorkHours,
                5260,
                6420,
                6
                );
            var C = new MaintenanceInterval(
                MaintenanceTypeFactory.C_Repair,
                MeasureUnitFactory.WorkHours,
                10520,
                12840,
                5
                );
            var K = new MaintenanceInterval(
                MaintenanceTypeFactory.K_Repair,
                MeasureUnitFactory.WorkHours,
                63120,
                77040,
                1
                );

            kompressorsTypes.AddIntervals(O, T, C, K);

            repository.Save(nko);

            Compressor = new MaintenanceObject(kompressorsModels, "КП-1", DateTime.Now);
            Compressor.AddSpecificationsFromGroup();
            Compressor.Specifications.First().Value = "11,2";
            Compressor.AddChild(ElectroMotor);

            repository.Save(Compressor);
        }