diversen nav opmerkingen
This commit is contained in:
@@ -13,30 +13,34 @@ dbo.employeehoursInit = function () {
|
||||
} else {
|
||||
dbo.employeehoursModel = {
|
||||
|
||||
employeehours: ko.observableArray( [] ),
|
||||
archive : ko.observable( false ),
|
||||
months : ko.observableArray( [] ),
|
||||
years : ko.observableArray( [] ),
|
||||
hourtypes : ko.observableArray( [] ),
|
||||
employees : ko.observableArray( [] ),
|
||||
selectedYear : ko.observable(),
|
||||
selectedMonth: ko.observable(),
|
||||
busy : false,
|
||||
employeehours : ko.observableArray( [] ),
|
||||
archive : ko.observable( false ),
|
||||
months : ko.observableArray( [] ),
|
||||
years : ko.observableArray( [] ),
|
||||
hourtypes : ko.observableArray( [] ),
|
||||
employees : ko.observableArray( [] ),
|
||||
selectedYear : ko.observable(),
|
||||
selectedMonth : ko.observable(),
|
||||
busy : false,
|
||||
selectedEmployeeID: ko.observable(),
|
||||
|
||||
init: function () {
|
||||
var vm = dbo.employeehoursModel;
|
||||
|
||||
vm.createMonths();
|
||||
vm.createYears();
|
||||
vm.months( dbo.monthArray );
|
||||
vm.years( dbo.years );
|
||||
|
||||
var d = new Date();
|
||||
vm.selectedMonth( d.getMonth() + 1 );
|
||||
vm.selectedYear( d.getFullYear() );
|
||||
vm.selectedMonth( dbo.currentMonth );
|
||||
vm.selectedYear( dbo.currentYear );
|
||||
|
||||
dbo.employeehoursDataService.getHourtypes( function ( data ) {
|
||||
vm.hourtypes( data );
|
||||
dbo.userDataService.getAllUsers( 'F', function ( data ) {
|
||||
vm.employees( data );
|
||||
dbo.userDataService.getUserWithprojects( function ( data ) {
|
||||
vm.employees.removeAll();
|
||||
_.each( data, function ( p ) {
|
||||
vm.employees.push( new vm.Employee( p ) );
|
||||
} );
|
||||
vm.selectedEmployeeID( dbo.currentUser.id )
|
||||
|
||||
vm.refreshEmployeehours();
|
||||
} );
|
||||
@@ -46,12 +50,22 @@ dbo.employeehoursInit = function () {
|
||||
newEmployeehour: function () {
|
||||
var vm = dbo.employeehoursModel;
|
||||
|
||||
var employeeHour = vm.employeehours()[vm.employeehours().length - 1];
|
||||
|
||||
var employeeID = null;
|
||||
if ( !vm.selectedEmployeeID ) {
|
||||
employeeID = employeeHour ? employeeHour.employee_id() : null;
|
||||
} else {
|
||||
employeeID = vm.selectedEmployeeID();
|
||||
}
|
||||
|
||||
var employeehour = {
|
||||
id : 0,
|
||||
employee_id: null,
|
||||
hourdate : null,
|
||||
hourtype_id: null,
|
||||
hours : 0,
|
||||
employee_id: employeeID,
|
||||
hourdate : employeeHour ? employeeHour.hourdate() : null,
|
||||
hourtype_id: employeeHour ? employeeHour.hourtype_id() : 9,
|
||||
project_id : employeeHour ? employeeHour.projectID() : null,
|
||||
hours : employeeHour ? employeeHour.hours() : 0,
|
||||
inEdit : true
|
||||
};
|
||||
|
||||
@@ -66,30 +80,43 @@ dbo.employeehoursInit = function () {
|
||||
vm.refreshHours();
|
||||
},
|
||||
|
||||
saveEmployeehours: function () {
|
||||
var self = this;
|
||||
saveEmployeehours: function ( self = false ) {
|
||||
if ( !self ) self = this;
|
||||
|
||||
if ( !self.employee_id() ) return;
|
||||
if ( !self.hourtype_id() ) return;
|
||||
if ( !self.hourdate() ) return;
|
||||
if ( self.hourType() == 'PROJECTS' && !self.projectID() ) return;
|
||||
|
||||
var submitDATA = {
|
||||
id : self.id,
|
||||
id : self.id(),
|
||||
employee_id: self.employee_id(),
|
||||
hourdate : self.hourdate(),
|
||||
hourtype_id: self.hourtype_id(),
|
||||
hours : self.hours()
|
||||
hours : self.hours(),
|
||||
hourType : self.hourType(),
|
||||
project_id : self.projectID()
|
||||
};
|
||||
|
||||
dbo.employeehoursDataService.saveEmployeehour( submitDATA, function ( data ) {
|
||||
self.id = data.employeehourID;
|
||||
self.id( data.employeehourID );
|
||||
} );
|
||||
},
|
||||
|
||||
editEmployeehour: function () {
|
||||
dbo.employeehoursModel.saveEmployeehours( this );
|
||||
this.inEdit( !this.inEdit() );
|
||||
},
|
||||
|
||||
changeEmployee: function () {
|
||||
var vm = dbo.employeehoursModel;
|
||||
this.projects( vm.setEmployeeProjects( this ) );
|
||||
|
||||
this.projectID( null );
|
||||
|
||||
vm.saveEmployeehours( this );
|
||||
},
|
||||
|
||||
removeEmployeehour: function () {
|
||||
var vm = dbo.employeehoursModel;
|
||||
var self = this;
|
||||
@@ -103,7 +130,7 @@ dbo.employeehoursInit = function () {
|
||||
modalClass: 'modal-warning'
|
||||
}, function ( response ) {
|
||||
if ( response ) {
|
||||
dbo.employeehoursDataService.removeEmployeehour( self.id, function ( data ) {
|
||||
dbo.employeehoursDataService.removeEmployeehour( self.id(), function ( data ) {
|
||||
if ( data.result ) {
|
||||
vm.refreshEmployeehours();
|
||||
} else {
|
||||
@@ -118,58 +145,73 @@ dbo.employeehoursInit = function () {
|
||||
} );
|
||||
},
|
||||
|
||||
createMonths: function () {
|
||||
var vm = dbo.employeehoursModel;
|
||||
|
||||
var months = [
|
||||
{id: 1, monthName: 'januari'},
|
||||
{id: 2, monthName: 'februari'},
|
||||
{id: 3, monthName: 'maart'},
|
||||
{id: 4, monthName: 'april'},
|
||||
{id: 5, monthName: 'mei'},
|
||||
{id: 6, monthName: 'juni'},
|
||||
{id: 7, monthName: 'juli'},
|
||||
{id: 8, monthName: 'augustus'},
|
||||
{id: 9, monthName: 'september'},
|
||||
{id: 10, monthName: 'oktober'},
|
||||
{id: 11, monthName: 'november'},
|
||||
{id: 12, monthName: 'december'},
|
||||
]
|
||||
|
||||
vm.months( months );
|
||||
},
|
||||
|
||||
createYears: function () {
|
||||
var vm = dbo.employeehoursModel;
|
||||
var years = [{id: 2015}, {id: 2016}, {id: 2017}, {id: 2018}];
|
||||
|
||||
vm.years( years );
|
||||
},
|
||||
|
||||
refreshEmployeehours: function () {
|
||||
var vm = dbo.employeehoursModel;
|
||||
|
||||
var employeeID = vm.selectedEmployeeID() || 0;
|
||||
|
||||
vm.employeehours.removeAll();
|
||||
dbo.employeehoursDataService.getEmployeehours( vm.selectedMonth(), vm.selectedYear(), function ( data ) {
|
||||
$.each( data, function ( i, p ) {
|
||||
vm.employeehours.push( new vm.Employeehour( p ) );
|
||||
dbo.employeehoursDataService.getEmployeehours(
|
||||
vm.selectedMonth(), vm.selectedYear(), employeeID, function ( data ) {
|
||||
$.each( data, function ( i, p ) {
|
||||
vm.employeehours.push( new vm.Employeehour( p ) );
|
||||
} );
|
||||
} );
|
||||
} );
|
||||
},
|
||||
|
||||
validateNumber: function ( field ) {
|
||||
this[field]( dbo.helpers.validateNumber( this[field](), true ) );
|
||||
},
|
||||
|
||||
Employee: function ( data ) {
|
||||
var vm = dbo.employeehoursModel;
|
||||
var self = this;
|
||||
|
||||
self.id = data.id;
|
||||
self.fullname = data.fullname;
|
||||
|
||||
self.projecten = ko.observableArray( [] );
|
||||
_.each( data.projectemployees, function ( p ) {
|
||||
self.projecten.push( new vm.Project( p ) );
|
||||
} );
|
||||
},
|
||||
|
||||
Project: function ( data ) {
|
||||
this.projectEmployeeID = data.id;
|
||||
this.projectID = data.project.id;
|
||||
this.project = data.project.projectnumber + ' - ' + data.project.projectname;
|
||||
},
|
||||
|
||||
Employeehour: function ( data ) {
|
||||
var vm = dbo.employeehoursModel;
|
||||
var self = this;
|
||||
|
||||
this.id = data.id;
|
||||
this.employee_id = ko.observable( data.employee_id );
|
||||
this.hourtype_id = ko.observable( data.hourtype_id );
|
||||
this.hourdate = ko.observable( data.hourdate );
|
||||
this.hours = ko.observable( data.hours );
|
||||
this.inEdit = ko.observable( data.inEdit || false );
|
||||
self.id = ko.observable( data.id );
|
||||
self.employee_id = ko.observable( data.employee_id );
|
||||
self.hourtype_id = ko.observable( data.hourtype_id );
|
||||
self.hourdate = ko.observable( data.hourdate );
|
||||
self.hours = ko.observable( data.hours );
|
||||
self.inEdit = ko.observable( data.inEdit || false );
|
||||
self.projectID = ko.observable( data.project_id );
|
||||
self.hourType = ko.pureComputed( function () {
|
||||
return dbo.helpers.findArrayElement( 'id', 'key', this.hourtype_id(), vm.hourtypes() );
|
||||
}, this );
|
||||
|
||||
vm.setEmployeeProjects( self );
|
||||
},
|
||||
|
||||
setEmployeeProjects: function ( self ) {
|
||||
var vm = dbo.employeehoursModel;
|
||||
|
||||
var employeeProjects =
|
||||
dbo.helpers.findArrayElement( 'id', 'projecten', self.employee_id(), vm.employees() )();
|
||||
self.projects = ko.observableArray( [] );
|
||||
_.each( employeeProjects, function ( p ) {
|
||||
self.projects.push( {
|
||||
projectID : p.projectID,
|
||||
projectname: p.project
|
||||
} );
|
||||
} );
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -24,9 +24,11 @@ dbo.monthlyemployeehoursInit = function () {
|
||||
recap : ko.observableArray( [] ),
|
||||
totalPerEmployee : ko.observableArray( [] ),
|
||||
totalEmployeeRevenues : ko.observable(),
|
||||
totalAvailableRevenues : ko.observable(),
|
||||
totalEmployeeHours : ko.observable(),
|
||||
totalEmployeeAvailableHours: ko.observable(),
|
||||
totalBudget : ko.observable(),
|
||||
totalOwnRevenue : ko.observable(),
|
||||
totalCosts : ko.observable(),
|
||||
totalAvailableBudget : ko.observable(),
|
||||
totalSaldo : ko.observable(),
|
||||
@@ -37,12 +39,8 @@ dbo.monthlyemployeehoursInit = function () {
|
||||
var vm = dbo.monthlyEmployeeHoursModel;
|
||||
|
||||
dbo.reportsDataService.getUsedYears( function ( data ) {
|
||||
vm.years.removeAll();
|
||||
$.each( data, function ( i, p ) {
|
||||
vm.years.push( {id: p.year, year: p.year} );
|
||||
} );
|
||||
|
||||
vm.selectedYear( (new Date()).getFullYear() );
|
||||
vm.years( dbo.years )
|
||||
vm.selectedYear( dbo.currentYear );
|
||||
} );
|
||||
|
||||
vm.initModule();
|
||||
@@ -51,11 +49,13 @@ dbo.monthlyemployeehoursInit = function () {
|
||||
initModule: function () {
|
||||
var vm = dbo.monthlyEmployeeHoursModel;
|
||||
vm.totalBudget( 0 );
|
||||
vm.totalOwnRevenue( 0 );
|
||||
vm.totalCosts( 0 );
|
||||
vm.totalAvailableBudget( 0 );
|
||||
vm.totalSaldo( 0 );
|
||||
vm.totalWorkInProgress( 0 );
|
||||
vm.totalEmployeeRevenues( 0 );
|
||||
vm.totalAvailableRevenues(0)
|
||||
vm.totalEmployeeHours( 0 );
|
||||
vm.totalEmployeeAvailableHours( 0 );
|
||||
vm.totalPerEmployee.removeAll();
|
||||
@@ -78,11 +78,13 @@ dbo.monthlyemployeehoursInit = function () {
|
||||
vm.recap.push( new vm.Project( p ) )
|
||||
} );
|
||||
vm.totalBudget( dbo.helpers.thousandSeparator( vm.totalBudget() ) );
|
||||
vm.totalOwnRevenue( dbo.helpers.thousandSeparator( vm.totalOwnRevenue() ) );
|
||||
vm.totalCosts( dbo.helpers.thousandSeparator( vm.totalCosts() ) );
|
||||
vm.totalAvailableBudget( dbo.helpers.thousandSeparator( vm.totalAvailableBudget() ) );
|
||||
vm.totalSaldo( dbo.helpers.thousandSeparator( vm.totalSaldo() ) );
|
||||
vm.totalWorkInProgress( dbo.helpers.thousandSeparator( vm.totalWorkInProgress() ) );
|
||||
vm.totalEmployeeRevenues( dbo.helpers.thousandSeparator( vm.totalEmployeeRevenues() ) );
|
||||
vm.totalAvailableRevenues( dbo.helpers.thousandSeparator( vm.totalAvailableRevenues() ) );
|
||||
vm.totalEmployeeHours( dbo.helpers.thousandSeparator( vm.totalEmployeeHours() ) );
|
||||
_.each( vm.totalPerEmployee(), function ( p ) {
|
||||
p.totalRevenue( dbo.helpers.thousandSeparator( p.totalRevenue() ) );
|
||||
@@ -286,8 +288,10 @@ dbo.monthlyemployeehoursInit = function () {
|
||||
self.revenues = dbo.helpers.thousandSeparator( data.budget );
|
||||
self.hours = data.hours;
|
||||
self.totalEmpoloyeeRevenues = 0;
|
||||
self.availableRevenue = data.own_revenue - data.projectEuros;
|
||||
self.externCosts = dbo.helpers.thousandSeparator( data.projectcosts );
|
||||
self.budget = dbo.helpers.thousandSeparator( data.budget );
|
||||
self.ownRevenue = dbo.helpers.thousandSeparator( data.own_revenue );
|
||||
self.budgetAvailable = dbo.helpers.thousandSeparator( data.budgetAvailable );
|
||||
self.saldo = dbo.helpers.thousandSeparator( data.saldo );
|
||||
|
||||
@@ -300,10 +304,12 @@ dbo.monthlyemployeehoursInit = function () {
|
||||
self.totalEmployeeRevenues = data.projectEuros;
|
||||
self.totalEmployeeHours = data.projectHours;
|
||||
self.hoursAvailable = data.hoursAvailable;
|
||||
vm.totalAvailableRevenues( vm.totalAvailableRevenues() + self.availableRevenue );
|
||||
vm.totalEmployeeRevenues( vm.totalEmployeeRevenues() + Number( self.totalEmployeeRevenues ) );
|
||||
vm.totalEmployeeHours( vm.totalEmployeeHours() + Number( self.totalEmployeeHours ) );
|
||||
vm.totalEmployeeAvailableHours( vm.totalEmployeeAvailableHours() + Number( self.hoursAvailable ) );
|
||||
self.totalEmployeeRevenues = dbo.helpers.thousandSeparator( self.totalEmployeeRevenues );
|
||||
self.availableRevenue = dbo.helpers.thousandSeparator( self.availableRevenue );
|
||||
self.workInProgress = dbo.helpers.thousandSeparator( data.workInProgress );
|
||||
self.hoursAvailable = data.hoursAvailable;
|
||||
|
||||
@@ -319,8 +325,9 @@ dbo.monthlyemployeehoursInit = function () {
|
||||
var vm = dbo.monthlyEmployeeHoursModel;
|
||||
|
||||
vm.totalBudget( vm.totalBudget() + Number( data.budget ) );
|
||||
vm.totalOwnRevenue( vm.totalOwnRevenue() + Number( data.own_revenue ) );
|
||||
vm.totalCosts( vm.totalCosts() + Number( data.projectcosts ) );
|
||||
vm.totalAvailableBudget( vm.totalAvailableBudget() + Number( data.budgetAvailable ) );
|
||||
vm.totalAvailableBudget( vm.totalAvailableBudget() + Number( data.ownRevenueAvailable ) );
|
||||
vm.totalSaldo( vm.totalSaldo() + Number( data.saldo ) );
|
||||
vm.totalWorkInProgress( vm.totalWorkInProgress() + Number( data.workInProgress ) );
|
||||
|
||||
|
||||
Reference in New Issue
Block a user