using Lskj.Business.Impl; using Lskj.Control; using Lskj.Control.Model; using Lskj.Core; using Lskj.Data; using Lskj.Model; using Lskj.Util; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; namespace Lskj.PubMrpAnalyze.Model {/// /// 主程序启动相关管理类 /// public sealed class Manager { /// /// 主程序 /// private static FrmMain _frmMain = null; public static int MinusTheHeight = 0; public static int frmHeight = 0; public static string BsName; public static string BsUrl; public static Dictionary cacheDic = new Dictionary(); /// /// 说明:启动配置窗口 /// 创建人:龚宇超 /// 创建日期:2017-08-09 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// private static DialogResult RunConfigForm() { FrmConfigSet frmConfigSet = new FrmConfigSet(); return frmConfigSet.ShowDialog(); } /// /// 说明:打开登录界面 /// 创建人:龚宇超 /// 创建日期:2017-08-12 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// DialogResult. private static DialogResult RunLoginForm() { FrmLogin frmLogin = new FrmLogin(); return frmLogin.ShowDialog(); } /// /// 说明:打开主程序 /// 创建人:龚宇超 /// 创建日期:2017-08-14 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// DialogResult. private static DialogResult RunMainForm() { _frmMain = new FrmMain(); return _frmMain.ShowDialog(); } /// /// 说明:重新启动 /// 创建人:龚宇超 /// 创建日期:2017-08-14 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// 是否跳过子系统选择(适用于切换用户). public static void ReStartMain(bool skipMenu = false) { if (_frmMain != null) { _frmMain.Close(); _frmMain.Dispose(); _frmMain = null; } bool isStart = true; bool isOpenBs = false; DialogResult result; RunMainForm(); } /// /// 说明:程序启动入口 /// 创建人:龚宇超 /// 创建日期:2017-08-09 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// public static void StartForm() { bool isStart = true; // 加载Splash动画界面 SplashForm.ShowForm(); //CheckLocalConfig(); // C#数据库连接检查 if (!DBConfig.Instance.CreateConnection(DBConfig.Instance.Connection)) { MessageUtil.Show(ResourceKeys.UnConnectServer); SplashForm.HideForm(); DialogResult result = RunConfigForm(); isStart = result == DialogResult.OK; } if (isStart) { // Delphi数据库连接检查 if (DelphiHelper.Delphi_Init(new StringBuilder(DBConfig.Instance.GetDelphiConnection(DBConfig.Instance.dephiConnection))) == 0) { MessageUtil.Show(ResourceKeys.UnConnectServer + "[By Delphi]"); SplashForm.HideForm(); RunConfigForm(); return; } SplashForm.HideForm(); // 汉化dev控件 BaseResources.Localization(LocalizationType.CHS); // 启动登录页面 DialogResult result = RunLoginForm(); //登陆正确方可继续下一步 if (ERPInfo.Instance.LoginResult == false) return; if (result == DialogResult.OK) { DataTable table = MainImpl.EnableSubSystem(); ERPInfo.Instance.SubMenuCount = table.Rows.Count; if (table.Rows.Count == 1) { ERPInfo.Instance.SubSysId = table.Rows[0]["SubSysId"] + ""; ERPInfo.Instance.SubSysName = table.Rows[0]["SubSysName"] + ""; } string[] args = new string[] { "", ERPInfo.Instance.UserId, ERPInfo.Instance.UserName, "1", "MRP001", "" }; DynamicMrpAnalyzeModel AnalyzeModel = new DynamicMrpAnalyzeModel(args); FrmMain frmMain = new FrmMain(); frmMain.AnalyzeModel = AnalyzeModel; frmMain.ShowDialog(); } } else { SplashForm.HideForm(); } } } }