Commit 2f87e72c authored by Muneer Alam's avatar Muneer Alam

MT-07: Adding Trainee as a status in the dropdown list of Add Team mate screen

parent 260287c4
...@@ -25,8 +25,6 @@ import org.springframework.data.mongodb.core.query.Update; ...@@ -25,8 +25,6 @@ import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import com.mongodb.BasicDBObject;
import com.mongodb.DBCollection;
import com.nisum.mytime.controller.DomainController; import com.nisum.mytime.controller.DomainController;
import com.nisum.mytime.exception.handler.MyTimeException; import com.nisum.mytime.exception.handler.MyTimeException;
import com.nisum.mytime.model.Account; import com.nisum.mytime.model.Account;
...@@ -97,13 +95,11 @@ public class ProjectServiceImpl implements ProjectService { ...@@ -97,13 +95,11 @@ public class ProjectServiceImpl implements ProjectService {
@Override @Override
public List<EmpLoginData> employeeLoginsBasedOnDate(long id, public List<EmpLoginData> employeeLoginsBasedOnDate(long id,
String fromDate, String toDate) throws MyTimeException { String fromDate, String toDate) throws MyTimeException {
return employeeDataBaseService.fetchEmployeeLoginsBasedOnDates(id, return employeeDataBaseService.fetchEmployeeLoginsBasedOnDates(id, fromDate, toDate);
fromDate, toDate);
} }
@Override @Override
public String generatePdfReport(long id, String fromDate, String toDate) public String generatePdfReport(long id, String fromDate, String toDate) throws MyTimeException {
throws MyTimeException {
return pdfReportGenerator.generateEmployeeReport(id, fromDate, toDate); return pdfReportGenerator.generateEmployeeReport(id, fromDate, toDate);
} }
...@@ -281,10 +277,8 @@ public class ProjectServiceImpl implements ProjectService { ...@@ -281,10 +277,8 @@ public class ProjectServiceImpl implements ProjectService {
FindAndModifyOptions options = new FindAndModifyOptions(); FindAndModifyOptions options = new FindAndModifyOptions();
options.returnNew(true); options.returnNew(true);
options.upsert(true); options.upsert(true);
Project projectDB = mongoTemplate.findAndModify(query, update, options, Project projectDB = mongoTemplate.findAndModify(query, update, options, Project.class);
Project.class); List<ProjectTeamMate> employeeDetails = projectTeamMatesRepo.findByProjectId(project.getProjectId());
List<ProjectTeamMate> employeeDetails = projectTeamMatesRepo
.findByProjectId(project.getProjectId());
if (employeeDetails != null && projectDB != null) { if (employeeDetails != null && projectDB != null) {
for (ProjectTeamMate emp : employeeDetails) { for (ProjectTeamMate emp : employeeDetails) {
// emp.setManagerId(projectDB.getManagerId()); // emp.setManagerId(projectDB.getManagerId());
...@@ -312,14 +306,11 @@ public class ProjectServiceImpl implements ProjectService { ...@@ -312,14 +306,11 @@ public class ProjectServiceImpl implements ProjectService {
List<ProjectTeamMate> listOfTeamMates = new ArrayList<>(); List<ProjectTeamMate> listOfTeamMates = new ArrayList<>();
// return projectTeamMatesRepo.findById(empId); // return projectTeamMatesRepo.findById(empId);
// Query query = new Query(Criteria.where("deliveryLeadIds").("empId")); // Query query = new Query(Criteria.where("deliveryLeadIds").("empId"));
List<Project> projects = projectRepo.findByDeliveryLeadIds(empId);// mongoTemplate.find(query, Project.class);
List<Project> projects = projectRepo.findByDeliveryLeadIds(empId);// mongoTemplate.find(query,
// Project.class);
for (Project project : projects) for (Project project : projects)
projectsId.add(project.getProjectId()); projectsId.add(project.getProjectId());
Query query1 = new Query(Criteria.where("projectId").in(projectsId)); Query query1 = new Query(Criteria.where("projectId").in(projectsId));
List<ProjectTeamMate> projectMateList = mongoTemplate.find(query1, List<ProjectTeamMate> projectMateList = mongoTemplate.find(query1, ProjectTeamMate.class);
ProjectTeamMate.class);
for (ProjectTeamMate projectTeamMate : projectMateList) { for (ProjectTeamMate projectTeamMate : projectMateList) {
if (!projectTeamMate.getEmployeeId().equals(empId)) if (!projectTeamMate.getEmployeeId().equals(empId))
listOfTeamMates.add(projectTeamMate); listOfTeamMates.add(projectTeamMate);
...@@ -494,7 +485,9 @@ public class ProjectServiceImpl implements ProjectService { ...@@ -494,7 +485,9 @@ public class ProjectServiceImpl implements ProjectService {
Calendar cal = Calendar.getInstance(); Calendar cal = Calendar.getInstance();
cal.setTime(projectTeamMate.getNewBillingStartDate()); cal.setTime(projectTeamMate.getNewBillingStartDate());
cal.add(Calendar.DAY_OF_MONTH, -1); cal.add(Calendar.DAY_OF_MONTH, -1);
if (existingTeammate.getNewBillingStartDate().getDate() == projectTeamMate.getNewBillingStartDate().getDate()) { Date startDate = existingTeammate.getNewBillingStartDate() != null ?
existingTeammate.getNewBillingStartDate() : existingTeammate.getStartDate();
if (startDate.getDate() == projectTeamMate.getNewBillingStartDate().getDate()) {
billingDetails.setBillingEndDate(DateUtils.truncate(projectTeamMate.getNewBillingStartDate(), Calendar.DATE)); billingDetails.setBillingEndDate(DateUtils.truncate(projectTeamMate.getNewBillingStartDate(), Calendar.DATE));
} else { } else {
billingDetails.setBillingEndDate(DateUtils.truncate(cal.getTime(), Calendar.DATE)); billingDetails.setBillingEndDate(DateUtils.truncate(cal.getTime(), Calendar.DATE));
...@@ -858,11 +851,9 @@ public class ProjectServiceImpl implements ProjectService { ...@@ -858,11 +851,9 @@ public class ProjectServiceImpl implements ProjectService {
cal.setTime(d); cal.setTime(d);
cal.add(Calendar.DAY_OF_MONTH, -1); cal.add(Calendar.DAY_OF_MONTH, -1);
Date oneDayLess = cal.getTime(); Date oneDayLess = cal.getTime();
Date startDate = teamMate.getNewBillingStartDate() != null ? teamMate.getNewBillingStartDate() : teamMate.getStartDate();
if(null != teamMate.getNewBillingStartDate()){ if(startDate.getDate() == projectTeamMate.getNewBillingStartDate().getDate()){
if (teamMate.getNewBillingStartDate().getDate() == projectTeamMate.getNewBillingStartDate().getDate()) { teamMate.setEndDate(DateUtils.truncate(projectTeamMate.getEndDate(), Calendar.DATE));
teamMate.setEndDate(DateUtils.truncate(projectTeamMate.getEndDate(), Calendar.DATE));
}
}else { }else {
teamMate.setEndDate(DateUtils.truncate(oneDayLess, Calendar.DATE)); teamMate.setEndDate(DateUtils.truncate(oneDayLess, Calendar.DATE));
} }
...@@ -955,53 +946,33 @@ public class ProjectServiceImpl implements ProjectService { ...@@ -955,53 +946,33 @@ public class ProjectServiceImpl implements ProjectService {
} }
} }
for (EmployeeRoles emp : allEmployees) { for (EmployeeRoles emp : allEmployees) {
if (emp.getEmployeeId() != null
&& emp.getEmployeeId().equalsIgnoreCase("16112")) {
System.out.println(emp);
}
if (teamMatesMap.containsKey(emp.getEmployeeId())) { if (teamMatesMap.containsKey(emp.getEmployeeId())) {
System.out.println("***************** Empl alrady assigned");
Object value = teamMatesMap.get(emp.getEmployeeId()); Object value = teamMatesMap.get(emp.getEmployeeId());
if (value instanceof List) { if (value instanceof List) {
List listOfTeamMates = (List) value; List listOfTeamMates = (List) value;
String billableStatus = "NA"; String billableStatus = "NA";
for (Object obj : listOfTeamMates) { for (Object obj : listOfTeamMates) {
ProjectTeamMate projectTeamMate = (ProjectTeamMate) obj; ProjectTeamMate projectTeamMate = (ProjectTeamMate) obj;
String status = projectTeamMate.getBillableStatus(); String status = projectTeamMate.getBillableStatus();
if (status == null) { if (status == null) {
status = "NA"; status = "NA";
} }
System.out.println("---------------------------");
EmployeeDashboardVO empVo = new EmployeeDashboardVO(); EmployeeDashboardVO empVo = new EmployeeDashboardVO();
System.out.println(emp);
BeanUtils.copyProperties(emp, empVo); BeanUtils.copyProperties(emp, empVo);
BeanUtils.copyProperties(projectTeamMate, empVo, BeanUtils.copyProperties(projectTeamMate, empVo,
"employeeId", "employeeName", "emailId", "role", "employeeId", "employeeName", "emailId", "role",
"designation", "mobileNumber"); "designation", "mobileNumber");
employeeDashboard.add(empVo); employeeDashboard.add(empVo);
} }
} }
} else { } else {
EmployeeDashboardVO empVo = new EmployeeDashboardVO(); EmployeeDashboardVO empVo = new EmployeeDashboardVO();
System.out.println(emp);
BeanUtils.copyProperties(emp, empVo); BeanUtils.copyProperties(emp, empVo);
empVo.setBillableStatus("UA"); empVo.setBillableStatus("UA");
empVo.setProjectAssigned(false); empVo.setProjectAssigned(false);
employeeDashboard.add(empVo); employeeDashboard.add(empVo);
} }
System.out.println("&&&&&&&&&&");
// System.out.println(empVo);
System.out.println("---------------------------");
} }
return employeeDashboard; return employeeDashboard;
} }
......
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