Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
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
youjj
cloud-platform
Commits
5df7b2f1
Commit
5df7b2f1
authored
Sep 29, 2019
by
hanfeng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改订单统计
parent
8cd193db
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
90 additions
and
48 deletions
+90
-48
OrderDateUtils.java
...in/java/com/xxfc/platform/order/Utils/OrderDateUtils.java
+33
-0
OrderStatisticsBiz.java
.../java/com/xxfc/platform/order/biz/OrderStatisticsBiz.java
+55
-47
OrderStatisticsController.java
...form/order/rest/background/OrderStatisticsController.java
+2
-1
No files found.
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/Utils/OrderDateUtils.java
View file @
5df7b2f1
package
com
.
xxfc
.
platform
.
order
.
Utils
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.Calendar
;
import
java.util.Date
;
public
class
OrderDateUtils
{
...
...
@@ -75,4 +78,34 @@ public class OrderDateUtils {
return
cal
.
get
(
Calendar
.
YEAR
)
+
"-"
+
(
cal
.
get
(
Calendar
.
MONTH
)
+
1
)
+
"-"
+
cal
.
get
(
Calendar
.
DAY_OF_MONTH
);
}
public
static
String
timeStampConversionToString
(
Long
time
)
{
SimpleDateFormat
simpleDateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
Date
date
=
new
Date
(
time
);
return
simpleDateFormat
.
format
(
date
);
}
public
static
Long
ConvertingStringsToTimestamps
(
String
time
)
throws
ParseException
{
SimpleDateFormat
simpleDateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
return
simpleDateFormat
.
parse
(
time
).
getTime
();
}
public
static
Integer
getTodayOfWeek
()
{
Calendar
cal
=
Calendar
.
getInstance
();
cal
.
setFirstDayOfWeek
(
Calendar
.
MONDAY
);
cal
.
setTimeInMillis
(
System
.
currentTimeMillis
());
return
cal
.
get
(
Calendar
.
WEEK_OF_YEAR
);
}
public
static
Integer
getTodayOfMonth
()
{
Calendar
cal
=
Calendar
.
getInstance
();
cal
.
setTimeInMillis
(
System
.
currentTimeMillis
());
return
cal
.
get
(
Calendar
.
MONTH
)+
1
;
}
public
static
Integer
getThisYear
()
{
Calendar
cal
=
Calendar
.
getInstance
();
cal
.
setTimeInMillis
(
System
.
currentTimeMillis
());
return
cal
.
get
(
Calendar
.
YEAR
);
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderStatisticsBiz.java
View file @
5df7b2f1
...
...
@@ -26,6 +26,7 @@ import org.springframework.stereotype.Service;
import
java.math.BigDecimal
;
import
java.text.DateFormat
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
import
java.util.stream.Collectors
;
...
...
@@ -90,7 +91,8 @@ public class OrderStatisticsBiz extends BaseBiz<OrderStatisticsMapper, OrderStat
return
result
;
}
public
PageResult
<
MembersOrderDto
>
getMemberOrderStatistics
(
List
<
BaseUserMemberLevel
>
memberLevels
,
OrderQuery
query
)
{
public
PageResult
<
MembersOrderDto
>
getMemberOrderStatistics
(
List
<
BaseUserMemberLevel
>
memberLevels
,
OrderQuery
query
)
throws
ParseException
{
List
<
MembersOrder
>
membersOrderList
=
membersBiz
.
getMemberOrderStatistics
(
query
);
//按每天分类
...
...
@@ -117,55 +119,66 @@ public class OrderStatisticsBiz extends BaseBiz<OrderStatisticsMapper, OrderStat
arrayList
.
add
(
mbdto
);
}
}
else
{
if
(
membersOrderList
.
size
()
==
1
)
{
MembersOrder
mb
=
membersOrderList
.
get
(
0
);
for
(
int
i
=
0
;
i
<
membersOrderList
.
size
();
i
++)
{
MembersOrder
mb
=
membersOrderList
.
get
(
i
);
String
period
=
mb
.
getPeriod
();
if
(
StringUtils
.
isBlank
(
period
))
{
continue
;
}
MembersOrderDto
mbdto
=
new
MembersOrderDto
();
//设置时间段
mbdto
.
setTimeSlot
(
query
.
getStartTime
()
+
"-"
+
query
.
getEndTime
());
TotalPaymentAndMemberName
(
map
,
mb
,
mbdto
);
arrayList
.
add
(
mbdto
);
}
else
{
for
(
int
i
=
0
;
i
<
membersOrderList
.
size
();
i
++)
{
MembersOrder
mb
=
membersOrderList
.
get
(
i
);
String
period
=
mb
.
getPeriod
();
if
(
StringUtils
.
isBlank
(
period
))
{
continue
;
}
MembersOrderDto
mbdto
=
new
MembersOrderDto
();
String
[]
periods
=
mb
.
getPeriod
().
split
(
"-"
);
String
startDay
=
null
;
String
endDay
=
null
;
if
(
OrderInquiryType
.
WEEK
.
getCode
().
equals
(
query
.
getType
()))
{
startDay
=
OrderDateUtils
.
getEndDayOfWeekNo
(
Integer
.
parseInt
(
periods
[
0
]),
Integer
.
parseInt
(
periods
[
1
]));
endDay
=
OrderDateUtils
.
getStartDayOfWeekNo
(
Integer
.
parseInt
(
periods
[
0
]),
Integer
.
parseInt
(
periods
[
1
]));
}
if
(
OrderInquiryType
.
MONTH
.
getCode
().
equals
(
query
.
getType
()))
{
startDay
=
OrderDateUtils
.
getFirstDayOfMonth
(
Integer
.
parseInt
(
periods
[
0
]),
Integer
.
parseInt
(
periods
[
1
]));
endDay
=
OrderDateUtils
.
getLastDayOfMonth
(
Integer
.
parseInt
(
periods
[
0
]),
Integer
.
parseInt
(
periods
[
1
]));
}
if
(
i
==
0
)
{
String
[]
periods
=
mb
.
getPeriod
().
split
(
"-"
);
String
startDay
=
null
;
String
endDay
=
null
;
Integer
time
=
null
;
if
(
OrderInquiryType
.
WEEK
.
getCode
().
equals
(
query
.
getType
()))
{
startDay
=
OrderDateUtils
.
getEndDayOfWeekNo
(
Integer
.
parseInt
(
periods
[
0
]),
Integer
.
parseInt
(
periods
[
1
]));
endDay
=
OrderDateUtils
.
getStartDayOfWeekNo
(
Integer
.
parseInt
(
periods
[
0
]),
Integer
.
parseInt
(
periods
[
1
]));
//获取今天是今年的第几周
time
=
OrderDateUtils
.
getTodayOfWeek
();
}
Integer
thisYear
=
OrderDateUtils
.
getThisYear
();
if
(
OrderInquiryType
.
MONTH
.
getCode
().
equals
(
query
.
getType
()))
{
startDay
=
OrderDateUtils
.
getFirstDayOfMonth
(
Integer
.
parseInt
(
periods
[
0
]),
Integer
.
parseInt
(
periods
[
1
]));
endDay
=
OrderDateUtils
.
getLastDayOfMonth
(
Integer
.
parseInt
(
periods
[
0
]),
Integer
.
parseInt
(
periods
[
1
]));
//获取今天是今年的第几个月
time
=
OrderDateUtils
.
getTodayOfMonth
();
}
startDay
=
timeStampConversionToString
(
query
.
getStartTime
());
}
if
(
i
==
(
membersOrderList
.
size
()
-
1
))
{
endDay
=
timeStampConversionToString
(
query
.
getEndTime
());
}
if
(
StringUtils
.
isNotBlank
(
startDay
)
&&
StringUtils
.
isNotBlank
(
endDay
))
{
mbdto
.
setTimeSlot
(
startDay
+
"-"
+
endDay
);
}
else
{
mbdto
.
setTimeSlot
(
""
);
if
(
i
==
0
&&
query
.
getStartTime
()
!=
null
)
{
startDay
=
OrderDateUtils
.
timeStampConversionToString
(
query
.
getStartTime
());
}
//获取当前的年.周(年.月)小数
double
today
=
Double
.
parseDouble
(
thisYear
+
"."
+
time
);
if
(
i
==
(
membersOrderList
.
size
()
-
1
))
{
//查询到的最后一条数据年.周(年.月)小数
double
date
=
Double
.
parseDouble
(
Integer
.
parseInt
(
periods
[
0
])
+
"."
+
Integer
.
parseInt
(
periods
[
1
]));
if
(
date
==
today
)
{
endDay
=
OrderDateUtils
.
timeStampConversionToString
(
System
.
currentTimeMillis
());
}
else
if
(
date
<
today
)
{
//获取最后一条数据,周末日期
Long
end
=
OrderDateUtils
.
ConvertingStringsToTimestamps
(
endDay
);
//查询的结束日期
Long
endTime
=
query
.
getEndTime
();
if
(
endTime
!=
null
&&
end
>
endTime
)
{
endDay
=
OrderDateUtils
.
timeStampConversionToString
(
query
.
getEndTime
());
}
}
arrayList
.
add
(
mbdto
);
}
if
(
StringUtils
.
isNotBlank
(
startDay
)
&&
StringUtils
.
isNotBlank
(
endDay
))
{
mbdto
.
setTimeSlot
(
startDay
+
"-"
+
endDay
);
}
else
{
mbdto
.
setTimeSlot
(
""
);
}
TotalPaymentAndMemberName
(
map
,
mb
,
mbdto
);
arrayList
.
add
(
mbdto
);
}
}
//进行分页处理
//进行分页处理
return
pagingProcessing
(
query
,
arrayList
);
return
pagingProcessing
(
query
,
arrayList
);
}
...
...
@@ -176,11 +189,6 @@ public class OrderStatisticsBiz extends BaseBiz<OrderStatisticsMapper, OrderStat
return
pageResult
;
}
private
String
timeStampConversionToString
(
Long
startTime
)
{
SimpleDateFormat
simpleDateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
Date
date
=
new
Date
(
startTime
);
return
simpleDateFormat
.
format
(
date
);
}
private
void
TotalPaymentAndMemberName
(
HashMap
<
Integer
,
String
>
map
,
MembersOrder
mb
,
MembersOrderDto
mbdto
)
{
BigDecimal
totalPayment
=
mbdto
.
getTotalPayment
();
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/OrderStatisticsController.java
View file @
5df7b2f1
...
...
@@ -23,6 +23,7 @@ import org.springframework.beans.factory.annotation.Value;
import
org.springframework.web.bind.annotation.*
;
import
java.text.DateFormat
;
import
java.text.ParseException
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
...
...
@@ -134,7 +135,7 @@ public class OrderStatisticsController extends BaseController<OrderStatisticsBiz
@PostMapping
(
"/order"
)
@ApiOperation
(
value
=
"会员统计"
)
public
ObjectRestResponse
getMemberOrderStatisticsData
(
@RequestBody
OrderQuery
query
)
{
public
ObjectRestResponse
getMemberOrderStatisticsData
(
@RequestBody
OrderQuery
query
)
throws
ParseException
{
//获取会员等级信息
List
<
BaseUserMemberLevel
>
memberLevels
=
userFeign
.
levels
();
...
...
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