コード例 #1
0
        void _client_GetModuleCatalogByUserCompleted(object sender, Client.PlatformWS.GetModuleCatalogByUserCompletedEventArgs e)
        {
            if (e.Error == null)
            {
                if (e.Result != null)
                {
                    ObservableCollection <Model.ModuleInfo> result = new ObservableCollection <ModuleInfo>();
                    foreach (var item in e.Result)
                    {
                        Model.ModuleInfo v = item.CloneObject <Model.ModuleInfo>(new Model.ModuleInfo());
                        if (item.DependsOn.Count > 0)
                        {
                            foreach (var dependsitem in item.DependsOn)
                            {
                                v.DependsOn.Add(dependsitem);
                            }
                        }
                        result.Add(v);
                    }

                    if (OnGetModulesCompleted != null)
                    {
                        OnGetModulesCompleted(this, new GetEntityListEventArgs <Model.ModuleInfo>(result, e.Error));
                    }
                }
            }
        }
コード例 #2
0
        void _client_GetModuleByCodesCompleted(object sender, Client.PlatformWS.GetModuleByCodesCompletedEventArgs e)
        {
            if (e.Error == null)
            {
                if (e.Result != null)
                {
                    ObservableCollection <Model.ModuleInfo> result = new ObservableCollection <ModuleInfo>();
                    foreach (var item in e.Result)
                    {
                        Model.ModuleInfo v = item.CloneObject <Model.ModuleInfo>(new Model.ModuleInfo());
                        result.Add(v);
                    }

                    if (OnGetModulesCompleted != null)
                    {
                        OnGetModulesCompleted(this, new GetEntityListEventArgs <Model.ModuleInfo>(result, e.Error));
                    }
                }
            }
        }
コード例 #3
0
        /// <summary>
        /// 新增一个ModuleInfo到数据库中,并保存其对应的XAP文件
        /// </summary>
        /// <param name="model">ModuleInfo数据</param>
        /// <returns>是否新增成功</returns>
        public bool AddModuleInfoByFile(Model.ModuleInfo model, string folderName, byte[] xapFileStream)
        {
            try
            {
                string filePath = UploadFile(folderName, model.FileName, xapFileStream, false);
                if (filePath.Length > 0)
                {
                    model.FilePath = filePath;
                    return(this.Add(model));
                }
                return(false);
            }
            catch (Exception ex)
            {
                #region 将异常写入日志文件
                StackFrame frame = (new StackTrace(true)).GetFrame(1);
                Utility.Log(this.GetType().FullName, frame.GetMethod().Name, ex);
                #endregion

                return(false);
            }
        }
コード例 #4
0
ファイル: ModuleInfoDAL.cs プロジェクト: jjg0519/OA
        private List <ModuleInfo> AnalysisTaskConfig(XElement xmlClient)
        {
            var sysElement = from element in xmlClient.DescendantsAndSelf("SystemType")
                             select element;
            List <ModuleInfo> taskModules = new List <ModuleInfo>();

            foreach (var item in sysElement)
            {
                XElement xitem = item;

                var list = from element in item.DescendantsAndSelf("Task")
                           select element;

                var systemModule = new Model.ModuleInfo
                {
                    ModuleID   = xitem.Attributes(XName.Get("TypeId")).FirstOrDefault().Value,
                    ModuleName = xitem.Attributes(XName.Get("Name")).FirstOrDefault().Value,
                    ModuleCode = xitem.Attributes(XName.Get("TypeId")).FirstOrDefault().Value,
                    ModuleType = xitem.Attributes(XName.Get("Type")).FirstOrDefault().Value
                };
                taskModules.Add(systemModule);

                foreach (var taskElement in list)
                {
                    var moduleinfo = new Model.ModuleInfo
                    {
                        ModuleName = taskElement.Attributes(XName.Get("Name")).FirstOrDefault().Value,
                        ModuleCode = taskElement.Attributes(XName.Get("ModuleCode")).FirstOrDefault().Value,
                        ModuleType = taskElement.Attributes(XName.Get("TaskType")).FirstOrDefault().Value,
                        ModuleIcon = taskElement.Attributes(XName.Get("Icon")).FirstOrDefault().Value
                    };

                    //指定所属系统
                    moduleinfo.SystemType = xitem.Attributes(XName.Get("TypeId")).FirstOrDefault().Value;
                    //解析参数列表
                    var param = taskElement.Attributes(XName.Get("Params")).FirstOrDefault().Value;
                    if (param.Length > 0)
                    {
                        Dictionary <string, string> paramsList = new Dictionary <string, string>();
                        foreach (var itemparam in param.Split(';'))
                        {
                            var keyValue = itemparam.Split('=');
                            paramsList.Add(keyValue[0], keyValue[1]);
                        }
                        moduleinfo.InitParams = paramsList;
                    }
                    //解析依赖项

                    var depends = taskElement.Attributes(XName.Get("Depends")).FirstOrDefault().Value;
                    if (depends.Length > 0)
                    {
                        Collection <string> dependsList = new Collection <string>();
                        foreach (var dependsitem in depends.Split(';'))
                        {
                            dependsList.Add(dependsitem);
                        }
                        moduleinfo.DependsOn = dependsList;
                    }

                    taskModules.Add(moduleinfo);
                }
            }

            return(taskModules);
        }
コード例 #5
0
        public bool AddModuleByFile(Model.ModuleInfo model, byte[] xapFileStream)
        {
            string xapFolder = HostingEnvironment.MapPath(folderName);

            return(moduleBll.AddModuleInfoByFile(model, xapFolder, xapFileStream));
        }
コード例 #6
0
 public bool AddModule(Model.ModuleInfo model)
 {
     return(moduleBll.Add(model));
 }
コード例 #7
0
ファイル: ModuleBLL.cs プロジェクト: fuhongliang/oa
        private List<ModuleInfo> AnalysisTaskConfig(XElement xmlClient)
        {
            var sysElement = from element in xmlClient.DescendantsAndSelf("SystemType")
                             select element;
            List<ModuleInfo> taskModules = new List<ModuleInfo>();

            foreach (var item in sysElement)
            {
                XElement xitem = item;

                var list = from element in item.DescendantsAndSelf("Task")
                           select element;

                var systemModule = new Model.ModuleInfo
                {
                    ModuleID = xitem.Attributes(XName.Get("TypeId")).FirstOrDefault().Value,
                    ModuleName = xitem.Attributes(XName.Get("Name")).FirstOrDefault().Value,
                    ModuleCode = xitem.Attributes(XName.Get("TypeId")).FirstOrDefault().Value,
                    ModuleType = xitem.Attributes(XName.Get("Type")).FirstOrDefault().Value

                };
                taskModules.Add(systemModule);

                foreach (var taskElement in list)
                {
                    var moduleinfo = new Model.ModuleInfo
                    {
                        ModuleName = taskElement.Attributes(XName.Get("Name")).FirstOrDefault().Value,
                        ModuleCode = taskElement.Attributes(XName.Get("ModuleCode")).FirstOrDefault().Value,
                        ModuleType = taskElement.Attributes(XName.Get("TaskType")).FirstOrDefault().Value,
                        ModuleIcon = taskElement.Attributes(XName.Get("Icon")).FirstOrDefault().Value
                    };

                    //指定所属系统
                    moduleinfo.SystemType = xitem.Attributes(XName.Get("TypeId")).FirstOrDefault().Value;
                    //解析参数列表
                    var param = taskElement.Attributes(XName.Get("Params")).FirstOrDefault().Value;
                    if (param.Length > 0)
                    {
                        Dictionary<string, string> paramsList = new Dictionary<string, string>();
                        foreach (var itemparam in param.Split(';'))
                        {
                            var keyValue = itemparam.Split('=');
                            paramsList.Add(keyValue[0], keyValue[1]);
                        }
                        moduleinfo.InitParams = paramsList;
                    }
                    //解析依赖项

                    var depends = taskElement.Attributes(XName.Get("Depends")).FirstOrDefault().Value;
                    if (depends.Length > 0)
                    {
                        Collection<string> dependsList = new Collection<string>();
                        foreach (var dependsitem in depends.Split(';'))
                        {
                            dependsList.Add(dependsitem);
                        }
                        moduleinfo.DependsOn = dependsList;
                    }

                    taskModules.Add(moduleinfo);
                }
            }

            return taskModules;
        }