import starCloudInstance from '../star-cloud' import { Result } from '../constant' export { Result } /** * 账户信息 * @typedef {Object} AccountInfo * @property {Number} uid 用户ID * @property {String} username 用户名 * @property {String} password 密码 */ /** * 初始化星云 * @param params * @param {String} params.clientId 客户端Id * @param {String} params.clientSecret 客户端密码 * @param {Array} params.accounts 账号列表,后续方法中需传入uid,若未传入则默认使用第一个账号 * @param {String} params.env 环境 */ export const init = params => { starCloudInstance.init({ ...params, isReportLog: false, platform: 2 }) } /** * 注册星云 * @returns Result */ export const register = async () => { return await starCloudInstance.register() } /** * 退出登录 * @param params * @param {Number} params.uid 用户ID */ export const logout = params => { starCloudInstance.logout(params) } /** * 离线密码 * @typedef {Object} OfflinePassword * @property {String} keyboardPwdName - 密码名称 * @property {Number} keyboardPwdType - 密码类型 * @property {Number} lockId - 锁 Id * @property {Number} isCoerced - 是否胁迫模式 1:胁迫 2:非胁迫 * @property {Number} startDate - 开始日期时间戳(毫秒,永久默认为0) * @property {Number} endDate - 结束日期时间戳(毫秒,永久默认为0) * @property {Number} hoursStart - 开始时间(小时, 不需要时传0) * @property {Number} hoursEnd - 结束时间(小时, 不需要时传0) */ /** * 获取离线密码 * @param params * @param {Number} [params.uid] 用户ID * @param {OfflinePassword} params.password 密码信息 * @returns Result */ export const getOfflinePassword = async params => { return await starCloudInstance.getOfflinePassword(params) } /** * 移除坏锁 * @param params * @param {Number} [params.uid] 用户ID * @param {Array[int]} params.lockIds 锁Id列表 * @returns Result */ export const removeBadLock = async params => { return await starCloudInstance.removeBadLock(params) } /** * 获取服务器时间 * @returns Result */ export const getServerTime = async () => { return await starCloudInstance.getServerTimestamp() } /** * 获取锁支持项 * @param params * @param {Number} [params.uid] 用户ID * @param {Number} params.lockId 锁 Id * @returns Result */ export const getLockSupportFeatures = async params => { return await starCloudInstance.getLockSupportFeatures(params) } /** * 电表-刷新电表信息 * @param params * @param {Number} [params.uid] 用户ID * @param {Number} [params.elecId] 用户ID * @returns Result */ export const refreshElecInfo = async params => { return await starCloudInstance.refreshElecInfo(params) } /** * 更新电表设置 * @param params * @param {Number} [params.uid] 用户ID * @param {Number} params.elecId 电表ID * @param {Object} params.elecName 电表名称 * @param {Object} params.loadLimit 最大负荷:0~99999 * @returns Result */ export const updateElecSetting = async params => { return await starCloudInstance.updateElecSetting(params) } /** * 冷电表-刷新水表信息 * @param params * @param {Number} [params.uid] 用户ID * @param {Number} [params.waterId] 冷水表ID * @returns Result */ export const refreshColdWaterInfo = async params => { return await starCloudInstance.refreshColdWaterInfo(params) } /** * 热电表-刷新水表信息 * @param params * @param {Number} [params.uid] 用户ID * @param {Number} [params.waterId] 热水表ID * @returns Result */ export const refreshHotWaterInfo = async params => { return await starCloudInstance.refreshHotWaterInfo(params) }