Commit 7e4fc3febff3c57eff0352050daea1a0c5dea283

Authored by “张旭”
1 parent 8526ab7c

* [x] 保存简历接口 UI显示'2024-07-27(1个月经验)',workTime传'2024-07-27' , 数字简历页面查简历时再把2024-07-27转换为x年经验

metaCode/Classes/Main/HomePage/Controller/DigitalAuth/数字简历相关页面/CNLiveDigitalResumeInfoController.swift
@@ -378,9 +378,17 @@ class CNLiveDigitalResumeInfoController:CNLiveBaseViewController, UITextFieldDel @@ -378,9 +378,17 @@ class CNLiveDigitalResumeInfoController:CNLiveBaseViewController, UITextFieldDel
378 } 378 }
379 func loadLocalData(){ 379 func loadLocalData(){
380 if var userDic = UserDefaults.standard.dictionary(forKey: UserInfoManager.shared.userInfo.uid){ 380 if var userDic = UserDefaults.standard.dictionary(forKey: UserInfoManager.shared.userInfo.uid){
381 - if let seleDay = userDic["jianli_workTime"]{ 381 + if let seDay = userDic["jianli_workTime"]{
382 //设置过工作日期 382 //设置过工作日期
383 - self.canjiaRightTitleLabel.text = seleDay as? String 383 + let seleDay = seDay as! String
  384 + var yearStr = ""
  385 + if let workExperience = self.calculateWorkExperience(fromDateString: seleDay){
  386 + yearStr = "\(seleDay)(\(workExperience)年经验)"
  387 + }else{
  388 + yearStr = seleDay
  389 + }
  390 +
  391 + self.canjiaRightTitleLabel.text = yearStr
384 }else{ 392 }else{
385 //没设置过工作日期 393 //没设置过工作日期
386 self.canjiaRightTitleLabel.text = "请选择" 394 self.canjiaRightTitleLabel.text = "请选择"
@@ -600,16 +608,18 @@ class CNLiveDigitalResumeInfoController:CNLiveBaseViewController, UITextFieldDel @@ -600,16 +608,18 @@ class CNLiveDigitalResumeInfoController:CNLiveBaseViewController, UITextFieldDel
600 if (text as! String).count > 0{ 608 if (text as! String).count > 0{
601 var yearStr = "" 609 var yearStr = ""
602 if let textStr = text as? String{ 610 if let textStr = text as? String{
  611 +
  612 + var yearStr = ""
603 if let workExperience = self?.calculateWorkExperience(fromDateString: textStr){ 613 if let workExperience = self?.calculateWorkExperience(fromDateString: textStr){
604 - yearStr = "\(workExperience)年经验" 614 + yearStr = "\(textStr)(\(workExperience)年经验)"
605 }else{ 615 }else{
606 - yearStr = "请选择" 616 + yearStr = textStr
607 } 617 }
  618 + yearStr = textStr
608 }else{ 619 }else{
609 yearStr = "请选择" 620 yearStr = "请选择"
610 } 621 }
611 622
612 -  
613 self?.canjiaRightTitleLabel.text = yearStr 623 self?.canjiaRightTitleLabel.text = yearStr
614 self?.canjiaRightTitleLabel.textColor = HexColor("#333333") 624 self?.canjiaRightTitleLabel.textColor = HexColor("#333333")
615 625
metaCode/Classes/Main/HomePage/View/DigitalAuthViews/DigitalResume/CNLiveDigitalResumeCell.swift
@@ -822,7 +822,15 @@ class CNLiveDigitalResumeCell: UITableViewCell { @@ -822,7 +822,15 @@ class CNLiveDigitalResumeCell: UITableViewCell {
822 self.weizhiTitleLabel.text = ""//" | 位置未授权" 822 self.weizhiTitleLabel.text = ""//" | 位置未授权"
823 } 823 }
824 if model.vitae?.workTime.count ?? 0 > 0{ 824 if model.vitae?.workTime.count ?? 0 > 0{
825 - self.workTitleLabel.text = model.vitae!.workTime 825 + var yearStr = ""
  826 + if let workExperience = self.calculateWorkExperience(fromDateString: model.vitae!.workTime){
  827 + yearStr = "\(workExperience)年经验"
  828 + }else{
  829 + yearStr = ""
  830 + }
  831 +
  832 + self.workTitleLabel.text = yearStr//model.vitae!.workTime
  833 +
826 }else{ 834 }else{
827 self.workTitleLabel.text = "参加工作时间未设置 >" 835 self.workTitleLabel.text = "参加工作时间未设置 >"
828 } 836 }
@@ -836,4 +844,32 @@ class CNLiveDigitalResumeCell: UITableViewCell { @@ -836,4 +844,32 @@ class CNLiveDigitalResumeCell: UITableViewCell {
836 self.gongzuoDetailNumberTitleLabel.text = "\(model.works.count)" 844 self.gongzuoDetailNumberTitleLabel.text = "\(model.works.count)"
837 self.huojiangDetailNumberTitleLabel.text = "\(model.awards.count)" 845 self.huojiangDetailNumberTitleLabel.text = "\(model.awards.count)"
838 } 846 }
  847 +
  848 + //计算工作年限
  849 + func calculateWorkExperience(fromDateString: String) -> Int? {
  850 + let formatter = DateFormatter()
  851 + formatter.dateFormat = "yyyy-MM-dd"
  852 + formatter.timeZone = TimeZone(abbreviation: "UTC")! // 确保时区一致,或者根据需要调整
  853 +
  854 + guard let startDate = formatter.date(from: fromDateString) else {
  855 + return nil
  856 + }
  857 +
  858 + let calendar = Calendar.current
  859 + let currentDate = Date()
  860 +
  861 + // 计算年份差,这里我们不需要精确的月份和日期,所以只需要年份组件
  862 + let components = calendar.dateComponents([.year], from: startDate, to: currentDate)
  863 + guard let yearDifference = components.year else {
  864 + return nil
  865 + }
  866 +
  867 + // 如果需要,可以对年份差进行四舍五入(但在这个场景下,由于我们只计算整年,所以四舍五入可能不是必需的)
  868 + // 但为了完整性,我还是展示了如何四舍五入到最近的整数
  869 + let roundedYearDifference = round(Double(yearDifference))
  870 +
  871 + // 返回工作经验年数(已经是整数了,因为round函数的结果会被隐式转换为Int)
  872 + return Int(roundedYearDifference)
  873 + }
  874 +
839 } 875 }