高效能源监控管理系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

10 KiB

项目信息管理 API 接口文档

基础信息

  • 模块名称: 项目信息管理
  • 基础路径: /project/info
  • 权限标识前缀: project:info

1. 查询项目信息列表

接口描述

分页查询项目信息列表,支持按项目名称、项目负责人模糊查询,以及按安装日期范围查询。

请求信息

  • 接口路径: /project/info/list
  • 请求方式: GET
  • 权限要求: project:info:list

请求参数

参数名 类型 必填 说明 示例值
pageNum Integer 页码,默认1 1
pageSize Integer 每页条数,默认10 10
projectName String 项目名称(模糊查询) 豪生酒店
projectManager String 项目负责人(模糊查询) 张三
params[beginTime] String 安装日期开始时间(格式:yyyy-MM-dd) 2025-01-01
params[endTime] String 安装日期结束时间(格式:yyyy-MM-dd) 2025-12-31

请求示例

GET /project/info/list?pageNum=1&pageSize=10&projectName=豪生&projectManager=张&params[beginTime]=2025-01-01&params[endTime]=2025-12-31

响应参数

参数名 类型 说明
code Integer 状态码(200成功)
msg String 返回消息
total Long 总记录数
rows Array 数据列表

rows数组元素结构:

参数名 类型 说明
id String 项目ID(UUID)
projectCode String 用户项目编码
projectName String 项目名称
projectAddress String 项目地址
installDate String 安装日期(yyyy-MM-dd HH:mm:ss)
acceptanceDate String 验收日期(yyyy-MM-dd HH:mm:ss)
onlineDate String 上线日期(yyyy-MM-dd HH:mm:ss)
deviceCount Integer 设备数量
onlineDeviceCount Integer 在线设备数量
offlineDeviceCount Integer 离线设备数量
gatewayCount Integer 网关数量
onlineGatewayCount Integer 在线网关数量
offlineGatewayCount Integer 离线网关数量
projectManager String 项目负责人
electricityPrice BigDecimal 电单价
createBy String 创建者
createTime String 创建时间
updateBy String 更新者
updateTime String 更新时间
remark String 备注

响应示例

{
  "code": 200,
  "msg": "查询成功",
  "total": 2,
  "rows": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "projectCode": "PROJ2025001",
      "projectName": "梅州豪生酒店节能改造项目",
      "projectAddress": "广东省梅州市梅江区江南街道",
      "installDate": "2025-03-15 10:00:00",
      "acceptanceDate": "2025-06-20 14:30:00",
      "onlineDate": "2025-07-01 09:00:00",
      "deviceCount": 150,
      "onlineDeviceCount": 145,
      "offlineDeviceCount": 5,
      "gatewayCount": 10,
      "onlineGatewayCount": 10,
      "offlineGatewayCount": 0,
      "projectManager": "张三",
      "electricityPrice": 0.85,
      "createBy": "admin",
      "createTime": "2025-03-10 08:30:00",
      "updateBy": "admin",
      "updateTime": "2025-07-01 10:00:00",
      "remark": "一期工程项目"
    }
  ]
}

2. 查询项目详情

接口描述

根据项目ID查询单个项目的详细信息。

请求信息

  • 接口路径: /project/info/{id}
  • 请求方式: GET
  • 权限要求: project:info:query

路径参数

参数名 类型 必填 说明 示例值
id String 项目ID(UUID) 550e8400-e29b-41d4-a716-446655440000

请求示例

GET /project/info/550e8400-e29b-41d4-a716-446655440000

响应参数

同列表查询的单条记录结构

响应示例

{
  "code": 200,
  "msg": "操作成功",
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "projectCode": "PROJ2025001",
    "projectName": "梅州豪生酒店节能改造项目",
    "projectAddress": "广东省梅州市梅江区江南街道",
    "installDate": "2025-03-15 10:00:00",
    "acceptanceDate": "2025-06-20 14:30:00",
    "onlineDate": "2025-07-01 09:00:00",
    "deviceCount": 150,
    "onlineDeviceCount": 145,
    "offlineDeviceCount": 5,
    "gatewayCount": 10,
    "onlineGatewayCount": 10,
    "offlineGatewayCount": 0,
    "projectManager": "张三",
    "electricityPrice": 0.85,
    "createBy": "admin",
    "createTime": "2025-03-10 08:30:00",
    "updateBy": "admin",
    "updateTime": "2025-07-01 10:00:00",
    "remark": "一期工程项目"
  }
}

3. 新增项目信息

接口描述

创建新的项目信息记录。

请求信息

  • 接口路径: /project/info
  • 请求方式: POST
  • 权限要求: project:info:add
  • Content-Type: application/json

请求参数(Body)

参数名 类型 必填 说明 示例值
projectCode String 用户项目编码 PROJ2025002
projectName String 项目名称 某某酒店项目
projectAddress String 项目地址 广东省深圳市南山区
installDate String 安装日期(yyyy-MM-dd HH:mm:ss) 2025-08-01 10:00:00
acceptanceDate String 验收日期(yyyy-MM-dd HH:mm:ss) 2025-10-01 14:30:00
onlineDate String 上线日期(yyyy-MM-dd HH:mm:ss) 2025-10-15 09:00:00
deviceCount Integer 设备数量,默认0 100
onlineDeviceCount Integer 在线设备数量,默认0 95
offlineDeviceCount Integer 离线设备数量,默认0 5
gatewayCount Integer 网关数量,默认0 8
onlineGatewayCount Integer 在线网关数量,默认0 8
offlineGatewayCount Integer 离线网关数量,默认0 0
projectManager String 项目负责人 李四
electricityPrice BigDecimal 电单价 0.75
remark String 备注 二期工程

请求示例

{
  "projectCode": "PROJ2025002",
  "projectName": "深圳某某酒店节能改造项目",
  "projectAddress": "广东省深圳市南山区科技园",
  "installDate": "2025-08-01 10:00:00",
  "acceptanceDate": "2025-10-01 14:30:00",
  "onlineDate": "2025-10-15 09:00:00",
  "deviceCount": 100,
  "onlineDeviceCount": 95,
  "offlineDeviceCount": 5,
  "gatewayCount": 8,
  "onlineGatewayCount": 8,
  "offlineGatewayCount": 0,
  "projectManager": "李四",
  "electricityPrice": 0.75,
  "remark": "二期工程"
}

响应参数

参数名 类型 说明
code Integer 状态码(200成功)
msg String 返回消息
data Object 返回数据(包含新增记录的ID)

响应示例

{
  "code": 200,
  "msg": "操作成功",
  "data": {
    "id": "660e8400-e29b-41d4-a716-446655440001"
  }
}

4. 修改项目信息

接口描述

更新已存在的项目信息记录。

请求信息

  • 接口路径: /project/info
  • 请求方式: PUT
  • 权限要求: project:info:edit
  • Content-Type: application/json

请求参数(Body)

参数名 类型 必填 说明 示例值
id String 项目ID(UUID) 550e8400-e29b-41d4-a716-446655440000
projectCode String 用户项目编码 PROJ2025001
projectName String 项目名称 梅州豪生酒店节能改造项目(修改后)
projectAddress String 项目地址 广东省梅州市梅江区江南街道(修改后)
installDate String 安装日期 2025-03-15 10:00:00
acceptanceDate String 验收日期 2025-06-20 14:30:00
onlineDate String 上线日期 2025-07-01 09:00:00
deviceCount Integer 设备数量 160
onlineDeviceCount Integer 在线设备数量 155
offlineDeviceCount Integer 离线设备数量 5
gatewayCount Integer 网关数量 12
onlineGatewayCount Integer 在线网关数量 12
offlineGatewayCount Integer 离线网关数量 0
projectManager String 项目负责人 王五
electricityPrice BigDecimal 电单价 0.90
remark String 备注 一期工程扩建

请求示例

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "projectCode": "PROJ2025001",
  "projectName": "梅州豪生酒店节能改造项目(扩建)",
  "projectAddress": "广东省梅州市梅江区江南街道",
  "deviceCount": 160,
  "onlineDeviceCount": 155,
  "offlineDeviceCount": 5,
  "gatewayCount": 12,
  "onlineGatewayCount": 12,
  "offlineGatewayCount": 0,
  "projectManager": "王五",
  "electricityPrice": 0.90,
  "remark": "一期工程扩建"
}

响应示例

{
  "code": 200,
  "msg": "操作成功"
}

5. 删除项目信息

接口描述

批量删除项目信息记录。

请求信息

  • 接口路径: /project/info/{ids}
  • 请求方式: DELETE
  • 权限要求: project:info:remove

路径参数

参数名 类型 必填 说明 示例值
ids String[] 项目ID数组(多个ID用逗号分隔) 550e8400-e29b-41d4-a716-446655440000,660e8400-e29b-41d4-a716-446655440001

请求示例

DELETE /project/info/550e8400-e29b-41d4-a716-446655440000,660e8400-e29b-41d4-a716-446655440001

响应示例

{
  "code": 200,
  "msg": "操作成功"
}

通用说明

状态码说明

状态码 说明
200 操作成功
401 未授权,需要登录
403 无权限访问
404 资源不存在
500 服务器内部错误

日期格式

所有日期时间字段统一使用格式:yyyy-MM-dd HH:mm:ss

注意事项

  1. 所有写操作(新增、修改、删除)都需要相应的权限
  2. ID由系统自动生成UUID,无需前端传入
  3. 新增和修改操作会自动记录创建人/更新人和时间
  4. 列表查询支持分页,默认每页10条
  5. 查询条件可以组合使用,未传递的条件不参与过滤
  6. 数值类型字段(设备数量、网关数量等)默认为0
  7. 电单价保留4位小数精度

权限配置

在系统中需要配置以下权限菜单:

  • project:info:list - 项目信息查询
  • project:info:query - 项目详情查询
  • project:info:add - 项目新增
  • project:info:edit - 项目修改
  • project:info:remove - 项目删除