我正在开发一个更新用户控制器。我上面有一些文本字段,例如姓名,姓氏,邮件和电话。但是这些都是可选的。我必须准确发送用户ID,然后将发送用户更改的数据。它可能只是邮件或电话。我创建了这样的路由器。
// MARK: - Parameters
internal var parameters: Parameters? {
switch self {
case .backedProjects, .activities, .getUserInfo, .updateUserInfo:
return nil
case .updateUserInfo(UpdateUserInfoRequestModel): //ERROR
return self.parameters
}
}
我在响应模型中创建了一个转换字典方法。
func convertToDictionary(updateUserInfo: UpdateUserInfoRequestModel) -> [String: Any]{
var parameters: [String: Any] = [:]
parameters["id"] = updateUserInfo.id
parameters["name"] = updateUserInfo.name
parameters["title"] = updateUserInfo.title
parameters["linkedIn"] = updateUserInfo.linkedIn
parameters["surname"] = updateUserInfo.surname
parameters["emailPvt"] = updateUserInfo.emailPvt
parameters["image"] = updateUserInfo.image
parameters["created"] = updateUserInfo.created
parameters["emailVerificationDate"] = updateUserInfo.emailVerificationDate
parameters["phoneVerificationDate"] = updateUserInfo.phoneVerificationDate
parameters["corporate"] = updateUserInfo.corporate
parameters["userStatus"] = updateUserInfo.userStatus
parameters["city"] = updateUserInfo.city
parameters["userCoin"] = updateUserInfo.userCoin
parameters["paycellAgreement"] = updateUserInfo.paycellAgreement
return parameters
}
如何使用converToDictionary方法将数据发送到路由器。我必须准确发送ID。如果用户不更改该参数,该如何检查并发送其他参数。