Commit 4b8edcdf authored by Steven杜宇's avatar Steven杜宇

// 解决活动内容显示不全的问题,以及取消报名接口调用失败的问题

parent 2f7ab0a5
......@@ -7,16 +7,19 @@
//
import UIKit
import SmartCodable
class YHActivityDetailModel: YHActivityModel {
// var cover : String = "" //活动封面
// var name : String = "" //活动标题
// var tag : Int = 0 //活动标签枚举 1:V专享
// var beginTime : String = "" //开始时间戳
// var endTime : String = "" //结束时间戳
// var place : String = "" //活动地点
// var id : Int = 0 //活动ID
// var status : String = "" //活动的状态 1:立即报名 2:已报名 3:活动结束 4:已取消报名
class YHActivityDetailModel: SmartCodable {
var id: Int = 0 // 活动ID
var tag: Int = 0 // 活动标签枚举 1:V专享
var name: String = "" // 活动标题
var cover: String = "" // 活动封面
var beginTime: String = "" // 开始时间戳
var endTime: String = "" // 结束时间戳
var place: String = "" // 活动地点
var status: String = "" // 活动的状态 1:立即报名 2:已报名 3:活动结束 4:已取消报名 5:已下架
var checkId: String = "" // 活动行程ID 仅当活动状态为2(已报名)时才大于0
var tips: String = "" // 温馨提示
var guidance: String = "" // 交通引导
......@@ -37,4 +40,57 @@ class YHActivityDetailModel: YHActivityModel {
coverItems.append(item)
}
}
required init() {
}
private var beginTimeForUI: String = ""
func getDateString(format: String = "MM/dd") -> String {
if beginTimeForUI.isEmpty {
if let tttt = beginTime.double() {
// 1.
// 将时间戳转换为Date对象
let date = Date(timeIntervalSince1970: TimeInterval(tttt))
// 创建一个DateFormatter实例
let dateFormatter = DateFormatter()
// 设置日期格式,这里设置为"年-月-日 时:分:秒"
dateFormatter.dateFormat = format // HH:mm:ss
// 使用DateFormatter将Date对象转换为字符串
let dateString = dateFormatter.string(from: date)
dateFormatter.dateFormat = "HH:mm"
let titmeString = dateFormatter.string(from: date)
// 获取Calendar的当前实例
let calendar = Calendar.current
// 使用Calendar来获取星期几
let weekday = calendar.component(.weekday, from: date)
// 星期几的名称,根据weekday的值,1到7分别代表周一到周日
if weekday > 0 && weekday < 8 {
let weekdayName = ["周日", "周一", "周二", "周三", "周四", "周五", "周六"][weekday - 1]
if let tttt = endTime.double() {
// 将时间戳转换为Date对象
let date2 = Date(timeIntervalSince1970: TimeInterval(tttt))
let titmeString2 = dateFormatter.string(from: date2)
if titmeString.contains(titmeString2) {
beginTimeForUI = dateString + " " + weekdayName + " " + titmeString
} else {
beginTimeForUI = dateString + " " + weekdayName + " " + titmeString + "-" + titmeString2
}
}
}
}
}
return beginTimeForUI
}
}
......@@ -18,10 +18,74 @@ class YHActivityApplyInfoModel: SmartCodable {
}
}
class YHActivityTravelModel: YHActivityModel {
class YHActivityTravelModel: SmartCodable {
var id: Int = 0 // 活动ID
var tag: Int = 0 // 活动标签枚举 1:V专享
var name: String = "" // 活动标题
var cover: String = "" // 活动封面
var beginTime: String = "" // 开始时间戳
var endTime: String = "" // 结束时间戳
var place: String = "" // 活动地点
var status: String = "" // 活动的状态 1:立即报名 2:已报名 3:活动结束 4:已取消报名 5:已下架
var checkId: String = "" // 活动行程ID 仅当活动状态为2(已报名)时才大于0
var statusCn: String = "" // 行程状态
var user: YHActivityApplyInfoModel?
var tips: String = "" // 温馨提示
var guidance: String = "" // 交通引导
required init() {
}
private var beginTimeForUI: String = ""
func getDateString(format: String = "MM/dd") -> String {
if beginTimeForUI.isEmpty {
if let tttt = beginTime.double() {
// 1.
// 将时间戳转换为Date对象
let date = Date(timeIntervalSince1970: TimeInterval(tttt))
// 创建一个DateFormatter实例
let dateFormatter = DateFormatter()
// 设置日期格式,这里设置为"年-月-日 时:分:秒"
dateFormatter.dateFormat = format // HH:mm:ss
// 使用DateFormatter将Date对象转换为字符串
let dateString = dateFormatter.string(from: date)
dateFormatter.dateFormat = "HH:mm"
let titmeString = dateFormatter.string(from: date)
// 获取Calendar的当前实例
let calendar = Calendar.current
// 使用Calendar来获取星期几
let weekday = calendar.component(.weekday, from: date)
// 星期几的名称,根据weekday的值,1到7分别代表周一到周日
if weekday > 0 && weekday < 8 {
let weekdayName = ["周日", "周一", "周二", "周三", "周四", "周五", "周六"][weekday - 1]
if let tttt = endTime.double() {
// 将时间戳转换为Date对象
let date2 = Date(timeIntervalSince1970: TimeInterval(tttt))
let titmeString2 = dateFormatter.string(from: date2)
if titmeString.contains(titmeString2) {
beginTimeForUI = dateString + " " + weekdayName + " " + titmeString
} else {
beginTimeForUI = dateString + " " + weekdayName + " " + titmeString + "-" + titmeString2
}
}
}
}
}
return beginTimeForUI
}
}
......@@ -7,8 +7,8 @@
//
import UIKit
class YHActivityCoverItem {
import SmartCodable
class YHActivityCoverItem: SmartCodable {
var url: String = ""
let width: CGFloat = KScreenWidth-40.0
var height: CGFloat = KScreenWidth-40.0
......@@ -18,6 +18,9 @@ class YHActivityCoverItem {
view.clipsToBounds = true
return view
}()
required init() {
}
}
class YHActivityDetailCell1: UITableViewCell {
......
......@@ -60,20 +60,13 @@ extension YHActivityViewModel {
// 1. json字符串 转 对象
if json.code == 200 {
guard let dic = json.data?.peel as? [String: Any], let result = YHActivityTravelModel.deserialize(from: dic) else {
self.activityTravelModel = nil
callBackBlock(false, nil)
return
}
self.activityTravelModel = result
callBackBlock(true, nil)
} else {
// self.activityTravelModel = nil
let error: YHErrorModel = YHErrorModel(errorCode: Int32(json.code), errorMsg: json.msg)
callBackBlock(false, error)
}
} failBlock: { err in
// self.activityTravelModel = nil
callBackBlock(false, err)
}
}
......
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