Commit a6a797e8 authored by Rajeshekar's avatar Rajeshekar

Merge branch 'master' of https://github.com/nisum-inc/mytime.git

parents cddfe08e 912d9a65
...@@ -29,13 +29,9 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -29,13 +29,9 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
}; };
$scope.managers = []; $scope.managers = [];
//code added
//code added
var getCellTemplate = '<p class="col-lg-12"><i class="fa fa-users fa-2x" aria-hidden="true" style="font-size:1.4em;margin-top:3px;cursor:pointer;" data-placement="center" title="View" onmouseenter="$(this).tooltip(\'show\')" ng-click="grid.appScope.getRowData(row,\'View\')" ></i>' + var getCellTemplate = '<p class="col-lg-12"><i class="fa fa-users fa-2x" aria-hidden="true" style="font-size:1.4em;margin-top:3px;cursor:pointer;" data-placement="center" title="View" onmouseenter="$(this).tooltip(\'show\')" ng-click="grid.appScope.getRowData(row,\'View\')" ></i>' +
'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i class="fa fa-pencil-square-o fa-2x" aria-hidden="true" style="font-size:1.5em;margin-top:3px;cursor:pointer;" data-placement="center" title="Edit" onmouseenter="$(this).tooltip(\'show\')" ng-click="grid.appScope.getRowData(row,\'Update\')"></i>' + '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i class="fa fa-pencil-square-o fa-2x" aria-hidden="true" style="font-size:1.5em;margin-top:3px;cursor:pointer;" data-placement="center" title="Edit" onmouseenter="$(this).tooltip(\'show\')" ng-click="grid.appScope.getRowData(row,\'Update\')"></i>' +
...@@ -53,7 +49,7 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -53,7 +49,7 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
{ field: 'projectName', displayName: 'Project ', enableColumnMenu: false, enableSorting: true, enableFiltering: true }, { field: 'projectName', displayName: 'Project ', enableColumnMenu: false, enableSorting: true, enableFiltering: true },
{ field: 'account', displayName: 'Account ', enableColumnMenu: false, enableSorting: true, enableFiltering: true }, { field: 'account', displayName: 'Account ', enableColumnMenu: false, enableSorting: true, enableFiltering: true },
//{field : 'managerId',displayName: 'Manager ID ', enableColumnMenu: false, enableSorting: false}, //{field : 'managerId',displayName: 'Manager ID ', enableColumnMenu: false, enableSorting: false},
{ field: 'managerIds', displayName: 'Delivery Lead / Lead ', cellTemplate: '<div ng-repeat= "item in row.entity[col.field]">{{item.employeeName}}<span ng-hide="$last">,</span></div>', enableColumnMenu: false, enableSorting: true, enableFiltering: true }, { field: 'deliveryLeadIds', displayName: 'Delivery Lead / Lead ', cellTemplate: '<div ng-repeat= "item in row.entity[col.field]">{{item.employeeName}}<span ng-hide="$last">,</span></div>', enableColumnMenu: false, enableSorting: true, enableFiltering: true },
{ field: 'status', displayName: 'Status ', enableColumnMenu: false, enableSorting: true, enableFiltering: false }, { field: 'status', displayName: 'Status ', enableColumnMenu: false, enableSorting: true, enableFiltering: false },
{ name: 'Actions', displayName: 'Actions', cellTemplate: getCellTemplate, enableColumnMenu: false, enableSorting: false, enableFiltering: false, width: 130 } { name: 'Actions', displayName: 'Actions', cellTemplate: getCellTemplate, enableColumnMenu: false, enableSorting: false, enableFiltering: false, width: 130 }
] ]
...@@ -78,7 +74,12 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -78,7 +74,12 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
else if (action == "View") else if (action == "View")
$scope.viewTeamDetails(action, $scope.parentData); $scope.viewTeamDetails(action, $scope.parentData);
} }
// function getColumnName() {
// console.log($scope.gridOptions.data);
// return 'managerIds';
// }
$scope.refreshPage = function () { $scope.refreshPage = function () {
$scope.empSearchId = ""; $scope.empSearchId = "";
$scope.getProjects(); $scope.getProjects();
...@@ -291,7 +292,17 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -291,7 +292,17 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
$scope.isSecondTab = false; $scope.isSecondTab = false;
$scope.prjctStses=["Active","Completed","On Hold","Proposed"]; $scope.prjctStses=["Active","Completed","On Hold","Proposed"];
$scope.billableStatuses = ["Billable","Shadow","Non-Billable","Reserved"]; $scope.billableStatuses = ["Billable","Shadow","Non-Billable","Reserved"];
$scope.accounts=myFactory.getAccounts(); var allAccounts = myFactory.getAccounts();
function getActiveAccounts(){
var activeAccounts = [];
for (var i in allAccounts){
if(allAccounts[i].status == "Active" || allAccounts[i].status == "Y"){
activeAccounts.push(allAccounts[i]);
}
}
return activeAccounts;
}
$scope.accounts = getActiveAccounts();
$scope.selectedTab = 0; $scope.selectedTab = 0;
$scope.deliveryLeadsSelectedList = []; $scope.deliveryLeadsSelectedList = [];
$scope.employeeInTeam = []; $scope.employeeInTeam = [];
...@@ -393,6 +404,15 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -393,6 +404,15 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
}); });
}; };
function setDomain(action) {
$scope.domain = {"domainName":dataToPass.domain,"domainId":dataToPass.domainId};
if($scope.domain.domainId != undefined){
getManagersAssociatedToDomain($scope.domain.domainId,action);
}
else{
$scope.managerDetails = managers;
}
}
if (dataToPass.action == "Assign") { if (dataToPass.action == "Assign") {
$scope.projectId = ""; $scope.projectId = "";
...@@ -402,27 +422,23 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -402,27 +422,23 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
$scope.domains; $scope.domains;
$scope.isDisabled = false; $scope.isDisabled = false;
} else if (dataToPass.action == "Update") { } else if (dataToPass.action == "Update") {
console.log("$scope.domains",$scope.domains)
$scope.projectId = dataToPass.projectId; $scope.projectId = dataToPass.projectId;
$scope.projectName = dataToPass.projectName; $scope.projectName = dataToPass.projectName;
$scope.managerId = dataToPass.managerId; // $scope.managerId = dataToPass.managerId;
$scope.managerName = dataToPass.managerName; // $scope.managerName = dataToPass.managerName;
var accounts1 = myFactory.getAccounts(); // var accounts1 = myFactory.getAccounts();
for (var i = 0; i < accounts1.length; i++) { for (var i = 0; i < $scope.accounts.length; i++) {
if (accounts1[i].accountName == dataToPass.account) { if ($scope.accounts[i].accountName == dataToPass.account) {
$scope.account = accounts1[i]; $scope.account = $scope.accounts[i];
} }
} }
getDomainsAssoicatedToAccount($scope.account.accountId,dataToPass.action);
$scope.deliveryLeadsSelectedList = dataToPass.deliveryLeadIds[0];
$scope.domain = {"domainName":dataToPass.domain,"domainId":dataToPass.domainId};
$scope.projectStatus = dataToPass.status; $scope.projectStatus = dataToPass.status;
$scope.managerModel = { $scope.managerModel = {
'employeeName': dataToPass.managerName, 'employeeName': dataToPass.managerName,
'employeeId': dataToPass.managerId 'employeeId': dataToPass.managerId
}; };
$scope.managerDetails = managers;
$scope.isDisabled = true; $scope.isDisabled = true;
} else if (dataToPass.action == "View") { } else if (dataToPass.action == "View") {
$scope.projectId = dataToPass.projectId; $scope.projectId = dataToPass.projectId;
...@@ -668,7 +684,7 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -668,7 +684,7 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
} }
}; };
function getDomainsAssoicatedToAccount(id){ function getDomainsAssoicatedToAccount(id,action){
$http({ $http({
method : "GET", method : "GET",
url : appConfig.appUri + "/user/getDomains?accountId="+id url : appConfig.appUri + "/user/getDomains?accountId="+id
...@@ -682,39 +698,83 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -682,39 +698,83 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
{domainName: $scope.account.accountName} {domainName: $scope.account.accountName}
] ]
} }
if(action == "Update"){
setDomain(action);
}
}, function myError(response) { }, function myError(response) {
}); });
} }
$scope.onAccountChange = function (){
$scope.getAccountText = function () {
if ($scope.account !== undefined) { if ($scope.account !== undefined) {
getDomainsAssoicatedToAccount($scope.account.accountId); getDomainsAssoicatedToAccount($scope.account.accountId);
return $scope.account.accountName;
} else {
return "Please select account";
} }
}; $scope.domain = undefined;
$scope.deliveryLeadsSelectedList = {};
$scope.projectStatus = undefined;
}
$scope.getDomainText = function () { $scope.onDomainChange = function (newVal, oldVal){
if($scope.domain != undefined){
if(oldVal != ""){
if(newVal.domainName != (JSON.parse(oldVal)).domainName){
if($scope.domain.domainId != undefined){
getManagersAssociatedToDomain($scope.domain.domainId);
}
else{
$scope.managerDetails = managers;
}
$scope.deliveryLeadsSelectedList = {};
$scope.projectStatus = undefined;
}
}
else{
if($scope.domain.domainId != undefined){ if($scope.domain.domainId != undefined){
getManagersAssociatedToDomain($scope.domain.domainId); getManagersAssociatedToDomain($scope.domain.domainId);
} }
else{ else{
$scope.managerDetails = managers; $scope.managerDetails = managers;
} }
$scope.deliveryLeadsSelectedList = {};
$scope.projectStatus = undefined;
}
}
function setDeliveryLead(){
$scope.deliveryLeadsSelectedList = dataToPass.deliveryLeadIds[0];
}
$scope.getAccountText = function () {
if ($scope.account !== undefined) {
return $scope.account.accountName;
} else {
return "Please select account";
}
};
$scope.getDomainText = function () {
if($scope.domain != undefined){
return $scope.domain.domainName; return $scope.domain.domainName;
} }
else{ else{
$scope.managerDetails = managers;
return "Please select domain"; return "Please select domain";
} }
}; };
function getManagersAssociatedToDomain(id){
$scope.getSelectedDeliveryLead = function () {
if (Object.keys($scope.deliveryLeadsSelectedList).length > 1 ) {
return $scope.deliveryLeadsSelectedList.employeeName;
} else {
return "Please select a Delivery lead";
}
}
function getManagersAssociatedToDomain(id,action){
$http({ $http({
method : "GET", method : "GET",
url : appConfig.appUri + "/user/getDeliveryLeads?domainId="+id url : appConfig.appUri + "/user/getDeliveryLeads?domainId="+id
...@@ -722,8 +782,14 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -722,8 +782,14 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
var result = response.data; var result = response.data;
if(result != "" || result.length != 0){ if(result != "" || result.length != 0){
$scope.managerDetails = result; $scope.managerDetails = result;
console.log($scope.managerDetails);
} }
else{
$scope.managerDetails = managers;
}
if(action == "Update"){
setDeliveryLead();
}
}, function myError(response) { }, function myError(response) {
// showProgressDialog("Something went wrong redirecting to login page!!!"); // showProgressDialog("Something went wrong redirecting to login page!!!");
}); });
...@@ -780,13 +846,7 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -780,13 +846,7 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
} }
return false; return false;
} }
$scope.getSelectedDeliveryLead = function () {
if (Object.keys($scope.deliveryLeadsSelectedList).length > 0) {
return $scope.deliveryLeadsSelectedList.employeeName;
} else {
return "Please select a Delivery lead";
}
}
$scope.currentBillabilityDateChange = function(){ $scope.currentBillabilityDateChange = function(){
$scope.startDate = $scope.newBillingStartDate ; $scope.startDate = $scope.newBillingStartDate ;
...@@ -801,10 +861,10 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -801,10 +861,10 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
var managerName=$scope.managerName; var managerName=$scope.managerName;
var employeeModel = $scope.employeeModel; var employeeModel = $scope.employeeModel;
var projectModel = $scope.projectModel; var projectModel = $scope.projectModel;
var domain = $scope.domain.domainName; var domain = $scope.domain;
console.log(domain);
var newBillingStartDate = $scope.newBillingStartDate var newBillingStartDate = $scope.newBillingStartDate
var deliveryLeadsSelectedList = $scope.deliveryLeadsSelectedList;
var projectStatus = $scope.projectStatus;
if(action === "Add"){ if(action === "Add"){
if(employeeModel == undefined){ if(employeeModel == undefined){
$scope.alertMsg = "Please select a employee"; $scope.alertMsg = "Please select a employee";
...@@ -867,9 +927,14 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS ...@@ -867,9 +927,14 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
$scope.alertMsg = "Domain is mandatory"; $scope.alertMsg = "Domain is mandatory";
document.getElementById('domain').focus(); document.getElementById('domain').focus();
} }
// else if(managerModel == undefined){ else if(deliveryLeadsSelectedList.employeeName == undefined || deliveryLeadsSelectedList.employeeName == ""){
//  $scope.alertMsg = "Please select a Lead";  $scope.alertMsg = "Please select a Delivery Lead";
// } document.getElementById('deliveryLead').focus();
}
else if(projectStatus == undefined){
 $scope.alertMsg = "Please select a Project Status";
document.getElementById('projectStatus').focus();
}
else { else {
$scope.alertMsg = ""; $scope.alertMsg = "";
console.log($scope.projectStatus,$scope.domain.domainId); console.log($scope.projectStatus,$scope.domain.domainId);
......
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
<b>Account</b> <b>Account</b>
</td> </td>
<td colspan="8"> <td colspan="8">
<md-select ng-model="account" md-selected-text="getAccountText()" id="account"> <md-select ng-model="account" md-selected-text="getAccountText()" ng-change="onAccountChange()" id="account">
<md-optgroup label="account"> <md-optgroup label="account">
<md-option ng-value="account1" ng-repeat="account1 in accounts">{{account1.accountName}}</md-option> <md-option ng-value="account1" ng-repeat="account1 in accounts">{{account1.accountName}}</md-option>
</md-optgroup> </md-optgroup>
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
<b>Domain</b> <b>Domain</b>
</td> </td>
<td colspan="8"> <td colspan="8">
<md-select ng-model="domain" md-selected-text="getDomainText()" id="domain"> <md-select ng-model="domain" md-selected-text="getDomainText()" ng-change="onDomainChange(domain,'{{domain}}')" id="domain">
<md-optgroup label="domain"> <md-optgroup label="domain">
<md-option ng-value="domain" ng-repeat="domain in domains">{{domain.domainName}}</md-option> <md-option ng-value="domain" ng-repeat="domain in domains">{{domain.domainName}}</md-option>
</md-optgroup> </md-optgroup>
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
</td> </td>
<td colspan="8"> <td colspan="8">
<div style="display: block; float: left; width: 100%;"> <div style="display: block; float: left; width: 100%;">
<md-select ng-model="deliveryLeadsSelectedList" data-md-container-class="selectHeader" md-selected-text="getSelectedDeliveryLead()" > <md-select ng-model="deliveryLeadsSelectedList" data-md-container-class="selectHeader" md-selected-text="getSelectedDeliveryLead()" id="deliveryLead" >
<md-select-header class="selectHeaderChild header-spacing" layout="column"> <md-select-header class="selectHeaderChild header-spacing" layout="column">
<input ng-model="searchTerm" type="search" ng-keydown="updateSearch($event)" ng-model-options="{debounce: {'default': 500, 'blur': 0}}" <input ng-model="searchTerm" type="search" ng-keydown="updateSearch($event)" ng-model-options="{debounce: {'default': 500, 'blur': 0}}"
placeholder="Please Search for a lead" class="searchBoxHeader demo-header-searchbox md-text search-spacingleft" /> placeholder="Please Search for a lead" class="searchBoxHeader demo-header-searchbox md-text search-spacingleft" />
......
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