public ProducerMonitorViewModel() : base("生产者数据监控")
 {
     ContentId = ToolContentId;
     MessageSubscribeRelations.AddSubscribe(MessageType.All, new Relation()
     {
         CanUninstall     = false,
         IsActive         = true,
         IsKeep           = true,
         RelationDescribe = "数据监视器WSDE类消息监听",
         RelationGuid     = GuidWSDEDataComeEvent,
         RelationAction   = messageData =>
         {
             base.BindingPropInOtherTask(() =>
             {
                 JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                 //var response = javaScriptSerializer.Deserialize<WSDESubVoterSelectRequest>(messageData.MessageData);
                 if (DataList.Count() > _maxKeep)
                 {
                     for (int i = 0; i < DataList.Count() - _maxKeep; i++)
                     {
                         DataList.RemoveAt(0);
                     }
                 }
                 DataList.Add(messageData);
             });
         },
     });
 }
Example #2
0
        public TecheartHostViewModel() : base("投票器主机状态监视窗口")
        {
            ContentId = ToolContentId;
            WsdeUsbManager manager = new WsdeUsbManager();

            manager.OnWsdeUsbComed  += new WsdeUsbManager.OnWsdeUsbHandler(OnWsdeUsbComed);
            manager.OnWsdeUsbExited += new WsdeUsbManager.OnWsdeUsbHandler(OnWsdeUsbExitHandler);
            MessageSubscribeRelations.AddSubscribe(MessageType.DownloadAnswerToWSDEHost, new Relation()
            {
                IsKeep           = true,
                IsActive         = true,
                CanUninstall     = true,
                RelationDescribe = "投票器主机下载答案监听",
                RelationGuid     = GuidDownloadAnswer,
                RelationAction   = (messagedata) =>
                {
                    lock (objLockDataCome)
                    {
                        JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                        var response = javaScriptSerializer.Deserialize <WSDEDownloadAnswerRequest>(messagedata.MessageData);
                        if (response.answerRequests != null)
                        {
                            response.answerRequests.ToList().ForEach(k => { post.subAnswerDic.SetAnswer(k.ProblemId, k.ProblemAnswer); });
                            post.PushAnswer();
                        }
                    }
                }
            });
        }
 public RelationListViewModel() : base("关系维护列表")
 {
     ContentId = ToolContentId;
     MessageSubscribeRelations.AddSubscribe(MessageType.RelationChangeEvent, new Relation()
     {
         CanUninstall     = false,
         IsActive         = true,
         RelationDescribe = "关系维护列表监听",
         RelationGuid     = GuidRelationChange,
         IsKeep           = true,
         RelationAction   = (messagedata) =>
         {
             base.BindingPropInOtherTask(() =>
             {
                 DynamicrelationList.Clear();
                 JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                 var relations = MessageSubscribeRelations.GetAllCurrentRelation();
                 foreach (var v in relations)
                 {
                     v.Relations.ToList().ForEach(k =>
                     {
                         DynamicrelationList.Add(k);
                     });
                 }
             });
         }
     });
 }
Example #4
0
        private void init()
        {
            MessageSubscribeRelations.AddSubscribe(MessageType.WSDEDataEvent, new Relation()
            {
                CanUninstall     = true,
                IsActive         = true,
                IsKeep           = false,
                RelationDescribe = Title,
                RelationGuid     = this.StrGuid,
                RelationAction   = messageData =>
                {
                    base.BindingPropInOtherTask(() =>
                    {
                        JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                        var response = javaScriptSerializer.Deserialize <WSDESubVoterSelectRequest>(messageData.MessageData);
                        if (!Start)
                        {
                            StudentLogin(response);
                            return;
                        }
                        StudentLogin(response);
                        if (String.IsNullOrWhiteSpace(response.SubVoterResult) || response.SubVoterResult.Equals("login"))
                        {
                            return;
                        }
                        if (!StudentList.Any(k => k.StudentNumber == response.SubVoterNumber) && RefuseOutOfStudentList)
                        {
                            return;
                        }
                        response.SubVoterResult = response.SubVoterResult.Replace(".", "");
                        response.SubVoterResult = StringUtils.RemoveDuplicateCharacters(response.SubVoterResult);
                        var number = System.Convert.ToInt32(response.SubVoterSelectNumber);
                        examination.Add(response.SubVoterNumber, number, response.SubVoterResult);
                        if (QuestionList.Any(k => k.QuestionNumber == response.SubVoterSelectNumber))
                        {
                            QuestionList.First(k => k.QuestionNumber == response.SubVoterSelectNumber).Set(examination.ExaminationQuestions.First(k => k.QuestionNumber == number));
                        }
                        if (!StudentList.Any(k => k.StudentNumber == response.SubVoterNumber) && examination.Voters != null && examination.Voters.Count() > 0)
                        {
                            StudentVM studentNM = new StudentVM();
                            studentNM.Set(examination.Voters.First(k => k.VoterId == response.SubVoterNumber));
                            StudentList.Add(studentNM);
                        }
                        if (examination.Voters != null && examination.Voters.Count() > 0)
                        {
                            StudentList.First(k => k.StudentNumber == response.SubVoterNumber).Set(examination.Voters.First(k => k.VoterId == response.SubVoterNumber));
                        }

                        base.ViewChange();
                    });
                },
            });
        }
Example #5
0
 public LoginViewModel() : base("登陆")
 {
     ContentId = ToolContentId;
     MessageSubscribeRelations.AddSubscribe(MessageType.RelationChangeEvent, new Relation()
     {
         CanUninstall     = false,
         IsActive         = true,
         RelationDescribe = "关系维护列表监听",
         RelationGuid     = GuidRelationChange,
         IsKeep           = true,
         RelationAction   = (messagedata) =>
         {
             base.BindingPropInOtherTask(() =>
             {
             });
         }
     });
 }
Example #6
0
 protected Workspace()
 {
     _files = new ObservableCollection <TemplateBaseViewModel>();
     MessageSubscribeRelations.AddSubscribe(MessageType.CloseTempleteEvemt, new Relation()
     {
         CanUninstall     = false,
         IsActive         = true,
         IsKeep           = true,
         RelationDescribe = "监听模板类窗口关闭事件",
         RelationGuid     = Guid.NewGuid().ToString(),
         RelationAction   = messageData =>
         {
             base.BindingPropInOtherTask(() =>
             {
                 JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                 var response = javaScriptSerializer.Deserialize <CloseTempleteRequest>(messageData.MessageData);
                 Close(response.TempleteGuid);
             });
         },
     });
     plugInit = PluginTools.Init();
 }