Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
promotion-service
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
promotion
promotion-service
Commits
63055f3e
提交
63055f3e
authored
4月 11, 2024
作者:
lql-win
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
促销员登录、注册日志整理
上级
c4482f76
隐藏空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
61 行增加
和
35 行删除
+61
-35
WeChatUserCoreController.java
...promotion/controller/wechat/WeChatUserCoreController.java
+8
-1
WeChatUserQueryController.java
...romotion/controller/wechat/WeChatUserQueryController.java
+10
-9
TemporaryInfoDao.java
...angxiaolu/promotion/domain/user/dao/TemporaryInfoDao.java
+3
-2
TemporaryInfoDaoImpl.java
.../promotion/domain/user/dao/impl/TemporaryInfoDaoImpl.java
+8
-5
WeChatUserCoreService.java
...iaolu/promotion/service/wechat/WeChatUserCoreService.java
+2
-1
WeChatUserQueryService.java
...aolu/promotion/service/wechat/WeChatUserQueryService.java
+1
-3
WeChatUserCoreServiceImpl.java
...motion/service/wechat/impl/WeChatUserCoreServiceImpl.java
+8
-3
WeChatUserQueryServiceImpl.java
...otion/service/wechat/impl/WeChatUserQueryServiceImpl.java
+17
-2
WxMaUtils.java
src/main/java/com/wangxiaolu/promotion/utils/WxMaUtils.java
+4
-9
没有找到文件。
src/main/java/com/wangxiaolu/promotion/controller/wechat/WeChatUserCoreController.java
浏览文件 @
63055f3e
package
com
.
wangxiaolu
.
promotion
.
controller
.
wechat
;
package
com
.
wangxiaolu
.
promotion
.
controller
.
wechat
;
import
com.alibaba.fastjson.JSONObject
;
import
com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto
;
import
com.wangxiaolu.promotion.pojo.user.vo.WxJsUserInfoVo
;
import
com.wangxiaolu.promotion.pojo.user.vo.WxJsUserInfoVo
;
import
com.wangxiaolu.promotion.service.wechat.WeChatUserCoreService
;
import
com.wangxiaolu.promotion.service.wechat.WeChatUserCoreService
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
...
@@ -28,7 +31,11 @@ public class WeChatUserCoreController {
...
@@ -28,7 +31,11 @@ public class WeChatUserCoreController {
*/
*/
@PostMapping
(
"/temporary/enroll"
)
@PostMapping
(
"/temporary/enroll"
)
public
boolean
enrollUserInfo
(
@RequestBody
@Validated
WxJsUserInfoVo
wxJsUserInfoVo
)
{
public
boolean
enrollUserInfo
(
@RequestBody
@Validated
WxJsUserInfoVo
wxJsUserInfoVo
)
{
return
weChatUserCoreService
.
saveWxUserInfoTemporary
(
wxJsUserInfoVo
);
log
.
info
(
"微信-促销员注册:{}"
,
JSONObject
.
toJSONString
(
wxJsUserInfoVo
));
WxTemporaryInfoDto
temporaryDto
=
new
WxTemporaryInfoDto
();
BeanUtils
.
copyProperties
(
wxJsUserInfoVo
,
temporaryDto
);
return
weChatUserCoreService
.
saveWxUserInfoTemporary
(
temporaryDto
);
}
}
}
}
src/main/java/com/wangxiaolu/promotion/controller/wechat/WeChatUserQueryController.java
浏览文件 @
63055f3e
...
@@ -3,6 +3,7 @@ package com.wangxiaolu.promotion.controller.wechat;
...
@@ -3,6 +3,7 @@ package com.wangxiaolu.promotion.controller.wechat;
import
com.wangxiaolu.promotion.service.wechat.WeChatUserQueryService
;
import
com.wangxiaolu.promotion.service.wechat.WeChatUserQueryService
;
import
com.wangxiaolu.promotion.utils.WxMaUtils
;
import
com.wangxiaolu.promotion.utils.WxMaUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
me.chanjar.weixin.common.error.WxErrorException
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.StringUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
...
@@ -28,15 +29,15 @@ public class WeChatUserQueryController {
...
@@ -28,15 +29,15 @@ public class WeChatUserQueryController {
* 接收wx临时登录凭证code,查询openid是否已注册
* 接收wx临时登录凭证code,查询openid是否已注册
* 促销员查询
* 促销员查询
*/
*/
@GetMapping
(
"/temporary/openid"
)
@GetMapping
(
"/temporary/login"
)
public
Boolean
getOpenIdByWxcode
(
String
jsCode
)
{
public
boolean
temporaryLoginByOpenId
(
String
jsCode
)
{
if
(
StringUtils
.
isEmpty
(
jsCode
)){
String
userOpenId
=
null
;
return
null
;
try
{
userOpenId
=
wxMaUtils
.
getWxOpenId
(
jsCode
);
return
weChatUserQueryService
.
loginTemporaryByOpenId
(
userOpenId
);
}
catch
(
WxErrorException
e
)
{
log
.
info
(
"微信-促销员登录无效,jsCode:{},获取openId:{}"
,
jsCode
,
userOpenId
);
}
}
String
userOpenId
=
wxMaUtils
.
getWxOpenId
(
jsCode
);
return
false
;
// String userOpenId = "openid111";
return
weChatUserQueryService
.
queryTemporaryByOpenId
(
userOpenId
);
}
}
}
}
src/main/java/com/wangxiaolu/promotion/domain/user/dao/TemporaryInfoDao.java
浏览文件 @
63055f3e
package
com
.
wangxiaolu
.
promotion
.
domain
.
user
.
dao
;
package
com
.
wangxiaolu
.
promotion
.
domain
.
user
.
dao
;
import
com.wangxiaolu.promotion.domain.user.mapper.entity.TemporaryInfoDO
;
import
com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto
;
import
com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto
;
/**
/**
...
@@ -15,7 +16,7 @@ public interface TemporaryInfoDao {
...
@@ -15,7 +16,7 @@ public interface TemporaryInfoDao {
int
saveWxTemporaryInfo
(
WxTemporaryInfoDto
temporaryDto
);
int
saveWxTemporaryInfo
(
WxTemporaryInfoDto
temporaryDto
);
/**
/**
* 根据OpenId查询人员是否
已注册
* 根据OpenId查询人员是否
存在
*/
*/
Boolean
exist
TemporaryByOpenId
(
String
openId
);
TemporaryInfoDO
queryOne
TemporaryByOpenId
(
String
openId
);
}
}
src/main/java/com/wangxiaolu/promotion/domain/user/dao/impl/TemporaryInfoDaoImpl.java
浏览文件 @
63055f3e
...
@@ -33,14 +33,17 @@ public class TemporaryInfoDaoImpl implements TemporaryInfoDao {
...
@@ -33,14 +33,17 @@ public class TemporaryInfoDaoImpl implements TemporaryInfoDao {
}
}
@Override
@Override
public
Boolean
exist
TemporaryByOpenId
(
String
openId
)
{
public
TemporaryInfoDO
queryOne
TemporaryByOpenId
(
String
openId
)
{
TemporaryWrapper
tw
=
new
TemporaryWrapper
().
setOpenId
(
openId
);
TemporaryWrapper
tw
=
new
TemporaryWrapper
().
setOpenId
(
openId
);
LambdaQueryWrapper
qw
=
buildQueryList
(
tw
);
LambdaQueryWrapper
<
TemporaryInfoDO
>
qw
=
buildQueryList
(
tw
);
Integer
count
=
temporaryInfoMapper
.
selectCount
(
qw
);
return
count
>
0
;
TemporaryInfoDO
temDo
=
temporaryInfoMapper
.
selectOne
(
qw
);
WxTemporaryInfoDto
temporaryDto
=
new
WxTemporaryInfoDto
();
BeanUtils
.
copyProperties
(
temDo
,
temporaryDto
);
return
temDo
;
}
}
private
LambdaQueryWrapper
buildQueryList
(
TemporaryWrapper
tw
){
private
LambdaQueryWrapper
<
TemporaryInfoDO
>
buildQueryList
(
TemporaryWrapper
tw
){
LambdaQueryWrapper
<
TemporaryInfoDO
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
LambdaQueryWrapper
<
TemporaryInfoDO
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
if
(!
StringUtils
.
isEmpty
(
tw
.
getOpenId
())){
if
(!
StringUtils
.
isEmpty
(
tw
.
getOpenId
())){
queryWrapper
.
eq
(
TemporaryInfoDO:
:
getOpenId
,
tw
.
getOpenId
());
queryWrapper
.
eq
(
TemporaryInfoDO:
:
getOpenId
,
tw
.
getOpenId
());
...
...
src/main/java/com/wangxiaolu/promotion/service/wechat/WeChatUserCoreService.java
浏览文件 @
63055f3e
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
;
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
;
import
com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto
;
import
com.wangxiaolu.promotion.pojo.user.vo.WxJsUserInfoVo
;
import
com.wangxiaolu.promotion.pojo.user.vo.WxJsUserInfoVo
;
/**
/**
...
@@ -12,5 +13,5 @@ public interface WeChatUserCoreService {
...
@@ -12,5 +13,5 @@ public interface WeChatUserCoreService {
/**
/**
* 保存促销员用户信息
* 保存促销员用户信息
*/
*/
boolean
saveWxUserInfoTemporary
(
Wx
JsUserInfoVo
wxJsUserInfoV
o
);
boolean
saveWxUserInfoTemporary
(
Wx
TemporaryInfoDto
temporaryDt
o
);
}
}
src/main/java/com/wangxiaolu/promotion/service/wechat/WeChatUserQueryService.java
浏览文件 @
63055f3e
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
;
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
;
import
org.springframework.stereotype.Service
;
/**
/**
* @author : liqiulin
* @author : liqiulin
* @date : 2024-04-09 18
* @date : 2024-04-09 18
* @describe :微信人员信息查询
* @describe :微信人员信息查询
*/
*/
public
interface
WeChatUserQueryService
{
public
interface
WeChatUserQueryService
{
Boolean
query
TemporaryByOpenId
(
String
userOpenId
);
boolean
login
TemporaryByOpenId
(
String
userOpenId
);
}
}
src/main/java/com/wangxiaolu/promotion/service/wechat/impl/WeChatUserCoreServiceImpl.java
浏览文件 @
63055f3e
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
.
impl
;
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.wangxiaolu.promotion.domain.user.dao.TemporaryInfoDao
;
import
com.wangxiaolu.promotion.domain.user.dao.TemporaryInfoDao
;
import
com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto
;
import
com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto
;
import
com.wangxiaolu.promotion.pojo.user.vo.WxJsUserInfoVo
;
import
com.wangxiaolu.promotion.pojo.user.vo.WxJsUserInfoVo
;
import
com.wangxiaolu.promotion.service.wechat.WeChatUserCoreService
;
import
com.wangxiaolu.promotion.service.wechat.WeChatUserCoreService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -13,8 +17,10 @@ import org.springframework.stereotype.Service;
...
@@ -13,8 +17,10 @@ import org.springframework.stereotype.Service;
* @date : 2024-04-08 16
* @date : 2024-04-08 16
* @describe :微信用户信息操作
* @describe :微信用户信息操作
*/
*/
@Slf4j
@Service
@Service
public
class
WeChatUserCoreServiceImpl
implements
WeChatUserCoreService
{
public
class
WeChatUserCoreServiceImpl
implements
WeChatUserCoreService
{
@Autowired
@Autowired
TemporaryInfoDao
temporaryInfoDao
;
TemporaryInfoDao
temporaryInfoDao
;
...
@@ -22,10 +28,9 @@ public class WeChatUserCoreServiceImpl implements WeChatUserCoreService {
...
@@ -22,10 +28,9 @@ public class WeChatUserCoreServiceImpl implements WeChatUserCoreService {
* 保存促销员用户信息
* 保存促销员用户信息
*/
*/
@Override
@Override
public
boolean
saveWxUserInfoTemporary
(
WxJsUserInfoVo
wxJsUserInfoVo
)
{
public
boolean
saveWxUserInfoTemporary
(
WxTemporaryInfoDto
temporaryDto
)
{
WxTemporaryInfoDto
temporaryDto
=
new
WxTemporaryInfoDto
();
BeanUtils
.
copyProperties
(
wxJsUserInfoVo
,
temporaryDto
);
int
saveId
=
temporaryInfoDao
.
saveWxTemporaryInfo
(
temporaryDto
);
int
saveId
=
temporaryInfoDao
.
saveWxTemporaryInfo
(
temporaryDto
);
log
.
info
(
"微信-促销员[{}]:[{}]注册成功:{}"
,
saveId
,
temporaryDto
.
getName
(),
JSONObject
.
toJSONString
(
temporaryDto
));
return
saveId
>
0
;
return
saveId
>
0
;
}
}
}
}
src/main/java/com/wangxiaolu/promotion/service/wechat/impl/WeChatUserQueryServiceImpl.java
浏览文件 @
63055f3e
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
.
impl
;
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.wangxiaolu.promotion.domain.user.dao.TemporaryInfoDao
;
import
com.wangxiaolu.promotion.domain.user.dao.TemporaryInfoDao
;
import
com.wangxiaolu.promotion.domain.user.mapper.entity.TemporaryInfoDO
;
import
com.wangxiaolu.promotion.service.wechat.WeChatUserQueryService
;
import
com.wangxiaolu.promotion.service.wechat.WeChatUserQueryService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.Objects
;
/**
/**
* @author : liqiulin
* @author : liqiulin
* @date : 2024-04-09 18
* @date : 2024-04-09 18
...
@@ -13,12 +19,21 @@ import org.springframework.stereotype.Service;
...
@@ -13,12 +19,21 @@ import org.springframework.stereotype.Service;
@Service
@Service
public
class
WeChatUserQueryServiceImpl
implements
WeChatUserQueryService
{
public
class
WeChatUserQueryServiceImpl
implements
WeChatUserQueryService
{
private
static
final
Logger
log
=
LoggerFactory
.
getLogger
(
WeChatUserQueryServiceImpl
.
class
);
@Autowired
@Autowired
TemporaryInfoDao
temporaryInfoDao
;
TemporaryInfoDao
temporaryInfoDao
;
@Override
@Override
public
Boolean
queryTemporaryByOpenId
(
String
userOpenId
)
{
public
boolean
loginTemporaryByOpenId
(
String
userOpenId
)
{
Boolean
exist
=
temporaryInfoDao
.
existTemporaryByOpenId
(
userOpenId
);
TemporaryInfoDO
temDo
=
temporaryInfoDao
.
queryOneTemporaryByOpenId
(
userOpenId
);
boolean
exist
=
!
Objects
.
isNull
(
temDo
);
// todo 查询到时,将个人信息放到reids中进行保存
if
(
exist
)
{
log
.
info
(
"{}登录成功,openId:{}"
,
temDo
.
getName
(),
userOpenId
);
log
.
info
(
JSONObject
.
toJSONString
(
temDo
));
}
return
exist
;
return
exist
;
}
}
}
}
src/main/java/com/wangxiaolu/promotion/utils/WxMaUtils.java
浏览文件 @
63055f3e
...
@@ -22,15 +22,10 @@ public class WxMaUtils {
...
@@ -22,15 +22,10 @@ public class WxMaUtils {
/**
/**
* 根据code查询openId
* 根据code查询openId
*/
*/
public
String
getWxOpenId
(
String
jsCode
)
{
public
String
getWxOpenId
(
String
jsCode
)
throws
WxErrorException
{
WxMaJscode2SessionResult
sessionInfo
=
null
;
WxMaJscode2SessionResult
sessionInfo
=
wxMaService
.
getUserService
().
getSessionInfo
(
jsCode
);
try
{
String
openid
=
sessionInfo
.
getOpenid
();
sessionInfo
=
wxMaService
.
getUserService
().
getSessionInfo
(
jsCode
);
return
openid
;
String
openid
=
sessionInfo
.
getOpenid
();
return
openid
;
}
catch
(
WxErrorException
e
)
{
throw
new
RuntimeException
();
}
}
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论