class SignupStep3RequestModel {
  String username = "";
  String email = "";
  String phone = "";
  String name = "";
  String address = "";
  String identificationType = "";
  String identificationNumber = "";
  bool isKycAdded = false;
  String kycType = "";
  String kycDocumentId1 = "";
  String kycDocumentId2 = "";
  String userRole = "";
  String channelCode = "";
  String porOrgacode = "";
  String dmpProdcode = "";
  String plcLocacode ="";

  SignupStep3RequestModel.empty()
      : this.username = "",
        this.email = "",
        this.phone = "",
        this.name = "",
        this.address = "",
        this.identificationType = "",
        this.identificationNumber = "",
        this.isKycAdded = false,
        this.kycType = "",
        this.kycDocumentId1 = "",
        this.kycDocumentId2 = "",
        this.userRole = "",
        this.channelCode = "",
        this.porOrgacode = "",
        this.dmpProdcode = "",
        this.plcLocacode="";


  SignupStep3RequestModel({
    this.username = "",
    this.email = "",
    this.phone = "",
    this.name = "",
    this.address = "",
    this.identificationType = "",
    this.identificationNumber = "",
    this.isKycAdded = false,
    this.kycType = "",
    this.kycDocumentId1 = "", // base64 encoded
    this.kycDocumentId2 = "", // base64 encoded
    this.userRole = "",
    this.channelCode = "",
    this.porOrgacode = "",
    this.dmpProdcode = "",
    this.plcLocacode="",
  });

  Map<String, dynamic> toMap() {
    return {
      'username': username,
      'email': email,
      'phone': phone,
      'name': name,
      'address': address,
      'identificationType': identificationType,
      'identificationNumber': identificationNumber,
      'isKycAdded': isKycAdded,
      'kycType': kycType,
      'kycDocumentId1': kycDocumentId1,
      'kycDocumentId2': kycDocumentId2,
      'userRole': userRole,
      'channelCode': channelCode,
      'porOrgacode': porOrgacode,
      "dmpProdcode": dmpProdcode,
      "plcLocacode": plcLocacode
    };
  }

  factory SignupStep3RequestModel.fromMap(Map<String, dynamic> map) {
    return SignupStep3RequestModel(
      username: map['username'] ?? "",
      email: map['email'] ?? "",
      phone: map['phone'] ?? "",
      name: map['name'] ?? "",
      address: map['address'] ?? "",
      identificationType: map['identificationType'] ?? "",
      identificationNumber: map['identificationNumber'] ?? "",
      isKycAdded: map['isKycAdded'] ?? false,
      kycType: map['kycType'] ?? "",
      kycDocumentId1: map['kycDocumentId1'] ?? "",
      kycDocumentId2: map['kycDocumentId2'] ?? "",
      userRole: map['userRole'] ?? "",
      channelCode: map['channelCode'] ?? "",
      porOrgacode: map['porOrgacode'] ?? "",
      dmpProdcode: map["dmpProdcode"] ?? "",
      plcLocacode: map["plcLocacode"] ?? "",
    );
  }

  @override
  String toString() {
    return 'SignupStep3RequestModel{username: $username, email: $email, phone: $phone, name: $name, address: $address, identificationType: $identificationType, identificationNumber: $identificationNumber, isKycAdded: $isKycAdded, kycType: $kycType, kycDocumentId1: $kycDocumentId1, kycDocumentId2: $kycDocumentId2, userRole: $userRole, channelCode: $channelCode, porOrgacode: $porOrgacode,plcLocacode: $plcLocacode}';
  }
}
