Commit 7872c88c authored by pete谢兆麟's avatar pete谢兆麟

Merge commit 'bf49c0a8' into xiezhaolin

parents ede35f91 bf49c0a8
......@@ -14,7 +14,7 @@ import UIKit
class YHInformationPerfectListVC: YHBaseViewController {
var orderId : Int?
private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel()
private var hasSubmitFlag : Bool = false {
didSet {
submitBtn.isHidden = hasSubmitFlag
......@@ -123,6 +123,14 @@ extension YHInformationPerfectListVC {
self.hasSubmitFlag = true
} else {
self.hasSubmitFlag = false
if self.serviceCenterMainReqVM.informationFillStepModel?.step == 6 {
self.submitBtn.layer.opacity = 1
self.submitBtn.isEnabled = true
} else {
self.submitBtn.layer.opacity = 0.4
self.submitBtn.isEnabled = false
}
}
}
self.homeTableView.reloadData()
......@@ -133,6 +141,7 @@ extension YHInformationPerfectListVC {
//我的评分
let vc = YHScoreDetailViewController()
vc.orderId = orderId
vc.model = serviceCenterMainReqVM.allInfoScoreModel
navigationController?.pushViewController(vc)
}
......@@ -145,26 +154,39 @@ extension YHInformationPerfectListVC {
}
@objc func clickSubmitBtn() {
YHSubmitAllInfoCheckView.showCheckView(tipMsg: "确定是否提交信息?提交后将不能修改") { agree in
if agree == true {
printLog("点击了 确认 按钮")
YHSubmintAllInfoSuccessTipView.showCheckView { agree in
self.hasSubmitFlag = true
self.submitAllInfo()
} else {
printLog("点击了 取消 按钮")
}
}
}
func submitAllInfo() {
guard let orderId = orderId else {
printLog("error: orderId 为空")
return
}
serviceCenterMainReqVM.submitAllInfoOp(params: ["orderId" : orderId]) { [weak self] success, error in
if success == true {
let model = self?.serviceCenterMainReqVM.allInfoScoreModel
YHSubmintAllInfoSuccessTipView.showCheckView(model: model) { agree in
if agree == true {
self.goScoreVC()
} else {
self?.goScoreVC()
}
}
} else {
printLog("点击了 取消 按钮")
let msg = error?.errorMsg ?? "操作失败"
YHHUD.flash(message: msg)
}
}
}
func setupUI() {
......@@ -191,7 +213,8 @@ extension YHInformationPerfectListVC {
submitBtn.layer.opacity = 0.4
submitBtn.setTitle("提交信息", for: .normal)
submitBtn.setTitleColor(UIColor.white, for: .normal)
submitBtn.isEnabled = false
submitBtn.layer.cornerRadius = kCornerRadius6
submitBtn.clipsToBounds = true
myBottomView.addSubview(submitBtn)
......@@ -351,7 +374,7 @@ extension YHInformationPerfectListVC : UITableViewDelegate,UITableViewDataSource
let vc = YHEducationInfoListVC()
vc.orderId = orderId ?? 0
navigationController?.pushViewController(vc)
} else if indexPath.row == 4 {
//工作经历
let vc = YHWorkExperienceListViewController()
......
......@@ -34,3 +34,10 @@ class YHContactMainItemStatusModel {
struct YHContactMainItemStatusModel2 : SmartCodable {
var fill_info_step : Int = 0
}
struct YHContactInfoScoreModel : SmartCodable {
var sum_score : String = ""
}
......@@ -241,6 +241,7 @@ private extension YHBasicInfoFillView {
bottomLine.snp.removeConstraints()
if model?.type == 0 {
additionHoldView.snp.removeConstraints()
additionHoldView.snp.remakeConstraints { make in
make.top.equalTo(answer1Btn.snp.bottom).offset(12)
make.left.right.equalToSuperview()
......@@ -258,10 +259,10 @@ private extension YHBasicInfoFillView {
} else {
mutilChoiceHoldView.snp.removeConstraints()
mutilChoiceHoldView.snp.remakeConstraints { make in
make.top.equalTo(answer1Btn.snp.bottom).offset(12)
make.left.right.equalToSuperview()
// make.height.equalTo(78)
make.bottom.equalToSuperview().offset(-18)
}
......@@ -300,26 +301,6 @@ private extension YHBasicInfoFillView {
additionHoldView.isHidden = true
mutilChoiceHoldView.isHidden = false
// title = model.question
// if model.answer == "Y" {
// didClickResponseBtn(btn: answer2Btn)
// myTextView.text = model.info.count > 0 ? model.info : kTipsString
// } else {
// if model.answer == "N" {
// didClickResponseBtn(btn: answer1Btn)
// }
// }
//
// mutilChoiceHoldView.snp.removeConstraints()
// mutilChoiceHoldView.snp.remakeConstraints { make in
// make.top.equalTo(answer1Btn.snp.bottom).offset(12)
// make.left.right.equalToSuperview()
//// make.height.equalTo(78)
// make.bottom.equalToSuperview().offset(-18)
// }
let lable = UILabel()
let str = "* 选择成员:"
let attributes: [NSAttributedString.Key: Any] = [
......@@ -339,7 +320,37 @@ private extension YHBasicInfoFillView {
}
guard let subModel = model.model else { return }
guard let subModel = model.model else {
printLog("errorr: 数据有问题")
title = model.question
if model.answer == "Y" {
didClickResponseBtn(btn: answer2Btn)
mutilChoiceHoldView.isHidden = false
} else {
if model.answer == "N" {
didClickResponseBtn(btn: answer1Btn)
} else {
answer2Btn.isSelected = false
updateAnswerButton(answer2Btn, false)
additionHoldView.snp.removeConstraints()
mutilChoiceHoldView.snp.removeConstraints()
bottomLine.snp.remakeConstraints { make in
make.top.equalTo(answer1Btn.snp.bottom).offset(12)
make.left.right.equalToSuperview()
make.height.equalTo(0.5)
make.bottom.equalToSuperview()
}
additionHoldView.isHidden = true
bottomLine.isHidden = false
mutilChoiceHoldView.isHidden = true
}
}
return
}
var targetView : UIView = lable
......@@ -367,7 +378,7 @@ private extension YHBasicInfoFillView {
btn.isSelected = false
}
if index == subModel.subset.count - 1 {
......@@ -386,21 +397,36 @@ private extension YHBasicInfoFillView {
}
}
targetView = btn
arrCheckBtns.append(btn)
}
title = model.question
if model.answer == "Y" {
didClickResponseBtn(btn: answer2Btn)
mutilChoiceHoldView.isHidden = false
} else {
title = model.question
if model.answer == "Y" {
didClickResponseBtn(btn: answer2Btn)
myTextView.text = model.info.count > 0 ? model.info : kTipsString
if model.answer == "N" {
didClickResponseBtn(btn: answer1Btn)
} else {
if model.answer == "N" {
didClickResponseBtn(btn: answer1Btn)
answer2Btn.isSelected = false
updateAnswerButton(answer2Btn, false)
additionHoldView.snp.removeConstraints()
mutilChoiceHoldView.snp.removeConstraints()
bottomLine.snp.remakeConstraints { make in
make.top.equalTo(answer1Btn.snp.bottom).offset(12)
make.left.right.equalToSuperview()
make.height.equalTo(0.5)
make.bottom.equalToSuperview()
}
additionHoldView.isHidden = true
bottomLine.isHidden = false
mutilChoiceHoldView.isHidden = true
}
targetView = btn
arrCheckBtns.append(btn)
}
} else {
additionHoldView.isHidden = false
......@@ -428,7 +454,7 @@ private extension YHBasicInfoFillView {
extension YHBasicInfoFillView : UITextFieldDelegate {
func textViewShouldBeginEditing(_ textView: UITextView) -> Bool {
if textView.text == kTipsString {
......@@ -472,7 +498,6 @@ extension YHBasicInfoFillView : UITextFieldDelegate {
sender.isSelected = true
model?.info = String(sender.tag)
}
}
}
......@@ -144,7 +144,7 @@ class YHChildBasicInfoVC: YHBaseViewController, YHFamilyMemberProtol {
let item31 = YHFormDetailItem(type: .stayHKDate)
item31.placeHolder = "请选择".local
item31.tips = "请选择获准逗留期限".local
item31.value = child.childInHk?.info
item31.value = child.childInHk.info
let item32 = YHFormDetailItem(type: .roleInHK)
item32.placeHolder = "请选择".local
......@@ -435,7 +435,7 @@ extension YHChildBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
if detailItem.type == .birthday {
self.child?.birthday = date
} else if detailItem.type == .stayHKDate {
self.child?.childInHk?.info = date
self.child?.childInHk.info = date
}
self.loadBasicInfo()
if let delegate = delegate {
......
......@@ -175,7 +175,7 @@ class YHSpouseBasicInfoVC: YHBaseViewController, YHFamilyMemberProtol {
if spouse.isNowInHK() { // 目前在港才显示 逗留期限和在港身份
let item31 = YHFormDetailItem(type: .stayHKDate)
item31.placeHolder = "请选择".local
item31.value = spouse.childInHk?.info
item31.value = spouse.childInHk.info
item31.tips = "请选择".local
let item32 = YHFormDetailItem(type: .roleInHK)
......@@ -596,7 +596,7 @@ extension YHSpouseBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
if detailItem.type == .birthday {
self.spouse?.birthday = date
} else if detailItem.type == .stayHKDate {
self.spouse?.childInHk?.info = date
self.spouse?.childInHk.info = date
}
self.loadBasicInfo()
}
......
......@@ -129,21 +129,21 @@ class YHFamilyMemberInfoVC: YHBaseViewController {
// 检查填写信息完整性
func checkIntegrity() -> Bool {
if let sponse = familyMemberInfo?.spouse, sponse.notFillNum > 0 {
if let sponse = familyMemberInfo?.spouse, sponse.notFillNumber > 0 {
return false
}
if let father = familyMemberInfo?.father, father.notFillNum > 0 {
if let father = familyMemberInfo?.father, father.notFillNumber > 0 {
return false
}
if let mother = familyMemberInfo?.mother, mother.notFillNum > 0 {
if let mother = familyMemberInfo?.mother, mother.notFillNumber > 0 {
return false
}
if let childs = familyMemberInfo?.child, !childs.isEmpty {
for child in childs {
if child.notFillNum > 0 {
if child.notFillNumber > 0 {
return false
}
}
......@@ -151,7 +151,7 @@ class YHFamilyMemberInfoVC: YHBaseViewController {
if let brothers = familyMemberInfo?.brother, !brothers.isEmpty {
for brother in brothers {
if brother.notFillNum > 0 {
if brother.notFillNumber > 0 {
return false
}
}
......@@ -233,7 +233,7 @@ extension YHFamilyMemberInfoVC {
// 请求家庭成员信息
func requestFamilyInfo() {
self.familyRequest.getFamilyInfo(params: ["orderId": self.orderId]) { [weak self] success, error in
self.familyRequest.getFamilyInfo(params: ["order_id": self.orderId]) { [weak self] success, error in
guard let self = self else { return }
if success {
familyMemberInfo = self.familyRequest.familyInfo
......@@ -337,10 +337,10 @@ extension YHFamilyMemberInfoVC : UITableViewDelegate, UITableViewDataSource {
let detailItem = item as! YHFamilyMember
let cell = tableView.dequeueReusableCell(withIdentifier: YHFormItemEnterDetailCell.cellReuseIdentifier, for: indexPath) as! YHFormItemEnterDetailCell
cell.title = detailItem.getTitle()
cell.detailLabel.textColor = (isNeedShowError && detailItem.notFillNum > 0 ? .failColor : .labelTextColor2)
cell.detailLabel.textColor = (isNeedShowError && detailItem.notFillNumber > 0 ? .failColor : .labelTextColor2)
if detailItem.notFillNum > 0 {
cell.detailLabel.text = String(format: "有%d项未填写".local, detailItem.notFillNum)
if detailItem.notFillNumber > 0 {
cell.detailLabel.text = String(format: "有%d项未填写".local, detailItem.notFillNumber)
} else {
cell.detailLabel.text = "已填完".local
}
......@@ -464,12 +464,7 @@ extension YHFamilyMemberInfoVC : UITableViewDelegate, UITableViewDataSource {
let arr = items[indexPath.section]
let item:YHFormItemProtocol = arr[indexPath.row]
if item is YHFormTitleItem { // 是标题
return 52.0
} else if item is YHFormAddItem { // 新增子女兄妹
return 70.0
}
return 50.0
return UITableView.automaticDimension
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
......
......@@ -26,41 +26,7 @@ class YHFamilyRequestViewModel {
printLog("model 是 ==> \(json)")
let dic = json.data as? [AnyHashable : Any]
guard var dic = dic else { return }
#if DEBUG
if let child = dic["child"], child is [[String: Any]] {
var child = child as! [[String: Any]]
for (index, dic) in child.enumerated() {
var d = dic
d["certificates"] = [String: Any]()
child[index] = d
}
dic["child"] = child
}
if let brother = dic["brother"], brother is [[String: Any]] {
var brother = brother as! [[String: Any]]
for (index, dic) in brother.enumerated() {
var d = dic
d["certificates"] = [String: Any]()
// ["cnIdentityCard":"",
// "passport":"",
// "hkMacaoPass":""]
brother[index] = d
}
dic["brother"] = brother
}
#endif
guard let resultModel = YHFamilyMemberGroupInfo.deserialize(dict: dic as? [AnyHashable : Any]) else {
guard let resultModel = YHFamilyMemberGroupInfo.deserialize(dict: dic) else {
callBackBlock(false,nil)
return
......
......@@ -14,6 +14,11 @@ import GKNavigationBarSwift
class YHScoreDetailViewController: YHBaseViewController {
var orderId : Int?
var model : YHContactInfoScoreModel? {
didSet {
}
}
private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel()
//头部背景图片
......
......@@ -108,9 +108,9 @@ extension YHOtherInfoFillViewController {
otherInfoVM.saveOtherInfo(params: param) { success, error in
if success == true {
YHHUD.flash(message: "保存成功")
YHHUD.flash(message: "操作成功")
} else {
let msg = error?.errorMsg ?? "保存失败"
let msg = error?.errorMsg ?? "操作失败"
YHHUD.flash(message: msg)
}
}
......
......@@ -128,6 +128,10 @@ class YHOtherPickerView: UIView {
self.createUI()
self.type = type
initDataSource()
if arrData.count > 0 {
userSelectedItem = arrData[0]
}
}
required init?(coder: NSCoder) {
......
......@@ -18,6 +18,17 @@ class YHSubmintAllInfoSuccessTipView: UIView {
var agreeButton: UIButton!
var disAgressButton: UIButton!
var model : YHContactInfoScoreModel? {
didSet {
guard let model = model else {
return
}
let a: ASAttributedString = .init(NSAttributedString(string: model.sum_score), .font(UIFont.PFSC_M(ofSize: 43)),.foreground(UIColor.warnColor))
let b: ASAttributedString = .init("分", .font(UIFont.PFSC_R(ofSize: 12)),.foreground(UIColor.labelTextColor2))
messageLabel.attributed.text = a + b
}
}
//头部背景图片
lazy var headBkgImagV: UIImageView = {
let imagV = UIImageView()
......@@ -35,9 +46,10 @@ class YHSubmintAllInfoSuccessTipView: UIView {
}()
static func showCheckView(callBack: @escaping Block) {
static func showCheckView(model: YHContactInfoScoreModel?,callBack: @escaping Block) {
let view = YHSubmintAllInfoSuccessTipView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: KScreenHeight))
view.block = callBack
view.model = model
let window = UIApplication.shared.yhKeyWindow()
window?.addSubview(view)
}
......@@ -114,7 +126,7 @@ class YHSubmintAllInfoSuccessTipView: UIView {
messageLabel = {
let label = UILabel()
label.text = "90分"
label.text = "--分"
label.textAlignment = .center
label.numberOfLines = 1
return label
......
......@@ -24,6 +24,7 @@ class YHServiceCenterMainViewModel: YHBaseViewModel {
var myScoreResultData : YHScoreResultModel?//网络请求的结果数据
var localScoreData : YHScoreDataModel? //本地缓存的数据
var allInfoScoreModel: YHContactInfoScoreModel? //提交信息获取 得分
}
//请求接口
......@@ -109,7 +110,7 @@ extension YHServiceCenterMainViewModel {
return
}
if resultModel.fill_info_step > 6 {
if resultModel.fill_info_step >= 6 {
let model = YHContactMainItemStatusModel()
model.type = 1
model.isFinished = true
......@@ -199,10 +200,10 @@ extension YHServiceCenterMainViewModel {
callBackBlock(true,nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code),errorMsg: json.msg)
let err : YHErrorModel = YHErrorModel(errorCode:Int32(json.code),errorMsg: json.msg)
self.arrInfoFillStep = []
informationFillStepModel = nil
callBackBlock(false,err)
}
} failBlock: { err in
......@@ -212,6 +213,30 @@ extension YHServiceCenterMainViewModel {
}
}
//提交订单信息
func submitAllInfoOp( params:[String : Any],callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Order.submitAllInfoApi
let _ = YHNetRequest.postRequest(url: strUrl,params: params) {[weak self] json, code in
//1. json字符串 转 对象
printLog("model 是 ==> \(json)")
guard let self = self else { return }
if json.code == 200 {
let dic = json.data
guard let resultModel = YHContactInfoScoreModel.deserialize(dict: dic as? [AnyHashable : Any]) else {
callBackBlock(false,nil)
return
}
self.allInfoScoreModel = resultModel
callBackBlock(true,nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code),errorMsg: json.msg.count > 0 ? json.msg : "数据错误")
callBackBlock(false,error)
}
} failBlock: { err in
callBackBlock(false,err)
}
}
//提交 温馨提示弹窗
func submitSweetNotifyOp( params:[String : Any],callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
......
......@@ -10,7 +10,7 @@ import UIKit
class YHLoginViewModel: YHBaseViewModel {
var userModel: YHUserModel?
override init() {
super.init()
}
......@@ -46,8 +46,8 @@ extension YHLoginViewModel {
"client": "super_app"]
let strUrl = "http://test.api.diymanager.galaxy-immi.com/" + "infoflow/auth/login"
// http:test.api.diymanager.galaxy-immi.com/infoflow/auth/login
// let strUrl = "http://192.168.34.106:18088/" + "infoflow/auth/login"
// http:test.api.diymanager.galaxy-immi.com/infoflow/auth/login
// let strUrl = "http://192.168.34.106:18088/" + "infoflow/auth/login"
let _ = YHNetRequest.postRequest(url: strUrl, params: params) {[weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
......
......@@ -56,6 +56,9 @@ class YHMyViewController: YHBaseViewController, ConstraintRelatableTarget {
}()
lazy var items: [PersonalModuleItem] = {
let version = "app版本号:" + UIDevice.appVersion() + "_" + UIDevice.appBuild()
return [PersonalModuleItem(icon: "mine_item_msg", title: "我的消息".local, type:.myMessage),
PersonalModuleItem(icon: "mine_item_progress", title: "我的进度".local, type:.myProgress),
PersonalModuleItem(icon: "mine_item_scoreCenter", title: "积分中心".local, type:.scoreCenter),
......@@ -63,6 +66,8 @@ class YHMyViewController: YHBaseViewController, ConstraintRelatableTarget {
PersonalModuleItem(icon: "mine_item_poster", title: "我的海报".local, type:.myPoster),
PersonalModuleItem(icon: "mine_item_code", title: "我的测评码".local, type:.myTestCode),
PersonalModuleItem(icon: "mine_item_appoint", title: "预约银河湾".local, type:.appointGalaxyBay),
PersonalModuleItem(icon: "mine_item_appoint", title: version, type:.appointGalaxyBay),
]
}()
......
......@@ -31,6 +31,8 @@ class YHAllApiName {
// static let informationStepApi = "frontend/order/information/step"
static let informationStepApi = "infoflow/order/information/step"
//提交订单信息
static let submitAllInfoApi = "infoflow/order/information/submit"
//我的评分结果
......@@ -47,7 +49,8 @@ class YHAllApiName {
struct Family {
// 获取家庭成员信息 添加家庭成员也用这个
static let familyInfoApi = "frontend/order/information/family"
// static let familyInfoApi = "frontend/order/information/family"
static let familyInfoApi = "infoflow/information/family"
// 删除家庭成员信息
static let familyMemberDeleteApi = "frontend/order/information/family/delete"
......
......@@ -16,13 +16,18 @@
<rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="launch_screen_image" highlightedImage="launch_screen_image" translatesAutoresizingMaskIntoConstraints="NO" id="sFt-Ce-yYm">
<rect key="frame" x="-18" y="-37" width="428" height="926"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" insetsLayoutMarginsFromSafeArea="NO" image="launch_screen_image" highlightedImage="launch_screen_image" translatesAutoresizingMaskIntoConstraints="NO" id="sFt-Ce-yYm">
<rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
</imageView>
</subviews>
<viewLayoutGuide key="safeArea" id="586-1X-Ryv"/>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstAttribute="trailing" secondItem="sFt-Ce-yYm" secondAttribute="trailing" id="0yN-WE-6Kj"/>
<constraint firstItem="sFt-Ce-yYm" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leading" id="8xj-jA-15j"/>
<constraint firstItem="sFt-Ce-yYm" firstAttribute="top" secondItem="Ze5-6b-2t3" secondAttribute="top" id="aPd-Z9-bKu"/>
<constraint firstAttribute="bottom" secondItem="sFt-Ce-yYm" secondAttribute="bottom" id="bFA-o7-CPz"/>
</constraints>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
......
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