记得上下班打卡 | git大法好,push需谨慎

Commit 1594c13d authored by jiangxiulong's avatar jiangxiulong

Merge branch 'dev_stone' into dev_20111115

parents 53fbcc4a 0063db0b
package com.liquidnet.service.sweet.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 小程序登录记录用户解密后信息表
* </p>
*
* @author jiangxiulong
* @since 2021-11-08
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class SweetAppletUser implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Long mid;
/**
* user_id
*/
private String userId;
/**
* openId
*/
@TableField("openId")
private String openId;
/**
* unionId
*/
@TableField("unionId")
private String unionId;
/**
* 手机号
*/
@TableField("getPhoneNumber")
private String getPhoneNumber;
/**
* 手机号
*/
@TableField("getPurePhoneNumber")
private String getPurePhoneNumber;
/**
* 地区码
*/
@TableField("getCountryCode")
private String getCountryCode;
/**
* 1草莓 2五百里 3mdsk 4正在
*/
private Integer type;
/**
* 创建时间
*/
private LocalDateTime createdAt;
/**
* 更新时间
*/
private LocalDateTime updatedAt;
}
package com.liquidnet.service.sweet.mapper;
import com.liquidnet.service.sweet.entity.SweetAppletUser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 小程序登录记录用户解密后信息表 Mapper 接口
* </p>
*
* @author jiangxiulong
* @since 2021-11-08
*/
public interface SweetAppletUserMapper extends BaseMapper<SweetAppletUser> {
}
...@@ -92,4 +92,14 @@ public class UserDataController { ...@@ -92,4 +92,14 @@ public class UserDataController {
} }
} }
@GetMapping("appletUser")
@ApiOperation("同步小程序用户")
public void appletUser() {
try {
userDataService.appletUser();
} catch (Exception e) {
log.error("getUser", e);
}
}
} }
package com.liquidnet.service.sweet.service.impl.syncRedis; package com.liquidnet.service.sweet.service.impl.syncRedis;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.liquidnet.commons.lang.util.CollectionUtil; import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.DateUtil; import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator; import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.SqlMapping; import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.base.constant.MQConst; import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.feign.adam.api.FeignAdamBaseClient;
import com.liquidnet.service.sweet.config.WechatMpConfigure; import com.liquidnet.service.sweet.config.WechatMpConfigure;
import com.liquidnet.service.sweet.entity.SweetAppletUser;
import com.liquidnet.service.sweet.mapper.SweetAppletUserMapper;
import com.liquidnet.service.sweet.utils.QueueUtils; import com.liquidnet.service.sweet.utils.QueueUtils;
import com.liquidnet.service.sweet.utils.RedisDataUtils;
import com.liquidnet.service.sweet.utils.WechatUsersRedisUtils; import com.liquidnet.service.sweet.utils.WechatUsersRedisUtils;
import com.liquidnet.service.sweet.vo.SweetAppletUsersVo;
import com.liquidnet.service.sweet.vo.SweetWechatUsersVo; import com.liquidnet.service.sweet.vo.SweetWechatUsersVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import me.chanjar.weixin.common.error.WxErrorException; import me.chanjar.weixin.common.error.WxErrorException;
...@@ -32,6 +38,12 @@ public class UserDataServiceImpl { ...@@ -32,6 +38,12 @@ public class UserDataServiceImpl {
@Autowired @Autowired
private QueueUtils queueUtils; private QueueUtils queueUtils;
@Autowired
SweetAppletUserMapper sweetAppletUserMapper;
@Autowired
private FeignAdamBaseClient feignAdamBaseClient;
public void userInfo(Integer type) throws WxErrorException { public void userInfo(Integer type) throws WxErrorException {
WxMpService wxMpService = wechatMpConfigure.getWxMpService(type); WxMpService wxMpService = wechatMpConfigure.getWxMpService(type);
...@@ -134,4 +146,43 @@ public class UserDataServiceImpl { ...@@ -134,4 +146,43 @@ public class UserDataServiceImpl {
redisUtils.setSweetWechatUsers(sweetWechatUsersVo); redisUtils.setSweetWechatUsers(sweetWechatUsersVo);
} }
} }
public void appletUser() {
int size = 1000;
// 获取总记录数
Integer count = sweetAppletUserMapper.selectCount(Wrappers.lambdaQuery(SweetAppletUser.class));
// 总page
int countPage = (int) Math.ceil(count / size);
for (int page = 0; page < countPage; page++) {
List<SweetAppletUser> sweetAppletUsers = sweetAppletUserMapper.selectList(Wrappers.lambdaQuery(SweetAppletUser.class).last("limit " + (page * size) + "," + ((page + 1) * size)));
for (SweetAppletUser info : sweetAppletUsers) {
SweetAppletUsersVo oldInfo = redisUtils.getSweetAppletUsers(info.getGetPurePhoneNumber());
if (null == oldInfo) {
ResponseDto<AdamUserInfoVo> userInfoVo = feignAdamBaseClient.registerByMobile(info.getGetPurePhoneNumber());
AdamUserInfoVo userInfoVoData = userInfoVo.getData();
String userId = userInfoVoData.getUid();
LinkedList<String> sqlsA = CollectionUtil.linkedListString();
LinkedList<Object[]> sqlsDataA = CollectionUtil.linkedListObjectArr();
sqlsA.add(SqlMapping.get("sweet_applet_users.insert"));
sqlsDataA.add(new Object[]{
info.getUserId(), userId, info.getOpenId(), info.getUnionId(), info.getGetPhoneNumber(), info.getGetPurePhoneNumber(), info.getGetCountryCode(), info.getType()
});
queueUtils.sendMsgByRedis(MQConst.SweetQueue.SWEET_WECHAT_USER_INSERT.getKey(),
SqlMapping.gets(sqlsA, sqlsDataA));
SweetAppletUsersVo sweetAppletUsersVo = SweetAppletUsersVo.getNew();
sweetAppletUsersVo.setAppletUserId(info.getUserId());
sweetAppletUsersVo.setUserId(userId);
sweetAppletUsersVo.setOpenId(info.getOpenId());
sweetAppletUsersVo.setUnionId(info.getUnionId());
sweetAppletUsersVo.setPhoneNumber(info.getGetPhoneNumber());
sweetAppletUsersVo.setPurePhoneNumber(info.getGetPurePhoneNumber());
sweetAppletUsersVo.setCountryCode(info.getGetCountryCode());
sweetAppletUsersVo.setType(info.getType());
redisUtils.setSweetAppletUsers(sweetAppletUsersVo);
}
}
}
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment