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

Commit fa8ff544 authored by 胡佳晨's avatar 胡佳晨

提交 部分代码 redis代码

parent 71e5e1d2
......@@ -17,11 +17,11 @@
</properties>
<dependencies>
<!--<dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-service-smile-do</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>-->
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-service-kylin-api</artifactId>
......
package com.liquidnet.client.admin.zhengzai.smile.vo;
package com.liquidnet.service.goblin.dto.vo;
import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVPParam;
import com.liquidnet.service.smile.entity.SmileVolunteers;
import com.liquidnet.service.smile.entity.SmileVolunteersProject;
import com.liquidnet.service.smile.entity.SmileVolunteersTeam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.commons.lang.util.DateUtil.DTF_YMD_HMS;
/**
* @author 志愿者活动创建修改
*/
......@@ -36,6 +30,7 @@ public class SmileProjectDetailsVo implements Cloneable {
@ApiModelProperty(value = "职责组集合", example = "")
private List<SmileVolunteersTeam> teamArray;
private static final SmileProjectDetailsVo obj = new SmileProjectDetailsVo();
public static SmileProjectDetailsVo getNew() {
......
package com.liquidnet.service.goblin.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import static com.liquidnet.commons.lang.util.DateUtil.DTF_YMD_HMS;
/**
* <p>
*
* </p>
*
* @author jobob
* @since 2022-03-11
*/
@ApiModel(value = "SmileVProjectListVo")
@Data
public class SmileVProjectListVo implements Serializable, Cloneable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "活动id")
private String projectId;
@ApiModelProperty(value = "标题")
private String title;
@ApiModelProperty(value = "开始时间")
private String timeStart;
@ApiModelProperty(value = "结束时间")
private String timeEnd;
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "封面图")
private String img;
@ApiModelProperty(value = "报名状态[0-未报名|1-已报名]")
private Integer applyStatus;
@ApiModelProperty(value = "活动状态[0-未开始|1-进行中|2-已结束]")
private Integer projectStatus;
private static final SmileVProjectListVo obj = new SmileVProjectListVo();
public static SmileVProjectListVo getNew() {
try {
return (SmileVProjectListVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new SmileVProjectListVo();
}
}
public SmileVProjectListVo copy(SmileProjectDetailsVo source, Integer applyStatus) {
this.setProjectId(source.getProjectId());
this.setTitle(source.getTitle());
this.setTimeStart(source.getTimeStart());
this.setTimeEnd(source.getTimeEnd());
this.setAddress(source.getAddress());
this.setImg(source.getImg());
this.setApplyStatus(applyStatus);
LocalDateTime now = LocalDateTime.now();
LocalDateTime ldtStart = LocalDateTime.parse(source.getTimeStart(), DTF_YMD_HMS);
LocalDateTime ldtEnd = LocalDateTime.parse(source.getTimeEnd(), DTF_YMD_HMS);
if (now.isAfter(ldtEnd)) {
this.setProjectStatus(2);
} else if (now.isBefore(ldtStart)) {
this.setProjectStatus(0);
}else{
this.setProjectStatus(1);
}
return this;
}
}
package com.liquidnet.service.goblin.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import static com.liquidnet.commons.lang.util.DateUtil.DTF_YMD_HMS;
/**
* <p>
*
* </p>
*
* @author jobob
* @since 2022-03-11
*/
@ApiModel(value = "SmileVProjectListVo")
@Data
public class SmileVProjectVo implements Serializable, Cloneable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "活动id")
private String projectId;
@ApiModelProperty(value = "标题")
private String title;
@ApiModelProperty(value = "开始时间")
private String timeStart;
@ApiModelProperty(value = "结束时间")
private String timeEnd;
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "封面图")
private String img;
@ApiModelProperty(value = "报名状态[0-未报名|1-已报名]")
private Integer applyStatus;
@ApiModelProperty(value = "活动状态[0-未开始|1-进行中|2-已结束]")
private Integer projectStatus;
@ApiModelProperty(value = "活动介绍")
private String introduce;
@ApiModelProperty(value = "关联职责组")
private List<SmileVTeamVo> teamList;
private static final SmileVProjectVo obj = new SmileVProjectVo();
public static SmileVProjectVo getNew() {
try {
return (SmileVProjectVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new SmileVProjectVo();
}
}
public SmileVProjectVo copy(SmileProjectDetailsVo source, Integer applyStatus, List<SmileVTeamVo> teamVos) {
this.setProjectId(source.getProjectId());
this.setTitle(source.getTitle());
this.setTimeStart(source.getTimeStart());
this.setTimeEnd(source.getTimeEnd());
this.setAddress(source.getAddress());
this.setImg(source.getImg());
this.setApplyStatus(applyStatus);
this.setIntroduce(source.getIntroduce());
this.setTeamList(teamVos);
LocalDateTime now = LocalDateTime.now();
LocalDateTime ldtStart = LocalDateTime.parse(source.getTimeStart(), DTF_YMD_HMS);
LocalDateTime ldtEnd = LocalDateTime.parse(source.getTimeEnd(), DTF_YMD_HMS);
if (now.isAfter(ldtEnd)) {
this.setProjectStatus(2);
} else if (now.isBefore(ldtStart)) {
this.setProjectStatus(0);
} else {
this.setProjectStatus(1);
}
return this;
}
}
package com.liquidnet.service.goblin.dto.vo;
import com.liquidnet.service.smile.entity.SmileVolunteersTeam;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
*
* </p>
*
* @author jobob
* @since 2022-03-11
*/
@ApiModel(value = "SmileVProjectListVo")
@Data
public class SmileVTeamVo implements Serializable, Cloneable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "活动id")
private String teamId;
@ApiModelProperty(value = "标题")
private String name;
@ApiModelProperty(value = "组介绍")
private String introduce;
@ApiModelProperty(value = "用户是否选择[0-未选择|1-已选择]")
private Integer status;
private static final SmileVTeamVo obj = new SmileVTeamVo();
public static SmileVTeamVo getNew() {
try {
return (SmileVTeamVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new SmileVTeamVo();
}
}
public SmileVTeamVo copy(SmileVolunteersTeam source,Integer checkStatus) {
this.setTeamId(source.getTeamId());
this.setName(source.getName());
this.setIntroduce(source.getIntroduce());
this.setStatus(checkStatus);
return this;
}
}
package com.liquidnet.client.admin.zhengzai.smile.vo;
package com.liquidnet.service.goblin.dto.vo;
import com.liquidnet.service.smile.entity.SmileVolunteers;
import com.liquidnet.service.smile.entity.SmileVolunteersProject;
......@@ -6,7 +6,6 @@ import com.liquidnet.service.smile.entity.SmileVolunteersTeam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.List;
......
package com.liquidnet.service.goblin.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author jobob
* @since 2022-03-11
*/
@ApiModel(value = "SmileVolunteersApplyVo")
@Data
public class SmileVolunteersApplyParam implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "活动id")
private String projectId;
@ApiModelProperty(value = "头像")
private String img;
@ApiModelProperty(value = "姓名")
private String name;
@ApiModelProperty(value = "证件号")
private String idCard;
@ApiModelProperty(value = "性别[0-未知|1-男|2-女]")
private Integer sex;
@ApiModelProperty(value = "学校名称")
private String school;
@ApiModelProperty(value = "学校地址")
private String schoolAddress;
@ApiModelProperty(value = "专长")
private String specialty;
@ApiModelProperty(value = "特长")
private String specialty2;
@ApiModelProperty(value = "手机号")
private String phone;
@ApiModelProperty(value = "自我介绍")
private String introduce;
@ApiModelProperty(value = "申请职责ID[职责组Id]")
private String teamId1;
@ApiModelProperty(value = "申请职责ID[职责组Id]")
private String teamId2;
@ApiModelProperty(value = "申请职责ID[职责组Id]")
private String teamId3;
}
package com.liquidnet.service.goblin.service.manage;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.vo.SmileSellDataDetailVO;
import com.liquidnet.service.goblin.dto.vo.SmileUserVO;
import com.liquidnet.service.goblin.dto.vo.SmileVProjectListVo;
import com.liquidnet.service.goblin.dto.vo.SmileVProjectVo;
import com.liquidnet.service.goblin.param.SmileVolunteersApplyParam;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.sun.org.apache.xpath.internal.operations.Bool;
import java.util.List;
public interface SmileVolunteersService {
ResponseDto<List<SmileVProjectListVo>> projectList(String uid);
ResponseDto<SmileVProjectVo> projectDetails(String uid, String projectId);
ResponseDto<Boolean> apply(SmileVolunteersApplyParam param);
}
......@@ -10,8 +10,8 @@ import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVTSParam;
import com.liquidnet.client.admin.zhengzai.smile.service.ISmileVolunteersProjectService;
import com.liquidnet.client.admin.zhengzai.smile.service.ISmileVolunteersService;
import com.liquidnet.client.admin.zhengzai.smile.service.ISmileVolunteersTeamService;
import com.liquidnet.client.admin.zhengzai.smile.vo.SmileProjectDetailsVo;
import com.liquidnet.client.admin.zhengzai.smile.vo.SmileVolunteersDetailsVo;
import com.liquidnet.service.goblin.dto.vo.SmileProjectDetailsVo;
import com.liquidnet.service.goblin.dto.vo.SmileVolunteersDetailsVo;
import com.liquidnet.service.smile.entity.SmileVolunteersTeam;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
......
......@@ -4,7 +4,7 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVPParam;
import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVPSParam;
import com.liquidnet.client.admin.zhengzai.smile.vo.SmileProjectDetailsVo;
import com.liquidnet.service.goblin.dto.vo.SmileProjectDetailsVo;
import com.liquidnet.service.smile.entity.SmileVolunteersProject;
import com.baomidou.mybatisplus.extension.service.IService;
......
......@@ -2,11 +2,8 @@ package com.liquidnet.client.admin.zhengzai.smile.service;
import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVPParam;
import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVPSParam;
import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVSParam;
import com.liquidnet.client.admin.zhengzai.smile.vo.SmileProjectDetailsVo;
import com.liquidnet.client.admin.zhengzai.smile.vo.SmileVolunteersDetailsVo;
import com.liquidnet.service.goblin.dto.vo.SmileVolunteersDetailsVo;
import com.liquidnet.service.smile.entity.SmileVolunteers;
import com.baomidou.mybatisplus.extension.service.IService;
......
......@@ -10,7 +10,7 @@ import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVPParam;
import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVPSParam;
import com.liquidnet.client.admin.zhengzai.smile.service.ISmileVolunteersProjectService;
import com.liquidnet.client.admin.zhengzai.smile.utils.SmileRedisUtils;
import com.liquidnet.client.admin.zhengzai.smile.vo.SmileProjectDetailsVo;
import com.liquidnet.service.goblin.dto.vo.SmileProjectDetailsVo;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.smile.entity.SmileProjectTeamRelation;
import com.liquidnet.service.smile.entity.SmileVolunteersProject;
......
......@@ -8,7 +8,7 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.zhengzai.smile.dto.SmileVSParam;
import com.liquidnet.client.admin.zhengzai.smile.service.ISmileVolunteersService;
import com.liquidnet.client.admin.zhengzai.smile.vo.SmileVolunteersDetailsVo;
import com.liquidnet.service.goblin.dto.vo.SmileVolunteersDetailsVo;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.service.smile.entity.*;
import com.liquidnet.service.smile.mapper.*;
......
package com.liquidnet.client.admin.zhengzai.smile.utils;
import com.liquidnet.client.admin.zhengzai.smile.vo.SmileProjectDetailsVo;
import com.liquidnet.service.goblin.dto.vo.SmileProjectDetailsVo;
import com.liquidnet.common.cache.redis.util.AbstractRedisUtil;
import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil;
import com.liquidnet.commons.lang.util.CollectionUtil;
......@@ -180,6 +180,9 @@ public class SmileRedisUtils {
String rdk = SmileRedisConst.PROJECT_ID_LIST;
ArrayList<String> list = getProjectId();
list.add(projectId);
if (list.size() > 40) {
list.remove(0);
}
getRedis().set(rdk, list);
}
......
......@@ -101,7 +101,8 @@ global-auth:
- ${liquidnet.info.context}/v2/api-docs*
- ${liquidnet.info.context}/inner/**
- ${liquidnet.info.context}/frontNoLogin/**
- ${liquidnet.info.context}/volunteers/project/list
- ${liquidnet.info.context}/volunteers/project/details
oncheck-url-pattern:
-
......
......@@ -11,6 +11,7 @@ import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.service.manage.SmileFrontService;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.util.SmileRedisUtils;
import com.liquidnet.service.util.Utils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
......@@ -39,7 +40,7 @@ public class SmileUserController {
@Autowired
private SmileFrontService smileFrontService;
@Autowired
private MongoTemplate mongoTemplate;
private Utils utils;
@GetMapping("getUser")
@ApiOperation("获取用户状态,如果没查到,则返回null")
......@@ -147,7 +148,7 @@ public class SmileUserController {
}
if(StringUtil.isNotBlank(smileUserVO.getIdCard())&&StringUtil.isNotBlank(smileUserVO.getName())){
String userId = CurrentUtil.getCurrentUid();
if(validate(smileUserVO.getName(),smileUserVO.getIdCard(),userId)){
if(utils.validate(smileUserVO.getName(),smileUserVO.getIdCard())){
smileUserVO.setUid(userId);
SmileUserVO smileUserVORedis=smileRedisUtils.getSmileUserVo(userId);
if(null!=smileUserVORedis&&null!=smileUserVORedis.getType()&&(smileUserVORedis.getType()==1||smileUserVORedis.getType()==2)){
......@@ -162,24 +163,7 @@ public class SmileUserController {
return ResponseDto.success();
}
public boolean validate(String realName,String cardNo,String userid){
//查看是否之前这个 身份证和 名字(1:验证失败 2:验证成功)
String status= smileRedisUtils.getValidate(realName,cardNo);
if(null!=status&&"1".equals(status)){
return false;
}
String respStr = IdentityUtils.aliThird(realName, cardNo), respErrorCode = null;
JsonNode respJNode = JsonUtils.fromJson(respStr, JsonNode.class);
if (null == respJNode || !"0".equals(respErrorCode = String.valueOf(respJNode.get("error_code")))) {
log.info("###实名认证失败[{}]", respJNode);
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102");
smileRedisUtils.setValidate(realName,cardNo,"1");
return false;
}
smileRedisUtils.setValidate(realName,cardNo,"2");
return true;
}
@PostMapping("saveOrUpdateUserThreeStep")
@ApiOperation("增加或者删除第三步")
public ResponseDto saveOrUpdateUserThreeStep(@Validated(SmileUserVO.saveThree.class) @RequestBody SmileUserVO smileUserVO, MethodArgumentNotValidException exception) {
......
package com.liquidnet.service.controller;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.constant.SmileRedisConst;
import com.liquidnet.service.goblin.dto.vo.SmileAgentVo;
import com.liquidnet.service.goblin.dto.vo.SmileUserVO;
import com.liquidnet.service.goblin.dto.vo.SmileVProjectListVo;
import com.liquidnet.service.goblin.dto.vo.SmileVProjectVo;
import com.liquidnet.service.goblin.param.SmileVolunteersApplyParam;
import com.liquidnet.service.goblin.service.manage.SmileFrontService;
import com.liquidnet.service.goblin.service.manage.SmileVolunteersService;
import com.liquidnet.service.util.SmileRedisUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author zhangfuxin
* @Description:用户接口
* @date 2021/12/27 下午6:25
*/
@Api(tags = "志愿者相关接口")
@RestController
@RequestMapping("/volunteers")
@Slf4j
public class SmileVolunteersController {
@Autowired
SmileVolunteersService volunteersService;
@PostMapping("/project/list")
@ApiOperation("活动列表")
public ResponseDto<List<SmileVProjectListVo>> projectList(String uid) {
return volunteersService.projectList(uid);
}
@PostMapping("/project/details")
@ApiOperation("活动详情")
public ResponseDto<SmileVProjectVo> projectDetails(String uid, String projectId) {
return volunteersService.projectDetails(uid, projectId);
}
@PostMapping("apply")
@ApiOperation("活动报名")
public ResponseDto<Boolean> apply(@RequestBody SmileVolunteersApplyParam param) {
return volunteersService.apply(param);
}
}
package com.liquidnet.service.service.impl;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.param.SmileVolunteersApplyParam;
import com.liquidnet.service.goblin.service.manage.SmileFrontService;
import com.liquidnet.service.goblin.service.manage.SmileVolunteersService;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.smile.entity.SmileVolunteersTeam;
import com.liquidnet.service.util.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service
@Slf4j
public class SmileVolunteerServerImpl implements SmileVolunteersService {
@Autowired
private SmileRedisUtils smileRedisUtils;
@Autowired
QueueUtils queueUtils;
@Autowired
Utils utils;
@Override
public ResponseDto<List<SmileVProjectListVo>> projectList(String uid) {
List<SmileVProjectListVo> voList = ObjectUtil.smileVProjectListVoList();
List<String> projectIds = smileRedisUtils.getProjectId();
for (String projectId : projectIds) {
SmileProjectDetailsVo redisData = smileRedisUtils.getProject(projectId);
ArrayList<String> teamIds = smileRedisUtils.getVolunteers(projectId, uid);
SmileVProjectListVo vo = SmileVProjectListVo.getNew().copy(redisData, teamIds == null ? 0 : 1);
voList.add(vo);
}
return ResponseDto.success(voList);
}
@Override
public ResponseDto<SmileVProjectVo> projectDetails(String uid, String projectId) {
List<SmileVTeamVo> teamVos = ObjectUtil.smileVTeamVoList();
SmileProjectDetailsVo redisData = smileRedisUtils.getProject(projectId);
ArrayList<String> teamIds = smileRedisUtils.getVolunteers(projectId, uid);
List<SmileVolunteersTeam> beanList = redisData.getTeamArray();
if (beanList != null) {
List<String> projectTeamR = beanList.stream().map(SmileVolunteersTeam::getTeamId).collect(Collectors.toList());
for (String teamId : projectTeamR) {
SmileVolunteersTeam bean = smileRedisUtils.getTeam(teamId);
int checkStatus = 0;
if (teamIds != null) {
checkStatus = teamIds.contains(teamId) ? 1 : 0;
}
SmileVTeamVo teamVo = SmileVTeamVo.getNew().copy(bean, checkStatus);
teamVos.add(teamVo);
}
}
Integer applyStatus = teamIds == null ? 0 : 1;
SmileVProjectVo vo = SmileVProjectVo.getNew().copy(redisData, applyStatus, teamVos);
return ResponseDto.success(vo);
}
@Override
public ResponseDto<Boolean> apply(SmileVolunteersApplyParam param) {
String uid = CurrentUtil.getCurrentUid();
ArrayList<String> teamIds = CollectionUtil.arrayListString();
try {
if (!utils.validate(param.getName(), param.getIdCard())) {
return ResponseDto.failure("验证身份证失败!");
}
if (!param.getTeamId1().equals("") && param.getTeamId1() != null) {
teamIds.add(param.getTeamId1());
}
if (!param.getTeamId2().equals("") && param.getTeamId2() != null) {
teamIds.add(param.getTeamId2());
}
if (!param.getTeamId3().equals("") && param.getTeamId3() != null) {
teamIds.add(param.getTeamId3());
}
smileRedisUtils.setVolunteers(param.getProjectId(), uid, teamIds);
queueUtils.sendMsgByRedis(MQConst.SmileQueue.SMILE_USER.getKey(),
SqlMapping.get("smile_volunteers.apply",
uid, param.getProjectId(), param.getName(), param.getImg(),
param.getIdCard(), param.getSex(), param.getSchool(), param.getSchoolAddress(),
param.getSpecialty(), param.getSpecialty2(), param.getPhone(), param.getTeamId1(),
param.getTeamId2(), param.getTeamId3(), param.getIntroduce(), LocalDateTime.now()
));
} catch (Exception e) {
e.printStackTrace();
return ResponseDto.failure();
}
return ResponseDto.success();
}
}
package com.liquidnet.service.util;
import com.liquidnet.service.goblin.dto.vo.SmileVProjectListVo;
import com.liquidnet.service.goblin.dto.vo.SmileVTeamVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import java.util.ArrayList;
import java.util.List;
public class ObjectUtil {
private static final ArrayList<KylinPerformanceVo> kylinPerformanceVoList = new ArrayList<>();
private static final ArrayList<SmileVProjectListVo> smileVProjectListVoList = new ArrayList<>();
private static final ArrayList<SmileVTeamVo> smileVTeamVoList = new ArrayList<>();
public static ArrayList<SmileVTeamVo> smileVTeamVoList(){
return (ArrayList<SmileVTeamVo>) smileVTeamVoList.clone();
}
public static ArrayList<SmileVProjectListVo> smileVProjectListVoList(){
return (ArrayList<SmileVProjectListVo>) smileVProjectListVoList.clone();
}
public static ArrayList<KylinPerformanceVo> kylinPerformanceVoList(){
return (ArrayList<KylinPerformanceVo>) kylinPerformanceVoList.clone();
......
......@@ -17,17 +17,6 @@ public class QueueUtils {
@Autowired
StringRedisTemplate stringRedisTemplate;
/**
* 发送消息 - RABBIT
*
* @param exchange 交换机
* @param routeKey 路径
* @param jsonMsg Json字符串
*/
// public void sendMsgByRabbit(String exchange, String routeKey, String jsonMsg) {
// rabbitTemplate.convertAndSend(exchange, routeKey, jsonMsg);
// }
/**
* 发送消息 - REDIS
*
......@@ -39,23 +28,4 @@ public class QueueUtils {
map.put("message", jsonMsg);
stringRedisTemplate.opsForStream().add(StreamRecords.mapBacked(map).withStreamKey(streamKey));
}
/**
* 发送消息 - REDIS [XLS]
*
* @param xlsPath xls 对应的OSS 全量路径
* @param type [1-添加|2-删除]
* @param skuId skuId
*/
public void sendMsgByRedisXls(String xlsPath, String type, String skuId) {
if (xlsPath == null || xlsPath.equals("") || type == null || type.equals("") || skuId == null || skuId.equals("")) {
} else {
HashMap<String, String> map = CollectionUtil.mapStringString();
map.put("message", xlsPath);
map.put("type", type);
map.put("skuId", skuId);
stringRedisTemplate.opsForStream().add(StreamRecords.mapBacked(map).withStreamKey(MQConst.GoblinQueue.GOBLIN_XLS_OPERA.getKey()));
}
}
}
package com.liquidnet.service.util;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.service.goblin.constant.SmileRedisConst;
import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.smile.entity.SmileVolunteersTeam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
@Slf4j
......@@ -20,40 +23,108 @@ public class SmileRedisUtils {
public void del(String... keys) {
redisUtil.del(keys);
}
/* ---------------------------------------- smileUser ---------------------------------------- */
public SmileUserVO getSmileUserVo(String userId){
return (SmileUserVO) redisUtil.get(SmileRedisConst.SMILE_USER.concat(userId));
public SmileUserVO getSmileUserVo(String userId) {
return (SmileUserVO) redisUtil.get(SmileRedisConst.SMILE_USER.concat(userId));
}
public void setSmileUserVo(String userId,SmileUserVO smileUserVORedis){
redisUtil.set(SmileRedisConst.SMILE_USER.concat(userId),smileUserVORedis);
public void setSmileUserVo(String userId, SmileUserVO smileUserVORedis) {
redisUtil.set(SmileRedisConst.SMILE_USER.concat(userId), smileUserVORedis);
}
/* ---------------------------------------- school ---------------------------------------- */
public List<SmileSchoolVo> getSchool(){
public List<SmileSchoolVo> getSchool() {
return (List<SmileSchoolVo>) redisUtil.get(SmileRedisConst.SMILE_SCHOOL);
}
/* ---------------------------------------- 认证 ---------------------------------------- */
public String getValidate(String realName,String cardNo){
return (String) redisUtil.get(SmileRedisConst.SMILE_USER_VALIDATE.concat(realName+cardNo));
public String getValidate(String realName, String cardNo) {
return (String) redisUtil.get(SmileRedisConst.SMILE_USER_VALIDATE.concat(realName + cardNo));
}
public void setValidate(String realName,String cardNo,String type){
redisUtil.set(SmileRedisConst.SMILE_USER_VALIDATE.concat(realName+cardNo),type);
public void setValidate(String realName, String cardNo, String type) {
redisUtil.set(SmileRedisConst.SMILE_USER_VALIDATE.concat(realName + cardNo), type);
}
/* ---------------------------------------- 销售数据 ---------------------------------------- */
public SmileSellDataVO getSellDataVo(String userId, String performanceId){
return (SmileSellDataVO) redisUtil.get(SmileRedisConst.SELL_DATA.concat(userId).concat(performanceId));
public SmileSellDataVO getSellDataVo(String userId, String performanceId) {
return (SmileSellDataVO) redisUtil.get(SmileRedisConst.SELL_DATA.concat(userId).concat(performanceId));
}
/* ---------------------------------------- 佣金明细数据 ---------------------------------------- */
public CommissionVO getCommissionVO(String userId){
public CommissionVO getCommissionVO(String userId) {
return (CommissionVO) redisUtil.get(SmileRedisConst.SELL_DATA_COMMISSION.concat(userId));
}
/* ---------------------------------------- 演出列表数据 ---------------------------------------- */
public String getSmileShow(){
public String getSmileShow() {
return (String) redisUtil.get(SmileRedisConst.SMILE_SHOW);
}
/* ---------------------------------------- 代理数据 ---------------------------------------- */
public SmileAgentVo getSmileAgentVo(String performanceId,String ticketId){
public SmileAgentVo getSmileAgentVo(String performanceId, String ticketId) {
return (SmileAgentVo) redisUtil.get(SmileRedisConst.SMILE_AGENT.concat(performanceId).concat(":").concat(ticketId));
}
/**
* 添加志愿者报名情况
*
* @param projectId 活动id
* @param uid 用户id
* @param teamIds 组id数组
*/
public void setVolunteers(String projectId, String uid, ArrayList<String> teamIds) {
String rdk = SmileRedisConst.VOLUNTEERS_DETAILS.concat(projectId).concat(":uid:").concat(uid);
redisUtil.set(rdk, teamIds);
}
/**
* 获取志愿者报名情况
*
* @param projectId 活动id
* @param uid 用户id
*/
public ArrayList<String> getVolunteers(String projectId, String uid) {
String rdk = SmileRedisConst.VOLUNTEERS_DETAILS.concat(projectId).concat(":uid:").concat(uid);
Object obj = redisUtil.get(rdk);
if (obj == null) {
return null;
} else {
return (ArrayList<String>) obj;
}
}
//获取 志愿者活动详情
public SmileProjectDetailsVo getProject(String projectId) {
String rdk = SmileRedisConst.PROJECT_DETAILS.concat(projectId);
Object obj = redisUtil.get(rdk);
if (obj == null) {
return null;
} else {
return (SmileProjectDetailsVo) obj;
}
}
//获取 志愿者职责组详情
public SmileVolunteersTeam getTeam(String teamId) {
String rdk = SmileRedisConst.TEAM_DETAILS.concat(teamId);
Object obj = redisUtil.get(rdk);
if (obj == null) {
return null;
} else {
return (SmileVolunteersTeam) obj;
}
}
// 获取活动列表id
public ArrayList<String> getProjectId() {
String rdk = SmileRedisConst.PROJECT_ID_LIST;
Object obj = redisUtil.get(rdk);
if (obj == null) {
return CollectionUtil.arrayListString();
} else {
return (ArrayList<String>) obj;
}
}
}
package com.liquidnet.service.util;
import com.fasterxml.jackson.databind.JsonNode;
import com.liquidnet.commons.lang.util.IdentityUtils;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.base.ErrorMapping;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Slf4j
@Component
public class Utils {
@Autowired
private SmileRedisUtils smileRedisUtils;
public boolean validate(String realName, String cardNo) {
//查看是否之前这个 身份证和 名字(1:验证失败 2:验证成功)
String status = smileRedisUtils.getValidate(realName, cardNo);
if (null != status && "1".equals(status)) {
return false;
}
String respStr = IdentityUtils.aliThird(realName, cardNo), respErrorCode = null;
JsonNode respJNode = JsonUtils.fromJson(respStr, JsonNode.class);
if (null == respJNode || !"0".equals(respErrorCode = String.valueOf(respJNode.get("error_code")))) {
log.debug("###实名认证失败[{}]", respJNode);
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102");
smileRedisUtils.setValidate(realName, cardNo, "1");
return false;
}
smileRedisUtils.setValidate(realName, cardNo, "2");
return true;
}
}
......@@ -3,4 +3,8 @@ goblin_service_support.insert_byreplace=REPLACE INTO goblin_service_support (ssi
smile_service.insert_user= insert into smile_user(img,`name`,`uid`,birthday,sex,phone,province_id,province,city_id,city,area_id,area,address,wechat,`type`,org_id,id_card,school_name,school_major,`identity`,tag,agent,error_reason,introduce,specialty1,specialty2,specialty3,`state`,del_tag,created_date,updated_date,school_id) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
smile_service.update_user= update smile_user set img =?,`name`=?,birthday=?,sex =?,phone=?,province_key=?,province=?,city_key =?,city=?,area_key=?,area =?,address =?,wechat =?,`type`=?,org_id =?,id_card=?,school_name =?,school_major =?,`identity`=?,tag =?,agent =?,auth_tag =?,error_reason =?,introduce =?,specialty1 =?,specialty2 =?,specialty3 =?,`state`=?,updated_date=?,school_id=? where `uid`=?
smile_service.delete_user= delete from smile_user where uid=?
\ No newline at end of file
smile_service.delete_user= delete from smile_user where uid=?
#---- 志愿者报名
smile_volunteers.apply = INSERT INTO smile_volunteers (`uid`,`project_id`,`name`,`img`,`id_card`,`sex`,`school`,`school_address`,`specialty`,`specialty_2`,`phone`,`team_id_1`,`team_id_2`,`team_id_3`,`introduce`,`created_at`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
\ 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