Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mytime
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Narendar Vakiti
mytime
Commits
133ef00c
Commit
133ef00c
authored
Aug 08, 2018
by
ssathu-nisum-com
Committed by
rbonthala-nisum-com
Aug 08, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
InactivateTheEmployeeFromProjectIfHeInactiveInManageEmployee (#131)
parent
2f529133
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
68 additions
and
4 deletions
+68
-4
ProjectServiceImpl.java
...ain/java/com/nisum/mytime/service/ProjectServiceImpl.java
+8
-4
UserServiceImpl.java
src/main/java/com/nisum/mytime/service/UserServiceImpl.java
+60
-0
No files found.
src/main/java/com/nisum/mytime/service/ProjectServiceImpl.java
View file @
133ef00c
...
...
@@ -296,14 +296,18 @@ public class ProjectServiceImpl implements ProjectService {
billings
.
setBillableStatus
(
pT
.
getBillableStatus
());
billings
.
setAccount
(
pT
.
getAccount
());
billings
.
setActive
(
true
);
// checking
/*billings.setBillingStartDate(pT.getStartDate() == null
if
(
pT
.
getProjectId
().
equals
(
MyTimeUtils
.
BENCH_PROJECT_ID
))
{
billings
.
setBillingStartDate
(
pT
.
getStartDate
()
==
null
?
DateUtils
.
truncate
(
new
Date
(),
Calendar
.
DATE
)
: DateUtils.truncate(pT.getStartDate(), Calendar.DATE));*/
:
DateUtils
.
truncate
(
pT
.
getStartDate
(),
Calendar
.
DATE
));
}
else
{
billings
.
setBillingStartDate
(
pT
.
getNewBillingStartDate
()
==
null
billings
.
setBillingStartDate
(
pT
.
getNewBillingStartDate
()
==
null
?
DateUtils
.
truncate
(
new
Date
(),
Calendar
.
DATE
)
:
DateUtils
.
truncate
(
pT
.
getNewBillingStartDate
(),
Calendar
.
DATE
));
}
if
(
pT
.
getEndDate
()
!=
null
)
{
billings
.
setBillingEndDate
(
...
...
src/main/java/com/nisum/mytime/service/UserServiceImpl.java
View file @
133ef00c
...
...
@@ -2,6 +2,7 @@ package com.nisum.mytime.service;
import
java.util.ArrayList
;
import
java.util.Calendar
;
import
java.util.Comparator
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.List
;
...
...
@@ -19,9 +20,11 @@ import org.springframework.stereotype.Service;
import
com.nisum.mytime.exception.handler.MyTimeException
;
import
com.nisum.mytime.model.Account
;
import
com.nisum.mytime.model.AccountInfo
;
import
com.nisum.mytime.model.BillingDetails
;
import
com.nisum.mytime.model.Designation
;
import
com.nisum.mytime.model.Domains
;
import
com.nisum.mytime.model.EmpLoginData
;
import
com.nisum.mytime.model.EmpShiftDetails
;
import
com.nisum.mytime.model.EmployeeLocationDetails
;
import
com.nisum.mytime.model.EmployeeRoles
;
import
com.nisum.mytime.model.Location
;
...
...
@@ -41,6 +44,7 @@ import com.nisum.mytime.repository.MasterDataRepo;
import
com.nisum.mytime.repository.ProjectRepo
;
import
com.nisum.mytime.repository.ProjectTeamMatesRepo
;
import
com.nisum.mytime.repository.ShiftRepo
;
import
com.nisum.mytime.repository.TeamMatesBillingRepo
;
import
com.nisum.mytime.repository.TechnologyRepo
;
import
com.nisum.mytime.utils.MyTimeUtils
;
import
com.nisum.mytime.utils.PdfReportGenerator
;
...
...
@@ -92,6 +96,9 @@ public class UserServiceImpl implements UserService {
@Autowired
private
AccountInfoRepo
accountInfoRepo
;
@Autowired
private
TeamMatesBillingRepo
teamMatesBillingRepo
;
@Override
public
Boolean
fetchEmployeesData
(
String
perticularDate
,
...
...
@@ -260,6 +267,28 @@ public class UserServiceImpl implements UserService {
projectTeamMatesRepo
.
save
(
profile
);
}
}
// inactive the employee from the assigned project
if
(
employeeRoles
.
getEmpStatus
().
equals
(
MyTimeUtils
.
IN_ACTIVE_SPACE
)
&&
employeeRoles
.
getEndDate
()
!=
null
&&
employeeRoles
.
getEndDate
().
compareTo
(
new
Date
())
<=
0
)
{
List
<
ProjectTeamMate
>
projectTeamMate
=
projectTeamMatesRepo
.
findByEmployeeIdAndActive
(
employeeRoles
.
getEmployeeId
(),
true
);
if
(
projectTeamMate
.
size
()==
1
)
{
ProjectTeamMate
teamMate
=
projectTeamMate
.
get
(
0
);
teamMate
.
setActive
(
false
);
teamMate
.
setEndDate
(
employeeRoles
.
getEndDate
());
List
<
BillingDetails
>
listBD
=
getEmployeeActiveBillingDetails
(
teamMate
.
getEmployeeId
(),
teamMate
.
getProjectId
());
if
(
listBD
!=
null
&&
!
listBD
.
isEmpty
())
{
BillingDetails
billingDetailsExisting
=
listBD
.
get
(
0
);
billingDetailsExisting
.
setBillingEndDate
(
employeeRoles
.
getEndDate
());
billingDetailsExisting
.
setActive
(
false
);
teamMatesBillingRepo
.
save
(
billingDetailsExisting
);
}
projectTeamMatesRepo
.
save
(
teamMate
);
updateShiftDetails
(
teamMate
);
}
}
}
catch
(
Exception
e
)
{
}
return
emp
;
...
...
@@ -495,4 +524,35 @@ public class UserServiceImpl implements UserService {
return
domains
;
}
public
List
<
BillingDetails
>
getEmployeeActiveBillingDetails
(
String
empId
,
String
projectId
)
{
Query
query4
=
new
Query
();
query4
.
addCriteria
(
Criteria
.
where
(
"active"
).
is
(
new
Boolean
(
true
)));
query4
.
addCriteria
(
Criteria
.
where
(
"employeeId"
).
is
(
empId
));
query4
.
addCriteria
(
Criteria
.
where
(
"projectId"
).
is
(
projectId
));
List
<
BillingDetails
>
billings
=
mongoTemplate
.
find
(
query4
,
BillingDetails
.
class
);
List
<
BillingDetails
>
billingsSorted
=
billings
;
try
{
billingsSorted
=
(
billings
==
null
||
billings
.
size
()
==
0
)
?
billings
:
billings
.
stream
().
sorted
(
Comparator
.
comparing
(
BillingDetails:
:
getBillingStartDate
).
reversed
())
.
collect
(
Collectors
.
toList
());
}
catch
(
Exception
e
)
{
// TODO: handle exception
}
return
billingsSorted
;
}
public
void
updateShiftDetails
(
ProjectTeamMate
existingTeammate
)
{
Query
getQuery
=
new
Query
();
getQuery
.
addCriteria
(
new
Criteria
().
andOperator
(
Criteria
.
where
(
"active"
).
is
(
true
),
Criteria
.
where
(
"employeeId"
).
is
(
existingTeammate
.
getEmployeeId
())));
Calendar
cal
=
Calendar
.
getInstance
();
cal
.
add
(
Calendar
.
DATE
,
-
1
);
EmpShiftDetails
existingShift
=
mongoTemplate
.
findOne
(
getQuery
,
EmpShiftDetails
.
class
);
if
(
existingShift
!=
null
)
{
existingShift
.
setActive
(
false
);
existingShift
.
setUpdatedDate
(
new
Date
());
mongoTemplate
.
save
(
existingShift
);
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment