Browse Source

Merge remote-tracking branch 'origin/feature-1.0-img' into feature-1.0-img-quan

# Conflicts:
#	bnyer-services/bnyer-file/pom.xml
feature-1.0-img-prototype
qyhdd 4 years ago
parent
commit
a64f591bd6
  1. 2
      bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
  2. 4
      bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories
  3. 3
      bnyer-services/bnyer-file/pom.xml
  4. 2
      bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
  5. 15
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/TiktokConstant.java
  6. 5
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorController.java
  7. 2
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
  8. 17
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java
  9. 13
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java
  10. 23
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorLoginDto.java
  11. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorPageDto.java
  12. 7
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java
  13. 141
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java
  14. 71
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorLoginVo.java
  15. 7
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml

2
bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java

@ -24,6 +24,6 @@ public interface RemoteImgService {
* @param dto 图片接收类 * @param dto 图片接收类
* @return - * @return -
*/ */
@PostMapping(value = "/insertTiktokImg") @PostMapping(value = "/img/mini/creator/insertTiktokImg")
public R<Integer> insertTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgMiniDto dto); public R<Integer> insertTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgMiniDto dto);
} }

4
bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories

@ -1,2 +1,2 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ org.springframework.boot.autoconfigure.EnableAutoConfiguration = com.bnyer.img.api.factory.RemoteImgFallbackFactory
com.bnyer.img.api.factory.RemoteImgFallbackFactory

3
bnyer-services/bnyer-file/pom.xml

@ -96,14 +96,13 @@
<dependency> <dependency>
<groupId>com.dimensionalnode</groupId> <groupId>com.dimensionalnode</groupId>
<artifactId>bnyer-api-img</artifactId> <artifactId>bnyer-api-img</artifactId>
<version>1.0.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.dimensionalnode</groupId> <groupId>com.dimensionalnode</groupId>
<artifactId>bnyer-common-security</artifactId> <artifactId>bnyer-common-security</artifactId>
</dependency> </dependency>
</dependencies> </dependencies>
<build> <build>

2
bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java

@ -1,5 +1,6 @@
package com.bnyer.file; package com.bnyer.file;
import com.bnyer.common.security.annotation.EnableRyFeignClients;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
@ -13,6 +14,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
* @author ruoyi * @author ruoyi
*/ */
@EnableCustomSwagger2 @EnableCustomSwagger2
@EnableRyFeignClients
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class }) @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class })
@EnableFeignClients(basePackages = "com.bnyer.img.api") @EnableFeignClients(basePackages = "com.bnyer.img.api")
public class BnyerFileApplication public class BnyerFileApplication

15
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/TiktokConstant.java

@ -60,4 +60,19 @@ public class TiktokConstant {
* 调用快手授权失败 * 调用快手授权失败
*/ */
public static final Integer FH_AUTH_ERROR = 105009; public static final Integer FH_AUTH_ERROR = 105009;
/**
* 艺术家手机号或密码不正确
*/
public static final Integer TIKTOK_CREATOR_PWD_ERROR = 105010;
/**
* 艺术家尚未审核
*/
public static final Integer TIKTOK_CREATOR_NOT_PASS_ERROR = 105011;
/**
* 艺术家尚未审核
*/
public static final Integer TIKTOK_CREATOR_BANED_ERROR = 105012;
} }

5
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorController.java

@ -38,9 +38,6 @@ public class CreatorController extends BaseController {
if(StringUtils.isNotBlank(dto.getPhone())){ if(StringUtils.isNotBlank(dto.getPhone())){
dto.setPhone(Sm4Util.sm4Encryption(dto.getPhone())); dto.setPhone(Sm4Util.sm4Encryption(dto.getPhone()));
} }
if(StringUtils.isNotBlank(dto.getOpenId())){
dto.setOpenId(Sm4Util.sm4Encryption(dto.getOpenId()));
}
PageHelper.startPage(dto.getPageNum(), dto.getPageSize()); PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
List<Creator> creators = creatorService.queryPage(dto); List<Creator> creators = creatorService.queryPage(dto);
if(creators.size() > 0){ if(creators.size() > 0){
@ -49,8 +46,6 @@ public class CreatorController extends BaseController {
if(StringUtils.isNotBlank(creator.getPhone())){ if(StringUtils.isNotBlank(creator.getPhone())){
creator.setPhone(Sm4Util.sm4Decrypt(creator.getPhone())); creator.setPhone(Sm4Util.sm4Decrypt(creator.getPhone()));
} }
//暂时注释掉openId解密校验
//creator.setOpenId(Sm4Util.sm4Decrypt(creator.getOpenId()));
} }
} }
} }

2
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java

@ -251,7 +251,7 @@ public class CreatorMiniController extends BaseController {
//@TokenCheck //@TokenCheck
@PostMapping("/login") @PostMapping("/login")
@ApiOperation("小程序艺术家登录") @ApiOperation("小程序艺术家登录")
public AjaxResult login(@Validated @ApiParam("艺术家数据") @RequestBody WxLoginDto param) public AjaxResult login(@Validated @ApiParam("艺术家数据") @RequestBody CreatorLoginDto param)
{ {
log.info("小程序艺术家数据参数为:{}", JSON.toJSON(param)); log.info("小程序艺术家数据参数为:{}", JSON.toJSON(param));
return AjaxResult.success(creatorService.login(param)); return AjaxResult.success(creatorService.login(param));

17
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java

@ -30,7 +30,7 @@ public class Creator extends BaseDomain {
/** /**
* 主键id * 主键id
*/ */
@TableId(value = "id", type = IdType.INPUT) @TableId(value = "id", type = IdType.AUTO)
@ApiModelProperty(value="主键id") @ApiModelProperty(value="主键id")
private Long id; private Long id;
@ -42,11 +42,11 @@ public class Creator extends BaseDomain {
private String name; private String name;
/** /**
* 姓名 * 密码
*/ */
@TableField(value = "open_id") @TableField(value = "password")
@ApiModelProperty(value="微信id") @ApiModelProperty(value="密码")
private String openId; private String password;
/** /**
* 搜索码 * 搜索码
@ -111,13 +111,6 @@ public class Creator extends BaseDomain {
@ApiModelProperty(value="是否活跃(0->不活跃;1->活跃 连续10天以上更新内容)") @ApiModelProperty(value="是否活跃(0->不活跃;1->活跃 连续10天以上更新内容)")
private String isHot; private String isHot;
/**
* 是否显示 (0->隐藏1->显示)
*/
@TableField(value = "is_show")
@ApiModelProperty(value="是否显示 (0->隐藏;1->显示)")
private String isShow;
/** /**
* 最后登录时间 * 最后登录时间
*/ */

13
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java

@ -14,8 +14,9 @@ import java.io.Serializable;
@ApiModel("艺术家接收类") @ApiModel("艺术家接收类")
public class CreatorDto implements Serializable { public class CreatorDto implements Serializable {
@ApiModelProperty(value="主键Id") @NotBlank(message = "昵称不能为空!")
private Long id; @ApiModelProperty(value="昵称")
private String name;
@NotBlank(message = "搜索码不能为空!") @NotBlank(message = "搜索码不能为空!")
@ApiModelProperty(value="搜索码") @ApiModelProperty(value="搜索码")
@ -25,6 +26,14 @@ public class CreatorDto implements Serializable {
@ApiModelProperty(value="手机号") @ApiModelProperty(value="手机号")
private String phone; private String phone;
@NotBlank(message = "密码不能为空!")
@ApiModelProperty(value="密码")
private String password;
@NotBlank(message = "头像不能为空!")
@ApiModelProperty(value="头像img地址")
private String img;
@ApiModelProperty(value="简介") @ApiModelProperty(value="简介")
private String intro; private String intro;

23
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorLoginDto.java

@ -0,0 +1,23 @@
package com.bnyer.img.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
@Getter
@Setter
@ApiModel("艺术家登录入参")
public class CreatorLoginDto implements Serializable {
@NotBlank(message = "手机号不能为空!")
@ApiModelProperty(value = "手机号")
private String phone;
@NotBlank(message = "密码不能为空!")
@ApiModelProperty(value = "密码")
private String password;
}

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorPageDto.java

@ -16,9 +16,6 @@ public class CreatorPageDto extends BasePageDto {
@ApiModelProperty(value="昵称") @ApiModelProperty(value="昵称")
private String name; private String name;
@ApiModelProperty(value="微信id")
private String openId;
@ApiModelProperty(value="搜索码") @ApiModelProperty(value="搜索码")
private String scanCode; private String scanCode;

7
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java

@ -1,10 +1,7 @@
package com.bnyer.img.service; package com.bnyer.img.service;
import com.bnyer.img.domain.Creator; import com.bnyer.img.domain.Creator;
import com.bnyer.img.dto.CreatorDto; import com.bnyer.img.dto.*;
import com.bnyer.img.dto.CreatorPageDto;
import com.bnyer.img.dto.VerifyCreatorDto;
import com.bnyer.img.dto.WxLoginDto;
import com.bnyer.img.vo.*; import com.bnyer.img.vo.*;
import java.util.List; import java.util.List;
@ -98,7 +95,7 @@ public interface CreatorService {
* @param param 前端传来的参数 * @param param 前端传来的参数
* @return - * @return -
*/ */
Map<String,Object> login(WxLoginDto param); Map<String,Object> login(CreatorLoginDto param);
/** /**
* 查询所有审核通过的艺术家 * 查询所有审核通过的艺术家

141
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java

@ -1,6 +1,5 @@
package com.bnyer.img.service.impl; package com.bnyer.img.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.bnyer.common.core.exception.ServiceException; import com.bnyer.common.core.exception.ServiceException;
@ -16,27 +15,30 @@ import com.bnyer.img.domain.InviteLog;
import com.bnyer.img.domain.TiktokImg; import com.bnyer.img.domain.TiktokImg;
import com.bnyer.img.domain.VerifyLog; import com.bnyer.img.domain.VerifyLog;
import com.bnyer.img.dto.CreatorDto; import com.bnyer.img.dto.CreatorDto;
import com.bnyer.img.dto.CreatorLoginDto;
import com.bnyer.img.dto.CreatorPageDto; import com.bnyer.img.dto.CreatorPageDto;
import com.bnyer.img.dto.VerifyCreatorDto; import com.bnyer.img.dto.VerifyCreatorDto;
import com.bnyer.img.dto.WxLoginDto;
import com.bnyer.img.mapper.CreatorMapper; import com.bnyer.img.mapper.CreatorMapper;
import com.bnyer.img.mapper.InviteLogMapper; import com.bnyer.img.mapper.InviteLogMapper;
import com.bnyer.img.mapper.TiktokImgMapper; import com.bnyer.img.mapper.TiktokImgMapper;
import com.bnyer.img.mapper.VerifyLogMapper; import com.bnyer.img.mapper.VerifyLogMapper;
import com.bnyer.img.service.CreatorService; import com.bnyer.img.service.CreatorService;
import com.bnyer.img.vo.*; import com.bnyer.img.vo.CreatorDetailsVo;
import com.bnyer.img.vo.CreatorHotVo;
import com.bnyer.img.vo.CreatorLoginVo;
import com.bnyer.img.vo.CreatorVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.*; import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
/** /**
@ -132,7 +134,9 @@ public class CreatorServiceImpl implements CreatorService {
throw new ServiceException("邀请码不存在,请重新编辑!",TiktokConstant.INVITE_CODE_NOT_EXIST); throw new ServiceException("邀请码不存在,请重新编辑!",TiktokConstant.INVITE_CODE_NOT_EXIST);
} }
Creator creator = new Creator(); Creator creator = new Creator();
creator.setId(dto.getId()); creator.setName(dto.getName());
creator.setPassword(Sm4Util.sm4Encryption(dto.getPassword()));
creator.setImg(dto.getImg());
creator.setIntro(dto.getIntro()); creator.setIntro(dto.getIntro());
creator.setScanCode(dto.getScanCode()); creator.setScanCode(dto.getScanCode());
creator.setInviteCode(IdUtils.inviteCodeGen()); creator.setInviteCode(IdUtils.inviteCodeGen());
@ -143,8 +147,9 @@ public class CreatorServiceImpl implements CreatorService {
creator.setIsShow("1"); creator.setIsShow("1");
creator.setAmt(BigDecimal.valueOf(0)); creator.setAmt(BigDecimal.valueOf(0));
creator.setSort(0); creator.setSort(0);
creator.setCreateTime(new Date());
creator.setUpdateTime(new Date()); creator.setUpdateTime(new Date());
int update = creatorMapper.updateById(creator); int insert = creatorMapper.insert(creator);
log.info("手机号【{}】成为艺术家成功!待审核",dto.getPhone()); log.info("手机号【{}】成为艺术家成功!待审核",dto.getPhone());
//保存邀请记录 //保存邀请记录
InviteLog inviteLog = new InviteLog(); InviteLog inviteLog = new InviteLog();
@ -157,7 +162,7 @@ public class CreatorServiceImpl implements CreatorService {
inviteLog.setSort(0); inviteLog.setSort(0);
inviteLogMapper.insert(inviteLog); inviteLogMapper.insert(inviteLog);
log.info("艺术家id【{}】被邀请码【{}】邀请成功!记录写入数据库完成!",creator.getId(),dto.getInviteCode()); log.info("艺术家id【{}】被邀请码【{}】邀请成功!记录写入数据库完成!",creator.getId(),dto.getInviteCode());
return update; return insert;
} }
@Override @Override
@ -267,116 +272,38 @@ public class CreatorServiceImpl implements CreatorService {
return creatorMapper.update(creator,wrapper); return creatorMapper.update(creator,wrapper);
} }
/**
* 获取用户openId及sessionKey
* @param code 登录凭证code
* @return -
*/
private WxSessionInfoVo getSessionInfo(String code) {
String url = wxConfig.getSessionInfoUrl()+"?appid="+wxConfig.getAppId()+"&secret="+wxConfig.getSecret()+"&js_code="+code+"&grant_type=authorization_code";
String forObject = restTemplate.getForObject(url, String.class);
JSONObject sessionInfo = JSONObject.parseObject(forObject);
if(StringUtils.isNotBlank(sessionInfo.getString("errcode"))){
if(!sessionInfo.getString("errcode").equals(TiktokConstant.SUCCESS)){
log.error("微信授权session接口调用失败,错误状态码为:【{}】,错误信息为:【{}】",sessionInfo.getString("errcode"),sessionInfo.getString("errmsg"));
throw new ServiceException("微信授权session接口调用失败!",TiktokConstant.WECHAT_AUTH_ERROR);
}
}
//调用成功,组装返回数据
WxSessionInfoVo result = new WxSessionInfoVo();
result.setSessionKey(sessionInfo.getString("session_key"));
result.setOpenId(sessionInfo.getString("openid"));
return result;
}
/**
* 获取用户敏感信息
* @param sessionKey -
* @param encryptedData 敏感数据
* @param iv 加密向量
* @return -
*/
private WxUserInfoVo getUserInfo(String sessionKey, String encryptedData, String iv){
Base64.Decoder decoder = Base64.getDecoder();
byte[] sessionKeyBytes = decoder.decode(sessionKey);
byte[] ivBytes = decoder.decode(iv);
byte[] encryptedBytes = decoder.decode(encryptedData);
Cipher cipher = null;
try {
cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
SecretKeySpec skeySpec = new SecretKeySpec(sessionKeyBytes, "AES");
IvParameterSpec ivSpec = new IvParameterSpec(ivBytes);
cipher.init(Cipher.DECRYPT_MODE, skeySpec, ivSpec);
byte[] ret = cipher.doFinal(encryptedBytes);
if (null != ret && ret.length > 0) {
String result = new String(ret, "UTF-8");
return JSONObject.parseObject(result,WxUserInfoVo.class);
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 保存用户
* @param creator 艺术家信息
* @param openId 微信id
* @param sessionKey -
* @param encryptedData 敏感信息数据
* @param iv 加密向量
* @return -
*/
private Creator saveUserInfo(Creator creator,String openId, String sessionKey, String encryptedData, String iv){
if (ObjectUtils.isEmpty(creator)) {
//创建用户
creator = new Creator();
//获取用户昵称和头像
WxUserInfoVo userInfo = this.getUserInfo(sessionKey, encryptedData, iv);
creator.setImg(userInfo.getAvatarUrl());
creator.setName(userInfo.getNickName());
creator.setOpenId(Sm4Util.sm4Encryption(openId));
creator.setCreateTime(new Date());
creator.setUpdateTime(new Date());
creator.setLastLoginTime(new Date());
creatorMapper.insert(creator);
log.info("艺术家【{}】创建成功!", openId);
return creator;
}else{
log.info("该艺术家【{}】已存在,更新登录时间",openId);
creator.setLastLoginTime(new Date());
creatorMapper.updateById(creator);
return creator;
}
}
@Override @Override
public Map<String, Object> login(WxLoginDto dto) { public Map<String, Object> login(CreatorLoginDto dto) {
WxSessionInfoVo sessionInfo = this.getSessionInfo(dto.getCode());
//检查数据库中是否存在该openId,存在则直接设置会话状态登录;不存在则新增
LambdaQueryWrapper<Creator> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<Creator> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(sessionInfo.getOpenId() != null,Creator::getOpenId,Sm4Util.sm4Encryption(sessionInfo.getOpenId())); wrapper.eq(Creator::getPhone, Sm4Util.sm4Encryption(dto.getPhone()));
wrapper.eq(Creator::getPassword, Sm4Util.sm4Encryption(dto.getPassword()));
Creator creator = creatorMapper.selectOne(wrapper); Creator creator = creatorMapper.selectOne(wrapper);
if(creator == null){ if(creator == null){
//新用户,新增 throw new ServiceException("手机号或密码不正确!",TiktokConstant.TIKTOK_CREATOR_PWD_ERROR);
creator = this.saveUserInfo(creator,sessionInfo.getOpenId(), sessionInfo.getSessionKey(), dto.getEncryptedData(), dto.getIv()); }
if(creator.getStatus().equals("0")){
throw new ServiceException("当前艺术家暂未审核,请耐心等待或联系客服!",TiktokConstant.TIKTOK_CREATOR_NOT_PASS_ERROR);
}
if(creator.getStatus().equals("2")){
throw new ServiceException("当前艺术家被封禁,请联系客服处理!",TiktokConstant.TIKTOK_CREATOR_BANED_ERROR);
} }
//设置会话状态 CreatorLoginVo creatorLoginVo = new CreatorLoginVo();
String redisKey = RedisKeyConstant.WECHAT_CREATOR_LOGIN_KEY+Sm4Util.sm4Encryption(sessionInfo.getOpenId()); BeanUtils.copyProperties(creator, creatorLoginVo);
creatorLoginVo.setLastLoginTime(new Date());
//存在则设置会话状态
String redisKey = RedisKeyConstant.WECHAT_CREATOR_LOGIN_KEY+Sm4Util.sm4Encryption(dto.getPhone());
//存在该登录态则删除刷新 //存在该登录态则删除刷新
if(redisService.hasKey(redisKey)){ if(redisService.hasKey(redisKey)){
redisService.deleteObject(redisKey); redisService.deleteObject(redisKey);
} }
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
String randomId = IdUtils.fastSimpleUUID(); String randomId = IdUtils.fastSimpleUUID();
sb.append(randomId).append("#").append(sessionInfo.getOpenId()); sb.append(randomId).append("#").append(Sm4Util.sm4Encryption(dto.getPhone()+randomId));
//设置登录会话 //设置登录会话
Map<String, Object> map = new HashMap<>(2); Map<String, Object> map = new HashMap<>(2);
map.put("token", sb.toString()); map.put("token", sb.toString());
map.put("sessionKey", sessionInfo.getSessionKey()); map.put("userInfo",creatorLoginVo);
map.put("userInfo",creator); redisService.setCacheObject(redisKey,map, 10L, TimeUnit.DAYS);
redisService.setCacheObject(redisKey,map, 30L, TimeUnit.DAYS);
return map; return map;
} }

71
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorLoginVo.java

@ -0,0 +1,71 @@
package com.bnyer.img.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
@Getter
@Setter
@ApiModel("艺术家登录响应类")
public class CreatorLoginVo implements Serializable {
@ApiModelProperty(value="主键id")
private Long id;
@ApiModelProperty(value="昵称")
private String name;
@ApiModelProperty(value="搜索码")
private String scanCode;
@ApiModelProperty(value="手机号")
private String phone;
@ApiModelProperty(value="头像img地址")
private String img;
@ApiModelProperty(value="简介")
private String intro;
@ApiModelProperty(value="余额")
private BigDecimal amt;
@ApiModelProperty(value="邀请码")
private String inviteCode;
@ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝)")
private String status;
@ApiModelProperty(value="第三方平台账号详情地址")
private String url;
@ApiModelProperty(value="是否活跃(0->不活跃;1->活跃 连续10天以上更新内容)")
private String isHot;
@ApiModelProperty(value="是否显示 (0->隐藏;1->显示)")
private String isShow;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value="创建时间")
private Date createTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value="更新时间")
private Date updateTime;
@ApiModelProperty(value="排序")
private Integer sort;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value="最后登录时间")
private Date lastLoginTime;
private static final long serialVersionUID = 1L;
}

7
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml

@ -6,7 +6,7 @@
<!--@Table img_creator--> <!--@Table img_creator-->
<id column="id" jdbcType="BIGINT" property="id" /> <id column="id" jdbcType="BIGINT" property="id" />
<result column="name" jdbcType="VARCHAR" property="name" /> <result column="name" jdbcType="VARCHAR" property="name" />
<result column="open_id" jdbcType="VARCHAR" property="openId" /> <result column="password" jdbcType="VARCHAR" property="password" />
<result column="scan_code" jdbcType="VARCHAR" property="scanCode" /> <result column="scan_code" jdbcType="VARCHAR" property="scanCode" />
<result column="phone" jdbcType="VARCHAR" property="phone" /> <result column="phone" jdbcType="VARCHAR" property="phone" />
<result column="img" jdbcType="VARCHAR" property="img" /> <result column="img" jdbcType="VARCHAR" property="img" />
@ -53,7 +53,7 @@
<sql id="Base_Column_List"> <sql id="Base_Column_List">
<!--@mbg.generated--> <!--@mbg.generated-->
id, `name`,open_id, scan_code, phone, img, intro, invite_code, url, status, is_hot, is_show, create_time, id, `name`,password, scan_code, phone, img, intro, invite_code, url, status, is_hot, is_show, create_time,
update_time, sort, amt, last_login_time update_time, sort, amt, last_login_time
</sql> </sql>
@ -79,9 +79,6 @@
<if test="params.scanCode != null and params.scanCode != ''"> <if test="params.scanCode != null and params.scanCode != ''">
and scan_code = #{params.scanCode} and scan_code = #{params.scanCode}
</if> </if>
<if test="params.openId != null and params.openId != ''">
and open_id = #{params.openId}
</if>
<if test="params.phone != null and params.phone != ''"> <if test="params.phone != null and params.phone != ''">
and phone = #{params.phone} and phone = #{params.phone}
</if> </if>

Loading…
Cancel
Save