Я пытался создать json из модели. Первоначально создал модель aadhar и сохранил данные aadhar из API-отклика на модель.
И создал еще одну модель адхар2, передал значение модели адхар в модель адхар2. Но отклики моделей aadhar model 1 и aadhar model 2 отличаются параметрами.
вот мое json значение отклика.
{
"apiVersion": "1.3.1",
"id": "387a65ba6e51cd1d18bef58cc60c47b751830532ea10465106a54d600d5042f9",
"data": {
"meta": {
"confidence_ocr_mean": 0.95869,
"confidence_ocr_var": 0.00912,
"confidence_ocr_skew": -4.06817,
"confidence_ocr_kurt": 17.71878,
"model_confidence": 1.0,
"image_resolution": "7427 * 2623",
"checksum_status": true
},
"info": {
"name": [
"V",
"Parameswaran"
],
"date_of_birth": {
"date": 28,
"month": 12,
"year": 1989
},
"aadhaar_id": "4682********",
"gender": "male",
"address": [
"Unique Identification Authority of India C/O",
"316 / 87",
"*******",
"*******",
"***********",
"*******",
"*****"
],
"state": null,
"pincode": null
}
}
}
AAdhar model 1 class:
import Foundation
public struct aadharModels: Codable {
let id: String
let info: infoAadharClass
enum CodingKeys: String, CodingKey {
// case links = "_links"
case info = "info"
case id
}
}
struct infoAadharClass: Codable {
let aadhaar_id, gender: String
let name: [String]
let dateofbirth: DobClass
let address: [String]
enum CodingKeys: String, CodingKey {
case aadhaar_id, gender
case name
case address
case dateofbirth = "date_of_birth"
}
}
struct DobClass: Codable {
let date, month, year: String
enum CodingKeys: String, CodingKey {
case date, month, year
}
}
Вот код, где я передаю модель 1 адхара в модель 2 адхара:
let aadharID = data.info.aadhaar_id
let aadharB_Day = data.info.dateofbirth.date
let aadharB_month = data.info.dateofbirth.month
let aadharB_year = data.info.dateofbirth.year
let aadharGender = data.info.gender
let aadharName = data.info.name
let aadharAddress = data.info.address
print("aadhar address", aadharAddress)
let aadharDate = aadharB_Day+"/"+aadharB_month+"/"+aadharB_year
var aadhar_c = AadharModelConverted(aadharNumber: aadharID, dob: aadharDate, gender: aadharGender, name: aadharAddress, address: aadharAddress)
//convert to json
let jsonData = try! JSONEncoder().encode(aadhar_c)
let jsonString = String(data: jsonData, encoding: .utf8)!
print("json object using pan model",jsonString)
Вот код модели 2:
import Foundation
public struct AadharModelConverted: Codable {
var aadharNumber: String?
var dob: String?
var gender: String?
var name: [String]?
var address: addressSubclass_c
enum CodingKeys: String, CodingKey {
case aadharNumber, dob, gender, name
case address = "address"
}
}
struct addressSubclass_c: Codable {
var values: [String]
}
Json вывод, который я пытаюсь получить:
{
"aadharNumber": "60**********",
"dob": "0/0/1994",
"gender": "male",
"name": "VipinAgrawal",
"address": {
"values": [
"S/O Mukesh Agrawal",
"ho",
"no - 67",
"******",
"******",
"******"
]
}
}
Любая помощь высоко ценится пожалуйста ...