Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Q
qk_backend
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
quanku
qk_backend
Commits
e1354efb
Commit
e1354efb
authored
Dec 24, 2024
by
shiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
登录2
parent
6522ef48
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
368 additions
and
21 deletions
+368
-21
ch-dao/src/main/java/com/wwdz/ch/db/dao/qiandao/QdGiveLikeRecordDao.java
.../java/com/wwdz/ch/db/dao/qiandao/QdGiveLikeRecordDao.java
+2
-0
ch-dao/src/main/java/com/wwdz/ch/db/dao/qiandao/QdUserSignInDao.java
...main/java/com/wwdz/ch/db/dao/qiandao/QdUserSignInDao.java
+7
-7
ch-dao/src/main/java/com/wwdz/ch/db/dao/qiandao/SignInTaskDao.java
...c/main/java/com/wwdz/ch/db/dao/qiandao/SignInTaskDao.java
+2
-0
ch-dao/src/main/java/com/wwdz/ch/db/dto/request/qiandao/QdUserSignInRequestDto.java
...wdz/ch/db/dto/request/qiandao/QdUserSignInRequestDto.java
+43
-0
ch-dao/src/main/java/com/wwdz/ch/db/impl/qiandao/QdGiveLikeRecordDaoImpl.java
.../com/wwdz/ch/db/impl/qiandao/QdGiveLikeRecordDaoImpl.java
+12
-1
ch-dao/src/main/java/com/wwdz/ch/db/impl/qiandao/QdUserSignInDaoImpl.java
...java/com/wwdz/ch/db/impl/qiandao/QdUserSignInDaoImpl.java
+16
-8
ch-dao/src/main/java/com/wwdz/ch/db/impl/qiandao/SignInTaskDaoImpl.java
...n/java/com/wwdz/ch/db/impl/qiandao/SignInTaskDaoImpl.java
+4
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/config/WebMvcConfiguration.java
.../main/java/com/wwdz/ch/wx/config/WebMvcConfiguration.java
+1
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdGiveLikeRecordServiceImpl.java
.../wwdz/ch/wx/impl/qiandao/QdGiveLikeRecordServiceImpl.java
+1
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdHomePageServiceImpl.java
...va/com/wwdz/ch/wx/impl/qiandao/QdHomePageServiceImpl.java
+2
-2
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdUserSignInServiceImpl.java
.../com/wwdz/ch/wx/impl/qiandao/QdUserSignInServiceImpl.java
+186
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/qiandao/QdHomePageService.java
...ava/com/wwdz/ch/wx/service/qiandao/QdHomePageService.java
+2
-2
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/qiandao/QdUserSignInNoteService.java
...m/wwdz/ch/wx/service/qiandao/QdUserSignInNoteService.java
+6
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/qiandao/QdUserSignInService.java
...a/com/wwdz/ch/wx/service/qiandao/QdUserSignInService.java
+23
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/qiandao/QdUserSignInController.java
...va/com/wwdz/ch/wx/web/qiandao/QdUserSignInController.java
+61
-0
No files found.
ch-dao/src/main/java/com/wwdz/ch/db/dao/qiandao/QdGiveLikeRecordDao.java
View file @
e1354efb
...
...
@@ -10,4 +10,6 @@ public interface QdGiveLikeRecordDao {
long
countByNoteId
(
long
noteId
);
boolean
cancel
(
long
userId
,
long
noteId
);
boolean
isExisted
(
long
userId
,
long
noteId
);
}
ch-dao/src/main/java/com/wwdz/ch/db/dao/qiandao/QdUserSignInDao.java
View file @
e1354efb
...
...
@@ -8,9 +8,9 @@ import java.util.List;
public
interface
QdUserSignInDao
{
boolean
insert
(
QdUserSignIn
qdUserSignIn
);
Long
insert
(
QdUserSignIn
qdUserSignIn
);
QdUserSignIn
findLastedRecord
(
long
userId
);
QdUserSignIn
findLastedRecord
(
long
userId
,
Long
taskId
);
List
<
QdUserSignIn
>
findList
(
QdUserSignInRequestDto
dto
);
...
...
@@ -19,9 +19,9 @@ public interface QdUserSignInDao {
* @param userId
* @return
*/
QdUserSignIn
findYesterdayRecord
(
long
userId
);
QdUserSignIn
findYesterdayRecord
(
long
userId
,
Long
taskId
);
QdUserSignIn
findTodayRecord
(
long
userId
);
QdUserSignIn
findTodayRecord
(
long
userId
,
Long
taskId
);
/**
* 判断某一日期是否签到过
...
...
@@ -29,16 +29,16 @@ public interface QdUserSignInDao {
* @param date
* @return
*/
boolean
isExisted
(
long
userId
,
String
date
);
boolean
isExisted
(
long
userId
,
String
date
,
Long
taskId
);
QdUserSignIn
findRecord
(
long
userId
,
String
date
,
Integer
consecutiveDays
);
QdUserSignIn
findRecord
(
long
userId
,
String
date
,
Integer
consecutiveDays
,
Long
taskId
);
boolean
update
(
QdUserSignIn
userSignin
);
boolean
updateByPrimaryKey
(
QdUserSignIn
userSignin
);
boolean
deleteTodayRecord
(
long
userId
);
boolean
deleteTodayRecord
(
long
userId
,
Long
taskId
);
boolean
updateInvalid
(
QdUserSignInRequestDto
dto
);
...
...
ch-dao/src/main/java/com/wwdz/ch/db/dao/qiandao/SignInTaskDao.java
View file @
e1354efb
...
...
@@ -10,4 +10,6 @@ public interface SignInTaskDao {
boolean
insert
(
SignInTask
signInTask
);
List
<
SignInTask
>
findByPage
(
SignInTaskRequestDto
dto
);
SignInTask
findById
(
long
taskId
);
}
ch-dao/src/main/java/com/wwdz/ch/db/dto/request/qiandao/QdUserSignInRequestDto.java
View file @
e1354efb
...
...
@@ -5,6 +5,7 @@ import com.xxdxxs.entity.Entity;
import
lombok.Data
;
import
java.util.Date
;
import
java.util.List
;
@Data
public
class
QdUserSignInRequestDto
extends
BaseRequestDto
implements
Entity
{
...
...
@@ -68,4 +69,46 @@ public class QdUserSignInRequestDto extends BaseRequestDto implements Entity {
* 是否有效
*/
private
Boolean
isValid
;
/**
* 是否公开
*/
private
Boolean
isPrivate
;
private
String
title
;
/**
* 文字内容
*/
private
String
content
;
/**
* 图片
*/
private
List
<
String
>
images
;
/**
* 音频
*/
private
String
audio
;
private
String
userOpenId
;
/**
* 收件人名称
*/
private
String
receiverName
;
/**
* 收件人电话
*/
private
String
receiverPhone
;
/**
* 收件人收货地址
*/
private
String
receiverAddress
;
}
ch-dao/src/main/java/com/wwdz/ch/db/impl/qiandao/QdGiveLikeRecordDaoImpl.java
View file @
e1354efb
...
...
@@ -38,6 +38,17 @@ public class QdGiveLikeRecordDaoImpl implements QdGiveLikeRecordDao {
QdGiveLikeRecord
qdGiveLikeRecord
=
new
QdGiveLikeRecord
();
qdGiveLikeRecord
.
setIsValid
(
false
);
qdGiveLikeRecord
.
setUpdateTime
(
new
Date
());
return
qdGiveLikeRecordMapper
.
updateByExampleSelective
(
qdGiveLikeRecord
,
example
)
>
0
;
return
qdGiveLikeRecordMapper
.
updateByExampleSelective
(
qdGiveLikeRecord
,
example
)
>
0
;
}
@Override
public
boolean
isExisted
(
long
userId
,
long
noteId
)
{
QdGiveLikeRecordExample
example
=
new
QdGiveLikeRecordExample
();
QdGiveLikeRecordExample
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andUserIdEqualTo
(
userId
);
criteria
.
andNoteIdEqualTo
(
noteId
);
criteria
.
andIsValidEqualTo
(
true
);
return
qdGiveLikeRecordMapper
.
countByExample
(
example
)
>
0
;
}
}
ch-dao/src/main/java/com/wwdz/ch/db/impl/qiandao/QdUserSignInDaoImpl.java
View file @
e1354efb
...
...
@@ -8,6 +8,7 @@ import com.wwdz.ch.db.mapper.qiandao.QdUserSignInMapper;
import
com.xxdxxs.db.component.JdbcHelper
;
import
com.xxdxxs.utils.DateUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.autoconfigure.quartz.QuartzProperties
;
import
org.springframework.stereotype.Repository
;
import
java.time.LocalDate
;
import
java.util.List
;
...
...
@@ -19,16 +20,18 @@ public class QdUserSignInDaoImpl implements QdUserSignInDao {
QdUserSignInMapper
qdUserSignInMapper
;
@Override
public
boolean
insert
(
QdUserSignIn
qdQdUserSignIn
)
{
public
Long
insert
(
QdUserSignIn
qdQdUserSignIn
)
{
qdQdUserSignIn
.
setIsValid
(
true
);
return
qdUserSignInMapper
.
insert
(
qdQdUserSignIn
)
>
0
;
qdUserSignInMapper
.
insert
(
qdQdUserSignIn
);
return
qdQdUserSignIn
.
getId
();
}
@Override
public
QdUserSignIn
findLastedRecord
(
long
userId
)
{
public
QdUserSignIn
findLastedRecord
(
long
userId
,
Long
taskId
)
{
QdUserSignInExample
example
=
new
QdUserSignInExample
();
QdUserSignInExample
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andUserIdEqualTo
(
userId
);
JdbcHelper
.
ifPresent
(
taskId
,
criteria
::
andTaskIdEqualTo
);
criteria
.
andIsValidEqualTo
(
true
);
example
.
setOrderByClause
(
"create_time desc"
);
return
qdUserSignInMapper
.
selectOneByExample
(
example
);
...
...
@@ -47,34 +50,37 @@ public class QdUserSignInDaoImpl implements QdUserSignInDao {
}
@Override
public
QdUserSignIn
findYesterdayRecord
(
long
userId
)
{
public
QdUserSignIn
findYesterdayRecord
(
long
userId
,
Long
taskId
)
{
LocalDate
yesterday
=
LocalDate
.
now
().
minusDays
(
1
);
String
yesterdayString
=
DateUtils
.
DATE
.
format
(
yesterday
);
QdUserSignInExample
example
=
new
QdUserSignInExample
();
QdUserSignInExample
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andUserIdEqualTo
(
userId
);
JdbcHelper
.
ifPresent
(
taskId
,
criteria
::
andTaskIdEqualTo
);
criteria
.
andSignInDateEqualTo
(
yesterdayString
);
criteria
.
andIsValidEqualTo
(
true
);
return
qdUserSignInMapper
.
selectOneByExample
(
example
);
}
@Override
public
QdUserSignIn
findTodayRecord
(
long
userId
)
{
public
QdUserSignIn
findTodayRecord
(
long
userId
,
Long
taskId
)
{
LocalDate
today
=
LocalDate
.
now
();
String
todayString
=
DateUtils
.
DATE
.
format
(
today
);
QdUserSignInExample
example
=
new
QdUserSignInExample
();
QdUserSignInExample
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andUserIdEqualTo
(
userId
);
JdbcHelper
.
ifPresent
(
taskId
,
criteria
::
andTaskIdEqualTo
);
criteria
.
andSignInDateEqualTo
(
todayString
);
criteria
.
andIsValidEqualTo
(
true
);
return
qdUserSignInMapper
.
selectOneByExample
(
example
);
}
@Override
public
boolean
isExisted
(
long
userId
,
String
date
)
{
public
boolean
isExisted
(
long
userId
,
String
date
,
Long
taskId
)
{
QdUserSignInExample
example
=
new
QdUserSignInExample
();
QdUserSignInExample
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andUserIdEqualTo
(
userId
);
JdbcHelper
.
ifPresent
(
taskId
,
criteria
::
andTaskIdEqualTo
);
criteria
.
andSignInDateEqualTo
(
date
);
criteria
.
andIsValidEqualTo
(
true
);
return
qdUserSignInMapper
.
countByExample
(
example
)
>
0
;
...
...
@@ -82,10 +88,11 @@ public class QdUserSignInDaoImpl implements QdUserSignInDao {
@Override
public
QdUserSignIn
findRecord
(
long
userId
,
String
date
,
Integer
consecutiveDays
)
{
public
QdUserSignIn
findRecord
(
long
userId
,
String
date
,
Integer
consecutiveDays
,
Long
taskId
)
{
QdUserSignInExample
example
=
new
QdUserSignInExample
();
QdUserSignInExample
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andUserIdEqualTo
(
userId
);
JdbcHelper
.
ifPresent
(
taskId
,
criteria
::
andTaskIdEqualTo
);
criteria
.
andSignInDateEqualTo
(
date
);
JdbcHelper
.
ifPresent
(
consecutiveDays
,
criteria:
:
andConsecutiveDaysEqualTo
);
criteria
.
andIsValidEqualTo
(
true
);
...
...
@@ -110,12 +117,13 @@ public class QdUserSignInDaoImpl implements QdUserSignInDao {
@Override
public
boolean
deleteTodayRecord
(
long
userId
)
{
public
boolean
deleteTodayRecord
(
long
userId
,
Long
taskId
)
{
LocalDate
today
=
LocalDate
.
now
();
String
todayString
=
DateUtils
.
DATE
.
format
(
today
);
QdUserSignInExample
example
=
new
QdUserSignInExample
();
QdUserSignInExample
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andUserIdEqualTo
(
userId
);
JdbcHelper
.
ifPresent
(
taskId
,
criteria
::
andTaskIdEqualTo
);
criteria
.
andSignInDateEqualTo
(
todayString
);
return
qdUserSignInMapper
.
deleteByExample
(
example
)
>
0
;
}
...
...
ch-dao/src/main/java/com/wwdz/ch/db/impl/qiandao/SignInTaskDaoImpl.java
View file @
e1354efb
...
...
@@ -39,4 +39,8 @@ public class SignInTaskDaoImpl implements SignInTaskDao {
}
@Override
public
SignInTask
findById
(
long
taskId
)
{
return
signInTaskMapper
.
selectByPrimaryKey
(
taskId
);
}
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/config/WebMvcConfiguration.java
View file @
e1354efb
...
...
@@ -39,7 +39,7 @@ public class WebMvcConfiguration implements WebMvcConfigurer {
registry
.
addInterceptor
(
loginInterceptor
())
.
addPathPatterns
(
"/**"
)
// 放行路径
.
excludePathPatterns
(
"/*.html"
,
"/**/*.html"
,
"/**/*.css"
,
"/**/*.js"
.
excludePathPatterns
(
"/*.html"
,
"/**/*.html"
,
"/**/*.css"
,
"/**/*.js"
,
"/wx/qdUser/login"
,
"/wx/user/loginByWx"
,
"/wx/user/finishLogin"
,
"/wx/user/loginByMobile"
,
"/wx/user/loginRegCaptcha"
,
"/wx/user/updateRegCaptcha"
,
"/wx/user/login"
,
"/wx/user/fillCode"
,
"/officialAccountCallback/**"
,
"/wxPayCallback/**"
,
"/imCallback/**"
,
"/wx/category/**"
,
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdGiveLikeRecordServiceImpl.java
View file @
e1354efb
...
...
@@ -25,6 +25,7 @@ public class QdGiveLikeRecordServiceImpl implements QdGiveLikeRecordService {
@Autowired
QdUserSignInNoteDao
qdUserSignInNoteDao
;
@Override
public
Result
giveLike
(
QdGiveLikeRecordRequestDto
dto
)
{
try
{
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdHomePageServiceImpl.java
View file @
e1354efb
...
...
@@ -30,13 +30,13 @@ public class QdHomePageServiceImpl implements QdHomePageService {
SignInTaskDao
signInTaskDao
;
@Override
public
Result
find
HomePage
(
QdHomePageRequestDto
dto
)
{
public
Result
find
UserInfo
(
QdHomePageRequestDto
dto
)
{
try
{
return
Result
.
success
();
}
catch
(
Exception
e
)
{
logger
.
error
(
"查询乾岛首页信息失败 error:{}"
,
e
);
logger
.
error
(
"查询乾岛首页
用户
信息失败 error:{}"
,
e
);
}
return
Result
.
failed
();
}
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdUserSignInServiceImpl.java
0 → 100644
View file @
e1354efb
package
com.wwdz.ch.wx.impl.qiandao
;
import
com.wwdz.ch.core.api.wxpay.WxPayServiceApi
;
import
com.wwdz.ch.core.consts.CommConsts
;
import
com.wwdz.ch.core.consts.DistributionEnum
;
import
com.wwdz.ch.core.consts.SigninEnum
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.util.IdUtils
;
import
com.wwdz.ch.db.dao.distribution.DistributionOrderDao
;
import
com.wwdz.ch.db.dao.qiandao.QdUserSignInDao
;
import
com.wwdz.ch.db.dao.qiandao.QdUserSignInNoteDao
;
import
com.wwdz.ch.db.dao.qiandao.SignInTaskDao
;
import
com.wwdz.ch.db.domain.UserSignIn
;
import
com.wwdz.ch.db.domain.distribution.DistributionOrder
;
import
com.wwdz.ch.db.domain.qiandao.QdUserSignIn
;
import
com.wwdz.ch.db.domain.qiandao.QdUserSignInNote
;
import
com.wwdz.ch.db.domain.qiandao.SignInTask
;
import
com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto
;
import
com.wwdz.ch.db.dto.request.qiandao.QdUserSignInRequestDto
;
import
com.wwdz.ch.wx.service.qiandao.QdUserSignInService
;
import
com.xxdxxs.utils.DateUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDate
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
@Service
public
class
QdUserSignInServiceImpl
implements
QdUserSignInService
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
QdUserSignInServiceImpl
.
class
);
@Autowired
QdUserSignInDao
qdUserSignInDao
;
@Autowired
SignInTaskDao
signInTaskDao
;
@Autowired
WxPayServiceApi
wxPayServiceApi
;
@Autowired
DistributionOrderDao
distributionOrderDao
;
@Autowired
QdUserSignInNoteDao
qdUserSignInNoteDao
;
@Override
public
Result
signIn
(
QdUserSignInRequestDto
dto
)
{
try
{
Date
now
=
new
Date
();
long
userId
=
dto
.
getUserId
();
long
taskId
=
dto
.
getTaskId
();
SignInTask
signInTask
=
signInTaskDao
.
findById
(
taskId
);
//签到目标天数
int
goalDays
=
signInTask
.
getGoalDays
();
//检查是否已签到过
String
todayStr
=
DateUtils
.
DATE
.
format
(
LocalDate
.
now
());
if
(
qdUserSignInDao
.
isExisted
(
userId
,
todayStr
,
taskId
))
{
return
Result
.
failed
(
"您今天已签到过"
);
}
//签到记录id
Long
recordId
=
null
;
//今天尚未签到,则进行记录,先查询昨天的打卡记录,有则再连续打卡天数上+1,没有则算签到第一天
QdUserSignIn
yesterdaySignin
=
qdUserSignInDao
.
findYesterdayRecord
(
userId
,
taskId
);
if
(
yesterdaySignin
==
null
)
{
QdUserSignIn
qdUserSignIn
=
new
QdUserSignIn
();
qdUserSignIn
.
setUserId
(
userId
);
qdUserSignIn
.
setTaskId
(
taskId
);
qdUserSignIn
.
setSignInDate
(
todayStr
);
qdUserSignIn
.
setCreateTime
(
now
);
qdUserSignIn
.
setUpdateTime
(
now
);
qdUserSignIn
.
setConsecutiveDays
(
1
);
qdUserSignIn
.
setIsGet
(
false
);
qdUserSignIn
.
setIsReward
(
false
);
qdUserSignIn
.
setRewardLevel
(
SigninEnum
.
LevelEnum
.
ZERO
.
getCode
());
recordId
=
qdUserSignInDao
.
insert
(
qdUserSignIn
);
}
else
{
QdUserSignIn
qdUserSignIn
=
new
QdUserSignIn
();
qdUserSignIn
.
setUserId
(
userId
);
qdUserSignIn
.
setTaskId
(
taskId
);
qdUserSignIn
.
setSignInDate
(
todayStr
);
qdUserSignIn
.
setCreateTime
(
now
);
qdUserSignIn
.
setUpdateTime
(
now
);
int
consecutiveDays
=
yesterdaySignin
.
getConsecutiveDays
()
+
1
;
qdUserSignIn
.
setConsecutiveDays
(
consecutiveDays
);
if
(
consecutiveDays
==
goalDays
)
{
qdUserSignIn
.
setIsReward
(
true
);
}
else
{
qdUserSignIn
.
setIsReward
(
false
);
}
qdUserSignIn
.
setIsGet
(
false
);
recordId
=
qdUserSignInDao
.
insert
(
qdUserSignIn
);
}
//保存签到笔记
QdUserSignInNote
qdUserSignInNote
=
new
QdUserSignInNote
();
qdUserSignInNote
.
setTitle
(
dto
.
getTitle
());
qdUserSignInNote
.
setUserId
(
userId
);
qdUserSignInNote
.
setLikeNum
(
0
);
qdUserSignInNote
.
setSignInDate
(
todayStr
);
qdUserSignInNote
.
setContent
(
dto
.
getContent
());
qdUserSignInNote
.
setImage
(
String
.
join
(
";"
,
dto
.
getImages
()));
qdUserSignInNote
.
setAudio
(
dto
.
getAudio
());
qdUserSignInNote
.
setRecordId
(
recordId
);
qdUserSignInNote
.
setCreateTime
(
now
);
qdUserSignInNote
.
setUpdateTime
(
now
);
qdUserSignInNote
.
setIsPrivate
(
dto
.
getIsPrivate
());
qdUserSignInNote
.
setIsDeleted
(
false
);
qdUserSignInNoteDao
.
insert
(
qdUserSignInNote
);
return
Result
.
success
();
}
catch
(
Exception
e
)
{
logger
.
error
(
"乾岛签到失败 error:{}"
,
e
);
}
return
Result
.
failed
();
}
@Override
public
Result
getReward
(
QdUserSignInRequestDto
dto
)
{
try
{
long
userId
=
dto
.
getUserId
();
long
taskId
=
dto
.
getTaskId
();
//查询签到记录
QdUserSignIn
qdUserSignIn
=
qdUserSignInDao
.
findRecord
(
dto
.
getUserId
(),
dto
.
getSignInDate
(),
null
,
taskId
);
if
(
qdUserSignIn
==
null
)
{
return
Result
.
failed
(
"该签到奖励已作废"
);
}
if
(!
qdUserSignIn
.
getIsReward
())
{
return
Result
.
failed
(
"尚未完成连续签到的天数"
);
}
if
(
qdUserSignIn
.
getIsGet
())
{
return
Result
.
failed
(
"该奖励已领取"
);
}
QdUserSignIn
updateDto
=
new
QdUserSignIn
();
updateDto
.
setId
(
qdUserSignIn
.
getId
());
updateDto
.
setIsGet
(
true
);
updateDto
.
setUpdateTime
(
new
Date
());
qdUserSignInDao
.
updateByPrimaryKey
(
updateDto
);
String
distributionOrderId
=
IdUtils
.
getOrderNumber
(
CommConsts
.
DISTRIBUTION_ORDER_PREFIX
);
//赠品订单收取运费10元
long
orderAmount
=
1000L
;
DistributionOrderRequestDto
prePayDto
=
new
DistributionOrderRequestDto
();
prePayDto
.
setDistributionOrderId
(
distributionOrderId
);
prePayDto
.
setAmount
(
String
.
valueOf
(
orderAmount
));
prePayDto
.
setBuyerOpenid
(
dto
.
getUserOpenId
());
prePayDto
.
setItemName
(
"签到礼品运费"
);
Result
prePayResult
=
wxPayServiceApi
.
createPrepareOrder
(
prePayDto
);
if
(!
prePayResult
.
getSuccess
())
{
return
Result
.
failed
(
"签到礼品支付运费预下单失败"
);
}
String
prepayId
=
(
String
)
prePayResult
.
getData
();
//创建赠品订单
DistributionOrder
distributionOrder
=
new
DistributionOrder
();
distributionOrder
.
setItemId
(
null
);
distributionOrder
.
setItemNum
(
1
);
distributionOrder
.
setDistributionOrderId
(
distributionOrderId
);
distributionOrder
.
setBuyerId
(
dto
.
getUserId
());
distributionOrder
.
setBuyerOpenid
(
dto
.
getUserOpenId
());
distributionOrder
.
setPrepayId
(
prepayId
);
distributionOrder
.
setShopId
(
CommConsts
.
SYSTEM_ACCOUNT
.
longValue
());
distributionOrder
.
setSellerId
(
CommConsts
.
SYSTEM_ACCOUNT
.
longValue
());
distributionOrder
.
setAmount
(
orderAmount
);
distributionOrder
.
setReceiverAddress
(
dto
.
getReceiverAddress
());
distributionOrder
.
setReceiverName
(
dto
.
getReceiverName
());
distributionOrder
.
setReceiverPhone
(
dto
.
getReceiverPhone
());
distributionOrder
.
setCreateTime
(
new
Date
());
distributionOrder
.
setUpdateTime
(
new
Date
());
distributionOrder
.
setType
(
DistributionEnum
.
DistributionTypeEnum
.
GIFT
.
getCode
());
distributionOrder
.
setRemark
(
null
);
distributionOrder
.
setState
(
DistributionEnum
.
DistributionOrderStateEnum
.
PRE_PAY
.
getCode
());
distributionOrderDao
.
insert
(
distributionOrder
);
Map
<
String
,
String
>
map
=
new
HashMap
<>();
map
.
put
(
"distributionOrderId"
,
distributionOrderId
);
map
.
put
(
"prepayId"
,
prepayId
);
return
Result
.
success
(
map
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"乾岛领取奖励失败 error:{}"
,
e
);
}
return
Result
.
failed
();
}
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/qiandao/QdHomePageService.java
View file @
e1354efb
...
...
@@ -6,11 +6,11 @@ import com.wwdz.ch.wx.entity.request.QdHomePageRequestDto;
public
interface
QdHomePageService
{
/**
* 查询首页信息
* 查询首页
展示的用户
信息
* @param dto
* @return
*/
Result
find
HomePage
(
QdHomePageRequestDto
dto
);
Result
find
UserInfo
(
QdHomePageRequestDto
dto
);
Result
findSignInNoteList
(
QdHomePageRequestDto
dto
);
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/qiandao/QdUserSignInNoteService.java
0 → 100644
View file @
e1354efb
package
com.wwdz.ch.wx.service.qiandao
;
public
interface
QdUserSignInNoteService
{
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/qiandao/QdUserSignInService.java
0 → 100644
View file @
e1354efb
package
com.wwdz.ch.wx.service.qiandao
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.UserSignInRequestDto
;
import
com.wwdz.ch.db.dto.request.qiandao.QdUserSignInRequestDto
;
public
interface
QdUserSignInService
{
/**
* 签到
* @param dto
* @return
*/
Result
signIn
(
QdUserSignInRequestDto
dto
);
/**
* 领取奖励
* @param dto
* @return
*/
Result
getReward
(
QdUserSignInRequestDto
dto
);
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/qiandao/QdUserSignInController.java
0 → 100644
View file @
e1354efb
package
com.wwdz.ch.wx.web.qiandao
;
import
com.alibaba.fastjson.JSON
;
import
com.wwdz.ch.core.consts.ResultCode
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dao.qiandao.QdUserSignInDao
;
import
com.wwdz.ch.db.domain.qiandao.QdUserSignIn
;
import
com.wwdz.ch.db.dto.request.UserSignInRequestDto
;
import
com.wwdz.ch.db.dto.request.qiandao.QdUserRequestDto
;
import
com.wwdz.ch.db.dto.request.qiandao.QdUserSignInRequestDto
;
import
com.wwdz.ch.wx.constant.CacheCodeConstants
;
import
com.wwdz.ch.wx.service.qiandao.QdUserSignInService
;
import
com.xxdxxs.service.FormHandler
;
import
com.xxdxxs.validation.Validator
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
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
;
@RestController
@RequestMapping
(
"/wx/qdUserSignIn"
)
public
class
QdUserSignInController
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
QdUserController
.
class
);
@Autowired
QdUserSignInService
qdUserSignInService
;
@ApiOperation
(
value
=
"乾岛签到"
)
@PostMapping
(
"/loginRegCaptcha"
)
public
Object
registerCaptcha
(
@RequestBody
QdUserSignInRequestDto
dto
)
{
logger
.
info
(
"【请求开始】乾岛签到,请求参数:{}"
,
JSON
.
toJSONString
(
dto
));
if
(
dto
.
getUserId
()
==
null
||
dto
.
getTaskId
()
==
null
)
{
return
Result
.
failed
(
ResultCode
.
PARAM_ERROR
);
}
return
qdUserSignInService
.
signIn
(
dto
);
}
@ApiOperation
(
value
=
"领取奖励"
)
@PostMapping
(
"/getReward"
)
public
Result
getReward
(
@RequestBody
QdUserSignInRequestDto
dto
)
{
logger
.
info
(
"【请求开始】领取奖励,请求参数:{}"
,
JSON
.
toJSONString
(
dto
));
Validator
validator
=
new
Validator
(
FormHandler
.
ofEntity
(
dto
));
validator
.
set
(
"userId"
,
"用户id"
).
must
().
number
()
.
set
(
"userOpenId"
,
"用户openid"
).
must
().
string
()
.
set
(
"taskId"
,
"任务id"
).
must
().
number
()
.
end
();
if
(!
validator
.
isValid
())
{
return
Result
.
failed
(
ResultCode
.
PARAM_ERROR
);
}
return
qdUserSignInService
.
getReward
(
dto
);
}
}
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