diff --git a/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvBuyerDao.java b/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvBuyerDao.java index f7612db..17afdec 100644 --- a/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvBuyerDao.java +++ b/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvBuyerDao.java @@ -51,4 +51,8 @@ public interface VvBuyerDao extends BaseMapper { @LIMIT VvBuyerEntity selectVvBuyerIsTestById(Long id, Integer isTest); + + + @LIMIT + VvBuyerEntity selectVvBuyerInfo(String buyerName, String buyerWeixin, String buyerPhone); } \ No newline at end of file diff --git a/api-mapper/src/main/java/com/heyu/api/data/dto/BuyerDTO.java b/api-mapper/src/main/java/com/heyu/api/data/dto/BuyerDTO.java index d002ce1..8bdf479 100644 --- a/api-mapper/src/main/java/com/heyu/api/data/dto/BuyerDTO.java +++ b/api-mapper/src/main/java/com/heyu/api/data/dto/BuyerDTO.java @@ -5,15 +5,26 @@ import lombok.Data; @Data public class BuyerDTO { - /*** * 买家id */ - private Long buyerId ; + private Long buyerId; /*** * 买家名称 */ - private String buyerName ; + private String buyerName; + + + /*** + * 是否是测试用户 + */ + private Integer flag; + + /*** + * token + */ + private String token ; + } diff --git a/api-mapper/src/main/java/com/heyu/api/data/utils/TokenUtils.java b/api-mapper/src/main/java/com/heyu/api/data/utils/TokenUtils.java new file mode 100644 index 0000000..9b6a255 --- /dev/null +++ b/api-mapper/src/main/java/com/heyu/api/data/utils/TokenUtils.java @@ -0,0 +1,13 @@ +package com.heyu.api.data.utils; + +public class TokenUtils { + + + public static String generateToken(Long id) { + return MD5Utils.encode(System.currentTimeMillis() + "" + id ); + } + + public static void main(String[] args) { + System.out.println(generateToken(1L)); + } +} diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/VvAppLoginRequest.java b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/VvAppLoginRequest.java new file mode 100644 index 0000000..c3f8f77 --- /dev/null +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/VvAppLoginRequest.java @@ -0,0 +1,21 @@ +package com.heyu.api.alibaba.request.mm; + +import lombok.Data; + +@Data +public class VvAppLoginRequest { + + /*** + * 买家id,当前登录的买家id + */ + private Long buyerId ; + + /*** + * 目标买家信息 ,如 buyer_name, buyer_weixin, buyer_phone + */ + private String targetBuyer; + +} + + + diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppLoginController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppLoginController.java new file mode 100644 index 0000000..9a42f80 --- /dev/null +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppLoginController.java @@ -0,0 +1,52 @@ +package com.heyu.api.controller.vv; + + +import com.alibaba.fastjson.JSON; +import com.heyu.api.alibaba.request.mm.VvAppLoginRequest; +import com.heyu.api.data.dao.vv.VvBuyerDao; +import com.heyu.api.data.dto.BuyerDTO; +import com.heyu.api.data.entity.vv.VvBuyerEntity; +import com.heyu.api.data.utils.R; +import com.heyu.api.data.utils.RedisUtils; +import com.heyu.api.data.utils.TokenUtils; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@Slf4j +@RestController +@RequestMapping("/app/target") +public class AppLoginController { + + @Autowired + private VvBuyerDao vvBuyerDao; + + @Autowired + private RedisUtils redisUtils; + + // http://localhost:8888/app/target/login + @RequestMapping("/login") + public R login(@RequestBody VvAppLoginRequest request) { + VvBuyerEntity vvBuyerEntity = vvBuyerDao.selectVvBuyerIsTestById(request.getBuyerId(), 1); + if (vvBuyerEntity == null) { + return R.error("你不是内部用户"); + } + VvBuyerEntity target = vvBuyerDao.selectVvBuyerInfo(request.getTargetBuyer(), + request.getTargetBuyer(), + request.getTargetBuyer()); + + BuyerDTO buyerDTO = new BuyerDTO(); + buyerDTO.setBuyerId(target.getId()); + buyerDTO.setBuyerName(target.getBuyerName()); + buyerDTO.setFlag(target.getIsTest()); + String token = TokenUtils.generateToken(target.getId()); + buyerDTO.setToken(token); + // 默认24 小时 + redisUtils.set(token, JSON.toJSON(buyerDTO), RedisUtils.DEFAULT_EXPIRE); + return R.ok().put("buyer", buyerDTO); + } + + +}