Ejemplo n.º 1
0
        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);
            }
        }
Ejemplo n.º 2
0
        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;
            }
        }
Ejemplo n.º 3
0
        private void GetUploadUrl(object sender, CfrV8HandlerExecuteEventArgs e)
        {
            var filename = e.Arguments[0].StringValue;
            var retUrl   = baseUrl + filename;

            e.SetReturnValue(retUrl);
        }
Ejemplo n.º 4
0
        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);
            }
        }
Ejemplo n.º 5
0
        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;
            }
        }
Ejemplo n.º 6
0
        protected override void ExecuteInTargetProcess(RemoteConnection connection)
        {
            var sender = CfrV8Handler.Wrap(this.sender);
            var e      = new CfrV8HandlerExecuteEventArgs(eventArgsId);

            sender.raise_Execute(sender, e);
        }
Ejemplo n.º 7
0
 private void ResetExecute(object sender, CfrV8HandlerExecuteEventArgs e)
 {
     Settings.Default.Reset();
     Settings.Default.Reload();
     SettingHelper.Load();
     e.SetReturnValue(true);
 }
Ejemplo n.º 8
0
        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;
            }
        }
Ejemplo n.º 9
0
        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());
            }
        }
Ejemplo n.º 10
0
        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;
            }
        }
Ejemplo n.º 11
0
        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;
            }
        }
Ejemplo n.º 12
0
        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 });
            }
        }
Ejemplo n.º 13
0
        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();
            }
        }
Ejemplo n.º 14
0
        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);
        }
Ejemplo n.º 15
0
 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));
 }
Ejemplo n.º 16
0
        public virtual CfrV8Value Invoke(CfrV8HandlerExecuteEventArgs args, JsBinding binding, HtmlTextureWrapper wrapper)
        {
            var res = Function(args, binding, wrapper);

            Invoked?.Invoke(this, wrapper);
            InvokeCount++;
            return(res);
        }
Ejemplo n.º 17
0
        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);
        }
Ejemplo n.º 18
0
        public void OnEndAddFlowItem(object func, CfrV8HandlerExecuteEventArgs args)
        {
            var obj = args.Arguments.FirstOrDefault(p => p.IsString);

            if (obj != null)
            {
                PhoneProxy().EndAddFlowItem(obj.StringValue);
            }
        }
Ejemplo n.º 19
0
        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);
        }
Ejemplo n.º 20
0
 /// <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;//隐藏
 }
Ejemplo n.º 21
0
        public void OnRemoveProcess(object func, CfrV8HandlerExecuteEventArgs args)
        {
            var obj = args.Arguments.FirstOrDefault(p => p.IsInt);

            if (obj != null)
            {
                PhoneProxy().RemoveProcess(obj.IntValue);
            }
        }
Ejemplo n.º 22
0
        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();
        }
Ejemplo n.º 24
0
        private void ListExecute(object sender, CfrV8HandlerExecuteEventArgs e)
        {
            using (var context = new HotelContext())
            {
                var list       = context.Users.ToArray();
                var convertval = ConvertValue(list);

                e.SetReturnValue(convertval);
            }
        }
Ejemplo n.º 25
0
        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);
        }
Ejemplo n.º 26
0
        internal void raise_Execute(object sender, CfrV8HandlerExecuteEventArgs e)
        {
            var handler = m_Execute;

            if (handler == null)
            {
                return;
            }
            handler(this, e);
            e.m_isInvalid = true;
        }
Ejemplo n.º 27
0
        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));
        }
Ejemplo n.º 28
0
        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();
        }
Ejemplo n.º 29
0
        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);
        }
Ejemplo n.º 30
0
        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));
        }