All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m55s
3.4 KiB
3.4 KiB
资产审计日志操作内容字段说明
1. 查询接口
- 路径:
GET /api/admin/assets/:identifier/operation-logs - 说明:先按资产标识符解析资产,再查询该资产的审计日志。
2. 前端应优先使用的字段
为避免历史数据格式差异,前端应优先使用以下三个字段:
operation_content_before:操作内容(变更前)operation_content_after:操作内容(变更后)operation_fields_desc:字段中文说明(key=字段名,value=中文解释)
before_data/after_data 保留为原始审计数据,建议仅作为调试或回放使用。
3. 通用字段
| 字段 | 说明 |
|---|---|
operator_type |
操作人类型中文名称(如平台用户、代理账号、企业账号、个人客户、系统) |
operator_type_code |
操作人类型编码(如 admin_user、agent_user) |
operator_name |
操作人可读名称,优先返回用户名/店铺名/企业名/客户昵称 |
batch_total |
批量总数 |
success_count |
成功数量 |
fail_count |
失败数量 |
failed_items |
失败明细 |
reason |
原因说明 |
4. 常见操作字段
4.1 分配/回收
| 字段 | 说明 |
|---|---|
target_shop_id / to_shop_id |
目标店铺ID |
source_shop_id / from_shop_id |
来源店铺ID |
device_ids |
设备ID列表 |
card_ids |
卡ID列表 |
selection_type |
选择方式 |
new_status |
变更后状态 |
4.2 设备绑卡/解绑
| 字段 | 说明 |
|---|---|
binding_id |
绑定记录ID |
slot_position |
插槽位置 |
iot_card_id |
卡ID |
iccid |
卡ICCID |
unbind |
是否执行解绑 |
4.3 设备停复机
| 字段 | 说明 |
|---|---|
success_count |
成功数量 |
fail_count |
失败数量 |
skip_count |
跳过数量 |
failed_items |
失败明细(含ICCID和原因) |
4.4 远程控制
| 字段 | 说明 |
|---|---|
speed_limit |
限速值(KB/s) |
ssid |
WiFi 名称 |
password |
WiFi 密码(已脱敏) |
enabled |
WiFi 开关状态 |
target_iccid |
目标ICCID |
switch_mode |
切卡模式(0自动/1手动) |
4.5 轮询与实名
| 字段 | 说明 |
|---|---|
enable_polling |
轮询开关 |
realname_policy |
实名策略(none/before_order/after_order) |
real_name_status |
实名状态(0未实名/1已实名) |
5. 兼容性说明
历史日志中 before_data 可能是资产快照而不是操作内容。接口已做归一化处理:
- 自动抽取并返回
operation_content_before/after - 当历史数据缺少“变更前操作内容”时,会按“变更后字段”与资产快照尽量回填
- 历史日志中的
后台用户#ID、代理用户#ID等占位名称,接口会尽量按当前账号资料补全为可读名称
因此,前端无需再自行解析 before_data/after_data 的多种历史格式。
6. 前端处理建议
建议前端按以下优先级渲染变更明细:
- 遍历
operation_content_after的字段键作为“变更项集合” - 字段名展示优先使用
operation_fields_desc[key],没有则回退为key - 变更前值读取
operation_content_before[key] - 变更后值读取
operation_content_after[key] - 当前值为
null时按“未知/未记录”展示,不要直接当空字符串
before_data/after_data 建议只用于问题排查,不参与主界面渲染。