设置

作者: 紫竹吟风 | 来源:发表于2019-01-28 13:25 被阅读0次

ps:因为设置模块会涉及到N多蓝牙指令,在每次发送指令时,都要检测相关设备是否连接,若没有连接 提示 : 办公椅未连接蓝牙 或者 办公桌未连接蓝牙,
需要保持数据同步一致的地方很多,具体如何达到效果自行解决,以下的相关同步方法仅供参考

  • 设置主界面


    01设置.png

    1.进入设置界面 要同步个人信息数据 以及当前所连接硬件的设备数据

因为获取接口数据 和通过蓝牙协议获取设备数据 所得到的数据的先后不确定,所以原则上是 通过蓝牙获取到的数据可以覆盖更新接口返回的数据 ,而接口返回的数据不能覆盖蓝牙反馈的数据

  1. 接口
    通过接口 listUserInfo 获取个人信息 参阅接口文档
    请求示例:
http://office.teammax.com.cn/client/office/app.do?method=listUserInfo&requestId=6997&platType=i&msgToken=dfanxL0+k95nP3tJabmt0GwA3ZJfIX2c

结果:

{
    error = "";
    id = 6997;
    result =     {
        age = 29;
        birthday = "1989-10-16";
        dailySeat = 360;
        department = "\U4f01\U4e1aA";
        gender = "\U7537";
        id = 1705;
        isAdmin = 0;
        isAutoLifting = "\U5f00";
        isOpenHeight = "\U5f00";
        isOpenPanel = "\U5f00";
        isWeixin = 1;
        lastSittingHeight = 777;
        lastStandingHeight = 899;
        maxHeight = 1250;
        minHeight = 600;
        minStandingTime = 0;
        msgToken = "dfanxL0+k94cOo1E4t4cQKi5JCidysTm";
        nickName = ceshi;
        sittingRemindTime = 30;
        userImg = "http://thirdwx.qlogo.cn/mmopen/vi_32/7c8smKMeOplhNLqJAu7ibibOYjGpZBD9jUf6z7rlERuU7lBXXibHe2yTAicCmv5qwpvBVlro3Qxg9lzmib62XdSnPoQ/132";
        username = oQnuS1Hj6rIlYFNO5iyxDo72HomA;
        vibrationIntensity = 9;
    };
}

3.数据处理与显示
每日久坐限制 取字段 dailySeat ,数据单位是秒 要对60取整 转为分钟显示
4.每次进入设置主界面 都可以请求一下接口数据 和蓝牙数据 以此保证个人信息数据的即时性
5.蓝牙指令
久坐提醒 通过椅子协议读写久坐时间 指令来读取
座椅震动强度 通过椅子协议21-设置电机震动等级-读取震动 指令来读取
最短站立时间 通过椅子协议最短站立时间 指令来读取
办公桌椅限值 通过桌子协议20 查询上下限标志位 指令来读取
桌自带手控面板 通过桌子协议1F读取手控器状态 指令来读取
自动升降模式 通过椅子协议提醒模式设置 指令来读取
详情参阅蓝牙协议

  1. 退出登录
    清空本地保存数据,跳转到登录页面
    7.右上角 按钮
    点击进入web页展示,标题 谛明
    url :http://www.teammax.com.cn
    8.关于我们
    点击进入web页展示,标题 关于我们
    url :http://www.teammax.com.cn/en/pages/3
个人信息
02个人信息.png
  • 接口
    获取个人信息
    通过接口 listUserInfo 获取个人信息(设置页已经请求国,可直接将结果传入,不需重复请求)
    获取部门列表
    接口方法名 listDepartment
    请求示例:
http://office.teammax.com.cn/client/office/app.do?method=listDepartment&requestId=6693&platType=i&msgToken=dfanxL0+k97vWhhXSquubqoJduIa7rzg

结果:

{
    error = "";
    id = 6693;
    result =     {
        departments =         (
                        {
                departments = "<null>";
                description = test;
                id = 217;
                name = tets;
                pId = 191;
                target = "<null>";
                url = "<null>";
            },
                        {
                departments = "<null>";
                description = test;
                id = 192;
                name = "\U9500\U552e\U90e8";
                pId = 188;
                target = "<null>";
                url = "<null>";
            },
                        {
                departments = "<null>";
                description = test;
                id = 200;
                name = "\U8d22\U52a1D";
                pId = 188;
                target = "<null>";
                url = "<null>";
            },
                        {
                departments = "<null>";
                description = "<null>";
                id = 201;
                name = "\U9500\U552eb";
                pId = 188;
                target = "<null>";
                url = "<null>";
            },
                        {
                departments = "<null>";
                description = "<null>";
                id = 202;
                name = "\U9500\U552eBBB";
                pId = 188;
                target = "<null>";
                url = "<null>";
            },
                        {
                departments = "<null>";
                description = "<null>";
                id = 203;
                name = "\U8d22\U52a1CC22";
                pId = 188;
                target = "<null>";
                url = "<null>";
            }
        );
        msgToken = "dfanxL0+k97vWhhXSquubqoJduIa7rzg";
    };
}

保存个人信息
接口方法名 editUserInfo
修改头像 上传图片等 均参阅接口文档

2.个人信息展示有修改 : 微信用户不需要显示邮箱
根据获取个人信息接口 isWeixin 字段布尔值,接口会给出此用户是不是微信登录用户
3.部门显示逻辑
根据获取个人信息接口获取部门department字段值 ,如果为空 则证明没有部门,那么部门这一栏要隐藏

设备列表
03设备列表.png
  • 获取设备列表接口
    接口方法名 : listDevice
    请求示例:
http://office.teammax.com.cn/client/office/app.do?method=listDevice&requestId=6387&platType=i&msgToken=dfanxL0+k952abcrxr5sc3D8dFUL7TZy

结果:

{
    error = "";
    id = 6387;
    result =     {
        chairDevices =         (
                        {
                department =                 {
                    departments = "<null>";
                    description = "<null>";
                    id = 188;
                    name = "<null>";
                    pId = 0;
                    target = "<null>";
                    url = "<null>";
                };
                deviceMac = "64:CF:D9:17:27:6A";
                deviceModelId = 1666;
                id = 1790;
                name = "T51\U6905\U5b50";
                titleImg = "http://office.teammax.com.cn/house/u/cms/www/201711/161009164g79.jpg";
                type = "\U6905";
            }
        );
        deskDevices =         (
                        {
                department =                 {

                    departments = "<null>";
                    description = "<null>";
                    id = 189;
                    name = "<null>";
                    pId = 0;
                    target = "<null>";
                    url = "<null>";
                };
                deviceMac = "C4:F3:12:3A:0B:AC";
                deviceModelId = 1664;
                id = 1769;
                name = "T51\U684c\U5b50";
                titleImg = "http://office.teammax.com.cn/house/u/cms/www/201711/16100846ed0t.jpg";
                type = "\U684c";
            }
        );
        deviceAndDevices =         (
                        {
                chair =                 {
                    department =                     {
                        departments = "<null>";
                        description = "<null>";
                        id = 188;
                        name = "<null>";
                        pId = 0;
                        target = "<null>";
                        url = "<null>";
                    };
                    deviceMac = "64:CF:D9:17:27:6A";
                    deviceModelId = 1666;
                    id = 1790;
                    name = "T51\U6905\U5b50";
                    titleImg = "http://office.teammax.com.cn/house/u/cms/www/201711/161009164g79.jpg";
                    type = "\U6905";
                };
                desk =                 {
                    department =                     {
                        departments = "<null>";
                        description = "<null>";
                        id = 189;
                        name = "<null>";
                        pId = 0;
                        target = "<null>";
                        url = "<null>";
                    };
                    deviceMac = "C4:F3:12:3A:0B:AC";
                    deviceModelId = 1664;
                    id = 1769;
                    name = "T51\U684c\U5b50";
                    titleImg = "http://office.teammax.com.cn/house/u/cms/www/201711/16100846ed0t.jpg";
                    type = "\U684c";
                };
            }
        );
        msgToken = "dfanxL0+k952abcrxr5sc3D8dFUL7TZy";
    };
}
  • 取消配对
    消配对的逻辑,删除桌子 或者 删除配对 都要根据蓝牙指令删除配对 删除配对是桌子 74 指令
    取消配对方法名 : removeDevice ,详情参阅接口文档

  • 添加
    点击 添加 跳转 扫码界面 ,进入扫码流程
    进入扫码界面,如果同时成功连接了桌椅,点击完成进入配对界面 ,进入下面设备配对流程,否则 返回设备列表

  • 设备配对
    点击设备配对 判断是否同时连接了桌子和椅子 ,没连接提示:请扫码连接桌子和椅子
    如果都连接,就进入配对界面,配对完成 返回设置页面

久坐提醒

默认显示设置页面的数据 例如设置页面久坐提醒显示 30m ,那么进入久坐提醒界面的默认选中也是30m
添加1分钟测试模式 ,原蓝牙协议中有此指令


久坐提醒
  • 保存
    设置久坐提醒 : 椅子蓝牙协议 读写久坐时间 中的写入指令
    保存设置成功返回设置页,并调用接口 editUserInfo 同步更新久坐提醒数据
震动强度

默认选中数据 同步设置页面的座椅震动强度数据


05震动强度.png
  • 保存设置指令
    椅子蓝牙协议 椅子命令21-设置电机震动等级-读取震动中的设置指令,保保存设置成功返回设置页,并调用接口 editUserInfo 同步更新震动强度数据
最短站立时间

默认选中数据 同步设置页面的最短站立时间数据


06最短站立时间.png
  • 保存设置指令
    椅子蓝牙协议 最短站立时间中的设置指令
    保存设置成功返回设置页,并调用接口 editUserInfo 同步更新最短站立时间数据
每日久坐限制

默认选中数据 同步设置页面的每日久坐限制数据

此界面 标题改为 每日久坐限制

07每日久坐目标.png
  • 保存
    不需要蓝牙协议
    调用接口 editUserInfo 同步更新每日久坐限制数据,并返回设置页
记忆坐姿高度 & 记忆站立高度

这两个条目没有二级页面,点击不响应,但要注意数据的一致性,在控制会有相关设置,设置后注意调用 editUserInfo 同步到后台数据

办公桌椅限值

设置页的开关开启时 点击才能进入子页面


08办工桌升降限值_最高.png

默认显示的最高最低限值 同步个人信息数据中的限值, 在设置过程中切换最高最低限值,都会保留上次显示 (最高限值在左边,最低限值在右边 此处和UI设计不一致,请注意)
例如 个人信息中最高1000 最低800 ,那么进去此界面 默认显示的最高限值为1000 最低为800,然后滚动最高限值到900,切换到最低限制,在切换回最高,此时最高显示的为900。
图片上传中...(08办工桌升降限值_最高.png-81e6b3-1548920707853-0)]

  • 保存
    执行桌子蓝牙指令 21 设置上限位置22设置下限位置
    保存成功,调用接口 editUserInfo 同步更新相应数据,并返回设置页

上一页:控制 & 健康数据

相关文章

网友评论

      本文标题:设置

      本文链接:https://www.haomeiwen.com/subject/gvfajqtx.html