From 9a030aa028aca9c96bfb0be783a69d1e60cab6db Mon Sep 17 00:00:00 2001 From: ck <851316342@qq.com> Date: Sun, 9 Aug 2020 02:57:46 +0800 Subject: [PATCH] =?UTF-8?q?1.=E9=A2=86=E4=BC=98=E6=83=A0=E5=88=B8=E9=80=BB?= =?UTF-8?q?=E8=BE=91=202.=E6=9D=A5=E6=BA=90(=E6=9C=AA=E5=AE=8C=E6=88=90)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bsd/say/controller/WechatController.java | 21 ++---------- .../java/com/bsd/say/entities/Record.java | 2 -- .../java/com/bsd/say/entities/Source.java | 18 ++++++++++ .../java/com/bsd/say/mapper/SourceMapper.java | 11 +++++++ .../com/bsd/say/service/SourceService.java | 6 ++++ .../say/service/impl/CouponServiceImpl.java | 33 ++++++++++++++++--- .../service/impl/LoveLetterServiceImpl.java | 11 +++---- .../say/service/impl/SourceServiceImpl.java | 12 +++++++ 8 files changed, 81 insertions(+), 33 deletions(-) create mode 100644 src/main/java/com/bsd/say/entities/Source.java create mode 100644 src/main/java/com/bsd/say/mapper/SourceMapper.java create mode 100644 src/main/java/com/bsd/say/service/SourceService.java create mode 100644 src/main/java/com/bsd/say/service/impl/SourceServiceImpl.java diff --git a/src/main/java/com/bsd/say/controller/WechatController.java b/src/main/java/com/bsd/say/controller/WechatController.java index ae34c25..6d15aa4 100644 --- a/src/main/java/com/bsd/say/controller/WechatController.java +++ b/src/main/java/com/bsd/say/controller/WechatController.java @@ -135,25 +135,8 @@ public class WechatController { @RequestMapping("test") public void test(){ - JedisPool pool = new JedisPool(); - RedisProperies redisProperies = new RedisProperies(); - if (pool == null) { - synchronized (WxOpenServiceDemo.class) { - if (pool == null) { - pool = new JedisPool(redisProperies, redisProperies.getHost(), - redisProperies.getPort(), redisProperies.getConnectionTimeout(), - redisProperies.getSoTimeout(), redisProperies.getPassword(), - redisProperies.getDatabase(), redisProperies.getClientName(), - redisProperies.isSsl(), redisProperies.getSslSocketFactory(), - redisProperies.getSslParameters(), redisProperies.getHostnameVerifier()); - } - } - } - Jedis jedis = null; - RedisProperies properies = new RedisProperies(); - - jedis = pool.getResource(); - System.out.println(jedis.get("wechat_component_verify_ticket:wx474350bcaea2d745")); +// Object o = redisTemplate.opsForValue().getOperations(); + weixinService.refreshComponentAccessToken(); } } diff --git a/src/main/java/com/bsd/say/entities/Record.java b/src/main/java/com/bsd/say/entities/Record.java index 77507bf..4fdcda9 100644 --- a/src/main/java/com/bsd/say/entities/Record.java +++ b/src/main/java/com/bsd/say/entities/Record.java @@ -10,8 +10,6 @@ import lombok.Data; @Data public class Record extends BaseEntity{ - private Long id; - private String source; private String openId; diff --git a/src/main/java/com/bsd/say/entities/Source.java b/src/main/java/com/bsd/say/entities/Source.java new file mode 100644 index 0000000..6997ea7 --- /dev/null +++ b/src/main/java/com/bsd/say/entities/Source.java @@ -0,0 +1,18 @@ +package com.bsd.say.entities; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +@TableName("source") +@Data +public class Source extends BaseEntity{ + + private String sourceName; + + private String url; + + private String qrCode; + + private String postCode; + +} diff --git a/src/main/java/com/bsd/say/mapper/SourceMapper.java b/src/main/java/com/bsd/say/mapper/SourceMapper.java new file mode 100644 index 0000000..7ec0eb1 --- /dev/null +++ b/src/main/java/com/bsd/say/mapper/SourceMapper.java @@ -0,0 +1,11 @@ +package com.bsd.say.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.bsd.say.entities.Source; +import com.bsd.say.entities.Users; +import org.springframework.stereotype.Repository; + +@Repository("sourceMapper") +public interface SourceMapper extends BaseMapper { + +} diff --git a/src/main/java/com/bsd/say/service/SourceService.java b/src/main/java/com/bsd/say/service/SourceService.java new file mode 100644 index 0000000..4871616 --- /dev/null +++ b/src/main/java/com/bsd/say/service/SourceService.java @@ -0,0 +1,6 @@ +package com.bsd.say.service; + +import com.bsd.say.entities.Source; + +public interface SourceService extends BaseService { +} diff --git a/src/main/java/com/bsd/say/service/impl/CouponServiceImpl.java b/src/main/java/com/bsd/say/service/impl/CouponServiceImpl.java index d8e2ed4..f2806b5 100644 --- a/src/main/java/com/bsd/say/service/impl/CouponServiceImpl.java +++ b/src/main/java/com/bsd/say/service/impl/CouponServiceImpl.java @@ -23,6 +23,7 @@ import org.springframework.web.bind.annotation.RequestBody; import javax.annotation.Resource; import java.io.IOException; import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -116,13 +117,37 @@ public class CouponServiceImpl extends BaseServiceImpl imp } }else { //来源微信 - String unionId = weixinService.getUnionId(code); + String unionId = "456"; logger.info("union_id:"+unionId); users = usersMapper.selectOne(Wrappers.lambdaQuery().eq(Users::getUnionId,unionId) .and(queryWrapper1 -> queryWrapper1.eq(Users::getState,1))); + List coupons ; + if (users == null){ + Users usersByPhone = usersMapper.selectOne(Wrappers.lambdaQuery().eq(Users::getPhone,phone) + .and(queryWrapper1 -> queryWrapper1.eq(Users::getState,1))); + //防止先第三方领券,再微信端领券 + if (usersByPhone == null){ + Users users1 = new Users(); + users1.setPhone(phone); + users1.setUnionId(unionId); + users1.setUserType(1); + users1.setCreateDateTime(new Date()); + users1.setUpdateDateTime(new Date()); + usersMapper.insert(users1); + coupons = couponMapper.selectList(Wrappers.lambdaQuery().eq(Coupon::getUserId,users1.getId()) + .and(queryWrapper1 -> queryWrapper1.eq(Coupon::getState,1))); + }else{ + usersByPhone.setUnionId(unionId); + usersByPhone.setUpdateDateTime(new Date()); + usersMapper.updateById(usersByPhone); + coupons = couponMapper.selectList(Wrappers.lambdaQuery().eq(Coupon::getUserId,usersByPhone.getId()) + .and(queryWrapper1 -> queryWrapper1.eq(Coupon::getState,1))); + } + }else { + coupons = couponMapper.selectList(Wrappers.lambdaQuery().eq(Coupon::getUserId,users.getId()) + .and(queryWrapper1 -> queryWrapper1.eq(Coupon::getState,1))); + } //防非法请求,再校验一遍 - List coupons = couponMapper.selectList(Wrappers.lambdaQuery().eq(Coupon::getUserId,users.getId()) - .and(queryWrapper1 -> queryWrapper1.eq(Coupon::getState,1))); if (coupons.size() > 0){ ajaxResult.setRetmsg("非法请求,已经领过"); ajaxResult.setRetcode(AjaxResult.FAILED); @@ -131,8 +156,6 @@ public class CouponServiceImpl extends BaseServiceImpl imp } } } - - if (noteCode.equals(redisTemplate.opsForValue().get(phone))){ String token = MD5Utils.md5(tokenkey+df.format(new Date())); //验证成功,领券 diff --git a/src/main/java/com/bsd/say/service/impl/LoveLetterServiceImpl.java b/src/main/java/com/bsd/say/service/impl/LoveLetterServiceImpl.java index b93a124..ee90b56 100644 --- a/src/main/java/com/bsd/say/service/impl/LoveLetterServiceImpl.java +++ b/src/main/java/com/bsd/say/service/impl/LoveLetterServiceImpl.java @@ -6,8 +6,10 @@ import com.bsd.say.beans.AjaxRequest; import com.bsd.say.beans.AjaxResult; import com.bsd.say.entities.LoveLetter; import com.bsd.say.entities.Record; +import com.bsd.say.entities.Users; import com.bsd.say.mapper.LoveLetterMapper; import com.bsd.say.mapper.RecordMapper; +import com.bsd.say.mapper.UsersMapper; import com.bsd.say.service.LoveLetterService; import com.bsd.say.util.HttpRequestUtils; import com.bsd.say.util.LogUtils; @@ -33,6 +35,8 @@ public class LoveLetterServiceImpl extends BaseServiceImpl implements SourceService { +}