private void GetBookingNumberExecute(object sender, CfrV8HandlerExecuteEventArgs e) { using (var context = new HotelContext()) { var startnumber = 1; var today = DateTime.Today; var result = "BOK" + today.ToString("yyyyMMdd"); var bookingToday = context .Bookings .Where(b => b.BookingAt >= today) .Where(b => b.Id.Contains(result)) .OrderByDescending(b => b.BookingAt) .FirstOrDefault(); if (bookingToday != null) { // Generate new var subNumber = bookingToday.Id.Substring(11, 5); startnumber = Convert.ToInt32(subNumber); startnumber++; } result = string.Format("{0}{1:00000}", result, startnumber); e.SetReturnValue(result); } }
private void CreateExecute(object sender, CfrV8HandlerExecuteEventArgs e) { try { var data = e.Arguments[0]; var username = data.GetValue("Username").StringValue; var fullname = data.GetValue("Fullname").StringValue; var password = data.GetValue("Password").StringValue; var level = data.GetValue("Level").IntValue; var is_active = data.GetValue("IsActive").BoolValue; var user = new User { Fullname = fullname, Username = username, IsActive = is_active, Level = Convert.ToByte(level) }; user.UpdatePassword(password); using (var context = new HotelContext()) { context.Users.Add(user); context.SaveChanges(); var convertVal = ConvertValue(user); e.SetReturnValue(convertVal); } } catch (Exception ex) { e.Exception = ex.Message; } }
private void GetUploadUrl(object sender, CfrV8HandlerExecuteEventArgs e) { var filename = e.Arguments[0].StringValue; var retUrl = baseUrl + filename; e.SetReturnValue(retUrl); }
private static void Host_PostTestPort(object sender, CfrV8HandlerExecuteEventArgs e) { try { if (SerialPortManager.Device2.SerialPortDevice.BaudRate != WinApi.B38400) { SerialPortManager.Device2.SerialPortDevice.SetBaudRate(WinApi.B38400); Thread.Sleep(10); } byte[] by = PortAgreement.TestPort(SerialPortManager.Device2Address); bool ret = SerialPortManager.WriteSerialPortData(SerialPortManager.Device2, by); if (ret) { ReceivedManager.SetReceivedFunction <TestPort>(); } e.SetReturnValue(ret); } catch (Exception ex) { SerialPortManager.Device2.SerialPortDevice.SetBaudRate(WinApi.B19200); Log4Helper.ErrorInfo(ex.Message, ex); ViewCallFunction.ViewAlert(ex.Message); } }
private void ResetPasswordExecute(object sender, CfrV8HandlerExecuteEventArgs e) { try { var userId = e.Arguments[0].IntValue; var newPassword = e.Arguments[1].StringValue; using (var context = new HotelContext()) { var user = context.Users.Find(userId); if (user != null) { user.UpdatePassword(newPassword); context.Entry(user).State = EntityState.Modified; context.SaveChanges(); e.SetReturnValue(true); } else { e.SetReturnValue(false); } } } catch (Exception ex) { e.Exception = ex.Message; } }
protected override void ExecuteInTargetProcess(RemoteConnection connection) { var sender = CfrV8Handler.Wrap(this.sender); var e = new CfrV8HandlerExecuteEventArgs(eventArgsId); sender.raise_Execute(sender, e); }
private void ResetExecute(object sender, CfrV8HandlerExecuteEventArgs e) { Settings.Default.Reset(); Settings.Default.Reload(); SettingHelper.Load(); e.SetReturnValue(true); }
private void CalcTransaction(object sender, CfrV8HandlerExecuteEventArgs e) { try { var normalize = e.Arguments[0]; var callback = e.Arguments[1]; if (!normalize.IsBool) { e.Exception = "Parameter 1 expected Boolean"; return; } var is_normalize = normalize.BoolValue; var th = new Thread(() => TransactionHelper.CalculateSubtotal(is_normalize)); th.Start(); th.Join(); ExecuteCallback(callback); } catch (Exception ex) { e.Exception = ex.Message; } }
private void QueryExecute(object sender, CfrV8HandlerExecuteEventArgs e) { try { var qryString = e.Arguments[0].StringValue; var paramObject = ParseParameter(e.Arguments[1]); var counter = 0; using (var connect = GetConnection()) { var reader = connect.Query(qryString, paramObject); var arrObj = CfrV8Value.CreateArray(reader.Count()); foreach (var obj in reader) { var exp_obj = ToExpandoObject(obj); arrObj.SetValue(counter, ConvertValue(exp_obj)); counter++; } e.SetReturnValue(arrObj); } } catch (Exception ex) { e.Exception = ex.Message; e.SetReturnValue(CfrV8Value.CreateUndefined()); } }
private void UpdateExecute(object sender, CfrV8HandlerExecuteEventArgs e) { try { var userId = e.Arguments[0].IntValue; var userData = e.Arguments[1]; var fullname = userData.GetValue("Fullname").StringValue; var level = userData.GetValue("Level").IntValue; var is_active = userData.GetValue("IsActive").BoolValue; using (var context = new HotelContext()) { var user = context.Users .Where(x => x.Id == userId) .Single(); user.Fullname = fullname; user.Level = Convert.ToByte(level); user.IsActive = is_active; context.Entry(user).State = EntityState.Modified; context.SaveChanges(); var convertVal = ConvertValue(user); e.SetReturnValue(convertVal); } } catch (Exception ex) { e.Exception = ex.Message; } }
private void ValidateExecute(object sender, CfrV8HandlerExecuteEventArgs e) { try { var username = e.Arguments[0].StringValue; var password = e.Arguments[1].StringValue; var hashPassword = AuthHelper.HashText(password, AppKey); using (var context = new HotelContext()) { var user = context.Users .Where(x => x.Username == username) .Where(x => x.Password == hashPassword) .Where(x => x.IsActive) .SingleOrDefault(); var convertuser = ConvertValue(user); e.SetReturnValue(convertuser); } } catch (Exception ex) { e.Exception = ex.Message; } }
private void GetCalendar(object sender, CfrV8HandlerExecuteEventArgs e) { using (var context = new HotelContext()) { var year = e.Arguments[0].IntValue; var date_start = new DateTime(year, 1, 1); var date_end = new DateTime(year + 1, 1, 1).AddDays(-1); EventInputObject lastInput = null; var listOut = new List <EventInputObject>(); var calendar = context.RoomCalendars .Include("Kind") .Where(c => c.DateAt >= date_start) .Where(c => c.DateAt <= date_end) .OrderBy(c => c.DateAt) .ToList(); foreach (var item in calendar) { if (lastInput != null) { var dateNext = lastInput.end; var dateDiff = item.DateAt - dateNext; var title = lastInput.title; if (title == item.Kind.KindName && dateDiff.TotalDays == 1) { lastInput.end = item.DateAt; continue; } } lastInput = new EventInputObject { start = item.DateAt, end = item.DateAt, title = item.Kind.KindName, color = "#" + item.Kind.KindColor, }; listOut.Add(lastInput); } foreach (var input in listOut) { var diff = input.end - input.start; if (diff.TotalDays > 0) { input.end = input.end.AddDays(1); } } var callbackArgs = CfrV8Value.CreateObject(new CfrV8Accessor()); var callback = e.Arguments[1]; callbackArgs.SetValue("list", ConvertValue(listOut.ToArray()), CfxV8PropertyAttribute.ReadOnly); callback.ExecuteFunction(null, new CfrV8Value[] { callbackArgs }); } }
private void TestExecute(object sender, CfrV8HandlerExecuteEventArgs e) { if (e.Arguments.Length != 6) { e.Exception = "6 parameters expected!"; return; } var server = e.Arguments[0]; var port = e.Arguments[1]; var user = e.Arguments[2]; var password = e.Arguments[3]; var database = e.Arguments[4]; var callback = e.Arguments[5]; if (!server.IsString || !port.IsInt || !user.IsString || !password.IsString || !database.IsString || !callback.IsFunction) { //Invalid parameter; e.Exception = "Invalid parameter type"; return; } if (callback.IsFunction) { // Callback to result Settings.Default.SQL_DATABASE = database.StringValue; Settings.Default.SQL_HOST = server.StringValue; Settings.Default.SQL_PORT = port.IntValue; Settings.Default.SQL_USER = user.StringValue; Settings.Default.SQL_PASSWORD = password.StringValue; using (var context = new HotelContext()) { var connection = context.Database.Connection; try { connection.Open(); var result = context.Database.SqlQuery <int>("SELECT COUNT(*) FROM __migrationhistory"); var arr_result = result.ToArray(); if (arr_result.Length > 0 && arr_result[0] == 31) { callback.ExecuteFunction(null, new CfrV8Value[] { true }); } else { callback.ExecuteFunction(null, new CfrV8Value[] { false }); } } catch { callback.ExecuteFunction(null, new CfrV8Value[] { false }); } } Settings.Default.Reload(); } }
private void SetHistoryNoteContentFormCSFunc_Execute(object sender, CfrV8HandlerExecuteEventArgs e) { var array = e.Arguments.ToArray(); var noteID = array.GetValue(0).ToString(); var htmlContent = array.GetValue(1).ToString(); noteUtils.SetHistoryNoteContent(Convert.ToInt32(noteID), htmlContent); }
protected override CfrV8Value Function(CfrV8HandlerExecuteEventArgs args, JsBinding binding, HtmlTextureWrapper wrapper) { if (Arguments.Length >= 1 && Arguments[0].IsString) { Selector = Arguments[0].StringValue; } return(CfrV8Value.CreateString(Selector)); }
public virtual CfrV8Value Invoke(CfrV8HandlerExecuteEventArgs args, JsBinding binding, HtmlTextureWrapper wrapper) { var res = Function(args, binding, wrapper); Invoked?.Invoke(this, wrapper); InvokeCount++; return(res); }
private void GetConfigFormCSFunc_Execute(object sender, CfrV8HandlerExecuteEventArgs e) { var config = JsonConvert.SerializeObject(CommonUtils.ConfigInstance); var jsObjectAccessor = new CfrV8Accessor(); var jsObject = CfrV8Value.CreateObject(jsObjectAccessor); jsObject.SetValue("config", config, CfxV8PropertyAttribute.DontDelete); e.SetReturnValue(jsObject); }
public void OnEndAddFlowItem(object func, CfrV8HandlerExecuteEventArgs args) { var obj = args.Arguments.FirstOrDefault(p => p.IsString); if (obj != null) { PhoneProxy().EndAddFlowItem(obj.StringValue); } }
public void GetFlowPicSize(object func, CfrV8HandlerExecuteEventArgs args) { var jsObjectAccessor = new CfrV8Accessor(); var jsObject = CfrV8Value.CreateObject(jsObjectAccessor); jsObject.SetValue("width", CfrV8Value.CreateInt(GlobDef.sz_image.width), CfxV8PropertyAttribute.ReadOnly); jsObject.SetValue("height", CfrV8Value.CreateInt(GlobDef.sz_image.height), CfxV8PropertyAttribute.ReadOnly); args.SetReturnValue(jsObject); }
/// <summary> /// 关闭程序,结束主进程 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void CloseForm(object sender, CfrV8HandlerExecuteEventArgs e) { //DialogResult result= MessageBox.Show("确定要关闭?","提示",MessageBoxButtons.YesNo); //if (result==DialogResult.Yes) //{ // Application.Exit(); //} Host.Visible = false;//隐藏 }
public void OnRemoveProcess(object func, CfrV8HandlerExecuteEventArgs args) { var obj = args.Arguments.FirstOrDefault(p => p.IsInt); if (obj != null) { PhoneProxy().RemoveProcess(obj.IntValue); } }
private void CloseFormCSFunc_Execute(object sender, CfrV8HandlerExecuteEventArgs e) { var config = CommonUtils.ConfigInstance; if (config.is_shutdown_software) { Application.Exit(); } this.Hide(); }
private void HideWindow(object sender, CfrV8HandlerExecuteEventArgs e) { var win = Window.GetWindow(this); if (win != null) { win.Visibility = Visibility.Hidden; } DisposeBrowser(); }
private void ListExecute(object sender, CfrV8HandlerExecuteEventArgs e) { using (var context = new HotelContext()) { var list = context.Users.ToArray(); var convertval = ConvertValue(list); e.SetReturnValue(convertval); } }
static void HelloApp_Execute(object sender, CfrV8HandlerExecuteEventArgs e) { var numberOfArguments = e.Arguments.Length; if (numberOfArguments > 0) { var firstArg = e.Arguments[0].IntValue; MessageBox.Show("First argument supplied: " + firstArg); } e.SetReturnValue(100); }
internal void raise_Execute(object sender, CfrV8HandlerExecuteEventArgs e) { var handler = m_Execute; if (handler == null) { return; } handler(this, e); e.m_isInvalid = true; }
private async void TestExecute(object sender, CfrV8HandlerExecuteEventArgs e) { //save current context var v8Context = CfrV8Context.GetCurrentContext(); var callback = Array.Find(e.Arguments, p => p.IsFunction); //simulate async methods. await Task.Delay(5000); CallCallback(callback, v8Context, new KeyValuePair <string, object>("Name", 12)); }
private void JS_SubmitAsyncTestFunction(object sender, CfrV8HandlerExecuteEventArgs e) { var function = e.Arguments[0]; LogWriteLine("JS_SubmitAsyncTestFunction: function.FunctionName = " + function.FunctionName); LogWriteLine("JS_SubmitAsyncTestFunction: CfrRuntime.CurrentlyOn(CfxThreadId.Renderer) = " + CfrRuntime.CurrentlyOn(CfxThreadId.Renderer)); var ctx = CfrV8Context.GetCurrentContext(); var t = new Thread(() => { AsyncTestFunctionCallback(function, ctx); }); t.Start(); }
void TestDoubleCallback_Execute(object sender, CfrV8HandlerExecuteEventArgs e) { var doubleCallback = e.Arguments[0]; var args = new CfrV8Value[] { "This is the first argument", 123.4567 }; var retval = doubleCallback.ExecuteFunction(null, args); e.SetReturnValue(retval); }
public void JavascriptCallback(object sender, CfrV8HandlerExecuteEventArgs e) { if (!Functions.ContainsKey(e.Name)) { return; } var func = Functions[e.Name]; func.Arguments = e.Arguments; func.LastEventArgs = e; e.SetReturnValue(func.Invoke(e, this, Wrapper)); }