Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
attendance-performance-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
attendance-performance-platform
Commits
411c566f
Commit
411c566f
authored
Aug 29, 2023
by
廖旭伟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
请假审批通过后统计考勤汇总
parent
0eccc2d6
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
59 additions
and
12 deletions
+59
-12
attendance-performance-manager/src/main/java/com/mortals/xhx/common/utils/AttendSummaryThread.java
...ava/com/mortals/xhx/common/utils/AttendSummaryThread.java
+33
-5
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceLeaveRecordServiceImpl.java
...ndance/service/impl/AttendanceLeaveRecordServiceImpl.java
+22
-1
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceRecordErrorServiceImpl.java
...ndance/service/impl/AttendanceRecordErrorServiceImpl.java
+3
-5
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceStatServiceImpl.java
...le/attendance/service/impl/AttendanceStatServiceImpl.java
+1
-1
No files found.
attendance-performance-manager/src/main/java/com/mortals/xhx/common/utils/AttendSummaryThread.java
View file @
411c566f
package
com.mortals.xhx.common.utils
;
package
com.mortals.xhx.common.utils
;
import
com.mortals.framework.util.DateUtils
;
import
com.mortals.framework.util.DateUtils
;
import
com.mortals.framework.util.StringUtils
;
import
com.mortals.xhx.module.attendance.model.AttendanceRecordErrorEntity
;
import
com.mortals.xhx.module.attendance.model.AttendanceRecordErrorEntity
;
import
com.mortals.xhx.module.attendance.model.vo.AttendanceSummaryQuery
;
import
com.mortals.xhx.module.attendance.model.vo.AttendanceSummaryQuery
;
import
com.mortals.xhx.module.attendance.service.AttendanceStatService
;
import
com.mortals.xhx.module.attendance.service.AttendanceStatService
;
...
@@ -12,6 +13,11 @@ import lombok.NonNull;
...
@@ -12,6 +13,11 @@ import lombok.NonNull;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
/**
* 考勤核查后续处理线程
* 考勤核查后续处理线程
*
*
...
@@ -24,16 +30,38 @@ public class AttendSummaryThread implements Runnable {
...
@@ -24,16 +30,38 @@ public class AttendSummaryThread implements Runnable {
@NonNull
@NonNull
private
AttendanceStatService
attendanceStatService
;
private
AttendanceStatService
attendanceStatService
;
@NonNull
@NonNull
private
Attendance
RecordErrorEntity
entit
y
;
private
Attendance
SummaryQuery
quer
y
;
@Override
@Override
public
void
run
()
{
public
void
run
()
{
AttendanceSummaryQuery
query
=
new
AttendanceSummaryQuery
();
// AttendanceSummaryQuery query = new AttendanceSummaryQuery();
query
.
setStaffId
(
entity
.
getStaffId
());
// query.setStaffId(entity.getStaffId());
query
.
setSummaryTime
(
DateUtils
.
getStrDate
(
entity
.
getErrorDateTime
()));
// query.setSummaryTime(DateUtils.getStrDate(entity.getErrorDateTime()));
if
(
StringUtils
.
isNotEmpty
(
query
.
getSummaryTimeStart
())
&&
StringUtils
.
isNotEmpty
(
query
.
getSummaryTimeEnd
()))
{
List
<
String
>
dateList
=
getDatesBetween
(
query
.
getSummaryTimeStart
(),
query
.
getSummaryTimeEnd
());
for
(
String
day
:
dateList
)
{
AttendanceSummaryQuery
temp
=
new
AttendanceSummaryQuery
(
day
);
attendanceStatService
.
doAttendanceSummary
(
temp
);
}
}
else
{
attendanceStatService
.
doAttendanceSummary
(
query
);
attendanceStatService
.
doAttendanceSummary
(
query
);
}
}
}
private
List
<
String
>
getDatesBetween
(
String
startDateStr
,
String
endDateStr
)
{
DateTimeFormatter
formatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
LocalDate
startDate
=
LocalDate
.
parse
(
startDateStr
,
formatter
);
LocalDate
endDate
=
LocalDate
.
parse
(
endDateStr
,
formatter
);
List
<
String
>
dates
=
new
ArrayList
<>();
//这里是判断开始日期是否在结束日期之后或者=结束日期
while
(
startDate
.
isBefore
(
endDate
)
||
startDate
.
isEqual
(
endDate
))
{
String
add
=
startDate
.
format
(
formatter
);
dates
.
add
(
add
);
startDate
=
startDate
.
plusDays
(
1
);
}
return
dates
;
}
}
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceLeaveRecordServiceImpl.java
View file @
411c566f
package
com.mortals.xhx.module.attendance.service.impl
;
package
com.mortals.xhx.module.attendance.service.impl
;
import
com.mortals.framework.util.DateUtils
;
import
com.mortals.framework.util.ThreadPool
;
import
com.mortals.xhx.common.utils.AttendSummaryThread
;
import
com.mortals.xhx.module.attendance.model.vo.AttendanceSummaryQuery
;
import
com.mortals.xhx.module.attendance.service.AttendanceStatService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
import
com.mortals.framework.exception.AppException
;
import
com.mortals.framework.exception.AppException
;
...
@@ -16,4 +22,19 @@ import com.mortals.xhx.module.attendance.service.AttendanceLeaveRecordService;
...
@@ -16,4 +22,19 @@ import com.mortals.xhx.module.attendance.service.AttendanceLeaveRecordService;
@Service
(
"attendanceLeaveRecordService"
)
@Service
(
"attendanceLeaveRecordService"
)
public
class
AttendanceLeaveRecordServiceImpl
extends
AbstractCRUDServiceImpl
<
AttendanceLeaveRecordDao
,
AttendanceLeaveRecordEntity
,
Long
>
implements
AttendanceLeaveRecordService
{
public
class
AttendanceLeaveRecordServiceImpl
extends
AbstractCRUDServiceImpl
<
AttendanceLeaveRecordDao
,
AttendanceLeaveRecordEntity
,
Long
>
implements
AttendanceLeaveRecordService
{
@Autowired
private
AttendanceStatService
attendanceStatService
;
@Override
protected
void
updateAfter
(
AttendanceLeaveRecordEntity
entity
,
Context
context
)
throws
AppException
{
super
.
updateAfter
(
entity
,
context
);
if
(
entity
.
getAuditResult
()==
1
){
AttendanceSummaryQuery
query
=
new
AttendanceSummaryQuery
();
query
.
setStaffId
(
entity
.
getLeavePersonId
());
query
.
setSummaryTimeStart
(
DateUtils
.
getStrDate
(
entity
.
getStartTime
()));
query
.
setSummaryTimeEnd
(
DateUtils
.
getStrDate
(
entity
.
getEndTime
()));
AttendSummaryThread
summaryThread
=
new
AttendSummaryThread
(
attendanceStatService
,
query
);
ThreadPool
.
getInstance
().
execute
(
summaryThread
);
}
}
}
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceRecordErrorServiceImpl.java
View file @
411c566f
...
@@ -148,13 +148,11 @@ public class AttendanceRecordErrorServiceImpl extends AbstractCRUDServiceImpl<At
...
@@ -148,13 +148,11 @@ public class AttendanceRecordErrorServiceImpl extends AbstractCRUDServiceImpl<At
//异常处理后重新汇总考勤
//异常处理后重新汇总考勤
if
(
StringUtils
.
isNotEmpty
(
entity
.
getProcessResult
()))
{
if
(
StringUtils
.
isNotEmpty
(
entity
.
getProcessResult
()))
{
AttendSummaryThread
summaryThread
=
new
AttendSummaryThread
(
attendanceStatService
,
entity
);
AttendanceSummaryQuery
query
=
new
AttendanceSummaryQuery
();
ThreadPool
.
getInstance
().
execute
(
summaryThread
);
/* AttendanceSummaryQuery query = new AttendanceSummaryQuery();
query
.
setStaffId
(
entity
.
getStaffId
());
query
.
setStaffId
(
entity
.
getStaffId
());
query
.
setSummaryTime
(
DateUtils
.
getStrDate
(
entity
.
getErrorDateTime
()));
query
.
setSummaryTime
(
DateUtils
.
getStrDate
(
entity
.
getErrorDateTime
()));
attendanceStatService.doAttendanceSummary(query);*/
AttendSummaryThread
summaryThread
=
new
AttendSummaryThread
(
attendanceStatService
,
query
);
ThreadPool
.
getInstance
().
execute
(
summaryThread
);
}
}
}
}
}
}
...
...
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceStatServiceImpl.java
View file @
411c566f
...
@@ -155,7 +155,7 @@ public class AttendanceStatServiceImpl extends AbstractCRUDServiceImpl<Attendanc
...
@@ -155,7 +155,7 @@ public class AttendanceStatServiceImpl extends AbstractCRUDServiceImpl<Attendanc
if
(
StringUtils
.
isEmpty
(
query
.
getSummaryTime
()))
{
if
(
StringUtils
.
isEmpty
(
query
.
getSummaryTime
()))
{
Calendar
now
=
Calendar
.
getInstance
();
Calendar
now
=
Calendar
.
getInstance
();
now
.
setTime
(
new
Date
());
now
.
setTime
(
new
Date
());
now
.
add
(
Calendar
.
DAY_OF_MONTH
,
-
1
);
//默认查
最近30
天数据
now
.
add
(
Calendar
.
DAY_OF_MONTH
,
-
1
);
//默认查
前一
天数据
query
.
setSummaryTime
(
DateUtils
.
getStrDate
(
now
.
getTime
()));
query
.
setSummaryTime
(
DateUtils
.
getStrDate
(
now
.
getTime
()));
}
}
Calendar
calendar
=
Calendar
.
getInstance
();
Calendar
calendar
=
Calendar
.
getInstance
();
...
...
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