| | |
| | | |
| | | import com.alibaba.fastjson2.JSONObject; |
| | | import com.ard.system.authorize.service.AuthorizeService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | |
| | | * @date: 2025/3/4 |
| | | * @description: |
| | | */ |
| | | @Service |
| | | public class UtilMethod { |
| | | |
| | | @Resource |
| | | @Autowired |
| | | private AuthorizeService authorizeService; |
| | | |
| | | /** |
| | | * 根据授权数量,验证授权信息是否合规 |
| | | */ |
| | | public void authorizationVerification(int ls){ |
| | | JSONObject data = authorizeService.getAuthorizationInfo(); |
| | | if ("normal".equals(data.get("Type"))){ |
| | | int droneNum = (int) data.get("droneNum"); |
| | | if (ls > droneNum){ |
| | | throw new RuntimeException("添加无人机数量超过当前授权数量!!!"); |
| | | |
| | | JSONObject authInfo = authorizeService.getAuthorizationInfo(); |
| | | String authType = authInfo.getString("Type"); |
| | | |
| | | switch (authType) { |
| | | case "normal": |
| | | int allowedDroneNum = authInfo.getIntValue("droneNum"); |
| | | if (ls > allowedDroneNum) { |
| | | throw new RuntimeException(String.format( |
| | | "授权数量%d,当前操作将导致总数达到%d,超过授权限制", |
| | | allowedDroneNum, ls)); |
| | | } |
| | | }else if ("expired".equals(data.get("Type"))){ |
| | | throw new RuntimeException("授权文件过期!!!"); |
| | | }else if ("mismatch".equals(data.get("Type"))){ |
| | | throw new RuntimeException("授权文件不匹配!!!"); |
| | | break; |
| | | case "expired": |
| | | throw new RuntimeException("授权文件已过期"); |
| | | case "mismatch": |
| | | throw new RuntimeException("授权文件不匹配"); |
| | | default: |
| | | throw new RuntimeException("未知的授权类型: " + authType); |
| | | } |
| | | } |
| | | |