Compare commits

...

3 Commits

@ -151,34 +151,7 @@ public class WechatController {
String resutl = HttpRequestUtils.sendGet("https://api.weixin.qq.com/cgi-bin/user/info?access_token=" + decode + "&openid=" + openId + "&lang=zh_CN");
JSONObject jsonObject = JSONObject.parseObject(resutl);
Integer subscribe = jsonObject.getInteger("subscribe");
logger.info("subscribe"+ subscribe);
Record recordByOpenId = recordMapper.selectOne(Wrappers.<Record>lambdaQuery().eq(Record::getOpenId,openId)
.and(queryWrapper1 -> queryWrapper1.eq(Record::getState,1)));
if (subscribe == 0){
//未关注公众号
if (recordByOpenId == null){
logger.info("新粉丝第一次进入");
Record record = new Record();
record.setOpenId(openId);
record.setFan("新粉丝");
record.setCreateDateTime(new Date());
recordMapper.insert(record);
}else {
logger.info("游客访问过,但未关注");
}
}else {
//关注过公众号
if (recordByOpenId == null){
logger.info("老粉丝第一次进入");
Record record = new Record();
record.setOpenId(openId);
record.setFan("老粉丝");
record.setCreateDateTime(new Date());
recordMapper.insert(record);
}else {
logger.info("老粉丝访问过,已关注");
}
}
weixinService.insertRecord(openId,subscribe);
AjaxResult ajaxResult = new AjaxResult();
ajaxResult.setData(jsonObject);
return ajaxResult;

@ -79,7 +79,7 @@ public class AwardListServiceImpl extends BaseServiceImpl<AwardListMapper, Award
JSONObject userInfo = weixinService.getUserInfoByOpenId(openId);
String unionId = userInfo.getString("unionid");
logger.info("union_id:"+unionId);
Users users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getUnionId,unionId)
Users users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getOpenId,openId)
.and(queryWrapper1 -> queryWrapper1.eq(Users::getState,1)));
AwardList maxIdAward = awardListMapper.selectByMaxId();
Integer newAwardNumner = maxIdAward.getAwardNumber()+ 1;
@ -138,11 +138,12 @@ public class AwardListServiceImpl extends BaseServiceImpl<AwardListMapper, Award
JSONObject userInfo = weixinService.getUserInfoByOpenId(openId);
String unionId = userInfo.getString("unionid");
logger.info("union_id:"+unionId);
Users users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getUnionId,unionId)
Users users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getOpenId,openId)
.and(queryWrapper1 -> queryWrapper1.eq(Users::getState,1)));
if (users == null){
//新会员直接创,肯定没抽过奖
Users newUsers = new Users();
newUsers.setOpenId(openId);
newUsers.setUnionId(unionId);
newUsers.setUserType(2);
newUsers.setCreateDateTime(new Date());
@ -210,7 +211,7 @@ public class AwardListServiceImpl extends BaseServiceImpl<AwardListMapper, Award
String unionId = userInfo.getString("unionid");
// String unionId = weixinService.getUnionId(openId);
logger.info("union_id:"+unionId);
Users users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getUnionId,unionId)
Users users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getOpenId,openId)
.and(queryWrapper1 -> queryWrapper1.eq(Users::getState,1)));
if (users == null){
ajaxResult.setRetcode(AjaxResult.FAILED);
@ -279,7 +280,7 @@ public class AwardListServiceImpl extends BaseServiceImpl<AwardListMapper, Award
JSONObject userInfo = weixinService.getUserInfoByOpenId(openId);
String unionId = userInfo.getString("unionid");
logger.info("union_id:"+unionId);
Users users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getUnionId,unionId)
Users users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getOpenId,openId)
.and(queryWrapper1 -> queryWrapper1.eq(Users::getState,1)));
if (users == null){
ajaxResult.setRetcode(AjaxResult.SUCCESS);

@ -206,7 +206,7 @@ public class CouponServiceImpl extends BaseServiceImpl<CouponMapper, Coupon> imp
if (isAward){
String unionId = userInfo.getString("unionid");
logger.info("union_id:"+unionId);
users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getUnionId,unionId)
users = usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getOpenId,openId)
.and(queryWrapper1 -> queryWrapper1.eq(Users::getState,1)));
users.setPhone(phone);
users.setUpdateDateTime(new Date());
@ -331,7 +331,7 @@ public class CouponServiceImpl extends BaseServiceImpl<CouponMapper, Coupon> imp
JSONObject userInfo = weixinService.getUserInfoByOpenId(openId);
String unionId = userInfo.getString("unionid");
logger.info("union_id:"+unionId);
Users users= usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getUnionId,unionId)
Users users= usersMapper.selectOne(Wrappers.<Users>lambdaQuery().eq(Users::getOpenId,openId)
.and(queryWrapper1 -> queryWrapper1.eq(Users::getState,1)));
if (users == null){
ajaxResult.setRetmsg("可以领取优惠券");

@ -2,7 +2,10 @@ package com.bsd.say.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.bsd.say.config.RedisProperies;
import com.bsd.say.entities.Record;
import com.bsd.say.mapper.RecordMapper;
import com.bsd.say.service.WxOpenServiceDemo;
import com.bsd.say.util.AESWithJCEUtils;
import com.bsd.say.util.HttpRequestUtils;
@ -16,10 +19,12 @@ import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import redis.clients.jedis.JedisPool;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
@ -46,6 +51,8 @@ public class WeixinService extends WxOpenServiceImpl {
private String getWxUserInfoUrl;
@Resource
private RedisTemplate redisTemplate;
@Resource
private RecordMapper recordMapper;
private WxOpenMessageRouter wxOpenMessageRouter;
Logger logger = LogUtils.getBussinessLogger();
@ -140,4 +147,41 @@ public class WeixinService extends WxOpenServiceImpl {
logger.info("userInfo:"+ jsonObject.toString());
return jsonObject;
}
/**
*
* @param openId
* @param subscribe
*/
@Transactional
public void insertRecord(String openId,Integer subscribe){
logger.info("subscribe"+ subscribe);
Record recordByOpenId = recordMapper.selectOne(Wrappers.<Record>lambdaQuery().eq(Record::getOpenId,openId)
.and(queryWrapper1 -> queryWrapper1.eq(Record::getState,1)));
if (subscribe == 0){
//未关注公众号
if (recordByOpenId == null){
logger.info("新粉丝第一次进入");
Record record = new Record();
record.setOpenId(openId);
record.setFan("新粉丝");
record.setCreateDateTime(new Date());
recordMapper.insert(record);
}else {
logger.info("游客访问过,但未关注");
}
}else {
//关注过公众号
if (recordByOpenId == null){
logger.info("老粉丝第一次进入");
Record record = new Record();
record.setOpenId(openId);
record.setFan("老粉丝");
record.setCreateDateTime(new Date());
recordMapper.insert(record);
}else {
logger.info("老粉丝访问过,已关注");
}
}
}
}

Loading…
Cancel
Save