DESKTOP-YALE\greyg 1 жил өмнө
parent
commit
1f051a941f

+ 1 - 0
src/main/java/com/hy/common/secure/support/SecurePermissionSupport.java

@@ -30,6 +30,7 @@ public class SecurePermissionSupport implements PermissionEvaluator {
      */
     @Override
     public boolean hasPermission(Authentication authentication, Object targetDomainObject, Object permission) {
+
         SysUser securityUserDetails = (SysUser) authentication.getPrincipal();
         if (securityProperty.isSuperAuthOpen() && securityProperty.getSuperAdmin().equals(securityUserDetails.getUsername())) {
             return true;

+ 46 - 0
src/main/java/com/hy/modules/bz/webapi/controller/BzWebApiController.java

@@ -0,0 +1,46 @@
+package com.hy.modules.bz.webapi.controller;
+
+import com.hy.common.web.base.BaseController;
+import com.hy.common.web.domain.response.Result;
+import com.hy.modules.bz.webapi.dto.LoginInfoDto;
+import com.hy.modules.bz.webapi.dto.LoginResultDto;
+import com.hy.modules.bz.webapi.dto.RankingDto;
+import com.hy.modules.bz.webapi.dto.RankingFetchDto;
+import com.hy.modules.bz.webapi.service.WebApiService;
+import io.swagger.annotations.Api;
+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.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@RestController
+@Api(tags = {"星际战争"})
+@RequestMapping("/bz/api")
+public class BzWebApiController extends BaseController {
+
+    @Autowired
+    private WebApiService apiService;
+
+    @RequestMapping("/login.json")
+    @ResponseBody
+    public Result<LoginResultDto> login(@RequestBody LoginInfoDto loginInfo) {
+        try{
+            return success(apiService.login(loginInfo));
+        }catch (Exception ex){
+            return failure(ex.getMessage());
+        }
+    }
+
+    @RequestMapping("/rankingList.json")
+    public Result<List<RankingDto>> rankingList(@RequestBody RankingFetchDto fetchDto) {
+        try{
+            return success(apiService.rankingList(fetchDto));
+        }catch (Exception ex){
+            return failure(ex.getMessage());
+        }
+    }
+
+}

+ 26 - 0
src/main/java/com/hy/modules/bz/webapi/dto/LoginInfoDto.java

@@ -0,0 +1,26 @@
+package com.hy.modules.bz.webapi.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 登录请求实体
+ */
+@Data
+public class LoginInfoDto implements Serializable {
+    /**
+     * 账号/卡号 必传
+     */
+    private String cardNo;
+
+    /**
+     * 密码 需要加密 加密方式详见文档 必传
+     */
+    private String cardPwd;
+
+    /**
+     * 时间戳 必传
+     */
+    private long timestamp;
+}

+ 22 - 0
src/main/java/com/hy/modules/bz/webapi/dto/LoginResultDto.java

@@ -0,0 +1,22 @@
+package com.hy.modules.bz.webapi.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 登录请求响应实体
+ */
+@Data
+public class LoginResultDto implements Serializable {
+
+    /**
+     * 账号/卡号
+     */
+    private String cardNo;
+
+    /**
+     * token 访问排行榜需要
+     */
+    private String token;
+}

+ 33 - 0
src/main/java/com/hy/modules/bz/webapi/dto/RankingDto.java

@@ -0,0 +1,33 @@
+package com.hy.modules.bz.webapi.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 排行榜数据
+ */
+@Data
+public class RankingDto implements Serializable {
+
+    /**
+     * 用户ID
+     */
+    private String userId;
+
+    /**
+     * 用户昵称
+     */
+    private String userNickName;
+
+    /**
+     * 用户赠送礼物总价值
+     */
+    private BigDecimal totalGiftValue;
+
+    /**
+     * 用户排名
+     */
+    private int rank;
+}

+ 37 - 0
src/main/java/com/hy/modules/bz/webapi/dto/RankingFetchDto.java

@@ -0,0 +1,37 @@
+package com.hy.modules.bz.webapi.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 排行榜请求实体
+ */
+@Data
+public class RankingFetchDto implements Serializable {
+
+    /**
+     * 直播间ID 必传
+     */
+    private String roomId;
+
+    /**
+     * 账号/卡号 必传
+     */
+    private String cardNo;
+
+    /**
+     * token 必传
+     */
+    private String token;
+
+    /**
+     * 起始排名 可不传,默认为0
+     */
+    private int startRank;
+
+    /**
+     * 截至排名 可不传,默认为起始排名 + 20,最大不超过 起始排名+ 500
+     */
+    private int endRank;
+}

+ 15 - 0
src/main/java/com/hy/modules/bz/webapi/service/WebApiService.java

@@ -0,0 +1,15 @@
+package com.hy.modules.bz.webapi.service;
+
+import com.hy.modules.bz.webapi.dto.LoginInfoDto;
+import com.hy.modules.bz.webapi.dto.LoginResultDto;
+import com.hy.modules.bz.webapi.dto.RankingDto;
+import com.hy.modules.bz.webapi.dto.RankingFetchDto;
+
+import java.util.List;
+
+public interface WebApiService {
+
+    LoginResultDto login(LoginInfoDto loginInfo);
+
+    List<RankingDto> rankingList(RankingFetchDto fetchDto);
+}

+ 25 - 0
src/main/java/com/hy/modules/bz/webapi/service/impl/WebApiServiceImpl.java

@@ -0,0 +1,25 @@
+package com.hy.modules.bz.webapi.service.impl;
+
+import com.hy.modules.bz.webapi.dto.LoginInfoDto;
+import com.hy.modules.bz.webapi.dto.LoginResultDto;
+import com.hy.modules.bz.webapi.dto.RankingDto;
+import com.hy.modules.bz.webapi.dto.RankingFetchDto;
+import com.hy.modules.bz.webapi.service.WebApiService;
+import org.springframework.stereotype.Service;
+
+import java.util.Collections;
+import java.util.List;
+
+@Service
+public class WebApiServiceImpl implements WebApiService {
+
+    @Override
+    public LoginResultDto login(LoginInfoDto loginInfo) {
+        return null;
+    }
+
+    @Override
+    public List<RankingDto> rankingList(RankingFetchDto fetchDto) {
+        return Collections.emptyList();
+    }
+}

+ 1 - 1
src/main/resources/application.yml

@@ -40,7 +40,7 @@ hy:
     # 描 述 信 息
     describe: 辉 杨 科 技 快 速 开 发 平 台
     # 扫 包 路 径
-    scan-package: com.hy
+    scan-package: com.hy.modules.bz.webapi
     # 协 议
     licence: MIT
     # 协 议 地 址