示例#1
0
        public PlcConnectionNode(ProjectViewModel project, PlcViewModel plc)
        {
            _project = project;
            Plc      = plc;

            DeleteCommand = ReactiveCommand.Create(() => { project.Plcs.Remove(plc); });
        }
示例#2
0
        private GroupViewModel MapFromStorage(PlcViewModel plc, Group group)
        {
            var vm = _groupViewModelFactory.Invoke(plc, group.Name);

            vm.SubGroups.AddRange(group.SubGroups.Select(g => MapFromStorage(plc, g)));
            vm.Variables.AddRange(group.Variables.Select(v => MapFromStorage(plc.Plc, v)));

            return(vm);
        }
        // Function called from View for each Plc
        public async Task <IViewComponentResult> InvokeAsync(string numePlc)
        {
            PlcViewModel plcViewModel = GetPlcViewModelByName(numePlc); // Plc View Model by Plc name

            ViewData["Nume"]         = numePlc;
            ViewData["chartId"]      = "chartId" + numePlc;
            ViewData["chartData"]    = JsonConvert.SerializeObject(plcViewModel.ChartDefectsInPercent); // Serialize ChartData to pass it in JS variable
            ViewData["btnShowChart"] = "btn" + numePlc;
            return(View("Default", plcViewModel));                                                      // Pass Plc View model to view
        }