handleCreateUserWithData function
处理创建用户 返回的数据
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});
}