Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
youjj
cloud-platform
Commits
64eaa146
Commit
64eaa146
authored
Dec 13, 2019
by
libin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加根据中奖记录id查询的接口
parent
17c72286
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
43 additions
and
25 deletions
+43
-25
ActivityAttendanceRecordBiz.java
...fc/platform/activity/biz/ActivityAttendanceRecordBiz.java
+2
-1
ActivityWinningRecordBiz.java
.../xxfc/platform/activity/biz/ActivityWinningRecordBiz.java
+8
-2
ActivityPrizeMqHandler.java
...xfc/platform/activity/handler/ActivityPrizeMqHandler.java
+20
-20
ActivityWinningRecordController.java
...atform/activity/rest/ActivityWinningRecordController.java
+13
-2
No files found.
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/biz/ActivityAttendanceRecordBiz.java
View file @
64eaa146
...
@@ -25,7 +25,6 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -25,7 +25,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.core.ValueOperations
;
import
org.springframework.data.redis.core.ValueOperations
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
...
@@ -205,4 +204,6 @@ public class ActivityAttendanceRecordBiz extends BaseBiz<ActivityAttendanceRecor
...
@@ -205,4 +204,6 @@ public class ActivityAttendanceRecordBiz extends BaseBiz<ActivityAttendanceRecor
public
void
updateLotteryNumByActivityIdAndUserIdAndPrizeType
(
Integer
activityId
,
Integer
userId
,
Integer
prizeType
){
public
void
updateLotteryNumByActivityIdAndUserIdAndPrizeType
(
Integer
activityId
,
Integer
userId
,
Integer
prizeType
){
mapper
.
updateLotteryNumByActivityIdAndUserIdAndPrizeType
(
activityId
,
userId
,
prizeType
);
mapper
.
updateLotteryNumByActivityIdAndUserIdAndPrizeType
(
activityId
,
userId
,
prizeType
);
}
}
}
}
\ No newline at end of file
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/biz/ActivityWinningRecordBiz.java
View file @
64eaa146
...
@@ -8,7 +8,6 @@ import com.google.common.collect.Lists;
...
@@ -8,7 +8,6 @@ import com.google.common.collect.Lists;
import
com.xxfc.platform.activity.bo.ActivityWinningRecordBo
;
import
com.xxfc.platform.activity.bo.ActivityWinningRecordBo
;
import
com.xxfc.platform.activity.bo.ActivityWinningRecordTotalVo
;
import
com.xxfc.platform.activity.bo.ActivityWinningRecordTotalVo
;
import
com.xxfc.platform.activity.constant.PrizeTypeEnum
;
import
com.xxfc.platform.activity.constant.PrizeTypeEnum
;
import
com.xxfc.platform.activity.dto.ActivityWinningRecordDTO
;
import
com.xxfc.platform.activity.dto.ActivityWinningRecordFindDTO
;
import
com.xxfc.platform.activity.dto.ActivityWinningRecordFindDTO
;
import
com.xxfc.platform.activity.dto.ActivityWinningRecordPageDTO
;
import
com.xxfc.platform.activity.dto.ActivityWinningRecordPageDTO
;
import
com.xxfc.platform.activity.entity.ActivityWinningRecord
;
import
com.xxfc.platform.activity.entity.ActivityWinningRecord
;
...
@@ -18,7 +17,6 @@ import org.apache.commons.collections.CollectionUtils;
...
@@ -18,7 +17,6 @@ import org.apache.commons.collections.CollectionUtils;
import
org.apache.poi.ss.usermodel.CellStyle
;
import
org.apache.poi.ss.usermodel.CellStyle
;
import
org.apache.poi.ss.usermodel.Row
;
import
org.apache.poi.ss.usermodel.Row
;
import
org.apache.poi.ss.util.CellRangeAddress
;
import
org.apache.poi.ss.util.CellRangeAddress
;
import
org.apache.poi.xssf.usermodel.XSSFRow
;
import
org.apache.poi.xssf.usermodel.XSSFSheet
;
import
org.apache.poi.xssf.usermodel.XSSFSheet
;
import
org.apache.poi.xssf.usermodel.XSSFWorkbook
;
import
org.apache.poi.xssf.usermodel.XSSFWorkbook
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
...
@@ -31,6 +29,7 @@ import java.io.IOException;
...
@@ -31,6 +29,7 @@ import java.io.IOException;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.concurrent.atomic.AtomicInteger
;
import
java.util.concurrent.atomic.AtomicInteger
;
/**
/**
...
@@ -164,4 +163,11 @@ public class ActivityWinningRecordBiz extends BaseBiz<ActivityWinningRecordMappe
...
@@ -164,4 +163,11 @@ public class ActivityWinningRecordBiz extends BaseBiz<ActivityWinningRecordMappe
activityWinningRecordPageDTO
.
getPositionName
(),
prizeType
,
activityWinningRecordPageDTO
.
getPrizeName
(),
activityWinningRecordPageDTO
.
getPositionName
(),
prizeType
,
activityWinningRecordPageDTO
.
getPrizeName
(),
expiryDateCode
,
timeStr
};
expiryDateCode
,
timeStr
};
}
}
public
ActivityWinningRecordVo
findActivityAttendanceRecordById
(
Long
id
)
{
ActivityWinningRecordVo
activityWinningRecordVo
=
new
ActivityWinningRecordVo
();
ActivityWinningRecord
activityAttendanceRecord
=
mapper
.
selectByPrimaryKey
(
id
);
Optional
.
ofNullable
(
activityAttendanceRecord
).
ifPresent
(
x
->
BeanUtils
.
copyProperties
(
x
,
activityWinningRecordVo
));
return
activityWinningRecordVo
;
}
}
}
\ No newline at end of file
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/handler/ActivityPrizeMqHandler.java
View file @
64eaa146
...
@@ -34,23 +34,23 @@ import java.util.concurrent.TimeUnit;
...
@@ -34,23 +34,23 @@ import java.util.concurrent.TimeUnit;
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
@Slf4j
@Slf4j
public
class
ActivityPrizeMqHandler
{
public
class
ActivityPrizeMqHandler
{
private
final
ActivityPrizeBiz
activityPrizeBiz
;
private
final
ActivityPrizeBiz
activityPrizeBiz
;
private
final
ActivityAttendanceRecordBiz
activityAttendanceRecordBiz
;
private
final
ActivityAttendanceRecordBiz
activityAttendanceRecordBiz
;
private
final
ActivityWinningRecordBiz
activityWinningRecordBiz
;
private
final
ActivityWinningRecordBiz
activityWinningRecordBiz
;
private
final
UserCouponBiz
userCouponBiz
;
private
final
UserCouponBiz
userCouponBiz
;
private
final
RedisTemplate
<
String
,
Object
>
redisTemplate
;
private
final
RedisTemplate
<
String
,
Object
>
redisTemplate
;
@Resource
(
name
=
"redisTemplate"
)
@Resource
(
name
=
"redisTemplate"
)
private
ValueOperations
valueOperations
;
private
ValueOperations
valueOperations
;
private
final
String
R_CONSUME
=
"lottery:reconsume"
;
private
final
String
R_CONSUME
=
"lottery:reconsume"
;
private
final
int
R_CONSUME_MAX_NUM
=
3
;
private
final
int
R_CONSUME_MAX_NUM
=
3
;
@RabbitListener
(
queues
=
RabbitActivityConfig
.
PRIZE_RECORD_QUEUE
)
@RabbitListener
(
queues
=
RabbitActivityConfig
.
PRIZE_RECORD_QUEUE
)
public
void
processActivityPrizeMsg
(
ActivityLotteryDTO
activityLotteryDTO
,
Channel
channel
)
{
public
void
processActivityPrizeMsg
(
ActivityLotteryDTO
activityLotteryDTO
,
Channel
channel
)
{
log
.
info
(
"抽奖消息的数据【{}】"
,
activityLotteryDTO
);
log
.
info
(
"抽奖消息的数据【{}】"
,
activityLotteryDTO
);
try
{
try
{
if
(
activityLotteryDTO
.
getHasWinning
()
==
1
)
{
if
(
activityLotteryDTO
.
getHasWinning
()
==
1
)
{
//更新库存
//更新库存
log
.
info
(
"更新库存:参数【prizeType:{}==serialNumber:{}】"
,
activityLotteryDTO
.
getPrizeType
(),
activityLotteryDTO
.
getSerialNumber
());
log
.
info
(
"更新库存:参数【prizeType:{}==serialNumber:{}】"
,
activityLotteryDTO
.
getPrizeType
(),
activityLotteryDTO
.
getSerialNumber
());
activityPrizeBiz
.
updatePrizeStock
(
activityLotteryDTO
.
getPrizeType
(),
activityLotteryDTO
.
getSerialNumber
());
activityPrizeBiz
.
updatePrizeStock
(
activityLotteryDTO
.
getPrizeType
(),
activityLotteryDTO
.
getSerialNumber
());
//发放优惠券
//发放优惠券
if
(
activityLotteryDTO
.
getPrizeGoodsType
()
==
PrizeGoodsTypeEnum
.
COUPON
.
getCode
())
{
if
(
activityLotteryDTO
.
getPrizeGoodsType
()
==
PrizeGoodsTypeEnum
.
COUPON
.
getCode
())
{
...
@@ -58,33 +58,33 @@ public class ActivityPrizeMqHandler {
...
@@ -58,33 +58,33 @@ public class ActivityPrizeMqHandler {
userCouponSendDTO
.
setCouponId
(
activityLotteryDTO
.
getGoodsId
());
userCouponSendDTO
.
setCouponId
(
activityLotteryDTO
.
getGoodsId
());
userCouponSendDTO
.
setCouponNum
(
1
);
userCouponSendDTO
.
setCouponNum
(
1
);
userCouponSendDTO
.
setPhone
(
activityLotteryDTO
.
getPhone
());
userCouponSendDTO
.
setPhone
(
activityLotteryDTO
.
getPhone
());
log
.
info
(
"抽中优惠券发送:【参数:{}】"
,
userCouponSendDTO
);
log
.
info
(
"抽中优惠券发送:【参数:{}】"
,
userCouponSendDTO
);
userCouponBiz
.
sendCoupon
(
userCouponSendDTO
);
userCouponBiz
.
sendCoupon
(
userCouponSendDTO
);
}
}
}
}
ActivityWinningRecord
activityWinningRecord
=
new
ActivityWinningRecord
();
ActivityWinningRecord
activityWinningRecord
=
new
ActivityWinningRecord
();
BeanUtils
.
copyProperties
(
activityLotteryDTO
,
activityWinningRecord
);
BeanUtils
.
copyProperties
(
activityLotteryDTO
,
activityWinningRecord
);
activityWinningRecord
.
setCrtTime
(
new
Date
());
activityWinningRecord
.
setCrtTime
(
new
Date
());
log
.
info
(
"抽奖记录【{}】"
,
activityWinningRecord
);
log
.
info
(
"抽奖记录【{}】"
,
activityWinningRecord
);
activityWinningRecordBiz
.
saveRecord
(
activityWinningRecord
);
activityWinningRecordBiz
.
saveRecord
(
activityWinningRecord
);
//更改对应抽奖类型的抽奖次数
//更改对应抽奖类型的抽奖次数
log
.
info
(
"更改对应抽奖类型的抽奖次数【activityId:{}==userId:{}==prizeType:{}】"
,
activityLotteryDTO
.
getActivityId
(),
activityLotteryDTO
.
getUserId
(),
activityLotteryDTO
.
getPrizeType
());
log
.
info
(
"更改对应抽奖类型的抽奖次数【activityId:{}==userId:{}==prizeType:{}】"
,
activityLotteryDTO
.
getActivityId
(),
activityLotteryDTO
.
getUserId
(),
activityLotteryDTO
.
getPrizeType
());
activityAttendanceRecordBiz
.
updateLotteryNumByActivityIdAndUserIdAndPrizeType
(
activityLotteryDTO
.
getActivityId
(),
activityLotteryDTO
.
getUserId
(),
activityLotteryDTO
.
getPrizeType
());
activityAttendanceRecordBiz
.
updateLotteryNumByActivityIdAndUserIdAndPrizeType
(
activityLotteryDTO
.
getActivityId
(),
activityLotteryDTO
.
getUserId
(),
activityLotteryDTO
.
getPrizeType
());
}
catch
(
Exception
ex
)
{
}
catch
(
Exception
ex
)
{
log
.
error
(
"抽奖消息消费失败【{}】"
,
ex
);
log
.
error
(
"抽奖消息消费失败【{}】"
,
ex
);
try
{
try
{
Long
reConsumeCounter
=
valueOperations
.
increment
(
R_CONSUME
);
Long
reConsumeCounter
=
valueOperations
.
increment
(
R_CONSUME
);
if
(
reConsumeCounter
<=
R_CONSUME_MAX_NUM
)
{
if
(
reConsumeCounter
<=
R_CONSUME_MAX_NUM
)
{
channel
.
basicRecover
(
false
);
channel
.
basicRecover
(
false
);
log
.
info
(
"抽奖消息重回队列成功"
);
log
.
info
(
"抽奖消息重回队列成功"
);
}
}
if
(
reConsumeCounter
==
1
)
{
if
(
reConsumeCounter
==
1
)
{
redisTemplate
.
expire
(
R_CONSUME
,
1
,
TimeUnit
.
DAYS
);
redisTemplate
.
expire
(
R_CONSUME
,
1
,
TimeUnit
.
DAYS
);
}
}
}
catch
(
IOException
e
)
{
}
catch
(
IOException
e
)
{
log
.
error
(
"消费抽奖消息重回队列失败【{}】"
,
e
);
log
.
error
(
"消费抽奖消息重回队列失败【{}】"
,
e
);
}
}
}
}
}
}
}
}
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/rest/ActivityWinningRecordController.java
View file @
64eaa146
package
com
.
xxfc
.
platform
.
activity
.
rest
;
package
com
.
xxfc
.
platform
.
activity
.
rest
;
import
com.xxfc.platform.activity.biz.ActivityAttendanceRecordBiz
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.activity.biz.ActivityWinningRecordBiz
;
import
com.xxfc.platform.activity.vo.ActivityWinningRecordVo
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
...
@@ -17,6 +21,13 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -17,6 +21,13 @@ import org.springframework.web.bind.annotation.RestController;
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
ActivityWinningRecordController
{
public
class
ActivityWinningRecordController
{
private
final
ActivityAttendanceRecordBiz
activityAttendanceRecordBiz
;
private
final
ActivityWinningRecordBiz
activityWinningRecordBiz
;
@GetMapping
(
"/{id}"
)
public
ObjectRestResponse
<
ActivityWinningRecordVo
>
findActivityAttendanceRecordById
(
@PathVariable
(
value
=
"id"
)
Long
id
){
ActivityWinningRecordVo
activityWinningRecordVo
=
activityWinningRecordBiz
.
findActivityAttendanceRecordById
(
id
);
return
ObjectRestResponse
.
succ
(
activityWinningRecordVo
);
}
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment