private string Copy(HttpContext context) { string idStr = context.Request["id"]; long id = Convert.ToInt64(idStr); PermissionGroupInfo model = bllPms.GetPermissionGroup(null, id); string newIdStr = bllPer.GetGUID(TransacType.PermissionGroupAdd); model.GroupID = Convert.ToInt64(newIdStr); model.GroupName = model.GroupName + "—复制"; //权限组权限关系 List <PermissionRelationInfo> listPermissionRelation = bllPms.GetPermissionRelationList(idStr, 0); //权限组权限栏目关系 List <PermissionRelationInfo> listPermissionRelation3 = bllPms.GetPermissionRelationList(idStr, 3); listPermissionRelation.AddRange(listPermissionRelation3); foreach (var item in listPermissionRelation) { item.RelationID = newIdStr; } List <MenuRelationInfo> listMenuRelation = bllMenu.GetMenuRelationList(idStr, 0); foreach (var item in listMenuRelation) { item.RelationID = newIdStr; } BLLTransaction tran = new BLLTransaction(); bool result = bllPer.Add(model, tran); if (!result) { tran.Rollback(); return("复制权限组失败"); } foreach (var item in listPermissionRelation) { if (!bllPer.Add(item, tran)) { tran.Rollback(); return("复制权限组权限失败"); } } foreach (var item in listMenuRelation) { if (!bllPer.Add(item, tran)) { tran.Rollback(); return("复制权限组菜单失败"); } } tran.Commit(); return(result.ToString().ToLower()); }