Commit 25e37bd5 authored by mshaik-nisum-com's avatar mshaik-nisum-com Committed by rbonthala-nisum-com

Issue-fix: Resource assignment start date is greater than end date while...

Issue-fix: Resource assignment start date is greater than end date while adding a resource to a project (#159)
parent 5d6cd3ed
......@@ -142,14 +142,12 @@ public class ProjectTeamController {
}
@RequestMapping(value = "/updateTeammate", method = RequestMethod.POST,
produces = MediaType.APPLICATION_JSON_VALUE,
produces = MediaType.TEXT_PLAIN_VALUE,
consumes = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<ProjectTeamMate> updateTeammate(
@RequestBody ProjectTeamMate projectTeamMate)
public ResponseEntity<String> updateTeammate(@RequestBody ProjectTeamMate projectTeamMate)
throws MyTimeException {
ProjectTeamMate updatedTeammate = projectService
.updateTeammate(projectTeamMate);
return new ResponseEntity<>(updatedTeammate, HttpStatus.OK);
String response = projectService.updateTeammate(projectTeamMate);
return new ResponseEntity<>(response, HttpStatus.OK);
}
@RequestMapping(value = "/deleteTeammate", method = RequestMethod.POST,
......@@ -341,8 +339,7 @@ public class ProjectTeamController {
consumes = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<String> addEmployeeToTeamWithCheck(
@RequestBody ProjectTeamMate teamMate) throws MyTimeException {
String response=null;
response=projectService.addProjectTeamMateWithCheck(teamMate);
String response = projectService.addProjectTeamMateWithCheck(teamMate);
return new ResponseEntity<>(response, HttpStatus.OK);
......
......@@ -42,7 +42,7 @@ public interface ProjectService {
public ProjectTeamMate addProjectTeamMate(ProjectTeamMate projectTeamMate)
throws MyTimeException;
ProjectTeamMate updateTeammate(ProjectTeamMate projectTeamMate);
String updateTeammate(ProjectTeamMate projectTeamMate) throws MyTimeException;
void deleteTeammate(String empId, String projectId, ObjectId id);
......
......@@ -8,6 +8,8 @@ import com.nisum.mytime.exception.handler.MyTimeException;
public interface RoleMappingService {
void addEmployeeRole(String employeeId, String roleId) throws MyTimeException;
void saveUniqueEmployeeAndRole(List<String> employeeIds, String roleId) throws MyTimeException;
WriteResult deleteRole(String employeeId, String roleId) throws MyTimeException;
......
......@@ -35,17 +35,25 @@ public class RoleMappingServiceImpl implements RoleMappingService {
@Override
public void saveUniqueEmployeeAndRole(List<String> employeeIds, String roleId) throws MyTimeException {
for (String employeeId : employeeIds) {
RoleMappingInfo roleMappingInfo = roleMappingInfoRepo.findByEmployeeIdAndRoleId(employeeId, roleId);
if (roleMappingInfo == null) {
roleMappingInfo = new RoleMappingInfo();
roleMappingInfo.setEmployeeId(employeeId);
roleMappingInfo.setRoleId(roleId);
roleMappingInfo.setIsActive("Y");
} else if (roleMappingInfo.getIsActive().equalsIgnoreCase("N")) {
roleMappingInfo.setIsActive("Y");
}
addEmployeeRole(employeeId, roleId);
}
}
public void addEmployeeRole(String employeeId, String roleId) throws MyTimeException {
RoleMappingInfo roleMappingInfo = roleMappingInfoRepo.findByEmployeeIdAndRoleId(employeeId, roleId);
boolean isChanged = false;
if (roleMappingInfo == null) {
roleMappingInfo = new RoleMappingInfo();
roleMappingInfo.setEmployeeId(employeeId);
roleMappingInfo.setRoleId(roleId);
roleMappingInfo.setIsActive("Y");
isChanged = true;
} else if (roleMappingInfo.getIsActive().equalsIgnoreCase("N")) {
roleMappingInfo.setIsActive("Y");
isChanged = true;
}
if (isChanged) {
roleMappingInfoRepo.save(roleMappingInfo);
}
}
......
package com.nisum.mytime.utils;
import java.io.Serializable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Setter
@Getter
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class MyTeamResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
public static String ERROR_CODE = "MTERR100";
public static String SUCCESS_CODE = "MTS100";
private String resultCode;
private String resultData[];
private int dataArrayCounter;
public String[] getResultData() {
return resultData;
}
public void setResultData(String resultData) {
if (this.resultData == null) {
this.resultData = new String[10];
}
for (int i = 0; i < 10; i++) {
setDataArrayCounter(i);
if (this.resultData[i] == null || this.resultData[i].isEmpty()) {
this.resultData[i] = resultData;
break;
}
}
}
public int getDataArrayCounter() {
return dataArrayCounter;
}
private void setDataArrayCounter(int dataArrayCounter) {
this.dataArrayCounter = dataArrayCounter;
}
}
......@@ -1155,18 +1155,6 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
}
else {
updateTeamRecord(record, action);
$timeout(function () {
getProjectDetails(project, $scope.status);
removeTab('Add');
$mdDialog.show($mdDialog.alert({
skipHide: true,
textContent: 'Employee Updated',
ok: 'ok'
})).then(function () {
$scope.myForm.$setPristine();
})
;
}, 500);
}
}
......@@ -1508,7 +1496,20 @@ myApp.controller("projectController", function ($scope, myFactory, exportUiGridS
}
$http(req).then(function mySuccess(response) {
$scope.result = "Success";
$scope.objectId = response.data.id;
if(response.data == "TeamMate updated successfuly"){
$timeout(function () {
getProjectDetails($scope.projectId, $scope.status);
removeTab('Add');
}, 500);
}
$mdDialog.show($mdDialog.alert({
skipHide: true,
textContent: response.data,
ok: 'ok'
})).then(function () {
$scope.myForm.$setPristine();
})
// $scope.objectId = response.data.id;
}, function myError(response){
$scope.result = "Error";
......
......@@ -150,7 +150,7 @@
<tr>
<td class="Employee">Start Date</td>
<td>
<md-datepicker ng-model="startDate " md-placeholder="Please select Date" id="startDate " md-min-date="minDate " md-max-date="maxDate "
<md-datepicker ng-model="startDate" ng-disabled = "true" md-placeholder="Please select Date" id="startDate " md-min-date="minDate " md-max-date="maxDate "
onkeydown="return false " name="startDate"></md-datepicker>
</td>
</tr>
......@@ -158,7 +158,7 @@
<tr>
<td class="Employee">End Date</td>
<td>
<md-datepicker ng-model="endDate " md-placeholder="Please select Date" id="endDate " md-min-date="minDate " md-max-date="maxDate "
<md-datepicker ng-model="endDate" md-placeholder="Please select Date" id="endDate " md-min-date="minDate " md-max-date="maxDate "
onkeydown="return false " name="endDate"></md-datepicker>
</td>
</tr>
......@@ -278,7 +278,7 @@
<tr>
<td class="Employee">Start Date</td>
<td>
<md-datepicker ng-model="startDate " md-placeholder="Please select Date" id="startDate " md-min-date="minDate " md-max-date="maxDate "
<md-datepicker ng-model="startDate" ng-disabled = "true" md-placeholder="Please select Date" id="startDate " md-min-date="minDate " md-max-date="maxDate "
onkeydown="return false " name="startDate"></md-datepicker>
</td>
</tr>
......
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