Commit 30136716 authored by David黄金龙's avatar David黄金龙

基本信息预览 接口联调

parent cd509a32
...@@ -163,7 +163,6 @@ extension YHBasicInfoFillViewController { ...@@ -163,7 +163,6 @@ extension YHBasicInfoFillViewController {
applicant.updateValue(basicInfoVM.dataModelForBasicInfo?.applicant?.id ?? 0, forKey: "id") applicant.updateValue(basicInfoVM.dataModelForBasicInfo?.applicant?.id ?? 0, forKey: "id")
param.updateValue(applicant, forKey: "applicant") param.updateValue(applicant, forKey: "applicant")
} else if item.sessionTitle == "配偶" { } else if item.sessionTitle == "配偶" {
var applicant : [String : Any] = [:] var applicant : [String : Any] = [:]
for (index0,item0) in item.arrQuestionItem.enumerated() { for (index0,item0) in item.arrQuestionItem.enumerated() {
if index0 == 0 { if index0 == 0 {
......
...@@ -82,36 +82,23 @@ extension YHBasicInfoFillViewModel { ...@@ -82,36 +82,23 @@ extension YHBasicInfoFillViewModel {
var arrData : [YHBasicInfoSessionModel] = [] var arrData : [YHBasicInfoSessionModel] = []
do { do {
//主申请人 //主申请人
let model1 = YHBasicInfoCellModel(question: "1、是否曾在香港或其他地方因任何罪行或违法行为被定罪?", answer: dataModelForBasicInfo.applicant?.has_conviction?.has ?? "", info: dataModelForBasicInfo.applicant?.has_conviction?.info ?? "") if let model = dataModelForBasicInfo.applicant {
let model1 = YHBasicInfoCellModel(question: "1、是否曾在香港或其他地方因任何罪行或违法行为被定罪?", answer: model.has_conviction?.has ?? "", info: model.has_conviction?.info ?? "")
let model2 = YHBasicInfoCellModel(question: "2、是否曾在香港或其他地方被拒入境/递解/遣送或要求离境?", answer: dataModelForBasicInfo.applicant?.has_departure?.has ?? "", info: dataModelForBasicInfo.applicant?.has_departure?.info ?? "")
let model3 = YHBasicInfoCellModel(question: "3、是否曾被拒绝签发香港或其他地方的签证/进入许可?", answer: dataModelForBasicInfo.applicant?.has_deny?.has ?? "", info: dataModelForBasicInfo.applicant?.has_deny?.info ?? "")
let model4 = YHBasicInfoCellModel(question: "4、是否曾触犯香港或任何地方的入境法例?", answer: dataModelForBasicInfo.applicant?.has_breaking_law?.has ?? "", info: dataModelForBasicInfo.applicant?.has_breaking_law?.info ?? "")
let model5 = YHBasicInfoCellModel(question: "5、是否曾经使用另一个姓名或身份申请香港入境签证/进入许可或进入香港?", answer: dataModelForBasicInfo.applicant?.has_other_id?.has ?? "", info: dataModelForBasicInfo.applicant?.has_other_id?.info ?? "")
let arr = [model1,model2,model3,model4,model5]
let sessionModel = YHBasicInfoSessionModel(sessionTitle: "主申请人", arrQuestionItem: arr)
arrData.append(sessionModel)
}
do {
//配偶
if let spouse = dataModelForBasicInfo.spouse {
let model1 = YHBasicInfoCellModel(question: "1、是否曾被拒绝入境/递解/遣送或要求离开香港?", answer: spouse.child_departure?.has ?? "", info: spouse.child_departure?.info ?? "")
let model2 = YHBasicInfoCellModel(question: "2、是否曾被拒绝签发签证/进入许可以入境香港?", answer: spouse.child_deny?.has ?? "", info: spouse.child_deny?.info ?? "")
let arr = [model1,model2]
let sessionModel = YHBasicInfoSessionModel(sessionTitle: "配偶", arrQuestionItem: arr) let model2 = YHBasicInfoCellModel(question: "2、是否曾在香港或其他地方被拒入境/递解/遣送或要求离境?", answer: model.has_departure?.has ?? "", info: model.has_departure?.info ?? "")
let model3 = YHBasicInfoCellModel(question: "3、是否曾被拒绝签发香港或其他地方的签证/进入许可?", answer: model.has_deny?.has ?? "", info: model.has_deny?.info ?? "")
let model4 = YHBasicInfoCellModel(question: "4、是否曾触犯香港或任何地方的入境法例?", answer: model.has_breaking_law?.has ?? "", info: model.has_breaking_law?.info ?? "")
let model5 = YHBasicInfoCellModel(question: "5、是否曾经使用另一个姓名或身份申请香港入境签证/进入许可或进入香港?", answer: model.has_other_id?.has ?? "", info: model.has_other_id?.info ?? "")
let arr = [model1,model2,model3,model4,model5]
let sessionModel = YHBasicInfoSessionModel(sessionTitle: "主申请人", arrQuestionItem: arr)
arrData.append(sessionModel) arrData.append(sessionModel)
} }
} }
do { do {
//子女 - xxx //子女 - xxx
if let arrChild = dataModelForBasicInfo.child { if let arrChild = dataModelForBasicInfo.child {
...@@ -129,6 +116,20 @@ extension YHBasicInfoFillViewModel { ...@@ -129,6 +116,20 @@ extension YHBasicInfoFillViewModel {
} }
} }
do {
//配偶
if let spouse = dataModelForBasicInfo.spouse {
let model1 = YHBasicInfoCellModel(question: "1、是否曾被拒绝入境/递解/遣送或要求离开香港?", answer: spouse.child_departure?.has ?? "", info: spouse.child_departure?.info ?? "")
let model2 = YHBasicInfoCellModel(question: "2、是否曾被拒绝签发签证/进入许可以入境香港?", answer: spouse.child_deny?.has ?? "", info: spouse.child_deny?.info ?? "")
let arr = [model1,model2]
let sessionModel = YHBasicInfoSessionModel(sessionTitle: "配偶", arrQuestionItem: arr)
arrData.append(sessionModel)
}
}
do { do {
//家庭背景 //家庭背景
if let model = dataModelForBasicInfo.background { if let model = dataModelForBasicInfo.background {
...@@ -140,7 +141,6 @@ extension YHBasicInfoFillViewModel { ...@@ -140,7 +141,6 @@ extension YHBasicInfoFillViewModel {
} }
} }
arrBasicInfoSessionDataForEdit = arrData arrBasicInfoSessionDataForEdit = arrData
} }
} }
......
...@@ -11,92 +11,39 @@ import UIKit ...@@ -11,92 +11,39 @@ import UIKit
*基本资料信息 预览 *基本资料信息 预览
*/ */
class YHPreviewBasiceInformationViewController: YHPreviewBaseViewController { class YHPreviewBasiceInformationViewController: YHPreviewBaseViewController {
var arrData : [YHPreviewInfoSessionModel] = [] private let previewVM : YHPreviewViewModel = YHPreviewViewModel()
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
setupUI() setupUI()
loadData()
} }
} }
private extension YHPreviewBasiceInformationViewController { private extension YHPreviewBasiceInformationViewController {
func installData() {
do {
//主申请人
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、是否曾在香港或其他地方因任何罪行或违法行为被被定罪:", answer: "是",remark: "这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。")
let tmp1 = YHPreviewQuestionAndAnswerModel(question: "2、是否曾在香港或其他地方被拒入境/递解/遣送或要求离境?", answer: "否")
let tmp2 = YHPreviewQuestionAndAnswerModel(question: "3、是否曾被拒绝签发香港或其他地方的签证/进入许可?", answer: "否")
let tmp3 = YHPreviewQuestionAndAnswerModel(question: "4、是否曾触犯香港或任何地方的入境法例?", answer: "是",remark: "我是测试数据哈我是测试数据哈我是测试数据哈我是测试数据哈我是测试数据哈我是测试数据哈我是测试数据哈我是测试数据哈")
let tmp4 = YHPreviewQuestionAndAnswerModel(question: "5、是否曾经使用另一个姓名或身份申请香港入境签证/进入许可或进入香港?", answer: "否")
let arr = [tmp0,tmp1,tmp2,tmp3,tmp4]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "主申请人", cellData0: arr)
arrData.append(model1)
}
do {
//配偶
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、是否曾被拒绝入境/递解/遣送或要求离开香港?", answer: "是",remark: "这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。")
let tmp1 = YHPreviewQuestionAndAnswerModel(question: "2、是否曾被拒绝签发签证/进入许可以入境香港?", answer: "否")
let arr = [tmp0,tmp1]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "配偶", cellData0: arr)
arrData.append(model1)
}
do {
//子女-1
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、是否曾被拒绝入境/递解/遣送或要求离开香港?", answer: "是",remark: "这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。")
let tmp1 = YHPreviewQuestionAndAnswerModel(question: "2、是否曾被拒绝签发签证/进入许可以入境香港?", answer: "否")
let arr = [tmp0,tmp1]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "子女-1", cellData0: arr)
arrData.append(model1)
}
do {
//子女-2
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、是否曾被拒绝入境/递解/遣送或要求离开香港?", answer: "是",remark: "这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。这里是详细的犯罪记录或违法行为说明,这里是详细的犯罪记录或违法行为说明。")
let tmp1 = YHPreviewQuestionAndAnswerModel(question: "2、是否曾被拒绝签发签证/进入许可以入境香港?", answer: "否")
let arr = [tmp0,tmp1]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "子女-2", cellData0: arr)
arrData.append(model1)
}
do {
//家庭背景
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、至少一名直系家庭成员(已婚配偶、父母、兄弟姐妹、子女)是现居于香港的香港永久性居民", answer: "不满足")
let arr = [tmp0]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "家庭背景", cellData0: arr)
arrData.append(model1)
}
do {
//家庭背景2
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、至少一名直系家庭成员(已婚配偶、父母、兄弟姐妹、子女)是现居于香港的香港永久性居民", answer: "满足",remark: "张三、李四、王五")
let arr = [tmp0]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "家庭背景2-测试满足的情况", cellData0: arr)
arrData.append(model1)
}
}
func setupUI() { func setupUI() {
installData()
self.homeTableView.register(YHPreviewInfoCell.self,forCellReuseIdentifier: YHPreviewInfoCell.cellReuseIdentifier) self.homeTableView.register(YHPreviewInfoCell.self,forCellReuseIdentifier: YHPreviewInfoCell.cellReuseIdentifier)
self.homeTableView.reloadData() self.homeTableView.reloadData()
} }
func loadData() {
if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") {
previewVM.getPreviewForBasicInfo(params: ["order_id" : orderID]) { success, error in
if success == true {
} else {
}
self.homeTableView.reloadData()
}
} else {
printLog("error : orderID 为空")
}
}
} }
...@@ -104,13 +51,13 @@ private extension YHPreviewBasiceInformationViewController { ...@@ -104,13 +51,13 @@ private extension YHPreviewBasiceInformationViewController {
// MARK: - UITableViewDelegate 和 UITableViewDataSource // MARK: - UITableViewDelegate 和 UITableViewDataSource
extension YHPreviewBasiceInformationViewController { extension YHPreviewBasiceInformationViewController {
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return arrData.count return previewVM.arrDataForBasicInfo.count
} }
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withClass: YHPreviewInfoCell.self) let cell = tableView.dequeueReusableCell(withClass: YHPreviewInfoCell.self)
cell.selectionStyle = .none cell.selectionStyle = .none
cell.model = arrData[indexPath.row] cell.model = previewVM.arrDataForBasicInfo[indexPath.row]
return cell return cell
} }
} }
...@@ -11,8 +11,6 @@ import UIKit ...@@ -11,8 +11,6 @@ import UIKit
*其他信息 预览 *其他信息 预览
*/ */
class YHPreviewOtherInformationViewController: YHPreviewBaseViewController { class YHPreviewOtherInformationViewController: YHPreviewBaseViewController {
// var arrData : [YHPreviewInfoSessionModel] = []
private let previewVM : YHPreviewViewModel = YHPreviewViewModel() private let previewVM : YHPreviewViewModel = YHPreviewViewModel()
override func viewDidLoad() { override func viewDidLoad() {
...@@ -26,13 +24,12 @@ class YHPreviewOtherInformationViewController: YHPreviewBaseViewController { ...@@ -26,13 +24,12 @@ class YHPreviewOtherInformationViewController: YHPreviewBaseViewController {
private extension YHPreviewOtherInformationViewController { private extension YHPreviewOtherInformationViewController {
func setupUI() { func setupUI() {
// installData()
self.homeTableView.register(YHPreviewInfoCell.self,forCellReuseIdentifier: YHPreviewInfoCell.cellReuseIdentifier) self.homeTableView.register(YHPreviewInfoCell.self,forCellReuseIdentifier: YHPreviewInfoCell.cellReuseIdentifier)
self.homeTableView.reloadData() self.homeTableView.reloadData()
} }
private func loadData() { func loadData() {
if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") { if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") {
previewVM.getPreviewForOtherInfo(params: ["order_id" : orderID]) { success, error in previewVM.getPreviewForOtherInfo(params: ["order_id" : orderID]) { success, error in
if success == true { if success == true {
......
...@@ -13,11 +13,44 @@ class YHPreviewViewModel: YHBaseViewModel { ...@@ -13,11 +13,44 @@ class YHPreviewViewModel: YHBaseViewModel {
private var otherInfoPreviewModel : YHPreviewForOtherInfoModel? private var otherInfoPreviewModel : YHPreviewForOtherInfoModel?
var arrDataForOtherInfo : [YHPreviewInfoSessionModel] = [] var arrDataForOtherInfo : [YHPreviewInfoSessionModel] = []
// //基本资料 预览
private var basiceInfoPreviewModel : YHBasicInfoFillModel?
var arrDataForBasicInfo : [YHPreviewInfoSessionModel] = []
} }
extension YHPreviewViewModel { extension YHPreviewViewModel {
//获取基本资料预览 数据
func getPreviewForBasicInfo( params:[String : Any],callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Basics.basicInfoApi
let _ = YHNetRequest.getRequest(url: strUrl,params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
printLog("model 是 ==> \(json)")
if json.code == 200 {
let dic = json.data
guard let resultModel = YHBasicInfoFillModel.deserialize(dict: dic as? [AnyHashable : Any]) else {
callBackBlock(false,nil)
return
}
self.basiceInfoPreviewModel = resultModel
//根据返回值 组装 真实的数据
installDataForBasicInfo()
callBackBlock(true,nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code),errorMsg: json.msg)
callBackBlock(false,error)
}
} failBlock: { err in
callBackBlock(false,err)
}
}
//获取其他信息预览 数据 //获取其他信息预览 数据
func getPreviewForOtherInfo( params:[String : Any],callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) { func getPreviewForOtherInfo( params:[String : Any],callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
...@@ -51,8 +84,100 @@ extension YHPreviewViewModel { ...@@ -51,8 +84,100 @@ extension YHPreviewViewModel {
} }
private extension YHPreviewViewModel { private extension YHPreviewViewModel {
func installDataForOtherInfo() { //组装 基本资料预览 数据
func installDataForBasicInfo() {
do {
//主申请人
if let model = basiceInfoPreviewModel?.applicant {
let answer0 = model.has_conviction?.has == "Y" ? "是" : "否"
let remark0 = answer0 == "是" ? (model.has_conviction?.info ?? "") : nil
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、是否曾在香港或其他地方因任何罪行或违法行为被被定罪:", answer: answer0,remark: remark0)
let answer1 = model.has_departure?.has == "Y" ? "是" : "否"
let remark1 = answer1 == "是" ? (model.has_conviction?.info ?? "") : nil
let tmp1 = YHPreviewQuestionAndAnswerModel(question: "2、是否曾在香港或其他地方被拒入境/递解/遣送或要求离境?", answer: answer1,remark: remark1)
let answer2 = model.has_deny?.has == "Y" ? "是" : "否"
let remark2 = answer2 == "是" ? (model.has_deny?.info ?? "") : nil
let tmp2 = YHPreviewQuestionAndAnswerModel(question: "3、是否曾被拒绝签发香港或其他地方的签证/进入许可?", answer: answer2,remark: remark2)
let answer3 = model.has_breaking_law?.has == "Y" ? "是" : "否"
let remark3 = answer3 == "是" ? (model.has_breaking_law?.info ?? "") : nil
let tmp3 = YHPreviewQuestionAndAnswerModel(question: "4、是否曾触犯香港或任何地方的入境法例?", answer: answer3,remark:remark3)
let answer4 = model.has_other_id?.has == "Y" ? "是" : "否"
let remark4 = answer4 == "是" ? (model.has_other_id?.info ?? "") : nil
let tmp4 = YHPreviewQuestionAndAnswerModel(question: "5、是否曾经使用另一个姓名或身份申请香港入境签证/进入许可或进入香港?", answer: answer4,remark: remark4)
let arr = [tmp0,tmp1,tmp2,tmp3,tmp4]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "主申请人", cellData0: arr)
arrDataForBasicInfo.append(model1)
}
}
do {
//子女-1
//子女 - xxx
if let arrChild = basiceInfoPreviewModel?.child {
for (index,model) in arrChild.enumerated() {
let answer0 = model.child_departure?.has == "Y" ? "是" : "否"
let remark0 = answer0 == "是" ? (model.child_departure?.info ?? "") : nil
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、是否曾被拒绝入境/递解/遣送或要求离开香港?", answer: answer0,remark:remark0)
let answer1 = model.child_deny?.has == "Y" ? "是" : "否"
let remark1 = answer1 == "是" ? (model.child_deny?.info ?? "") : nil
let tmp1 = YHPreviewQuestionAndAnswerModel(question: "2、是否曾被拒绝签发签证/进入许可以入境香港?", answer: answer1,remark: remark1)
let arr = [tmp0,tmp1]
let title = "子女" + "-" + model.subset_name
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: title, cellData0: arr)
arrDataForBasicInfo.append(model1)
}
}
}
do {
//配偶
if let model = basiceInfoPreviewModel?.spouse {
let answer0 = model.child_departure?.has == "Y" ? "是" : "否"
let remark0 = answer0 == "是" ? (model.child_departure?.info ?? "") : nil
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、是否曾被拒绝入境/递解/遣送或要求离开香港?", answer: answer0,remark:remark0)
let answer1 = model.child_deny?.has == "Y" ? "是" : "否"
let remark1 = answer1 == "是" ? (model.child_deny?.info ?? "") : nil
let tmp1 = YHPreviewQuestionAndAnswerModel(question: "2、是否曾被拒绝签发签证/进入许可以入境香港?", answer: answer1,remark: remark1)
let arr = [tmp0,tmp1]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "配偶", cellData0: arr)
arrDataForBasicInfo.append(model1)
}
}
do {
//家庭背景
if let model = basiceInfoPreviewModel?.background {
let answer0 = model.background_member?.has == "Y" ? "满足" : "不满足"
let remark0 = answer0 == "满足" ? (model.background_member?.info ?? "") : nil
let tmp0 = YHPreviewQuestionAndAnswerModel(question: "1、至少一名直系家庭成员(已婚配偶、父母、兄弟姐妹、子女)是现居于香港的香港永久性居民", answer:answer0,remark: remark0) //需要完善 for test hjl todo???
let arr = [tmp0]
let model1 = YHPreviewInfoSessionModel(cellType: .questionAndAnswer, cellTitle: "家庭背景", cellData0: arr)
arrDataForBasicInfo.append(model1)
}
}
}
//组装 其他信息预览 数据
func installDataForOtherInfo() {
guard let model = otherInfoPreviewModel else { guard let model = otherInfoPreviewModel else {
return return
} }
...@@ -121,7 +246,8 @@ private extension YHPreviewViewModel { ...@@ -121,7 +246,8 @@ private extension YHPreviewViewModel {
} }
extension YHPreviewViewModel { private extension YHPreviewViewModel {
//特殊处理 其他信息预览 需要的数据
func handleDataForOtherInfo() { func handleDataForOtherInfo() {
if let language = otherInfoPreviewModel?.language { if let language = otherInfoPreviewModel?.language {
if language.level > 0 { if language.level > 0 {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment