Example #1
0
        public IDataRation CreateDefaultDataRation(IDataWindow[] dataWindows, float distribution = 2.0F / 3.0F)
        {
            var trainingSampleSize = (int)(dataWindows.Length * distribution);
            var trainingData       = dataWindows.Take(trainingSampleSize).ToArray();
            var verificationData   = dataWindows.Skip(trainingSampleSize).ToArray();

            var output = new DataRation
            {
                TrainingData     = trainingData,
                VerificationData = verificationData
            };

            return(output);
        }
Example #2
0
        public ResultRationViewModel(DataRation ration)
        {
            MainWindowViewModel.Price = 0;
            this.ration = ration;

            list = new ObservableCollection <RationGrid>();

            foreach (var item in ration.Rations)
            {
                list.Add(item);
                MainWindowViewModel.Price += item.Cost;
            }

            MainWindowViewModel.Rations = list;
        }
        public LaboratoryViewModel(DataRation ration)
        {
            this.ration = ration;

            list = new ObservableCollection <LaboratoryGrid>();

            using (var db = new CowRationContext())
            {
                foreach (var item in db.Korms.ToList())
                {
                    list.Add(new LaboratoryGrid
                    {
                        Name = item.Name_korm,
                        Sv   = (db.FNutritionalCharacteristics.Where(k => k.Id_korm == item.Id_korm).Where(f => f.Id_index == 3).FirstOrDefault() ?? new FNutritionalCharacteristic()).FValue,
                        Sp   = (db.FNutritionalCharacteristics.Where(k => k.Id_korm == item.Id_korm).Where(f => f.Id_index == 4).FirstOrDefault() ?? new FNutritionalCharacteristic()).FValue,
                        Sg   = (db.FNutritionalCharacteristics.Where(k => k.Id_korm == item.Id_korm).Where(f => f.Id_index == 5).FirstOrDefault() ?? new FNutritionalCharacteristic()).FValue,
                        Sk   = (db.FNutritionalCharacteristics.Where(k => k.Id_korm == item.Id_korm).Where(f => f.Id_index == 6).FirstOrDefault() ?? new FNutritionalCharacteristic()).FValue
                    });
                }
            }
        }
Example #4
0
 public UserControlResultFood(TransitionEffectKind transition, DataRation ration)
 {
     InitializeComponent();
     this.DataContext = new ResultFoodViewModel(ration);
     TrainsitionigContentSlide.OpeningEffect = new TransitionEffect(transition, new TimeSpan(0, 0, 0, 0, 800));
 }
 public MilkDataViewModel(DataRation date)
 {
     this.ration = date;
 }
 public UserControlMilkData(TransitionEffectKind transition, DataRation date)
 {
     InitializeComponent();
     this.DataContext = new MilkDataViewModel(date);
     TrainsitionigContentSlide.OpeningEffect = new TransitionEffect(transition, new TimeSpan(0, 0, 0, 0, 800));
 }
        public ResultFoodViewModel(DataRation ration)
        {
            this.ration = ration;



            using (var db = new CowRationContext())
            {
                //Молокообразование ЧЭЛ,кг
                double sumForm1 = 0;
                foreach (var item in ration.Rations)
                {
                    sumForm1 += item.Value * (db.NNutritionalCharacteristics.Include("Korm")
                                              .Where(k => k.Korm.Name_korm == item.Name)
                                              .Where(f => f.Id_index == 7).FirstOrDefault() ?? new NNutritionalCharacteristic())
                                .NValue;
                }
                MilkFormation = sumForm1 - ((0.528 * Math.Pow(535, 0.75) * 0.6 * 1.05) + 6);
                ////////////////////////

                //Молокообразование nXP,кг
                double sumForm2 = 0;
                foreach (var item in ration.Rations)
                {
                    sumForm2 += item.Value * (db.NNutritionalCharacteristics.Include("Korm")
                                              .Where(k => k.Korm.Name_korm == item.Name)
                                              .Where(f => f.Id_index == 13).FirstOrDefault() ?? new NNutritionalCharacteristic())
                                .NValue;
                }
                MilkXp = (sumForm2 - ((400 * 1.12) - 132)) / 84;
                //////////////////////

                //Потребление СВ,кг
                double sumSv = 0;
                string name;
                for (int i = 0; i < 4; i++)
                {
                    name   = ration.Rations[i].Name.Trim();
                    sumSv += (ration.Rations[i].Value) * (db.FNutritionalCharacteristics.Include("Korm")
                                                          .Where(k => k.Korm.Name_korm == name)
                                                          .Where(f => f.Id_index == 3).FirstOrDefault() ?? new FNutritionalCharacteristic())
                             .FValue;
                }
                name   = ration.Rations[5].Name.Trim();
                MilkSv = sumSv + ((ration.Rations[5].Value) * (db.FNutritionalCharacteristics.Include("Korm")
                                                               .Where(k => k.Korm.Name_korm == name)
                                                               .Where(f => f.Id_index == 3).FirstOrDefault() ?? new FNutritionalCharacteristic())
                                  .FValue);
                ////////////////////

                //Клетчатка в СВ
                double sumK1 = 0;
                double sumK2 = 0;
                foreach (var item in ration.Rations)
                {
                    sumK1 += item.Value * (db.FNutritionalCharacteristics.Include("Korm")
                                           .Where(k => k.Korm.Name_korm == item.Name)
                                           .Where(f => f.Id_index == 3).FirstOrDefault() ?? new FNutritionalCharacteristic())
                             .FValue;

                    sumK2 += item.Value * (db.FNutritionalCharacteristics.Include("Korm")
                                           .Where(k => k.Korm.Name_korm == item.Name)
                                           .Where(f => f.Id_index == 6).FirstOrDefault() ?? new FNutritionalCharacteristic())
                             .FValue;
                }
                MilkCellulose = (sumK1 * 100) / (sumK2 * 1000);
                //////////////////


                //Ca:P
                double sumCa1 = 0;
                double sumCa2 = 0;
                foreach (var item in ration.Rations)
                {
                    sumCa1 += item.Value * (db.NNutritionalCharacteristics.Include("Korm")
                                            .Where(k => k.Korm.Name_korm == item.Name)
                                            .Where(f => f.Id_index == 9).FirstOrDefault() ?? new NNutritionalCharacteristic())
                              .NValue;

                    sumCa2 += item.Value * (db.NNutritionalCharacteristics.Include("Korm")
                                            .Where(k => k.Korm.Name_korm == item.Name)
                                            .Where(f => f.Id_index == 10).FirstOrDefault() ?? new NNutritionalCharacteristic())
                              .NValue;
                }
                MilkCa = sumCa1 / sumCa2;
                /////////////////



                //Влажность кормосмеси
                double sumHumidity = 0;
                foreach (var item in ration.Rations)
                {
                    sumHumidity += item.Value * (db.FNutritionalCharacteristics.Include("Korm")
                                                 .Where(k => k.Korm.Name_korm == item.Name)
                                                 .Where(f => f.Id_index == 3).FirstOrDefault() ?? new FNutritionalCharacteristic())
                                   .FValue;
                }
                //////////////////
                Humidity = 100 - (sumHumidity / ration.Rations.Sum(r => r.Value)) * 100;
            }
        }