Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
peizhen-java
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
PeiZhen-Java
peizhen-java
Commits
cdb32d01
Commit
cdb32d01
authored
Oct 09, 2023
by
邹磊浩
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改代码
parent
1b1b6d84
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
152 additions
and
14 deletions
+152
-14
pz-admin/src/main/java/com/pz/web/controller/system/DataViewController.java
+9
-6
pz-common/src/main/java/com/pz/common/utils/DateUtils.java
+35
-1
pz-system/src/main/java/com/pz/system/domain/bo/OrderColumnarBo.java
+25
-0
pz-system/src/main/java/com/pz/system/domain/bo/YypzOrderBo.java
+1
-1
pz-system/src/main/java/com/pz/system/domain/vo/OrderColumnarVo.java
+4
-1
pz-system/src/main/java/com/pz/system/domain/vo/OrderLineVo.java
+13
-0
pz-system/src/main/java/com/pz/system/mapper/TotalOrderMapper.java
+1
-1
pz-system/src/main/java/com/pz/system/service/ITotalOrderService.java
+12
-0
pz-system/src/main/java/com/pz/system/service/impl/TotalOrderServiceImpl.java
+39
-0
pz-system/src/main/resources/mapper/system/TotalOrderMapper.xml
+4
-1
pz-system/src/main/resources/mapper/system/YypzOrderMapper.xml
+9
-3
No files found.
pz-admin/src/main/java/com/pz/web/controller/system/DataViewController.java
View file @
cdb32d01
...
@@ -8,8 +8,10 @@ import com.pz.common.core.domain.PageQuery;
...
@@ -8,8 +8,10 @@ import com.pz.common.core.domain.PageQuery;
import
com.pz.common.core.domain.R
;
import
com.pz.common.core.domain.R
;
import
com.pz.common.core.page.TableDataInfo
;
import
com.pz.common.core.page.TableDataInfo
;
import
com.pz.system.domain.bo.DbghOrderBo
;
import
com.pz.system.domain.bo.DbghOrderBo
;
import
com.pz.system.domain.bo.OrderColumnarBo
;
import
com.pz.system.domain.vo.DbghOrderVo
;
import
com.pz.system.domain.vo.DbghOrderVo
;
import
com.pz.system.domain.vo.OrderColumnarVo
;
import
com.pz.system.domain.vo.OrderColumnarVo
;
import
com.pz.system.domain.vo.OrderLineVo
;
import
com.pz.system.mapper.TotalOrderMapper
;
import
com.pz.system.mapper.TotalOrderMapper
;
import
com.pz.common.core.domain.R
;
import
com.pz.common.core.domain.R
;
import
com.pz.merchant.service.ICompanyService
;
import
com.pz.merchant.service.ICompanyService
;
...
@@ -21,6 +23,7 @@ import com.pz.system.domain.vo.DbghOrderVo;
...
@@ -21,6 +23,7 @@ import com.pz.system.domain.vo.DbghOrderVo;
import
com.pz.system.service.IStoreApplyService
;
import
com.pz.system.service.IStoreApplyService
;
import
com.pz.system.service.ISysUserService
;
import
com.pz.system.service.ISysUserService
;
import
com.pz.system.service.ITotalOrderService
;
import
com.pz.system.service.ITotalOrderService
;
import
com.pz.system.service.ITotalOrderService
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
...
@@ -32,6 +35,7 @@ import javax.validation.constraints.NotNull;
...
@@ -32,6 +35,7 @@ import javax.validation.constraints.NotNull;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotEmpty
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* 数据总览
* 数据总览
...
@@ -44,6 +48,7 @@ import java.util.List;
...
@@ -44,6 +48,7 @@ import java.util.List;
@RestController
@RestController
@RequestMapping
(
"/system/data"
)
@RequestMapping
(
"/system/data"
)
public
class
DataViewController
extends
BaseController
{
public
class
DataViewController
extends
BaseController
{
private
final
ITotalOrderService
iTotalOrderService
;
private
final
ISysUserService
iSysUserService
;
private
final
ISysUserService
iSysUserService
;
...
@@ -53,8 +58,6 @@ public class DataViewController extends BaseController {
...
@@ -53,8 +58,6 @@ public class DataViewController extends BaseController {
private
final
IStoreApplyService
iStoreApplyService
;
private
final
IStoreApplyService
iStoreApplyService
;
private
final
ITotalOrderService
iTotalOrderService
;
/**
/**
* 新增用户统计
* 新增用户统计
*/
*/
...
@@ -126,9 +129,9 @@ public class DataViewController extends BaseController {
...
@@ -126,9 +129,9 @@ public class DataViewController extends BaseController {
/**
/**
* 数据总览柱状图
* 数据总览柱状图
*/
*/
@GetMapping
(
"/findOrderColumnarVoList
/{type}
"
)
@GetMapping
(
"/findOrderColumnarVoList"
)
public
R
<
List
<
Order
Columnar
Vo
>>
findOrderColumnarVoList
(
public
R
<
List
<
Order
Line
Vo
>>
findOrderColumnarVoList
(
@PathVariable
Integer
type
)
{
OrderColumnarBo
bo
)
{
return
R
.
ok
(
totalOrderMapper
.
findOrderColumnarVoList
(
type
));
return
R
.
ok
(
iTotalOrderService
.
findOrderColumnarVoList
(
bo
));
}
}
}
}
pz-common/src/main/java/com/pz/common/utils/DateUtils.java
View file @
cdb32d01
...
@@ -16,7 +16,9 @@ import java.time.LocalTime;
...
@@ -16,7 +16,9 @@ import java.time.LocalTime;
import
java.time.ZoneId
;
import
java.time.ZoneId
;
import
java.time.ZonedDateTime
;
import
java.time.ZonedDateTime
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* 时间工具类
* 时间工具类
...
@@ -87,6 +89,37 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
...
@@ -87,6 +89,37 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
}
}
}
}
public
static
List
<
String
>
getRecentDates
(
int
days
)
{
List
<
String
>
recentDates
=
new
ArrayList
<>();
LocalDate
currentDate
=
LocalDate
.
now
();
java
.
time
.
format
.
DateTimeFormatter
formatter
=
java
.
time
.
format
.
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
for
(
int
i
=
0
;
i
<
days
;
i
++)
{
String
date
=
currentDate
.
format
(
formatter
);
recentDates
.
add
(
date
);
currentDate
=
currentDate
.
minusDays
(
1
);
}
// 添加当天日期
recentDates
.
add
(
currentDate
.
format
(
formatter
));
return
recentDates
;
}
public
static
List
<
String
>
getDateRange
(
String
startDateStr
,
String
endDateStr
)
{
List
<
String
>
dateList
=
new
ArrayList
<>();
LocalDate
startDate
=
LocalDate
.
parse
(
startDateStr
);
LocalDate
endDate
=
LocalDate
.
parse
(
endDateStr
);
LocalDate
currentDate
=
startDate
;
java
.
time
.
format
.
DateTimeFormatter
formatter
=
java
.
time
.
format
.
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
while
(!
currentDate
.
isAfter
(
endDate
))
{
dateList
.
add
(
currentDate
.
format
(
formatter
));
currentDate
=
currentDate
.
plusDays
(
1
);
}
return
dateList
;
}
/**
/**
* 日期路径 即年/月/日 如2018/08/08
* 日期路径 即年/月/日 如2018/08/08
*/
*/
...
@@ -97,11 +130,12 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
...
@@ -97,11 +130,12 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
/**
/**
* 字符串转换成日期
* 字符串转换成日期
*
* @param strDate 日期字符串
* @param strDate 日期字符串
* @param pattern 日期的格式,如:DateUtils.DATE_TIME_PATTERN
* @param pattern 日期的格式,如:DateUtils.DATE_TIME_PATTERN
*/
*/
public
static
Date
stringToDate
(
String
strDate
,
String
pattern
)
{
public
static
Date
stringToDate
(
String
strDate
,
String
pattern
)
{
if
(
StringUtils
.
isBlank
(
strDate
)){
if
(
StringUtils
.
isBlank
(
strDate
))
{
return
null
;
return
null
;
}
}
...
...
pz-system/src/main/java/com/pz/system/domain/bo/OrderColumnarBo.java
0 → 100644
View file @
cdb32d01
package
com
.
pz
.
system
.
domain
.
bo
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
OrderColumnarBo
implements
Serializable
{
/**
* 0:近七天,1:近三十天,2:自定义
*/
private
Integer
type
;
private
String
time
;
/**
* 自定义开始时间
*/
private
String
startTime
;
/**
* 自定义结束时间
*/
private
String
endTime
;
}
pz-system/src/main/java/com/pz/system/domain/bo/YypzOrderBo.java
View file @
cdb32d01
...
@@ -79,5 +79,5 @@ public class YypzOrderBo extends BaseEntity {
...
@@ -79,5 +79,5 @@ public class YypzOrderBo extends BaseEntity {
*/
*/
private
String
remark
;
private
String
remark
;
private
Long
userId
;
}
}
pz-system/src/main/java/com/pz/system/domain/vo/OrderColumnarVo.java
View file @
cdb32d01
...
@@ -11,7 +11,10 @@ public class OrderColumnarVo implements Serializable {
...
@@ -11,7 +11,10 @@ public class OrderColumnarVo implements Serializable {
* 业务名称
* 业务名称
*/
*/
private
String
name
;
private
String
name
;
/**
* 日期
*/
private
String
time
;
/**
/**
* 数量
* 数量
*/
*/
...
...
pz-system/src/main/java/com/pz/system/domain/vo/OrderLineVo.java
0 → 100644
View file @
cdb32d01
package
com
.
pz
.
system
.
domain
.
vo
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.List
;
@Data
public
class
OrderLineVo
implements
Serializable
{
private
String
key
;
private
List
<
OrderColumnarVo
>
list
;
}
pz-system/src/main/java/com/pz/system/mapper/TotalOrderMapper.java
View file @
cdb32d01
...
@@ -71,5 +71,5 @@ public interface TotalOrderMapper extends BaseMapperPlus<TotalOrderMapper, Total
...
@@ -71,5 +71,5 @@ public interface TotalOrderMapper extends BaseMapperPlus<TotalOrderMapper, Total
* @param type
* @param type
* @return
* @return
*/
*/
List
<
OrderColumnarVo
>
findOrderColumnarVoList
(
@Param
(
"t
ype"
)
Integer
typ
e
);
List
<
OrderColumnarVo
>
findOrderColumnarVoList
(
@Param
(
"t
ime"
)
String
tim
e
);
}
}
pz-system/src/main/java/com/pz/system/service/ITotalOrderService.java
View file @
cdb32d01
...
@@ -6,17 +6,22 @@ import com.pz.common.core.domain.R;
...
@@ -6,17 +6,22 @@ import com.pz.common.core.domain.R;
import
com.pz.system.domain.TotalOrder
;
import
com.pz.system.domain.TotalOrder
;
import
com.pz.system.domain.bo.CreateOrderBo
;
import
com.pz.system.domain.bo.CreateOrderBo
;
import
com.pz.system.domain.bo.DataViewBo
;
import
com.pz.system.domain.bo.DataViewBo
;
import
com.pz.system.domain.bo.OrderColumnarBo
;
import
com.pz.system.domain.vo.AccompanyDemandVo
;
import
com.pz.system.domain.vo.AccompanyDemandVo
;
import
com.pz.system.domain.vo.DataOrderVo
;
import
com.pz.system.domain.vo.DataOrderVo
;
import
com.pz.system.domain.vo.DataViewVo
;
import
com.pz.system.domain.vo.DataViewVo
;
import
com.pz.system.domain.vo.OrderColumnarVo
;
import
com.pz.system.domain.vo.OrderLineVo
;
import
com.pz.system.domain.vo.TotalOrderVo
;
import
com.pz.system.domain.vo.TotalOrderVo
;
import
com.pz.system.domain.bo.TotalOrderBo
;
import
com.pz.system.domain.bo.TotalOrderBo
;
import
com.pz.common.core.page.TableDataInfo
;
import
com.pz.common.core.page.TableDataInfo
;
import
com.pz.common.core.domain.PageQuery
;
import
com.pz.common.core.domain.PageQuery
;
import
org.apache.ibatis.annotations.Param
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.NotNull
;
import
java.util.Collection
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* 总订单Service接口
* 总订单Service接口
...
@@ -165,4 +170,11 @@ public interface ITotalOrderService {
...
@@ -165,4 +170,11 @@ public interface ITotalOrderService {
* 订单量
* 订单量
*/
*/
DataOrderVo
orderQuantity
(
DataViewBo
dataViewBo
);
DataOrderVo
orderQuantity
(
DataViewBo
dataViewBo
);
/**
* 数据总览
* @param bo
* @return
*/
List
<
OrderLineVo
>
findOrderColumnarVoList
(
OrderColumnarBo
bo
);
}
}
pz-system/src/main/java/com/pz/system/service/impl/TotalOrderServiceImpl.java
View file @
cdb32d01
...
@@ -22,6 +22,7 @@ import com.pz.common.enums.CommonOrderStatus;
...
@@ -22,6 +22,7 @@ import com.pz.common.enums.CommonOrderStatus;
import
com.pz.common.enums.TotalOrderStatus
;
import
com.pz.common.enums.TotalOrderStatus
;
import
com.pz.common.exception.ServiceException
;
import
com.pz.common.exception.ServiceException
;
import
com.pz.common.helper.LoginHelper
;
import
com.pz.common.helper.LoginHelper
;
import
com.pz.common.utils.DateUtils
;
import
com.pz.common.utils.HttpUtils
;
import
com.pz.common.utils.HttpUtils
;
import
com.pz.common.utils.JsonUtils
;
import
com.pz.common.utils.JsonUtils
;
import
com.pz.merchant.domain.Company
;
import
com.pz.merchant.domain.Company
;
...
@@ -38,6 +39,7 @@ import com.pz.system.datastructure.OrderDelayQueue;
...
@@ -38,6 +39,7 @@ import com.pz.system.datastructure.OrderDelayQueue;
import
com.pz.system.datastructure.TotalOrderDelayOperator
;
import
com.pz.system.datastructure.TotalOrderDelayOperator
;
import
com.pz.system.domain.*
;
import
com.pz.system.domain.*
;
import
com.pz.system.domain.bo.CreateOrderBo
;
import
com.pz.system.domain.bo.CreateOrderBo
;
import
com.pz.system.domain.bo.OrderColumnarBo
;
import
com.pz.system.domain.bo.DataViewBo
;
import
com.pz.system.domain.bo.DataViewBo
;
import
com.pz.system.domain.bo.TotalOrderBo
;
import
com.pz.system.domain.bo.TotalOrderBo
;
import
com.pz.system.domain.vo.*
;
import
com.pz.system.domain.vo.*
;
...
@@ -60,6 +62,7 @@ import java.time.format.DateTimeFormatter;
...
@@ -60,6 +62,7 @@ import java.time.format.DateTimeFormatter;
import
java.time.format.DateTimeFormatterBuilder
;
import
java.time.format.DateTimeFormatterBuilder
;
import
java.util.*
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
/**
/**
* 总订单Service业务层处理
* 总订单Service业务层处理
...
@@ -1237,6 +1240,42 @@ public class TotalOrderServiceImpl implements ITotalOrderService {
...
@@ -1237,6 +1240,42 @@ public class TotalOrderServiceImpl implements ITotalOrderService {
}
}
@Override
public
List
<
OrderLineVo
>
findOrderColumnarVoList
(
OrderColumnarBo
bo
)
{
List
<
OrderLineVo
>
list
=
new
ArrayList
<>();
List
<
String
>
recentDates
;
switch
(
bo
.
getType
())
{
case
1
:
recentDates
=
DateUtils
.
getRecentDates
(
7
);
break
;
case
2
:
recentDates
=
DateUtils
.
getRecentDates
(
30
);
break
;
case
3
:
recentDates
=
DateUtils
.
getDateRange
(
bo
.
getStartTime
(),
bo
.
getEndTime
());
break
;
default
:
return
list
;
}
// 使用一个 Map 来缓存已经查询过的订单列列表
Map
<
String
,
List
<
OrderColumnarVo
>>
orderMap
=
new
HashMap
<>();
for
(
String
time
:
recentDates
)
{
List
<
OrderColumnarVo
>
orderColumnarVoList
=
orderMap
.
get
(
time
);
if
(
orderColumnarVoList
==
null
)
{
orderColumnarVoList
=
baseMapper
.
findOrderColumnarVoList
(
time
);
orderMap
.
put
(
time
,
orderColumnarVoList
);
}
OrderLineVo
orderLineVo
=
new
OrderLineVo
();
orderLineVo
.
setKey
(
time
);
orderLineVo
.
setList
(
orderColumnarVoList
);
list
.
add
(
orderLineVo
);
}
return
list
.
stream
()
.
sorted
(
Comparator
.
comparing
(
OrderLineVo:
:
getKey
))
.
collect
(
Collectors
.
toList
());
}
public
String
getOrderSn
()
{
public
String
getOrderSn
()
{
long
timestamp
=
System
.
currentTimeMillis
();
long
timestamp
=
System
.
currentTimeMillis
();
String
timestampStr
=
Long
.
toString
(
timestamp
);
String
timestampStr
=
Long
.
toString
(
timestamp
);
...
...
pz-system/src/main/resources/mapper/system/TotalOrderMapper.xml
View file @
cdb32d01
...
@@ -121,8 +121,11 @@
...
@@ -121,8 +121,11 @@
where total_order.id = #{id}
where total_order.id = #{id}
</select>
</select>
<select
id=
"findOrderColumnarVoList"
resultType=
"com.pz.system.domain.vo.OrderColumnarVo"
>
<select
id=
"findOrderColumnarVoList"
resultType=
"com.pz.system.domain.vo.OrderColumnarVo"
>
SELECT b.`name` name, COUNT(t.business_id) AS num
SELECT b.`name` name,
DATE (#{time}) AS time,
COUNT(t.business_id) AS num
FROM business b
FROM business b
LEFT JOIN total_order t ON t.business_id = b.id
AND t.`status` = 2
AND DATE (t.create_time) = DATE (#{time})
LEFT JOIN total_order t ON t.business_id = b.id
LEFT JOIN total_order t ON t.business_id = b.id
AND t.`status` = 2
AND t.`status` = 2
<if
test=
"type == 1"
>
<if
test=
"type == 1"
>
...
...
pz-system/src/main/resources/mapper/system/YypzOrderMapper.xml
View file @
cdb32d01
...
@@ -49,9 +49,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -49,9 +49,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN department AS d ON d.id = yyod.did
LEFT JOIN department AS d ON d.id = yyod.did
LEFT JOIN services AS s ON s.id = tlo.service_id
LEFT JOIN services AS s ON s.id = tlo.service_id
LEFT JOIN employees AS e ON e.id = tlo.em_id
LEFT JOIN employees AS e ON e.id = tlo.em_id
<if
test=
"bo.orderSn != null and bo.orderSn != ''"
>
LEFT JOIN company AS co ON co.id = e.company_id
where tlo.order_sn LIKE CONCAT('%', #{bo.orderSn}, '%')
<where>
</if>
<if
test=
"bo.orderSn != null and bo.orderSn != ''"
>
and tlo.order_sn LIKE CONCAT('%', #{bo.orderSn}, '%')
</if>
<if
test=
"bo.userId != null"
>
and co.uid = #{bo.userId}
</if>
</where>
</select>
</select>
<select
id=
"selectSonOrderInfoByTotalId"
resultType=
"com.pz.merchant.domain.vo.SonOrderVo"
>
<select
id=
"selectSonOrderInfoByTotalId"
resultType=
"com.pz.merchant.domain.vo.SonOrderVo"
>
...
...
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