Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
098d2573
提交
098d2573
authored
10月 12, 2023
作者:
liuhaiquan
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/v5.3_driver_integral_20231009' into…
Merge remote-tracking branch 'origin/v5.3_driver_integral_20231009' into v5.3_driver_integral_20231009
上级
8f770e79
4839d4c7
显示空白字符变更
内嵌
并排
正在显示
60 个修改的文件
包含
2140 行增加
和
0 行删除
+2140
-0
PerformanceResultEnum.java
...java/com/clx/performance/enums/PerformanceResultEnum.java
+5
-0
IntegralTruckFeign.java
...in/java/com/clx/performance/feign/IntegralTruckFeign.java
+18
-0
IntegralNextWeekTruckInitMqParam.java
...erformance/param/mq/IntegralNextWeekTruckInitMqParam.java
+22
-0
IntegralOrderChildFinishMqParam.java
...performance/param/mq/IntegralOrderChildFinishMqParam.java
+22
-0
IntegralRealTimeStatisticsMqParam.java
...rformance/param/mq/IntegralRealTimeStatisticsMqParam.java
+22
-0
IntegralRecordAddMqParam.java
...om/clx/performance/param/mq/IntegralRecordAddMqParam.java
+26
-0
IntegralTruckProtectionCancelMqParam.java
...rmance/param/mq/IntegralTruckProtectionCancelMqParam.java
+23
-0
IntegralTuckAddMqParam.java
.../com/clx/performance/param/mq/IntegralTuckAddMqParam.java
+23
-0
IntegralWeekStatisticsMqParam.java
...x/performance/param/mq/IntegralWeekStatisticsMqParam.java
+22
-0
IntegralWeekTruckStatisticsMqParam.java
...formance/param/mq/IntegralWeekTruckStatisticsMqParam.java
+24
-0
IntegralOrderAddParam.java
...a/com/clx/performance/param/pc/IntegralOrderAddParam.java
+26
-0
IntegralRecordAddParam.java
.../com/clx/performance/param/pc/IntegralRecordAddParam.java
+31
-0
IntegralTruckAddParam.java
...a/com/clx/performance/param/pc/IntegralTruckAddParam.java
+25
-0
PageIntegralStatisticsParam.java
...clx/performance/param/pc/PageIntegralStatisticsParam.java
+19
-0
PageIntegralTruckParam.java
.../com/clx/performance/param/pc/PageIntegralTruckParam.java
+26
-0
pageIntegralOrderParam.java
.../com/clx/performance/param/pc/pageIntegralOrderParam.java
+22
-0
pageIntegralStatisticsDetailParam.java
...rformance/param/pc/pageIntegralStatisticsDetailParam.java
+20
-0
IntegralOrderVO.java
.../main/java/com/clx/performance/vo/pc/IntegralOrderVO.java
+46
-0
IntegralRecordVO.java
...main/java/com/clx/performance/vo/pc/IntegralRecordVO.java
+38
-0
IntegralStatisticsVO.java
.../java/com/clx/performance/vo/pc/IntegralStatisticsVO.java
+57
-0
IntegralTruckVO.java
.../main/java/com/clx/performance/vo/pc/IntegralTruckVO.java
+44
-0
IntegralTruckFeignController.java
...rmance/controller/feign/IntegralTruckFeignController.java
+32
-0
IntegralOrderController.java
...lx/performance/controller/pc/IntegralOrderController.java
+50
-0
IntegralRecordController.java
...x/performance/controller/pc/IntegralRecordController.java
+38
-0
IntegralStatisticsController.java
...rformance/controller/pc/IntegralStatisticsController.java
+60
-0
IntegralTruckController.java
...lx/performance/controller/pc/IntegralTruckController.java
+70
-0
IntegralOrderDao.java
...c/main/java/com/clx/performance/dao/IntegralOrderDao.java
+23
-0
IntegralRecordDao.java
.../main/java/com/clx/performance/dao/IntegralRecordDao.java
+23
-0
IntegralStatisticsDao.java
...n/java/com/clx/performance/dao/IntegralStatisticsDao.java
+34
-0
IntegralTruckDao.java
...c/main/java/com/clx/performance/dao/IntegralTruckDao.java
+35
-0
IntegralOrderDaoImpl.java
...va/com/clx/performance/dao/impl/IntegralOrderDaoImpl.java
+33
-0
IntegralRecordDaoImpl.java
...a/com/clx/performance/dao/impl/IntegralRecordDaoImpl.java
+36
-0
IntegralStatisticsDaoImpl.java
...m/clx/performance/dao/impl/IntegralStatisticsDaoImpl.java
+70
-0
IntegralTruckDaoImpl.java
...va/com/clx/performance/dao/impl/IntegralTruckDaoImpl.java
+73
-0
DriverService.java
...java/com/clx/performance/extranal/user/DriverService.java
+3
-0
DriverServiceImpl.java
...clx/performance/extranal/user/impl/DriverServiceImpl.java
+7
-0
IntegralJob.java
...eb/src/main/java/com/clx/performance/job/IntegralJob.java
+68
-0
IntegraRecordMapper.java
.../java/com/clx/performance/mapper/IntegraRecordMapper.java
+32
-0
IntegralOrderMapper.java
.../java/com/clx/performance/mapper/IntegralOrderMapper.java
+39
-0
IntegralStatisticsMapper.java
.../com/clx/performance/mapper/IntegralStatisticsMapper.java
+51
-0
IntegralTruckMapper.java
.../java/com/clx/performance/mapper/IntegralTruckMapper.java
+38
-0
IntegralOrder.java
...rc/main/java/com/clx/performance/model/IntegralOrder.java
+57
-0
IntegralRecord.java
...c/main/java/com/clx/performance/model/IntegralRecord.java
+64
-0
IntegralStatistics.java
...in/java/com/clx/performance/model/IntegralStatistics.java
+42
-0
IntegralTruck.java
...rc/main/java/com/clx/performance/model/IntegralTruck.java
+43
-0
IntegralMqService.java
...n/java/com/clx/performance/service/IntegralMqService.java
+8
-0
IntegralOrderService.java
...ava/com/clx/performance/service/IntegralOrderService.java
+14
-0
IntegralRecordService.java
...va/com/clx/performance/service/IntegralRecordService.java
+12
-0
IntegralStatisticsService.java
...om/clx/performance/service/IntegralStatisticsService.java
+17
-0
IntegralTruckService.java
...ava/com/clx/performance/service/IntegralTruckService.java
+17
-0
IntegralMqServiceImpl.java
...m/clx/performance/service/impl/IntegralMqServiceImpl.java
+39
-0
IntegralOrderServiceImpl.java
...lx/performance/service/impl/IntegralOrderServiceImpl.java
+53
-0
IntegralRecordServiceImpl.java
...x/performance/service/impl/IntegralRecordServiceImpl.java
+69
-0
IntegralStatisticsServiceImpl.java
...rformance/service/impl/IntegralStatisticsServiceImpl.java
+80
-0
IntegralTruckServiceImpl.java
...lx/performance/service/impl/IntegralTruckServiceImpl.java
+117
-0
IntegralOrderSqlProvider.java
...clx/performance/sqlProvider/IntegralOrderSqlProvider.java
+33
-0
IntegralRecordSqlProvider.java
...lx/performance/sqlProvider/IntegralRecordSqlProvider.java
+28
-0
IntegralStatisticsSqlProvider.java
...erformance/sqlProvider/IntegralStatisticsSqlProvider.java
+29
-0
IntegralTruckSqlProvider.java
...clx/performance/sqlProvider/IntegralTruckSqlProvider.java
+36
-0
LocalDateTimeUtils.java
...in/java/com/clx/performance/utils/LocalDateTimeUtils.java
+6
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/enums/PerformanceResultEnum.java
浏览文件 @
098d2573
...
...
@@ -68,6 +68,11 @@ public enum PerformanceResultEnum implements ResultEnum {
ORDER_GOODS_ID_GENERATE_LOCK
(
1384
,
"货单编号ID获取锁出问题"
),
INTEGRAL_TRUCK_DRIVER_EXIST
(
1400
,
"车辆已添加"
),
INTEGRAL_ORDER_EXIST
(
1401
,
"货单已添加"
),
INTEGRAL_ORDER_NO_EXIST
(
1402
,
"货单不存在"
),
INTEGRAL_TRUCK_NO_EXIST
(
1403
,
"车辆不存在"
),
;
private
final
int
code
;
...
...
performance-api/src/main/java/com/clx/performance/feign/IntegralTruckFeign.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
feign
;
import
com.clx.performance.param.pc.IntegralTruckAddParam
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
@FeignClient
(
name
=
"clx-performance"
)
public
interface
IntegralTruckFeign
{
@ApiOperation
(
value
=
"新增车辆"
)
@PostMapping
(
"clx-performance/feign/integral/saveTruck"
)
Result
<
Void
>
saveTruck
(
@RequestBody
@Validated
IntegralTruckAddParam
param
);
}
performance-api/src/main/java/com/clx/performance/param/mq/IntegralNextWeekTruckInitMqParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
mq
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 下周车辆初始化
* @Date: 2023-7-26 14:39:49
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralNextWeekTruckInitMqParam
{
private
String
statisticsDate
;
//统计时间
}
performance-api/src/main/java/com/clx/performance/param/mq/IntegralOrderChildFinishMqParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
mq
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 运单结束
* @Date: 2023-10-11 17:30:05
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralOrderChildFinishMqParam
{
private
String
childNo
;
//运单编号
}
performance-api/src/main/java/com/clx/performance/param/mq/IntegralRealTimeStatisticsMqParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
mq
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 积分实时统计
* @Date: 2023-10-11 17:30:45
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralRealTimeStatisticsMqParam
{
private
String
truckNo
;
//车辆
}
performance-api/src/main/java/com/clx/performance/param/mq/IntegralRecordAddMqParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
mq
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 积分车辆新增
* @Date: 2023-10-11 17:30:57
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralRecordAddMqParam
{
private
Integer
statisticsId
;
//统计id
private
Integer
type
;
//积分类型
private
String
truckNo
;
//车辆
private
Integer
integral
;
//积分
private
String
remark
;
//备注
}
performance-api/src/main/java/com/clx/performance/param/mq/IntegralTruckProtectionCancelMqParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
mq
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 车辆保护取消
* @Date: 2023-10-11 17:27:45
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralTruckProtectionCancelMqParam
{
private
String
statisticsDate
;
//统计时间
private
String
truckNo
;
//车辆
}
performance-api/src/main/java/com/clx/performance/param/mq/IntegralTuckAddMqParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
mq
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 积分车辆新增
* @Date: 2023-10-11 17:27:32
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralTuckAddMqParam
{
private
Integer
statisticsId
;
//统计id
private
String
truckNo
;
//车牌号
}
performance-api/src/main/java/com/clx/performance/param/mq/IntegralWeekStatisticsMqParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
mq
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 积分周统计
* @Date: 2023-10-11 17:32:41
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralWeekStatisticsMqParam
{
private
String
statisticsDate
;
//统计时间
}
performance-api/src/main/java/com/clx/performance/param/mq/IntegralWeekTruckStatisticsMqParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
mq
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 车辆周统计
* @Date: 2023-10-11 17:27:20
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralWeekTruckStatisticsMqParam
{
private
String
statisticsDate
;
//统计时间
private
String
truckNo
;
//车辆
}
performance-api/src/main/java/com/clx/performance/param/pc/IntegralOrderAddParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
pc
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
@Getter
@Setter
@NoArgsConstructor
public
class
IntegralOrderAddParam
{
@ApiModelProperty
(
value
=
"货单编号"
,
example
=
"100000000000"
)
@NotBlank
(
message
=
"车牌号不能为空"
)
private
String
orderGoodsNo
;
@ApiModelProperty
(
value
=
"货单类型:1优质单 2普通单 3流水单 4支援单"
,
example
=
"1"
)
@NotNull
(
message
=
"货单类型不能为空"
)
private
Integer
orderType
;
@ApiModelProperty
(
value
=
"车辆梯队"
,
example
=
"1"
)
@NotNull
(
message
=
"车辆梯队不能为空"
)
private
Integer
truckEchelon
;
}
performance-api/src/main/java/com/clx/performance/param/pc/IntegralRecordAddParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
pc
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.*
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
/**
* @Author: aiqingguo
* @Description: 新增积分
* @Date: 2023-10-11 17:30:57
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
IntegralRecordAddParam
{
@ApiModelProperty
(
value
=
"车牌"
,
example
=
"京A12345"
)
@NotBlank
(
message
=
"车牌号不能为空"
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"积分"
,
example
=
"1"
)
@NotNull
(
message
=
"积分不能为空"
)
private
Integer
integral
;
@ApiModelProperty
(
value
=
"原因"
,
example
=
"平台补偿"
)
@NotBlank
(
message
=
"原因不能为空"
)
private
String
remark
;
}
performance-api/src/main/java/com/clx/performance/param/pc/IntegralTruckAddParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
pc
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
javax.validation.constraints.NotBlank
;
@Getter
@Setter
@NoArgsConstructor
public
class
IntegralTruckAddParam
{
@ApiModelProperty
(
value
=
"车牌号"
,
example
=
"京A12345"
)
@NotBlank
(
message
=
"车牌号不能为空"
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"司机姓名"
,
example
=
"张三"
)
@NotBlank
(
message
=
"司机姓名不能为空"
)
private
String
driverName
;
@ApiModelProperty
(
value
=
"司机手机号"
,
example
=
"13000000000"
)
@NotBlank
(
message
=
"司机手机号不能为空"
)
private
String
driverMobile
;
}
performance-api/src/main/java/com/clx/performance/param/pc/PageIntegralStatisticsParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
pc
;
import
com.msl.common.base.PageParam
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
@Getter
@Setter
@NoArgsConstructor
public
class
PageIntegralStatisticsParam
extends
PageParam
{
@ApiModelProperty
(
value
=
"开始时间"
)
private
String
beginTime
;
@ApiModelProperty
(
value
=
"结束时间"
)
private
String
endTime
;
}
performance-api/src/main/java/com/clx/performance/param/pc/PageIntegralTruckParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
pc
;
import
com.msl.common.base.PageParam
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
@Getter
@Setter
@NoArgsConstructor
public
class
PageIntegralTruckParam
extends
PageParam
{
@ApiModelProperty
(
value
=
"车牌号"
,
example
=
"京A12345"
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"司机手机号码"
,
example
=
"13000000000"
)
private
String
driverMobile
;
@ApiModelProperty
(
value
=
"梯队:1第一梯队,2第二梯队"
,
example
=
"1"
)
private
Integer
echelon
;
@ApiModelProperty
(
value
=
"开始时间"
)
private
String
beginTime
;
@ApiModelProperty
(
value
=
"结束时间"
)
private
String
endTime
;
}
performance-api/src/main/java/com/clx/performance/param/pc/pageIntegralOrderParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
pc
;
import
com.msl.common.base.PageParam
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
@Getter
@Setter
@NoArgsConstructor
public
class
pageIntegralOrderParam
extends
PageParam
{
@ApiModelProperty
(
value
=
"货单编号"
,
example
=
"10000000000000"
)
private
String
orderGoodsNo
;
@ApiModelProperty
(
value
=
"开始时间"
)
private
String
beginTime
;
@ApiModelProperty
(
value
=
"结束时间"
)
private
String
endTime
;
}
performance-api/src/main/java/com/clx/performance/param/pc/pageIntegralStatisticsDetailParam.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
param
.
pc
;
import
com.msl.common.base.PageParam
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
javax.validation.constraints.NotNull
;
@Getter
@Setter
@NoArgsConstructor
public
class
pageIntegralStatisticsDetailParam
extends
PageParam
{
@ApiModelProperty
(
value
=
"统计id"
,
example
=
"1"
)
@NotNull
(
message
=
"统计id不为空"
)
private
Integer
statisticsId
;
}
performance-api/src/main/java/com/clx/performance/vo/pc/IntegralOrderVO.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
vo
.
pc
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqinguo
* @Description: 积分货单
* @Date: 2023-10-10 09:47:04
* @Version: 1.0
*/
@ApiModel
(
description
=
"积分货单"
)
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
IntegralOrderVO
{
@ApiModelProperty
(
value
=
"id"
,
example
=
"1"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"货单编号"
,
example
=
"1000000000000"
)
private
String
orderNo
;
@ApiModelProperty
(
value
=
"发货地址id"
,
example
=
"1"
)
private
Integer
sendAddressId
;
@ApiModelProperty
(
value
=
"发货地址"
,
example
=
"北京"
)
private
String
sendAddress
;
@ApiModelProperty
(
value
=
"收货地址id"
,
example
=
"2"
)
private
Integer
receiveAddressId
;
@ApiModelProperty
(
value
=
"收货地址"
,
example
=
"上海"
)
private
String
receiveAddress
;
@ApiModelProperty
(
value
=
"货单类型:1优质单 2普通单 3流水单 4支援单"
,
example
=
"1"
)
private
Integer
orderType
;
@ApiModelProperty
(
value
=
"车辆梯队"
,
example
=
"1"
)
private
Integer
truckEchelon
;
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
""
)
private
String
createTime
;
@ApiModelProperty
(
value
=
"修改时间"
,
example
=
""
)
private
String
modifiedTime
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/vo/pc/IntegralRecordVO.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
vo
.
pc
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqinguo
* @Description: 积分记录
* @Date: 2023-10-10 10:50:10
* @Version: 1.0
*/
@ApiModel
(
description
=
"积分记录"
)
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
IntegralRecordVO
{
@ApiModelProperty
(
value
=
"id"
,
example
=
""
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"车牌号"
,
example
=
""
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"获得积分"
,
example
=
""
)
private
Integer
integral
;
@ApiModelProperty
(
value
=
"类型"
,
example
=
""
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"原因"
,
example
=
""
)
private
String
remark
;
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
""
)
private
String
createTime
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/vo/pc/IntegralStatisticsVO.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
vo
.
pc
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.msl.common.utils.LocalDateTimeUtils
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqinguo
* @Description: 积分排名统计
* @Date: 2023-10-10 20:33:01
* @Version: 1.0
*/
@ApiModel
(
description
=
"积分排名统计"
)
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
IntegralStatisticsVO
{
@ApiModelProperty
(
value
=
"统计id"
,
example
=
""
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"车牌号"
,
example
=
""
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"统计时间(周一)"
,
example
=
""
)
private
String
statisticsDate
;
@ApiModelProperty
(
value
=
"统计时间"
,
example
=
""
)
private
String
statisticsDateStr
;
public
String
getStatisticsDateStr
()
{
return
statisticsDate
.
substring
(
0
,
10
)+
"到"
+
LocalDateTimeUtils
.
convertLocalDateTimeToDefaultString
(
LocalDateTimeUtils
.
covertStringToDefaultLocalDateTime
(
statisticsDate
).
plusDays
(
6
)).
substring
(
0
,
10
);
}
@ApiModelProperty
(
value
=
"积分"
,
example
=
""
)
private
Integer
integral
;
public
Integer
getIntegral
()
{
return
integral
+
integralBase
;
}
@ApiModelProperty
(
value
=
"排名"
,
example
=
""
)
private
Integer
rank
;
@ApiModelProperty
(
value
=
"梯队"
,
example
=
"1"
)
private
Integer
echelon
;
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
""
)
private
String
createTime
;
@JsonIgnore
@ApiModelProperty
(
value
=
"本周基础分"
,
example
=
""
,
hidden
=
true
)
private
Integer
integralBase
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/vo/pc/IntegralTruckVO.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
vo
.
pc
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqinguo
* @Description: 积分车辆
* @Date: 2023-10-9 13:36:29
* @Version: 1.0
*/
@ApiModel
(
description
=
"积分车辆"
)
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
IntegralTruckVO
{
@ApiModelProperty
(
value
=
"id"
,
example
=
""
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"车牌号"
,
example
=
"京A12345"
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"司机姓名"
,
example
=
"张三"
)
private
String
driverName
;
@ApiModelProperty
(
value
=
"司机手机号"
,
example
=
"13000000000"
)
private
String
driverMobile
;
@ApiModelProperty
(
value
=
"梯队"
,
example
=
"1"
)
private
Integer
echelon
;
@ApiModelProperty
(
value
=
"积分"
,
example
=
"1"
)
private
Integer
integral
;
@ApiModelProperty
(
value
=
"排名"
,
example
=
"1"
)
private
Integer
rank
;
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
""
)
private
String
createTime
;
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/controller/feign/IntegralTruckFeignController.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
controller
.
feign
;
import
com.clx.performance.param.pc.IntegralTruckAddParam
;
import
com.clx.performance.service.IntegralTruckService
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@RestController
@RequestMapping
(
"/feign/integral"
)
@Validated
@Api
(
tags
=
"积分车辆"
)
@AllArgsConstructor
public
class
IntegralTruckFeignController
{
private
final
IntegralTruckService
integralTruckService
;
@ApiOperation
(
value
=
"新增车辆"
)
@PostMapping
(
"/saveTruck"
)
Result
<
Void
>
saveTruck
(
@RequestBody
@Validated
IntegralTruckAddParam
param
){
integralTruckService
.
saveTruck
(
param
);
return
Result
.
ok
();
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/IntegralOrderController.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
controller
.
pc
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.IntegralOrderAddParam
;
import
com.clx.performance.param.pc.pageIntegralOrderParam
;
import
com.clx.performance.service.IntegralOrderService
;
import
com.clx.performance.vo.pc.IntegralOrderVO
;
import
com.msl.common.base.PageData
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@Slf4j
@RestController
@RequestMapping
(
value
=
"/pc/carrier/integral"
)
@Validated
@Api
(
tags
=
"承运端-积分货单"
)
@AllArgsConstructor
public
class
IntegralOrderController
{
private
final
IntegralOrderService
integralOrderService
;
@Deprecated
@ApiOperation
(
value
=
"新增货单"
,
notes
=
"<br>By:艾庆国"
)
// @PostMapping(value = "addOrder")
public
Result
<?>
addOrder
(
@RequestBody
@Validated
IntegralOrderAddParam
param
)
{
integralOrderService
.
addOrder
(
param
);
return
Result
.
ok
();
}
@Deprecated
@ApiOperation
(
value
=
"获取货单列表"
,
notes
=
"<br>By:艾庆国"
)
// @PostMapping(value = "pageOrderList")
public
Result
<
PageData
<
IntegralOrderVO
>>
pageOrderList
(
@RequestBody
@Validated
pageIntegralOrderParam
param
)
{
IPage
<
IntegralOrderVO
>
page
=
integralOrderService
.
pageOrderList
(
param
);
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/IntegralRecordController.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
controller
.
pc
;
import
com.clx.performance.param.pc.IntegralRecordAddParam
;
import
com.clx.performance.service.IntegralRecordService
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@Slf4j
@RestController
@RequestMapping
(
value
=
"/pc/carrier/integral"
)
@Validated
@Api
(
tags
=
"承运端-积分记录"
)
@AllArgsConstructor
public
class
IntegralRecordController
{
@Autowired
private
IntegralRecordService
integralRecordService
;
@ApiOperation
(
value
=
"新增积分记录"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
value
=
"addIntegral"
)
public
Result
<
Void
>
addRecord
(
@RequestBody
@Validated
IntegralRecordAddParam
param
)
{
integralRecordService
.
addRecord
(
param
);
return
Result
.
ok
();
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/IntegralStatisticsController.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
controller
.
pc
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.PageIntegralStatisticsParam
;
import
com.clx.performance.param.pc.pageIntegralStatisticsDetailParam
;
import
com.clx.performance.service.IntegralStatisticsService
;
import
com.clx.performance.utils.LocalDateTimeUtils
;
import
com.clx.performance.vo.pc.IntegralRecordVO
;
import
com.clx.performance.vo.pc.IntegralStatisticsVO
;
import
com.msl.common.base.PageData
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.time.LocalDateTime
;
@Slf4j
@RestController
@RequestMapping
(
value
=
"/pc/carrier/integral"
)
@Validated
@Api
(
tags
=
"承运端-积分统计"
)
@AllArgsConstructor
public
class
IntegralStatisticsController
{
private
final
IntegralStatisticsService
integralStatisticsService
;
@ApiOperation
(
value
=
"获取积分统计列表"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
value
=
"pageStatisticsList"
)
public
Result
<
PageData
<
IntegralStatisticsVO
>>
pageStatisticsList
(
@RequestBody
@Validated
PageIntegralStatisticsParam
param
)
{
if
(
StringUtils
.
isNotBlank
(
param
.
getBeginTime
())){
param
.
setBeginTime
(
LocalDateTimeUtils
.
getWeekStart
(
param
.
getBeginTime
()));}
if
(
StringUtils
.
isNotBlank
(
param
.
getEndTime
())){
if
(
LocalDateTimeUtils
.
parseTime
(
param
.
getEndTime
()).
isAfter
(
LocalDateTime
.
now
())){
param
.
setEndTime
(
LocalDateTimeUtils
.
getWeekStart
());}
else
{
param
.
setEndTime
(
LocalDateTimeUtils
.
getWeekStart
(
param
.
getEndTime
()));}
}
else
{
param
.
setEndTime
(
LocalDateTimeUtils
.
getWeekStart
());}
IPage
<
IntegralStatisticsVO
>
page
=
integralStatisticsService
.
pageStatisticsList
(
param
);
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
@ApiOperation
(
value
=
"获取积分统计明细列表"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
value
=
"pageStatisticsDetailList"
)
public
Result
<
PageData
<
IntegralRecordVO
>>
pageStatisticsDetailList
(
@RequestBody
@Validated
pageIntegralStatisticsDetailParam
param
)
{
IPage
<
IntegralRecordVO
>
page
=
integralStatisticsService
.
pageStatisticsDetailList
(
param
);
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/IntegralTruckController.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
controller
.
pc
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.IntegralTruckAddParam
;
import
com.clx.performance.param.pc.PageIntegralTruckParam
;
import
com.clx.performance.service.IntegralTruckService
;
import
com.clx.performance.vo.pc.IntegralTruckVO
;
import
com.msl.common.base.PageData
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
@Slf4j
@RestController
@RequestMapping
(
value
=
"/pc/carrier/integral"
)
@Validated
@Api
(
tags
=
"承运端-积分车辆"
)
@AllArgsConstructor
public
class
IntegralTruckController
{
private
final
IntegralTruckService
integralTruckService
;
@Deprecated
@ApiOperation
(
value
=
"新增车辆"
,
notes
=
"<br>By:艾庆国"
)
// @PostMapping("/saveTruck")
public
Result
<
Void
>
saveTruck
(
@RequestBody
@Validated
IntegralTruckAddParam
param
)
{
integralTruckService
.
saveTruck
(
param
);
return
Result
.
ok
();
}
@Deprecated
@ApiOperation
(
value
=
"获取车辆列表"
,
notes
=
"<br>By:艾庆国"
)
// @PostMapping(value = "pageTruckList")
public
Result
<
PageData
<
IntegralTruckVO
>>
pageTruckList
(
@RequestBody
@Validated
PageIntegralTruckParam
param
)
{
IPage
<
IntegralTruckVO
>
page
=
integralTruckService
.
pageTruckList
(
param
);
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
@ApiOperation
(
value
=
"查询车辆所属司机信息"
,
notes
=
"<br>By:艾庆国"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"truckNo"
,
value
=
"车牌号"
,
paramType
=
"query"
,
example
=
"京A123456"
)
})
@GetMapping
(
value
=
"getTruckDriverInfo"
)
public
Result
<
IntegralTruckVO
>
getTruckDriverInfo
(
@Validated
@NotBlank
(
message
=
"车牌不能为空"
)
String
truckNo
)
{
return
Result
.
ok
(
integralTruckService
.
getTruckDriverInfo
(
truckNo
));
}
@ApiOperation
(
value
=
"获取车辆数量"
,
notes
=
"<br>By:艾庆国"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"truckEchelon"
,
value
=
"车辆梯队"
,
paramType
=
"query"
,
example
=
"1"
)
})
@GetMapping
(
value
=
"getTruckCount"
)
public
Result
<
Integer
>
getTruckCount
(
@Validated
@NotNull
(
message
=
"车辆梯队不能为空"
)
Integer
truckEchelon
)
{
return
Result
.
ok
(
integralTruckService
.
getTruckCount
(
truckEchelon
));
}
}
performance-web/src/main/java/com/clx/performance/dao/IntegralOrderDao.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
dao
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.mapper.IntegralOrderMapper
;
import
com.clx.performance.model.IntegralOrder
;
import
com.clx.performance.param.pc.pageIntegralOrderParam
;
import
com.clx.performance.vo.pc.IntegralOrderVO
;
import
com.msl.common.dao.BaseDao
;
import
org.apache.ibatis.annotations.Param
;
/**
* @Author: aiqinguo
* @Description: 积分货单
* @Date: 2023-10-9 11:55:36
* @Version: 1.0
*/
public
interface
IntegralOrderDao
extends
BaseDao
<
IntegralOrderMapper
,
IntegralOrder
,
Integer
>
{
boolean
existByOrderGoodsNo
(
@Param
(
"orderGoodsNo"
)
String
orderGoodsNo
);
IPage
<
IntegralOrderVO
>
pageByParam
(
pageIntegralOrderParam
param
);
}
performance-web/src/main/java/com/clx/performance/dao/IntegralRecordDao.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
dao
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.mapper.IntegraRecordMapper
;
import
com.clx.performance.model.IntegralRecord
;
import
com.clx.performance.param.pc.pageIntegralStatisticsDetailParam
;
import
com.clx.performance.vo.pc.IntegralRecordVO
;
import
com.msl.common.dao.BaseDao
;
import
org.apache.ibatis.annotations.Param
;
/**
* @Author: aiqinguo
* @Description: 积分记录
* @Date: 2023-10-9 11:55:36
* @Version: 1.0
*/
public
interface
IntegralRecordDao
extends
BaseDao
<
IntegraRecordMapper
,
IntegralRecord
,
Integer
>
{
IPage
<
IntegralRecordVO
>
pageByParam
(
pageIntegralStatisticsDetailParam
param
);
Integer
sumIntegral
(
@Param
(
"statisticsId"
)
Integer
statisticsId
);
}
performance-web/src/main/java/com/clx/performance/dao/IntegralStatisticsDao.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
dao
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.mapper.IntegralStatisticsMapper
;
import
com.clx.performance.model.IntegralStatistics
;
import
com.clx.performance.param.pc.PageIntegralStatisticsParam
;
import
com.clx.performance.vo.pc.IntegralStatisticsVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.BaseDao
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @Author: aiqinguo
* @Description: 积分排名统计
* @Date: 2023-10-9 11:55:36
* @Version: 1.0
*/
public
interface
IntegralStatisticsDao
extends
BaseDao
<
IntegralStatisticsMapper
,
IntegralStatistics
,
Integer
>
{
boolean
updateIntegral
(
IntegralStatistics
item
);
boolean
batchUpdateRank
(
List
<
IntegralStatistics
>
list
);
Optional
<
IntegralStatistics
>
selectByTruckNoAndStatisticsDate
(
@Param
(
"truckNo"
)
String
truckNo
,
@Param
(
"statisticsDate"
)
String
statisticsDate
);
IPage
<
IntegralStatisticsVO
>
pageByParam
(
PageIntegralStatisticsParam
param
);
Optional
<
IntegralStatistics
>
selectById
(
Integer
id
);
List
<
IntegralStatistics
>
selectByStatisticsDate
(
@Param
(
"statisticsDate"
)
String
statisticsDate
);
}
performance-web/src/main/java/com/clx/performance/dao/IntegralTruckDao.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
dao
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.mapper.IntegralTruckMapper
;
import
com.clx.performance.model.IntegralTruck
;
import
com.clx.performance.param.pc.PageIntegralTruckParam
;
import
com.clx.performance.vo.pc.IntegralTruckVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.BaseDao
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @Author: aiqinguo
* @Description: 积分车辆
* @Date: 2023-10-9 11:55:36
* @Version: 1.0
*/
public
interface
IntegralTruckDao
extends
BaseDao
<
IntegralTruckMapper
,
IntegralTruck
,
Integer
>
{
boolean
updateIntegral
(
IntegralTruck
item
);
boolean
updateIntegralByTruckNo
(
String
truckNo
,
Integer
integral
);
boolean
existByTruckNo
(
@Param
(
"truckNo"
)
String
truckNo
);
IPage
<
IntegralTruckVO
>
pageByParam
(
PageIntegralTruckParam
param
);
long
countByTruckEchelon
(
@Param
(
"truckEchelon"
)
Integer
truckEchelon
);
Optional
<
IntegralTruck
>
getByTruckNo
(
@Param
(
"truckNo"
)
String
truckNo
);
List
<
IntegralTruck
>
listByTruckNoList
(
@Param
(
"truckNoList"
)
List
<
String
>
truckNoList
);
}
performance-web/src/main/java/com/clx/performance/dao/impl/IntegralOrderDaoImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
dao
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.IntegralOrderDao
;
import
com.clx.performance.mapper.IntegralOrderMapper
;
import
com.clx.performance.model.IntegralOrder
;
import
com.clx.performance.param.pc.pageIntegralOrderParam
;
import
com.clx.performance.vo.pc.IntegralOrderVO
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
/**
* @Author: aiqinguo
* @Description: 积分货单
* @Date: 2023-10-9 12:00:54
* @Version: 1.0
*/
@Repository
public
class
IntegralOrderDaoImpl
extends
BaseDaoImpl
<
IntegralOrderMapper
,
IntegralOrder
,
Integer
>
implements
IntegralOrderDao
{
@Override
public
boolean
existByOrderGoodsNo
(
String
orderGoodsNo
)
{
return
baseMapper
.
existByOrderGoodsNo
(
orderGoodsNo
)>
0
;
}
@Override
public
IPage
<
IntegralOrderVO
>
pageByParam
(
pageIntegralOrderParam
param
)
{
return
baseMapper
.
pageByParam
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
param
);
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/IntegralRecordDaoImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
dao
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.IntegralRecordDao
;
import
com.clx.performance.mapper.IntegraRecordMapper
;
import
com.clx.performance.model.IntegralRecord
;
import
com.clx.performance.param.pc.pageIntegralStatisticsDetailParam
;
import
com.clx.performance.vo.pc.IntegralRecordVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
/**
* @Author: aiqinguo
* @Description: 积分记录
* @Date: 2023-10-9 12:00:54
* @Version: 1.0
*/
@Repository
public
class
IntegralRecordDaoImpl
extends
BaseDaoImpl
<
IntegraRecordMapper
,
IntegralRecord
,
Integer
>
implements
IntegralRecordDao
{
@Override
public
IPage
<
IntegralRecordVO
>
pageByParam
(
pageIntegralStatisticsDetailParam
param
)
{
return
baseMapper
.
pageByParam
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
param
);
}
@Override
public
Integer
sumIntegral
(
Integer
statisticsId
)
{
return
Optional
.
ofNullable
(
getOne
(
qrWrapper
()
.
select
(
"sum(integral) as integral"
)
.
eq
(
"statistics_id"
,
statisticsId
))).
map
(
item
->
item
.
getIntegral
()).
orNull
();
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/IntegralStatisticsDaoImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
dao
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.IntegralStatisticsDao
;
import
com.clx.performance.mapper.IntegralStatisticsMapper
;
import
com.clx.performance.model.IntegralStatistics
;
import
com.clx.performance.param.pc.PageIntegralStatisticsParam
;
import
com.clx.performance.vo.pc.IntegralStatisticsVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
/**
* @Author: aiqinguo
* @Description: 积分排名统计
* @Date: 2023-10-9 12:00:54
* @Version: 1.0
*/
@Repository
public
class
IntegralStatisticsDaoImpl
extends
BaseDaoImpl
<
IntegralStatisticsMapper
,
IntegralStatistics
,
Integer
>
implements
IntegralStatisticsDao
{
@Override
public
boolean
updateIntegral
(
IntegralStatistics
item
)
{
return
update
(
lUdWrapper
()
.
eq
(
IntegralStatistics:
:
getId
,
item
.
getId
())
.
set
(
IntegralStatistics:
:
getIntegral
,
item
.
getIntegral
())
);
}
@Override
public
boolean
batchUpdateRank
(
List
<
IntegralStatistics
>
list
)
{
return
baseMapper
.
batchUpdateRank
(
list
)>
0
;
}
@Override
public
Optional
<
IntegralStatistics
>
selectByTruckNoAndStatisticsDate
(
String
truckNo
,
String
statisticsDate
)
{
return
Optional
.
of
(
truckNo
)
.
map
(
item
->
lQrWrapper
()
.
eq
(
IntegralStatistics:
:
getTruckNo
,
item
)
.
eq
(
IntegralStatistics:
:
getStatisticsDate
,
statisticsDate
)
)
.
map
(
super
::
getOne
);
}
@Override
public
IPage
<
IntegralStatisticsVO
>
pageByParam
(
PageIntegralStatisticsParam
param
)
{
return
baseMapper
.
pageByParam
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
param
);
}
@Override
public
Optional
<
IntegralStatistics
>
selectById
(
Integer
id
)
{
return
Optional
.
of
(
id
)
.
map
(
item
->
lQrWrapper
()
.
eq
(
IntegralStatistics:
:
getId
,
item
)
)
.
map
(
super
::
getOne
);
}
@Override
public
List
<
IntegralStatistics
>
selectByStatisticsDate
(
String
statisticsDate
)
{
return
list
(
lQrWrapper
()
.
eq
(
IntegralStatistics:
:
getStatisticsDate
,
statisticsDate
)
.
orderByDesc
(
IntegralStatistics:
:
getIntegral
));
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/IntegralTruckDaoImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
dao
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.IntegralTruckDao
;
import
com.clx.performance.mapper.IntegralTruckMapper
;
import
com.clx.performance.model.IntegralTruck
;
import
com.clx.performance.param.pc.PageIntegralTruckParam
;
import
com.clx.performance.vo.pc.IntegralTruckVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
/**
* @Author: aiqinguo
* @Description: 积分车辆
* @Date: 2023-10-9 12:00:54
* @Version: 1.0
*/
@Repository
public
class
IntegralTruckDaoImpl
extends
BaseDaoImpl
<
IntegralTruckMapper
,
IntegralTruck
,
Integer
>
implements
IntegralTruckDao
{
@Override
public
boolean
updateIntegral
(
IntegralTruck
item
)
{
return
update
(
lUdWrapper
()
.
eq
(
IntegralTruck:
:
getId
,
item
.
getId
())
.
set
(
IntegralTruck:
:
getIntegral
,
item
.
getIntegral
())
);
}
@Override
public
boolean
updateIntegralByTruckNo
(
String
truckNo
,
Integer
integral
)
{
return
update
(
lUdWrapper
()
.
eq
(
IntegralTruck:
:
getTruckNo
,
truckNo
)
.
set
(
IntegralTruck:
:
getIntegral
,
integral
)
);
}
@Override
public
boolean
existByTruckNo
(
String
truckNo
)
{
return
baseMapper
.
existByTruckNo
(
truckNo
)>
0
;
}
@Override
public
IPage
<
IntegralTruckVO
>
pageByParam
(
PageIntegralTruckParam
param
)
{
return
baseMapper
.
pageByParam
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
param
);
}
@Override
public
long
countByTruckEchelon
(
Integer
truckEchelon
)
{
return
count
(
lQrWrapper
()
.
eq
(
IntegralTruck:
:
getEchelon
,
truckEchelon
)
);
}
@Override
public
Optional
<
IntegralTruck
>
getByTruckNo
(
String
truckNo
)
{
return
Optional
.
of
(
truckNo
)
.
map
(
item
->
lQrWrapper
()
.
eq
(
IntegralTruck:
:
getTruckNo
,
item
)
)
.
map
(
super
::
getOne
);
}
@Override
public
List
<
IntegralTruck
>
listByTruckNoList
(
List
<
String
>
truckNoList
)
{
return
list
(
lQrWrapper
().
in
(
IntegralTruck:
:
getTruckNo
,
truckNoList
));
}
}
performance-web/src/main/java/com/clx/performance/extranal/user/DriverService.java
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
extranal
.
user
;
import
com.clx.user.vo.feign.DriverInfoFeignVo
;
import
com.clx.user.vo.feign.DriverTruckInfoFeignVo
;
import
com.msl.common.base.Optional
;
...
...
@@ -10,4 +11,6 @@ public interface DriverService {
void
updateOrderStatus
(
Long
driverUserNo
,
Integer
driverOrderStatus
,
Integer
truckId
,
Integer
truckOrderStatus
);
Optional
<
DriverInfoFeignVo
>
getTruckOwnInfo
(
String
truckNo
);
}
performance-web/src/main/java/com/clx/performance/extranal/user/impl/DriverServiceImpl.java
浏览文件 @
098d2573
...
...
@@ -2,6 +2,7 @@ package com.clx.performance.extranal.user.impl;
import
com.clx.performance.extranal.user.DriverService
;
import
com.clx.user.feign.DriverFeign
;
import
com.clx.user.vo.feign.DriverInfoFeignVo
;
import
com.clx.user.vo.feign.DriverTruckInfoFeignVo
;
import
com.msl.common.base.Optional
;
import
com.msl.common.enums.ResultCodeEnum
;
...
...
@@ -37,4 +38,10 @@ public class DriverServiceImpl implements DriverService {
.
filter
(
Result:
:
succeed
).
orElseThrow
(
ResultCodeEnum
.
FAIL
);
}
@Override
public
Optional
<
DriverInfoFeignVo
>
getTruckOwnInfo
(
String
truckNo
)
{
return
null
;
}
}
performance-web/src/main/java/com/clx/performance/job/IntegralJob.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
job
;
import
com.msl.common.job.JobLog
;
import
com.xxl.job.core.handler.annotation.XxlJob
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Component
;
@Slf4j
@Component
public
class
IntegralJob
{
/**
* 下周车辆初始化 (周三)
* @Scheduled(cron = "0 0 6 ? * 3")
*/
@XxlJob
(
"favoriteStatusSyncTask"
)
public
void
favoriteStatusSyncTask
()
{
try
{
}
catch
(
Exception
e
)
{
JobLog
.
error
(
"下周车辆初始化定时任务处理失败"
,
e
);
}
}
/**
* 下周车辆初始化 (周日)
* @Scheduled(cron = "0 0 22 ? * 7")
*/
@XxlJob
(
"favoriteStatusSyncTask1"
)
public
void
favoriteStatusSyncTask1
()
{
try
{
}
catch
(
Exception
e
)
{
JobLog
.
error
(
"下周车辆初始化定时任务处理失败"
,
e
);
}
}
/**
* 车辆周统计(结算上周积分) (周1)
* @Scheduled(cron = "0 0 1 ? * 1")
*/
@XxlJob
(
"weekTruckStatistics"
)
public
void
weekTruckStatistics
()
{
try
{
}
catch
(
Exception
e
)
{
JobLog
.
error
(
"车辆周统计(结算上周积分)定时任务处理失败"
,
e
);
}
}
/**
* 车辆保护期取消 (周一不处理)
* @Scheduled(cron = "0 0 6,18 ? * 2,3,4,5,6,7")
*/
@XxlJob
(
"truckProtectionCancel"
)
public
void
truckProtectionCancel
()
{
try
{
}
catch
(
Exception
e
)
{
JobLog
.
error
(
"车辆保护期取消定时任务处理失败"
,
e
);
}
}
}
performance-web/src/main/java/com/clx/performance/mapper/IntegraRecordMapper.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.model.IntegralRecord
;
import
com.clx.performance.param.pc.pageIntegralStatisticsDetailParam
;
import
com.clx.performance.sqlProvider.IntegralRecordSqlProvider
;
import
com.clx.performance.sqlProvider.IntegralTruckSqlProvider
;
import
com.clx.performance.vo.pc.IntegralRecordVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.SelectProvider
;
/**
* @Author: aiqinguo
* @Description: 积分记录
* @Date: 2023-10-9 11:52:22
* @Version: 1.0
*/
@Mapper
public
interface
IntegraRecordMapper
extends
BaseMapper
<
IntegralRecord
>
{
/**
* @see IntegralRecordSqlProvider#pageByParam(com.baomidou.mybatisplus.extension.plugins.pagination.Page, com.clx.performance.param.pc.pageIntegralStatisticsDetailParam)
*/
@SelectProvider
(
type
=
IntegralTruckSqlProvider
.
class
,
method
=
"pageByParam"
)
IPage
<
IntegralRecordVO
>
pageByParam
(
@Param
(
"page"
)
Page
<
IntegralRecordVO
>
page
,
@Param
(
"param"
)
pageIntegralStatisticsDetailParam
param
);
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/mapper/IntegralOrderMapper.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.model.IntegralOrder
;
import
com.clx.performance.param.pc.pageIntegralOrderParam
;
import
com.clx.performance.sqlProvider.IntegralOrderSqlProvider
;
import
com.clx.performance.sqlProvider.IntegralTruckSqlProvider
;
import
com.clx.performance.vo.pc.IntegralOrderVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
org.apache.ibatis.annotations.SelectProvider
;
/**
* @Author: aiqinguo
* @Description: 积分货单
* @Date: 2023-10-9 11:52:22
* @Version: 1.0
*/
@Mapper
public
interface
IntegralOrderMapper
extends
BaseMapper
<
IntegralOrder
>
{
/**
* 查询是否存在(按货单编号)
*/
@Select
(
"SELECT IFNULL((SELECT 1 FROM integral_order WHERE order_goods_no=#{orderGoodsNo} LIMIT 1),0)"
)
int
existByOrderGoodsNo
(
@Param
(
"orderGoodsNo"
)
String
orderGoodsNo
);
/**
* @see IntegralOrderSqlProvider#pageByParam(com.baomidou.mybatisplus.extension.plugins.pagination.Page, com.clx.performance.param.pc.pageIntegralOrderParam)
*/
@SelectProvider
(
type
=
IntegralTruckSqlProvider
.
class
,
method
=
"pageByParam"
)
IPage
<
IntegralOrderVO
>
pageByParam
(
@Param
(
"page"
)
Page
<
IntegralOrderVO
>
page
,
@Param
(
"param"
)
pageIntegralOrderParam
param
);
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/mapper/IntegralStatisticsMapper.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.model.IntegralStatistics
;
import
com.clx.performance.param.pc.PageIntegralStatisticsParam
;
import
com.clx.performance.sqlProvider.IntegralStatisticsSqlProvider
;
import
com.clx.performance.sqlProvider.IntegralTruckSqlProvider
;
import
com.clx.performance.vo.pc.IntegralStatisticsVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.SelectProvider
;
import
org.apache.ibatis.annotations.Update
;
import
java.util.List
;
/**
* @Author: aiqinguo
* @Description: 积分排名统计
* @Date: 2023-10-9 11:52:22
* @Version: 1.0
*/
@Mapper
public
interface
IntegralStatisticsMapper
extends
BaseMapper
<
IntegralStatistics
>
{
/**
* @see IntegralStatisticsSqlProvider#pageByParam(com.baomidou.mybatisplus.extension.plugins.pagination.Page, com.clx.performance.param.pc.PageIntegralStatisticsParam)
*/
@SelectProvider
(
type
=
IntegralTruckSqlProvider
.
class
,
method
=
"pageByParam"
)
IPage
<
IntegralStatisticsVO
>
pageByParam
(
@Param
(
"page"
)
Page
<
IntegralStatisticsVO
>
page
,
@Param
(
"param"
)
PageIntegralStatisticsParam
param
);
/**
* 修改 (更新排名)
*/
@Update
(
"<script>"
+
"update integral_statistics "
+
" <trim prefix='set' suffixOverrides=','>"
+
" <trim prefix='rank = case' suffix='end,'>"
+
" <foreach collection='list' item='item' index='index'>when id = #{item.id} then #{item.rank} </foreach>"
+
" </trim>"
+
" </trim>"
+
"where id in <foreach collection='list' item='item' index='index' separator =',' open='(' close=')'>#{item.id} </foreach>"
+
"</script>"
)
int
batchUpdateRank
(
List
<
IntegralStatistics
>
list
);
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/mapper/IntegralTruckMapper.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.model.IntegralTruck
;
import
com.clx.performance.param.pc.PageIntegralTruckParam
;
import
com.clx.performance.sqlProvider.IntegralTruckSqlProvider
;
import
com.clx.performance.vo.pc.IntegralTruckVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
org.apache.ibatis.annotations.SelectProvider
;
/**
* @Author: aiqinguo
* @Description: 积分车辆
* @Date: 2023-10-9 11:52:22
* @Version: 1.0
*/
@Mapper
public
interface
IntegralTruckMapper
extends
BaseMapper
<
IntegralTruck
>
{
/**
* 查询是否存在(按车牌号)
*/
@Select
(
"SELECT IFNULL((SELECT 1 FROM integral_truck WHERE truck_no=#{truckNo} LIMIT 1),0)"
)
int
existByTruckNo
(
@Param
(
"truckNo"
)
String
truckNo
);
/**
* @see IntegralTruckSqlProvider#pageByParam(com.baomidou.mybatisplus.extension.plugins.pagination.Page, com.clx.performance.param.pc.PageIntegralTruckParam)
*/
@SelectProvider
(
type
=
IntegralTruckSqlProvider
.
class
,
method
=
"pageByParam"
)
IPage
<
IntegralTruckVO
>
pageByParam
(
@Param
(
"page"
)
Page
<
IntegralTruckVO
>
page
,
@Param
(
"param"
)
PageIntegralTruckParam
param
);
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/model/IntegralOrder.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
model
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.msl.common.config.KeyColumn
;
import
com.msl.common.model.HasKey
;
import
lombok.*
;
/**
* @Author: aiqinguo
* @Description: 积分货单
* @Date: 2023-10-10 20:31:14
* @Version: 1.0
*/
@Getter
@Setter
@NoArgsConstructor
@TableName
(
autoResultMap
=
true
)
public
class
IntegralOrder
implements
HasKey
<
Integer
>
{
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
//id
private
String
orderGoodsNo
;
//货单编号
private
Integer
sendAddressId
;
//发货地址id
private
String
sendAddress
;
//发货地址
private
Integer
receiveAddressId
;
//收货地址id
private
String
receiveAddress
;
//收货地址
private
Integer
orderType
;
//货单类型:1优质单 2普通单 3流水单 4支援单
private
Integer
truckEchelon
;
//车辆梯队
private
String
createTime
;
//创建时间
private
String
modifiedTime
;
//修改时间
@Getter
@AllArgsConstructor
public
enum
OrderType
{
HIGH_QUALITY
(
1
,
"优质单"
),
NORMAL
(
2
,
"普通单"
),
WATER
(
3
,
"流水单"
),
SUPPORT
(
4
,
"支援单"
),
;
private
Integer
value
;
private
String
msg
;
}
@KeyColumn
(
"id"
)
@Override
public
Integer
gainKey
()
{
return
id
;
}
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/model/IntegralRecord.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
model
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.msl.common.config.KeyColumn
;
import
com.msl.common.model.HasKey
;
import
lombok.*
;
/**
* @Author: aiqinguo
* @Description: 积分记录
* @Date: 2023-10-11 17:30:51
* @Version: 1.0
*/
@Getter
@Setter
@NoArgsConstructor
@TableName
(
autoResultMap
=
true
)
public
class
IntegralRecord
implements
HasKey
<
Integer
>
{
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
//id
private
Integer
statisticsId
;
//统计id
private
String
statisticsDate
;
//统计时间
private
String
truckNo
;
//车牌号
private
Integer
integral
;
//获得积分
private
Integer
type
;
//类型
private
String
remark
;
//原因
private
String
createTime
;
//创建时间
private
String
modifiedTime
;
//修改时间
@Getter
@AllArgsConstructor
public
enum
type
{
SYSTEM
(
1
,
"系统"
),
PROTECTION
(
2
,
"保护分"
),
PROTECTION_CANCEL
(
3
,
"保护分取消"
),
SETTLEMENT
(
4
,
"结算分"
),
BASE
(
5
,
"基础分"
),
ORDER_CHILD_COMPLETE
(
11
,
"运单完成"
),
ORDER_CHILD_COMPLETE_NUM
(
12
,
"运单完成数量"
),
ORDER_CHILD_COMPLETE_WATER
(
13
,
"流水单"
),
ORDER_CHILD_COMPLETE_SUPPORT
(
14
,
"支援单"
),
ORDER_CHILD_COMPLETE_TIMEOUT
(
15
,
"运单完成超时"
),
ORDER_CHILD_CANCEL
(
21
,
"运单取消"
),
ORDER_CHILD_CANCEL_TIMEOUT
(
22
,
"运单取消超时"
),
;
private
Integer
value
;
private
String
msg
;
}
@KeyColumn
(
"id"
)
@Override
public
Integer
gainKey
()
{
return
id
;
}
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/model/IntegralStatistics.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
model
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.msl.common.config.KeyColumn
;
import
com.msl.common.model.HasKey
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
/**
* @Author: aiqinguo
* @Description: 积分排名统计
* @Date: 2023-10-9 14:47:54
* @Version: 1.0
*/
@Getter
@Setter
@NoArgsConstructor
@TableName
(
autoResultMap
=
true
)
public
class
IntegralStatistics
implements
HasKey
<
Integer
>
{
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
//id
private
String
truckNo
;
//车牌号
private
String
statisticsDate
;
//统计时间(周一)
private
Integer
integralBase
;
//基础积分
private
Integer
integral
;
//积分
private
Integer
rank
;
//排名
private
String
createTime
;
//创建时间
private
String
modifiedTime
;
//修改时间
@KeyColumn
(
"id"
)
@Override
public
Integer
gainKey
()
{
return
id
;
}
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/model/IntegralTruck.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
model
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.msl.common.config.KeyColumn
;
import
com.msl.common.model.HasKey
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
/**
* @Author: aiqinguo
* @Description: 积分车辆
* @Date: 2023-10-10 20:33:10
* @Version: 1.0
*/
@Getter
@Setter
@NoArgsConstructor
@TableName
(
autoResultMap
=
true
)
public
class
IntegralTruck
implements
HasKey
<
Integer
>
{
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
//id
private
String
truckNo
;
//车牌号
private
String
driverName
;
//司机姓名
private
String
driverMobile
;
//司机手机号
private
Integer
echelon
;
//梯队
private
Integer
integral
;
//积分
private
Integer
rank
;
//排名
private
String
createTime
;
//创建时间
private
String
modifiedTime
;
//修改时间
@KeyColumn
(
"id"
)
@Override
public
Integer
gainKey
()
{
return
id
;
}
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/service/IntegralMqService.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
;
public
interface
IntegralMqService
{
void
truckAdd
(
Integer
statisticsId
,
String
truckNo
);
void
integralRecordAdd
(
Integer
statisticsId
,
String
truckNo
,
Integer
type
,
Integer
integral
,
String
remark
);
}
performance-web/src/main/java/com/clx/performance/service/IntegralOrderService.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.IntegralOrderAddParam
;
import
com.clx.performance.param.pc.pageIntegralOrderParam
;
import
com.clx.performance.vo.pc.IntegralOrderVO
;
public
interface
IntegralOrderService
{
void
addOrder
(
IntegralOrderAddParam
param
);
IPage
<
IntegralOrderVO
>
pageOrderList
(
pageIntegralOrderParam
param
);
}
performance-web/src/main/java/com/clx/performance/service/IntegralRecordService.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
;
import
com.clx.performance.model.IntegralRecord
;
import
com.clx.performance.param.pc.IntegralRecordAddParam
;
public
interface
IntegralRecordService
{
void
addRecord
(
IntegralRecordAddParam
param
);
IntegralRecord
save
(
Integer
statisticsId
,
String
statisticsDate
,
String
truckNo
,
Integer
type
,
Integer
integral
,
String
remark
);
}
performance-web/src/main/java/com/clx/performance/service/IntegralStatisticsService.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.PageIntegralStatisticsParam
;
import
com.clx.performance.param.pc.pageIntegralStatisticsDetailParam
;
import
com.clx.performance.vo.pc.IntegralRecordVO
;
import
com.clx.performance.vo.pc.IntegralStatisticsVO
;
public
interface
IntegralStatisticsService
{
IPage
<
IntegralStatisticsVO
>
pageStatisticsList
(
PageIntegralStatisticsParam
param
);
IPage
<
IntegralRecordVO
>
pageStatisticsDetailList
(
pageIntegralStatisticsDetailParam
param
);
int
protectionIntegralCalc
(
String
statisticsDate
);
int
protectionIntegralCalc
(
String
createTime
,
String
statisticsDate
);
}
performance-web/src/main/java/com/clx/performance/service/IntegralTruckService.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.IntegralTruckAddParam
;
import
com.clx.performance.param.pc.PageIntegralTruckParam
;
import
com.clx.performance.vo.pc.IntegralTruckVO
;
public
interface
IntegralTruckService
{
void
saveTruck
(
IntegralTruckAddParam
param
);
IPage
<
IntegralTruckVO
>
pageTruckList
(
PageIntegralTruckParam
param
);
IntegralTruckVO
getTruckDriverInfo
(
String
truckNo
);
Integer
getTruckCount
(
Integer
truckEchelon
);
}
performance-web/src/main/java/com/clx/performance/service/impl/IntegralMqServiceImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
.
impl
;
import
com.clx.performance.service.IntegralMqService
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
/**
* @Author: aiqingguo
* @Description: 司机积分 mq
* @Date: 2023-10-10 13:21:07
* @Version: 1.0
*/
@Slf4j
@Service
@AllArgsConstructor
public
class
IntegralMqServiceImpl
implements
IntegralMqService
{
/**
* 新增车辆 (manage)
*/
@Override
public
void
truckAdd
(
Integer
statisticsId
,
String
truckNo
){
}
/**
* 新增积分记录 (manage)
*/
@Override
public
void
integralRecordAdd
(
Integer
statisticsId
,
String
truckNo
,
Integer
type
,
Integer
integral
,
String
remark
){
}
}
performance-web/src/main/java/com/clx/performance/service/impl/IntegralOrderServiceImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.dao.IntegralOrderDao
;
import
com.clx.performance.dao.OrderGoodsDao
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.model.IntegralOrder
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.param.pc.IntegralOrderAddParam
;
import
com.clx.performance.param.pc.pageIntegralOrderParam
;
import
com.clx.performance.service.IntegralOrderService
;
import
com.clx.performance.vo.pc.IntegralOrderVO
;
import
com.msl.common.exception.ServiceSystemException
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
@Slf4j
@Service
@AllArgsConstructor
public
class
IntegralOrderServiceImpl
implements
IntegralOrderService
{
private
final
IntegralOrderDao
integralOrderDao
;
private
final
OrderGoodsDao
orderGoodsDao
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
addOrder
(
IntegralOrderAddParam
param
)
{
String
orderGoodsNo
=
param
.
getOrderGoodsNo
();
boolean
existFlag
=
integralOrderDao
.
existByOrderGoodsNo
(
orderGoodsNo
);
if
(
existFlag
)
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
INTEGRAL_ORDER_EXIST
);}
OrderGoods
orderGoods
=
orderGoodsDao
.
getByOrderGoodsNo
(
orderGoodsNo
).
orElseThrow
(
PerformanceResultEnum
.
ORDER_INVALID
);
IntegralOrder
order
=
new
IntegralOrder
();
order
.
setOrderGoodsNo
(
orderGoodsNo
);
order
.
setSendAddressId
(
orderGoods
.
getSendAddressId
());
order
.
setSendAddress
(
orderGoods
.
getSendAddressShorter
());
order
.
setReceiveAddressId
(
orderGoods
.
getReceiveAddressId
());
order
.
setReceiveAddress
(
orderGoods
.
getReceiveAddressShorter
());
order
.
setOrderType
(
param
.
getOrderType
());
order
.
setTruckEchelon
(
param
.
getTruckEchelon
());
integralOrderDao
.
saveEntity
(
order
);
}
@Override
public
IPage
<
IntegralOrderVO
>
pageOrderList
(
pageIntegralOrderParam
param
)
{
return
integralOrderDao
.
pageByParam
(
param
);
}
}
performance-web/src/main/java/com/clx/performance/service/impl/IntegralRecordServiceImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
.
impl
;
import
com.clx.performance.dao.IntegralRecordDao
;
import
com.clx.performance.dao.IntegralStatisticsDao
;
import
com.clx.performance.dao.IntegralTruckDao
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.model.IntegralRecord
;
import
com.clx.performance.model.IntegralStatistics
;
import
com.clx.performance.model.IntegralTruck
;
import
com.clx.performance.param.pc.IntegralRecordAddParam
;
import
com.clx.performance.service.IntegralMqService
;
import
com.clx.performance.service.IntegralRecordService
;
import
com.clx.performance.utils.LocalDateTimeUtils
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
@Slf4j
@Service
@AllArgsConstructor
public
class
IntegralRecordServiceImpl
implements
IntegralRecordService
{
private
final
IntegralRecordDao
integralRecordDao
;
private
final
IntegralTruckDao
integralTruckDao
;
private
final
IntegralStatisticsDao
integralStatisticsDao
;
private
final
IntegralMqService
integralMqService
;
@Override
public
void
addRecord
(
IntegralRecordAddParam
param
)
{
String
statisticsDate
=
LocalDateTimeUtils
.
getWeekStart
();
IntegralTruck
truck
=
integralTruckDao
.
getByTruckNo
(
param
.
getTruckNo
()).
orElseThrow
(
PerformanceResultEnum
.
INTEGRAL_TRUCK_NO_EXIST
);
// 查找最新统计
IntegralStatistics
statistics
=
integralStatisticsDao
.
selectByTruckNoAndStatisticsDate
(
param
.
getTruckNo
(),
statisticsDate
).
orElseThrow
(
PerformanceResultEnum
.
INTEGRAL_TRUCK_NO_EXIST
);
// 更新积分
statistics
.
setIntegral
(
statistics
.
getIntegral
()+
param
.
getIntegral
());
integralStatisticsDao
.
updateIntegral
(
statistics
);
truck
.
setIntegral
(
statistics
.
getIntegral
());
integralTruckDao
.
updateIntegral
(
truck
);
// 新增积分记录
IntegralRecord
record
=
save
(
statistics
.
getId
(),
statistics
.
getStatisticsDate
(),
statistics
.
getTruckNo
(),
IntegralRecord
.
type
.
SYSTEM
.
getValue
(),
param
.
getIntegral
(),
param
.
getRemark
());
// 发送mq (新增积分记录)
integralMqService
.
integralRecordAdd
(
record
.
getStatisticsId
(),
record
.
getTruckNo
(),
record
.
getType
(),
record
.
getIntegral
(),
record
.
getRemark
());
}
@Override
public
IntegralRecord
save
(
Integer
statisticsId
,
String
statisticsDate
,
String
truckNo
,
Integer
type
,
Integer
integral
,
String
remark
){
IntegralRecord
record
=
new
IntegralRecord
();
record
.
setStatisticsId
(
statisticsId
);
record
.
setStatisticsDate
(
statisticsDate
);
record
.
setTruckNo
(
truckNo
);
record
.
setType
(
type
);
record
.
setIntegral
(
integral
);
record
.
setRemark
(
remark
);
// 新增记录
integralRecordDao
.
saveEntity
(
record
);
return
record
;
}
}
performance-web/src/main/java/com/clx/performance/service/impl/IntegralStatisticsServiceImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.dao.IntegralRecordDao
;
import
com.clx.performance.dao.IntegralStatisticsDao
;
import
com.clx.performance.dao.IntegralTruckDao
;
import
com.clx.performance.model.IntegralTruck
;
import
com.clx.performance.param.pc.PageIntegralStatisticsParam
;
import
com.clx.performance.param.pc.pageIntegralStatisticsDetailParam
;
import
com.clx.performance.service.IntegralStatisticsService
;
import
com.clx.performance.utils.LocalDateTimeUtils
;
import
com.clx.performance.vo.pc.IntegralRecordVO
;
import
com.clx.performance.vo.pc.IntegralStatisticsVO
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
java.time.Duration
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
@Slf4j
@Service
@AllArgsConstructor
public
class
IntegralStatisticsServiceImpl
implements
IntegralStatisticsService
{
private
final
IntegralStatisticsDao
integralStatisticsDao
;
private
final
IntegralRecordDao
integralRecordDao
;
private
IntegralTruckDao
integralTruckDao
;
/**
* 新手积分计算
*/
@Override
public
int
protectionIntegralCalc
(
String
statisticsDate
){
int
day
=
diffDay
(
statisticsDate
,
LocalDateTimeUtils
.
getStringDayStart
());
if
(
day
>=
7
)
{
return
0
;}
return
(
7
-
day
)*
30
;
}
@Override
public
IPage
<
IntegralStatisticsVO
>
pageStatisticsList
(
PageIntegralStatisticsParam
param
)
{
IPage
<
IntegralStatisticsVO
>
page
=
integralStatisticsDao
.
pageByParam
(
param
);
List
<
String
>
truckNoList
=
page
.
getRecords
().
stream
().
map
(
item
->
item
.
getTruckNo
()).
collect
(
Collectors
.
toList
());
if
(!
truckNoList
.
isEmpty
())
{
List
<
IntegralTruck
>
integralTruckList
=
integralTruckDao
.
listByTruckNoList
(
truckNoList
);
Map
<
String
,
Integer
>
echelonMap
=
integralTruckList
.
stream
().
collect
(
Collectors
.
toMap
(
item
->
item
.
getTruckNo
(),
item
->
item
.
getEchelon
()));
for
(
IntegralStatisticsVO
item
:
page
.
getRecords
())
{
item
.
setEchelon
(
echelonMap
.
get
(
item
.
getTruckNo
()));
}
}
return
page
;
}
@Override
public
IPage
<
IntegralRecordVO
>
pageStatisticsDetailList
(
pageIntegralStatisticsDetailParam
param
)
{
return
integralRecordDao
.
pageByParam
(
param
);
}
@Override
public
int
protectionIntegralCalc
(
String
createTime
,
String
statisticsDate
){
int
day
=
diffDay
(
LocalDateTimeUtils
.
getStringDayStart
(
createTime
),
statisticsDate
);
if
(
day
>=
7
)
{
return
0
;}
return
(
7
-
day
)*
30
;
}
private
int
diffDay
(
String
beginDate
,
String
endDate
){
long
day
=
Duration
.
between
(
LocalDateTimeUtils
.
parseTime
(
beginDate
),
LocalDateTimeUtils
.
parseTime
(
endDate
)).
toDays
();
return
Long
.
valueOf
(
day
).
intValue
();
}
}
performance-web/src/main/java/com/clx/performance/service/impl/IntegralTruckServiceImpl.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.dao.IntegralStatisticsDao
;
import
com.clx.performance.dao.IntegralTruckDao
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.extranal.user.DriverService
;
import
com.clx.performance.model.IntegralRecord
;
import
com.clx.performance.model.IntegralStatistics
;
import
com.clx.performance.model.IntegralTruck
;
import
com.clx.performance.param.pc.IntegralTruckAddParam
;
import
com.clx.performance.param.pc.PageIntegralTruckParam
;
import
com.clx.performance.service.IntegralMqService
;
import
com.clx.performance.service.IntegralRecordService
;
import
com.clx.performance.service.IntegralStatisticsService
;
import
com.clx.performance.service.IntegralTruckService
;
import
com.clx.performance.utils.LocalDateTimeUtils
;
import
com.clx.performance.vo.pc.IntegralTruckVO
;
import
com.clx.user.vo.feign.DriverInfoFeignVo
;
import
com.msl.common.exception.ServiceSystemException
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
@Slf4j
@Service
@AllArgsConstructor
public
class
IntegralTruckServiceImpl
implements
IntegralTruckService
{
private
final
IntegralTruckDao
integralTruckDao
;
private
final
IntegralStatisticsDao
integralStatisticsDao
;
private
final
IntegralRecordService
integralRecordService
;
private
final
IntegralStatisticsService
integralStatisticsService
;
private
final
DriverService
driverService
;
private
final
IntegralMqService
integralMqService
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
saveTruck
(
IntegralTruckAddParam
param
)
{
String
truckNo
=
param
.
getTruckNo
();
boolean
existFlag
=
integralTruckDao
.
existByTruckNo
(
truckNo
);
if
(
existFlag
)
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
INTEGRAL_TRUCK_DRIVER_EXIST
);}
IntegralTruck
truck
=
new
IntegralTruck
();
truck
.
setTruckNo
(
truckNo
);
truck
.
setDriverName
(
param
.
getDriverName
());
truck
.
setDriverMobile
(
param
.
getDriverMobile
());
truck
.
setEchelon
(
1
);
String
statisticsDate
=
LocalDateTimeUtils
.
getWeekStart
();
int
protectionIntegral
=
integralStatisticsService
.
protectionIntegralCalc
(
statisticsDate
);
int
baseIntegral
=
100
;
// 初始化统计
IntegralStatistics
statistics
=
new
IntegralStatistics
();
statistics
.
setTruckNo
(
truckNo
);
statistics
.
setStatisticsDate
(
statisticsDate
);
statistics
.
setIntegralBase
(
0
);
statistics
.
setIntegral
(
protectionIntegral
+
baseIntegral
);
//保护分+基础分
statistics
.
setRank
(
1
);
integralStatisticsDao
.
saveEntity
(
statistics
);
IntegralStatistics
statisticsNext
=
new
IntegralStatistics
();
statisticsNext
.
setTruckNo
(
truckNo
);
statisticsNext
.
setStatisticsDate
(
LocalDateTimeUtils
.
formatTime
(
LocalDateTimeUtils
.
parseTime
(
statistics
.
getStatisticsDate
()).
plusDays
(
7
)));
statisticsNext
.
setIntegralBase
(
0
);
statisticsNext
.
setIntegral
(
0
);
statisticsNext
.
setRank
(
1
);
integralStatisticsDao
.
saveEntity
(
statisticsNext
);
// 新增车辆
truck
.
setIntegral
(
statistics
.
getIntegral
());
integralTruckDao
.
saveEntity
(
truck
);
// 新增积分记录
integralRecordService
.
save
(
statistics
.
getId
(),
statistics
.
getStatisticsDate
(),
statistics
.
getTruckNo
(),
IntegralRecord
.
type
.
PROTECTION
.
getValue
(),
protectionIntegral
,
"新用户"
);
integralRecordService
.
save
(
statistics
.
getId
(),
statistics
.
getStatisticsDate
(),
statistics
.
getTruckNo
(),
IntegralRecord
.
type
.
BASE
.
getValue
(),
baseIntegral
,
"基础分"
);
// 发送mq (车辆新增)
integralMqService
.
truckAdd
(
statistics
.
getId
(),
param
.
getTruckNo
());
}
@Override
public
IPage
<
IntegralTruckVO
>
pageTruckList
(
PageIntegralTruckParam
param
)
{
return
integralTruckDao
.
pageByParam
(
param
);
}
@Override
public
IntegralTruckVO
getTruckDriverInfo
(
String
truckNo
)
{
IntegralTruckVO
truck
=
null
;
// 查询车辆信息
DriverInfoFeignVo
driverTruckInfoFeignVo
=
driverService
.
getTruckOwnInfo
(
truckNo
).
get
();
if
(
null
!=
driverTruckInfoFeignVo
)
{
truck
=
new
IntegralTruckVO
();
truck
.
setTruckNo
(
truckNo
);
truck
.
setDriverName
(
driverTruckInfoFeignVo
.
getName
());
truck
.
setDriverMobile
(
driverTruckInfoFeignVo
.
getMobile
());
}
return
truck
;
}
@Override
public
Integer
getTruckCount
(
Integer
truckEchelon
)
{
int
count
=
(
int
)
integralTruckDao
.
countByTruckEchelon
(
truckEchelon
);
return
count
;
}
}
performance-web/src/main/java/com/clx/performance/sqlProvider/IntegralOrderSqlProvider.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
sqlProvider
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.param.pc.pageIntegralOrderParam
;
import
com.clx.performance.vo.pc.IntegralOrderVO
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.jdbc.SQL
;
public
class
IntegralOrderSqlProvider
{
public
String
pageByParam
(
@Param
(
"page"
)
Page
<
IntegralOrderVO
>
page
,
@Param
(
"param"
)
pageIntegralOrderParam
param
)
{
return
new
SQL
(){{
SELECT
(
" id, order_goods_no, "
+
" send_address_id, send_address, "
+
" receive_address_id, receive_address, "
+
" order_type, truck_echelon, "
+
" date_format(create_time, '%Y-%m-%d %H:%i:%s') as createTime, "
+
" date_format(modified_time, '%Y-%m-%d %H:%i:%s') as modifiedTime "
);
FROM
(
"integral_order"
);
if
(
StringUtils
.
isNotBlank
(
param
.
getOrderGoodsNo
()))
{
WHERE
(
"order_goods_no = #{param.orderGoodsNo}"
);}
if
(
StringUtils
.
isNotBlank
(
param
.
getBeginTime
()))
{
WHERE
(
"create_time >= #{param.beginTime}"
);}
if
(
StringUtils
.
isNotBlank
(
param
.
getEndTime
()))
{
WHERE
(
"create_time <= #{param.endTime}"
);}
ORDER_BY
(
"create_time desc"
);
}}.
toString
();
}
}
performance-web/src/main/java/com/clx/performance/sqlProvider/IntegralRecordSqlProvider.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
sqlProvider
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.param.pc.pageIntegralStatisticsDetailParam
;
import
com.clx.performance.vo.pc.IntegralRecordVO
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.jdbc.SQL
;
public
class
IntegralRecordSqlProvider
{
public
String
pageByParam
(
@Param
(
"page"
)
Page
<
IntegralRecordVO
>
page
,
@Param
(
"param"
)
pageIntegralStatisticsDetailParam
param
)
{
return
new
SQL
(){{
SELECT
(
" id, truck_no as truckNo, "
+
" statistics_id as statisticsId, statistics_date as statisticsDate, "
+
" integral, type, remark, "
+
" date_format(create_time, '%Y-%m-%d %H:%i:%s') as createTime, "
+
" date_format(modified_time, '%Y-%m-%d %H:%i:%s') as modifiedTime "
);
FROM
(
"integral_record"
);
WHERE
(
"statistics_id = #{param.statisticsId}"
);
ORDER_BY
(
"create_time desc"
);
}}.
toString
();
}
}
performance-web/src/main/java/com/clx/performance/sqlProvider/IntegralStatisticsSqlProvider.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
sqlProvider
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.param.pc.PageIntegralStatisticsParam
;
import
com.clx.performance.vo.pc.IntegralStatisticsVO
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.jdbc.SQL
;
public
class
IntegralStatisticsSqlProvider
{
public
String
pageByParam
(
@Param
(
"page"
)
Page
<
IntegralStatisticsVO
>
page
,
@Param
(
"param"
)
PageIntegralStatisticsParam
param
)
{
return
new
SQL
(){{
SELECT
(
" id, truck_no as truckNo, date_format(statistics_date, '%Y-%m-%d %H:%i:%s') as statisticsDate, "
+
" integral_base as integralBase, integral, rank, "
+
" date_format(create_time, '%Y-%m-%d %H:%i:%s') as createTime, "
+
" date_format(modified_time, '%Y-%m-%d %H:%i:%s') as modifiedTime "
);
FROM
(
"integral_statistics"
);
if
(
StringUtils
.
isNotBlank
(
param
.
getBeginTime
()))
{
WHERE
(
"create_time >= #{param.beginTime}"
);}
if
(
StringUtils
.
isNotBlank
(
param
.
getEndTime
()))
{
WHERE
(
"create_time <= #{param.endTime}"
);}
ORDER_BY
(
"truck_no asc, statistics_date desc, integral desc "
);
}}.
toString
();
}
}
performance-web/src/main/java/com/clx/performance/sqlProvider/IntegralTruckSqlProvider.java
0 → 100644
浏览文件 @
098d2573
package
com
.
clx
.
performance
.
sqlProvider
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.param.pc.PageIntegralTruckParam
;
import
com.clx.performance.vo.pc.IntegralTruckVO
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.jdbc.SQL
;
import
java.util.Objects
;
public
class
IntegralTruckSqlProvider
{
public
String
pageByParam
(
@Param
(
"page"
)
Page
<
IntegralTruckVO
>
page
,
@Param
(
"param"
)
PageIntegralTruckParam
param
)
{
return
new
SQL
(){{
SELECT
(
" id, truck_no, "
+
" driver_name, driver_mobile, "
+
" echelon, integral, rank, "
+
" date_format(create_time, '%Y-%m-%d %H:%i:%s') as createTime, "
+
" date_format(modified_time, '%Y-%m-%d %H:%i:%s') as modifiedTime "
);
FROM
(
"integral_truck"
);
if
(
StringUtils
.
isNotBlank
(
param
.
getTruckNo
()))
{
WHERE
(
"truck_no = #{param.truckNo}"
);}
if
(
StringUtils
.
isNotBlank
(
param
.
getDriverMobile
()))
{
WHERE
(
"driver_mobile = #{param.driverMobile}"
);}
if
(!
Objects
.
isNull
(
param
.
getEchelon
()))
{
WHERE
(
"echelon = #{param.echelon}"
);}
if
(
StringUtils
.
isNotBlank
(
param
.
getBeginTime
()))
{
WHERE
(
"create_time >= #{param.beginTime}"
);}
if
(
StringUtils
.
isNotBlank
(
param
.
getEndTime
()))
{
WHERE
(
"create_time <= #{param.endTime}"
);}
ORDER_BY
(
"create_time desc"
);
}}.
toString
();
}
}
performance-web/src/main/java/com/clx/performance/utils/LocalDateTimeUtils.java
浏览文件 @
098d2573
...
...
@@ -382,4 +382,10 @@ public class LocalDateTimeUtils {
return
localDateTime
;
}
public
static
String
getWeekStart
()
{
return
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
).
format
(
LocalDateTime
.
of
(
LocalDate
.
now
(),
LocalTime
.
MIN
).
with
(
TemporalAdjusters
.
previousOrSame
(
DayOfWeek
.
MONDAY
)));
}
public
static
String
getWeekStart
(
String
dateTime
)
{
return
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
).
format
(
LocalDateTime
.
of
(
parseLocalDate
(
dateTime
),
LocalTime
.
MIN
).
with
(
TemporalAdjusters
.
previousOrSame
(
DayOfWeek
.
MONDAY
)));
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论