Пример #1
0
        /// <summary>
        /// 加载所有信息
        /// </summary>
        void Action()
        {
            //首先判断门店信息,如果没有则提示初始化门店信息
            //然后根据门店信息和POS机信息,初始化POS机信息
            System.Threading.Thread.Sleep(500);
            //bool isok = false;
            try
            {
                SetControlVisible(false);
                LoggerHelper.Log("MsmkLogger", "信息初始化开始Starting...", LogEnum.InitLog);
                long result = Gfunc.InitEnvironment();
                switch (result)
                {
                case -2:
                    LoggerHelper.Log("MsmkLogger", "基本配置信息初始化失败Error", LogEnum.InitLog);
                    break;

                case -1:
                    LoggerHelper.Log("MsmkLogger", "取消基本配置信息初始化Cancel", LogEnum.InitLog);
                    break;

                case -3:
                    System.IO.File.Delete(AppDomain.CurrentDomain.BaseDirectory + Gattr.ApplicationXml);
                    //Application.Exit();
                    Application.Restart();
                    return;
                    //FrmInitData frmData = new FrmInitData();
                    //frmData.ShowDialog();
                    //this.Close();
                    //break;
                }
                SetControlVisible(true);
                if (result < 0)
                {
                    if (result == -1)
                    {
                        Application.Exit();
                    }
                    else
                    {
                        MessageBox.Show("基本配置信息初始化失败", Gattr.AppTitle);
                    }
                    return;
                }
                else
                {
                    LoggerHelper.Log("MsmkLogger", "基本配置信息加载完成", LogEnum.InitLog);
                }

                Thread.Sleep(500);
                SetControlVisible(false);
                LoggerHelper.Log("MsmkLogger", "基本数据信息初始化开始Start", LogEnum.InitLog);
                Dictionary <string, object> _dic = Gfunc.GetServiceParameter();
                string errorMessage = string.Empty;
                bool   isok         = true;
                //通过 ping 判断丢包率
                decimal d   = ExtendUtility.Instance.ParseToDecimal(RunCmd(Gattr.serverUrl));
                string  res = PServiceProvider.Instance.InvokeMethod(Gattr.serverUrl + "/Testconn", _dic, ref isok, ref errorMessage);
                if (isok && res == "1" && d < 10)
                {
                    Gattr.NetStatus = "【联网】";
                    FrmSyncPosData frmData = new FrmSyncPosData(true);
                    if (frmData.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        //TODO:数据初始化完成 显示主登录窗体
                        goto TOLOGIN;
                    }
                    else
                    {
                        LoggerHelper.Log("MsmkLogger", "取消基本数据信息初始化Cancel", LogEnum.InitLog);
                        Application.Exit();
                    }
                }
                else
                {
                    MessageBox.Show("服务器连接失败,将以断网方式进行销售。");
                    Gattr.NetStatus = "【断网】";
                    goto TOLOGIN;
                }

TOLOGIN:
                Gattr.BranchName = Gattr.Bll.GetBranchNameByNo(Gattr.BranchNo);
                Gattr.AppTitle   = Gattr.BranchName == string.Empty ? ConfigurationManager.AppSettings["appName"] : Gattr.BranchName;
                Gattr.adUrl      = (Gattr.adUrl == string.Empty) ? AppDomain.CurrentDomain.BaseDirectory + "AD.htm" : Gattr.adUrl;
                //TODO:数据初始化完成 显示主登录窗体
                LoggerHelper.Log("MsmkLogger", "基本数据信息初始化完成Complete", LogEnum.InitLog);
                Process[] processesByName = Process.GetProcessesByName("LL.POS.Transfer");
                Process[] array3          = processesByName;
                for (int i = 0; i < array3.Length; i++)
                {
                    Process process = array3[i];
                    process.Kill();
                    process.WaitForExit();
                    process.Close();
                    process.Dispose();
                }
                String path = AppDomain.CurrentDomain.BaseDirectory + "LL.POS.Transfer.exe";
                //String dbpath = AppDomain.CurrentDomain.BaseDirectory + "sale.db";
                String dbpath = "sale.db";
                Process.Start(new ProcessStartInfo()
                {
                    FileName  = path,
                    Arguments =
                        dbpath + " " +
                        "transfer.ini" + " " +
                        Gattr.AppTitle + " " +
                        Gattr.client_id + " " +
                        Gattr.access_token + " " +
                        Gattr.serverUrl + " " +
                        Gattr.MemberServiceUri + " " +
                        Gattr.ServiceWay + " " +
                        Gattr.UseToken
                });
                FrmLogin frmLogin = new FrmLogin(this);
                frmLogin.ShowDialog();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                LoggerHelper.Log("MsmkLogger", ex.ToString(), LogEnum.ExceptionLog);
            }
        }
Пример #2
0
        private void iniSysInfo(bool isOnload)
        {
            try
            {
                Gfunc.InitEnvironment();
                if (isOnload)
                {
                    Gattr.OperId       = _oper.oper_id;
                    Gattr.OperPwd      = _oper.oper_pwd;
                    Gattr.CheckStandId = _oper.branch_id;
                    Gattr.OperFullName = _oper.full_name;
                    Gattr.Oper_flag    = _oper.oper_flag;
                    Gattr.OperGrant    = _oper.cash_grant;
                    Gattr.OperDiscount = _oper.discount_rate;
                    base.Visible       = false;
                    this._loginParm    = "";
                    this.FormMain      = new FrmMain(this, this.frmStart);
                    this.FormMain.ShowDialog();
                }
                if ((this.LoginParm == "RETURN LOGIN"))
                {
                    this.LoginParm  = "RL";
                    this.tbPwd.Text = string.Empty;
                    base.Visible    = true;
                }
                tlpMain.BackgroundImage = LL.POS.Properties.Resources.login_back;
                plLogin.BackgroundImage = LL.POS.Properties.Resources.login_input1;
                Point[] points = new Point[12] {
                    new Point(383, 284), new Point(311, 235), new Point(384, 235), new Point(456, 235), new Point(311, 186),
                    new Point(383, 185), new Point(457, 186), new Point(310, 137), new Point(384, 136), new Point(456, 137),
                    new Point(311, 284), new Point(457, 284)
                };
                PictureBox pb = null;


                for (int index = 0; index < points.Length; index++)
                {
                    pb        = new PictureBox();
                    pb.Click += new EventHandler(pictureBox1_Click);
                    if (index <= 9)
                    {
                        pb.Tag = index;
                    }
                    else if (index == 10)
                    {
                        pb.Tag = "back";
                    }
                    else
                    {
                        pb.Tag = "reset";
                    }
                    pb.Location = points[index];
                    pb.Size     = new Size(63, 39);
                    plLogin.Controls.Add(pb);
                }
                plLogin.Refresh();
            }
            catch (Exception ex)
            {
                LoggerHelper.Log("MsmkLogger", ex.ToString(), LogEnum.ExceptionLog);
            }
        }