Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
work2
Overview
Overview
Details
Activity
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
谢春璐
work2
Commits
b8745147
Commit
b8745147
authored
6 years ago
by
谢春璐
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
bc08f3ed
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
53 additions
and
9 deletions
+53
-9
src/main/java/com/zanchina/check/common/DateUtils.java
+24
-1
src/main/java/com/zanchina/check/service/impl/FileServiceImpl.java
+25
-7
src/test/java/com/zanchina/check/CheckApplicationTests.java
+4
-1
No files found.
src/main/java/com/zanchina/check/common/DateUtils.java
View file @
b8745147
...
@@ -7,11 +7,14 @@ import java.time.LocalDateTime;
...
@@ -7,11 +7,14 @@ import java.time.LocalDateTime;
import
java.time.Month
;
import
java.time.Month
;
import
java.time.YearMonth
;
import
java.time.YearMonth
;
import
java.time.ZoneId
;
import
java.time.ZoneId
;
import
java.time.temporal.ChronoUnit
;
import
java.util.ArrayList
;
import
java.util.Calendar
;
import
java.util.Calendar
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
import
java.util.stream.IntStream
;
import
java.util.stream.IntStream
;
import
java.util.stream.Stream
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.time.DateFormatUtils
;
import
org.apache.commons.lang3.time.DateFormatUtils
;
import
org.apache.poi.ss.usermodel.DateUtil
;
import
org.apache.poi.ss.usermodel.DateUtil
;
...
@@ -116,7 +119,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
...
@@ -116,7 +119,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
}
}
public
static
String
[]
WEEK_DAYS_ZJ
=
{
"
星期天"
,
"星期一"
,
"星期二"
,
"星期三"
,
"星期四"
,
"星期五"
,
"星期
六"
};
public
static
String
[]
WEEK_DAYS_ZJ
=
{
"
周日"
,
"周一"
,
"周二"
,
"周三"
,
"周四"
,
"周五"
,
"周
六"
};
/**
/**
* 根据日期获取星期几
* 根据日期获取星期几
...
@@ -330,5 +333,25 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
...
@@ -330,5 +333,25 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
return
dates
;
return
dates
;
}
}
/**
* 获取指定两个日期之间的所有日期
*/
public
static
List
<
String
>
getAllDatesOfTwoDate
(
String
start
,
String
end
)
{
List
<
String
>
list
=
new
ArrayList
<>();
LocalDate
startDate
=
LocalDate
.
parse
(
start
);
LocalDate
endDate
=
LocalDate
.
parse
(
end
);
long
distance
=
ChronoUnit
.
DAYS
.
between
(
startDate
,
endDate
);
Stream
.
iterate
(
startDate
,
d
->
{
return
d
.
plusDays
(
1
);
}).
limit
(
distance
+
1
).
forEach
(
f
->
{
list
.
add
(
f
.
toString
());
});
return
list
;
}
}
}
This diff is collapsed.
Click to expand it.
src/main/java/com/zanchina/check/service/impl/FileServiceImpl.java
View file @
b8745147
...
@@ -122,12 +122,29 @@ public class FileServiceImpl implements FileService {
...
@@ -122,12 +122,29 @@ public class FileServiceImpl implements FileService {
ArrayList
<
String
>
titleList
=
new
ArrayList
<>();
ArrayList
<
String
>
titleList
=
new
ArrayList
<>();
titleList
.
add
(
"姓名"
);
titleList
.
add
(
"姓名"
);
titleList
.
addAll
(
staffList
.
stream
().
max
(
Comparator
.
comparing
(
staff
->
staff
.
getWorkCheckList
().
size
())).
get
()
.
getWorkCheckList
().
stream
().
map
(
workCheck
->
// 取打卡记录中最早日期和最晚日期为标题的开始日期和结束日期
DateUtils
.
format
(
DateUtils
.
parseDate
(
workCheck
.
getDate
()),
DateUtils
.
yyyyMMdd1
).
concat
(
"("
)
String
start
=
staffList
.
stream
().
min
(
Comparator
.
comparing
(
staff
->
staff
.
getWorkCheckList
().
get
(
0
).
getDate
()))
.
concat
(
DateUtils
.
getWeekday
(
DateUtils
.
parseDate
(
workCheck
.
getDate
())))
.
get
()
.
concat
(
")"
)
.
getWorkCheckList
().
get
(
0
).
getDate
();
).
collect
(
Collectors
.
toList
()));
List
<
WorkCheck
>
workCheckList
=
staffList
.
stream
()
.
max
(
Comparator
.
comparing
(
staff
->
staff
.
getWorkCheckList
().
get
(
staff
.
getWorkCheckList
().
size
()
-
1
).
getDate
()))
.
get
()
.
getWorkCheckList
();
String
end
=
workCheckList
.
get
(
workCheckList
.
size
()
-
1
).
getDate
();
List
<
String
>
dateStrs
=
DateUtils
.
getAllDatesOfTwoDate
(
DateUtils
.
format
(
DateUtils
.
parseDate
(
start
),
DateUtils
.
yyyyMMdd
),
DateUtils
.
format
(
DateUtils
.
parseDate
(
end
),
DateUtils
.
yyyyMMdd
));
titleList
.
addAll
(
dateStrs
.
stream
().
map
(
d
->
d
.
concat
(
"("
)
.
concat
(
DateUtils
.
getWeekday
(
DateUtils
.
parseDate
(
d
)))
.
concat
(
")"
)
).
collect
(
Collectors
.
toList
()));
String
[]
titleStrArr
=
titleList
.
toArray
(
new
String
[
titleList
.
size
()]);
String
[]
titleStrArr
=
titleList
.
toArray
(
new
String
[
titleList
.
size
()]);
data
.
setTitles
(
titleStrArr
);
data
.
setTitles
(
titleStrArr
);
...
@@ -149,7 +166,8 @@ public class FileServiceImpl implements FileService {
...
@@ -149,7 +166,8 @@ public class FileServiceImpl implements FileService {
.
equalsIgnoreCase
(
Integer
.
toString
(
7
));
.
equalsIgnoreCase
(
Integer
.
toString
(
7
));
for
(
WorkCheck
check
:
staff
.
getWorkCheckList
())
{
for
(
WorkCheck
check
:
staff
.
getWorkCheckList
())
{
if
(
title
.
substring
(
0
,
title
.
indexOf
(
"("
)).
equalsIgnoreCase
(
check
.
getDate
()))
{
if
(
title
.
substring
(
0
,
title
.
indexOf
(
"("
)).
equalsIgnoreCase
(
DateUtils
.
format
(
DateUtils
.
parseDate
(
check
.
getDate
()),
DateUtils
.
yyyyMMdd
)))
{
String
detail
=
""
;
String
detail
=
""
;
if
(!
isWeekend
)
{
if
(!
isWeekend
)
{
...
...
This diff is collapsed.
Click to expand it.
src/test/java/com/zanchina/check/CheckApplicationTests.java
View file @
b8745147
...
@@ -3,6 +3,7 @@ package com.zanchina.check;
...
@@ -3,6 +3,7 @@ package com.zanchina.check;
import
com.zanchina.check.common.DateUtils
;
import
com.zanchina.check.common.DateUtils
;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
org.junit.Test
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.junit.runner.RunWith
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.boot.test.context.SpringBootTest
;
...
@@ -18,7 +19,9 @@ public class CheckApplicationTests {
...
@@ -18,7 +19,9 @@ public class CheckApplicationTests {
Date
d1
=
DateUtils
.
parseDate
(
"9:00"
,
DateUtils
.
HHmm
);
Date
d1
=
DateUtils
.
parseDate
(
"9:00"
,
DateUtils
.
HHmm
);
Date
d2
=
DateUtils
.
parseDate
(
"2018/06/19 9:00"
,
DateUtils
.
yyyyMMddHHmm1
);
Date
d2
=
DateUtils
.
parseDate
(
"2018/06/19 9:00"
,
DateUtils
.
yyyyMMddHHmm1
);
System
.
out
.
print
(
d1
.
before
(
d2
));
List
<
String
>
allDatesOfTwoDate
=
DateUtils
.
getAllDatesOfTwoDate
(
"2018-06-30"
,
"2018-07-15"
);
System
.
out
.
print
(
allDatesOfTwoDate
);
}
}
}
}
This diff is collapsed.
Click to expand it.
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