示例#1
0
        /// <summary>
        /// 保存项目
        /// </summary>
        /// <returns>是否保存成功?</returns>
        public bool SaveProject()
        {
            try
            {
                if (ProjectFolderPath == null || ProjectFolderPath == "")
                {
                    return(false);
                }



                //把ProjectData转换为ProjectBaseData
                ProjectBaseData _projectBaseData = ProjectBaseData.DataToBaseData(ProjectData);

                //把ProjectBaseData转换为json
                string _projectJsonText = JsonMapper.ToJson(_projectBaseData);

                //把json文件保存到[项目名.bugs]文件里
                File.WriteAllText(ProjectFilePath, _projectJsonText, Encoding.Default);

                //保存排序数据
                AppManager.Systems.SortSystem.Save();



                return(true);
            }
            catch (Exception e)
            {
                //输出错误
                AppManager.Uis.ErrorUi.UiControl.TipContent = e.ToString();
                AppManager.Uis.ErrorUi.OpenOrClose(true);
                return(false);
            }
        }
示例#2
0
        /// <summary>
        /// 把[Data对象]转换为[BaseData对象]
        /// </summary>
        /// <param name="_data">要转换的Data对象</param>
        /// <returns>转换后的BaseData对象</returns>
        public static ProjectBaseData DataToBaseData(ProjectData _data)
        {
            if (_data != null)
            {
                ProjectBaseData _baseData = new ProjectBaseData();

                _baseData.Id       = _data.Id;
                _baseData.Name     = _data.Name;
                _baseData.ModeType = (int)_data.ModeType;

                return(_baseData);
            }
            else
            {
                return(null);
            }
        }
示例#3
0
        /// <summary>
        /// 读取项目
        /// </summary>
        /// <param name="_projectFilePath">项目文件夹的路径(就是.bugs文件的路径)(如果为null,就代表使用当前的savePath属性+ProjectName属性)</param>
        /// <returns>是否读取成功?</returns>
        public bool LoadProject(string _projectFilePath = null)
        {
            try
            {
                /* 设置项目路径 */
                //如果参数为null
                if (_projectFilePath == null)
                {
                    _projectFilePath = ProjectFilePath;
                }


                /* 设置文件信息 */
                //FileInfo类 用于读取文件信息
                FileInfo _fileInfo = new FileInfo(_projectFilePath);

                /* 判断文件是否存在 */
                if (_fileInfo.Exists == false)//如果不存在
                {
                    return(false);
                }

                //如果文件存在,修改projectFolderPath属性
                ProjectFolderPath = _fileInfo.DirectoryName;
                string _fileName = Path.GetFileNameWithoutExtension(_fileInfo.FullName);



                /* 读取ProjectData */
                //读取[项目名.bugs]的Json文本中的内容
                string _projectJsonText = File.ReadAllText(_projectFilePath);

                //然后把Json文本解析成ProjectBaseData对象
                ProjectBaseData _projectBaseData = null;
                try
                {
                    _projectBaseData = JsonMapper.ToObject <ProjectBaseData>(_projectJsonText);
                }
                catch (Exception e)
                {
                }

                //判断是否是.bug文件(如果没有Bug的名字,就不打开这个项目,并报错)
                if (_projectBaseData == null || _projectBaseData.Name == null || _projectBaseData.Name == "")
                {
                }
                else
                {
                    //把ProjectBaseData对象,转化为ProjectData对象
                    ProjectData _projectData = ProjectBaseData.BaseDataToData(_projectBaseData);

                    //如果取到了数据
                    if (_projectData != null)
                    {
                        //赋值
                        _projectData.FileName = _fileName;
                        this.ProjectData      = _projectData;

                        //读取排序数据
                        AppManager.Systems.SortSystem.Load();


                        //创建文件夹和文件
                        CreateFolders();
                        CreateFiles();


                        /* 打开协同合作功能 */
                        AppManager.Systems.CollaborationSystem.Handle(true);


                        //返回值
                        return(true);
                    }
                }

                //返回值
                return(false);
            }
            catch (Exception e)
            {
                //输出错误
                AppManager.Uis.ErrorUi.UiControl.TipContent = e.ToString();
                AppManager.Uis.ErrorUi.OpenOrClose(true);
                return(false);
            }
        }