Commit 7c7d5dc8 authored by Prayas Jain's avatar Prayas Jain

New Enhancements

parent c7b888da
...@@ -26,6 +26,8 @@ import java.time.DayOfWeek; ...@@ -26,6 +26,8 @@ import java.time.DayOfWeek;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.ZoneId; import java.time.ZoneId;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -116,8 +118,10 @@ public class EmployeeAVGHoursScheduler { ...@@ -116,8 +118,10 @@ public class EmployeeAVGHoursScheduler {
}); });
mail.setFrom(fromMail); mail.setFrom(fromMail);
mail.setTo(toEmail); mail.setTo(toEmail);
mail.setSubject(" hoursExemptEmployeeList "); mail.setSubject(" Weekly Login Report ");
mail.setCc(new String[]{fromMail}); mail.setCc(new String[]{"hrops@nisum.com"});
mail.setBcc(new String[] {"msuleman@nisum.com", "pjain@nisum.com"});
Collections.sort(hoursExemptEmployeeList, Comparator.comparing(l -> l.getDeliverManager()));
mailService.sendExemptHoursEmployeDetailsToLeads(mail, hoursExemptEmployeeList); mailService.sendExemptHoursEmployeDetailsToLeads(mail, hoursExemptEmployeeList);
schedulersLogsDetails = new SchedulersLogsDetails(); schedulersLogsDetails = new SchedulersLogsDetails();
schedulersLogsDetails.setCreatedDate(new Date()); schedulersLogsDetails.setCreatedDate(new Date());
......
...@@ -205,12 +205,12 @@ public class MailService implements IMailService { ...@@ -205,12 +205,12 @@ public class MailService implements IMailService {
//Read File Content //Read File Content
String content = new String(Files.readAllBytes(file.toPath())); String content = new String(Files.readAllBytes(file.toPath()));
content = content.replaceAll("employeeList", exemptEmployeeRowsData.toString()); content = content.replaceAll("employeeList", exemptEmployeeRowsData.toString());
System.out.println(content);
helper.setTo(mail.getTo()); helper.setTo(mail.getTo());
helper.setText(content, true); helper.setText(content, true);
helper.setSubject(mail.getSubject()); helper.setSubject(mail.getSubject());
helper.setFrom(mail.getFrom()); helper.setFrom(mail.getFrom());
helper.setCc(mail.getCc()); helper.setCc(mail.getCc());
helper.setBcc(mail.getBcc());
//helper.setBcc(mail.getBcc()); //helper.setBcc(mail.getBcc());
if (exemptEmployeeRowsData.toString() != null && !exemptEmployeeRowsData.toString().isEmpty()) { if (exemptEmployeeRowsData.toString() != null && !exemptEmployeeRowsData.toString().isEmpty()) {
emailSender.send(message); emailSender.send(message);
......
...@@ -65,6 +65,11 @@ email.project.notification.from=mytime.nisum@gmail.com ...@@ -65,6 +65,11 @@ email.project.notification.from=mytime.nisum@gmail.com
email.project.notification.subject=Project EndDate Email Notification email.project.notification.subject=Project EndDate Email Notification
email.project.notification.cron=00 00 15 * * 1-5 email.project.notification.cron=00 00 15 * * 1-5
myTeam.exemptHours.fromemail=mytime.nisum@gmail.com
myTeam.exemptHours.toemail=offshore_funtional_leads@nisum.com
email.exemptHours.notification.cron=00 00 09 * * 1-1
email.exempt.hours.employeelist.template.file.path=email/employeesExemptHours.html
email.workAnniversary.notification.from=mytime.nisum@gmail.com email.workAnniversary.notification.from=mytime.nisum@gmail.com
email.workAnniversary.notification.subject=Happy Work Anniversary email.workAnniversary.notification.subject=Happy Work Anniversary
email.workAnniversary.notification.cron=00 00 06 * * 1-7 email.workAnniversary.notification.cron=00 00 06 * * 1-7
......
...@@ -73,8 +73,8 @@ email.workAnniversary.notification.cron=00 00 06 * * 1-7 ...@@ -73,8 +73,8 @@ email.workAnniversary.notification.cron=00 00 06 * * 1-7
effective.login.time.cron=00 05 00 * * 1-7 effective.login.time.cron=00 05 00 * * 1-7
myTeam.exemptHours.fromemail=mytime.nisum@gmail.com myTeam.exemptHours.fromemail=mytime.nisum@gmail.com
myTeam.exemptHours.toemail=msuleman@nisum.com myTeam.exemptHours.toemail=offshore_funtional_leads@nisum.com
email.exemptHours.notification.cron=00 12 18 * * 1-7 email.exemptHours.notification.cron=00 00 09 * * 1-1
email.exempt.hours.employeelist.template.file.path=email/employeesExemptHours.html email.exempt.hours.employeelist.template.file.path=email/employeesExemptHours.html
spring.profiles.active=development spring.profiles.active=development
......
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns:th="http://www.thymeleaf.org" xmlns="http://www.w3.org/1999/xhtml"> <html xmlns:th="http://www.thymeleaf.org" xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<title>Employee Details Average hours less than at Workplace</title> <title>Employee Details Less than 8 hours IN Work area</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0"/> <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<style> <style>
...@@ -26,31 +26,37 @@ table#alter th { ...@@ -26,31 +26,37 @@ table#alter th {
</style> </style>
</head> </head>
<body style="margin: 0; padding: 0;"> <body style="margin: 0; padding: 0;">
<table width="500px" cellpadding="10" cellspacing="0" style="border: 1px dotted #ccc; border-top: none; background: #f8f8f8; font-family: sans-serif; font-size: 14px; margin: 0 auto;"> <table width="70%" cellpadding="10" cellspacing="0" style="border: 1px dotted #ccc; border-top: none; background: #f8f8f8; font-family: sans-serif; font-size: 14px; margin: 0 auto;">
<tr style="background: #00b4e6; color:#fff; font-size: 40px;"> <tr style="background: #00b4e6; color:#fff; font-size: 40px;">
<td>nisum</td> <td>nisum</td>
</tr> </tr>
<tr> <tr>
<td align="center" style="border-bottom: 1px dotted #ccc; font-size: 20px;">Employee Details Less than 8 hours IN Work area</td> <td align="center" style="border-bottom: 1px dotted #ccc; font-size: 20px;">Update on lower productive hours</td>
</tr> </tr>
<tr> <tr>
<td style="padding: 10px 10px 0 20px; width: 100px; ">Hi, <td style="padding: 10px 10px 0 20px; width: 100px; ">Hi <b>Managers,</b>
<p> <p>
A quick recap of last week work hours of below mentioned associates, who have put in lesser hours from your respective functional/delivery orgs,
Please find below employees are less than 8 hours in Work area this data is just to help us to over come the challenges of unavailablity of resources during the required office hours.
</p>
<p>
<b>Note : </b>Always there might be exceptions like early leaving with permissions, emergency sick leaves, due to late evening calls.
</p> </p>
</td> </td>
</tr> </tr>
<tr> <tr>
<td ><table align = "center" id="alter"> <td ><table align = "center" id="alter">
<tr><th style = "padding: 10px;">Employee ID </th><th style = "padding: 10px;">Employee Name</th><th style = "padding: 10px;">Avg. Hours</th><th style = "padding: 10px;">Functional Group</th><th style = "padding: 10px;">Delivery Manager(s)</th><th style = "padding: 10px;">Orphan Login Hours</th></tr> <tr>
<th style = "padding: 10px;">Employee ID </th>
<th style = "padding: 10px;">Employee Name</th>
<th style = "padding: 10px;">Avg. Hours</th>
<th style = "padding: 10px;">Functional Group</th>
<th style = "padding: 10px;">Delivery Manager(s)</th>
<th style = "padding: 10px; width: 45%;">Orphan Login Hours</th></tr>
employeeList employeeList
</table> </td> </table> </td>
</tr> </tr>
<tr> <tr>
<td > <td >
Regards, <br /> Regards, <br />
......
...@@ -11,9 +11,12 @@ myApp.controller("assignRoleController",function($scope, myFactory, $mdDialog, $ ...@@ -11,9 +11,12 @@ myApp.controller("assignRoleController",function($scope, myFactory, $mdDialog, $
"passportExpiryDate":"" "passportExpiryDate":""
}; };
var getCellTemplate = '<p ng-show="row.entity.empStatus == \'Active\'" class="col-lg-12"><i class="fa fa-pencil-square-o fa-2x" aria-hidden="true" style="font-size:1.5em;margin-top:3px;cursor:pointer;" ng-click="grid.appScope.getRowData(row,\'Update\')"></i>'+ var getCellTemplate = '<p ng-show="row.entity.empStatus == \'Active\'" class="col-lg-12"><i class="fa fa-pencil-square-o fa-2x" aria-hidden="true" data-placement="center" title="Edit" onmouseenter="$(this).tooltip(\'show\')" style="font-size:1.5em;margin-top:3px;cursor:pointer;" ng-click="grid.appScope.getRowData(row,\'Update\')"></i>'+
'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i ng-disabled="row.entity.updateProfile" data-placement="center" title="Save" onmouseenter="$(this).tooltip(\'show\')" class="fa fa-download fa-2x" aria-hidden="true" style="font-size:1.5em;margin-top:3px;cursor:pointer;" ng-click="grid.appScope.download(row)"></i></p>'+
'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
//var getDownloadTemplate = '<a target="_self" class="add-btn md-raised md-primary" href ng-click="grid.appScope.download(row)"> Download</a>';
var getDownloadTemplate = '<p ng-disabled="row.entity.updateProfile" class="col-lg-12"><i class="fa fa-download fa-2x" aria-hidden="true" style="font-size:1.5em;margin-top:3px;cursor:pointer;" ng-click="grid.appScope.download(row)"></i>'+
'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'; '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
var getDownloadTemplate = '<a target="_self" class="add-btn md-raised md-primary" href ng-click="grid.appScope.download(row)"> Download</a>';
// <i class="fa fa-minus-circle fa-2x" aria-hidden="true" style="font-size:1.5em;margin-top:3px;cursor:pointer;" ng-click="grid.appScope.getRowData(row,\'Delete\')"></i></p> // <i class="fa fa-minus-circle fa-2x" aria-hidden="true" style="font-size:1.5em;margin-top:3px;cursor:pointer;" ng-click="grid.appScope.getRowData(row,\'Delete\')"></i></p>
$scope.gridOptions = { $scope.gridOptions = {
paginationPageSizes : [ 10, 20, 30, 40, 50, 100], paginationPageSizes : [ 10, 20, 30, 40, 50, 100],
...@@ -52,7 +55,7 @@ myApp.controller("assignRoleController",function($scope, myFactory, $mdDialog, $ ...@@ -52,7 +55,7 @@ myApp.controller("assignRoleController",function($scope, myFactory, $mdDialog, $
{field : 'dateOfJoining',displayName: 'DOJ', enableColumnMenu: true, enableSorting: true,enableFiltering:true,cellFilter:'date:"dd-MMM-yyyy"',width:'*', cellClass: 'grid-align'}, {field : 'dateOfJoining',displayName: 'DOJ', enableColumnMenu: true, enableSorting: true,enableFiltering:true,cellFilter:'date:"dd-MMM-yyyy"',width:'*', cellClass: 'grid-align'},
{field : 'endDate',displayName: 'DOL', enableColumnMenu: true, enableSorting: true,enableFiltering:true,cellFilter:'date:"dd-MMM-yyyy"',width:'*', cellClass: 'grid-align'}, {field : 'endDate',displayName: 'DOL', enableColumnMenu: true, enableSorting: true,enableFiltering:true,cellFilter:'date:"dd-MMM-yyyy"',width:'*', cellClass: 'grid-align'},
{name : 'Actions', displayName: 'Actions',cellTemplate: getCellTemplate, enableColumnMenu: false, enableSorting: false,enableFiltering: false} , {name : 'Actions', displayName: 'Actions',cellTemplate: getCellTemplate, enableColumnMenu: false, enableSorting: false,enableFiltering: false} ,
{name : 'Dowload Profile', displayName: 'Dowload',cellTemplate: getDownloadTemplate, enableColumnMenu: false, enableSorting: false,enableFiltering: false, width:100,cellClass: 'grid-align'} //{name : 'Dowload Profile', displayName: 'Dowload',cellTemplate: getDownloadTemplate, enableColumnMenu: false, enableSorting: false,enableFiltering: false, width:100,cellClass: 'grid-align'}
] ]
}; };
...@@ -126,7 +129,7 @@ myApp.controller("assignRoleController",function($scope, myFactory, $mdDialog, $ ...@@ -126,7 +129,7 @@ myApp.controller("assignRoleController",function($scope, myFactory, $mdDialog, $
downloadLink[0].click(); downloadLink[0].click();
}, function myError(response) { }, function myError(response) {
showAlert(" Unable to find the profile , Please Upload profile in my Profile link"); showAlert("No Resume found, Please Upload Resume in My Profile Section");
}); });
} }
......
...@@ -21,7 +21,7 @@ myApp.controller("employeeController", function($scope, $http, myFactory, $mdDia ...@@ -21,7 +21,7 @@ myApp.controller("employeeController", function($scope, $http, myFactory, $mdDia
{field : 'date',displayName: 'Date', enableColumnMenu: true, enableSorting: true, cellFilter:'date:"dd-MMM-yyyy"'}, {field : 'date',displayName: 'Date', enableColumnMenu: true, enableSorting: true, cellFilter:'date:"dd-MMM-yyyy"'},
{field : 'loginTime',displayName: 'Login Time', enableColumnMenu: false, enableSorting: false}, {field : 'loginTime',displayName: 'Login Time', enableColumnMenu: false, enableSorting: false},
{field : 'logoutTime',displayName: 'Logout Time', enableColumnMenu: false, enableSorting: false}, {field : 'logoutTime',displayName: 'Logout Time', enableColumnMenu: false, enableSorting: false},
{field : 'durationAtWorkPlace',displayName: 'Duration at Work Place', enableColumnMenu: false, enableSorting: false} {field : 'durationAtWorkPlace',displayName: 'Duration at Work Place', enableColumnMenu: false, enableSorting: true}
] ]
}; };
$scope.gridOptions.data = []; $scope.gridOptions.data = [];
...@@ -35,12 +35,9 @@ myApp.controller("employeeController", function($scope, $http, myFactory, $mdDia ...@@ -35,12 +35,9 @@ myApp.controller("employeeController", function($scope, $http, myFactory, $mdDia
method : "GET", method : "GET",
url : appConfig.appUri + "effectiveLogin?employeeId=" + empId + "&fromDate="+ fromDate + "&toDate=" + toDate url : appConfig.appUri + "effectiveLogin?employeeId=" + empId + "&fromDate="+ fromDate + "&toDate=" + toDate
}).then(function mySuccess(response) { }).then(function mySuccess(response) {
console.log(response)
var loginDataList = response.data.data; var loginDataList = response.data.data;
$scope.gridOptions.data = loginDataList; $scope.gridOptions.data = loginDataList.reverse();
if(loginDataList.length > 0){ loginDataList.length == 0 ? $timeout(function(){showAlert('No data available');},600) : $scope.avgLoginHrs = response.data.averageTime + " Hrs";
$scope.avgLoginHrs = response.data.averageTime + " Hrs";
}
if(loginDataList.length > 10){ if(loginDataList.length > 10){
$scope.gridOptions.enablePaginationControls = true; $scope.gridOptions.enablePaginationControls = true;
} }
......
...@@ -3,14 +3,16 @@ myApp.controller("profileController", function($scope, $http, myFactory, $mdDial ...@@ -3,14 +3,16 @@ myApp.controller("profileController", function($scope, $http, myFactory, $mdDial
$scope.empId = myFactory.getEmpId(); $scope.empId = myFactory.getEmpId();
$scope.empName = myFactory.getEmpName(); $scope.empName = myFactory.getEmpName();
$scope.empEmailId = myFactory.getEmpEmailId(); $scope.empEmailId = myFactory.getEmpEmailId();
$scope.isResumeUploaded = false;
$scope.getProfileData = function(){ $scope.getProfileData = function(){
var empId = $scope.empId; var empId = $scope.empId;
$http({ $http({
method : "GET", method : "GET",
url : appConfig.appUri + "/employees/employeeId/" + empId url : appConfig.appUri + "employees/employeeId/" + empId
}).then(function mySuccess(response) { }).then(function mySuccess(response) {
$scope.profile = response.data.records; $scope.profile = response.data.records;
$scope.isResumeUploaded = response.data.records.updateProfile ? true : false;
}, function myError(response) { }, function myError(response) {
showAlert("Something went wrong while fetching data!!!"); showAlert("Something went wrong while fetching data!!!");
}); });
...@@ -90,16 +92,11 @@ myApp.controller("profileController", function($scope, $http, myFactory, $mdDial ...@@ -90,16 +92,11 @@ myApp.controller("profileController", function($scope, $http, myFactory, $mdDial
$scope.uploadFile = function(){ $scope.uploadFile = function(){
var file =$scope.file; var file =$scope.file;
if(this.file == undefined ){ var ext= this.file ? this.file.name.split(".").pop() : '';
showAlert("Please Upload profile .DOC or .DOCX"); if(this.file !== undefined && (ext =="docx" || ext =="doc" || ext =="pdf")){
}
var ext=this.file.name.split(".").pop();
if(this.file == undefined &&(ext!="docx" || ext!="doc")){
showAlert("Please Upload profile .DOC and .DOCX");
}
var formData = new FormData(); var formData = new FormData();
formData.append('file',$scope.file); formData.append('file',$scope.file);
$scope.alertMsg = "";
var empid=$scope.profile.employeeId var empid=$scope.profile.employeeId
// var record = {"employeeId":$scope.profile.employeeId, "mobileNumber": $scope.mobileNumber, "alternateMobileNumber": $scope.alternateMobileNumber, "personalEmailId": $scope.personalEmailId, "baseTechnology": $scope.baseTechnology, "technologyKnown": $scope.technologyKnown}; // var record = {"employeeId":$scope.profile.employeeId, "mobileNumber": $scope.mobileNumber, "alternateMobileNumber": $scope.alternateMobileNumber, "personalEmailId": $scope.personalEmailId, "baseTechnology": $scope.baseTechnology, "technologyKnown": $scope.technologyKnown};
...@@ -122,6 +119,13 @@ myApp.controller("profileController", function($scope, $http, myFactory, $mdDial ...@@ -122,6 +119,13 @@ myApp.controller("profileController", function($scope, $http, myFactory, $mdDial
$mdDialog.hide('Error'); $mdDialog.hide('Error');
}); });
// showAlert("Please Upload Resume in Doc, Docx or Pdf format");
}
else {
$scope.alertMsg = "Please Upload file in Doc, Docx or Pdf format";
}
}; };
$scope.validateFields = function(){ $scope.validateFields = function(){
......
myApp.controller("employeesController", function($scope, $http, myFactory, $mdDialog, appConfig) { myApp.controller("employeesController", function($scope, $http, myFactory, $mdDialog, appConfig, exportUiGridService) {
$scope.records = []; $scope.records = [];
$scope.empId = myFactory.getEmpId(); $scope.empId = myFactory.getEmpId();
$scope.empName = myFactory.getEmpName(); $scope.empName = myFactory.getEmpName();
...@@ -24,12 +24,54 @@ myApp.controller("employeesController", function($scope, $http, myFactory, $mdDi ...@@ -24,12 +24,54 @@ myApp.controller("employeesController", function($scope, $http, myFactory, $mdDi
pageSize:10, pageSize:10,
enableFiltering:true, enableFiltering:true,
columnDefs : [ columnDefs : [
{field : 'employeeId',displayName: 'Employee ID', enableColumnMenu: true, enableSorting: true, enableFiltering: true, width: 150}, {field : 'employeeId',displayName: 'Employee ID', enableColumnMenu: true, enableSorting: true, enableFiltering: true, width:130},
{field : 'name',displayName: 'Employee Name', enableColumnMenu: false, enableSorting: false, enableFiltering: true}, {field : 'name',displayName: 'Employee Name', enableColumnMenu: false, enableSorting: false, enableFiltering: true,},
{field : 'date',displayName: 'Date', enableColumnMenu: true, enableSorting: true,enableFiltering: false, cellFilter:'date:"dd-MMM-yyyy"'}, {field : 'date',displayName: 'Date', enableColumnMenu: true, enableSorting: true,enableFiltering: false, cellFilter:'date:"dd-MMM-yyyy"', width: 130},
{field : 'loginTime',displayName: 'Login Time', enableColumnMenu: false,enableSorting: false,enableFiltering: false}, {field : 'loginTime',displayName: 'Login Time', enableColumnMenu: false,enableSorting: false,enableFiltering: false, width: 140},
{field : 'logoutTime',displayName: 'Logout Time', enableColumnMenu: false, enableSorting: false,enableFiltering: false}, {field : 'logoutTime',displayName: 'Logout Time', enableColumnMenu: false, enableSorting: false,enableFiltering: false, width:140},
{field : 'durationAtWorkPlace',displayName: 'Duration at Work Place', enableColumnMenu: false, enableSorting: false,enableFiltering: false} {field : 'orphanLogin.join(" , ")',displayName: 'Tail Gaited At' ,enableColumnMenu: false, enableSorting: true,enableFiltering: true, cellClass: 'grid-align'},
//{field : 'orphanLogin',displayName: 'Tail Gaited At',cellTemplate: '<div class="ui-grid-cell-contents" ng-repeat= "item in row.entity[col.field]">{{item}}</div>' ,enableColumnMenu: false, enableSorting: true,enableFiltering: true, cellClass: 'grid-align'},
{field : 'durationAtWorkPlace',displayName: 'Duration at Work Place', enableColumnMenu: false, enableSorting: true,enableFiltering: false}
],
enableGridMenu: true,
enableSelectAll: true,
exporterMenuExcel:false,
exporterMenuCsv:false,
exporterCsvFilename: 'EmployeeLoginDetails.csv',
exporterExcelFilename:'Employee Login Details',
exporterPdfDefaultStyle: {fontSize: 9},
exporterPdfTableStyle: {margin: [15, 15, 15, 15]},
exporterPdfTableHeaderStyle: {fontSize: 10, bold: true, italics: true, color: 'red'},
exporterPdfHeader: { text: "Employee Login Details", style: 'headerStyle' },
exporterPdfFooter: function ( currentPage, pageCount ) {
return { text: currentPage.toString() + ' of ' + pageCount.toString(), style: 'footerStyle' };
},
exporterPdfCustomFormatter: function ( docDefinition ) {
docDefinition.styles.headerStyle = { fontSize: 22, bold: true };
docDefinition.styles.footerStyle = { fontSize: 10, bold: true };
return docDefinition;
},
exporterPdfOrientation: 'portrait',
exporterPdfPageSize: 'LETTER',
exporterPdfMaxGridWidth: 400,
exporterCsvLinkElement: angular.element(document.querySelectorAll(".custom-csv-link-location")),
onRegisterApi: function(gridApi){
$scope.gridApi = gridApi;
},
gridMenuCustomItems: [{
title: 'Export all data as EXCEL',
action: function ($event) {
exportUiGridService.exportToExcel('sheet 1', $scope.gridApi, 'all', 'all');
},
order: 110
},
{
title: 'Export visible data as EXCEL',
action: function ($event) {
exportUiGridService.exportToExcel('sheet 1', $scope.gridApi, 'visible', 'visible');
},
order: 111
}
] ]
}; };
$scope.gridOptions.data = []; $scope.gridOptions.data = [];
......
...@@ -611,6 +611,11 @@ cursor: pointer; ...@@ -611,6 +611,11 @@ cursor: pointer;
overflow: auto; overflow: auto;
padding: 5px 0; padding: 5px 0;
} }
.employees-login .ui-grid-canvas .ui-grid-row div div:nth-child(6) .ui-grid-cell-contents {
line-height: normal;
padding: 5px 0 0 0 ;
overflow: auto;
}
.project-allocation .ui-grid-canvas .ui-grid-row div div:nth-child(3) div:first-child, .manage-accounts .ui-grid-canvas .ui-grid-row div div:nth-child(3) div:first-child{ .project-allocation .ui-grid-canvas .ui-grid-row div div:nth-child(3) div:first-child, .manage-accounts .ui-grid-canvas .ui-grid-row div div:nth-child(3) div:first-child{
padding-top: 5px; padding-top: 5px;
} }
...@@ -826,3 +831,27 @@ cursor: pointer; ...@@ -826,3 +831,27 @@ cursor: pointer;
.error{ .error{
color: red; color: red;
} }
.file-upload-section {
margin: 10px 0 0 0 ;
}
.file-upload-section >div {
margin: 0;
padding: 0;
}
.file-upload-section >div >div{
padding-right:0;
}
.file-upload-section input {
padding: 0;
height: auto;
}
.upload-resume-icon {
margin: 0 0 0 15px;
border-radius: 6px;
padding: 6px 12px;
font-size: 17px;
background: #3f51b5;
border: 1px solid;
color: white;
cursor: pointer;
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
</div> </div>
<div class="form-group"> <div class="form-group">
<div class="form-inline col-lg-12"> <div class="form-inline col-lg-12">
<div id="gridTest" ui-grid="gridOptions" ui-grid-pagination <div id="gridTest" ui-grid="gridOptions" ui-grid-pagination ui-grid-exporter
class="grid employees-login"> class="grid employees-login">
<div class="watermark" ng-show="!gridOptions.data.length">Search <div class="watermark" ng-show="!gridOptions.data.length">Search
by Employee ID/Name/Email ID</div> by Employee ID/Name/Email ID</div>
......
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.css"></link> <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.css"></link>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"></link> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"></link>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css"></link> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css"></link>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/smoothness/jquery-ui.min.css" rel="stylesheet"> <link rel="stylesheet" href="css/jquery-ui.min.css" rel="stylesheet">
<script src="js/pdf/pdf.js"></script> <script src="js/pdf/pdf.js"></script>
<script src='js/FileSaver.js'></script> <script src='js/FileSaver.js'></script>
<script src="js/pdf/angular-pdf.min.js"></script> <script src="js/pdf/angular-pdf.min.js"></script>
...@@ -35,18 +35,18 @@ ...@@ -35,18 +35,18 @@
<link rel="stylesheet" href="css/custom-theme.css"></link> <link rel="stylesheet" href="css/custom-theme.css"></link>
<script src="js/bootstrap.min.js"></script> <script src="js/bootstrap.min.js"></script>
<script src="js/angular-idle.js"></script> <script src="js/angular-idle.js"></script>
<script src="http://ui-grid.info/release/ui-grid.js"></script> <script src="js/ui-grid.js"></script>
<script src="http://ui-grid.info/docs/grunt-scripts/pdfmake.js"></script> <script src="js/pdf/pdfmake.js"></script>
<script src="http://ui-grid.info/docs/grunt-scripts/vfs_fonts.js"></script> <script src="js/vfs_fonts.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.9.12/xlsx.full.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.9.12/xlsx.full.min.js"></script>
<script src="https://fastcdn.org/FileSaver.js/1.1.20151003/FileSaver.min.js"></script> <script src="https://fastcdn.org/FileSaver.js/1.1.20151003/FileSaver.min.js"></script>
<script src="http://ui-grid.info/release/ui-grid-unstable.js"></script> <script src="js/ui-grid-unstable.js"></script>
<link rel="stylesheet" href="http://ui-grid.info/release/ui-grid-unstable.css" type="text/css"> <link rel="stylesheet" href="css/ui-grid/ui-grid-unstable.css" type="text/css">
<link rel="stylesheet" href="http://ui-grid.info/release/ui-grid.css" type="text/css"> <link rel="stylesheet" href="css/ui-grid/ui-grid.css" type="text/css">
<link rel="stylesheet" href="css/pdf-viewer.css"></link> <link rel="stylesheet" href="css/pdf-viewer.css"></link>
<script src="js/app.js"></script> <script src="js/app.js"></script>
<script src="js/date-text-filter.js"></script> <script src="js/date-text-filter.js"></script>
......
<div class="md-padding my-profile" id="popupContainer" ng-controller="profileController" ng-init="getProfileData()"> <div class="md-padding my-profile" id="popupContainer" ng-controller="profileController" ng-init="getProfileData()">
<h1 class="no-padding">My Profile <h1 class="no-padding">My Profile
<span class="right"> <span class="right">
<md-button class="add-btn md-raised md-primary" ng-click="download()"> <i class="fa fa-pencil-square-o fa-1x"></i> Download Profile <md-button ng-disabled = "!isResumeUploaded" class="add-btn md-raised md-primary" ng-click="download()"> <i class="fa fa-pencil-square-o fa-1x"></i> Download Resume
</md-button> </md-button>
<md-button class="add-btn md-raised md-primary" ng-click="updateProfile()"> <i class="fa fa-pencil-square-o fa-1x"></i> Update Profile <md-button class="add-btn md-raised md-primary" ng-click="updateProfile()"> <i class="fa fa-pencil-square-o fa-1x"></i> Update Profile
</md-button> </md-button>
...@@ -261,7 +261,7 @@ ...@@ -261,7 +261,7 @@
<div class="row"> <div class="row">
<div class="col-lg-4 col-xs-6"> <div class="col-lg-4 col-xs-6">
<p> <p>
<b>Last Update Profile</b> <b class="right">:</b> <b>Last Resume Uploaded</b> <b class="right">:</b>
</p> </p>
</div> </div>
<div class="col-lg-7 col-xs-6"> <div class="col-lg-7 col-xs-6">
......
...@@ -24,7 +24,23 @@ ...@@ -24,7 +24,23 @@
ng-repeat="tech in technologies">{{tech}}</md-option> </md-optgroup> </md-select> ng-repeat="tech in technologies">{{tech}}</md-option> </md-optgroup> </md-select>
<textarea rows="4" cols="10" class="form-control" id="technologyKnown" name="technologyKnown" <textarea rows="4" cols="10" class="form-control" id="technologyKnown" name="technologyKnown"
ng-model="technologyKnown" placeholder="Technologies Known" /> ng-model="technologyKnown" placeholder="Technologies Known" />
<md-dialog-actions layout="row">
<md-button class="md-raised" data-ng-click="validateFields()"> Update </md-button>
<md-button class="md-raised" ng-click="cancel()"> Cancel </md-button> </md-dialog-actions>
<div class= "file-upload-section">
<label>Upload Resume: </label>
<div class="row col-lg-12">
<div class="row col-lg-11">
<input type="file" file-model="file" class="form-control" id="uploadFile" name="uploadFile" ng-model="uploadFile" placeholder="Upload Profile" multiple/> <input type="file" file-model="file" class="form-control" id="uploadFile" name="uploadFile" ng-model="uploadFile" placeholder="Upload Profile" multiple/>
</div>
<div class="row col-lg-1">
<!-- <md-button class="md-raised" data-ng-click="uploadFile()">Upload </md-button> -->
<i class="fa fa-upload upload-resume-icon" data-toggle="tooltip" title="Upload" onmouseenter="$(this).tooltip()" data-ng-click="uploadFile()"></i>
</div>
</div>
</div>
<div role="alert"> <div role="alert">
<span class="error" style="color: red;">{{alertMsg}}</span> <span class="error" style="color: red;">{{alertMsg}}</span>
</div> </div>
...@@ -32,10 +48,7 @@ ...@@ -32,10 +48,7 @@
</md-dialog-content> </md-dialog-content>
<md-dialog-actions layout="row">
<md-button class="md-raised" data-ng-click="uploadFile()">Upload </md-button>
<md-button class="md-raised" data-ng-click="validateFields()"> Update </md-button>
<md-button class="md-raised" ng-click="cancel()"> Cancel </md-button> </md-dialog-actions>
</form> </form>
</md-dialog> </md-dialog>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment