操作文档
首页
  • 智能网关系列入门
  • 配置软件使用说明
  • 智能网关系列入门(新)
  • 配置软件使用说明(新)
  • 云平台使用说明
  • 云组态使用说明
  • 数据分析使用说明
  • Box系列使用说明
  • MQTT接入
  • BOXConfig使用教程(新)
  • 云平台使用教程
  • 报表设计器使用教程
  • BOXConfig使用教程
开发者平台
  • 硬件相关
  • 配置软件相关
  • 平台相关
  • 远程编程相关
  • 组态设计相关
  • 报表相关
  • 第三方BOX相关
  • BoxConfig相关
私有化平台
更新记录
首页
  • 智能网关系列入门
  • 配置软件使用说明
  • 智能网关系列入门(新)
  • 配置软件使用说明(新)
  • 云平台使用说明
  • 云组态使用说明
  • 数据分析使用说明
  • Box系列使用说明
  • MQTT接入
  • BOXConfig使用教程(新)
  • 云平台使用教程
  • 报表设计器使用教程
  • BOXConfig使用教程
开发者平台
  • 硬件相关
  • 配置软件相关
  • 平台相关
  • 远程编程相关
  • 组态设计相关
  • 报表相关
  • 第三方BOX相关
  • BoxConfig相关
私有化平台
更新记录
  • 新手指引
  • 平台简介

  • 开发者后台

  • API文档

  • 示例教程

    • 综合示例
    • 平台内置前端代码开发
    • 更改内置界面风格样式
    • 更改内置菜单名称和位置
    • 搭建并上传自定义前端代码
    • 自定义接口配置代理及应用
    • 自定义业务和用户企业项目建立关联
    • 添加自定义系统菜单及获取用户token信息
    • 添加自定义项目菜单及获取项目信息
    • 使用webhook拦截系统业务事件
    • 响应数据推送事件
    • 手动获取超级管理员token及应用
    • 系统菜单前端添加自定义页面按钮权限
    • 项目菜单前端添加自定义页面按钮权限
    • 添加自定义操作日志到平台
      • 业务概述
      • 最终效果图
      • 1.添加日志配置
      • 2.新建报修时增加日志代码
        • 最终效果展示
  • 常见问题

  • 开发者平台
  • 示例教程
2022-09-20
目录

添加自定义操作日志到平台

# 业务概述

此节演示了如何添加自定义操作日志到平台中,每次用户新增报修数据时候会记录到云平台的操作日志里面。

# 最终效果图

# 1.添加日志配置

日志名称:开发者配置自定义名称。

日志uri:该属性决定了此日志模板属于哪一个接口,且在格式化时根据uri以及语言种类获取对应的日志模板进行格式化或国际化(该属性一旦新增后不可修改)。

格式化模板:该属性决定了日志格式化时显示的内容。 注意:添加日志模板时将日志数据的key以${keyXXX} 方式写入到模板中那么当进行格式化时则会将${keyXXX}替换为日志数据keyXXX对应的值。

# 2.新建报修时增加日志代码

该token 前端传入的token 数据。

    LogApi logApi = new LogApi(token);
1

describeJson 为json 数据。

该json的key对应格式化模板的参数value对应格式化之后的值。

    JSONObject describeJson = new JSONObject(){{
        put("repair",repair.getDescribe());
    }};
1
2
3

获取日志数据如果失败的话就会滚业务数据。

    ResultObject resultObject = logApi.addUserLog(spliceLogParam(token, repair.getProjectId(), describeJson.toJSONString()));
    if (!resultObject.getCode().equals("000000")){
        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
        return Result.fail("日志添加失败");
    }
1
2
3
4
5

查询到用户的信息并根据用户信息拼接日志参数。

    private AddUserLogForm spliceLogParam(String token,String projectId,String describe){
        // 通过用户 userApi 获取用户详细信息
        UserApi userApi = new UserApi(token);
        LoginUserVo userVo = userApi.getLoginUser().getData();
        AddUserLogForm form = new AddUserLogForm();
        form.setUserId(userVo.getId());
        form.setCompanyId(userVo.getCompanyId());
        form.setProjectId(projectId);
        // 格式化后的json 数据,转化成字符串
        form.setDetails(describe);
        // requestUri 应和开发者配置的Uri 保持一致
        form.setRequestUri("/examplesDemo/repair/addRepair");
        form.setResultCode("000000");
        form.setResultMessage("添加成功");
        form.setOldDataMigration("0");
        return form;
    }

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

# 最终效果展示

源码下载 (opens new window)

项目菜单前端添加自定义页面按钮权限
支持哪些开发语言框架

← 项目菜单前端添加自定义页面按钮权限 支持哪些开发语言框架→

最近更新
01
菜单栏里找不到“BOX配置”如何处理
06-06
02
购买了新型号的BOX,在配置软件里找不到该型号
06-06
03
部分电脑安装BoxConfig后无法运行
06-06
更多文章>
Copyright © 2021-2024
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式