protected InstallationTask(InstallationModel model, ISession session, IFileSystem fileSystem)
 {
     this.InstallationModel = model;
     this.Session           = session;
     this.FileSystem        = fileSystem;
     this.Args = new string[] { };
 }
        protected void Page_Load(object sender, EventArgs e)
        {
            IUnityContainer           container = new UnityContainer();
            UnityConfigurationSection section   = (UnityConfigurationSection)ConfigurationManager.GetSection("unity");

            section.Configure(container);
            if (Request["installation"] != null)
            {
                int installationid = Int32.Parse(Request["installation"]);
                userid   = Int32.Parse(Request["userid"]);
                user     = Request["user"];
                sservice = container.Resolve <IStatisticService>();
                IInstallationBL iinstall = container.Resolve <IInstallationBL>();
                imodel = iinstall.getInstallation(installationid);
                Dictionary <InstallationModel, List <InstallationState> > statelist = sservice.getInstallationState(imodel.customerid);
                StringBuilder str = new StringBuilder();
                str.Append("<table border = '1'><tr><th>Description</th><th>Messwert</th><th>Einheit</th></tr>");
                foreach (var values in statelist)
                {
                    if (values.Key.installationid.Equals(installationid))
                    {
                        foreach (var item in values.Value)
                        {
                            str.Append("<tr><td>" + item.description + "</td><td>" + item.lastValue + "</td><td>" + item.unit + "</td></tr>");
                        }
                        break;
                    }
                }
                str.Append("</table>");
                anlagenzustand.InnerHtml = str.ToString();
            }
        }
Example #3
0
        public void createInstallation(InstallationModel installation)
        {
            try
            {
                ValidationResults vresult = Validation.ValidateFromAttributes <InstallationModel>(installation);

                if (vresult.IsValid)
                {
                    irepo.Add(installation);
                    irepo.Save();
                    log.Info("Installation saved.");
                }
                else
                {
                    log.Warn(vresult.Count + "Validation errors");
                    StringBuilder sb = null;
                    foreach (var error in vresult)
                    {
                        sb = new StringBuilder();
                        sb.Append("Error on property ");
                        sb.Append(error.Target);
                        sb.Append(": ");
                        sb.Append(error.Message);
                    }
                    log.Warn(sb);
                }
            }
            catch (DalException exp)
            {
                log.Error("Installation konnte nicht gespeichert werden.");
                throw new BLException("Installation konnte nicht gespeichert werden.", exp);
            }
        }
        public static Installation ConverttoEntity(InstallationModel ininstallation)
        {
            Installation installation = null;

            try
            {
                CustomerRepository    crepo = new CustomerRepository();
                MeasurementRepository mrepo = new MeasurementRepository();
                installation                = new Installation();
                installation.customerid     = ininstallation.customerid;
                installation.installationid = ininstallation.installationid;
                installation.latitude       = ininstallation.latitude;
                installation.longitude      = ininstallation.longitude;
                installation.description    = ininstallation.description;
                installation.serialno       = ininstallation.serialno;
                //installation.Customer = ConvertCustomer.ConverttoEntity(crepo.GetById(installation.customerid));
                foreach (var item in ininstallation.Measurement)
                {
                    installation.Measurement.Add(ConvertMeasurement.ConverttoEntity(mrepo.GetById(item)));
                }
                log.Info("InstallationModel wurde konvertiert.");
            }
            catch (Exception exp)
            {
                log.Error("InstallationModel konnte nicht konvertiert werden.");
                throw new DalException("InstallationModel konnte nicht konvertiert werden.", exp);
            }
            return(installation);
        }
Example #5
0
        public async Task <InstallationModel> GetInstallationBySocietyId(string societyId)
        {
            InstallationModel installation = new InstallationModel();

            if (isMockEnabled)
            {
                string json          = System.IO.File.ReadAllText(pathFileMockup);
                var    installations = JsonConvert.DeserializeObject <CollectionInstallation>(json).Installations;
                installation = installations.FirstOrDefault(s => s.SocietyId == societyId);
            }
            else
            {
                try
                {
                    var collection = _mongoDBContex.GetCollection <InstallationModel>(collectionName);
                    IAsyncCursor <InstallationModel> task = await collection.FindAsync(x => x.SocietyId == societyId);

                    installation = await task.FirstOrDefaultAsync();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }

            return(installation);
        }
        public static InstallationModel ConvertfromEntity(Installation ininstallation)
        {
            InstallationModel installation = null;

            try
            {
                installation                = new InstallationModel();
                installation.customerid     = ininstallation.customerid;
                installation.installationid = ininstallation.installationid;
                installation.latitude       = ininstallation.latitude;
                installation.longitude      = ininstallation.longitude;
                installation.description    = ininstallation.description;
                installation.serialno       = ininstallation.serialno;
                foreach (var item in ininstallation.Measurement)
                {
                    installation.Measurement.Add(item.measid);
                }
                log.Info("Installation wurde konvertiert.");
            }
            catch (Exception exp)
            {
                log.Error("Installation konnte nicht konvertiert werden.");
                throw new DalException("Installation konnte nicht konvertiert werden.", exp);
            }
            return(installation);
        }
        public async Task <IRestResponse> SaveInstallation(InstallationModel installation)
        {
            installation.Strucutres = SetValuesByExcel();

            var response = await _system.InvokeMiddlewareAsync("/Installation", "/SaveInstallation", installation, _system.Headers, Method.POST);

            return(response);
        }
Example #8
0
        public async Task <InstallationModel> SaveInstallation(InstallationModel installation)
        {
            if (isMockEnabled)
            {
                string json = System.IO.File.ReadAllText(pathFileMockup);
                List <InstallationModel> installations = JsonConvert.DeserializeObject <CollectionInstallation>(json).Installations;
                var installationFound = await GetInstallationBySocietyId(installation.SocietyId);

                if (installationFound == null)
                {
                    installation.Id = ObjectId.GenerateNewId().ToString();
                    FillIdInListStrcture(installation);
                    installations.Add(installation);
                }
                else if (installation.SocietyId == installationFound.SocietyId)
                {
                    installations.Remove(installationFound);
                    installation.Id = installationFound.Id;
                    installations.Add(installation);
                }

                CollectionInstallation collection = new CollectionInstallation();
                collection.Installations = installations;
                string jsonUpdate = JsonConvert.SerializeObject(collection);
                //write string to file
                System.IO.File.WriteAllText(pathFileMockup, jsonUpdate);
            }
            else
            {
                try
                {
                    var collection        = _mongoDBContex.GetCollection <InstallationModel>(collectionName);
                    var installationFound = await GetInstallationBySocietyId(installation.SocietyId);

                    if (installationFound == null)
                    {
                        installation.Id = ObjectId.GenerateNewId().ToString();
                        FillIdInListStrcture(installation);

                        await collection.InsertOneAsync(installation);
                    }
                    else if (installation.SocietyId == installationFound.SocietyId)
                    {
                        installation.Id = installationFound.Id;
                        var optionsAndReplace = new FindOneAndReplaceOptions <InstallationModel>
                        {
                            ReturnDocument = ReturnDocument.After
                        };
                        var up = await collection.FindOneAndReplaceAsync <InstallationModel>(u => u.SocietyId == installation.SocietyId, installation, optionsAndReplace);
                    }
                }
                catch (Exception ex)
                {
                }
            }

            return(installation);
        }
        public async Task <IActionResult> SaveValues([FromBody] object values, string SocietyName)
        {
            var             json            = values.ToString();
            StrcutureSystem strcutureValues = JsonConvert.DeserializeObject <StrcutureSystem>(json);

            if (strcutureValues == null)
            {
                throw new Exception($"Values is missing");
            }

            if (string.IsNullOrEmpty(SocietyName))
            {
                throw new Exception($"Society Name is missing");
            }

            SocietyModel society = await _societyServiceData.GetSocietyByName(SocietyName);

            if (society == null)
            {
                throw new Exception($"Society NOT FOUND!!");
            }

            InstallationModel installation = await _installationServiceData.GetInstallationBySocietyId(society.Id);

            if (installation == null)
            {
                //Add
                installation = new InstallationModel {
                    SocietyId = society.Id, Strucutres = strcutureValues
                };
            }
            else
            {
                // update
                installation.Strucutres = UpdateStructure(installation.Strucutres, strcutureValues);
            }

            ResponseContent messageResponse = new ResponseContent()
            {
                Message = "Error saving the company"
            };
            IActionResult response = BadRequest(messageResponse);

            var message = await _installationServiceData.SaveInstallation(installation);

            if (message != null)
            {
                var dic = new Dictionary <string, string>();
                dic.Add("installation", JsonConvert.SerializeObject(values));

                messageResponse = new ResponseContent("Save completed", dic);
                response        = Ok(messageResponse);
            }

            return(response);
        }
Example #10
0
        public ActionResult Index()
        {
            var model = new InstallationModel
            {
                AdminEmail      = "*****@*****.**",
                DefaultLanguage = "en-US"
            };

            return(View(model));
        }
Example #11
0
        public ActionResult PostInstall(InstallationModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            InstallationHelper.Install <ApplicationDbContext>(model);

            return(RedirectToAction("Index", "Home"));
        }
        public IActionResult Index()
        {
            var model = new InstallationModel
            {
                AdminEmail = _installService.GetResource("AdminEmailValue")
            };

            var curLanguage = _installService.GetCurrentLanguage();

            var installLanguages = _installService.GetInstallationLanguages()
                                   .Select(x =>
            {
                return(new SelectListItem
                {
                    Value = Url.Action("ChangeLanguage", "Install", new { language = x.Code }),
                    Text = x.Name,
                    Selected = curLanguage.Code == x.Code
                });
            })
                                   .ToList();

            var appLanguages = _installService.GetAppLanguages()
                               .Select(x =>
            {
                return(new SelectListItem
                {
                    Value = x.Culture,
                    Text = x.Name,
                    Selected = x.UniqueSeoCode.EqualsNoCase(curLanguage.Code)
                });
            })
                               .ToList();

            if (!appLanguages.Any(x => x.Selected))
            {
                appLanguages.FirstOrDefault(x => x.Value.EqualsNoCase("en")).Selected = true;
            }

            ViewBag.AvailableInstallationLanguages = installLanguages;
            ViewBag.AvailableAppLanguages          = appLanguages;

            ViewBag.AvailableMediaStorages = new[]
            {
                new SelectListItem {
                    Value = "fs", Text = _installService.GetResource("MediaStorage.FS"), Selected = true
                },
                new SelectListItem {
                    Value = "db", Text = _installService.GetResource("MediaStorage.DB")
                }
            };

            return(View(model));
        }
Example #13
0
        private string AssertParser <T>(InstallationModel model, string key, T value, Action <InstallationModel, T> assert)
        {
            var args   = new[] { $"{key.Split('.').Last()}={value}" };
            var models = model.Steps.Cast <IValidatableReactiveObject>().Concat(new[] { model }).ToList();
            var viewModelArgumentParser = new ModelArgumentParser(models, args);

            assert(model, value);

            var msiParams = model.ToMsiParamsString();

            msiParams.Should().NotBeEmpty();
            return(msiParams);
        }
Example #14
0
        public List <InstallationState> getCurrentValues(InstallationModel installation)
        {
            List <InstallationState> ilist  = new List <InstallationState>();
            MeasurementModel         mmodel = measurements.Last();
            InstallationState        istate = new InstallationState();

            istate.currentTime = mmodel.timestamp;
            istate.description = "Sonde";
            istate.lastValue   = Double.Parse(mmodel.measurevalue.ToString());
            istate.unit        = "Celsius";
            ilist.Add(istate);
            return(ilist);
        }
        public async Task <JsonResult> Install(InstallationModel model)
        {
            if (!ModelState.IsValid)
            {
                var result = new InstallationResult();
                ModelState.SelectMany(x => x.Value.Errors).Each(x => result.Errors.Add(x.ErrorMessage));
                return(Json(result));
            }
            else
            {
                var result = await _installService.InstallAsync(model, HttpContext.RequestServices.AsLifetimeScope());

                return(Json(result));
            }
        }
Example #16
0
        /// <summary>
        /// Creates the setup wizard and runs the application thread.
        /// </summary>
        private void Run()
        {
            this._app = new Application();
            RxApp.MainThreadScheduler    = new DispatcherScheduler(_app.Dispatcher);
            Application.ResourceAssembly = typeof(MainWindow).Assembly;

            string version;

            this._session.TryGetValue("CurrentVersion", out version);

            var model = InstallationModel.Create(new WixStateProvider(version), new SessionWrapper(_session));

            this._mainWindow = new MainWindow(model, this._installStartEvent);
            this._app.Run(this._mainWindow);
            this._installExitEvent.Set();
        }
Example #17
0
        public void OnUninstalling(ControllerContext controllerContext)
        {
            var installationModel = new InstallationModel();

            if (Kooboo.CMS.Sites.Extension.ModelBindHelper.BindModel(installationModel, controllerContext))
            {
                try
                {
                    _dbInitializer.DeleteDb(installationModel.ConnectionString);
                }
                catch (Exception e)
                {
                    controllerContext.Controller.ViewData.ModelState.AddModelError("ConnectionString", e);
                }
            }
        }
Example #18
0
        public async Task <OperationResult> Update(InstallationModel updateModel)
        {
            var installation =
                await _dbContext.Installations.SingleOrDefaultAsync(x => x.Id == updateModel.Id);

            if (installation != null)
            {
                installation.Name = updateModel.Name;
                await installation.Update(_dbContext);

                var installationSites            = installation.InstallationSites;
                var toBeRemovedInstallationSites = installationSites;

                foreach (var deployedCheckbox in updateModel.DeployCheckboxes)
                {
                    var installationSite =
                        installationSites.SingleOrDefault(x => x.SDKSiteId == deployedCheckbox.Id);
                    if (installationSite == null)
                    {
                        installationSite = new InstallationSite
                        {
                            InstallationId = installation.Id,
                            SDKSiteId      = deployedCheckbox.Id
                        };
                        await installationSite.Create(_dbContext);
                    }
                    else
                    {
                        if (installationSite.WorkflowState == Constants.WorkflowStates.Removed)
                        {
                            installationSite.WorkflowState = Constants.WorkflowStates.Created;
                            await installationSite.Update(_dbContext);
                        }
                        toBeRemovedInstallationSites.Remove(installationSite);
                    }
                }

                foreach (var installationSite in toBeRemovedInstallationSites)
                {
                    await installationSite.Delete(_dbContext);
                }
                return(new OperationResult(true));
            }
            return(new OperationResult(false));
        }
Example #19
0
        public List <Statistic> getPerYear(InstallationModel installation, DateTime date)
        {
            List <Statistic> slist = new List <Statistic>();

            foreach (var item in measurements)
            {
                if (item.timestamp.Year.Equals(date.Year))
                {
                    Statistic stat = new Statistic();
                    stat.average     = Double.Parse(item.measurevalue.ToString());
                    stat.description = "Sonde";
                    stat.maxvalue    = 150;
                    stat.minvalue    = 66;
                    stat.unit        = "Fahrenheit";
                    slist.Add(stat);
                }
            }
            return(slist);
        }
 public JsonResult PrintedPdfStatusCheckCall()
 {
     _installationModel = new InstallationModel();
     try
     {
         string PdftoText = ReadText(utils.getAppSettingValue("Script:PrintedPdflog"));
         if (!string.IsNullOrEmpty(PdftoText))
         {
             _installationModel.Success     = true;
             _installationModel.Information = PdftoText;
         }
     }
     catch (Exception ex)
     {
         _installationModel.Success     = false;
         _installationModel.Information = ex.Message.ToString();
     }
     return(Json(_installationModel));
 }
        public JsonResult PrintedPDFtoText(string ImgURL, string ImageuniqueId)
        {
            _installationModel = new InstallationModel();
            try
            {
                if (_pdfUniqueId != ImageuniqueId)
                {
                    _pdfUniqueId = ImageuniqueId;
                    System.IO.File.WriteAllText(utils.getAppSettingValue("Script:PrintedPdflog"), "");

                    ExecutePythonScript(utils.getAppSettingValue("Script:PYPrintedPdfProcess"));
                }
            }
            catch (Exception ex)
            {
                _installationModel.UnhandleException = ex.Message.ToString();
            }
            return(Json(_installationModel));
        }
Example #22
0
        public void OnInstalling(ControllerContext controllerContext)
        {
            var installationModel = new InstallationModel();
            var connectString     = controllerContext.HttpContext.Request.Form["ConnectionString"];

            if (Kooboo.CMS.Sites.Extension.ModelBindHelper.BindModel(installationModel, controllerContext))
            {
                try
                {
                    _dbInitializer.InitializeDb(installationModel.ConnectionString);
                    ModuleInfo moduleInfo = ModuleInfo.Get(ModuleAreaRegistration.ModuleName);
                    moduleInfo.DefaultSettings.CustomSettings["ConnectionString"] = installationModel.ConnectionString;
                    ModuleInfo.Save(moduleInfo);
                }
                catch (Exception e)
                {
                    controllerContext.Controller.ViewData.ModelState.AddModelError("ConnectionString", e);
                }
            }
        }
 public JsonResult StatusCheck()
 {
     _installationModel = new InstallationModel();
     try
     {
         string ImagetoTest = ReadText(utils.getAppSettingValue("Script:Imagelog"));
         if (!string.IsNullOrEmpty(ImagetoTest))
         {
             _installationModel.Success     = true;
             _installationModel.Information = GetWordWrappedParagraph(ImagetoTest);
             //GetWordWrappedParagraph(ImagetoTest);
         }
     }
     catch (Exception ex)
     {
         _installationModel.Success     = false;
         _installationModel.Information = ex.Message.ToString();
     }
     return(Json(_installationModel));
 }
Example #24
0
        public void Application_Startup(object sender, StartupEventArgs e)
        {
            var wix   = new DemoWixStateProvider();
            var model = InstallationModel.Create(wix, new NoopSession());

            var window = new MainWindow(model, new ManualResetEvent(false));

            model.InstallUITask = async() =>
            {
                await Task.Delay(TimeSpan.FromSeconds(1));

                return(Observable.Return(ClosingResult.Failed));
            };
            model.AllSteps.Last().IsSelected = true;
            window.Show();

            RxApp.MainThreadScheduler = new DispatcherScheduler(Application.Current.Dispatcher);

            Application.Current.Resources["InstallerTitle"] = wix.CurrentVersion.ToString();
        }
        public List <Statistic> getPerYear(InstallationModel installation, DateTime date)
        {
            List <Statistic> slist = new List <Statistic>();

            try
            {
                DateTime datemin = date.AddYears(-1);
                DateTime datemax = date.AddYears(1);
                var      query   = (from meas in context.Measurement
                                    join mtype in context.Measurement_Type
                                    on meas.typeid equals mtype.typeid
                                    where meas.installationid == installation.installationid && meas.timestamp <datemax && meas.timestamp> datemin
                                    group mtype by new { meas.typeid, meas.measurevalue, mtype.unit, mtype.description } into hilf
                                    select new
                {
                    maxvalue = hilf.Max(m => hilf.Key.measurevalue),
                    minvalue = hilf.Min(m => hilf.Key.measurevalue),
                    averagevalue = hilf.Average(m => hilf.Key.measurevalue),
                    unit = hilf.Key.unit,
                    description = hilf.Key.description
                });

                foreach (var item in query)
                {
                    Statistic tmp = new Statistic();
                    tmp.average     = Double.Parse(item.averagevalue.ToString());
                    tmp.description = item.description;
                    tmp.maxvalue    = Double.Parse(item.maxvalue.ToString());
                    tmp.minvalue    = Double.Parse(item.minvalue.ToString());
                    tmp.unit        = item.unit;
                    slist.Add(tmp);
                }
                log.Info("StatisticPerYear für Installation " + installation.installationid + " wurde erstellt");
            }
            catch (Exception exp)
            {
                log.Error("ValuesPerYear konnten nicht geladen werden.");
                throw new DalException("ValuesPerYear konnten nicht geladen werden.", exp);
            }
            return(slist);
        }
        public void TestcreateInstallation()
        {
            Init();
            EngineerBL ebl = new EngineerBL(mockcrepo, mockerepo, mockirepo);

            InstallationModel myinstallation = new InstallationModel
            {
                installationid = 1,
                customerid     = 0,
                description    = "testinstallation",
                serialno       = "testser",
                latitude       = 33,
                longitude      = 44,
                Measurement    = new List <int> {
                    0
                }
            };

            ebl.createInstallation(myinstallation);
            Assert.AreEqual(2, mockirepo.GetAll().Count);
        }
Example #27
0
        public async Task <OperationResult> Create(InstallationModel createModel)
        {
            var installation = new Installation
            {
                Name = createModel.Name
            };
            await installation.Create(_dbContext);

            foreach (var deployedCheckbox in createModel.DeployCheckboxes)
            {
                if (deployedCheckbox.IsChecked)
                {
                    var installationSite = new InstallationSite
                    {
                        InstallationId = installation.Id,
                        SDKSiteId      = deployedCheckbox.Id
                    };
                    await installationSite.Create(_dbContext);
                }
            }
            return(new OperationResult(true));
        }
        public JsonResult ConvertImagetoTest(string ImgURL, string ImageuniqueId)
        {
            _installationModel = new InstallationModel();
            try
            {
                if (_handwrittenUniqueId != ImageuniqueId)
                {
                    _handwrittenUniqueId = ImageuniqueId;
                    System.IO.File.WriteAllText(utils.getAppSettingValue("Script:Imagelog"), "");

                    ExecutePythonScript(utils.getAppSettingValue("Script:PYImageProcess"), ImgURL);
                    //string ImagetoTest = ReadText(utils.getAppSettingValue("Script:Imagelog"));
                    //System.Diagnostics.Debug.WriteLine(ImagetoTest);
                    //_installationModel.Success = true;
                    //_installationModel.Information = ImagetoTest;
                }
            }
            catch (Exception ex)
            {
                _installationModel.UnhandleException = ex.Message.ToString();
            }
            return(Json(_installationModel));
        }
        public List <InstallationState> getCurrentValues(InstallationModel installation)
        {
            List <InstallationState> ilist = new List <InstallationState>();

            try
            {
                var query = (from meas in context.Measurement
                             join mtype in context.Measurement_Type
                             on meas.typeid equals mtype.typeid
                             where meas.installationid == installation.installationid
                             group mtype by new { meas.typeid, meas.measurevalue, mtype.unit, mtype.description, meas.timestamp } into hilf
                             where hilf.Key.timestamp == (from mesl in context.Measurement where mesl.typeid == hilf.Key.typeid select mesl.timestamp).Max()
                             select new
                {
                    lastValue = hilf.Key.measurevalue,
                    description = hilf.Key.description,
                    unit = hilf.Key.unit,
                    currentTime = hilf.Key.timestamp
                });

                foreach (var item in query)
                {
                    InstallationState istate = new InstallationState();
                    istate.currentTime = item.currentTime;
                    istate.description = item.description;
                    istate.lastValue   = Double.Parse(item.lastValue.ToString());
                    istate.unit        = item.unit;
                    ilist.Add(istate);
                }
            }
            catch (Exception exp)
            {
                log.Error("InstallationState für Installation " + installation.installationid + " wurde erstellt.");
                throw new DalException("InstallationState für Installation " + installation.installationid + " wurde erstellt.", exp);
            }
            return(ilist);
        }
Example #30
0
        private InstallationModel FillIdInListStrcture(InstallationModel installation)
        {
            for (var i = 0; i < installation.Strucutres.CogeneratorList.Count(); i++)
            {
                if (string.IsNullOrEmpty(installation.Strucutres.CogeneratorList[i].InstallationId))
                {
                    installation.Strucutres.CogeneratorList[i].InstallationId = installation.Id;
                }
            }

            for (var i = 0; i < installation.Strucutres.BoilerList.Count(); i++)
            {
                if (string.IsNullOrEmpty(installation.Strucutres.BoilerList[i].InstallationId))
                {
                    installation.Strucutres.BoilerList[i].InstallationId = installation.Id;
                }
            }

            for (var i = 0; i < installation.Strucutres.SensorList.Count(); i++)
            {
                if (string.IsNullOrEmpty(installation.Strucutres.SensorList[i].InstallationId))
                {
                    installation.Strucutres.SensorList[i].InstallationId = installation.Id;
                }
            }

            for (var i = 0; i < installation.Strucutres.HeatPumpList.Count(); i++)
            {
                if (string.IsNullOrEmpty(installation.Strucutres.HeatPumpList[i].InstallationId))
                {
                    installation.Strucutres.HeatPumpList[i].InstallationId = installation.Id;
                }
            }

            return(installation);
        }