Commit 524032e6 authored by pete谢兆麟's avatar pete谢兆麟

Merge branch 'qmas-1130' of http://gitlab.galaxy-immi.com/mobile-group/galaxy-iOS into qmas-1130

parents 205625ae 23987683
...@@ -826,6 +826,8 @@ ...@@ -826,6 +826,8 @@
A5573EE92B317C0100D98EC0 /* galaxyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5573EE82B317C0100D98EC0 /* galaxyTests.swift */; }; A5573EE92B317C0100D98EC0 /* galaxyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5573EE82B317C0100D98EC0 /* galaxyTests.swift */; };
A5573EF32B317C0100D98EC0 /* galaxyUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5573EF22B317C0100D98EC0 /* galaxyUITests.swift */; }; A5573EF32B317C0100D98EC0 /* galaxyUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5573EF22B317C0100D98EC0 /* galaxyUITests.swift */; };
A5573EF52B317C0100D98EC0 /* galaxyUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5573EF42B317C0100D98EC0 /* galaxyUITestsLaunchTests.swift */; }; A5573EF52B317C0100D98EC0 /* galaxyUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5573EF42B317C0100D98EC0 /* galaxyUITestsLaunchTests.swift */; };
A56220E82CF3634300B432E6 /* YHPreviewInfoQuestionAndAnswerItemsView2.swift in Sources */ = {isa = PBXBuildFile; fileRef = A56220E72CF3634300B432E6 /* YHPreviewInfoQuestionAndAnswerItemsView2.swift */; };
A56220EA2CF3636C00B432E6 /* YHPreviewInfoQuestionAndAnswerItemView2.swift in Sources */ = {isa = PBXBuildFile; fileRef = A56220E92CF3636C00B432E6 /* YHPreviewInfoQuestionAndAnswerItemView2.swift */; };
A566A79A2C219FA400980D06 /* YHHomeSalonAreaView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A566A7992C219FA400980D06 /* YHHomeSalonAreaView.swift */; }; A566A79A2C219FA400980D06 /* YHHomeSalonAreaView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A566A7992C219FA400980D06 /* YHHomeSalonAreaView.swift */; };
A566A79C2C227C9B00980D06 /* YHOrderTipsItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A566A79B2C227C9B00980D06 /* YHOrderTipsItemView.swift */; }; A566A79C2C227C9B00980D06 /* YHOrderTipsItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A566A79B2C227C9B00980D06 /* YHOrderTipsItemView.swift */; };
A567E5922BD7643D00D5D5A0 /* YHHomeWebViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A567E5682BD7643D00D5D5A0 /* YHHomeWebViewModel.swift */; }; A567E5922BD7643D00D5D5A0 /* YHHomeWebViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A567E5682BD7643D00D5D5A0 /* YHHomeWebViewModel.swift */; };
...@@ -1868,6 +1870,8 @@ ...@@ -1868,6 +1870,8 @@
A5573EEE2B317C0100D98EC0 /* galaxyUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = galaxyUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; A5573EEE2B317C0100D98EC0 /* galaxyUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = galaxyUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
A5573EF22B317C0100D98EC0 /* galaxyUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = galaxyUITests.swift; sourceTree = "<group>"; }; A5573EF22B317C0100D98EC0 /* galaxyUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = galaxyUITests.swift; sourceTree = "<group>"; };
A5573EF42B317C0100D98EC0 /* galaxyUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = galaxyUITestsLaunchTests.swift; sourceTree = "<group>"; }; A5573EF42B317C0100D98EC0 /* galaxyUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = galaxyUITestsLaunchTests.swift; sourceTree = "<group>"; };
A56220E72CF3634300B432E6 /* YHPreviewInfoQuestionAndAnswerItemsView2.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHPreviewInfoQuestionAndAnswerItemsView2.swift; sourceTree = "<group>"; };
A56220E92CF3636C00B432E6 /* YHPreviewInfoQuestionAndAnswerItemView2.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHPreviewInfoQuestionAndAnswerItemView2.swift; sourceTree = "<group>"; };
A566A7992C219FA400980D06 /* YHHomeSalonAreaView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHomeSalonAreaView.swift; sourceTree = "<group>"; }; A566A7992C219FA400980D06 /* YHHomeSalonAreaView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHomeSalonAreaView.swift; sourceTree = "<group>"; };
A566A79B2C227C9B00980D06 /* YHOrderTipsItemView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHOrderTipsItemView.swift; sourceTree = "<group>"; }; A566A79B2C227C9B00980D06 /* YHOrderTipsItemView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHOrderTipsItemView.swift; sourceTree = "<group>"; };
A567E5682BD7643D00D5D5A0 /* YHHomeWebViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHHomeWebViewModel.swift; sourceTree = "<group>"; }; A567E5682BD7643D00D5D5A0 /* YHHomeWebViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHHomeWebViewModel.swift; sourceTree = "<group>"; };
...@@ -2909,6 +2913,8 @@ ...@@ -2909,6 +2913,8 @@
045EEDB02B9F171A0022A143 /* V */ = { 045EEDB02B9F171A0022A143 /* V */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
A56220E92CF3636C00B432E6 /* YHPreviewInfoQuestionAndAnswerItemView2.swift */,
A56220E72CF3634300B432E6 /* YHPreviewInfoQuestionAndAnswerItemsView2.swift */,
045EEDB12B9F171A0022A143 /* YHPreviewInfoCell.swift */, 045EEDB12B9F171A0022A143 /* YHPreviewInfoCell.swift */,
04AA868B2CEE00560059A95C /* YHPreviewInfoNameAndDetailCell.swift */, 04AA868B2CEE00560059A95C /* YHPreviewInfoNameAndDetailCell.swift */,
04AA868D2CEE03CF0059A95C /* YHPreviewInfoHeaderCell.swift */, 04AA868D2CEE03CF0059A95C /* YHPreviewInfoHeaderCell.swift */,
...@@ -5649,6 +5655,7 @@ ...@@ -5649,6 +5655,7 @@
files = ( files = (
04B4B8D52C89CE5E00ED82BC /* YHButlerServiceMessage.swift in Sources */, 04B4B8D52C89CE5E00ED82BC /* YHButlerServiceMessage.swift in Sources */,
04A671592B9F18C800C1FB91 /* YHCertificateUploadSheetView.swift in Sources */, 04A671592B9F18C800C1FB91 /* YHCertificateUploadSheetView.swift in Sources */,
A56220E82CF3634300B432E6 /* YHPreviewInfoQuestionAndAnswerItemsView2.swift in Sources */,
04B360E52C60B5D3001EB053 /* YHPrinciplePhotoCollectCell.swift in Sources */, 04B360E52C60B5D3001EB053 /* YHPrinciplePhotoCollectCell.swift in Sources */,
04AA86922CEE0E270059A95C /* YHPreviewInfoIncomeTypeCell.swift in Sources */, 04AA86922CEE0E270059A95C /* YHPreviewInfoIncomeTypeCell.swift in Sources */,
0425E6422BA95B1B00A5E763 /* YHSchemeTableFooterView.swift in Sources */, 0425E6422BA95B1B00A5E763 /* YHSchemeTableFooterView.swift in Sources */,
...@@ -5703,6 +5710,7 @@ ...@@ -5703,6 +5710,7 @@
A5ACE92F2B4564F7002C94D2 /* YHMyViewController.swift in Sources */, A5ACE92F2B4564F7002C94D2 /* YHMyViewController.swift in Sources */,
0430E6802C75966D000511E2 /* YHAdopterCardExampleView.swift in Sources */, 0430E6802C75966D000511E2 /* YHAdopterCardExampleView.swift in Sources */,
A5ACE9332B4564F7002C94D2 /* NetBaseModel.swift in Sources */, A5ACE9332B4564F7002C94D2 /* NetBaseModel.swift in Sources */,
A56220EA2CF3636C00B432E6 /* YHPreviewInfoQuestionAndAnswerItemView2.swift in Sources */,
04256DF62C736A0800A37BA4 /* YHServiceItemCell.swift in Sources */, 04256DF62C736A0800A37BA4 /* YHServiceItemCell.swift in Sources */,
0480582F2C7CA77900502CAA /* YHDisappointHKAlertView.swift in Sources */, 0480582F2C7CA77900502CAA /* YHDisappointHKAlertView.swift in Sources */,
A5FF0F3A2C32F20A0069852B /* YHActivityDetailCell0.swift in Sources */, A5FF0F3A2C32F20A0069852B /* YHActivityDetailCell0.swift in Sources */,
......
...@@ -77,7 +77,7 @@ class YHResignAppointTimeSingleCell: UITableViewCell { ...@@ -77,7 +77,7 @@ class YHResignAppointTimeSingleCell: UITableViewCell {
} }
self.refreshBlock?() self.refreshBlock?()
} }
view.show()//for test hjl view.show()
} }
} }
return view return view
......
...@@ -157,6 +157,7 @@ extension YHOtherLanguageSelecteView { ...@@ -157,6 +157,7 @@ extension YHOtherLanguageSelecteView {
//对应的选项 view //对应的选项 view
let optionView = YHSingleOptionalItemsView() let optionView = YHSingleOptionalItemsView()
optionView.arrCompare = dataModel
optionView.dataModel = item optionView.dataModel = item
mutilHoldView.addSubview(optionView) mutilHoldView.addSubview(optionView)
optionView.snp.makeConstraints { make in optionView.snp.makeConstraints { make in
...@@ -204,6 +205,8 @@ extension YHOtherLanguageSelecteView { ...@@ -204,6 +205,8 @@ extension YHOtherLanguageSelecteView {
let optionView = arrLanguageOptions[index] let optionView = arrLanguageOptions[index]
optionView.needCheckFlag = needCheckFlag optionView.needCheckFlag = needCheckFlag
optionView.arrCompare = dataModel
optionView.dataModel = item optionView.dataModel = item
if index == 0 { if index == 0 {
......
...@@ -33,7 +33,6 @@ class YHOtherMultipleChoiceItemView: UIView { ...@@ -33,7 +33,6 @@ class YHOtherMultipleChoiceItemView: UIView {
} }
} }
private lazy var titleLabel: UILabel = { private lazy var titleLabel: UILabel = {
let label = UILabel() let label = UILabel()
label.textColor = .mainTextColor label.textColor = .mainTextColor
......
...@@ -85,6 +85,8 @@ class YHSingleOptionalItemsView: UIView { ...@@ -85,6 +85,8 @@ class YHSingleOptionalItemsView: UIView {
} }
} }
var arrCompare : [LanguageDetailModel] = []
private var arrHoldView : [YHOtherSingleChoiceItemView] = [] private var arrHoldView : [YHOtherSingleChoiceItemView] = []
...@@ -118,7 +120,7 @@ private extension YHSingleOptionalItemsView { ...@@ -118,7 +120,7 @@ private extension YHSingleOptionalItemsView {
make.top.equalTo(textFieldHoldView.snp.bottom).offset(8) make.top.equalTo(textFieldHoldView.snp.bottom).offset(8)
make.left.right.equalToSuperview() make.left.right.equalToSuperview()
make.height.equalTo(20)//for test hjl make.height.equalTo(20)
make.bottom.equalToSuperview() make.bottom.equalToSuperview()
} }
} }
...@@ -129,9 +131,8 @@ private extension YHSingleOptionalItemsView { ...@@ -129,9 +131,8 @@ private extension YHSingleOptionalItemsView {
return return
} }
model.other_instructions = textField.text ?? "" model.other_instructions = textField.text ?? ""
// self.block?(model)
updateUI()//for test hjl updateUI()
NotificationCenter.default.post(name: Notification.Name(rawValue: "com.yinhe.myCertificate.wechat.otherInfo_remark_notification"), object: model) NotificationCenter.default.post(name: Notification.Name(rawValue: "com.yinhe.myCertificate.wechat.otherInfo_remark_notification"), object: model)
} }
...@@ -291,6 +292,32 @@ private extension YHSingleOptionalItemsView { ...@@ -291,6 +292,32 @@ private extension YHSingleOptionalItemsView {
} }
let clickIndex = gestureRecognizer.view?.tag let clickIndex = gestureRecognizer.view?.tag
if clickIndex == 0 {
//判断母语
if !model.options.isEmpty {
let item = model.options[0]
if !item.select {
//判断其他 语言是不是选了 母语
var hasSelected : Bool = false
for (_,item) in arrCompare.enumerated() {
if item.id != model.id {
for (_,tt) in item.options.enumerated() {
if tt.id == 1,tt.select {//母语
hasSelected = true
}
}
}
}
if hasSelected {
YHHUD.flash(message: "只能选择一种语言为母语")
return
}
}
}
}
for (index,item) in model.options.enumerated() { for (index,item) in model.options.enumerated() {
if clickIndex == index { if clickIndex == index {
if !item.select { if !item.select {
......
...@@ -15,7 +15,8 @@ class YHPreviewWorkExpViewController: YHPreviewBaseViewController { ...@@ -15,7 +15,8 @@ class YHPreviewWorkExpViewController: YHPreviewBaseViewController {
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
setupUI() setupUI()
loadData() // loadData()
loadData2()
} }
} }
...@@ -40,6 +41,22 @@ private extension YHPreviewWorkExpViewController { ...@@ -40,6 +41,22 @@ private extension YHPreviewWorkExpViewController {
printLog("error : orderID 为空") printLog("error : orderID 为空")
} }
} }
func loadData2() {
if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") {
previewVM.getPreviewForWorkExpNewInfo(params: ["order_id" : orderID]) { success, error in
if success == true {
} else {
}
self.homeTableView.reloadData()
}
} else {
printLog("error : orderID 为空")
}
}
} }
...@@ -47,13 +64,17 @@ private extension YHPreviewWorkExpViewController { ...@@ -47,13 +64,17 @@ private extension YHPreviewWorkExpViewController {
// MARK: - UITableViewDelegate 和 UITableViewDataSource // MARK: - UITableViewDelegate 和 UITableViewDataSource
extension YHPreviewWorkExpViewController { extension YHPreviewWorkExpViewController {
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return previewVM.arrDataForWorkExpInfo.count // return previewVM.arrDataForWorkExpInfo.count
return previewVM.arrDataForWorkExpInfoNew.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 = previewVM.arrDataForWorkExpInfo[indexPath.row] // cell.model = previewVM.arrDataForWorkExpInfo[indexPath.row]
if !previewVM.arrDataForWorkExpInfoNew.isEmpty,indexPath.row < previewVM.arrDataForWorkExpInfoNew.count {
cell.model = previewVM.arrDataForWorkExpInfoNew[indexPath.row]
}
return cell return cell
} }
} }
...@@ -11,4 +11,5 @@ import UIKit ...@@ -11,4 +11,5 @@ import UIKit
struct YHWorkExpDataModel { struct YHWorkExpDataModel {
var title : String var title : String
var data : [Any] = [] var data : [Any] = []
var uiType : Int = 1 //默认一行问答 //1- 一行问答 2- 2行问答 3- 简历列表类型 4- 4行问答,答案中添加背景
} }
...@@ -12,6 +12,8 @@ import SmartCodable ...@@ -12,6 +12,8 @@ import SmartCodable
//优才新政 - 2024优才新政 //优才新政 - 2024优才新政
class YHWorkExpInfoPreview_NewModel : SmartCodable { class YHWorkExpInfoPreview_NewModel : SmartCodable {
var list : [YHWorkExpInfoPreviewDetail_NewModel]? var list : [YHWorkExpInfoPreviewDetail_NewModel]?
var why_work_time_overlap : String = ""
var why_work_time_empty : String = ""
required init() { required init() {
} }
} }
...@@ -31,8 +33,6 @@ class YHWorkExpInfoPreviewDetail_NewModel : SmartCodable { ...@@ -31,8 +33,6 @@ class YHWorkExpInfoPreviewDetail_NewModel : SmartCodable {
var work_duty : String = "" var work_duty : String = ""
var work_highlights : String = "" var work_highlights : String = ""
var attachment_list : [WorkExpFilePreviewModel] = [] var attachment_list : [WorkExpFilePreviewModel] = []
var why_work_time_overlap : String = ""
var why_work_time_empty : String = ""
var position_list : [YHWorkExpPosition_NewModel] = [] var position_list : [YHWorkExpPosition_NewModel] = []
required init() { required init() {
......
//
// YHPreviewInfoQuestionAndAnswerView.swift
// galaxy
//
// Created by davidhuangA on 2024/2/24.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHPreviewInfoQuestionAndAnswerItemView2: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
setupUI()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
//title
private lazy var nameLable : UILabel = {
let lable0 = UILabel(text: "--")
lable0.textColor = UIColor.labelTextColor2
lable0.font = UIFont.PFSC_R(ofSize: 14)
lable0.numberOfLines = 0
lable0.lineBreakMode = .byCharWrapping
return lable0
}()
//subtitleLable
private lazy var subtitleLable : UILabel = {
let lable0 = UILabel(text: "--")
lable0.textColor = UIColor.mainTextColor
lable0.font = UIFont.PFSC_R(ofSize: 14)
lable0.numberOfLines = 0
lable0.lineBreakMode = .byWordWrapping
return lable0
}()
private lazy var answerkHoldView : UIView = {
let view = UIView()
view.backgroundColor = .contentBkgColor
view.layer.cornerRadius = kCornerRadius3
view.clipsToBounds = true
return view
}()
//remarkLable
private lazy var remarkLable : UILabel = {
let lable0 = UILabel(text: "--")
lable0.textColor = UIColor.labelTextColor2
lable0.font = UIFont.PFSC_R(ofSize: 14)
lable0.numberOfLines = 0
lable0.lineBreakMode = .byWordWrapping
lable0.text = "--"
return lable0
}()
private lazy var remarkHoldView : UIView = {
let view = UIView()
view.backgroundColor = .contentBkgColor
view.layer.cornerRadius = kCornerRadius3
view.clipsToBounds = true
view.isHidden = true
return view
}()
private func setupUI() {
addSubview(nameLable)
nameLable.snp.makeConstraints { make in
make.top.equalToSuperview().offset(18)
make.left.equalToSuperview()
make.right.equalToSuperview()
}
addSubview(answerkHoldView)
answerkHoldView.addSubview(subtitleLable)
subtitleLable.snp.makeConstraints { make in
make.top.left.equalToSuperview().offset(kMargin)
make.right.bottom.equalToSuperview().offset(-kMargin)
}
}
var dataModel : YHPreviewQuestionAndAnswerModel? {
didSet {
updateUI()
}
}
}
extension YHPreviewInfoQuestionAndAnswerItemView2 {
func updateUI() {
guard let model = dataModel else { return }
removeSubviews()
setupUI()
nameLable.text = model.question
subtitleLable.text = model.answer
if let remark = model.remark,!remark.isEmpty {
answerkHoldView.snp.removeConstraints()
answerkHoldView.snp.remakeConstraints { make in
make.top.equalTo(nameLable.snp.bottom).offset(7)
make.left.equalToSuperview()
make.right.equalToSuperview()
}
addSubview(remarkHoldView)
remarkHoldView.snp.makeConstraints { make in
make.top.equalTo(answerkHoldView.snp.bottom).offset(8)
make.right.equalToSuperview()
make.left.equalToSuperview()
}
remarkHoldView.addSubview(remarkLable)
remarkLable.snp.makeConstraints { make in
make.top.left.equalTo(12)
make.bottom.right.equalTo(-12)
}
remarkLable.text = remark
remarkHoldView.isHidden = false
remarkHoldView.snp.makeConstraints { make in
make.top.equalTo(answerkHoldView.snp.bottom).offset(8)
make.right.equalToSuperview()
make.left.equalToSuperview()
make.bottom.equalToSuperview()
}
} else {
answerkHoldView.snp.removeConstraints()
subtitleLable.snp.removeConstraints()
subtitleLable.snp.remakeConstraints { make in
make.top.left.equalToSuperview().offset(kMargin)
make.right.bottom.equalToSuperview().offset(-kMargin)
}
answerkHoldView.snp.remakeConstraints { make in
make.top.equalTo(nameLable.snp.bottom).offset(7)
make.left.equalToSuperview()
make.right.equalToSuperview()
make.bottom.equalToSuperview()
}
}
}
}
...@@ -23,16 +23,14 @@ extension YHPreviewInfoQuestionAndAnswerItemsView { ...@@ -23,16 +23,14 @@ extension YHPreviewInfoQuestionAndAnswerItemsView {
removeSubviews() removeSubviews()
var lastTagView : UIView? = nil var lastTagView : UIView? = nil
if model.cellTitle.isEmpty { if !model.cellTitle.isEmpty {
} else {
let sessionView = YHPreviewInfoSingleLineTitleView() let sessionView = YHPreviewInfoSingleLineTitleView()
sessionView.updateTitle(title: model.cellTitle) sessionView.updateTitle(title: model.cellTitle)
addSubview(sessionView) addSubview(sessionView)
sessionView.snp.makeConstraints { make in sessionView.snp.makeConstraints { make in
make.top.equalToSuperview() make.top.equalToSuperview()
make.right.equalToSuperview().offset(-18) make.right.equalToSuperview().offset(-kMargin)
make.left.equalToSuperview().offset(18) make.left.equalToSuperview().offset(kMargin)
make.height.equalTo(YHPreviewInfoSingleLineTitleView.viewH) make.height.equalTo(YHPreviewInfoSingleLineTitleView.viewH)
} }
lastTagView = sessionView lastTagView = sessionView
......
//
// YHPreviewInfoQuestionAndAnswerItemsView.swift
// galaxy
//
// Created by davidhuangA on 2024/2/25.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHPreviewInfoQuestionAndAnswerItemsView2: UIView {
var dataModel : YHPreviewInfoSessionModel? {
didSet {
updateUI()
}
}
}
extension YHPreviewInfoQuestionAndAnswerItemsView2 {
func updateUI() {
guard let model = dataModel else { return }
guard let arrData = model.cellData0,arrData.count > 0 else { return }
removeSubviews()
var lastTagView : UIView? = nil
if !model.cellTitle.isEmpty {
let sessionView = YHPreviewInfoSingleLineTitleView()
sessionView.updateTitle(title: model.cellTitle)
addSubview(sessionView)
sessionView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-kMargin)
make.left.equalToSuperview().offset(kMargin)
make.height.equalTo(YHPreviewInfoSingleLineTitleView.viewH)
}
lastTagView = sessionView
}
if arrData.count == 1 {
let item = arrData[0]
let cellView = YHPreviewInfoQuestionAndAnswerItemView2()
cellView.dataModel = item
addSubview(cellView)
if lastTagView == nil {
cellView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-kMargin)
make.left.equalToSuperview().offset(kMargin)
make.bottom.equalToSuperview().offset(-12)
}
} else {
cellView.snp.makeConstraints { make in
make.top.equalTo(lastTagView!.snp.bottom)
make.right.equalToSuperview().offset(-kMargin)
make.left.equalToSuperview().offset(kMargin)
make.bottom.equalToSuperview().offset(-12)
}
}
} else {
var tmp : UIView? = lastTagView
for(index,item) in arrData.enumerated() {
let cellView = YHPreviewInfoQuestionAndAnswerItemView2()
cellView.dataModel = item
addSubview(cellView)
if index == arrData.count - 1 {
if tmp == nil {
cellView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-kMargin)
make.left.equalToSuperview().offset(kMargin)
make.bottom.equalToSuperview().offset(-12)
}
} else {
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp!.snp.bottom)
make.right.equalToSuperview().offset(-kMargin)
make.left.equalToSuperview().offset(kMargin)
make.bottom.equalToSuperview().offset(-12)
}
}
} else {
if tmp == nil {
cellView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-kMargin)
make.left.equalToSuperview().offset(kMargin)
}
} else {
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp!.snp.bottom)
make.right.equalToSuperview().offset(-kMargin)
make.left.equalToSuperview().offset(kMargin)
}
}
}
tmp = cellView
}
}
}
}
...@@ -18,9 +18,10 @@ class YHPreviewInfoWorkExpView: UIView { ...@@ -18,9 +18,10 @@ class YHPreviewInfoWorkExpView: UIView {
private extension YHPreviewInfoWorkExpView { private extension YHPreviewInfoWorkExpView {
func updateUI() { func updateUI() {
guard let model = dataModel,let mmodel = model.cellData4,mmodel.isEmpty == false else { return } guard let model = dataModel,let mmodel = model.cellData4,!mmodel.isEmpty else { return }
if model.cellType == .workExp { if model.cellType == .workExp {
removeSubviews() removeSubviews()
//1.title //1.title
let sessionView = YHPreviewInfoSingleLineTitleView() let sessionView = YHPreviewInfoSingleLineTitleView()
sessionView.updateTitle(title: model.cellTitle) sessionView.updateTitle(title: model.cellTitle)
...@@ -33,65 +34,84 @@ private extension YHPreviewInfoWorkExpView { ...@@ -33,65 +34,84 @@ private extension YHPreviewInfoWorkExpView {
} }
var lastTagView : UIView = sessionView var lastTagView : UIView = sessionView
for(index,items) in mmodel.enumerated() { for(_,item) in mmodel.enumerated() {
if index == 0 { if !item.title.isEmpty,!item.title.contains("简历/工作总结") {
let item: YHPreviewInfoSessionModel = YHPreviewInfoSessionModel(cellType: .countryInfoType, cellTitle: "", cellData0:items.data as? [YHPreviewQuestionAndAnswerModel]) let label = UILabel()
let view = YHPreviewInfoNameAndSubNameItemsView(frame: .zero) label.text = item.title
view.dataModel = item label.textColor = UIColor.mainTextColor
addSubview(view) label.font = UIFont.PFSC_M(ofSize: 14)
view.snp.makeConstraints { make in
make.top.equalTo(lastTagView.snp.bottom) addSubview(label)
make.left.right.equalToSuperview() label.snp.makeConstraints { make in
}
lastTagView = view
} else if index == 1 {
let item: YHPreviewInfoSessionModel = YHPreviewInfoSessionModel(cellType: .countryInfoType, cellTitle: "", cellData0:items.data as? [YHPreviewQuestionAndAnswerModel])
let view = YHPreviewInfoQuestionAndAnswerItemsView(frame: .zero)
view.dataModel = item
addSubview(view)
view.snp.makeConstraints { make in
make.top.equalTo(lastTagView.snp.bottom) make.top.equalTo(lastTagView.snp.bottom)
make.left.right.equalToSuperview() make.height.equalTo(20)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
} }
lastTagView = view lastTagView = label
} else if index == 2 { }
//项目经验
let arrrr = items.data as? [YHWorkExpDataModel] ?? [] if !item.data.isEmpty {
for (iiidex,item) in arrrr.enumerated() { if item.uiType == 1 {
let view : YHPreviewInfoProjectItemView = YHPreviewInfoProjectItemView(frame: .zero) let item: YHPreviewInfoSessionModel = YHPreviewInfoSessionModel(cellType: .countryInfoType, cellTitle: "", cellData0:item.data as? [YHPreviewQuestionAndAnswerModel])
let view = YHPreviewInfoNameAndSubNameItemsView(frame: .zero)
view.dataModel = item view.dataModel = item
addSubview(view) addSubview(view)
if iiidex == 0 { view.snp.makeConstraints { make in
view.snp.makeConstraints { make in make.top.equalTo(lastTagView.snp.bottom)
make.top.equalTo(lastTagView.snp.bottom) make.left.right.equalToSuperview()
make.left.right.equalToSuperview()
}
} else {
view.snp.makeConstraints { make in
make.top.equalTo(lastTagView.snp.bottom).offset(18)
make.left.right.equalToSuperview()
}
} }
lastTagView = view lastTagView = view
} } else if item.uiType == 2 {
} else if index == 3 { let item: YHPreviewInfoSessionModel = YHPreviewInfoSessionModel(cellType: .countryInfoType, cellTitle: "", cellData0:item.data as? [YHPreviewQuestionAndAnswerModel])
//简历/工作总结 let view = YHPreviewInfoQuestionAndAnswerItemsView(frame: .zero)
let arrrr = items.data as? [YHWorkExpDataModel] ?? [] view.dataModel = item
if arrrr.isEmpty == false {
let view : YHPreviewInfoWorkSummaryView = YHPreviewInfoWorkSummaryView(frame: .zero)
view.dataModel = arrrr[0]
addSubview(view) addSubview(view)
view.snp.makeConstraints { make in view.snp.makeConstraints { make in
make.top.equalTo(lastTagView.snp.bottom).offset(18) make.top.equalTo(lastTagView.snp.bottom)
make.left.equalToSuperview() make.left.right.equalToSuperview()
make.right.equalToSuperview()
} }
lastTagView = view lastTagView = view
} else if item.uiType == 4 {
let item: YHPreviewInfoSessionModel = YHPreviewInfoSessionModel(cellType: .countryInfoType, cellTitle: "", cellData0:item.data as? [YHPreviewQuestionAndAnswerModel])
let view = YHPreviewInfoQuestionAndAnswerItemsView2(frame: .zero)
view.dataModel = item
addSubview(view)
view.snp.makeConstraints { make in
make.top.equalTo(lastTagView.snp.bottom)
make.left.right.equalToSuperview()
}
lastTagView = view
}
else if item.uiType == 3 {
//简历/工作总结
if !item.data.isEmpty {
let tagView : UIView = UIView()
tagView.backgroundColor = UIColor.separatorColor
addSubview(tagView)
tagView.snp.makeConstraints { make in
make.top.equalTo(lastTagView.snp.bottom)
make.left.equalToSuperview().offset(kMargin)
make.right.equalToSuperview().offset(-kMargin)
make.height.equalTo(1)
}
lastTagView = tagView
let view : YHPreviewInfoWorkSummaryView = YHPreviewInfoWorkSummaryView(frame: .zero)
view.dataModel = item
addSubview(view)
view.snp.makeConstraints { make in
make.top.equalTo(lastTagView.snp.bottom).offset(kMargin)
make.left.equalToSuperview()
make.right.equalToSuperview()
}
lastTagView = view
}
} else {
printLog("error: 暂时没有处理的 UI 类型")
} }
} else {
printLog("error: 不应该出现")
} }
} }
...@@ -99,7 +119,7 @@ private extension YHPreviewInfoWorkExpView { ...@@ -99,7 +119,7 @@ private extension YHPreviewInfoWorkExpView {
tagView.backgroundColor = .clear tagView.backgroundColor = .clear
addSubview(tagView) addSubview(tagView)
tagView.snp.makeConstraints { make in tagView.snp.makeConstraints { make in
make.top.equalTo(lastTagView.snp.bottom).offset(6) make.top.equalTo(lastTagView.snp.bottom)
make.left.right.equalToSuperview() make.left.right.equalToSuperview()
make.height.equalTo(0.5) make.height.equalTo(0.5)
make.bottom.equalToSuperview() make.bottom.equalToSuperview()
......
...@@ -57,7 +57,7 @@ extension YHServiceCenterMainViewModel { ...@@ -57,7 +57,7 @@ extension YHServiceCenterMainViewModel {
callBackBlock(false,nil) callBackBlock(false,nil)
return return
} }
self.arrDataForSeviceCenterProgress = result as! [YHServiceCenterProgressModel] self.arrDataForSeviceCenterProgress = result
callBackBlock(true, nil) callBackBlock(true, nil)
} else { } else {
let err = YHErrorModel(errorCode: Int32(json.code), errorMsg: json.msg.isEmpty ? "" : json.msg) let err = YHErrorModel(errorCode: Int32(json.code), errorMsg: json.msg.isEmpty ? "" : json.msg)
......
...@@ -420,21 +420,6 @@ extension YHMyViewController : UITableViewDelegate, UITableViewDataSource { ...@@ -420,21 +420,6 @@ extension YHMyViewController : UITableViewDelegate, UITableViewDataSource {
vc.isSupportWebviewInterBackFlag = true vc.isSupportWebviewInterBackFlag = true
UIViewController.current?.navigationController?.pushViewController(vc) UIViewController.current?.navigationController?.pushViewController(vc)
} }
// let view = YHRangeDatePickerSheetView2.sheetView()
// view.minDateStr = "2024-10-01"
// view.maxDateStr = "2024-11-19"
//// view.defaultTime = "12:00"
// view.viewTitle = "Demo"
// view.showBestFlag = false
// view.block = {
// [weak self] (startDate,time) in
// guard self != nil else { return }
//
// printLog("开始时间: \(startDate)")
// printLog("结束时间: \(time)")
// }
// view.show()//for test hjl
default: default:
printLog("不需要响应") printLog("不需要响应")
} }
......
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