Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
promotion-service
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
promotion
promotion-service
Commits
357c5cbc
提交
357c5cbc
authored
3月 27, 2025
作者:
000516
提交者:
Coding
3月 27, 2025
浏览文件
操作
浏览文件
下载
差异文件
根据促销ID查询促销计划详细、任务上报信息、促销员打卡信息
Merge Request: 根据促销ID查询促销计划详细、任务上报信息、促销员打卡信息 Created By: @李秋林 Accepted By: @李秋林 URL:
https://g-pkkp8204.coding.net/p/promotion/d/promotion-service/git/merge/246?initial=true
上级
7306dcb1
c09a91f1
隐藏空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
129 行增加
和
4 行删除
+129
-4
PromPlanQueryController.java
...on/controller/activityplanv2/PromPlanQueryController.java
+38
-4
TemporaryActivityReportedDao.java
...ion/domain/activity/dao/TemporaryActivityReportedDao.java
+2
-0
TemporaryActivityReportedDaoImpl.java
...n/activity/dao/impl/TemporaryActivityReportedDaoImpl.java
+10
-0
TemporaryActivityWrapper.java
...n/domain/activity/wrapperQo/TemporaryActivityWrapper.java
+4
-0
ActivityResponse.java
...otion/pojo/activity/planv2/response/ActivityResponse.java
+41
-0
TemporaryActivityClockQueryService.java
...ctivity/temporary/TemporaryActivityClockQueryService.java
+4
-0
TemporaryActivityClockQueryServiceImpl.java
...emporary/impl/TemporaryActivityClockQueryServiceImpl.java
+7
-0
PromPlanQueryService.java
...romotion/service/activityplanv2/PromPlanQueryService.java
+3
-0
PromPlanQueryServiceImpl.java
...service/activityplanv2/impl/PromPlanQueryServiceImpl.java
+20
-0
没有找到文件。
src/main/java/com/wangxiaolu/promotion/controller/activityplanv2/PromPlanQueryController.java
浏览文件 @
357c5cbc
package
com
.
wangxiaolu
.
promotion
.
controller
.
activityplanv2
;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryClockWrapper
;
import
com.wangxiaolu.promotion.pojo.PageInfo
;
import
com.wangxiaolu.promotion.pojo.activity.planv2.response.ActivityResponse
;
import
com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityReportedDto
;
import
com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryClockDto
;
import
com.wangxiaolu.promotion.result.basedata.R
;
import
com.wangxiaolu.promotion.service.activity.temporary.TemporaryActivityClockQueryService
;
import
com.wangxiaolu.promotion.service.activityplanv2.PromPlanQueryService
;
import
org.springframework.beans.factory.annotation.Autowired
;
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
org.springframework.web.bind.annotation.*
;
import
javax.validation.constraints.NotNull
;
import
javax.websocket.server.PathParam
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* @author : liqiulin
...
...
@@ -20,10 +28,36 @@ public class PromPlanQueryController {
@Autowired
private
PromPlanQueryService
promPlanQueryService
;
@Autowired
private
TemporaryActivityClockQueryService
temporaryActivityClockQueryService
;
@PostMapping
(
"/page"
)
public
R
queryPage
(
@RequestBody
PageInfo
pageInfo
){
promPlanQueryService
.
queryPage
(
pageInfo
);
return
R
.
success
(
pageInfo
);
}
/**
* 根据计划ID查询任务、打卡信息
*/
@GetMapping
(
"/{id}"
)
public
R
queryPlanById
(
@PathParam
(
"id"
)
@PathVariable
Long
id
){
ActivityResponse
activityResponse
=
promPlanQueryService
.
queryPlanById
(
id
);
List
<
TemporaryActivityReportedDto
>
reportedDtos
=
activityResponse
.
getReportedDtos
();
if
(
CollectionUtil
.
isEmpty
(
reportedDtos
)){
return
R
.
success
(
activityResponse
);
}
List
<
ActivityResponse
.
ActivityReported
>
aas
=
new
ArrayList
<>();
for
(
TemporaryActivityReportedDto
reportedDto
:
reportedDtos
)
{
TemporaryClockWrapper
tcw
=
new
TemporaryClockWrapper
();
tcw
.
setReportedId
(
reportedDto
.
getId
());
TemporaryClockDto
clockDto
=
temporaryActivityClockQueryService
.
selectOne
(
tcw
);
ActivityResponse
.
ActivityReported
aa
=
new
ActivityResponse
.
ActivityReported
(
reportedDto
,
clockDto
);
aas
.
add
(
aa
);
}
activityResponse
.
setReporteds
(
aas
);
return
R
.
success
(
activityResponse
);
}
}
src/main/java/com/wangxiaolu/promotion/domain/activity/dao/TemporaryActivityReportedDao.java
浏览文件 @
357c5cbc
...
...
@@ -36,4 +36,6 @@ public interface TemporaryActivityReportedDao {
* 根据ID修改
*/
void
updateById
(
TemporaryActivityReportedDto
temActDto
);
List
<
TemporaryActivityReportedDto
>
findList
(
TemporaryActivityWrapper
taw
);
}
src/main/java/com/wangxiaolu/promotion/domain/activity/dao/impl/TemporaryActivityReportedDaoImpl.java
浏览文件 @
357c5cbc
...
...
@@ -93,6 +93,13 @@ public class TemporaryActivityReportedDaoImpl implements TemporaryActivityReport
temporaryActivityReportedMapper
.
updateById
(
rDo
);
}
@Override
public
List
<
TemporaryActivityReportedDto
>
findList
(
TemporaryActivityWrapper
taw
)
{
LambdaQueryWrapper
<
TemporaryActivityReportedDO
>
qw
=
buildQueryList
(
taw
);
List
<
TemporaryActivityReportedDO
>
dos
=
temporaryActivityReportedMapper
.
selectList
(
qw
);
return
transitionDtos
(
dos
);
}
private
LambdaQueryWrapper
<
TemporaryActivityReportedDO
>
buildQueryList
(
TemporaryActivityWrapper
tw
)
{
LambdaQueryWrapper
<
TemporaryActivityReportedDO
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
if
(
Objects
.
nonNull
(
tw
.
getTemporaryId
()))
{
...
...
@@ -131,6 +138,9 @@ public class TemporaryActivityReportedDaoImpl implements TemporaryActivityReport
if
(!
StringUtils
.
isEmpty
(
tw
.
getStoreNameLike
())){
queryWrapper
.
like
(
TemporaryActivityReportedDO:
:
getStoreName
,
tw
.
getStoreNameLike
());
}
if
(
Objects
.
nonNull
(
tw
.
getPlanId
())){
queryWrapper
.
eq
(
TemporaryActivityReportedDO:
:
getPlanId
,
tw
.
getPlanId
());
}
queryWrapper
.
eq
(
TemporaryActivityReportedDO:
:
getIsDelete
,
StatusType
.
VALID
.
getType
());
// 默认创建日期倒序排列
queryWrapper
.
orderByDesc
(
TemporaryActivityReportedDO:
:
getId
);
...
...
src/main/java/com/wangxiaolu/promotion/domain/activity/wrapperQo/TemporaryActivityWrapper.java
浏览文件 @
357c5cbc
...
...
@@ -7,6 +7,7 @@ import lombok.NoArgsConstructor;
import
lombok.experimental.Accessors
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author : liqiulin
...
...
@@ -67,6 +68,9 @@ public class TemporaryActivityWrapper {
private
String
storeNameLike
;
private
List
<
Long
>
planIds
;
private
Long
planId
;
public
Date
getCreateDateEnd
()
{
String
format
=
DateUtil
.
format
(
this
.
createDateEnd
,
"yyyy-MM-dd 23:59:59"
);
this
.
createDateEnd
=
DateUtil
.
parse
(
format
);
...
...
src/main/java/com/wangxiaolu/promotion/pojo/activity/planv2/response/ActivityResponse.java
0 → 100644
浏览文件 @
357c5cbc
package
com
.
wangxiaolu
.
promotion
.
pojo
.
activity
.
planv2
.
response
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.wangxiaolu.promotion.pojo.activity.planv2.dto.ActivityPlanInfoDto
;
import
com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityReportedDto
;
import
com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryClockDto
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
import
java.util.List
;
/**
* @author : liqiulin
* @date : 2025-03-27 15
* @describe :
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
ActivityResponse
{
ActivityPlanInfoDto
planInfo
;
List
<
ActivityReported
>
reporteds
;
@JsonIgnore
List
<
TemporaryActivityReportedDto
>
reportedDtos
;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
static
class
ActivityReported
{
TemporaryActivityReportedDto
reported
;
TemporaryClockDto
clock
;
}
}
src/main/java/com/wangxiaolu/promotion/service/activity/temporary/TemporaryActivityClockQueryService.java
浏览文件 @
357c5cbc
package
com
.
wangxiaolu
.
promotion
.
service
.
activity
.
temporary
;
import
com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryClockWrapper
;
import
com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryClockDto
;
/**
...
...
@@ -13,6 +14,9 @@ public interface TemporaryActivityClockQueryService {
TemporaryClockDto
findTemporaryClockByTemIdAndDate
(
Integer
temporaryId
,
String
createDate
);
TemporaryClockDto
findById
(
Long
id
);
TemporaryClockDto
selectOne
(
TemporaryClockWrapper
tcw
);
TemporaryClockDto
findLatestClockByTemporaryId
(
Integer
temporaryId
);
}
src/main/java/com/wangxiaolu/promotion/service/activity/temporary/impl/TemporaryActivityClockQueryServiceImpl.java
浏览文件 @
357c5cbc
...
...
@@ -61,6 +61,13 @@ public class TemporaryActivityClockQueryServiceImpl implements TemporaryActivity
return
temporaryClockDto
;
}
@Override
public
TemporaryClockDto
selectOne
(
TemporaryClockWrapper
tcw
)
{
TemporaryClockDto
temporaryClockDto
=
temporaryActivityClockDao
.
selectOne
(
tcw
);
findClockPhoto
(
temporaryClockDto
);
return
temporaryClockDto
;
}
@Override
public
TemporaryClockDto
findLatestClockByTemporaryId
(
Integer
temporaryId
)
{
return
temporaryActivityClockDao
.
findLatestClockByTemporaryId
(
temporaryId
);
...
...
src/main/java/com/wangxiaolu/promotion/service/activityplanv2/PromPlanQueryService.java
浏览文件 @
357c5cbc
...
...
@@ -2,6 +2,7 @@ package com.wangxiaolu.promotion.service.activityplanv2;
import
com.wangxiaolu.promotion.pojo.PageInfo
;
import
com.wangxiaolu.promotion.pojo.activity.planv2.dto.ActivityPlanInfoDto
;
import
com.wangxiaolu.promotion.pojo.activity.planv2.response.ActivityResponse
;
import
com.wangxiaolu.promotion.pojo.activity.temporary.vo.TemporaryActivityPlanVo
;
import
java.util.List
;
...
...
@@ -17,4 +18,6 @@ public interface PromPlanQueryService {
List
<
ActivityPlanInfoDto
>
findClockList
(
TemporaryActivityPlanVo
temporaryActivityPlanVo
);
ActivityPlanInfoDto
selectById
(
Long
planId
);
ActivityResponse
queryPlanById
(
Long
id
);
}
src/main/java/com/wangxiaolu/promotion/service/activityplanv2/impl/PromPlanQueryServiceImpl.java
浏览文件 @
357c5cbc
package
com
.
wangxiaolu
.
promotion
.
service
.
activityplanv2
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityClockDao
;
import
com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityReportedDao
;
import
com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryActivityWrapper
;
import
com.wangxiaolu.promotion.domain.activityplanv2.dao.ActivityPlanInfoDao
;
import
com.wangxiaolu.promotion.domain.manage.wrapperQo.ActivityPlanInfoWrapper
;
import
com.wangxiaolu.promotion.enums.plan.PlanStatus
;
import
com.wangxiaolu.promotion.pojo.PageInfo
;
import
com.wangxiaolu.promotion.pojo.activity.planv2.dto.ActivityPlanInfoDto
;
import
com.wangxiaolu.promotion.pojo.activity.planv2.response.ActivityResponse
;
import
com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityReportedDto
;
import
com.wangxiaolu.promotion.pojo.activity.temporary.vo.TemporaryActivityPlanVo
;
import
com.wangxiaolu.promotion.service.activityplanv2.PromPlanQueryService
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -13,6 +18,7 @@ import org.springframework.stereotype.Service;
import
java.time.LocalDate
;
import
java.time.ZoneId
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
...
...
@@ -26,6 +32,10 @@ public class PromPlanQueryServiceImpl implements PromPlanQueryService {
@Autowired
private
ActivityPlanInfoDao
activityPlanInfoDao
;
@Autowired
private
TemporaryActivityReportedDao
temporaryActivityReportedDao
;
@Autowired
private
TemporaryActivityClockDao
temporaryActivityClockDao
;
@Override
public
void
queryPage
(
PageInfo
pageInfo
)
{
...
...
@@ -49,4 +59,14 @@ public class PromPlanQueryServiceImpl implements PromPlanQueryService {
public
ActivityPlanInfoDto
selectById
(
Long
planId
)
{
return
activityPlanInfoDao
.
selectById
(
planId
);
}
@Override
public
ActivityResponse
queryPlanById
(
Long
id
)
{
ActivityPlanInfoDto
planInfoDto
=
activityPlanInfoDao
.
selectById
(
id
);
TemporaryActivityWrapper
taw
=
new
TemporaryActivityWrapper
().
setPlanId
(
id
);
List
<
TemporaryActivityReportedDto
>
reportedDtos
=
temporaryActivityReportedDao
.
findList
(
taw
);
ActivityResponse
response
=
new
ActivityResponse
().
setPlanInfo
(
planInfoDto
).
setReportedDtos
(
reportedDtos
);
return
response
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论