Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
xunj
/
festival-activites
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 8a62f969
authored
Jan 28, 2021
by
xunj
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
红包雨-抢红包
1 parent
4552338f
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
271 additions
and
20 deletions
activity-admin/src/main/java/com/polysoft/activity/controller/RedPackageController.java
activity-admin/src/main/java/com/polysoft/activity/mapper/ActivityMapper.java
activity-admin/src/main/java/com/polysoft/activity/model/dto/ActItemDto.java
activity-admin/src/main/java/com/polysoft/activity/model/dto/AddRedRainDto.java
activity-admin/src/main/java/com/polysoft/activity/model/param/AddRedRainParam.java
activity-admin/src/main/java/com/polysoft/activity/model/vo/ActItemVO.java
activity-admin/src/main/java/com/polysoft/activity/service/ActItemService.java
activity-admin/src/main/java/com/polysoft/activity/service/impl/ActItemServiceImpl.java
activity-admin/src/main/java/com/polysoft/activity/service/impl/WishServiceImpl.java
activity-admin/src/main/java/com/polysoft/activity/task/EpidemicForSendWechat.java → activity-admin/src/main/java/com/polysoft/activity/task/InitRedPackageTask.java
activity-admin/src/main/resources/application-dev.yml
activity-admin/src/main/resources/application-prod.yml
activity-admin/src/main/resources/mapper/ActivityMapper.xml
activity-admin/src/main/java/com/polysoft/activity/controller/RedPackageController.java
0 → 100644
View file @
8a62f96
package
com
.
polysoft
.
activity
.
controller
;
import
com.polysoft.activity.model.param.AddRedRainParam
;
import
com.polysoft.activity.service.ActItemService
;
import
com.polysoft.activity.utils.ApiResult
;
import
io.swagger.annotations.Api
;
import
org.springframework.web.bind.annotation.GetMapping
;
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.ResponseBody
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
@RestController
@RequestMapping
(
"/red/rain"
)
@Api
(
value
=
"心愿"
,
description
=
"心愿接口"
)
public
class
RedPackageController
{
@Resource
private
ActItemService
actItemService
;
@PostMapping
(
"/saveRedRain"
)
@ResponseBody
public
ApiResult
saveRedRain
(
@RequestBody
AddRedRainParam
param
)
{
return
actItemService
.
saveRedRain
(
param
);
}
@GetMapping
(
"/queryActivityInfo"
)
@ResponseBody
public
ApiResult
queryActivityInfo
()
{
return
actItemService
.
queryActivityInfo
();
}
}
activity-admin/src/main/java/com/polysoft/activity/mapper/ActivityMapper.java
0 → 100644
View file @
8a62f96
package
com
.
polysoft
.
activity
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.polysoft.activity.model.dto.ActItemDto
;
import
com.polysoft.activity.model.dto.AddRedRainDto
;
import
com.polysoft.activity.model.vo.ActItemVO
;
import
org.apache.ibatis.annotations.Param
;
import
org.mapstruct.Mapper
;
import
java.util.List
;
/**
* @author lvyp
* @date 2021/1/28
*/
@Mapper
public
interface
ActivityMapper
extends
BaseMapper
<
ActItemDto
>
{
List
<
ActItemVO
>
queryActivityInfo
();
int
updateActStatus
(
@Param
(
"id"
)
Long
id
,
@Param
(
"status"
)
int
status
);
int
saveRedRain
(
@Param
(
"list"
)
List
<
AddRedRainDto
>
list
);
}
activity-admin/src/main/java/com/polysoft/activity/model/dto/ActItemDto.java
0 → 100644
View file @
8a62f96
package
com
.
polysoft
.
activity
.
model
.
dto
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.Data
;
/**
* @author lvyp
* @date 2021/1/28
*/
@Data
@TableName
(
value
=
"act_item"
)
public
class
ActItemDto
{
private
Long
id
;
private
String
activityName
;
private
String
startTime
;
private
String
emdTime
;
private
int
activityStatus
;
}
activity-admin/src/main/java/com/polysoft/activity/model/dto/AddRedRainDto.java
0 → 100644
View file @
8a62f96
package
com
.
polysoft
.
activity
.
model
.
dto
;
import
cn.hutool.core.date.DateUtil
;
import
lombok.Data
;
import
java.util.Date
;
/**
* @author lvyp
* @date 2021/1/28
*/
@Data
public
class
AddRedRainDto
{
private
Long
redId
;
//用户主键
private
Long
userId
;
//红包金额
private
String
redAmount
;
//红包类型 0 普通红包 1 牛牌
private
Long
redType
;
//牛牌主键
private
Long
cattleBrandId
;
private
String
createTime
;
//0 未结算 1 已结算
private
int
isEnble
;
public
void
setCreateTime
(
Date
date
)
{
this
.
createTime
=
DateUtil
.
format
(
date
,
"yyyy-MM-dd HH:mm:ss"
);
}
}
activity-admin/src/main/java/com/polysoft/activity/model/param/AddRedRainParam.java
0 → 100644
View file @
8a62f96
package
com
.
polysoft
.
activity
.
model
.
param
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.Data
;
/**
* @author lvyp
* @date 2021/1/28
*/
@Data
public
class
AddRedRainParam
{
private
Long
userId
;
private
int
redNum
;
}
activity-admin/src/main/java/com/polysoft/activity/model/vo/ActItemVO.java
0 → 100644
View file @
8a62f96
package
com
.
polysoft
.
activity
.
model
.
vo
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.Data
;
/**
* @author lvyp
* @date 2021/1/28
*/
@Data
public
class
ActItemVO
{
private
Long
id
;
private
String
activityName
;
private
String
startTime
;
private
String
emdTime
;
private
int
activityStatus
;
}
activity-admin/src/main/java/com/polysoft/activity/service/ActItemService.java
0 → 100644
View file @
8a62f96
package
com
.
polysoft
.
activity
.
service
;
import
com.polysoft.activity.model.param.AddRedRainParam
;
import
com.polysoft.activity.model.vo.ActItemVO
;
import
com.polysoft.activity.utils.ApiResult
;
/**
* @author lvyp
* @date 2021/1/28
*/
public
interface
ActItemService
{
ApiResult
queryActivityInfo
();
ApiResult
saveRedRain
(
AddRedRainParam
param
);
}
activity-admin/src/main/java/com/polysoft/activity/service/impl/ActItemServiceImpl.java
0 → 100644
View file @
8a62f96
package
com
.
polysoft
.
activity
.
service
.
impl
;
import
cn.hutool.core.date.DateUtil
;
import
com.polysoft.activity.mapper.ActivityMapper
;
import
com.polysoft.activity.model.dto.AddRedRainDto
;
import
com.polysoft.activity.model.param.AddRedRainParam
;
import
com.polysoft.activity.model.vo.ActItemVO
;
import
com.polysoft.activity.service.ActItemService
;
import
com.polysoft.activity.utils.ApiResult
;
import
com.polysoft.activity.utils.SnowFlakeUtil
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author lvyp
* @date 2021/1/28
*/
@Service
public
class
ActItemServiceImpl
implements
ActItemService
{
@Resource
private
ActivityMapper
activityMapper
;
@Override
public
ApiResult
queryActivityInfo
()
{
List
<
ActItemVO
>
list
=
activityMapper
.
queryActivityInfo
();
for
(
ActItemVO
item
:
list
)
{
if
(
item
.
getActivityStatus
()
!=
3
)
{
Long
startTime
=
DateUtil
.
parse
(
item
.
getStartTime
(),
"yyyy-MM-dd HH:mm:ss"
).
getTime
()
/
1000
;
Long
endTime
=
DateUtil
.
parse
(
item
.
getEmdTime
(),
"yyyy-MM-dd HH:mm:ss"
).
getTime
()
/
1000
;
Long
cuttentTime
=
System
.
currentTimeMillis
()
/
1000
;
if
(
cuttentTime
>
startTime
&&
cuttentTime
<
endTime
)
{
//正在进行
activityMapper
.
updateActStatus
(
item
.
getId
(),
1
);
item
.
setActivityStatus
(
1
);
}
if
(
cuttentTime
<
startTime
&&
(
startTime
-
cuttentTime
)
<
30
){
//即将开始
activityMapper
.
updateActStatus
(
item
.
getId
(),
2
);
item
.
setActivityStatus
(
2
);
}
if
(
cuttentTime
>
endTime
)
{
//已结束
activityMapper
.
updateActStatus
(
item
.
getId
(),
3
);
item
.
setActivityStatus
(
3
);
}
}
}
return
ApiResult
.
ok
(
list
);
}
@Override
public
ApiResult
saveRedRain
(
AddRedRainParam
param
)
{
Date
date
=
new
Date
();
List
<
AddRedRainDto
>
list
=
new
ArrayList
<>();
if
(
param
.
getRedNum
()
>
0
)
{
for
(
int
i
=
0
;
i
<
param
.
getRedNum
();
i
++)
{
AddRedRainDto
dto
=
new
AddRedRainDto
();
dto
.
setRedId
(
SnowFlakeUtil
.
nextId
());
dto
.
setUserId
(
param
.
getUserId
());
dto
.
setCreateTime
(
date
);
list
.
add
(
dto
);
}
activityMapper
.
saveRedRain
(
list
);
}
return
ApiResult
.
ok
();
}
}
activity-admin/src/main/java/com/polysoft/activity/service/impl/WishServiceImpl.java
View file @
8a62f96
...
@@ -39,8 +39,8 @@ public class WishServiceImpl implements WishService {
...
@@ -39,8 +39,8 @@ public class WishServiceImpl implements WishService {
private
WishPicMapper
wishPicMapper
;
private
WishPicMapper
wishPicMapper
;
@Value
(
"${fileUpload.saveWishPicPath}"
)
@Value
(
"${fileUpload.saveWishPicPath}"
)
private
String
saveWishPicPath
;
private
String
saveWishPicPath
;
@Value
(
"${fileUpload.cllWishPicUrl}"
)
@Value
(
"${fileUpload.c
a
llWishPicUrl}"
)
private
String
cllWishPicUrl
;
private
String
c
a
llWishPicUrl
;
@Override
@Override
public
ApiResult
addWish
(
AddWishParam
param
)
{
public
ApiResult
addWish
(
AddWishParam
param
)
{
...
@@ -52,7 +52,7 @@ public class WishServiceImpl implements WishService {
...
@@ -52,7 +52,7 @@ public class WishServiceImpl implements WishService {
wishPicDto
.
setPicId
(
SnowFlakeUtil
.
nextId
());
wishPicDto
.
setPicId
(
SnowFlakeUtil
.
nextId
());
wishPicDto
.
setWishId
(
wishId
);
wishPicDto
.
setWishId
(
wishId
);
wishPicDto
.
setCreateTime
(
new
Date
());
wishPicDto
.
setCreateTime
(
new
Date
());
wishPicDto
.
setPicUrl
(
cllWishPicUrl
+
result
.
get
(
"data"
).
toString
());
wishPicDto
.
setPicUrl
(
c
a
llWishPicUrl
+
result
.
get
(
"data"
).
toString
());
wishPicMapper
.
insert
(
wishPicDto
);
wishPicMapper
.
insert
(
wishPicDto
);
}
}
dto
.
setWishId
(
wishId
);
dto
.
setWishId
(
wishId
);
...
...
activity-admin/src/main/java/com/polysoft/activity/task/
EpidemicForSendWechat
.java
→
activity-admin/src/main/java/com/polysoft/activity/task/
InitRedPackageTask
.java
View file @
8a62f96
...
@@ -2,6 +2,7 @@ package com.polysoft.activity.task;
...
@@ -2,6 +2,7 @@ package com.polysoft.activity.task;
import
com.polysoft.activity.common.log.LoggerHelper
;
import
com.polysoft.activity.common.log.LoggerHelper
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.scheduling.annotation.EnableScheduling
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
...
@@ -11,25 +12,17 @@ import org.springframework.stereotype.Component;
...
@@ -11,25 +12,17 @@ import org.springframework.stereotype.Component;
* @date 2021/1/21
* @date 2021/1/21
*/
*/
@Component
@Component
public
class
EpidemicForSendWechat
{
@EnableScheduling
@Value
(
"${spring.profiles.active}"
)
public
class
InitRedPackageTask
{
private
String
profile
;
@Scheduled
(
initialDelay
=
10000
,
fixedRate
=
1
*
15
*
60
*
1000
)
//
@Scheduled(initialDelay = 10000, fixedRate = 1*15*60*1000)
public
void
execute
()
{
public
void
execute
()
{
try
{
if
(!
"prod"
.
equals
(
profile
))
{
return
;
}
Thread
.
sleep
(
10000
);
sendWechat
();
sendWechat
();
}
catch
(
InterruptedException
e
)
{
LoggerHelper
.
err
(
this
.
getClass
(),
"EpidemicForSendWechatp休眠异常:{}"
,
e
);
}
}
}
private
void
sendWechat
(){
private
void
sendWechat
(){
//查询疫情回访数据基础表
//查询出没有初始化的红包
System
.
out
.
println
(
"任务开始"
);
}
}
}
}
activity-admin/src/main/resources/application-dev.yml
View file @
8a62f96
...
@@ -68,6 +68,6 @@ wechat:
...
@@ -68,6 +68,6 @@ wechat:
accessTokenUrl
:
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&
accessTokenUrl
:
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&
jsapiTicketUrl
:
https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&
jsapiTicketUrl
:
https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&
fileUpload
:
fileUpload
:
w
ishPicUrl
:
http://quality.item.polyhome.net/spfest/images
callW
ishPicUrl
:
http://quality.item.polyhome.net/spfest/images
wishPicUrl
:
E:/spring_festvial/images
saveWishPicPath
:
E:/spring_festvial/images
activity-admin/src/main/resources/application-prod.yml
View file @
8a62f96
...
@@ -69,4 +69,4 @@ wechat:
...
@@ -69,4 +69,4 @@ wechat:
jsapiTicketUrl
:
https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&
jsapiTicketUrl
:
https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&
fileUpload
:
fileUpload
:
saveWishPicPath
:
/home/spring_fistival/images
saveWishPicPath
:
/home/spring_fistival/images
cllWishPicUrl
:
http://quality.item.polyhome.net/spfest/images
c
a
llWishPicUrl
:
http://quality.item.polyhome.net/spfest/images
activity-admin/src/main/resources/mapper/ActivityMapper.xml
0 → 100644
View file @
8a62f96
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.polysoft.activity.mapper.ActivityMapper"
>
<insert
id=
"saveRedRain"
parameterType=
"list"
>
INSERT into t_red_rain (
red_id,
user_id,
create_time
)VALUES
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator =
","
>
(
#{item.redId},
#{item.userId},
#{item.createTime}
)
</foreach>
</insert>
<update
id=
"updateActStatus"
>
update act_item
set activity_status=#{status}
where id =#{id}
</update>
<select
id=
"queryActivityInfo"
resultType=
"com.polysoft.activity.model.vo.ActItemVO"
>
SELECT
id,
activity_name,
start_time,
emd_time,
activity_status
FROM
act_item ORDER by id asc
</select>
</mapper>
Write
Preview
Markdown
is supported
Attach a file
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 post a comment