private void UserLogin(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { ResponseInfo response = new ResponseInfo(); try { //获取js传入的参数,需对应到参数类型 if (e.Arguments.Length > 0) { if (e.Arguments[0].StringValue == "test" && e.Arguments[1].StringValue == "123") { UserInfo user = new UserInfo(); user.userName = "******"; user.token = "JWT.token"; response.success = true; response.data = JsonConvert.SerializeObject(user); e.SetReturnValue(JsonConvert.SerializeObject(response));//返回数据 } else { response.success = false; response.errMsg = "用户名或密码错误!"; e.SetReturnValue(JsonConvert.SerializeObject(response)); } } } catch (Exception ex) { response.success = false; response.errMsg = ex.Message; e.SetReturnValue(JsonConvert.SerializeObject(response)); } }
private void OpenFile(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { //打开文档的逻辑与保存文档的逻辑相似,这里就不再阐述 var contents = e.Arguments.FirstOrDefault(p => p.IsString); string result = null; if (contents != null) { result = MainFrame.OpenFile(contents.StringValue); } if (!string.IsNullOrEmpty(result)) { e.SetReturnValue(this.GetCfrObject(new { success = true, fileName = MainFrame.CurrentFile.Name, contents = result })); } else { e.SetReturnValue(this.GetCfrObject(new { success = false })); } }
/// <summary> /// 保存文档 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void SaveFile(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { //从JS环境拿到第一个类型为String的参数,因为这个就是我们的文档 var contents = e.Arguments.FirstOrDefault(p => p.IsString); var result = false; if (contents != null) { //调用主窗体的SaveFile方法来保存文档 result = MainFrame.SaveFile(contents.StringValue); } if (result) { //如果保存成功就返回success状态,并返回保存文档的名称 e.SetReturnValue(this.GetCfrObject(new { success = true, fileName = MainFrame.CurrentFile.Name })); } else { //如果保存失败就返回保存失败的状态 e.SetReturnValue(this.GetCfrObject(new { success = false })); } }
private void JsCodeEditorObject_ExecuteOpen(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { var result = parentForm.OpenFile(); if (result != null) { e.SetReturnValue(CfrV8Value.CreateString(result)); } else { e.SetReturnValue(CfrV8Value.CreateNull()); } }
private void LoadLocalData(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { try { if (e.Arguments.Length > 0) { var id = e.Arguments[0].ToString(); var rule = CurrentRuleList[id]; var proc = rule.Tmp.GetProc; var dbContext = DataBaseManager.BuildContext(); var sql = ""; if (!string.IsNullOrEmpty(proc)) { Dictionary <string, object> dict = new Dictionary <string, object>(); dict.Add("UserID", ""); //dict.Add("UserName", ""); dict.Add("YWID", rule.ID); //dict.Add("DWBH", rule.DWBH); var res = new List <IDictionary <string, object> >(); if (dbContext.DBType == "MSS") { res = ProcHelper.GetProcDataSQL(dict, proc, dbContext.Conn); } else { res = ProcHelper.GetProcDataOracle(dict, proc, dbContext.Conn); } e.SetReturnValue(JSON.SerializeObject(res)); } else if (!string.IsNullOrEmpty(sql)) { var conn = dbContext.Conn; var res = conn.Query(sql); e.SetReturnValue(JSON.SerializeObject(res)); } else { throw new Exception("未定义本地取数数据源!"); } } } catch (Exception ex) { ExecScript("Msg.alert('" + ex.Message + "')"); } //Task.Factory.StartNew(ProcessExcelData); }
private void LoadExcelDataNew(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { try { if (e.Arguments.Length > 0) { var id = e.Arguments[0].ToString(); List <Dictionary <string, object> > result = new List <Dictionary <string, object> >(); var is2007 = false; if (FileHashRel[id].ToLower().IndexOf("xlsx") != -1) { is2007 = true; } var stream = File.OpenRead(FileHashRel[id]); NPOIData svr = new NPOIData(); if (string.IsNullOrEmpty(CurrentRuleList[id].RefStart)) { CurrentRuleList[id].RefStart = "1"; } var list = svr.getSheetInfo(stream, is2007, CurrentRuleList[id].RefStart, ""); e.SetReturnValue(JSON.SerializeObject(list)); } } catch (Exception ex) { ExecScript("alert('" + ex.Message + "')"); } //Task.Factory.StartNew(ProcessExcelData); }
private void GetHelpInfo(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { if (e.Arguments.Length > 0) { var HelpID = e.Arguments[0].ToString(); e.SetReturnValue(JSON.SerializeObject(service.GetHelpInfo(HelpID))); } }
private void NewFile(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { //新建文档的逻辑与保存文档的逻辑相似,这里就不再阐述 var contents = e.Arguments.FirstOrDefault(p => p.IsString); var result = false; result = MainFrame.NewFile(contents.StringValue); e.SetReturnValue(CfrV8Value.CreateBool(result)); }
private void LoadConfig(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { if (e.Arguments.Length > 0) { var dwbh = e.Arguments[0].ToString(); var lbid = e.Arguments[1].ToString(); CurrentRule = rservice.GetRuleInfo(dwbh, lbid); e.SetReturnValue(JSON.SerializeObject(CurrentRule)); } }
private static void Host_PostConfirmInfoCount(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { try { int count = ConfirmManager.GetCount(); e.SetReturnValue(count); } catch (Exception ex) { Log4Helper.ErrorInfo(ex.Message, ex); ViewCallFunction.ViewAlert(ex.Message); } }
private void GetSettings(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { var model = new Model.DBSettings { DataScource = ConfigurationManager.AppSettings["DataScource"].ToString(), DbType = ConfigurationManager.AppSettings["DbType"].ToString(), Catalog = ConfigurationManager.AppSettings["Catalog"].ToString(), UserId = ConfigurationManager.AppSettings["UserId"].ToString(), Password = ConfigurationManager.AppSettings["Password"].ToString(), }; e.SetReturnValue(JSON.SerializeObject(model)); }
private static void Host_PostDrives(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { try { DriveInfo[] drives = DriveInfo.GetDrives(); string json = Utility.JsonSerializerByArrayData(drives); e.SetReturnValue(json); } catch (Exception ex) { Log4Helper.ErrorInfo(ex.Message, ex); ViewCallFunction.ViewAlert(ex.Message); } }
private static void Host_PostConfirmInfos(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { try { int page = e.Arguments[0].IntValue; List <DeviceInfo> infos = ConfirmManager.GetInfos(page - 1, DefaultParams.PAGE_ROW_COUNT); string json = Utility.JsonSerializerByArrayData(infos.ToArray()); e.SetReturnValue(json); } catch (Exception ex) { Log4Helper.ErrorInfo(ex.Message, ex); ViewCallFunction.ViewAlert(ex.Message); } }
private static void Host_PostConfirmInfo(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { try { int index = e.Arguments[0].IntValue; DeviceInfo info = ConfirmManager.ConfirmInfos[index]; string json = Utility.JsonSerializerBySingleData(info); e.SetReturnValue(json); } catch (Exception ex) { Log4Helper.ErrorInfo(ex.Message, ex); ViewCallFunction.ViewAlert(ex.Message); } }
private static void Host_PostHostNumber(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { try { int maxId = ConfirmManager.GetMaxId(); var hostnumber = (maxId + 1) % 128; if (hostnumber == 0) { hostnumber = 1; } e.SetReturnValue(hostnumber); } catch (Exception ex) { Log4Helper.ErrorInfo(ex.Message, ex); ViewCallFunction.ViewAlert(ex.Message); } }
/// <summary> /// 获取帮助数据 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void GetHelpData(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { try { if (e.Arguments.Length > 0) { var helpID = e.Arguments[0].ToString(); var filter = e.Arguments[1].ToString(); var order = e.Arguments[2].ToString(); var page = int.Parse(e.Arguments[3].ToString()); var pageSize = int.Parse(e.Arguments[4].ToString()); e.SetReturnValue(JSON.SerializeObject(service.GetDataList(helpID, filter, order, page, pageSize))); } } catch (Exception ex) { parentForm.ExecuteJavascript("ImportController.msg('" + ex.Message + "');"); } }
private void JsCodeEditorObject_ExecuteSave(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { var result = parentForm.SaveFile(); e.SetReturnValue(CfrV8Value.CreateBool(result)); }
private void FormV8Handler_Execute(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { switch (e.Name) { case "Minimize": { HostForm.RequireUIThread(() => { if (HostForm.WindowState == FormWindowState.Minimized) { HostForm.WindowState = FormWindowState.Normal; } else { HostForm.WindowState = FormWindowState.Minimized; } }); } break; case "Maximize": { HostForm.RequireUIThread(() => { if (HostForm.WindowState == FormWindowState.Maximized) { HostForm.WindowState = FormWindowState.Normal; } else { HostForm.WindowState = FormWindowState.Maximized; } }); } break; case "Restore": { HostForm.RequireUIThread(() => { HostForm.WindowState = FormWindowState.Normal; }); } break; case "Close": { if (HostForm != null && !HostForm.IsDisposed) { HostForm.RequireUIThread(() => { HostForm.Close(); }); } } break; case "GetWinActivated": { if (HostForm != null && !HostForm.IsDisposed) { e.SetReturnValue(CfrV8Value.CreateBool(Form.ActiveForm == HostForm)); } } break; case "GetWinState": { if (HostForm != null && !HostForm.IsDisposed) { var obj = CfrV8Value.CreateObject(new CfrV8Accessor()); var stateString = "normal"; var currentState = 0; if (HostForm.WindowState == FormWindowState.Maximized) { currentState = 2; stateString = "maximized"; } else if (HostForm.WindowState == FormWindowState.Minimized) { currentState = 1; stateString = "minimized"; } obj.SetValue("state", CfrV8Value.CreateInt(currentState), Chromium.CfxV8PropertyAttribute.ReadOnly | Chromium.CfxV8PropertyAttribute.DontDelete); obj.SetValue("stateName", CfrV8Value.CreateString(stateString), Chromium.CfxV8PropertyAttribute.ReadOnly | Chromium.CfxV8PropertyAttribute.DontDelete); obj.SetValue("width", CfrV8Value.CreateInt(HostForm.ClientSize.Width), Chromium.CfxV8PropertyAttribute.ReadOnly | Chromium.CfxV8PropertyAttribute.DontDelete); obj.SetValue("height", CfrV8Value.CreateInt(HostForm.ClientSize.Height), Chromium.CfxV8PropertyAttribute.ReadOnly | Chromium.CfxV8PropertyAttribute.DontDelete); e.SetReturnValue(obj); } } break; } }
void AnotherTestFunction_Execute(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { form.LogWriteLine("AnotherTestFunction_Execute({0}, {1})", sender, e); e.SetReturnValue("The other test function returns this text."); }
private void TestConnection(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { e.SetReturnValue(true); }
/// <summary> /// 加载配置 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void loadconfig(object sender, Chromium.Remote.Event.CfrV8HandlerExecuteEventArgs e) { e.SetReturnValue(Newtonsoft.Json.JsonConvert.SerializeObject(getHisList())); }