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
8fe103fd
Commit
8fe103fd
authored
Aug 31, 2023
by
shiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
邀请码
parent
5adb8c9c
Changes
22
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
5035 additions
and
0 deletions
+5035
-0
ch-admin-api/src/main/java/com/wwdz/ch/admin/controller/InvitationCodeController.java
...om/wwdz/ch/admin/controller/InvitationCodeController.java
+69
-0
ch-admin-api/src/main/java/com/wwdz/ch/admin/impl/InvitationCodeServiceImpl.java
...ava/com/wwdz/ch/admin/impl/InvitationCodeServiceImpl.java
+93
-0
ch-admin-api/src/main/java/com/wwdz/ch/admin/impl/InviteRecordServiceImpl.java
.../java/com/wwdz/ch/admin/impl/InviteRecordServiceImpl.java
+70
-0
ch-admin-api/src/main/java/com/wwdz/ch/admin/service/InvitationCodeService.java
...java/com/wwdz/ch/admin/service/InvitationCodeService.java
+20
-0
ch-admin-api/src/main/java/com/wwdz/ch/admin/service/InviteRecordService.java
...n/java/com/wwdz/ch/admin/service/InviteRecordService.java
+21
-0
ch-core/src/main/java/com/wwdz/ch/core/consts/InvitationCodeStateEnum.java
...java/com/wwdz/ch/core/consts/InvitationCodeStateEnum.java
+36
-0
ch-dao/src/main/java/com/wwdz/ch/db/dao/InvitationCodeDao.java
...o/src/main/java/com/wwdz/ch/db/dao/InvitationCodeDao.java
+23
-0
ch-dao/src/main/java/com/wwdz/ch/db/dao/InviteRecordDao.java
ch-dao/src/main/java/com/wwdz/ch/db/dao/InviteRecordDao.java
+17
-0
ch-dao/src/main/java/com/wwdz/ch/db/domain/InvitationCode.java
...o/src/main/java/com/wwdz/ch/db/domain/InvitationCode.java
+323
-0
ch-dao/src/main/java/com/wwdz/ch/db/domain/InvitationCodeExample.java
...ain/java/com/wwdz/ch/db/domain/InvitationCodeExample.java
+1775
-0
ch-dao/src/main/java/com/wwdz/ch/db/domain/InviteRecord.java
ch-dao/src/main/java/com/wwdz/ch/db/domain/InviteRecord.java
+275
-0
ch-dao/src/main/java/com/wwdz/ch/db/domain/InviteRecordExample.java
.../main/java/com/wwdz/ch/db/domain/InviteRecordExample.java
+1115
-0
ch-dao/src/main/java/com/wwdz/ch/db/dto/request/InvitationCodeRequestDto.java
.../com/wwdz/ch/db/dto/request/InvitationCodeRequestDto.java
+66
-0
ch-dao/src/main/java/com/wwdz/ch/db/dto/request/InviteRecordRequestDto.java
...va/com/wwdz/ch/db/dto/request/InviteRecordRequestDto.java
+38
-0
ch-dao/src/main/java/com/wwdz/ch/db/impl/InvitationCodeDaoImpl.java
.../main/java/com/wwdz/ch/db/impl/InvitationCodeDaoImpl.java
+73
-0
ch-dao/src/main/java/com/wwdz/ch/db/impl/InviteRecordDaoImpl.java
...rc/main/java/com/wwdz/ch/db/impl/InviteRecordDaoImpl.java
+51
-0
ch-dao/src/main/java/com/wwdz/ch/db/mapper/InvitationCodeMapper.java
...main/java/com/wwdz/ch/db/mapper/InvitationCodeMapper.java
+69
-0
ch-dao/src/main/java/com/wwdz/ch/db/mapper/InviteRecordMapper.java
...c/main/java/com/wwdz/ch/db/mapper/InviteRecordMapper.java
+70
-0
ch-dao/src/main/resources/com/wwdz/ch/db/mapper/InvitationCodeMapper.xml
.../resources/com/wwdz/ch/db/mapper/InvitationCodeMapper.xml
+404
-0
ch-dao/src/main/resources/com/wwdz/ch/db/mapper/InviteRecordMapper.xml
...in/resources/com/wwdz/ch/db/mapper/InviteRecordMapper.xml
+321
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/InviteRecordServiceImpl.java
...ain/java/com/wwdz/ch/wx/impl/InviteRecordServiceImpl.java
+85
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/InviteRecordService.java
...main/java/com/wwdz/ch/wx/service/InviteRecordService.java
+21
-0
No files found.
ch-admin-api/src/main/java/com/wwdz/ch/admin/controller/InvitationCodeController.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.admin.controller
;
import
com.wwdz.ch.admin.annotation.RequiresPermissionsDesc
;
import
com.wwdz.ch.admin.service.InvitationCodeService
;
import
com.wwdz.ch.admin.util.AuthSupport
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.CoinRequestDto
;
import
com.wwdz.ch.db.dto.request.InvitationCodeRequestDto
;
import
com.xxdxxs.utils.JsonUtils
;
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
(
"/admin/invitationCode"
)
public
class
InvitationCodeController
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
ItemController
.
class
);
@Autowired
InvitationCodeService
invitationCodeService
;
@RequiresPermissionsDesc
(
menu
=
{
"邀请码管理"
,
"生成邀请码"
},
button
=
"新增"
)
@PostMapping
(
"/create"
)
public
Result
create
(
@RequestBody
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
logger
.
info
(
"【请求开始】操作人:["
+
AuthSupport
.
userName
()+
"] 邀请码管理->生成邀请码->新增,请求参数:parma:{}"
,
invitationCodeRequestDto
);
Result
result
=
invitationCodeService
.
create
(
invitationCodeRequestDto
);
logger
.
info
(
"【请求结束】邀请码管理->生成邀请码->新增:result:{}"
,
JsonUtils
.
from
(
result
));
return
result
;
}
@RequiresPermissionsDesc
(
menu
=
{
"邀请码管理"
,
"邀请码列表"
},
button
=
"查询"
)
@PostMapping
(
"/findList"
)
public
Result
findList
(
@RequestBody
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
logger
.
info
(
"【请求开始】操作人:["
+
AuthSupport
.
userName
()+
"] 邀请码管理->邀请码列表->查询,请求参数:parma:{}"
,
invitationCodeRequestDto
);
Result
result
=
invitationCodeService
.
findList
(
invitationCodeRequestDto
);
logger
.
info
(
"【请求结束】邀请码管理->邀请码列表->查询:result:{}"
,
JsonUtils
.
from
(
result
));
return
result
;
}
@RequiresPermissionsDesc
(
menu
=
{
"邀请码管理"
,
"邀请码详情"
},
button
=
"查询"
)
@PostMapping
(
"/findDetails"
)
public
Result
findDetails
(
@RequestBody
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
logger
.
info
(
"【请求开始】操作人:["
+
AuthSupport
.
userName
()+
"] 邀请码管理->邀请码详情->查询,请求参数:parma:{}"
,
invitationCodeRequestDto
);
Result
result
=
invitationCodeService
.
findList
(
invitationCodeRequestDto
);
logger
.
info
(
"【请求结束】邀请码管理->邀请码详情->查询:result:{}"
,
JsonUtils
.
from
(
result
));
return
result
;
}
@RequiresPermissionsDesc
(
menu
=
{
"邀请码管理"
,
"邀请码详情"
},
button
=
"更新"
)
@PostMapping
(
"/setInvalid"
)
public
Result
setInvalid
(
@RequestBody
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
logger
.
info
(
"【请求开始】操作人:["
+
AuthSupport
.
userName
()+
"] 邀请码管理->设置无效->更新,请求参数:parma:{}"
,
invitationCodeRequestDto
);
Result
result
=
invitationCodeService
.
updateState
(
invitationCodeRequestDto
);
logger
.
info
(
"【请求结束】邀请码管理->设置无效->更新:result:{}"
,
JsonUtils
.
from
(
result
));
return
result
;
}
}
ch-admin-api/src/main/java/com/wwdz/ch/admin/impl/InvitationCodeServiceImpl.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.admin.impl
;
import
com.wwdz.ch.admin.service.InvitationCodeService
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.util.CharUtil
;
import
com.wwdz.ch.db.dao.InvitationCodeDao
;
import
com.wwdz.ch.db.domain.InvitationCode
;
import
com.wwdz.ch.db.dto.request.InvitationCodeRequestDto
;
import
com.xxdxxs.utils.EntityMapper
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
import
java.util.Date
;
import
java.util.List
;
@Service
public
class
InvitationCodeServiceImpl
implements
InvitationCodeService
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
InvitationCodeServiceImpl
.
class
);
@Autowired
InvitationCodeDao
invitationCodeDao
;
@Override
public
Result
create
(
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
try
{
Date
now
=
new
Date
();
InvitationCode
invitationCode
=
new
InvitationCode
();
EntityMapper
.
copyAttribute
(
invitationCodeRequestDto
,
invitationCode
);
invitationCode
.
setCreateTime
(
now
);
invitationCode
.
setUpdateTime
(
now
);
String
code
=
CharUtil
.
getInvitationCode
(
6
);
if
(
invitationCodeDao
.
isExisted
(
code
))
{
logger
.
info
(
"邀请码 : {} 已经存在,"
,
code
);
code
=
CharUtil
.
getInvitationCode
(
6
);
logger
.
info
(
"再一次生成新的邀请码 : {}"
,
code
);
}
invitationCode
.
setCode
(
code
);
invitationCodeDao
.
create
(
invitationCode
);
return
Result
.
success
();
}
catch
(
Exception
e
)
{
logger
.
error
(
"生成邀请码错误 : {}"
,
e
);
}
return
Result
.
failed
();
}
@Override
public
Result
update
(
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
try
{
return
null
;
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
e
);
}
}
@Override
public
Result
updateState
(
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
try
{
invitationCodeDao
.
updateState
(
invitationCodeRequestDto
.
getCode
(),
invitationCodeRequestDto
.
getState
());
return
Result
.
success
();
}
catch
(
Exception
e
)
{
logger
.
error
(
"更新邀请码状态错误 : {}"
,
e
);
}
return
Result
.
failed
();
}
@Override
public
Result
findList
(
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
return
null
;
}
@Override
public
Result
findByPage
(
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
return
null
;
}
@Override
public
Result
findDetails
(
InvitationCodeRequestDto
invitationCodeRequestDto
)
{
try
{
List
<
InvitationCode
>
list
=
invitationCodeDao
.
findList
(
invitationCodeRequestDto
);
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
Result
.
failed
(
"邀请码不存在"
);
}
InvitationCode
invitationCode
=
list
.
get
(
0
);
return
null
;
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
e
);
}
}
}
ch-admin-api/src/main/java/com/wwdz/ch/admin/impl/InviteRecordServiceImpl.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.admin.impl
;
import
com.wwdz.ch.admin.service.InviteRecordService
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dao.InvitationCodeDao
;
import
com.wwdz.ch.db.dao.InviteRecordDao
;
import
com.wwdz.ch.db.domain.InvitationCode
;
import
com.wwdz.ch.db.domain.InviteRecord
;
import
com.wwdz.ch.db.dto.request.InvitationCodeRequestDto
;
import
com.wwdz.ch.db.dto.request.InviteRecordRequestDto
;
import
com.xxdxxs.utils.EntityMapper
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
import
java.util.Date
;
import
java.util.List
;
@Service
public
class
InviteRecordServiceImpl
implements
InviteRecordService
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
InviteRecordServiceImpl
.
class
);
@Autowired
InviteRecordDao
inviteRecordDao
;
@Autowired
InvitationCodeDao
invitationCodeDao
;
@Override
public
Result
create
(
InviteRecordRequestDto
dto
)
{
try
{
//查询邀请码信息
InvitationCodeRequestDto
invitationCodeRequestDto
=
new
InvitationCodeRequestDto
();
invitationCodeRequestDto
.
setCode
(
dto
.
getInvitationCode
());
List
<
InvitationCode
>
invitationCodeList
=
invitationCodeDao
.
findList
(
invitationCodeRequestDto
);
if
(
CollectionUtils
.
isEmpty
(
invitationCodeList
))
{
return
Result
.
failed
(
"邀请码错误"
);
}
InvitationCode
invitationCode
=
invitationCodeList
.
get
(
0
);
InviteRecord
inviteRecord
=
new
InviteRecord
();
EntityMapper
.
copyAttribute
(
dto
,
inviteRecord
);
inviteRecord
.
setCreateTime
(
new
Date
());
//邀请人
inviteRecord
.
setInviter
(
invitationCode
.
getApplicant
());
inviteRecordDao
.
create
(
inviteRecord
);
return
Result
.
success
();
}
catch
(
Exception
e
)
{
logger
.
error
(
"邀请码使用失败:{}"
,
e
);
}
return
Result
.
failed
(
"使用邀请码失败"
);
}
@Override
public
Result
isExisted
(
String
phone
)
{
return
null
;
}
@Override
public
Result
findList
(
InviteRecordRequestDto
dto
)
{
return
null
;
}
@Override
public
Result
checkCode
(
InviteRecordRequestDto
dto
)
{
return
null
;
}
}
ch-admin-api/src/main/java/com/wwdz/ch/admin/service/InvitationCodeService.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.admin.service
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.InvitationCodeRequestDto
;
public
interface
InvitationCodeService
{
Result
create
(
InvitationCodeRequestDto
invitationCodeRequestDto
);
Result
update
(
InvitationCodeRequestDto
invitationCodeRequestDto
);
Result
updateState
(
InvitationCodeRequestDto
invitationCodeRequestDto
);
Result
findList
(
InvitationCodeRequestDto
invitationCodeRequestDto
);
Result
findDetails
(
InvitationCodeRequestDto
invitationCodeRequestDto
);
Result
findByPage
(
InvitationCodeRequestDto
invitationCodeRequestDto
);
}
ch-admin-api/src/main/java/com/wwdz/ch/admin/service/InviteRecordService.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.admin.service
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.InviteRecordRequestDto
;
public
interface
InviteRecordService
{
Result
create
(
InviteRecordRequestDto
dto
);
Result
isExisted
(
String
phone
);
Result
findList
(
InviteRecordRequestDto
dto
);
/**
* 校验邀请码
* @param dto
* @return
*/
Result
checkCode
(
InviteRecordRequestDto
dto
);
}
ch-core/src/main/java/com/wwdz/ch/core/consts/InvitationCodeStateEnum.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.core.consts
;
public
enum
InvitationCodeStateEnum
{
Not_used
(
0
,
"未使用"
),
part_used
(
1
,
"部分使用"
),
all_used
(
2
,
"全部使用"
),
expired
(
3
,
"已过期"
),
invalid
(
6
,
"已失效"
),
;
private
int
code
;
private
String
des
;
InvitationCodeStateEnum
(
int
code
,
String
des
)
{
this
.
code
=
code
;
this
.
des
=
des
;
}
public
static
String
getNameByCode
(
int
code
)
{
for
(
InvitationCodeStateEnum
invitationCodeStateEnum
:
InvitationCodeStateEnum
.
values
())
{
if
(
code
==
invitationCodeStateEnum
.
getCode
())
{
return
invitationCodeStateEnum
.
getDes
();
}
}
return
null
;
}
public
int
getCode
()
{
return
code
;
}
public
String
getDes
()
{
return
des
;
}
}
ch-dao/src/main/java/com/wwdz/ch/db/dao/InvitationCodeDao.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.dao
;
import
com.github.pagehelper.PageInfo
;
import
com.wwdz.ch.db.domain.InvitationCode
;
import
com.wwdz.ch.db.dto.request.InvitationCodeRequestDto
;
import
java.util.List
;
public
interface
InvitationCodeDao
{
boolean
create
(
InvitationCode
invitationCode
);
boolean
update
(
InvitationCode
invitationCode
);
boolean
isExisted
(
String
code
);
boolean
updateState
(
String
code
,
Integer
state
);
List
<
InvitationCode
>
findList
(
InvitationCodeRequestDto
dto
);
PageInfo
<
InvitationCode
>
findByPage
(
InvitationCodeRequestDto
dto
);
}
ch-dao/src/main/java/com/wwdz/ch/db/dao/InviteRecordDao.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.dao
;
import
com.wwdz.ch.db.domain.InviteRecord
;
import
com.wwdz.ch.db.dto.request.InviteRecordRequestDto
;
import
java.util.List
;
public
interface
InviteRecordDao
{
boolean
create
(
InviteRecord
inviteRecord
);
boolean
isExisted
(
String
phone
);
List
<
InviteRecord
>
findList
(
InviteRecordRequestDto
dto
);
long
countByCode
(
String
invitationCode
);
}
ch-dao/src/main/java/com/wwdz/ch/db/domain/InvitationCode.java
0 → 100644
View file @
8fe103fd
This diff is collapsed.
Click to expand it.
ch-dao/src/main/java/com/wwdz/ch/db/domain/InvitationCodeExample.java
0 → 100644
View file @
8fe103fd
This diff is collapsed.
Click to expand it.
ch-dao/src/main/java/com/wwdz/ch/db/domain/InviteRecord.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.domain
;
import
java.io.Serializable
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
import
com.xxdxxs.entity.Entity
;
import
lombok.Data
;
/**
* @author shiyu
* @date 2023/08/31
*/
@Data
public
class
InviteRecord
implements
Entity
{
private
Integer
id
;
/**
* 受邀人
*/
private
Long
invitee
;
/**
* 邀请人
*/
private
Long
inviter
;
/**
* 受邀人手机号
*/
private
String
inviteePhone
;
/**
* 创建时间(使用邀请码的时间)
*/
private
Date
createTime
;
/**
* 邀请码
*/
private
String
invitationCode
;
private
static
final
long
serialVersionUID
=
1L
;
@Override
public
String
toString
()
{
StringBuilder
sb
=
new
StringBuilder
();
sb
.
append
(
getClass
().
getSimpleName
());
sb
.
append
(
" ["
);
sb
.
append
(
"Hash = "
).
append
(
hashCode
());
sb
.
append
(
", id="
).
append
(
id
);
sb
.
append
(
", invitee="
).
append
(
invitee
);
sb
.
append
(
", inviter="
).
append
(
inviter
);
sb
.
append
(
", inviteePhone="
).
append
(
inviteePhone
);
sb
.
append
(
", createTime="
).
append
(
createTime
);
sb
.
append
(
", invitationCode="
).
append
(
invitationCode
);
sb
.
append
(
", serialVersionUID="
).
append
(
serialVersionUID
);
sb
.
append
(
"]"
);
return
sb
.
toString
();
}
@Override
public
boolean
equals
(
Object
that
)
{
if
(
this
==
that
)
{
return
true
;
}
if
(
that
==
null
)
{
return
false
;
}
if
(
getClass
()
!=
that
.
getClass
())
{
return
false
;
}
InviteRecord
other
=
(
InviteRecord
)
that
;
return
(
this
.
getId
()
==
null
?
other
.
getId
()
==
null
:
this
.
getId
().
equals
(
other
.
getId
()))
&&
(
this
.
getInvitee
()
==
null
?
other
.
getInvitee
()
==
null
:
this
.
getInvitee
().
equals
(
other
.
getInvitee
()))
&&
(
this
.
getInviter
()
==
null
?
other
.
getInviter
()
==
null
:
this
.
getInviter
().
equals
(
other
.
getInviter
()))
&&
(
this
.
getInviteePhone
()
==
null
?
other
.
getInviteePhone
()
==
null
:
this
.
getInviteePhone
().
equals
(
other
.
getInviteePhone
()))
&&
(
this
.
getCreateTime
()
==
null
?
other
.
getCreateTime
()
==
null
:
this
.
getCreateTime
().
equals
(
other
.
getCreateTime
()))
&&
(
this
.
getInvitationCode
()
==
null
?
other
.
getInvitationCode
()
==
null
:
this
.
getInvitationCode
().
equals
(
other
.
getInvitationCode
()));
}
@Override
public
int
hashCode
()
{
final
int
prime
=
31
;
int
result
=
1
;
result
=
prime
*
result
+
((
getId
()
==
null
)
?
0
:
getId
().
hashCode
());
result
=
prime
*
result
+
((
getInvitee
()
==
null
)
?
0
:
getInvitee
().
hashCode
());
result
=
prime
*
result
+
((
getInviter
()
==
null
)
?
0
:
getInviter
().
hashCode
());
result
=
prime
*
result
+
((
getInviteePhone
()
==
null
)
?
0
:
getInviteePhone
().
hashCode
());
result
=
prime
*
result
+
((
getCreateTime
()
==
null
)
?
0
:
getCreateTime
().
hashCode
());
result
=
prime
*
result
+
((
getInvitationCode
()
==
null
)
?
0
:
getInvitationCode
().
hashCode
());
return
result
;
}
/**
* This enum was generated by MyBatis Generator.
* This enum corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
enum
Column
{
id
(
"id"
,
"id"
,
"INTEGER"
,
false
),
invitee
(
"invitee"
,
"invitee"
,
"BIGINT"
,
false
),
inviter
(
"inviter"
,
"inviter"
,
"BIGINT"
,
false
),
inviteePhone
(
"invitee_phone"
,
"inviteePhone"
,
"VARCHAR"
,
false
),
createTime
(
"create_time"
,
"createTime"
,
"TIMESTAMP"
,
false
),
invitationCode
(
"invitation_code"
,
"invitationCode"
,
"VARCHAR"
,
false
);
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
private
static
final
String
BEGINNING_DELIMITER
=
"`"
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
private
static
final
String
ENDING_DELIMITER
=
"`"
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
private
final
String
column
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
private
final
boolean
isColumnNameDelimited
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
private
final
String
javaProperty
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
private
final
String
jdbcType
;
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
String
value
()
{
return
this
.
column
;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
String
getValue
()
{
return
this
.
column
;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
String
getJavaProperty
()
{
return
this
.
javaProperty
;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
String
getJdbcType
()
{
return
this
.
jdbcType
;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
Column
(
String
column
,
String
javaProperty
,
String
jdbcType
,
boolean
isColumnNameDelimited
)
{
this
.
column
=
column
;
this
.
javaProperty
=
javaProperty
;
this
.
jdbcType
=
jdbcType
;
this
.
isColumnNameDelimited
=
isColumnNameDelimited
;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
String
desc
()
{
return
this
.
getEscapedColumnName
()
+
" DESC"
;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
String
asc
()
{
return
this
.
getEscapedColumnName
()
+
" ASC"
;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
static
Column
[]
excludes
(
Column
...
excludes
)
{
ArrayList
<
Column
>
columns
=
new
ArrayList
<>(
Arrays
.
asList
(
Column
.
values
()));
if
(
excludes
!=
null
&&
excludes
.
length
>
0
)
{
columns
.
removeAll
(
new
ArrayList
<>(
Arrays
.
asList
(
excludes
)));
}
return
columns
.
toArray
(
new
Column
[]{});
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
public
String
getEscapedColumnName
()
{
if
(
this
.
isColumnNameDelimited
)
{
return
new
StringBuilder
().
append
(
BEGINNING_DELIMITER
).
append
(
this
.
column
).
append
(
ENDING_DELIMITER
).
toString
();
}
else
{
return
this
.
column
;
}
}
}
}
\ No newline at end of file
ch-dao/src/main/java/com/wwdz/ch/db/domain/InviteRecordExample.java
0 → 100644
View file @
8fe103fd
This diff is collapsed.
Click to expand it.
ch-dao/src/main/java/com/wwdz/ch/db/dto/request/InvitationCodeRequestDto.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.dto.request
;
import
com.xxdxxs.entity.Entity
;
import
lombok.Data
;
import
java.util.Date
;
@Data
public
class
InvitationCodeRequestDto
extends
BaseRequestDto
implements
Entity
{
/**
* id
*/
private
Long
id
;
/**
* 邀请码
*/
private
String
code
;
/**
* 有效期起始时间
*/
private
Date
effectiveStartTime
;
/**
* 有效期结束时间
*/
private
Date
effectiveEndTime
;
/**
* 可使用的人数
*/
private
Integer
enabledNum
;
/**
* 申请人
*/
private
Long
applicant
;
/**
* 创建时间
*/
private
Date
createTime
;
/**
* 更新时间
*/
private
Date
updateTime
;
/**
* 创建人
*/
private
Integer
creator
;
/**
* 状态
*/
private
Integer
state
;
/**
* 备注
*/
private
String
remark
;
}
ch-dao/src/main/java/com/wwdz/ch/db/dto/request/InviteRecordRequestDto.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.dto.request
;
import
com.xxdxxs.entity.Entity
;
import
lombok.Data
;
import
java.util.Date
;
@Data
public
class
InviteRecordRequestDto
implements
Entity
{
private
Integer
id
;
/**
* 受邀人
*/
private
Long
invitee
;
/**
* 邀请人
*/
private
Long
inviter
;
/**
* 受邀人手机号
*/
private
String
inviteePhone
;
/**
* 创建时间(使用邀请码的时间)
*/
private
Date
createTime
;
/**
* 邀请码
*/
private
String
invitationCode
;
}
ch-dao/src/main/java/com/wwdz/ch/db/impl/InvitationCodeDaoImpl.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.impl
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
com.wwdz.ch.db.dao.InvitationCodeDao
;
import
com.wwdz.ch.db.domain.InvitationCode
;
import
com.wwdz.ch.db.domain.InvitationCodeExample
;
import
com.wwdz.ch.db.dto.request.InvitationCodeRequestDto
;
import
com.wwdz.ch.db.mapper.InvitationCodeMapper
;
import
com.xxdxxs.db.component.JdbcHelper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
@Repository
public
class
InvitationCodeDaoImpl
implements
InvitationCodeDao
{
@Autowired
InvitationCodeMapper
invitationCodeMapper
;
@Override
public
boolean
create
(
InvitationCode
invitationCode
)
{
int
num
=
invitationCodeMapper
.
insertSelective
(
invitationCode
);
return
num
>
0
;
}
@Override
public
boolean
update
(
InvitationCode
invitationCode
)
{
InvitationCodeExample
invitationCodeExample
=
new
InvitationCodeExample
();
InvitationCodeExample
.
Criteria
criteria
=
invitationCodeExample
.
createCriteria
();
criteria
.
andCodeEqualTo
(
invitationCode
.
getCode
());
int
num
=
invitationCodeMapper
.
updateByExampleSelective
(
invitationCode
,
invitationCodeExample
);
return
num
>
0
;
}
@Override
public
boolean
isExisted
(
String
code
)
{
InvitationCodeExample
invitationCodeExample
=
new
InvitationCodeExample
();
InvitationCodeExample
.
Criteria
criteria
=
invitationCodeExample
.
createCriteria
();
criteria
.
andCodeEqualTo
(
code
);
long
num
=
invitationCodeMapper
.
countByExample
(
invitationCodeExample
);
return
num
>
0
;
}
@Override
public
boolean
updateState
(
String
code
,
Integer
state
)
{
InvitationCodeExample
invitationCodeExample
=
new
InvitationCodeExample
();
InvitationCodeExample
.
Criteria
criteria
=
invitationCodeExample
.
createCriteria
();
criteria
.
andCodeEqualTo
(
code
);
InvitationCode
invitationCode
=
new
InvitationCode
();
invitationCode
.
setState
(
state
);
int
num
=
invitationCodeMapper
.
updateByExampleSelective
(
invitationCode
,
invitationCodeExample
);
return
num
>
0
;
}
@Override
public
List
<
InvitationCode
>
findList
(
InvitationCodeRequestDto
dto
)
{
InvitationCodeExample
invitationCodeExample
=
new
InvitationCodeExample
();
InvitationCodeExample
.
Criteria
criteria
=
invitationCodeExample
.
createCriteria
();
JdbcHelper
.
ifPresent
(
dto
.
getCode
(),
criteria:
:
andCodeEqualTo
);
return
invitationCodeMapper
.
selectByExample
(
invitationCodeExample
);
}
@Override
public
PageInfo
<
InvitationCode
>
findByPage
(
InvitationCodeRequestDto
dto
)
{
InvitationCodeExample
invitationCodeExample
=
new
InvitationCodeExample
();
InvitationCodeExample
.
Criteria
criteria
=
invitationCodeExample
.
createCriteria
();
PageHelper
.
startPage
(
dto
.
getPage
(),
dto
.
getLimit
());
List
<
InvitationCode
>
list
=
invitationCodeMapper
.
selectByExample
(
invitationCodeExample
);
return
new
PageInfo
<>(
list
);
}
}
ch-dao/src/main/java/com/wwdz/ch/db/impl/InviteRecordDaoImpl.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.impl
;
import
com.wwdz.ch.db.dao.InviteRecordDao
;
import
com.wwdz.ch.db.domain.InviteRecord
;
import
com.wwdz.ch.db.domain.InviteRecordExample
;
import
com.wwdz.ch.db.dto.request.InviteRecordRequestDto
;
import
com.wwdz.ch.db.mapper.InviteRecordMapper
;
import
com.xxdxxs.db.component.JdbcHelper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Repository
;
import
java.util.Date
;
import
java.util.List
;
@Repository
public
class
InviteRecordDaoImpl
implements
InviteRecordDao
{
@Autowired
InviteRecordMapper
inviteRecordMapper
;
@Override
public
boolean
create
(
InviteRecord
inviteRecord
)
{
int
num
=
inviteRecordMapper
.
insertSelective
(
inviteRecord
);
return
num
>
0
;
}
@Override
public
boolean
isExisted
(
String
phone
)
{
InviteRecordExample
inviteRecordExample
=
new
InviteRecordExample
();
InviteRecordExample
.
Criteria
criteria
=
inviteRecordExample
.
createCriteria
();
criteria
.
andInviteePhoneEqualTo
(
phone
);
long
num
=
inviteRecordMapper
.
countByExample
(
inviteRecordExample
);
return
num
>
0
;
}
@Override
public
List
<
InviteRecord
>
findList
(
InviteRecordRequestDto
dto
)
{
InviteRecordExample
inviteRecordExample
=
new
InviteRecordExample
();
InviteRecordExample
.
Criteria
criteria
=
inviteRecordExample
.
createCriteria
();
JdbcHelper
.
ifPresent
(
dto
.
getInvitationCode
(),
criteria:
:
andInvitationCodeEqualTo
);
return
inviteRecordMapper
.
selectByExample
(
inviteRecordExample
);
}
@Override
public
long
countByCode
(
String
invitationCode
)
{
InviteRecordExample
inviteRecordExample
=
new
InviteRecordExample
();
InviteRecordExample
.
Criteria
criteria
=
inviteRecordExample
.
createCriteria
();
criteria
.
andInvitationCodeEqualTo
(
invitationCode
);
return
inviteRecordMapper
.
countByExample
(
inviteRecordExample
);
}
}
ch-dao/src/main/java/com/wwdz/ch/db/mapper/InvitationCodeMapper.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.mapper
;
import
com.wwdz.ch.db.domain.InvitationCode
;
import
com.wwdz.ch.db.domain.InvitationCodeExample
;
import
java.util.List
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
@Mapper
public
interface
InvitationCodeMapper
{
long
countByExample
(
InvitationCodeExample
example
);
int
deleteByExample
(
InvitationCodeExample
example
);
int
deleteByPrimaryKey
(
Long
id
);
int
insert
(
InvitationCode
record
);
int
insertSelective
(
InvitationCode
record
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invitation_code
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
InvitationCode
selectOneByExample
(
InvitationCodeExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invitation_code
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
InvitationCode
selectOneByExampleSelective
(
@Param
(
"example"
)
InvitationCodeExample
example
,
@Param
(
"selective"
)
InvitationCode
.
Column
...
selective
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invitation_code
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
List
<
InvitationCode
>
selectByExampleSelective
(
@Param
(
"example"
)
InvitationCodeExample
example
,
@Param
(
"selective"
)
InvitationCode
.
Column
...
selective
);
List
<
InvitationCode
>
selectByExample
(
InvitationCodeExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invitation_code
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
InvitationCode
selectByPrimaryKeySelective
(
@Param
(
"id"
)
Long
id
,
@Param
(
"selective"
)
InvitationCode
.
Column
...
selective
);
InvitationCode
selectByPrimaryKey
(
Long
id
);
int
updateByExampleSelective
(
@Param
(
"record"
)
InvitationCode
record
,
@Param
(
"example"
)
InvitationCodeExample
example
);
int
updateByExample
(
@Param
(
"record"
)
InvitationCode
record
,
@Param
(
"example"
)
InvitationCodeExample
example
);
int
updateByPrimaryKeySelective
(
InvitationCode
record
);
int
updateByPrimaryKey
(
InvitationCode
record
);
}
\ No newline at end of file
ch-dao/src/main/java/com/wwdz/ch/db/mapper/InviteRecordMapper.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.db.mapper
;
import
com.wwdz.ch.db.domain.InviteRecord
;
import
com.wwdz.ch.db.domain.InviteRecordExample
;
import
java.util.List
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
@Mapper
public
interface
InviteRecordMapper
{
long
countByExample
(
InviteRecordExample
example
);
int
deleteByExample
(
InviteRecordExample
example
);
int
deleteByPrimaryKey
(
Integer
id
);
int
insert
(
InviteRecord
record
);
int
insertSelective
(
InviteRecord
record
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
InviteRecord
selectOneByExample
(
InviteRecordExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
InviteRecord
selectOneByExampleSelective
(
@Param
(
"example"
)
InviteRecordExample
example
,
@Param
(
"selective"
)
InviteRecord
.
Column
...
selective
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
List
<
InviteRecord
>
selectByExampleSelective
(
@Param
(
"example"
)
InviteRecordExample
example
,
@Param
(
"selective"
)
InviteRecord
.
Column
...
selective
);
List
<
InviteRecord
>
selectByExample
(
InviteRecordExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table invite_record
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
InviteRecord
selectByPrimaryKeySelective
(
@Param
(
"id"
)
Integer
id
,
@Param
(
"selective"
)
InviteRecord
.
Column
...
selective
);
InviteRecord
selectByPrimaryKey
(
Integer
id
);
int
updateByExampleSelective
(
@Param
(
"record"
)
InviteRecord
record
,
@Param
(
"example"
)
InviteRecordExample
example
);
int
updateByExample
(
@Param
(
"record"
)
InviteRecord
record
,
@Param
(
"example"
)
InviteRecordExample
example
);
int
updateByPrimaryKeySelective
(
InviteRecord
record
);
int
updateByPrimaryKey
(
InviteRecord
record
);
}
\ No newline at end of file
ch-dao/src/main/resources/com/wwdz/ch/db/mapper/InvitationCodeMapper.xml
0 → 100644
View file @
8fe103fd
This diff is collapsed.
Click to expand it.
ch-dao/src/main/resources/com/wwdz/ch/db/mapper/InviteRecordMapper.xml
0 → 100644
View file @
8fe103fd
This diff is collapsed.
Click to expand it.
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/InviteRecordServiceImpl.java
0 → 100644
View file @
8fe103fd
This diff is collapsed.
Click to expand it.
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/InviteRecordService.java
0 → 100644
View file @
8fe103fd
package
com.wwdz.ch.wx.service
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.InviteRecordRequestDto
;
public
interface
InviteRecordService
{
Result
create
(
InviteRecordRequestDto
dto
);
Result
isExisted
(
String
phone
);
Result
findList
(
InviteRecordRequestDto
dto
);
/**
* 校验邀请码
* @param dto
* @return
*/
Result
checkCode
(
InviteRecordRequestDto
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