Ejemplo n.º 1
0
 /// <summary>
 /// 更新
 /// </summary>
 /// <param name="vo"></param>
 /// <returns></returns>
 public int UpdateLocalSetting(EntityLocalSetting vo)
 {
     using (BizFrame biz = new BizFrame())
     {
         return(biz.UpdateLocalSetting(vo));
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 获取
 /// </summary>
 /// <param name="vo"></param>
 public void GetLocalSetting(ref EntityLocalSetting vo)
 {
     using (BizFrame biz = new BizFrame())
     {
         biz.GetLocalSetting(ref vo);
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// LookAndFeel_StyleChanged
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void LookAndFeel_StyleChanged(object sender, EventArgs e)
        {
            if (GlobalParm.IsPopupOpening || this.IsLoadform || GlobalLogin.SkinName == Viewer.defaultLookAndFeel.LookAndFeel.SkinName)
            {
                return;
            }
            GlobalLogin.SkinName = Viewer.defaultLookAndFeel.LookAndFeel.SkinName;
            // 主题
            string skinName = Function.ReadLocalSettingValue("Main|skinName", "value");

            if (!string.IsNullOrEmpty(skinName))
            {
                Function.SetLocalSettingValue("Main|skinName", "value", GlobalLogin.SkinName);
            }
            else
            {
                EntityLocalSetting vo = new EntityLocalSetting();
                vo.EmpNo  = GlobalLogin.objLogin.EmpNo;
                vo.Type   = 3;
                vo.Parent = "Common";
                vo.Node   = "SkinName";
                vo.Value  = GlobalLogin.SkinName;
                ProxyFrame proxyFrame = new ProxyFrame();
                proxyFrame.Service.UpdateLocalSetting(vo);
            }
            if (Viewer.ActiveMdiChild != null && Viewer.ActiveMdiChild is frmBaseMdi)
            {
                ((frmBaseMdi)Viewer.ActiveMdiChild).SetNavBarStyleView();
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 获取
        /// </summary>
        /// <param name="vo"></param>
        public void GetLocalSetting(ref EntityLocalSetting vo)
        {
            List <EntityLocalSetting> data = GetLocalSetting(new List <EntityLocalSetting> {
                vo
            });

            if (data.Count == 1)
            {
                vo = data[0];
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="vo"></param>
        /// <returns></returns>
        public int UpdateLocalSetting(EntityLocalSetting vo)
        {
            int       intRet = 0;
            string    SQL    = string.Empty;
            SqlHelper svc    = new SqlHelper(EnumBiz.onlineDB);

            try
            {
                if (svc.enumDBMS == EnumDBMS.Oracle)
                {
                    SQL = @"update sysLocalsetting set setting = updatexml(setting, '/Parms/" + vo.Parent + "/" + vo.Node + "/text()', '" + vo.Value + "') ";
                }
                else
                {
                    SQL = @"update sysLocalsetting set setting.modify('replace value of (Parms/" + vo.Parent + "/" + vo.Node + "/text())[1] with \"" + vo.Value + "\"') ";
                }
                if (vo.Type == 1)
                {
                    SQL += "where typeid = 1 and status = 1";
                }
                else if (vo.Type == 2)
                {
                    SQL += "where typeid = 2 and status = 1 and (machinename = '" + vo.MachName + "' or ipaddr = '" + vo.IpAddr + "' or macaddr = '" + vo.MacAddr + "')";
                }
                else if (vo.Type == 3)
                {
                    SQL += "where typeid = 3 and status = 1 and empno = '" + vo.EmpNo + "'";
                }

                intRet = svc.ExecSql(SQL);
            }
            catch (Exception e)
            {
                ExceptionLog.OutPutException(e);
            }
            finally
            {
                svc = null;
            }
            return(intRet);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Verify
        /// </summary>
        /// <returns></returns>
        private bool Verify()
        {
            string accountNo = this.txtAccountNo.Text.Trim();
            string pwd       = this.txtPwd.Text;

            if (accountNo == string.Empty)
            {
                return(false);
            }
            if (lstAccount == null || lstAccount.Count == 0)
            {
                DialogBox.Msg("登录账号信息未配置,请联系管理员。", MessageBoxIcon.Information);
                return(false);
            }

            List <EntityAccount> acc   = lstAccount.FindAll(t => t.EmpNo == accountNo);
            ProxyLogin           proxy = new ProxyLogin();

            try
            {
                if (acc == null || acc.Count == 0)
                {
                    DialogBox.Msg("登录账号不存在,请重新输入。", MessageBoxIcon.Information);
                    this.txtAccountNo.Focus();
                    return(false);
                }
                GlobalAppConfig.AccountFuncs = acc;

                EntityLogin    dcLoginInfo    = null;
                EntityHospital dcHospitalInfo = null;
                proxy.Service.GetLoginInfo(accountNo, ref dcLoginInfo, ref dcHospitalInfo);

                if (dcLoginInfo != null)
                {
                    //本机信息
                    dcLoginInfo.IP       = Function.LocalIP();
                    dcLoginInfo.Mac      = Function.LocalMac();
                    dcLoginInfo.HostName = Function.LocalHostName();

                    GlobalLogin.objLogin       = dcLoginInfo;
                    GlobalHospital.objHospital = dcHospitalInfo;
                    string oriPwd = GlobalLogin.objLogin.Pwd;
                    if (pwd != string.Empty)
                    {
                        if (1 != 1)
                        {
                            oriPwd = (new clsSymmetricAlgorithm()).Decrypt(oriPwd, clsSymmetricAlgorithm.enmSymmetricAlgorithmType.DES);
                        }
                    }
                    if (pwd != oriPwd)      //GlobalLogin.objLogin.Pwd)
                    {
                        //if (CheckCAType())
                        //{
                        //    if (!HopeBridge.Common.Ca.CA.IDVerify(acc[0].SignDigital))
                        //    {
                        //        DialogBox.Msg("电子认证失败,请检查电子密钥KEY盘。");
                        //        return false;
                        //    }
                        //}
                        if (dcLoginInfo.AcctLock)
                        {
                            DialogBox.Msg("账户被锁定,请与管理员联系。", MessageBoxIcon.Information);
                            return(false);
                        }

                        this.ErrorNums++;
                        if (this.AllowErrorNums == this.ErrorNums)
                        {
                            ProxyFrame proxy1 = new ProxyFrame();
                            if (proxy1.Service.LockAccount(accountNo) > 0)
                            {
                                DialogBox.Msg("密码输入超过系统允许的最大错误次数(" + this.AllowErrorNums.ToString() + "次)\r\n\r\n系统将被锁定,请与管理员联系。", MessageBoxIcon.Information);
                                Application.Exit();
                                return(false);
                            }
                        }
                        this.txtPwd.Focus();
                        DialogBox.Msg("密码不正确,请重新输入。\r\n\r\n错误" + this.ErrorNums.ToString() + "次,剩余" + Convert.ToString((3 - this.ErrorNums)) + "次。");
                        return(false);
                    }

                    //if (dcLoginInfo.Pwd == GlobalAppConfig.INIT_PWD)
                    //{
                    //    DialogBox.Msg("使用系统前请先修改初始密码!", MessageBoxIcon.Information);

                    //    frmPassWord frmPwd = new frmPassWord(accountNo);
                    //    if (frmPwd.ShowDialog() != DialogResult.OK)
                    //    {
                    //        return false;
                    //    }
                    //}
                    //if (dcLoginInfo.PwdValidDays > 0 && dcLoginInfo.PwdUseDate != null)
                    //{
                    //    DateTime dtmNow = Utils.ServerTime();
                    //    TimeSpan ts = new TimeSpan(dcLoginInfo.PwdValidDays, 0, 0, 0);
                    //    if (dtmNow.Subtract(ts) >= dcLoginInfo.PwdUseDate)
                    //    {
                    //        DialogBox.Msg("密码超过系统默认的有效期(" + dcLoginInfo.PwdValidDays.ToString() + "天),请重设密码。");
                    //        frmPassWord frmPwd = new frmPassWord(accountNo);
                    //        if (frmPwd.ShowDialog() != DialogResult.OK)
                    //        {
                    //            return false;
                    //        }
                    //    }
                    //}
                    if (dcLoginInfo.EmpFlag == 1 || dcLoginInfo.EmpFlag == 3)
                    {
                        if (string.IsNullOrEmpty(dcLoginInfo.DeptCode) || dcLoginInfo.lstDept.Count == 0)
                        {
                            DialogBox.Msg("当前登录人没有默认科室,请联系管理员。");
                            return(false);
                        }
                    }
                    //if (dcLoginInfo.EmpFlag == 2)
                    //{
                    //    if (dcLoginInfo.AreaID <= 0 || dcLoginInfo.lstArea.Count == 0)
                    //    {
                    //        DialogBox.Msg("当前登录人没有默认病区,请联系管理员。");
                    //        return false;
                    //    }
                    //}

                    // 重新.加载本地参数
                    GlobalAppConfig.AppConfig = GetAppConfig(dcLoginInfo.EmpNo);
                    // 医院组织机构系统编码
                    //GlobalHospital.OrgSysCode = Function.LocalSettingValue("Login", "Hospital", "OrgSysCode");

                    // 主题
                    string skinName = Function.ReadLocalSettingValue("Main|skinName", "value");
                    if (string.IsNullOrEmpty(skinName))
                    {
                        EntityLocalSetting vo = new EntityLocalSetting();
                        vo.MachName = Function.LocalHostName();
                        vo.MacAddr  = Function.LocalMac();
                        vo.IpAddr   = Function.LocalIP();
                        vo.EmpNo    = dcLoginInfo.EmpNo;
                        vo.Parent   = "Common";
                        vo.Node     = "SkinName";
                        ProxyFrame proxyFrame = new ProxyFrame();
                        proxyFrame.Service.GetLocalSetting(ref vo);
                        skinName = vo.Value;
                    }
                    if (!string.IsNullOrEmpty(skinName))
                    {
                        GlobalLogin.SkinName = skinName;
                    }

                    // 写账号
                    WriteAccountNo();
                    return(true);
                }
            }
            finally
            {
                proxy = null;
            }
            return(false);
        }