Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
向汉
/
uc-engine
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
Commit
07a5bc8c
...
07a5bc8cf2759a04435a8e2faecc701086125c28
authored
2022-03-21 00:28:52 +0800
by
xianghan
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
1.优化
1 parent
2cca5ac9
Show whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
311 additions
and
49 deletions
member-service-impl/src/main/java/com/topdraw/business/module/member/address/domain/MemberAddressBuilder.java
member-service-impl/src/main/java/com/topdraw/business/module/member/address/rest/MemberAddressController.java
member-service-impl/src/main/java/com/topdraw/business/module/member/profile/rest/MemberProfileController.java
member-service-impl/src/main/java/com/topdraw/business/module/member/profile/service/MemberProfileService.java
member-service-impl/src/main/java/com/topdraw/business/module/member/profile/service/impl/MemberProfileServiceImpl.java
member-service-impl/src/main/java/com/topdraw/business/module/member/relatedinfo/domain/MemberRelatedInfoBuilder.java
member-service-impl/src/main/java/com/topdraw/business/module/member/relatedinfo/rest/MemberRelatedInfoController.java
member-service-impl/src/main/java/com/topdraw/business/module/member/relatedinfo/service/impl/MemberRelatedInfoServiceImpl.java
member-service-impl/src/main/java/com/topdraw/business/module/member/rest/MemberController.java
member-service-impl/src/main/java/com/topdraw/business/module/user/weixin/domain/UserWeixin.java
member-service-impl/src/main/java/com/topdraw/business/module/user/weixin/domain/UserWeixinBuilder.java
member-service-impl/src/main/java/com/topdraw/business/process/rest/UserOperationController.java
member-service-impl/src/main/java/com/topdraw/business/process/service/UserOperationService.java
member-service-impl/src/main/java/com/topdraw/business/process/service/impl/UserOperationServiceImpl.java
member-service-impl/src/main/java/com/topdraw/business/process/service/impl/member/MemberOperationServiceImpl.java
member-service-impl/src/main/java/com/topdraw/business/process/service/impl/member/MemberProfileOperationServiceImpl.java
member-service-impl/src/main/java/com/topdraw/business/process/service/impl/user/UserWeixinOperationServiceImpl.java
member-service-impl/src/main/java/com/topdraw/business/process/service/user/UserWeixinOperationService.java
member-service-impl/src/main/java/com/topdraw/business/module/member/address/domain/MemberAddressBuilder.java
View file @
07a5bc8
...
...
@@ -89,13 +89,13 @@ public class MemberAddressBuilder {
MemberAddress
memberAddress
=
new
MemberAddress
();
memberAddress
.
setId
(
Objects
.
nonNull
(
id
)?
null
:
id
);
memberAddress
.
setMemberId
(
Objects
.
non
Null
(
memberId
)?
null
:
memberId
);
memberAddress
.
setMemberId
(
Objects
.
is
Null
(
memberId
)?
null
:
memberId
);
memberAddress
.
setMemberCode
(
stringIsNull
(
memberCode
));
memberAddress
.
setSequence
(
Objects
.
nonNull
(
sequence
)?
null
:
DEFAULT_VALUE_1
);
memberAddress
.
setType
(
Objects
.
non
Null
(
type
)?
null
:
DEFAULT_VALUE_0
);
memberAddress
.
setType
(
Objects
.
is
Null
(
type
)?
null
:
DEFAULT_VALUE_0
);
memberAddress
.
setIsDefault
(
Objects
.
nonNull
(
isDefault
)?
null
:
DEFAULT_VALUE_0
);
memberAddress
.
setStatus
(
Objects
.
non
Null
(
status
)?
null
:
DEFAULT_VALUE_1
);
memberAddress
.
setStatus
(
Objects
.
is
Null
(
status
)?
null
:
DEFAULT_VALUE_1
);
memberAddress
.
setContactor
(
stringIsNull
(
contactor
));
memberAddress
.
setCellphone
(
stringIsNull
(
cellphone
));
...
...
member-service-impl/src/main/java/com/topdraw/business/module/member/address/rest/MemberAddressController.java
View file @
07a5bc8
package
com
.
topdraw
.
business
.
module
.
member
.
address
.
rest
;
import
com.topdraw.annotation.AnonymousAccess
;
import
com.topdraw.aop.log.Log
;
import
com.topdraw.business.module.common.validated.CreateGroup
;
import
com.topdraw.business.module.common.validated.UpdateGroup
;
...
...
@@ -30,6 +31,7 @@ public class MemberAddressController {
@Log
(
"新增会员地址"
)
@RequestMapping
(
value
=
"/create"
)
@ApiOperation
(
"新增会员地址"
)
@AnonymousAccess
public
ResultInfo
create
(
@Validated
(
value
=
{
CreateGroup
.
class
})
@RequestBody
MemberAddress
resources
)
{
log
.
info
(
"memberAddress ==>> create ==> param ==>> [{}]"
,
resources
);
this
.
memberAddressOperationService
.
create
(
resources
);
...
...
@@ -40,6 +42,7 @@ public class MemberAddressController {
@Log
(
"修改会员地址"
)
@RequestMapping
(
value
=
"/update"
)
@ApiOperation
(
"修改会员地址"
)
@AnonymousAccess
public
ResultInfo
update
(
@Validated
(
value
=
{
UpdateGroup
.
class
})
@RequestBody
MemberAddress
resources
)
{
log
.
info
(
"memberAddress ==>> update ==> param ==>> [{}]"
,
resources
);
this
.
memberAddressOperationService
.
update
(
resources
);
...
...
@@ -50,6 +53,7 @@ public class MemberAddressController {
@Log
(
"删除会员地址"
)
@RequestMapping
(
value
=
"/delete/{id}"
)
@ApiOperation
(
"删除会员地址"
)
@AnonymousAccess
public
ResultInfo
delete
(
@PathVariable
Long
resources
)
{
log
.
info
(
"memberAddress ==>> delete ==> param ==>> [{}]"
,
resources
);
this
.
memberAddressOperationService
.
delete
(
resources
);
...
...
member-service-impl/src/main/java/com/topdraw/business/module/member/profile/rest/MemberProfileController.java
View file @
07a5bc8
package
com
.
topdraw
.
business
.
module
.
member
.
profile
.
rest
;
import
com.topdraw.annotation.AnonymousAccess
;
import
com.topdraw.aop.log.Log
;
import
com.topdraw.business.module.common.validated.UpdateGroup
;
import
com.topdraw.business.process.service.member.MemberProfileOperationService
;
import
com.topdraw.common.ResultInfo
;
import
com.topdraw.business.module.member.profile.domain.MemberProfile
;
...
...
@@ -28,8 +30,9 @@ public class MemberProfileController {
@Log
(
"修改会员属性"
)
@RequestMapping
(
value
=
"/update"
)
@ApiOperation
(
"修改会员属性"
)
@AnonymousAccess
@Deprecated
public
ResultInfo
update
(
@Validated
@RequestBody
MemberProfile
resources
)
{
public
ResultInfo
update
(
@Validated
(
value
=
{
UpdateGroup
.
class
})
@RequestBody
MemberProfile
resources
)
{
log
.
info
(
"memberProfile ==>> update ==>> resources ===>> [{}]"
,
resources
);
this
.
memberProfileOperationService
.
update
(
resources
);
...
...
@@ -38,4 +41,12 @@ public class MemberProfileController {
return
ResultInfo
.
success
();
}
@PutMapping
@ApiOperation
(
"修改MemberProfile"
)
@AnonymousAccess
public
ResultInfo
updateMemberProfileAndMember
(
@Validated
@RequestBody
MemberProfile
resources
)
{
log
.
info
(
"MemberProfileServiceImpl ==>> update ==>> resources ===>> [{}]"
,
resources
);
this
.
memberProfileOperationService
.
updateMemberProfileAndMember
(
resources
);
return
ResultInfo
.
success
();
}
}
...
...
member-service-impl/src/main/java/com/topdraw/business/module/member/profile/service/MemberProfileService.java
View file @
07a5bc8
...
...
@@ -4,6 +4,7 @@ import com.topdraw.business.module.member.domain.Member;
import
com.topdraw.business.module.member.profile.domain.MemberProfile
;
import
com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO
;
import
com.topdraw.business.module.member.profile.service.dto.MemberProfileQueryCriteria
;
import
com.topdraw.business.module.member.service.dto.MemberDTO
;
import
org.springframework.data.domain.Pageable
;
import
java.util.Map
;
import
java.util.List
;
...
...
@@ -79,5 +80,5 @@ public interface MemberProfileService {
* 修改会员属性并同步会员信息
* @param resources
*/
void
updateMemberProfileAndMember
(
MemberProfile
resources
);
void
updateMemberProfileAndMember
(
MemberProfile
resources
,
MemberDTO
memberDTO
);
}
...
...
member-service-impl/src/main/java/com/topdraw/business/module/member/profile/service/impl/MemberProfileServiceImpl.java
View file @
07a5bc8
...
...
@@ -123,8 +123,7 @@ public class MemberProfileServiceImpl implements MemberProfileService {
MemberProfile
memberProfile
=
new
MemberProfile
();
BeanUtils
.
copyProperties
(
resources
,
memberProfile
);
MemberProfile
_memberProfile
=
this
.
memberProfileRepository
.
save
(
memberProfile
);
// 同步会员信息
this
.
synchronizedMemberData
(
resources
);
MemberProfileDTO
memberProfileDTO
=
new
MemberProfileDTO
();
BeanUtils
.
copyProperties
(
_memberProfile
,
memberProfileDTO
);
...
...
@@ -150,36 +149,27 @@ public class MemberProfileServiceImpl implements MemberProfileService {
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
updateMemberProfileAndMember
(
MemberProfile
resources
)
{
public
void
updateMemberProfileAndMember
(
MemberProfile
resources
,
MemberDTO
memberDTO
)
{
log
.
info
(
"MemberProfileServiceImpl ==>> updateMemberProfileAndMember ==>> resources ===>> [{}]"
,
resources
);
this
.
update
(
resources
);
// 同步会员信息
this
.
synchronizedMemberData
(
resources
,
memberDTO
);
}
private
void
synchronizedMemberData
(
String
nickName
,
Integer
gender
,
String
birthday
,
String
avatarUrl
,
Long
memberId
,
String
memberCode
)
{
MemberProfile
memberProfile
=
new
MemberProfile
();
memberProfile
.
setMemberId
(
memberId
);
memberProfile
.
setMemberCode
(
memberCode
);
memberProfile
.
setRealname
(
nickName
);
memberProfile
.
setGender
(
gender
);
memberProfile
.
setBirthday
(
birthday
);
memberProfile
.
setAvatarUrl
(
avatarUrl
);
this
.
synchronizedMemberData
(
memberProfile
);
}
private
void
synchronizedMemberData
(
MemberProfile
resources
)
{
private
void
synchronizedMemberData
(
MemberProfile
resources
,
MemberDTO
memberDTO
)
{
log
.
info
(
"updateMemberProfileAndMember ==>> resources ==>> [{}]"
,
resources
);
memberDTO
.
setId
(
resources
.
getMemberId
());
memberDTO
.
setCode
(
resources
.
getMemberCode
());
memberDTO
.
setNickname
(
resources
.
getRealname
());
memberDTO
.
setGender
(
resources
.
getGender
());
memberDTO
.
setBirthday
(
resources
.
getBirthday
());
memberDTO
.
setAvatarUrl
(
resources
.
getAvatarUrl
());
Member
member
=
new
Member
();
member
.
setId
(
resources
.
getMemberId
());
member
.
setCode
(
resources
.
getMemberCode
());
member
.
setNickname
(
resources
.
getRealname
());
member
.
setGender
(
resources
.
getGender
());
member
.
setBirthday
(
resources
.
getBirthday
());
member
.
setAvatarUrl
(
resources
.
getAvatarUrl
());
BeanUtils
.
copyProperties
(
memberDTO
,
member
);
this
.
memberService
.
update
(
member
);
}
}
...
...
member-service-impl/src/main/java/com/topdraw/business/module/member/relatedinfo/domain/MemberRelatedInfoBuilder.java
View file @
07a5bc8
...
...
@@ -23,7 +23,7 @@ public class MemberRelatedInfoBuilder {
private
static
final
Integer
DEFAULT_VALUE_0
=
0
;
public
static
MemberRelatedInfo
build
(
MemberRelatedInfo
memberRelatedInfo
){
return
build
(
memberRelatedInfo
.
getId
(),
memberRelatedInfo
.
getMemberCode
(),
memberRelatedInfo
.
getId
(),
memberRelatedInfo
.
getName
(),
memberRelatedInfo
.
getSex
(),
return
build
(
memberRelatedInfo
.
get
Member
Id
(),
memberRelatedInfo
.
getMemberCode
(),
memberRelatedInfo
.
getId
(),
memberRelatedInfo
.
getName
(),
memberRelatedInfo
.
getSex
(),
memberRelatedInfo
.
getCellphone
(),
memberRelatedInfo
.
getIdCard
(),
memberRelatedInfo
.
getBirthday
(),
memberRelatedInfo
.
getAvatarUrl
(),
memberRelatedInfo
.
getType
());
}
...
...
member-service-impl/src/main/java/com/topdraw/business/module/member/relatedinfo/rest/MemberRelatedInfoController.java
View file @
07a5bc8
package
com
.
topdraw
.
business
.
module
.
member
.
relatedinfo
.
rest
;
import
com.topdraw.annotation.AnonymousAccess
;
import
com.topdraw.aop.log.Log
;
import
com.topdraw.business.module.common.validated.CreateGroup
;
import
com.topdraw.business.module.common.validated.UpdateGroup
;
...
...
@@ -37,6 +38,7 @@ public class MemberRelatedInfoController {
@Log
(
"新增相关人员"
)
@RequestMapping
(
value
=
"/create"
)
@ApiOperation
(
"新增相关人员"
)
@AnonymousAccess
public
ResultInfo
create
(
@Validated
(
value
=
{
CreateGroup
.
class
})
@RequestBody
MemberRelatedInfo
resources
)
{
log
.
info
(
"memberRelatedInfo ==>> create ==>> resources ===>> [{}]"
,
resources
);
...
...
@@ -48,6 +50,7 @@ public class MemberRelatedInfoController {
@Log
(
"修改相关人员"
)
@RequestMapping
(
value
=
"/update"
)
@ApiOperation
(
"修改相关人员"
)
@AnonymousAccess
public
ResultInfo
update
(
@Validated
(
value
=
{
UpdateGroup
.
class
})
@RequestBody
MemberRelatedInfo
resources
)
{
log
.
info
(
"memberRelatedInfo ==>> update ==>> resources ===>> [{}]"
,
resources
);
...
...
@@ -73,6 +76,7 @@ public class MemberRelatedInfoController {
@Log
(
"删除相关人员"
)
@RequestMapping
(
value
=
"/delete/{id}"
)
@ApiOperation
(
"删除相关人员"
)
@AnonymousAccess
public
ResultInfo
delete
(
@PathVariable
(
value
=
"id"
)
Long
resources
)
{
log
.
info
(
"memberRelatedInfo ==>> delete ==>> resources ===>> [{}]"
,
resources
);
this
.
memberRelatedInfoOperationService
.
delete
(
resources
);
...
...
member-service-impl/src/main/java/com/topdraw/business/module/member/relatedinfo/service/impl/MemberRelatedInfoServiceImpl.java
View file @
07a5bc8
...
...
@@ -15,13 +15,13 @@ import com.topdraw.business.module.member.relatedinfo.service.MemberRelatedInfoS
import
com.topdraw.business.module.member.relatedinfo.service.dto.MemberRelatedInfoDTO
;
import
com.topdraw.business.module.member.relatedinfo.service.mapper.MemberRelatedInfoMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.dao.EmptyResultDataAccessException
;
import
org.springframework.util.Assert
;
import
org.springframework.util.StringUtils
;
import
java.util.Objects
;
...
...
@@ -61,7 +61,7 @@ public class MemberRelatedInfoServiceImpl implements MemberRelatedInfoService {
log
.
info
(
"MemberRelatedInfoServiceImpl ==>> create ==>> param ==>> [{}]"
,
resources
);
String
idCard
=
resources
.
getIdCard
();
Long
memberId
=
resources
.
getMemberId
();
if
(
Objects
.
nonNull
(
memberId
)
&&
!
StringUtils
.
hasText
(
idCard
)
&&
!
idCard
.
equalsIgnoreCase
(
DEFAULT_IDCARD
)
)
{
if
(
Objects
.
nonNull
(
memberId
)
&&
StringUtils
.
isNotBlank
(
idCard
)
&&
!
idCard
.
equalsIgnoreCase
(
DEFAULT_IDCARD
)
)
{
MemberRelatedInfo
memberRelatedInfo
=
this
.
findByMemberIdAndIdCard
(
resources
);
if
(
Objects
.
nonNull
(
memberRelatedInfo
))
// 数据已存在
...
...
@@ -95,7 +95,7 @@ public class MemberRelatedInfoServiceImpl implements MemberRelatedInfoService {
*/
private
void
encodeRealname
(
MemberRelatedInfo
resources
){
String
name
=
resources
.
getName
();
if
(
StringUtils
.
hasText
(
name
))
{
if
(
StringUtils
.
isNotBlank
(
name
))
{
String
nickNameEncode
=
Base64Util
.
encode
(
name
);
if
(!
nickNameEncode
.
equalsIgnoreCase
(
name
))
resources
.
setName
(
nickNameEncode
);
...
...
member-service-impl/src/main/java/com/topdraw/business/module/member/rest/MemberController.java
View file @
07a5bc8
package
com
.
topdraw
.
business
.
module
.
member
.
rest
;
import
com.topdraw.annotation.AnonymousAccess
;
import
com.topdraw.aop.log.Log
;
import
com.topdraw.business.module.common.validated.CreateGroup
;
import
com.topdraw.business.module.common.validated.UpdateGroup
;
import
com.topdraw.business.module.member.domain.Member
;
import
com.topdraw.business.module.member.service.dto.MemberDTO
;
import
com.topdraw.business.module.user.iptv.domain.UserTv
;
import
com.topdraw.business.process.service.member.MemberOperationService
;
import
com.topdraw.business.process.service.UserOperationService
;
...
...
@@ -12,9 +14,12 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.Assert
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.Objects
;
/**
* @author XiangHan
* @date 2021-10-22
...
...
@@ -33,7 +38,8 @@ public class MemberController {
@Log
(
"为大屏账户创建会员"
)
@RequestMapping
(
value
=
"/createMemberByUserTv"
)
@RequestMapping
(
value
=
"/createMemberByUs"
+
"@AnonymousAccesserTv"
)
@ApiOperation
(
"为大屏账户创建会员"
)
@Deprecated
public
ResultInfo
createMemberByUserTv
(
@Validated
(
value
=
{
CreateGroup
.
class
})
@RequestBody
UserTv
resources
)
{
...
...
@@ -45,6 +51,7 @@ public class MemberController {
@Log
(
"手动修改vip"
)
@RequestMapping
(
value
=
"/doUpdateVipByCode"
)
@AnonymousAccess
@ApiOperation
(
"手动修改vip"
)
public
ResultInfo
doUpdateVipByCode
(
@Validated
(
value
=
{
UpdateGroup
.
class
})
@RequestBody
Member
resources
)
{
log
.
info
(
"member ==>> doUpdateVipByCode ==>> param ==>> [{}]"
,
resources
);
...
...
@@ -52,4 +59,17 @@ public class MemberController {
log
.
info
(
"member ==>> doUpdateVipByCode ==>> result ==>> [{}]"
,
resources
);
return
ResultInfo
.
success
();
}
@Log
(
"修改会员信息"
)
@PutMapping
(
value
=
"/update"
)
@ApiOperation
(
"修改会员信息"
)
@AnonymousAccess
public
ResultInfo
update
(
@Validated
(
value
=
{
UpdateGroup
.
class
})
@RequestBody
Member
resources
)
{
log
.
info
(
"member ==>> update ==>> param ==>> [{}]"
,
resources
);
MemberDTO
memberDTO
=
this
.
memberOperationService
.
update
(
resources
);
log
.
info
(
"member ==>> update ==>> result ==>> [{}]"
,
resources
);
return
ResultInfo
.
success
(
memberDTO
);
}
}
...
...
member-service-impl/src/main/java/com/topdraw/business/module/user/weixin/domain/UserWeixin.java
View file @
07a5bc8
package
com
.
topdraw
.
business
.
module
.
user
.
weixin
.
domain
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.topdraw.business.module.common.domain.AsyncMqModule
;
import
com.topdraw.business.module.common.validated.CreateGroup
;
import
lombok.Data
;
...
...
@@ -135,6 +136,7 @@ public class UserWeixin extends AsyncMqModule implements Serializable {
private
String
sourceEntity
;
/** 授权时间 */
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@Column
(
name
=
"auth_time"
)
private
Timestamp
authTime
;
...
...
member-service-impl/src/main/java/com/topdraw/business/module/user/weixin/domain/UserWeixinBuilder.java
View file @
07a5bc8
...
...
@@ -41,6 +41,7 @@ public class UserWeixinBuilder {
public
static
UserWeixin
build
(
UserWeixin
userWeixin
){
return
build
(
userWeixin
.
getId
(),
userWeixin
.
getMemberId
(),
userWeixin
.
getMemberCode
(),
userWeixin
.
getUnionid
(),
userWeixin
.
getAppid
(),
userWeixin
.
getOpenid
(),
userWeixin
.
getStatus
(),
userWeixin
.
getSyncStatus
(),
userWeixin
.
getNickname
(),
userWeixin
.
getHeadimgurl
(),
...
...
@@ -51,10 +52,24 @@ public class UserWeixinBuilder {
userWeixin
.
getCity
(),
userWeixin
.
getSex
());
}
public
static
UserWeixin
build
(
Long
memberId
,
String
memberCode
,
UserWeixin
userWeixin
){
return
build
(
userWeixin
.
getId
(),
memberId
,
memberCode
,
userWeixin
.
getUnionid
(),
userWeixin
.
getAppid
(),
userWeixin
.
getOpenid
(),
userWeixin
.
getStatus
(),
userWeixin
.
getSyncStatus
(),
userWeixin
.
getNickname
(),
userWeixin
.
getHeadimgurl
(),
userWeixin
.
getPrivilege
(),
userWeixin
.
getRefreshToken
(),
userWeixin
.
getAccessToken
(),
userWeixin
.
getExpiresIn
(),
userWeixin
.
getExpiresTime
(),
userWeixin
.
getDescription
(),
userWeixin
.
getCreateBy
(),
userWeixin
.
getUpdateBy
(),
userWeixin
.
getSourceType
(),
userWeixin
.
getSourceId
(),
userWeixin
.
getSourceDesc
(),
userWeixin
.
getSourceUser
(),
userWeixin
.
getSourceEntity
(),
userWeixin
.
getCountry
(),
userWeixin
.
getProvince
(),
userWeixin
.
getCity
(),
userWeixin
.
getSex
());
}
public
static
UserWeixin
build
(
Long
memberId
,
UserWeixin
userWeixin
){
return
build
(
userWeixin
.
getId
(),
memberId
,
userWeixin
.
getMemberCode
(),
userWeixin
.
getUnionid
(),
userWeixin
.
getAppid
(),
userWeixin
.
getOpenid
(),
userWeixin
.
getStatus
(),
userWeixin
.
getSyncStatus
(),
userWeixin
.
getNickname
(),
userWeixin
.
getHeadimgurl
(),
...
...
@@ -68,6 +83,7 @@ public class UserWeixinBuilder {
public
static
UserWeixin
build
(
Member
member
,
UserWeixin
userWeixin
)
{
return
build
(
userWeixin
.
getId
(),
member
.
getId
(),
member
.
getCode
(),
userWeixin
.
getUnionid
(),
userWeixin
.
getAppid
(),
userWeixin
.
getOpenid
(),
userWeixin
.
getStatus
(),
userWeixin
.
getSyncStatus
(),
userWeixin
.
getNickname
(),
userWeixin
.
getHeadimgurl
(),
...
...
@@ -81,6 +97,7 @@ public class UserWeixinBuilder {
public
static
UserWeixin
build
(
Long
id
,
Long
memberId
,
String
memberCode
,
String
unionId
,
String
appId
,
String
openId
,
Integer
status
,
Integer
syncStatus
,
String
nickname
,
String
headimgurl
,
...
...
@@ -100,6 +117,7 @@ public class UserWeixinBuilder {
UserWeixin
userWeixin
=
new
UserWeixin
();
userWeixin
.
setId
(
Objects
.
nonNull
(
id
)?
id:
null
);
userWeixin
.
setMemberId
(
memberId
);
userWeixin
.
setMemberCode
(
memberCode
);
userWeixin
.
setUnionid
(
StringUtils
.
isNotBlank
(
unionId
)?
unionId:
""
);
userWeixin
.
setAppid
(
StringUtils
.
isNotBlank
(
appId
)?
appId:
""
);
userWeixin
.
setOpenid
(
StringUtils
.
isNotBlank
(
openId
)?
openId:
""
);
...
...
member-service-impl/src/main/java/com/topdraw/business/process/rest/UserOperationController.java
View file @
07a5bc8
...
...
@@ -20,6 +20,7 @@ import com.topdraw.business.process.service.UserOperationService;
import
com.topdraw.common.ResultInfo
;
import
com.topdraw.config.RedisKeyUtil
;
import
com.topdraw.exception.BadRequestException
;
import
com.topdraw.exception.EntityNotFoundException
;
import
com.topdraw.exception.GlobeExceptionMsg
;
import
com.topdraw.util.Base64Util
;
import
com.topdraw.util.JSONUtil
;
...
...
@@ -205,8 +206,7 @@ public class UserOperationController {
@AnonymousAccess
public
ResultInfo
saveUserInfo
(
@RequestBody
String
data
)
{
log
.
info
(
"UserOperationController ==> saveUserInfo ==>> param ==> [{}]"
,
data
);
log
.
info
(
"saveUserInfo ==> input ==> [{}]"
,
data
);
Assert
.
notNull
(
data
,
"用户数据不可为空"
);
JSONObject
json
=
JSONObject
.
parseObject
(
data
);
...
...
@@ -214,23 +214,42 @@ public class UserOperationController {
String
unionid
=
json
.
getString
(
"unionid"
);
Assert
.
state
(
StrUtil
.
isNotBlank
(
unionid
),
"unionid不可为空"
);
List
<
Object
>
resultList
=
new
ArrayList
<>();
// 大屏侧通过返回值来展示对应的小程序页面
String
result
=
SUBSCRIBE
;
String
platformAccount1
=
""
;
// 保存大小屏信息到redis同时返回小屏信息
UserWeixinDTO
userWeixinDTO
=
this
.
userOperationService
.
saveUserInfo
(
data
);
// 小屏会员
MemberDTO
memberDTO
=
this
.
memberService
.
findById
(
userWeixinDTO
.
getMemberId
());
// 小屏用户不存在或者关注状态为未关注(0),返回未关注
if
(
Objects
.
isNull
(
userWeixinDTO
)
||
Objects
.
isNull
(
userWeixinDTO
.
getId
())
||
userWeixinDTO
.
getStatus
()
!=
SUBSCRIBE_STATUS
)
{
result
=
UNSUBSCRIBE
;
return
ResultInfo
.
success
(
result
);
if
(
Objects
.
nonNull
(
memberDTO
))
{
// 检查是否绑定,返回绑定的大屏账户
UserTvDTO
userTvDTO
=
this
.
userOperationService
.
checkBind
(
memberDTO
);
if
(
Objects
.
nonNull
(
userTvDTO
))
{
platformAccount1
=
userTvDTO
.
getPlatformAccount
();
}
}
else
{
log
.
info
(
"userWeixinDTO ==>> [{}]"
,
userWeixinDTO
);
throw
new
EntityNotFoundException
(
MemberDTO
.
class
,
"code"
,
"member is null !!"
);
}
resultList
.
add
(
result
);
resultList
.
add
(
platformAccount1
);
log
.
info
(
"saveUserInfo ==>> result ==>> [{}]"
,
resultList
);
return
ResultInfo
.
success
(
resultList
);
}
/***************************************************************************************/
String
platformAccount1
=
""
;
// 关注未绑定
if
(
result
.
equalsIgnoreCase
(
SUBSCRIBE
))
{
// 小屏会员
MemberDTO
memberDTO
=
this
.
memberService
.
findById
(
userWeixinDTO
.
getMemberId
());
// redis中的大小屏信息
String
content
=
(
String
)
this
.
redisUtils
.
get
(
RedisKeyUtil
.
genSeSuSubscribeKey
(
unionid
));
...
...
@@ -268,7 +287,7 @@ public class UserOperationController {
}
/****************************************************************************************/
List
<
Object
>
resultList
=
new
ArrayList
<>();
resultList
.
add
(
result
);
resultList
.
add
(
platformAccount1
);
...
...
member-service-impl/src/main/java/com/topdraw/business/process/service/UserOperationService.java
View file @
07a5bc8
...
...
@@ -7,7 +7,6 @@ import com.topdraw.business.module.user.weixin.domain.UserWeixin;
import
com.topdraw.business.module.user.weixin.service.dto.UserWeixinDTO
;
import
com.topdraw.business.process.domian.weixin.BindBean
;
import
com.topdraw.business.process.domian.weixin.SubscribeBean
;
import
com.topdraw.business.process.domian.weixin.WeiXinUserBean
;
public
interface
UserOperationService
{
...
...
@@ -52,8 +51,6 @@ public interface UserOperationService {
*/
void
changeMainAccount
(
UserTv
userTv
);
/**
* 微信公众号关注
* 1.团粉,会员vip=0,则修改为vip=1
...
...
@@ -128,4 +125,10 @@ public interface UserOperationService {
*/
UserTvDTO
bind
(
MemberDTO
memberDTO
,
String
platformAccount
);
/**
*
* @param memberDTO
* @return
*/
UserTvDTO
checkBind
(
MemberDTO
memberDTO
);
}
...
...
member-service-impl/src/main/java/com/topdraw/business/process/service/impl/UserOperationServiceImpl.java
View file @
07a5bc8
...
...
@@ -179,7 +179,7 @@ public class UserOperationServiceImpl implements UserOperationService {
MemberDTO
memberDTO
=
this
.
createMember
(
_member
);
if
(
Objects
.
nonNull
(
memberDTO
))
{
UserWeixin
userWeixin
=
UserWeixinBuilder
.
build
(
resources
);
UserWeixin
userWeixin
=
UserWeixinBuilder
.
build
(
memberDTO
.
getId
(),
resources
);
return
this
.
createWeixinUser
(
userWeixin
,
memberDTO
.
getId
(),
memberDTO
.
getCode
());
}
...
...
@@ -1057,9 +1057,9 @@ public class UserOperationServiceImpl implements UserOperationService {
* @return
*/
private
UserWeixinDTO
createWeixinUser
(
UserWeixin
resource
,
Long
memberId
,
String
memberCode
){
if
(
Objects
.
nonNull
(
memberId
))
resource
.
setMemberId
(
memberId
);
if
(
StringUtils
.
isNotBlank
(
memberCode
))
resource
.
setMemberCode
(
memberCode
);
resource
.
setMemberId
(
memberId
);
resource
.
setMemberCode
(
memberCode
);
UserWeixin
userWeixin
=
this
.
userWeixinService
.
create
(
resource
);
UserWeixinDTO
userWeixinDTO
=
new
UserWeixinDTO
();
...
...
@@ -1067,4 +1067,14 @@ public class UserOperationServiceImpl implements UserOperationService {
return
userWeixinDTO
;
}
@Override
public
UserTvDTO
checkBind
(
MemberDTO
memberDTO
)
{
MemberDTO
memberDTO1
=
this
.
memberService
.
findByCode
(
memberDTO
.
getCode
());
if
(
Objects
.
nonNull
(
memberDTO1
.
getUserIptvId
()))
{
UserTvDTO
userTvDTO
=
this
.
userTvService
.
findById
(
memberDTO1
.
getUserIptvId
());
return
userTvDTO
;
}
return
null
;
}
}
...
...
member-service-impl/src/main/java/com/topdraw/business/process/service/impl/member/MemberOperationServiceImpl.java
View file @
07a5bc8
...
...
@@ -100,8 +100,8 @@ public class MemberOperationServiceImpl implements MemberOperationService {
@CachePut
(
key
=
"#resources.id"
)
@Override
public
MemberDTO
update
(
Member
resources
)
{
MemberDTO
member
=
this
.
memberService
.
update
(
resources
);
return
member
;
MemberDTO
member
DTO
=
this
.
memberService
.
update
(
resources
);
return
member
DTO
;
}
@Override
...
...
member-service-impl/src/main/java/com/topdraw/business/process/service/impl/member/MemberProfileOperationServiceImpl.java
View file @
07a5bc8
...
...
@@ -4,9 +4,14 @@ import com.topdraw.business.module.member.domain.Member;
import
com.topdraw.business.module.member.profile.domain.MemberProfile
;
import
com.topdraw.business.module.member.profile.service.MemberProfileService
;
import
com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO
;
import
com.topdraw.business.module.member.service.dto.MemberDTO
;
import
com.topdraw.business.process.service.member.MemberOperationService
;
import
com.topdraw.business.process.service.member.MemberProfileOperationService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.StringUtils
;
import
javax.validation.constraints.NotNull
;
/**
* @author :
...
...
@@ -22,6 +27,8 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation
@Autowired
private
MemberProfileService
memberProfileService
;
@Autowired
private
MemberOperationService
memberOperationService
;
@Override
public
MemberProfileDTO
findById
(
Long
id
)
{
...
...
@@ -70,6 +77,14 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation
@Override
public
void
updateMemberProfileAndMember
(
MemberProfile
resources
)
{
this
.
memberProfileService
.
updateMemberProfileAndMember
(
resources
);
String
memberCode
=
resources
.
getMemberCode
();
MemberDTO
memberDTO
=
null
;
if
(
StringUtils
.
isEmpty
(
memberCode
))
{
Long
memberId
=
resources
.
getMemberId
();
memberDTO
=
this
.
memberOperationService
.
findById
(
memberId
);
resources
.
setMemberCode
(
memberDTO
.
getCode
());
}
this
.
memberProfileService
.
updateMemberProfileAndMember
(
resources
,
memberDTO
);
}
}
...
...
member-service-impl/src/main/java/com/topdraw/business/process/service/impl/user/UserWeixinOperationServiceImpl.java
0 → 100644
View file @
07a5bc8
package
com
.
topdraw
.
business
.
process
.
service
.
impl
.
user
;
import
com.topdraw.business.module.user.weixin.domain.UserWeixin
;
import
com.topdraw.business.module.user.weixin.domain.UserWeixinBuilder
;
import
com.topdraw.business.module.user.weixin.repository.UserWeixinRepository
;
import
com.topdraw.business.module.user.weixin.service.UserWeixinService
;
import
com.topdraw.business.module.user.weixin.service.dto.UserWeixinDTO
;
import
com.topdraw.business.module.user.weixin.service.mapper.UserWeixinMapper
;
import
com.topdraw.business.process.service.user.UserWeixinOperationService
;
import
com.topdraw.utils.ValidationUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.dao.EmptyResultDataAccessException
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.Assert
;
/**
* @author XiangHan
* @date 2021-12-16
*/
@Service
@Transactional
(
propagation
=
Propagation
.
SUPPORTS
,
readOnly
=
true
,
rollbackFor
=
Exception
.
class
)
public
class
UserWeixinOperationServiceImpl
implements
UserWeixinOperationService
{
@Autowired
private
UserWeixinService
userWeixinService
;
@Override
public
UserWeixinDTO
findById
(
Long
id
)
{
return
this
.
userWeixinService
.
findById
(
id
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
UserWeixin
create
(
UserWeixin
resources
)
{
return
this
.
userWeixinService
.
create
(
resources
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
update
(
UserWeixin
resources
)
{
this
.
userWeixinService
.
update
(
resources
);
}
@Override
public
void
updateTime
(
UserWeixin
resources
)
{
this
.
userWeixinService
.
updateTime
(
resources
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
delete
(
Long
id
)
{
this
.
userWeixinService
.
delete
(
id
);
}
@Override
public
UserWeixinDTO
findFirstByMemberIdAndAppid
(
Long
memberId
,
String
appid
)
{
return
this
.
userWeixinService
.
findFirstByMemberIdAndAppid
(
memberId
,
appid
);
}
@Override
public
UserWeixinDTO
findFirstByUnionIdAndAppIdAndOpenId
(
String
unionId
,
String
appId
,
String
openId
)
{
return
this
.
userWeixinService
.
findFirstByUnionIdAndAppIdAndOpenId
(
unionId
,
appId
,
openId
);
}
@Override
public
UserWeixinDTO
findFirstByAppIdAndOpenId
(
String
appId
,
String
openId
)
{
return
this
.
userWeixinService
.
findFirstByAppIdAndOpenId
(
appId
,
openId
);
}
@Override
public
UserWeixinDTO
findFirstByUnionId
(
String
unionid
)
{
return
this
.
userWeixinService
.
findFirstByUnionId
(
unionid
);
}
@Override
public
UserWeixinDTO
findFirstByUnionidAndAppid
(
String
unionid
,
String
appId
)
{
return
this
.
userWeixinService
.
findFirstByUnionidAndAppid
(
unionid
,
appId
);
}
}
member-service-impl/src/main/java/com/topdraw/business/process/service/user/UserWeixinOperationService.java
0 → 100644
View file @
07a5bc8
package
com
.
topdraw
.
business
.
process
.
service
.
user
;
import
com.topdraw.business.module.user.weixin.domain.UserWeixin
;
import
com.topdraw.business.module.user.weixin.service.dto.UserWeixinDTO
;
/**
* @author XiangHan
* @date 2021-12-16
*/
public
interface
UserWeixinOperationService
{
/**
* 根据ID查询
* @param id ID
* @return UserWeixinDTO
*/
UserWeixinDTO
findById
(
Long
id
);
/**
*
* @param resources
* @return
*/
UserWeixin
create
(
UserWeixin
resources
);
/**
*
* @param resources
*/
void
update
(
UserWeixin
resources
);
/**
*
* @param resources
*/
void
updateTime
(
UserWeixin
resources
);
/**
*
* @param id
*/
void
delete
(
Long
id
);
/**
*
* @param memberId
* @param appid
* @return
*/
UserWeixinDTO
findFirstByMemberIdAndAppid
(
Long
memberId
,
String
appid
);
/**
*
* @param unionId
* @param appId
* @param openId
* @return
*/
UserWeixinDTO
findFirstByUnionIdAndAppIdAndOpenId
(
String
unionId
,
String
appId
,
String
openId
);
/**
*
* @param appId
* @param openId
* @return
*/
UserWeixinDTO
findFirstByAppIdAndOpenId
(
String
appId
,
String
openId
);
/**
*
* @param unionid
* @return
*/
UserWeixinDTO
findFirstByUnionId
(
String
unionid
);
/**
*
* @param unionid
* @param appId
* @return
*/
UserWeixinDTO
findFirstByUnionidAndAppid
(
String
unionid
,
String
appId
);
}
Please
register
or
sign in
to post a comment