handleCreateUserWithData function

void handleCreateUserWithData(
  1. List<int> value
)

处理创建用户 返回的数据

Implementation

void handleCreateUserWithData(List<int> value) async {
  // 0xFE 0X02 LEN NID USERNAME ERR_CODE checksum
  int len = value[2];
  String cmdName = '创建用户';

  //获取解密后的有效数据
  List<int> dataDecrypt = await decryptTemp(value);

  // ERR_CODE为0x00时表示创建用户成功,为其他字段时则表示创建用户失败,其中为0X0B时表示用户已经重复
  int ERR_CODE = dataDecrypt[len - 1];
  if (ERR_CODE != 0) {
    print('$cmdName,失败');
    ZygBluetoothTool.cmdMsgHandle(
        '$cmdName,失败', {'cmd': cmdName, 'ERR_CODE': ERR_CODE});
    if (ERR_CODE == 0x0b) {
      print('用户重复');

      ZygBluetoothTool.cmdMsgHandle(
          '失败原因:用户重复', {'cmd': cmdName, 'ERR_CODE': ERR_CODE});
    }
    return;
  }
//   NID为此次创建用户的ID
  int NID = dataDecrypt[0];
  // 用户名
  List<int> USERNAME = dataDecrypt.sublist(1, 1 + len - 2);
  Map user = {'NID': NID, 'USERNAME': USERNAME};
  mySave(saveKey.bluetoothUserMap_key, jsonEncode(user));
  print('$cmdName,成功,NID:$NID');

  ZygBluetoothTool.cmdMsgHandle(
      '$cmdName,成功,NID:$NID,请保存好NID', {'cmd': cmdName, ...user});
}