Ejemplo n.º 1
0
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            DeviceCountRange = await _context.DeviceCountRanges.FirstOrDefaultAsync(m => m.ID == id);

            if (DeviceCountRange == null)
            {
                return(NotFound());
            }
            return(Page());
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            DeviceCountRange = await _context.DeviceCountRanges.FindAsync(id);

            if (DeviceCountRange != null)
            {
                _context.DeviceCountRanges.Remove(DeviceCountRange);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
Ejemplo n.º 3
0
        public void Initialize()
        {
            var dcREFU = new DeviceComposition("РЭФУ");
            var dcREU  = new DeviceComposition("РЭУ");
            var dcSREU = new DeviceComposition("СРЭУ");

            dbContext.DeviceCompositions.AddRange(dcREFU, dcREU, dcSREU);

            var dcRange_1_5   = new DeviceCountRange("1 .. 5");
            var dcRange_6_10  = new DeviceCountRange("6 .. 10");
            var dcRange_11_20 = new DeviceCountRange("11 .. 20");

            dbContext.DeviceCountRanges.AddRange(dcRange_1_5, dcRange_6_10, dcRange_11_20);

            dbContext.DeviceComplexityRates.AddRange(
                new DeviceComplexityRate(dcREFU, dcRange_1_5, 1.0),
                new DeviceComplexityRate(dcREFU, dcRange_6_10, 1.5),
                new DeviceComplexityRate(dcREFU, dcRange_11_20, 2.0),
                new DeviceComplexityRate(dcREU, dcRange_1_5, 1.0),
                new DeviceComplexityRate(dcREU, dcRange_6_10, 1.25),
                new DeviceComplexityRate(dcREU, dcRange_11_20, 1.5),
                new DeviceComplexityRate(dcSREU, dcRange_1_5, 1.0),
                new DeviceComplexityRate(dcSREU, dcRange_6_10, 1.4),
                new DeviceComplexityRate(dcSREU, dcRange_11_20, 1.8)
                );

            OkrInnovationProperty[] okrInoProps =
            {
                new OkrInnovationProperty("Заданные значения основных технических характеристик превышают достигнутые в мировой практике для изделий аналогичного назначения**"),
                new OkrInnovationProperty("Заданные значения 1-2 основных технических характеристик превышают достигнутые в мировой практике для изделий аналогичного назначения**"),
                new OkrInnovationProperty("Заданные значения основных технических характеристик соответствуют достигнутым в мировой практике для изделий аналогичного назначения**"),
                new OkrInnovationProperty("Изделие не имеющее аналогов в практике исполнителя"),
                new OkrInnovationProperty("Ужесточение требовний к двум и более основным техническим характеристикам*"),
                new OkrInnovationProperty("Ужесточение требований по подавлению НЭМИ*"),
                new OkrInnovationProperty("Ужесточение требования к основной технической характеристике* и условиям эксплуатации*"),
                new OkrInnovationProperty("Ужесточение требования к основной технической характеристике*"),
                new OkrInnovationProperty("Ужесточение требований по надежности*"),
                new OkrInnovationProperty("Ужесточение 1-2 неосновных тежнических характеристик*"),
                new OkrInnovationProperty("Новая конструкция аналога по техническим характеристикам"),
                new OkrInnovationProperty("Заимствование конструкции, наличие ранее созданного аналога по техническим характеристикам"),
                new OkrInnovationProperty("25% заимствование ранее созданного аналога"),
                new OkrInnovationProperty("50% заимствование ранее созданного аналога"),
                new OkrInnovationProperty("75% заимствование ранее созданного аналога"),
                new OkrInnovationProperty("Повторное изготовление изделия без изменений в ТД и КД")
            };

            dbContext.OkrInnovationProperties.AddRange(okrInoProps);

            double[] refuRatesValues = { 3.0, 2.5, 2.0, 1.8, 1.6, 1.4, 1.2, 1.0, 0.9, 0.8, 0.7, 0.6, 0.5 };
            double[] reuRatesValues  = { 3.0, 2.5, 2.0, 1.5, 1.4, 1.3, 1.2, 1.1, 1.0, 0.9, 0.9, 0.8, 0.7, 0.6 };
            double[] sreuRatesValues = { 4.0, 3.0, 2.5, 2.0, 1.5, 1.4, 1.3, 1.2, 1.1, 1.05, 1.0, 0.95, 0.9, 0.85, 0.8, 0.7 };

            var REFU_ratesBinder = new InnovationRatesBinder(dcREFU, okrInoProps.TakeLast(13));
            IEnumerable <OkrInnovationRate> refuRates = REFU_ratesBinder.Bind(refuRatesValues);

            dbContext.OkrInnovationRates.AddRange(refuRates);

            var REU_ratesBinder = new InnovationRatesBinder(dcREU, okrInoProps.TakeLast(14));
            IEnumerable <OkrInnovationRate> reuRates = REU_ratesBinder.Bind(reuRatesValues);

            dbContext.OkrInnovationRates.AddRange(reuRates);

            var SREU_ratesBinder = new InnovationRatesBinder(dcSREU, okrInoProps);
            IEnumerable <OkrInnovationRate> sreuRates = SREU_ratesBinder.Bind(sreuRatesValues);

            dbContext.OkrInnovationRates.AddRange(sreuRates);

            StageForOkr[] okrStages = SeedOkrStages();

            SeedOkrLabors(okrStages);
            SeedOkrSoftwareDevLaborGroups(okrStages);
        }