示例#1
0
        private void AddButton_Click(object sender, RoutedEventArgs e)
        {
            this.ErrorMessagePromptName.Text     = "";
            this.ErrorMessagePromptFilePath.Text = "";
            bool verifyFlag = true;

            ProjectConfig projectConfig = new ProjectConfig();
            Dictionary <string, RuleAndErrorMessage> dictRule = projectConfig.GetProjectInfoRegularExpression();
            RuleAndErrorMessage rule = dictRule["Name"];

            Regex exminator = new Regex(rule.Rule);

            if (!exminator.IsMatch(this.ProjectNameInputTextBox.Text))
            {
                this.ErrorMessagePromptName.Text = rule.ErrorMessage;
                verifyFlag = false;
            }

            if (string.IsNullOrEmpty(this.FilePathInputTextBox.Text))
            {
                this.ErrorMessagePromptFilePath.Text += "请选择有效路径";
                verifyFlag = false;
            }
            if (verifyFlag)
            {
                SCA.Model.ProjectModel project = new Model.ProjectModel();
                project.Name        = this.ProjectNameInputTextBox.Text;
                project.SavePath    = this.FilePathInputTextBox.Text + "\\" + project.Name + ".nt";
                project.FileVersion = BusinessLogic.DBFileVersionManager.CurrentDBFileVersion;
                SCA.BusinessLib.ProjectManager.GetInstance.CreateProject(project);
                RaiseEvent(new RoutedEventArgs(AddButtonClickEvent));
            }
        }
示例#2
0
        public List <Model.ControllerModel> GetControllersByProject(Model.ProjectModel project)
        {
            //List<ControllerModel> lstControllers=new List<ControllerModel>();
            //StringBuilder sbQuerySQL = new StringBuilder("select id,primaryflag,typeid,deviceaddresslength,name,portname,baudrate,machinenumber,version from controller where projectid=" + project.ID);
            //System.Data.DataTable dt = _databaseService.GetDataTableBySQL(sbQuerySQL);
            //for (int i = 0; i < dt.Rows.Count; i++)
            //{
            //    Model.ControllerModel model = new Model.ControllerModel();
            //    model.ID = Convert.ToInt16(dt.Rows[i]["id"]);
            //    model.PrimaryFlag = (bool)dt.Rows[i]["PRIMARYFLAG"];
            //    model.Type = (ControllerType)Enum.ToObject(typeof(ControllerType), Convert.ToInt32(dt.Rows[i]["TYPEID"]));
            //    model.DeviceAddressLength = dt.Rows[i]["DEVICEADDRESSLENGTH"] is System.DBNull ? 0 : Convert.ToInt16(dt.Rows[i]["DEVICEADDRESSLENGTH"]);
            //    model.Name = dt.Rows[i]["Name"].ToString();
            //    model.PortName = dt.Rows[i]["PORTNAME"].ToString();
            //    model.BaudRate = Convert.ToInt32(dt.Rows[i]["BAUDRATE"]);
            //    model.MachineNumber = dt.Rows[i]["MACHINENUMBER"].ToString();
            //    model.Version = Convert.ToInt16(dt.Rows[i]["VERSION"]);
            //    model.ProjectID = project.ID;
            //    model.Project = project;

            //    model.LoopAddressLength = 2;
            //    lstControllers.Add(model);
            //}
            //return lstControllers;
            return(_dbFileVersionService.GetControllersByProject(project));
        }
示例#3
0
        private void AddButton_Click(object sender, RoutedEventArgs e)
        {
            SCA.Model.ProjectModel project = new Model.ProjectModel();
            project.Name     = this.ProjectNameInputTextBox.Text;
            project.SavePath = this.FilePathInputTextBox.Text;
            SCA.BusinessLib.ProjectManager.GetInstance.CreateProject(project);

            RaiseEvent(new RoutedEventArgs(AddButtonClickEvent));
        }
示例#4
0
        public Model.ProjectModel GetProject(Model.ProjectModel project)
        {
            StringBuilder sbQueryProjectSQL = new StringBuilder("select id,name,saveinterval,savepath from project where id=" + project.ID);

            System.Data.DataTable dt    = _databaseService.GetDataTableBySQL(sbQueryProjectSQL);
            Model.ProjectModel    model = new Model.ProjectModel();
            model.ID           = Convert.ToInt16(dt.Rows[0]["id"]);
            model.Name         = dt.Rows[0]["name"].ToString();
            model.SavePath     = dt.Rows[0]["savepath"] is System.DBNull ? null : dt.Rows[0]["savepath"].ToString();
            model.SaveInterval = dt.Rows[0]["saveinterval"] is System.DBNull ? 0 : Convert.ToInt16(dt.Rows[0]["saveinterval"]);
            return(model);
        }
示例#5
0
        private void ConfirmButton_Click(object sender, RoutedEventArgs e)
        {
            SCA.Model.ProjectModel project = new Model.ProjectModel();
            project.Name     = this.ProjectNameInputTextBox.Text;
            project.SavePath = SaveFilePathInputTextBox.Text;
            string strImportedFilePath = ImportFilePathInputTextBox.Text;
            //string strProjectFileSavePath = SaveFilePathInputTextBox.Text;
            //string strProjectName = ProjectNameInputTextBox.Text;
            // project.SavePath = this.FilePathInputTextBox.Text;


            //~~~~~~~~
            IFileService     _fileService = new FileService();
            IDatabaseService _databaseService;
            ILogRecorder     _logRecorder;

            _databaseService = new MSAccessDatabaseAccess(strImportedFilePath, null, _fileService);
            IOldVersionSoftwareDBService oldVersionService = new OldVersionSoftware8036DBService(_databaseService);

            IControllerOperation controllerOperation = null;

            string[]        strFileInfo    = oldVersionService.GetFileVersionAndControllerType();
            ControllerModel controllerInfo = null;

            if (strFileInfo.Length > 0)
            {
                switch (strFileInfo[0])
                {
                case "8036":
                    controllerOperation = new ControllerOperation8036(_databaseService);
                    break;
                }
                if (controllerOperation != null)
                {
                    controllerInfo = controllerOperation.OrganizeControllerInfoFromOldVersionSoftwareDataFile(oldVersionService);
                }
                //strFileInfo[1];
            }
            //~~~~~~~~~
            project.Controllers.Add(controllerInfo);
            SCA.BusinessLib.ProjectManager.GetInstance.CreateProject(project);
            RaiseEvent(new RoutedEventArgs(ConfirmButtonClickEvent));
        }
示例#6
0
        public int AddProject(Model.ProjectModel project)
        {
            StringBuilder sbProjectSQL;

            if (project.ID == 0) //在目前软件中,一次仅可管理一个项目信息,后续如有扩展,可将此逻辑拆分至UpdateProject中
            {
                sbProjectSQL = new StringBuilder("Insert into Project(Name,savepath,saveinterval) values(\"");
                sbProjectSQL.Append(project.Name + "\",\"");
                sbProjectSQL.Append(project.SavePath + "\",");
                sbProjectSQL.Append(project.SaveInterval + ");");
            }
            else
            {
                sbProjectSQL = new StringBuilder("Replace into Project(ID,Name,savepath,saveinterval) values(\"");
                sbProjectSQL.Append(project.ID + "\",\"");
                sbProjectSQL.Append(project.Name + "\",\"");
                sbProjectSQL.Append(project.SavePath + "\",");
                sbProjectSQL.Append(project.SaveInterval + ");");
            }
            return(_databaseService.ExecuteBySql(sbProjectSQL));
        }
示例#7
0
 public bool UpdateProject(Model.ProjectModel project)
 {
     throw new NotImplementedException();
 }