Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve(input){
- const n= Number(input.shift());
- Assigneetasks={};
- for (let i = 0; i <n; i++) {
- const[assignee,taskId,title,status,estimatedPoints]= input[i].split(':');
- if(!Assigneetasks[assignee]){
- Assigneetasks[assignee]=[{taskId,title,status,estimatedPoints}];
- }
- else{
- Assigneetasks[assignee].push({taskId,title,status,estimatedPoints});
- }
- }
- for (let j = 0; j < n; j++) {
- input.shift();
- }
- let CmdLine='';
- //CmdLine= input.shift();
- for(let p=0; p<input.length; p++){
- const [Cmd,assignee,taskId,title,status,estimatedPoints]=input[p].split(':');
- switch(Cmd){
- case'Add New':
- //let assignee=Alltasks.find(t=> t.assignee== assignee);
- if(! Assigneetasks[assignee]){
- console.log(`Assignee ${assignee} does not exist on the board!`)
- }
- else{
- Assigneetasks[assignee].push({taskId,title,status,estimatedPoints});
- }
- break;
- case 'Change Status':
- let newStatus=title;
- const Alltasks= Assigneetasks[assignee];
- let taskp= '';
- if(Alltasks){
- taskp= Alltasks.find(t=> t.taskId== taskId);
- if(!taskp) {
- console.log(`Task with ID ${taskId} does not exist for ${assignee}!`);
- }
- else {
- taskp.status = newStatus;
- }
- }
- else if(!Assigneetasks[assignee]){
- console.log(`Assignee ${assignee} does not exist on the board!`);
- }
- break;
- case'Remove Task':
- let index= Number(taskId);
- const Alltasks1= Assigneetasks[assignee];
- if(!Alltasks1){
- console.log(`Assignee ${assignee} does not exist on the board!`)
- }
- else{
- if(index <0 || index >Number(Assigneetasks[assignee].length-1)){
- console.log('Index is out of range!');
- }
- else{
- Alltasks1.splice(index,1);
- }
- }
- break;
- }
- //CmdLine= input.shift();
- }
- let ArrTasks={};
- ArrTasks['ToDo']=0;
- ArrTasks['In Progress']=0;
- ArrTasks['Code Review']=0;
- ArrTasks['Done']=0;
- for (const asignee in Assigneetasks) {
- let Asignee= Assigneetasks[asignee];
- for (const t of Asignee) {
- ArrTasks[t.status]+=Number(t.estimatedPoints);
- }
- }
- console.log(`ToDo: ${ArrTasks['ToDo']}pts`);
- console.log(`In Progress: ${ArrTasks['In Progress']}pts`);
- console.log(`Code Review: ${ArrTasks['Code Review']}pts`);
- console.log(`Done Points: ${ArrTasks['Done']}pts`);
- let sumOtherPoints=Number(ArrTasks['ToDo'])+Number(ArrTasks['In Progress'])+Number(ArrTasks['Code Review']);
- if(Number(ArrTasks['Done'] )>=sumOtherPoints){
- console.log(`Sprint was successful!`);
- }
- else{
- console.log(`Sprint was unsuccessful...`);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement