Skip to content

Commit

Permalink
Merge pull request #24 from ALM-Rangers/jessehouwing/bugsBehavior
Browse files Browse the repository at this point in the history
Apply Bugs behavior board settings.
  • Loading branch information
jessehouwing committed Jul 8, 2019
2 parents 04dbab9 + 4ce3266 commit 97b14b5
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
13 changes: 12 additions & 1 deletion src/Shared/ServicesClient.ts
Expand Up @@ -301,7 +301,8 @@ export class ServicesClient {
teamName: context.team,
version: "1.0",
backlogSettings: new Array<Models.IBacklogBoardSettings>(),
context: context
context: context,
teamSettings: null
};

let boardCards: WorkContracts.BoardCardSettings[] = new Array();
Expand All @@ -313,6 +314,11 @@ export class ServicesClient {
return b.rank - a.rank;
});
try {
let teams = await workClient.getTeamSettings(context);
settings.teamSettings = {
bugsBehavior: teams.bugsBehavior
};

for (let backlogIndex = 0; backlogIndex < allBacklogs.length; backlogIndex++) {
let backlog = allBacklogs[backlogIndex];
console.log("Getting settings for board " + backlog.name + " (" + backlog.id + ") of team " + context.team);
Expand All @@ -337,6 +343,7 @@ export class ServicesClient {
boardId: board.id,
fields: board !== null ? board.fields : null
};

settings.backlogSettings.push(boardSettings);
}
}
Expand All @@ -358,12 +365,16 @@ export class ServicesClient {
console.log("Settings to apply");
console.log(this._sourceTeamSettings);
try {
let bugSettings: any = { bugsBehavior: this._sourceTeamSettings.teamSettings.bugsBehavior };
await workClient.updateTeamSettings(bugSettings, context);

for (let backlogIndex = 0; backlogIndex < this._sourceTeamSettings.backlogSettings.length; backlogIndex++) {
let backlogSettingToApply = this._sourceTeamSettings.backlogSettings[backlogIndex];
if (selectedBacklogLevels.indexOf(backlogSettingToApply.boardName) < 0) {
continue;
}
console.log(`Processing backlog [${backlogSettingToApply.boardName}]`);

let cardSettings = await workClient.updateBoardCardSettings(backlogSettingToApply.cardSettings, context, backlogSettingToApply.boardName);
let cardRules = await workClient.updateBoardCardRuleSettings(backlogSettingToApply.cardRules, context, backlogSettingToApply.boardName);
let columnsToApply: WorkContracts.BoardColumn[] = new Array();
Expand Down
5 changes: 5 additions & 0 deletions src/Views/CopySettings/Models/CopySettingsInterfaces.ts
Expand Up @@ -24,12 +24,17 @@ export interface IBacklogBoardSettings {
fields: WorkContracts.BoardFields;
}

export interface ITeamSettings {
bugsBehavior: WorkContracts.BugsBehavior;
}

export interface IBoardSettings {
version: string;
name: string;
teamName: string;
context: CoreContracts.TeamContext;
backlogSettings: IBacklogBoardSettings[];
teamSettings: ITeamSettings;
}

export interface IColumnMapping {
Expand Down

0 comments on commit 97b14b5

Please sign in to comment.