diff --git a/src/main/java/com/bsd/say/controller/UsersController.java b/src/main/java/com/bsd/say/controller/UsersController.java index fdda4d7..ae3ca9b 100644 --- a/src/main/java/com/bsd/say/controller/UsersController.java +++ b/src/main/java/com/bsd/say/controller/UsersController.java @@ -3,6 +3,7 @@ package com.bsd.say.controller; import com.bsd.say.beans.AjaxRequest; import com.bsd.say.beans.AjaxResult; import com.bsd.say.entities.Users; +import com.bsd.say.service.RecordService; import com.bsd.say.service.UsersService; import org.springframework.web.bind.annotation.*; @@ -14,12 +15,36 @@ import javax.annotation.Resource; public class UsersController extends BaseController{ @Resource private UsersService usersService; + @Resource + private RecordService recordService; @Override public UsersService getBaseService() { return super.getBaseService(); } + /** + * 进首页记录 + * @param ajaxRequest + * @return + */ + @RequestMapping(value = "/index-record") + @ResponseBody + public AjaxResult indexRecord(@RequestBody AjaxRequest ajaxRequest){ + + AjaxResult ajaxResult = new AjaxResult(); + try { + ajaxResult = recordService.createRecord(ajaxRequest); + } catch (Exception e) { + e.printStackTrace(); + String errMsg = e.getMessage() != null ? e.getMessage() : "操作失败"; + ajaxResult.setRetcode(AjaxResult.FAILED); + ajaxResult.setRetmsg(errMsg); + } + return ajaxResult; + } + + @RequestMapping(value = "/send-note") @ResponseBody public AjaxResult sendNote(@RequestBody AjaxRequest ajaxRequest){ diff --git a/src/main/java/com/bsd/say/entities/Record.java b/src/main/java/com/bsd/say/entities/Record.java index 2eef701..77507bf 100644 --- a/src/main/java/com/bsd/say/entities/Record.java +++ b/src/main/java/com/bsd/say/entities/Record.java @@ -14,6 +14,8 @@ public class Record extends BaseEntity{ private String source; + private String openId; + private String unionId; private String nickName; diff --git a/src/main/java/com/bsd/say/service/RecordService.java b/src/main/java/com/bsd/say/service/RecordService.java index c221dd2..4d2f3c7 100644 --- a/src/main/java/com/bsd/say/service/RecordService.java +++ b/src/main/java/com/bsd/say/service/RecordService.java @@ -1,7 +1,10 @@ package com.bsd.say.service; +import com.bsd.say.beans.AjaxRequest; +import com.bsd.say.beans.AjaxResult; import com.bsd.say.entities.Record; public interface RecordService extends BaseService{ + AjaxResult createRecord(AjaxRequest ajaxRequest); } 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 4a883cc..58a40a3 100644 --- a/src/main/java/com/bsd/say/service/impl/LoveLetterServiceImpl.java +++ b/src/main/java/com/bsd/say/service/impl/LoveLetterServiceImpl.java @@ -80,24 +80,10 @@ public class LoveLetterServiceImpl extends BaseServiceImpllambdaQuery().eq(Record::getUnionId,unionId) .and(queryWrapper1 -> queryWrapper1.eq(Record::getState,1))); - if (record == null){ - //新用户第一次生成情书 - Record record1 = new Record(); - record1.setSource("微信"); - record1.setUnionId(unionId); - /** - * 昵称等 。。。 - */ - record1.setCreateLetterTimes(1); - record1.setCreateDateTime(new Date()); - record1.setUpdateDateTime(new Date()); - recordMapper.insert(record1); - }else { - int createLetterTimes = record.getCreateLetterTimes(); - record.setCreateLetterTimes(createLetterTimes + 1); - record.setUpdateDateTime(new Date()); - recordMapper.updateById(record); - } + int createLetterTimes = record.getCreateLetterTimes(); + record.setCreateLetterTimes(createLetterTimes + 1); + record.setUpdateDateTime(new Date()); + recordMapper.updateById(record); }else { //非微信端来源,待确认 @@ -152,10 +138,11 @@ public class LoveLetterServiceImpl extends BaseServiceImpl queryWrapper1.eq(Record::getState,1))); if (record == null){ //新用户第一次收到情书礼物 + String openId = "456"; Record record1 = new Record(); record1.setSource("微信"); record1.setUnionId(unionId); - + record1.setOpenId(openId); /** * 昵称等 */ @@ -164,6 +151,9 @@ public class LoveLetterServiceImpl extends BaseServiceImpl implements RecordService { + @Resource + private RecordMapper recordMapper; + + private Logger logger = LogUtils.getBussinessLogger(); + + @Override + public RecordMapper getBaseMapper() { + return this.recordMapper; + } + + + /** + * 访问首页的时候,去创建这个记录 + * @param ajaxRequest + * @return + */ + @Override + public AjaxResult createRecord(AjaxRequest ajaxRequest) { + AjaxResult ajaxResult = new AjaxResult(); + JSONObject data = ajaxRequest.getData(); + if (data == null){ + ajaxResult.setRetmsg("DATA MISSING"); + ajaxResult.setRetcode(AjaxResult.FAILED); + return ajaxResult; + } + else { + String code = data.getString("code"); + if (StringUtils.isNotEmpty(code)){ + //微信端 + String unionId = "123"; + Record record = recordMapper.selectOne(Wrappers.lambdaQuery().eq(Record::getUnionId,unionId) + .and(queryWrapper1 -> queryWrapper1.eq(Record::getState,1))); + if (record == null){ + //微信端新用户第一次访问 + String openId = "456"; + Record newRecord = new Record(); + newRecord.setOpenId(openId); + newRecord.setUnionId(unionId); + /** + * 昵称之类的 + */ + newRecord.setCreateDateTime(new Date()); + newRecord.setUpdateDateTime(new Date()); + newRecord.setSource("微信"); + recordMapper.insert(newRecord); + }else { + //不是第一次访问 + logger.info("unionId" + unionId); + /** + * 更新用户信息之类的 + */ + } + }else { + //非微信端待确认 + } + } + ajaxResult.setRetmsg("SUCCESS"); + ajaxResult.setRetcode(AjaxResult.SUCCESS); + return ajaxResult; + } }