Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
cms
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
cms
Commits
ace26f91
提交
ace26f91
authored
10月 16, 2023
作者:
张小凤
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
SignInCo(add)
上级
e28a46d8
隐藏空白字符变更
内嵌
并排
正在显示
12 个修改的文件
包含
626 行增加
和
0 行删除
+626
-0
SignInDTO.java
...in/java/com/mmc/iuav/user/model/dto/signin/SignInDTO.java
+39
-0
AppSignInVO.java
...n/java/com/mmc/iuav/user/model/vo/signin/AppSignInVO.java
+36
-0
SignInVO.java
...main/java/com/mmc/iuav/user/model/vo/signin/SignInVO.java
+48
-0
UserContinuousCheckInVO.java
...mc/iuav/user/model/vo/signin/UserContinuousCheckInVO.java
+30
-0
SignInController.java
...com/mmc/iuav/user/controller/signin/SignInController.java
+70
-0
SignInDao.java
...src/main/java/com/mmc/iuav/user/dao/signin/SignInDao.java
+43
-0
SignInDO.java
...c/main/java/com/mmc/iuav/user/entity/signin/SignInDO.java
+58
-0
SignInRecordDO.java
.../java/com/mmc/iuav/user/entity/signin/SignInRecordDO.java
+25
-0
UserAppSignInDO.java
...java/com/mmc/iuav/user/entity/signin/UserAppSignInDO.java
+25
-0
SignInService.java
.../java/com/mmc/iuav/user/service/signin/SignInService.java
+27
-0
SignInServiceImpl.java
.../mmc/iuav/user/service/signin/impl/SignInServiceImpl.java
+132
-0
SignIn.xml
...-service-user/src/main/resources/mapper/signin/SignIn.xml
+93
-0
没有找到文件。
cms-common/cms-common-model/src/main/java/com/mmc/iuav/user/model/dto/signin/SignInDTO.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
model
.
dto
.
signin
;
import
com.mmc.iuav.user.model.vo.signin.UserContinuousCheckInVO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/10/13 10:57
* @Version 1.0
*/
@AllArgsConstructor
@NoArgsConstructor
@Data
@Builder
public
class
SignInDTO
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"是否启用"
,
example
=
"true 启用 false 不启用"
)
private
Boolean
status
;
@ApiModelProperty
(
value
=
"签到周期"
,
example
=
"7"
)
@Min
(
value
=
7
,
message
=
"最小是7"
)
private
Integer
period
;
@ApiModelProperty
(
value
=
"每日签到赠送奖励积分"
,
example
=
"5"
)
private
Integer
integral
;
@ApiModelProperty
(
value
=
"连续签到信息"
)
private
List
<
UserContinuousCheckInVO
>
userContinuousCheckInVO
;
}
cms-common/cms-common-model/src/main/java/com/mmc/iuav/user/model/vo/signin/AppSignInVO.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
model
.
vo
.
signin
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author small
* @Date 2023/10/13 11:05
* @Version 1.0
*/
@AllArgsConstructor
@NoArgsConstructor
@Data
public
class
AppSignInVO
{
@ApiModelProperty
(
value
=
""
,
hidden
=
true
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户id"
,
example
=
"1"
,
hidden
=
true
)
private
Integer
userAccountId
;
@ApiModelProperty
(
hidden
=
true
)
private
Integer
signInDays
;
@ApiModelProperty
(
value
=
"签到时间"
,
example
=
"2023-10-13"
)
private
String
signTime
;
}
cms-common/cms-common-model/src/main/java/com/mmc/iuav/user/model/vo/signin/SignInVO.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
model
.
vo
.
signin
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.cglib.core.TinyBitSet
;
import
javax.validation.constraints.Min
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/10/13 9:38
* @Version 1.0
*/
@AllArgsConstructor
@NoArgsConstructor
@Data
public
class
SignInVO
{
@ApiModelProperty
(
value
=
"修改是需要传id"
,
example
=
"2"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"是否启用"
,
example
=
"true 启用 false 不启用"
)
private
Boolean
status
;
@ApiModelProperty
(
value
=
"签到周期"
,
example
=
"7"
)
@Min
(
value
=
7
,
message
=
"最小是7"
)
private
Integer
period
;
@ApiModelProperty
(
value
=
"每日签到赠送奖励积分"
,
example
=
"5"
)
private
Integer
integral
;
@ApiModelProperty
(
value
=
"连续签到信息"
)
private
List
<
UserContinuousCheckInVO
>
userContinuousCheckInVO
;
}
cms-common/cms-common-model/src/main/java/com/mmc/iuav/user/model/vo/signin/UserContinuousCheckInVO.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
model
.
vo
.
signin
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author small
* @Date 2023/10/13 9:47
* @Version 1.0
*/
@AllArgsConstructor
@NoArgsConstructor
@Data
public
class
UserContinuousCheckInVO
{
@ApiModelProperty
(
value
=
"id"
,
hidden
=
true
)
private
Integer
signInId
;
@ApiModelProperty
(
value
=
"连续签到天数"
,
example
=
"2"
)
private
Integer
numberOfDays
;
@ApiModelProperty
(
value
=
"奖励积分"
,
example
=
"1"
)
private
Integer
bonusPoints
;
@ApiModelProperty
(
value
=
"id"
,
hidden
=
true
)
private
Integer
id
;
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/controller/signin/SignInController.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
controller
.
signin
;
import
com.mmc.iuav.response.ResultBody
;
import
com.mmc.iuav.user.controller.BaseController
;
import
com.mmc.iuav.user.entity.signin.SignInDO
;
import
com.mmc.iuav.user.entity.signin.SignInRecordDO
;
import
com.mmc.iuav.user.model.dto.signin.SignInDTO
;
import
com.mmc.iuav.user.model.vo.signin.AppSignInVO
;
import
com.mmc.iuav.user.model.vo.signin.SignInVO
;
import
com.mmc.iuav.user.service.signin.SignInService
;
import
io.jsonwebtoken.SigningKeyResolver
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.Base64
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/10/13 9:32
* @Version 1.0
*/
@RestController
@Api
(
tags
=
"签到"
)
public
class
SignInController
extends
BaseController
{
@Autowired
private
SignInService
signInService
;
@ApiOperation
(
"后台——签到调整"
)
@PostMapping
(
"/insertSignIn"
)
public
ResultBody
SignIn
(
@RequestBody
SignInVO
signInVO
,
HttpServletRequest
request
){
return
signInService
.
SignIn
(
signInVO
);
}
@ApiOperation
(
"小程序签到列表"
)
@GetMapping
(
"/SignInList"
)
public
ResultBody
<
SignInDTO
>
SignInList
(
HttpServletRequest
request
){
List
<
SignInDTO
>
signInDOS
=
signInService
.
SignInList
();
return
ResultBody
.
success
(
signInDOS
);
}
@ApiOperation
(
"小程序签到"
)
@PostMapping
(
"/appSignIn"
)
public
ResultBody
appSignIn
(
HttpServletRequest
request
,
@RequestBody
AppSignInVO
appSignInVO
){
Integer
userAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
appSignInVO
.
setUserAccountId
(
userAccountId
);
return
signInService
.
appSignIn
(
appSignInVO
);
}
@ApiOperation
(
"小程序签到记录"
)
@GetMapping
(
"/signInRecord"
)
public
ResultBody
<
SignInRecordDO
>
signInRecord
(
HttpServletRequest
request
){
Integer
userAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
return
ResultBody
.
success
(
signInService
.
signInRecord
(
userAccountId
));
}
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/dao/signin/SignInDao.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
dao
.
signin
;
import
com.mmc.iuav.user.entity.signin.SignInDO
;
import
com.mmc.iuav.user.entity.signin.SignInRecordDO
;
import
com.mmc.iuav.user.entity.signin.UserAppSignInDO
;
import
com.mmc.iuav.user.model.vo.signin.AppSignInVO
;
import
com.mmc.iuav.user.model.vo.signin.SignInVO
;
import
com.mmc.iuav.user.model.vo.signin.UserContinuousCheckInVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/10/13 9:35
* @Version 1.0
*/
@Mapper
public
interface
SignInDao
{
void
SignIn
(
SignInDO
signInDO
);
void
CheckIn
(
UserContinuousCheckInVO
continuousCheckInVO
);
int
update
(
SignInDO
signInDO
);
void
remove
(
Integer
id
);
List
<
SignInDO
>
SignInList
();
UserAppSignInDO
selectUserAppSignIn
(
AppSignInVO
appSignInVO
);
void
userAppSignIn
(
AppSignInVO
appSignInVO
);
void
updateUserAppSignIn
(
AppSignInVO
appSignInVO
);
void
deleteSignInRecord
(
AppSignInVO
appSignInVO
);
void
insertSignInRecord
(
AppSignInVO
appSignInVO
);
void
updateUserAppSignInD
(
AppSignInVO
appSignInVO
);
List
<
SignInRecordDO
>
signInRecord
(
Integer
userAccountId
);
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/entity/signin/SignInDO.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
entity
.
signin
;
import
com.mmc.iuav.user.model.dto.signin.SignInDTO
;
import
com.mmc.iuav.user.model.vo.signin.SignInVO
;
import
com.mmc.iuav.user.model.vo.signin.UserContinuousCheckInVO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/10/13 9:51
* @Version 1.0
*/
@AllArgsConstructor
@NoArgsConstructor
@Data
public
class
SignInDO
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"是否启用"
,
example
=
"true 启用 false 不启用"
)
private
Boolean
status
;
@ApiModelProperty
(
value
=
"签到周期"
,
example
=
"7"
)
@Min
(
value
=
7
,
message
=
"最小是7"
)
private
Integer
period
;
@ApiModelProperty
(
value
=
"每日签到赠送奖励积分"
,
example
=
"5"
)
private
Integer
integral
;
@ApiModelProperty
(
value
=
"连续签到信息"
)
private
List
<
UserContinuousCheckInVO
>
userContinuousCheckInVO
;
public
SignInDO
(
SignInVO
signInVO
){
this
.
id
=
signInVO
.
getId
();
this
.
status
=
signInVO
.
getStatus
();
this
.
period
=
signInVO
.
getPeriod
();
this
.
integral
=
signInVO
.
getIntegral
();
this
.
userContinuousCheckInVO
=
signInVO
.
getUserContinuousCheckInVO
();
}
public
SignInDTO
buildSignInDTO
(){
return
SignInDTO
.
builder
()
.
id
(
this
.
id
)
.
integral
(
this
.
integral
)
.
period
(
this
.
period
)
.
status
(
this
.
status
)
.
userContinuousCheckInVO
(
userContinuousCheckInVO
)
.
build
();
}
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/entity/signin/SignInRecordDO.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
entity
.
signin
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author small
* @Date 2023/10/16 9:34
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
SignInRecordDO
{
@ApiModelProperty
(
value
=
"签到用户"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"签到时间"
)
private
String
signInTime
;
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/entity/signin/UserAppSignInDO.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
entity
.
signin
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author small
* @Date 2023/10/13 11:32
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
UserAppSignInDO
{
@ApiModelProperty
(
value
=
"上一次签到时间"
)
private
String
signTime
;
@ApiModelProperty
(
value
=
"签到天数"
)
private
Integer
signInDays
;
@ApiModelProperty
(
value
=
"签到用户"
)
private
Integer
userAccountId
;
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/service/signin/SignInService.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
service
.
signin
;
import
com.mmc.iuav.response.ResultBody
;
import
com.mmc.iuav.user.entity.signin.SignInDO
;
import
com.mmc.iuav.user.entity.signin.SignInRecordDO
;
import
com.mmc.iuav.user.model.dto.signin.SignInDTO
;
import
com.mmc.iuav.user.model.vo.signin.AppSignInVO
;
import
com.mmc.iuav.user.model.vo.signin.SignInVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/10/13 9:34
* @Version 1.0
*/
public
interface
SignInService
{
ResultBody
SignIn
(
SignInVO
signInVO
);
List
<
SignInDTO
>
SignInList
();
ResultBody
appSignIn
(
AppSignInVO
appSignInVO
);
List
<
SignInRecordDO
>
signInRecord
(
Integer
userAccountId
);
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/service/signin/impl/SignInServiceImpl.java
0 → 100644
浏览文件 @
ace26f91
package
com
.
mmc
.
iuav
.
user
.
service
.
signin
.
impl
;
import
com.mmc.iuav.response.ResultBody
;
import
com.mmc.iuav.user.dao.signin.SignInDao
;
import
com.mmc.iuav.user.entity.signin.SignInDO
;
import
com.mmc.iuav.user.entity.signin.SignInRecordDO
;
import
com.mmc.iuav.user.entity.signin.UserAppSignInDO
;
import
com.mmc.iuav.user.model.dto.signin.SignInDTO
;
import
com.mmc.iuav.user.model.vo.signin.AppSignInVO
;
import
com.mmc.iuav.user.model.vo.signin.SignInVO
;
import
com.mmc.iuav.user.model.vo.signin.UserContinuousCheckInVO
;
import
com.mmc.iuav.user.model.vo.userpoints.ChangeUserPointVO
;
import
com.mmc.iuav.user.service.signin.SignInService
;
import
com.mmc.iuav.user.service.userpoints.impl.UserPointsServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* @Author small
* @Date 2023/10/13 9:34
* @Version 1.0
*/
@Service
public
class
SignInServiceImpl
implements
SignInService
{
@Autowired
private
SignInDao
signInDao
;
@Autowired
private
UserPointsServiceImpl
userPointsService
;
@Override
public
ResultBody
SignIn
(
SignInVO
signInVO
)
{
SignInDO
signInDO
=
new
SignInDO
(
signInVO
);
if
(
signInDO
.
getId
()!=
null
){
int
update
=
signInDao
.
update
(
signInDO
);
signInDao
.
remove
(
signInDO
.
getId
());
List
<
UserContinuousCheckInVO
>
userContinuousCheckInVO
=
signInDO
.
getUserContinuousCheckInVO
();
for
(
UserContinuousCheckInVO
continuousCheckInVO
:
userContinuousCheckInVO
)
{
continuousCheckInVO
.
setSignInId
(
signInDO
.
getId
());
signInDao
.
CheckIn
(
continuousCheckInVO
);
}
}
else
if
(
signInDO
.
getId
()==
null
){
signInDao
.
SignIn
(
signInDO
);
List
<
UserContinuousCheckInVO
>
userContinuousCheckInVO
=
signInDO
.
getUserContinuousCheckInVO
();
for
(
UserContinuousCheckInVO
continuousCheckInVO
:
userContinuousCheckInVO
)
{
continuousCheckInVO
.
setSignInId
(
signInDO
.
getId
());
signInDao
.
CheckIn
(
continuousCheckInVO
);
}
}
return
ResultBody
.
success
();
}
@Override
public
List
<
SignInDTO
>
SignInList
()
{
List
<
SignInDO
>
signInDO
=
signInDao
.
SignInList
();
List
<
SignInDTO
>
collect
=
signInDO
.
stream
().
map
(
SignInDO:
:
buildSignInDTO
).
collect
(
Collectors
.
toList
());
return
collect
;
}
@Override
public
ResultBody
appSignIn
(
AppSignInVO
appSignInVO
)
{
UserAppSignInDO
userAppSignInDO
=
signInDao
.
selectUserAppSignIn
(
appSignInVO
);
List
<
SignInDO
>
signInDOS
=
signInDao
.
SignInList
();
ChangeUserPointVO
changeUserPointVO
=
new
ChangeUserPointVO
();
changeUserPointVO
.
setUserAccountId
(
appSignInVO
.
getUserAccountId
());
changeUserPointVO
.
setChangeType
(
4
);
if
(
userAppSignInDO
==
null
){
signInDao
.
userAppSignIn
(
appSignInVO
);
signInDao
.
insertSignInRecord
(
appSignInVO
);
for
(
SignInDO
signInDO
:
signInDOS
)
{
Integer
integral
=
signInDO
.
getIntegral
();
changeUserPointVO
.
setChangePoint
(
integral
);
}
userPointsService
.
change
(
changeUserPointVO
);
}
if
(
userAppSignInDO
!=
null
){
try
{
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
long
time
=
dateFormat
.
parse
(
userAppSignInDO
.
getSignTime
()).
getTime
();
long
time1
=
dateFormat
.
parse
(
appSignInVO
.
getSignTime
()).
getTime
();
long
l
=(
time1
-
time
)/(
24
*
60
*
60
*
1000
);
if
(
l
>
1
){
signInDao
.
deleteSignInRecord
(
appSignInVO
);
signInDao
.
updateUserAppSignInD
(
appSignInVO
);
signInDao
.
insertSignInRecord
(
appSignInVO
);
for
(
SignInDO
signInDO
:
signInDOS
)
{
changeUserPointVO
.
setChangePoint
(
signInDO
.
getIntegral
());
}
userPointsService
.
change
(
changeUserPointVO
);
}
else
if
(
l
==
1
){
signInDao
.
updateUserAppSignIn
(
appSignInVO
);
signInDao
.
insertSignInRecord
(
appSignInVO
);
UserAppSignInDO
userAppSignInDO1
=
signInDao
.
selectUserAppSignIn
(
appSignInVO
);
int
allPoints
=
0
;
for
(
SignInDO
signInDO
:
signInDOS
)
{
Integer
integral
=
signInDO
.
getIntegral
();
List
<
UserContinuousCheckInVO
>
userContinuousCheckInVO
=
signInDO
.
getUserContinuousCheckInVO
();
for
(
UserContinuousCheckInVO
continuousCheckInVO
:
userContinuousCheckInVO
)
{
if
(
continuousCheckInVO
.
getNumberOfDays
().
equals
(
userAppSignInDO1
.
getSignInDays
())){
int
bonusPoints
=
continuousCheckInVO
.
getBonusPoints
();
allPoints
=
integral
+
bonusPoints
;
changeUserPointVO
.
setChangePoint
(
allPoints
);
}
else
if
(!
continuousCheckInVO
.
getNumberOfDays
().
equals
(
userAppSignInDO1
.
getSignInDays
())){
changeUserPointVO
.
setChangePoint
(
integral
);
}
}
}
userPointsService
.
change
(
changeUserPointVO
);
}
}
catch
(
ParseException
e
)
{
e
.
printStackTrace
();
}
}
return
ResultBody
.
success
();
}
@Override
public
List
<
SignInRecordDO
>
signInRecord
(
Integer
userAccountId
)
{
List
<
SignInRecordDO
>
signInRecordDOS
=
signInDao
.
signInRecord
(
userAccountId
);
return
signInRecordDOS
;
}
}
csm-service/cms-service-user/src/main/resources/mapper/signin/SignIn.xml
0 → 100644
浏览文件 @
ace26f91
<?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.mmc.iuav.user.dao.signin.SignInDao"
>
<resultMap
id=
"signInList"
type=
"com.mmc.iuav.user.entity.signin.SignInDO"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"status"
column=
"status"
/>
<result
property=
"integral"
column=
"integral"
/>
<result
property=
"period"
column=
"period"
/>
<collection
property=
"userContinuousCheckInVO"
ofType=
"com.mmc.iuav.user.model.vo.signin.UserContinuousCheckInVO"
select=
"continuousCheckIn"
column=
"{signInId=id}"
>
</collection>
</resultMap>
<select
id=
"continuousCheckIn"
resultType=
"com.mmc.iuav.user.model.vo.signin.UserContinuousCheckInVO"
>
select id,sign_in_id,number_of_days,bonus_points from user_continuous_check_in where sign_in_id=#{signInId}
</select>
<insert
id=
"SignIn"
parameterType=
"com.mmc.iuav.user.entity.signin.SignInDO"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into user_sign_in(status,`period`,integral,create_time,update_time)
values(#{status},#{period},#{integral},NOW(),NOW())
</insert>
<insert
id=
"CheckIn"
parameterType=
"com.mmc.iuav.user.model.vo.signin.UserContinuousCheckInVO"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into user_continuous_check_in(sign_in_id,number_of_days,bonus_points,create_time,update_time)
values(#{signInId},#{numberOfDays},#{bonusPoints},NOW(),NOW())
</insert>
<update
id=
"update"
parameterType=
"com.mmc.iuav.user.entity.signin.SignInDO"
>
update user_sign_in
set
<if
test=
"status!=null"
>
status=#{status},
</if>
<if
test=
"period!=null"
>
`period`=#{period},
</if>
<if
test=
"integral!=null"
>
integral=#{integral}
</if>
where id=#{id}
</update>
<delete
id=
"remove"
>
DELETE from user_continuous_check_in where sign_in_id=#{id}
</delete>
<select
id=
"SignInList"
resultMap=
"signInList"
>
select id,status,`integral`,`period` from user_sign_in
ORDER BY id desc
</select>
<select
id=
"selectUserAppSignIn"
parameterType=
"com.mmc.iuav.user.model.vo.signin.AppSignInVO"
resultType=
"com.mmc.iuav.user.entity.signin.UserAppSignInDO"
>
select sign_time,sign_in_days ,user_account_id from user_app_sign_in where user_account_id=#{userAccountId}
</select>
<insert
id=
"userAppSignIn"
parameterType=
"com.mmc.iuav.user.model.vo.signin.AppSignInVO"
>
insert into user_app_sign_in(sign_time,sign_in_days,user_account_id,create_time,update_time)
values (#{signTime},sign_in_days+1,#{userAccountId},NOW(),NOW())
</insert>
<update
id=
"updateUserAppSignIn"
parameterType=
"com.mmc.iuav.user.model.vo.signin.AppSignInVO"
>
update user_app_sign_in set
sign_time=#{signTime},
sign_in_days=sign_in_days+1,
update_time=NOW()
where user_account_id=#{userAccountId}
</update>
<delete
id=
"deleteSignInRecord"
parameterType=
"com.mmc.iuav.user.model.vo.signin.AppSignInVO"
>
delete from sign_in_record where user_account_id=#{userAccountId}
</delete>
<insert
id=
"insertSignInRecord"
parameterType=
"com.mmc.iuav.user.model.vo.signin.AppSignInVO"
>
insert into sign_in_record(user_account_id,sign_in_time,create_time,update_time)
values(#{userAccountId},#{signTime},NOW(),NOW())
</insert>
<update
id=
"updateUserAppSignInD"
parameterType=
"com.mmc.iuav.user.model.vo.signin.AppSignInVO"
>
update user_app_sign_in set
sign_time=#{signTime},
sign_in_days=1,
update_time=NOW()
where user_account_id=#{userAccountId}
</update>
<select
id=
"signInRecord"
resultType=
"com.mmc.iuav.user.entity.signin.SignInRecordDO"
>
select user_account_id,sign_in_time from sign_in_record where user_account_id=#{userAccountId}
</select>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论