Skip to content

智能电表

序号版本作者日期说明
1V1.0.0蒋新建2024-04-19初始文档
2V1.0.1蒋新建2024-04-25增加每日用电量的查询
3v1.0.2蒋新建2024-05-11增加查询操作状态的接口

状态码说明

状态码说明
200操作成功
-1未知错误
10001授权账号无效
10002设备不存在
10003设备已被注册
10004设备已过有效使用期
10005无此设备操作权限
10009设备未激活或未初始化
10011参数缺失
10012参数无效
10021数据不存在
10031不支持此操作
10032设备连接超时
10032处理中,请稍候再试

API列表

1. 获取电表列表信息
  • URI:/openapi/v1/electric_meter/list_page
  • Method:post
  • 需要鉴权:
  • 是否同步: 同步
  • 请求参数

    字段名类型是否必填字段说明
    nameString表名
    snStringsn码
    installAddressString安装地址
    sizelong每页返回的记录数量,最大支持100,默认20
    currentlong当前页数
  • 响应参数

    字段名类型字段说明
    currentlong当前页
    sizelong每页显示条数
    totallong总数
    recordsList数据结果集
    > meterIdString电表id
    > nameString名称
    > snString设备序列号
    > installAddressString安装地址
    > meterTypeint电表类型:1,主表,2,子表
2.电表信息
  • URI:/openapi/v1/electric_meter/get_info
  • Method:post
  • 需要鉴权:
  • 是否同步: 同步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id(优先使用meterId)
    snString设备sn(当meterId为空时,sn必填)
  • 响应参数

    字段名类型字段说明
    meterIdString电表id
    paymentModeInt付费模式(1:预付费;2:后付费;)
    priceRuleObject单价(缺省价,尖峰平谷+时间范围)详情见PriceRuleDTO
    currentReadingBigDecimal当前读数
    overdraftBigDecimal透支额度
    apportionConsumptionBigDecimal分摊读数
    voltageBigDecimal电压
    electricCurrentBigDecimal电流
    samplingPowerBigDecimal采样功率
    samplingTimeDate采样时间
    installAddressString安装地址
    isCheckinInt是否入住0,否,1是
    meterTypeInt电表类型:1,主表,2,子表
    snString序列号
    macAddrString网卡地址
    bluetoothAddrString蓝牙地址
    surplusConsumptionBigDecimal剩余电量
    extraFeeList加收费用,详情见PriceTimeIntervalDTO
    onlineStatusInteger在线状态(1:在线;2:离线)
    valveStatusInteger阀门状态(0:未知 1:开阀/合闸 2:关阀/断闸)
3.抄表
  • URI:/openapi/v1/electric_meter/reading
  • Method:post
  • 需要鉴权:
  • 是否同步: 异步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id(优先使用meterId)
    snString设备sn(当meterId为空时,sn必填)
  • 响应参数

4.电表设置付费模式
  • URI:/openapi/v1/electric_meter/payment_mode_edit
  • Method:post
  • 需要鉴权:
  • 是否同步: 异步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id
    paymentModeint付费模式(1:预付费;2:后付费;)
    overdraftBigDecimal否(预付费必填)透支额度
  • 响应参数

5.电表充值
  • URI:/openapi/v1/electric_meter/charging
  • Method:post
  • 需要鉴权:
  • 是否同步: 异步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id
    chargingMethodInteger充电方式(0,充读数,1,充钱数)
    chargingValueBigDecimal充的值
    remarksString备注
  • 响应参数

6.电表清零
  • URI:/openapi/v1/electric_meter/clear
  • Method:post
  • 需要鉴权:
  • 是否同步: 异步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id(优先使用meterId)
    snString设备sn(当meterId为空时,sn必填)
  • 响应参数

7.电表断电/供电
  • URI:/openapi/v1/electric_meter/power_on_off
  • Method:post
  • 需要鉴权:
  • 是否同步: 异步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id
    opTypeInteger操作类型:0,供电,1,断电
  • 响应参数

8.电表设置费用价格
  • URI:/openapi/v1/electric_meter/set_fee
  • Method:post
  • 需要鉴权:
  • 是否同步: 同步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id
    editValueObject电表修改的对象,详情见ElectricFee
    remarksString备注

    ElectricFee

    字段名类型是否必填字段说明
    priceRuleObject电费的电价规则,详情见PriceRuleDTO
    extraFeeList电费的额外价格,详情见PriceTimeIntervalDTO

    PriceRuleDTO

    字段名类型是否必填字段说明
    defaultUnitPriceBigDecimal电费单价:缺省价
    peakPriceRuleObject尖峰电价规则,详情见PriceTimeIntervalDTO
    peakValleyPriceRuleObject峰谷电价规则,详情见PriceTimeIntervalDTO
    flatSectionPriceRuleObject平段电价规则,详情见PriceTimeIntervalDTO
    valleyPriceRuleObject谷段电价规则,详情见PriceTimeIntervalDTO

    PriceTimeIntervalDTO

    字段名类型是否必填字段说明
    enableboolean是否启用
    unitPriceBigDecimal单价
    feeNameString费用名称
    feeCodeString费用代码
    startTimeString否(尖峰平谷价必填)开始时间(格式00:00)
    endTimeString否(尖峰平谷价必填)结束时间(格式00:00)
  • 响应参数

9.电表设置透支余额
  • URI:/openapi/v1/electric_meter/set_overdraft
  • Method:post
  • 需要鉴权:
  • 是否同步: 异步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id
    overdraftBigDecimal透支额度
    remarksString备注
  • 响应参数

10.查询每日用电量
  • URI:/openapi/v1/electric_meter/day_usage_list
  • Method:post
  • 需要鉴权:
  • 是否同步: 同步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id
    startTimeLongString是是开始时间名称
    endTimeLongString是是结束时间手机号
    sizelong每页返回的记录数量,最大支持100,默认20
    currentlong当前页数
  • 响应参数

    字段名类型字段说明
    currentlong当前页
    sizelong每页显示条数
    totallong总数
    recordsList数据结果集
    > meterIdString电表id
    > dayString用电所在天(yyyy-MM-dd)
    > startReadingBigDecimal开始读数
    > endReadingBigDecimal结束读数
    > totalUsageBigDecimal总用量
    > apportionConsumptionBigDecimal分摊读数
11.查询操作记录
  • URI:/openapi/v1/electric_meter/get_operation_status
  • Method:post
  • 需要鉴权:
  • 是否同步: 同步
  • 请求参数

    字段名类型是否必填字段说明
    meterIdString电表id
    requestIdString请求id
  • 响应参数

    字段名类型字段说明
    statusInt状态(-1,失败,0,请求中,1,成功)
    errorMsgString错误信息

事件通知

事件通知类型:

  1. EM01->抄表事件
  2. EM02->电表设置付费模式事件
  3. EM03->电表充值事件
  4. EM04->电表清零事件
  5. EM05->电表断电/供电事件
  6. EM06->电表设置透支余额事件
  7. EM07->电表上报事件
  8. EM08->报警事件
  1. 抄表事件

    json
    {
        "data": {
            "sn": "123456",//设备号
          	"meterId":"123456",//设备id
          	"currentReading": "0.00",//当前读数
          	"readingRefTime": "2024-04-19T00:00:00",//当前读数刷新时间
          	"voltage": "220",//电压
          	"electricCurrent": "11",//电流
          	"samplingPower": "111",//采样功率
          	"samplingTime": "2024-04-19T00:00:00",//采样时间
          	"surplusConsumption": "10.00",//剩余电量
          	"requestId": "0KLRm9DVcJjTVE3O",
          	"isSeccess": true//是否成功
        },
        "eventType": "EM01"
    }
  2. 电表设置付费模式事件

    json
    {
        "data": {
            "sn": "123456",//设备号
          	"meterId":"123456",//设备id
          	"paymentMode":"1",//付费模式(1:预付费;2:后付费;)
          	"priceRule":"{\"defaultUnitPrice\":1}",//单价(缺省价,尖峰平谷+时间范围)详情见PriceRuleDTO
          	"extraFee":"[{\"enable\":1,\"unitPrice\":1,\"feeName\":\"测试费用\",\"feeCode\":\"test_fee\"}]",//电费的额外价格,详情见PriceTimeIntervalDTO
          	"overdraft":"1.90",//透支额度
          	"requestId": "0KLRm9DVcJjTVE3O",
          	"isSeccess": true//是否成功
        },
        "eventType": "EM02"
    }
  3. 电表充值事件

    json
    {
        "data": {
            "sn": "123456",//设备号
          	"meterId":"123456",//设备id
          	"chargingValue":2.7,//充值的度数
          	"surplusConsumption":8.9,//剩余用电量
          	"requestId": "0KLRm9DVcJjTVE3O",
          	"isSeccess": true//是否成功
        },
        "eventType": "EM03"
    }
  4. 电表清零

    json
    {
        "data": {
            "sn": "123456",//设备号
          	"meterId":"123456",//设备id
          	"requestId": "0KLRm9DVcJjTVE3O",
            "isSeccess": true//是否成功
        },
        "eventType": "EM04"
    }
  5. 电表断电/供电事件

    java
    {
        "data": {
              "sn": "123456",//设备号
          		"meterId":"123456",//设备id
          		"valveStatus":1,//阀门状态(0,未知,1,合闸,2,断闸)
          		"requestId": "0KLRm9DVcJjTVE3O",
          		"isSeccess": true//是否成功
        },
        "eventType": "EM05"
    }
  6. 电表设置透支余额事件

    json
    {
        "data": {
              "sn": "123456",//设备号
          		"meterId":"123456",//设备id
          		"overdraft":"1.90",//透支额度
          		"requestId": "0KLRm9DVcJjTVE3O",
          		"isSeccess": true//是否成功
        },
        "eventType": "EM06"
    }
  7. 电表上报事件

    json
    {
       "data": {
            "sn": "123456",//设备号
         		"meterId":"123456",//设备id
          	"currentReading": "0.00",//当前读数
          	"readingRefTime": "2024-04-19T00:00:00",//当前读数刷新时间
          	"voltage": "220",//电压
          	"electricCurrent": "11",//电流
          	"samplingPower": "111",//采样功率
          	"samplingTime": "2024-04-19T00:00:00",//采样时间
          	"surplusConsumption": "10.00",//剩余电量
         		"requestId": "0KLRm9DVcJjTVE3O"
        },
      	
        "eventType": "EM07"
    }
  8. 报警事件

    json
    {
        "data": {
            "sn": "123456",//设备号
          	"meterId":"123456",//设备id
          	"alarmList": [1,2,3,4],//1,"电压越限报警",2,"功率越限报警,3,"剩余电量报警",4,"透支量报警
          	"requestId": "0KLRm9DVcJjTVE3O"
        },
      	
        "eventType": "EM08"
    }

星寓智能开放平台 OpenAPI 文档