From bda86627030288087d3baf622fe665665b6f24e6 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 8 May 2017 18:18:12 +0530 Subject: [PATCH] Added Bonus --- Day-2/Employee.js | 4 +++- Day-2/Employee.ts | 7 +++++-- Day-2/salary-updater.js | 2 ++ Day-2/salary-updater.ts | 4 +++- Day-2/salary-upgrader.js | 11 ++++++++++- Day-2/salary-upgrader.ts | 12 ++++++++++-- 6 files changed, 33 insertions(+), 7 deletions(-) diff --git a/Day-2/Employee.js b/Day-2/Employee.js index f55454a..098290a 100644 --- a/Day-2/Employee.js +++ b/Day-2/Employee.js @@ -5,9 +5,11 @@ var Employee = (function () { this.id = id; this.name = name; this.salary = salary; + this.rating = 0; + this.bonus = 0; } Employee.prototype.printInfo = function () { - console.log(this.name + " gets " + this.salary); + console.log(this.name + " gets " + this.salary + " and bonus " + this.bonus + " with rating " + this.rating); }; Employee.prototype.updateSalary = function (newSalary) { this.salary = newSalary; diff --git a/Day-2/Employee.ts b/Day-2/Employee.ts index ee0002f..ec181c9 100644 --- a/Day-2/Employee.ts +++ b/Day-2/Employee.ts @@ -2,13 +2,17 @@ export class Employee { id: number; name: string; salary: number; + rating: number; + bonus: number; constructor(id: number, name: string, salary: number) { this.id = id; this.name = name; this.salary = salary; + this.rating = 0; + this.bonus = 0; } printInfo() { - console.log(`${this.name} gets ${this.salary}`); + console.log(`${this.name} gets ${this.salary} and bonus ${this.bonus} with rating ${this.rating}`); } updateSalary(newSalary: number) { this.salary = newSalary; @@ -17,4 +21,3 @@ export class Employee { return this.salary; } } - diff --git a/Day-2/salary-updater.js b/Day-2/salary-updater.js index a3a77b9..6c246f6 100644 --- a/Day-2/salary-updater.js +++ b/Day-2/salary-updater.js @@ -8,3 +8,5 @@ org.printEmployeesInfo(); var salaryUpgrader = new salary_upgrader_1.SalaryUpgrader(); salaryUpgrader.incrementSalary(10, org.getEmployeeList()); org.printEmployeesInfo(); +salaryUpgrader.addBonus(org.getEmployeeList()); +org.printEmployeesInfo(); diff --git a/Day-2/salary-updater.ts b/Day-2/salary-updater.ts index 159e761..dd27d8b 100644 --- a/Day-2/salary-updater.ts +++ b/Day-2/salary-updater.ts @@ -7,4 +7,6 @@ org.printEmployeesInfo(); let salaryUpgrader: SalaryUpgrader = new SalaryUpgrader(); salaryUpgrader.incrementSalary(10, org.getEmployeeList()); org.printEmployeesInfo(); - +salaryUpgrader.addBonus(org.getEmployeeList()); +org.printEmployeesInfo(); + \ No newline at end of file diff --git a/Day-2/salary-upgrader.js b/Day-2/salary-upgrader.js index cc82f12..098c6d6 100644 --- a/Day-2/salary-upgrader.js +++ b/Day-2/salary-upgrader.js @@ -10,7 +10,16 @@ var SalaryUpgrader = (function () { emp.updateSalary(newSalary); }); }; - SalaryUpgrader.prototype.addBonus = function () { + SalaryUpgrader.prototype.rateEmployee = function (empList) { + empList.map(function (emp, i) { + emp.rating = (i + 1) / 2; + }); + }; + SalaryUpgrader.prototype.addBonus = function (empList) { + this.rateEmployee(empList); + empList.map(function (emp, i) { + emp.rating >= 3 ? emp.bonus = (i / 2) * 1000 : emp.bonus = 0; + }); }; return SalaryUpgrader; }()); diff --git a/Day-2/salary-upgrader.ts b/Day-2/salary-upgrader.ts index 7d66855..fc73b94 100644 --- a/Day-2/salary-upgrader.ts +++ b/Day-2/salary-upgrader.ts @@ -10,7 +10,15 @@ export class SalaryUpgrader { emp.updateSalary(newSalary); }) } - addBonus() { - + rateEmployee(empList){ + empList.map((emp,i) => { + emp.rating = (i+1)/2; + }) + } + addBonus(empList: Employee[]) { + this.rateEmployee(empList); + empList.map((emp,i) => { + emp.rating >= 3 ? emp.bonus = (i/2) * 1000 : emp.bonus = 0; + }) } } \ No newline at end of file