浏览代码

兼容flutter 版本litemall app,增加了分类、优惠券、注册部分接口

lzh 6 年之前
父节点
当前提交
d91818e8ef

+ 1 - 0
litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/service/WxOrderService.java

@@ -152,6 +152,7 @@ public class WxOrderService {
                 orderGoodsVo.put("number", orderGoods.getNumber());
                 orderGoodsVo.put("picUrl", orderGoods.getPicUrl());
                 orderGoodsVo.put("specifications", orderGoods.getSpecifications());
+                orderGoodsVo.put("price",orderGoods.getPrice());
                 orderGoodsVoList.add(orderGoodsVo);
             }
             orderVo.put("goodsList", orderGoodsVoList);

+ 61 - 0
litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/web/WxAuthController.java

@@ -555,4 +555,65 @@ public class WxAuthController {
 
         return ResponseUtil.ok(data);
     }
+
+    @PostMapping("appregister")
+    public Object appRegister(@RequestBody String body, HttpServletRequest request) {
+        String username = JacksonUtil.parseString(body, "username");
+        String password = JacksonUtil.parseString(body, "password");
+
+        if (StringUtils.isEmpty(username) || StringUtils.isEmpty(password)) {
+            return ResponseUtil.badArgument();
+        }
+        List<LitemallUser> userList = userService.queryByUsername(username);
+        if (userList.size() > 0) {
+            return ResponseUtil.fail(AUTH_NAME_REGISTERED, "手机号已注册");
+        }
+        if (!RegexUtil.isMobileExact(username)) {
+            return ResponseUtil.fail(AUTH_INVALID_MOBILE, "手机号格式不正确");
+        }
+
+        String openId = username + "123456789";
+        userList = userService.queryByOpenid(openId);
+        if (userList.size() > 1) {
+            return ResponseUtil.serious();
+        }
+        if (userList.size() == 1) {
+            LitemallUser checkUser = userList.get(0);
+            String checkUsername = checkUser.getUsername();
+            String checkPassword = checkUser.getPassword();
+            if (!checkUsername.equals(openId) || !checkPassword.equals(openId)) {
+                return ResponseUtil.fail(AUTH_OPENID_BINDED, "openid已绑定账号");
+            }
+        }
+        LitemallUser user = null;
+        BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
+        String encodedPassword = encoder.encode(password);
+        user = new LitemallUser();
+        user.setUsername(username);
+        user.setPassword(encodedPassword);
+        user.setMobile(username);
+        user.setWeixinOpenid(openId);
+        user.setAvatar("https://yanxuan.nosdn.127.net/80841d741d7fa3073e0ae27bf487339f.jpg?imageView&quality=90&thumbnail=64x64");
+        user.setNickname(username);
+        user.setGender((byte) 0);
+        user.setUserLevel((byte) 0);
+        user.setStatus((byte) 0);
+        user.setLastLoginTime(LocalDateTime.now());
+        user.setLastLoginIp(IpUtil.getIpAddr(request));
+        userService.add(user);
+
+        // 给新用户发送注册优惠券
+        couponAssignService.assignForRegister(user.getId());
+        // userInfo
+        UserInfo userInfo = new UserInfo();
+        userInfo.setNickName(username);
+        userInfo.setAvatarUrl(user.getAvatar());
+        // token
+        String token = UserTokenManager.generateToken(user.getId());
+
+        Map<Object, Object> result = new HashMap<Object, Object>();
+        result.put("token", token);
+        result.put("userInfo", userInfo);
+        return ResponseUtil.ok(result);
+    }
 }

+ 14 - 0
litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/web/WxCatalogController.java

@@ -30,6 +30,20 @@ public class WxCatalogController {
     @Autowired
     private LitemallCategoryService categoryService;
 
+    @GetMapping("/getfirstcategory")
+    public Object getFirstCategory() {
+        // 所有一级分类目录
+        List<LitemallCategory> l1CatList = categoryService.queryL1();
+        return ResponseUtil.ok(l1CatList);
+    }
+
+    @GetMapping("/getsecondcategory")
+    public Object getSecondCategory(@NotNull Integer id) {
+        // 所有二级分类目录
+        List<LitemallCategory> currentSubCategory = categoryService.queryByPid(id);
+        return ResponseUtil.ok(currentSubCategory);
+    }
+
     /**
      * 分类详情
      *

+ 24 - 0
litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/web/WxCouponController.java

@@ -67,6 +67,30 @@ public class WxCouponController {
     }
 
     /**
+     * app个人优惠券列表
+     *
+     * @param userId
+     * @param page
+     * @param limit
+     * @param sort
+     * @param order
+     * @return
+     */
+    @GetMapping("allcoupon")
+    public Object mylist(@LoginUser Integer userId,
+                         @RequestParam(defaultValue = "1") Integer page,
+                         @RequestParam(defaultValue = "10") Integer limit,
+                         @Sort @RequestParam(defaultValue = "add_time") String sort,
+                         @Order @RequestParam(defaultValue = "desc") String order) {
+        if (userId == null) {
+            return ResponseUtil.unlogin();
+        }
+        List<LitemallCouponUser> couponUserList = couponUserService.queryList(userId, null, null, page, limit, sort, order);
+        List<CouponVo> couponVoList = change(couponUserList);
+        return ResponseUtil.okList(couponVoList, couponUserList);
+    }
+
+    /**
      * 个人优惠券列表
      *
      * @param userId