コード例 #1
0
        /// <summary>
        /// 复制DBS结构配置及权限
        /// </summary>
        /// <param name="rootDBS"></param>
        /// <param name="newRootDBS"></param>
        /// <param name="context"></param>
        private void CopyDBSDefine(S_T_DBSDefine rootDBS, S_T_DBSDefine newRootDBS, BaseConfigEntities context)
        {
            var childDBS = rootDBS.Children;

            foreach (var dbs in childDBS)
            {
                var newDBS = dbs.Clone <S_T_DBSDefine>();
                newDBS.ID       = FormulaHelper.CreateGuid();
                newDBS.ParentID = newRootDBS.ID;
                newDBS.FullID   = newRootDBS.FullID + "." + newDBS.ID;
                newDBS.ModeID   = newRootDBS.ModeID;
                context.Set <S_T_DBSDefine>().Add(newDBS);

                //DBS权限
                var dbsAuth = context.Set <S_T_DBSSecurity>().Where(c => c.DBSDefineID == dbs.ID);
                if (dbsAuth != null)
                {
                    foreach (var auth in dbsAuth)
                    {
                        var newAuth = auth.Clone <S_T_DBSSecurity>();
                        newAuth.ID          = FormulaHelper.CreateGuid();
                        newAuth.DBSDefineID = newDBS.ID;
                        context.Set <S_T_DBSSecurity>().Add(newAuth);
                    }
                }

                if (dbs.Children != null)
                {
                    CopyDBSDefine(dbs, newDBS, context);
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// 复制ISO配置
        /// </summary>
        /// <param name="modelID"></param>
        /// <param name="newModelID"></param>
        /// <param name="context"></param>
        private void CopyISODefine(string modelID, string newModelID, BaseConfigEntities context)
        {
            var isoList = context.S_T_ISODefine.Where(c => c.ModeID == modelID).ToList();

            foreach (var iso in isoList)
            {
                var newISO = iso.Clone <S_T_ISODefine>();
                newISO.ID     = FormulaHelper.CreateGuid();
                newISO.ModeID = newModelID;
                context.S_T_ISODefine.Add(newISO);
            }
        }
コード例 #3
0
        /// <summary>
        /// 复制里程碑配置
        /// </summary>
        /// <param name="modelID"></param>
        /// <param name="newModelID"></param>
        /// <param name="context"></param>
        private void CopyMilestone(string modelID, string newModelID, BaseConfigEntities context)
        {
            var milestoneList = context.Set <S_T_MileStone>().Where(c => c.ModeID == modelID).ToList();

            foreach (var milestone in milestoneList)
            {
                var newMilestone = milestone.Clone <S_T_MileStone>();
                newMilestone.ID     = FormulaHelper.CreateGuid();
                newMilestone.ModeID = newModelID;
                context.S_T_MileStone.Add(newMilestone);
            }
        }
コード例 #4
0
        /// <summary>
        /// 复制WBS结构配置
        /// </summary>
        /// <param name="modelID"></param>
        /// <param name="newModelID"></param>
        /// <param name="context"></param>
        private void CopyWBSStructInfo(string modelID, string newModelID, BaseConfigEntities context)
        {
            var structList = context.Set <S_T_WBSStructInfo>().Where(c => c.ModeID == modelID).ToList();

            foreach (var structInfo in structList)
            {
                var newSturctInfo = structInfo.Clone <S_T_WBSStructInfo>();
                newSturctInfo.ID     = FormulaHelper.CreateGuid();
                newSturctInfo.ModeID = newModelID;
                context.S_T_WBSStructInfo.Add(newSturctInfo);
                if (structInfo.S_T_WBSStructRole != null)
                {
                    foreach (var wbsStructRole in structInfo.S_T_WBSStructRole)
                    {
                        var newWBSStructRole = wbsStructRole.Clone <S_T_WBSStructRole>();
                        newWBSStructRole.ID          = FormulaHelper.CreateGuid();
                        newWBSStructRole.WBSStructID = newSturctInfo.ID;
                        context.S_T_WBSStructRole.Add(newWBSStructRole);
                    }
                }
            }
        }
コード例 #5
0
        private void CopyFlowTraceDefine(S_T_FlowTraceDefine rootNode, S_T_FlowTraceDefine newRootNode, BaseConfigEntities context)
        {
            var childNodes = this.S_T_FlowTraceDefine.Where(d => d.ParentID == rootNode.ID).ToList();

            foreach (var node in childNodes)
            {
                var newNode = node.Clone <S_T_FlowTraceDefine>();
                newNode.ID       = FormulaHelper.CreateGuid();
                newNode.ParentID = newRootNode.ID;
                newNode.FullID   = newRootNode.FullID + "." + newNode.ID;
                newNode.ModeID   = newRootNode.ModeID;
                context.Set <S_T_FlowTraceDefine>().Add(newNode);

                if (this.S_T_FlowTraceDefine.Where(d => d.ParentID == node.ID).Count() > 0)
                {
                    CopyFlowTraceDefine(node, newNode, context);
                }
            }
        }
コード例 #6
0
        /// <summary>
        /// 复制空间配置及控件授权
        /// </summary>
        /// <param name="rootSpace"></param>
        /// <param name="newRootSpace"></param>
        /// <param name="context"></param>
        private void CopySpaceDefine(S_T_SpaceDefine rootSpace, S_T_SpaceDefine newRootSpace, BaseConfigEntities context)
        {
            var childSpace = rootSpace.Children;

            foreach (var space in childSpace)
            {
                var newSpace = space.Clone <S_T_SpaceDefine>();
                newSpace.ID       = FormulaHelper.CreateGuid();
                newSpace.ParentID = newRootSpace.ID;
                newSpace.FullID   = newRootSpace.FullID + "." + newSpace.ID;
                newSpace.ModeID   = newRootSpace.ModeID;
                context.Set <S_T_SpaceDefine>().Add(newSpace);

                //空间权限
                var spaceAuth = context.Set <S_T_SpaceAuth>().Where(c => c.SpaceID == space.ID);
                if (spaceAuth != null)
                {
                    foreach (var auth in spaceAuth)
                    {
                        var newAuth = auth.Clone <S_T_SpaceAuth>();
                        newAuth.SpaceID = newSpace.ID;
                        context.Set <S_T_SpaceAuth>().Add(newAuth);
                    }
                }

                if (space.Children != null)
                {
                    CopySpaceDefine(space, newSpace, context);
                }
            }
        }