Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
galaxy-iOS
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
mobile-group
galaxy-iOS
Commits
1d2fad62
Commit
1d2fad62
authored
Jun 25, 2024
by
David黄金龙
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
完成 活动列表的展示
parent
29d18c60
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
140 additions
and
55 deletions
+140
-55
YHActivityListViewController.swift
...ity(社区)/Activity(活动)/C/YHActivityListViewController.swift
+66
-20
YHActivityModel.swift
...odules/Community(社区)/Activity(活动)/M/YHActivityModel.swift
+8
-11
YHActivityListCell.swift
...les/Community(社区)/Activity(活动)/V/YHActivityListCell.swift
+44
-2
YHActivityViewModel.swift
...s/Community(社区)/Activity(活动)/VM/YHActivityViewModel.swift
+6
-6
YHHomePageViewController.swift
...Classes/Modules/Home(首页)/C/YHHomePageViewController.swift
+2
-2
YHHomePageViewModel.swift
...axy/Classes/Modules/Home(首页)/VM/YHHomePageViewModel.swift
+8
-8
YHMyLikeViewModel.swift
...lasses/Modules/Mine(我的)/ViewModel/YHMyLikeViewModel.swift
+6
-6
No files found.
galaxy/galaxy/Classes/Modules/Community(社区)/Activity(活动)/C/YHActivityListViewController.swift
View file @
1d2fad62
...
...
@@ -9,6 +9,51 @@
import
UIKit
import
JXSegmentedView
enum
YHActivityStatus
:
Int
{
//活动的状态 1:立即报名 2:已报名 3:活动结束 4:已取消报名
case
unknow
=
0
// 未知
case
notApply
=
1
// 立即报名
case
applied
=
2
// 已报名
case
end
=
3
// 活动结束
case
canceled
=
4
// 已取消报名
var
activityTitle
:
String
{
switch
self
{
case
.
notApply
:
return
"立即报名"
case
.
applied
:
return
"已报名"
case
.
end
:
return
"活动结束"
case
.
canceled
:
return
"已取消报名"
default
:
return
""
}
}
var
activityColor
:
UIColor
{
switch
self
{
case
.
notApply
:
return
UIColor
.
brandMainColor
case
.
applied
:
return
UIColor
.
successColor
case
.
end
:
return
UIColor
.
mainTextColor30
case
.
canceled
:
return
UIColor
.
brandMainColor
default
:
return
UIColor
.
clear
}
}
}
/*
活动列表 或 我的报名活动
*/
...
...
@@ -80,35 +125,30 @@ class YHActivityListViewController: YHBaseViewController {
self
.
loadMoreData
()
}
emptyDataTipsView
.
isHidden
=
viewModel
.
arrActivityListData
.
count
>
0
?
true
:
false
loadFirstData
()
}
}
extension
YHActivityListViewController
{
func
loadMoreData
()
{
// DispatchQueue.global().async {
// self.viewModel.getHomeNewsList(firstPageFlag : false) {[weak self] success, error in
// guard let self = self else { return }
// DispatchQueue.main.asyncAfter(wallDeadline: .now() + 0.35, execute: {
// CATransaction.setDisableActions(true)
// self.homeCollectView.reloadData()
// CATransaction.commit()
//
// self.homeCollectView.es.stopLoadingMore()
// if self.viewModel.hasMoreForHomeNews == false {
// self.homeCollectView.es.noticeNoMoreData()
// self.homeCollectView.footer?.alpha = 1
// }
// })
// }
// }
DispatchQueue
.
main
.
asyncAfter
(
deadline
:
.
now
()
+
0.5
,
execute
:
{
self
.
tableView
.
es
.
stopLoadingMore
()
})
self
.
viewModel
.
getActivityList
(
firstFlag
:
false
)
{[
weak
self
]
success
,
error
in
guard
let
self
=
self
else
{
return
}
DispatchQueue
.
main
.
asyncAfter
(
wallDeadline
:
.
now
()
+
0.35
,
execute
:
{
self
.
tableView
.
es
.
stopLoadingMore
()
if
self
.
viewModel
.
hasMoreForActivityList
==
false
{
self
.
tableView
.
es
.
noticeNoMoreData
()
self
.
tableView
.
footer
?
.
alpha
=
1
}
self
.
tableView
.
reloadData
()
self
.
emptyDataTipsView
.
isHidden
=
self
.
viewModel
.
arrActivityListData
.
count
>
0
?
true
:
false
})
}
}
func
loadFirstData
()
{
self
.
viewModel
.
getActivityList
(
first
Page
Flag
:
true
)
{[
weak
self
]
success
,
error
in
self
.
viewModel
.
getActivityList
(
firstFlag
:
true
)
{[
weak
self
]
success
,
error
in
guard
let
self
=
self
else
{
return
}
DispatchQueue
.
main
.
asyncAfter
(
deadline
:
.
now
()
+
0.5
,
execute
:
{
...
...
@@ -144,6 +184,9 @@ extension YHActivityListViewController: UITableViewDelegate, UITableViewDataSour
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHActivityListCell
.
cellReuseIdentifier
,
for
:
indexPath
)
as!
YHActivityListCell
cell
.
sessionIndex
=
indexPath
.
section
if
indexPath
.
section
<
viewModel
.
arrActivityListData
.
count
{
cell
.
dataModel
=
viewModel
.
arrActivityListData
[
indexPath
.
section
]
}
return
cell
}
...
...
@@ -152,6 +195,9 @@ extension YHActivityListViewController: UITableViewDelegate, UITableViewDataSour
}
func
tableView
(
_
tableView
:
UITableView
,
didSelectRowAt
indexPath
:
IndexPath
)
{
let
vc
=
YHActivityDetailViewController
()
navigationController
?
.
pushViewController
(
vc
)
}
...
...
galaxy/galaxy/Classes/Modules/Community(社区)/Activity(活动)/M/YHActivityModel.swift
View file @
1d2fad62
...
...
@@ -9,15 +9,12 @@
import
UIKit
class
YHActivityModel
:
YHBaseModel
{
var
id
:
Int
=
0
var
tag
:
Int
=
0
var
name
:
String
=
""
var
cover
:
String
=
""
var
beginTime
:
String
=
""
var
endTime
:
String
=
""
var
place
:
String
=
""
var
status
:
String
=
""
// required init() {
//
// }
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:已取消报名
}
galaxy/galaxy/Classes/Modules/Community(社区)/Activity(活动)/V/YHActivityListCell.swift
View file @
1d2fad62
...
...
@@ -12,6 +12,13 @@ class YHActivityListCell: UITableViewCell {
static
let
cellReuseIdentifier
=
"YHActivityListCell"
var
dataModel
:
YHActivityModel
?
{
didSet
{
updateUI
()
}
}
var
sessionIndex
:
Int
=
0
{
didSet
{
let
tmp
=
sessionIndex
%
3
...
...
@@ -32,6 +39,7 @@ class YHActivityListCell: UITableViewCell {
let
view
=
UIImageView
()
view
.
image
=
UIImage
(
named
:
"activity_vip_icon"
)
view
.
contentMode
=
.
scaleAspectFill
view
.
isHidden
=
true
return
view
}()
...
...
@@ -49,8 +57,6 @@ class YHActivityListCell: UITableViewCell {
lazy
var
activityImgV
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
contentMode
=
.
scaleAspectFill
// view.backgroundColor = .purple //for test hjl
// titleImageView.kf.setImage(with: url, placeholder: UIImage(named: "global_default_image"))
view
.
image
=
UIImage
(
named
:
"global_default_image"
)
return
view
}()
...
...
@@ -103,6 +109,42 @@ class YHActivityListCell: UITableViewCell {
}
extension
YHActivityListCell
{
func
updateUI
()
{
guard
let
model
=
dataModel
else
{
return
}
if
model
.
tag
==
1
{
vipImgV
.
isHidden
=
false
}
else
{
vipImgV
.
isHidden
=
true
}
nameLabel
.
text
=
model
.
name
if
let
url
=
URL
(
string
:
model
.
cover
)
{
activityImgV
.
kf
.
setImage
(
with
:
url
,
placeholder
:
UIImage
(
named
:
"global_default_image"
))
}
//
dateLabel
.
text
=
String
(
model
.
beginTime
)
//
detailLabel
.
text
=
model
.
place
if
let
status
=
Int
(
model
.
status
)
{
statusLabel
.
text
=
YHActivityStatus
.
init
(
rawValue
:
status
)?
.
activityTitle
statusLabel
.
textColor
=
YHActivityStatus
.
init
(
rawValue
:
status
)?
.
activityColor
}
else
{
statusLabel
.
text
=
""
}
}
func
setupUI
()
{
backgroundColor
=
.
clear
selectionStyle
=
.
none
...
...
galaxy/galaxy/Classes/Modules/Community(社区)/Activity(活动)/VM/YHActivityViewModel.swift
View file @
1d2fad62
...
...
@@ -17,7 +17,7 @@ class YHActivityViewModel: YHBaseViewModel {
var
hasMoreForActivityList
:
Bool
=
true
var
isRequestActivityListDataFlag
:
Bool
=
false
private
var
curPageIndex
:
Int
=
1
private
var
page_Size
:
Int
=
20
private
var
page_Size
:
Int
=
3
//for test hjl
private
var
totalCount
:
Int
=
0
var
arrActivityListData
:
[
YHActivityModel
]
=
[]
...
...
@@ -30,11 +30,11 @@ class YHActivityViewModel: YHBaseViewModel {
extension
YHActivityViewModel
{
/*
first
Page
Flag true - 首次 false - 更多
firstFlag true - 首次 false - 更多
*/
func
getActivityList
(
first
Page
Flag
:
Bool
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
func
getActivityList
(
firstFlag
:
Bool
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
if
first
Page
Flag
==
false
{
if
firstFlag
==
false
{
guard
hasMoreForActivityList
==
true
else
{
printLog
(
"无更多数据可请求"
)
return
...
...
@@ -51,7 +51,7 @@ extension YHActivityViewModel {
var
params
:
[
String
:
Any
]
=
[
"page"
:
curPageIndex
,
"page_size"
:
page_Size
]
if
first
Page
Flag
{
if
firstFlag
{
params
=
[
"page"
:
1
,
"page_size"
:
page_Size
]
}
else
{
...
...
@@ -76,7 +76,7 @@ extension YHActivityViewModel {
if
first
Page
Flag
{
if
firstFlag
{
self
.
totalCount
=
Int
(
result
.
total
)
??
0
self
.
arrActivityListData
=
result
.
data
curPageIndex
=
1
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/C/YHHomePageViewController.swift
View file @
1d2fad62
...
...
@@ -245,7 +245,7 @@ private extension YHHomePageViewController {
func
loadMoreData
()
{
DispatchQueue
.
global
()
.
async
{
self
.
viewModel
.
getHomeNewsList
(
first
Page
Flag
:
false
)
{[
weak
self
]
success
,
error
in
self
.
viewModel
.
getHomeNewsList
(
firstFlag
:
false
)
{[
weak
self
]
success
,
error
in
guard
let
self
=
self
else
{
return
}
DispatchQueue
.
main
.
asyncAfter
(
wallDeadline
:
.
now
()
+
0.35
,
execute
:
{
CATransaction
.
setDisableActions
(
true
)
...
...
@@ -263,7 +263,7 @@ private extension YHHomePageViewController {
}
func
loadFirstData
()
{
self
.
viewModel
.
getHomeNewsList
(
first
Page
Flag
:
true
)
{[
weak
self
]
success
,
error
in
self
.
viewModel
.
getHomeNewsList
(
firstFlag
:
true
)
{[
weak
self
]
success
,
error
in
guard
let
self
=
self
else
{
return
}
if
let
arrB
=
self
.
viewModel
.
arrHomeNewsData
,
arrB
.
count
>
0
{
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/VM/YHHomePageViewModel.swift
View file @
1d2fad62
...
...
@@ -104,11 +104,11 @@ extension YHHomePageViewModel {
}
/*
first
Page
Flag true - 首次 false - 更多
firstFlag true - 首次 false - 更多
*/
func
getHomeNewsList
(
first
Page
Flag
:
Bool
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
func
getHomeNewsList
(
firstFlag
:
Bool
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
if
first
Page
Flag
==
false
{
if
firstFlag
==
false
{
guard
hasMoreForHomeNews
==
true
else
{
printLog
(
"无更多数据可请求"
)
return
...
...
@@ -125,7 +125,7 @@ extension YHHomePageViewModel {
var
params
:
[
String
:
Any
]
=
[
"page"
:
curPageIndex
,
"page_size"
:
page_Size
]
if
first
Page
Flag
{
if
firstFlag
{
params
=
[
"page"
:
1
,
"page_size"
:
page_Size
]
}
else
{
...
...
@@ -151,7 +151,7 @@ extension YHHomePageViewModel {
item
.
calHeightParam
()
}
if
first
Page
Flag
{
if
firstFlag
{
self
.
totalCount
=
result
.
total
self
.
arrHomeNewsData
=
result
.
data
curPageIndex
=
1
...
...
@@ -264,11 +264,11 @@ extension YHHomePageViewModel {
}
}
func
getList
(
_
first
Page
Flag
:
Bool
,
_
classifyID
:
Int
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
func
getList
(
_
firstFlag
:
Bool
,
_
classifyID
:
Int
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
var
params
:
[
String
:
Any
]
=
[
"page"
:
curPageIndex
,
"page_size"
:
searchPageSize
,
"classify_id[0]"
:
classifyID
]
if
first
Page
Flag
{
if
firstFlag
{
params
=
[
"page"
:
1
,
"page_size"
:
searchPageSize
,
"classify_id[0]"
:
classifyID
]
...
...
@@ -292,7 +292,7 @@ extension YHHomePageViewModel {
item
.
calHeightParam
()
}
if
first
Page
Flag
{
if
firstFlag
{
self
.
curPageIndex
=
1
self
.
totalCount
=
result
.
total
self
.
arrHomeNewsData
=
result
.
data
...
...
galaxy/galaxy/Classes/Modules/Mine(我的)/ViewModel/YHMyLikeViewModel.swift
View file @
1d2fad62
...
...
@@ -19,11 +19,11 @@ class YHMyLikeViewModel: YHBaseViewModel {
extension
YHMyLikeViewModel
{
// 1点赞 2收藏
func
getList
(
_
first
Page
Flag
:
Bool
,
_
type
:
Int
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
func
getList
(
_
firstFlag
:
Bool
,
_
type
:
Int
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
var
params
:
[
String
:
Any
]
=
[
"page"
:
curPageIndex
,
"page_size"
:
page_Size
,
"operate_type"
:
type
]
if
first
Page
Flag
{
if
firstFlag
{
curPageIndex
=
1
params
=
[
"page"
:
curPageIndex
,
"page_size"
:
page_Size
,
...
...
@@ -49,7 +49,7 @@ extension YHMyLikeViewModel {
item
.
calHeightParam
()
}
if
first
Page
Flag
{
if
firstFlag
{
self
.
totalCount
=
result
.
total
self
.
arrHomeNewsData
=
result
.
data
}
else
{
...
...
@@ -77,10 +77,10 @@ extension YHMyLikeViewModel {
}
//最近浏览
func
getList
(
_
first
Page
Flag
:
Bool
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
func
getList
(
_
firstFlag
:
Bool
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
var
params
:
[
String
:
Any
]
=
[
"page"
:
curPageIndex
,
"page_size"
:
page_Size
]
if
first
Page
Flag
{
if
firstFlag
{
curPageIndex
=
1
params
=
[
"page"
:
curPageIndex
,
"page_size"
:
page_Size
]
...
...
@@ -104,7 +104,7 @@ extension YHMyLikeViewModel {
item
.
calHeightParam
()
}
if
first
Page
Flag
{
if
firstFlag
{
self
.
totalCount
=
result
.
total
self
.
arrHomeNewsData
=
result
.
data
}
else
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment