Commit Graph

5 Commits

Author SHA1 Message Date
yjj38 c3467add0e refactor(device): 重构 ArmCloudApiClient 类
- 格式化代码,提高可读性
- 优化 JSON 构建和解析逻辑
- 统一异常处理方式
- 简化部分代码结构,提高维护性
2025-07-11 10:59:48 +08:00
yjj38 175db8f49b refactor(device): 重构设备列表查询接口并优化日志输出- 重写 getDeviceCodes 方法,改为 getInstanceListInfo,优化参数设计
- 移除未使用的 getDeviceInfo 方法
- 在关键步骤添加调试日志输出,便于问题排查
- 更新网络配置,添加新的服务器 IP
2025-07-10 11:41:50 +08:00
yjj38 c1cdbfeffc refactor(device): 重构设备信息修改和ARM云API客户端逻辑
- `ArmCloudApiClient`:移除构造函数中的 `baseUrl`、`accessKey` 和 `secretKey` 参数,将这些值硬编码到类中。
- `ChangeDeviceInfoUtil`:
    - `changeDeviceInfo` 方法:移除 `padCodes` 参数,改为在方法内部通过 `armClient.getDeviceCodes` 获取。
- `LoadDeviceWorker`:
    - `executeSingleLogic` 方法:在调用 `ChangeDeviceInfoUtil.changeDeviceInfo` 时传递 `MainActivity.armClient`。
- `MainActivity`:
    - 新增 `armClient` 静态成员变量,并在 `onCreate` 中初始化 `ArmCloudApiClient` 实例。
    - 修改 `modifyDeviceInfoButton` 的点击事件,在调用 `ChangeDeviceInfoUtil.changeDeviceInfo` 时传递 `armClient`。
    - `executeSingleLogic` 方法:在调用 `ChangeDeviceInfoUtil.changeDeviceInfo` 时传递 `armClient`。
    - 移除了 `getAndroidId(Context context)` 方法中未使用的代码。
    - 简化了 `onCreate` 方法中的按钮初始化逻辑,引入了 `setupButton` 辅助方法。
    - 引入了 `logInfo`, `logError`, `logWarn`, `showToast` 等辅助方法以简化日志记录和UI提示。
    - 移除了未使用的 `instance` 静态成员变量和 `getInstance()` 方法。
    - 移除了 `executeLogic` 方法和相关的 `isRunning`、`taskLock` 成员变量,相关逻辑已移至 `LoadDeviceWorker`。
    - 调整了 `onDestroy` 方法的逻辑。
2025-07-09 20:27:48 +08:00
yjj38 f0339e7251 feat(ArmCloudApiClient): 新增设备列表查询功能并优化属性更新接口
- 新增 `getDeviceCodes` 方法,用于分页查询ARM设备列表并提取 `deviceCode`。该方法支持多种筛选条件,如实例分配状态、物理机状态、服务器编码等。
- 优化 `updateInstanceProperties` 方法:
    - 增加对 `padCodes` 参数重复项的校验。
    - 将 `padCodes` 的类型从 `JSONArray` 更改为 `new JSONArray(Arrays.asList(padCodes))`,以正确处理数组。
    - 完善了错误处理逻辑,对JSON构建、签名计算、接口返回错误码和响应解析失败等情况进行了更详细的日志记录和异常抛出。
    - 在接口请求成功后,增加了对响应体中 `code` 字段的校验,确保接口调用成功。
    - 将 `baseUrl` 设置为常量。
2025-07-09 19:38:31 +08:00
yjj38 2a7132d7b0 refactor(retention): 重构项目并添加新功能
- 更新包名从 com.example.studyapp 到 com.example.retention
- 添加 ArmCloudApiClient 类实现设备属性更新功能
- 更新所有相关类和文件以适应新的包名
2025-07-09 17:04:18 +08:00