示例#1
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);
        }
示例#2
0
 /// <summary>
 /// Интервал обслуживания по времени
 /// </summary>
 /// <param name="group"></param>
 /// <param name="maintenanceType"></param>
 /// <param name="timePeriod"></param>
 /// <param name="periodQuantity"></param>
 /// <param name="quantityInCycle"></param>
 public MaintenanceInterval(
     RepairObjectGroup group,
     MaintenanceType maintenanceType,
     TimePeriod timePeriod,
     int periodQuantity,
     int?quantityInCycle = null
     )
 {
     IntervalType    = MaintenanceIntervalType.ByTime;
     Group           = group;
     TimePeriod      = timePeriod;
     PeriodQuantity  = periodQuantity;
     MaintenanceType = maintenanceType;
     QuantityInCycle = quantityInCycle;
 }
示例#3
0
 /// <summary>
 /// Интервал обслуживания по наработке
 /// </summary>
 /// <param name="group"></param>
 /// <param name="maintenanceType"></param>
 /// <param name="measureUnit"></param>
 /// <param name="minUsage"></param>
 /// <param name="maxUsage"></param>
 /// <param name="quantityInCycle"></param>
 public MaintenanceInterval(
     RepairObjectGroup group,
     MaintenanceType maintenanceType,
     MeasureUnit measureUnit,
     int minUsage,
     int?maxUsage        = null,
     int?quantityInCycle = null
     )
 {
     IntervalType    = MaintenanceIntervalType.ByUsage;
     Group           = group;
     MaintenanceType = maintenanceType;
     MeasureUnit     = measureUnit;
     MinUsage        = minUsage;
     QuantityInCycle = quantityInCycle;
     MaxUsage        = maxUsage;
 }
示例#4
0
 /// <summary>
 ///  Интервал обслуживания по наработке и по времени
 /// </summary>
 /// <param name="group"></param>
 /// <param name="maintenanceType"></param>
 /// <param name="measureUnit"></param>
 /// <param name="timePeriod"></param>
 /// <param name="periodQuantity"></param>
 /// <param name="minUsage"></param>
 /// <param name="maxUsage"></param>
 /// <param name="quantityInCycle"></param>
 public MaintenanceInterval(
     RepairObjectGroup group,
     MaintenanceType maintenanceType,
     TimePeriod timePeriod,
     int periodQuantity,
     MeasureUnit measureUnit,
     int minUsage,
     int?maxUsage        = null,
     int?quantityInCycle = null
     )
 {
     IntervalType    = MaintenanceIntervalType.ByUsageAndTime;
     Group           = group;
     MaintenanceType = maintenanceType;
     MeasureUnit     = measureUnit;
     TimePeriod      = timePeriod;
     PeriodQuantity  = periodQuantity;
     MinUsage        = minUsage;
     QuantityInCycle = quantityInCycle;
     MaxUsage        = maxUsage;
 }
        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;
        }