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

Commit 84a08b4c authored by jiangxiulong's avatar jiangxiulong

add getUnionId

parent bca590c0
......@@ -488,6 +488,7 @@ CREATE TABLE `sweet_city_vote`
`vote_id` varchar(255) NOT NULL DEFAULT '' COMMENT 'vote_id',
`phone` varchar(11) NOT NULL DEFAULT '' COMMENT '手机号',
`openId` varchar(255) NOT NULL DEFAULT '' COMMENT 'openId',
`unionId` varchar(255) NOT NULL DEFAULT '' COMMENT 'unionId',
`city_code` varchar(255) NOT NULL DEFAULT '' COMMENT '城市代码',
`city_name` varchar(255) NOT NULL DEFAULT '' COMMENT '城市名称',
`day_time` varchar(255) NOT NULL DEFAULT '' COMMENT '投票天',
......
......@@ -35,13 +35,13 @@ public class SweetCityVoteController {
@ApiOperation("城市投票排名")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "phone", value = "手机号", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "openId", value = "openId", required = true)
@ApiImplicitParam(type = "query", dataType = "String", name = "unionId", value = "unionId", required = true)
})
public ResponseDto<List<SweetCItyVoteStatVo>> getList(
@RequestParam String phone,
@RequestParam String openId
@RequestParam String unionId
) {
return sweetCityVoteService.getList(phone, openId);
return sweetCityVoteService.getList(phone, unionId);
}
@PostMapping("createVote")
......
......@@ -41,6 +41,12 @@ public class SweetCityVote implements Serializable {
@TableField("openId")
private String openId;
/**
* unionId
*/
@TableField("unionId")
private String unionId;
/**
* 城市代码
*/
......
......@@ -16,9 +16,9 @@ public class SweetCityVoteParam implements java.io.Serializable {
@NotBlank(message = "phone不能为空")
private String phone;
@ApiModelProperty(position = 11, required = true, value = "openId", example = "openId")
@NotBlank(message = "openId不能为空")
private String openId;
@ApiModelProperty(position = 11, required = true, value = "unionId", example = "unionId")
@NotBlank(message = "unionId不能为空")
private String unionId;
@ApiModelProperty(position = 12, required = true, value = "城市代码", example = "10001")
@NotBlank(message = "cityCode不能为空")
......
......@@ -22,5 +22,5 @@ public interface ISweetCityVoteService extends IService<SweetCityVote> {
ResponseDto setStatList();
ResponseDto<List<SweetCItyVoteStatVo>> getList(String phone, String openId);
ResponseDto<List<SweetCItyVoteStatVo>> getList(String phone, String unionId);
}
package com.liquidnet.service.sweet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.adam.dto.vo.AdamMemberOrderSimpleVo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.kylin.dto.vo.PerformanceOrderStatisticalVo;
import com.liquidnet.service.sweet.dto.SweetCityVoteStatDto;
import com.liquidnet.service.sweet.entity.SweetCityVote;
import com.liquidnet.service.sweet.mapper.SweetCityVoteMapper;
......@@ -29,7 +23,6 @@ import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
......@@ -52,9 +45,9 @@ public class SweetCityVoteServiceImpl extends ServiceImpl<SweetCityVoteMapper, S
private SweetCityVoteStatMapper sweetCityVoteStatMapper;
@Override
public ResponseDto<List<SweetCItyVoteStatVo>> getList(String phone, String openId) {
public ResponseDto<List<SweetCItyVoteStatVo>> getList(String phone, String unionId) {
List<SweetCItyVoteStatVo> sweetCityVoteStatList = redisDataUtils.getSweetCityVoteStatList();
String userVote = redisDataUtils.getUserVote(phone, openId);
String userVote = redisDataUtils.getUserVote(phone, unionId);
for (SweetCItyVoteStatVo info : sweetCityVoteStatList) {
if (userVote.isEmpty() || !userVote.equals(info.getCityCode())) {
info.setIsVote(1);
......@@ -67,14 +60,16 @@ public class SweetCityVoteServiceImpl extends ServiceImpl<SweetCityVoteMapper, S
@Override
public ResponseDto createVote(SweetCityVoteParam param) {
String userVote = redisDataUtils.getUserVote(param.getPhone(), param.getOpenId());
String userVote = redisDataUtils.getUserVote(param.getPhone(), param.getUnionId());
if (!userVote.isEmpty()) {
return ResponseDto.failure("已经投过票啦~");
}
SweetCityVote aNew = SweetCityVote.getNew();
aNew.setVoteId(IDGenerator.nextSnowId());
aNew.setPhone(param.getPhone());
aNew.setOpenId(param.getOpenId());
String sweetWechatOpenId = redisDataUtils.getSweetWechatOpenId(param.getUnionId());
aNew.setOpenId(sweetWechatOpenId);
aNew.setUnionId(param.getUnionId());
aNew.setCityCode(param.getCityCode());
aNew.setCityName(param.getCityName());
......@@ -84,7 +79,7 @@ public class SweetCityVoteServiceImpl extends ServiceImpl<SweetCityVoteMapper, S
LinkedList<Object[]> sqlsDataB = CollectionUtil.linkedListObjectArr();
sqls.add(SqlMapping.get("sweet_city_vote.insert"));
sqlsDataA.add(new Object[]{
aNew.getVoteId(), aNew.getPhone(), aNew.getOpenId(), aNew.getCityCode(), aNew.getCityName(), DateUtil.format(LocalDateTime.now(), DateUtil.Formatter.yyyyMMdd)
aNew.getVoteId(), aNew.getPhone(), sweetWechatOpenId, aNew.getUnionId(), aNew.getCityCode(), aNew.getCityName(), DateUtil.format(LocalDateTime.now(), DateUtil.Formatter.yyyyMMdd)
});
Integer cityVoteNum = redisDataUtils.getSweetCityVote(aNew.getCityCode());
if (cityVoteNum > 0) { // 已有 incr
......@@ -103,7 +98,7 @@ public class SweetCityVoteServiceImpl extends ServiceImpl<SweetCityVoteMapper, S
redisDataUtils.incrSweetCityVote(aNew.getCityCode());
redisDataUtils.setUserVote(param.getPhone(), param.getOpenId(), param.getCityCode());
redisDataUtils.setUserVote(param.getPhone(), param.getUnionId(), param.getCityCode());
return ResponseDto.success();
}
......
......@@ -344,6 +344,19 @@ public class RedisDataUtils {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_USER_INFO.concat(unionid);
return (SweetWechatUser) redisUtil.get(redisKey);
}
public String getSweetWechatOpenId(String unionid) {
if (unionid.isEmpty()) {
return "";
}
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_USER_INFO.concat(unionid);
Object obj = redisUtil.get(redisKey);
if (null == obj) {
return "";
} else {
SweetWechatUser sweetWechatUser = (SweetWechatUser) redisUtil.get(redisKey);
return sweetWechatUser.getOpenId();
}
}
public String getSweetWechatUserStr(String unionid) {
if (unionid.isEmpty()) {
......
......@@ -70,6 +70,6 @@ sweet_remind.insert=INSERT INTO sweet_remind (remind_id,openId,unionId,performan
# --------------------------小程序登录记录用户解密后信息--------------------------
sweet_applet_user.insert=INSERT INTO sweet_applet_user (user_id,openId,unionId,getPhoneNumber,getPurePhoneNumber,getCountryCode,type) VALUES (?,?,?,?,?,?,?)
# --------------------------用户投票记录--------------------------
sweet_city_vote.insert=INSERT INTO sweet_city_vote (vote_id,phone,openId,city_code,city_name,day_time) VALUES (?,?,?,?,?,?)
sweet_city_vote.insert=INSERT INTO sweet_city_vote (vote_id,phone,openId,unionId,city_code,city_name,day_time) VALUES (?,?,?,?,?,?)
sweet_city_vote_stat.insert=INSERT INTO sweet_city_vote_stat (stat_id,city_code,city_name,vote_num) VALUES (?,?,?,?)
sweet_city_vote_stat.update=UPDATE sweet_city_vote_stat SET vote_num = IFNULL(vote_num, 0) + 1, updated_at = ? WHERE city_code = ?
\ No newline at end of file
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