xcDeviceCheckOldPwdIsCorrect method
验证老密码正确
Implementation
Future<bool> xcDeviceCheckOldPwdIsCorrect(
{required String deviceId,
required String oldPwd,
required String deviceLoginName}) async {
final String pOldPwd = await JFApi.xcUtil.xcMD5Encode(encodeStr: oldPwd);
OriginResponse result = await _api.devGetSysConfig(
deviceId, 'Users', 1472, 5000, ApiSeq.instance.getSeq());
if (kDebugMode) {
XCloudResponse.fromOriginResponse(result);
}
if (result.param1 < 0) {
return Future.error(
XCloudAPIException(code: result.param1, commandId: result.commandId));
}
if (result.byteStream == null) {
return Future.value(false);
}
String byteString = XCloudResponse.byteToString(result.byteStream);
Map<String, dynamic> json = jsonDecode(byteString);
DeviceSetNewPasswordUserCenter userCenter =
DeviceSetNewPasswordUserCenter.fromJson(json);
///寻找是否有对应的用户
if (userCenter.users == null) {
return Future.value(false);
}
if (userCenter.users!.isEmpty) {
return Future.value(false);
}
///遍历找是否有对应的用户
for (DeviceUser user in userCenter.users!) {
///找到对应的用户
if (user.name! == deviceLoginName) {
///密码匹配
if (pOldPwd == user.password!) {
return Future.value(true);
} else {
return Future.value(false);
}
}
}
///找不到就返回失败
return Future.value(false);
}