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
16ee2389
Commit
16ee2389
authored
Dec 31, 2024
by
Alex朱枝文
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
直播相关调整
parent
304aa007
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
81 additions
and
6 deletions
+81
-6
YHLivePlayerViewController.swift
.../LivestreamSales(直播销售)/C/YHLivePlayerViewController.swift
+2
-2
YHLiveStateViewController.swift
...s/LivestreamSales(直播销售)/C/YHLiveStateViewController.swift
+25
-0
YHIMHelper.swift
...ses/Modules/LivestreamSales(直播销售)/IM(环信)/YHIMHelper.swift
+27
-3
YHHuanXinUserModel.swift
.../Modules/LivestreamSales(直播销售)/M/YHHuanXinUserModel.swift
+1
-0
YHRecommendedAppointmentLiveView.swift
...treamSales(直播销售)/V/YHRecommendedAppointmentLiveView.swift
+26
-1
No files found.
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/C/YHLivePlayerViewController.swift
View file @
16ee2389
...
@@ -407,7 +407,7 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
...
@@ -407,7 +407,7 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
if
let
error
=
error
,
retryCount
<=
self
.
maxRetryCount
{
if
let
error
=
error
,
retryCount
<=
self
.
maxRetryCount
{
printLog
(
"joinChatRoom:
\(
error
)
"
)
printLog
(
"joinChatRoom:
\(
error
)
"
)
DispatchQueue
.
main
.
asyncAfter
(
deadline
:
.
now
()
+
TimeInterval
(
5
*
retryCount
))
{
DispatchQueue
.
main
.
asyncAfter
(
deadline
:
.
now
()
+
TimeInterval
(
5
*
retryCount
))
{
YHIMHelper
.
shared
.
r
egisterAndLoginCurrentUser
{
_
in
YHIMHelper
.
shared
.
newR
egisterAndLoginCurrentUser
{
_
in
joinRoom
(
retryCount
:
retryCount
+
1
)
joinRoom
(
retryCount
:
retryCount
+
1
)
}
}
}
}
...
@@ -418,7 +418,7 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
...
@@ -418,7 +418,7 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
}
}
if
!
YHIMHelper
.
shared
.
isCurrentUserLogin
{
if
!
YHIMHelper
.
shared
.
isCurrentUserLogin
{
YHIMHelper
.
shared
.
r
egisterAndLoginCurrentUser
{
_
in
YHIMHelper
.
shared
.
newR
egisterAndLoginCurrentUser
{
_
in
joinRoom
(
retryCount
:
0
)
joinRoom
(
retryCount
:
0
)
}
}
}
else
{
}
else
{
...
...
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/C/YHLiveStateViewController.swift
View file @
16ee2389
...
@@ -250,17 +250,32 @@ class YHLiveStateViewController: YHBaseViewController {
...
@@ -250,17 +250,32 @@ class YHLiveStateViewController: YHBaseViewController {
messageLabel
.
text
=
"预计
\(
liveDetail
.
start_time
)
开始~"
messageLabel
.
text
=
"预计
\(
liveDetail
.
start_time
)
开始~"
getCodeButton
.
isHidden
=
true
getCodeButton
.
isHidden
=
true
bottomView
.
isHidden
=
true
bottomView
.
isHidden
=
true
logImageView
.
snp
.
remakeConstraints
{
make
in
make
.
centerX
.
equalToSuperview
()
make
.
top
.
equalTo
(
240
)
make
.
width
.
height
.
equalTo
(
78
)
}
case
.
stop
:
case
.
stop
:
loginSubTitleLabel
.
text
=
"主播离开了"
loginSubTitleLabel
.
text
=
"主播离开了"
messageLabel
.
text
=
"主播暂时离开,请稍等片刻~"
messageLabel
.
text
=
"主播暂时离开,请稍等片刻~"
getCodeButton
.
isHidden
=
true
getCodeButton
.
isHidden
=
true
bottomView
.
isHidden
=
true
bottomView
.
isHidden
=
true
logImageView
.
snp
.
remakeConstraints
{
make
in
make
.
centerX
.
equalToSuperview
()
make
.
top
.
equalTo
(
240
)
make
.
width
.
height
.
equalTo
(
78
)
}
case
.
end
:
case
.
end
:
loginSubTitleLabel
.
text
=
"直播已结束"
loginSubTitleLabel
.
text
=
"直播已结束"
messageLabel
.
text
=
"直播已结束,去首页逛逛吧~"
messageLabel
.
text
=
"直播已结束,去首页逛逛吧~"
getCodeButton
.
isHidden
=
false
getCodeButton
.
isHidden
=
false
getRecommendLiveList
()
getRecommendLiveList
()
case
.
onLive
,
.
unknown
:
case
.
onLive
,
.
unknown
:
logImageView
.
snp
.
remakeConstraints
{
make
in
make
.
centerX
.
equalToSuperview
()
make
.
top
.
equalTo
(
240
)
make
.
width
.
height
.
equalTo
(
78
)
}
break
break
}
}
}
}
...
@@ -280,11 +295,21 @@ class YHLiveStateViewController: YHBaseViewController {
...
@@ -280,11 +295,21 @@ class YHLiveStateViewController: YHBaseViewController {
bottomView
.
isHidden
=
true
bottomView
.
isHidden
=
true
messageLabel
.
isHidden
=
false
messageLabel
.
isHidden
=
false
getCodeButton
.
isHidden
=
false
getCodeButton
.
isHidden
=
false
logImageView
.
snp
.
remakeConstraints
{
make
in
make
.
centerX
.
equalToSuperview
()
make
.
top
.
equalTo
(
240
)
make
.
width
.
height
.
equalTo
(
78
)
}
return
return
}
}
bottomView
.
isHidden
=
false
bottomView
.
isHidden
=
false
messageLabel
.
isHidden
=
true
messageLabel
.
isHidden
=
true
getCodeButton
.
isHidden
=
true
getCodeButton
.
isHidden
=
true
logImageView
.
snp
.
remakeConstraints
{
make
in
make
.
centerX
.
equalToSuperview
()
make
.
top
.
equalTo
(
140
)
make
.
width
.
height
.
equalTo
(
78
)
}
bottomView
.
subviews
.
forEach
{
view
in
bottomView
.
subviews
.
forEach
{
view
in
if
view
!=
self
.
recommendHeader
{
if
view
!=
self
.
recommendHeader
{
view
.
removeFromSuperview
()
view
.
removeFromSuperview
()
...
...
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/IM(环信)/YHIMHelper.swift
View file @
16ee2389
...
@@ -46,7 +46,8 @@ class YHIMHelper: NSObject {
...
@@ -46,7 +46,8 @@ class YHIMHelper: NSObject {
}
}
var
currentNickname
:
String
{
var
currentNickname
:
String
{
return
viewModel
.
huanXinUserInfoModel
?
.
nickname
??
""
return
viewModel
.
huanXinTokenModel
?
.
nickname
??
""
//return viewModel.huanXinUserInfoModel?.nickname ?? ""
}
}
static
let
shared
:
YHIMHelper
=
{
static
let
shared
:
YHIMHelper
=
{
...
@@ -62,7 +63,7 @@ class YHIMHelper: NSObject {
...
@@ -62,7 +63,7 @@ class YHIMHelper: NSObject {
super
.
init
()
super
.
init
()
initHelper
()
initHelper
()
setupNotification
()
setupNotification
()
r
egisterAndLoginCurrentUser
{
success
in
newR
egisterAndLoginCurrentUser
{
success
in
printLog
(
"registerAndLoginCurrentUser:
\(
success
)
"
)
printLog
(
"registerAndLoginCurrentUser:
\(
success
)
"
)
}
}
}
}
...
@@ -87,6 +88,7 @@ class YHIMHelper: NSObject {
...
@@ -87,6 +88,7 @@ class YHIMHelper: NSObject {
NotificationCenter
.
default
.
addObserver
(
self
,
selector
:
#selector(
logoutSuccess
)
,
name
:
YhConstant
.
YhNotification
.
didLogoutSuccessNotifiction
,
object
:
nil
)
NotificationCenter
.
default
.
addObserver
(
self
,
selector
:
#selector(
logoutSuccess
)
,
name
:
YhConstant
.
YhNotification
.
didLogoutSuccessNotifiction
,
object
:
nil
)
}
}
/*
func registerAndLoginCurrentUser(completion: @escaping (Bool) -> Void) {
func registerAndLoginCurrentUser(completion: @escaping (Bool) -> Void) {
guard let userId = YHLoginManager.shared.userModel?.id, userId.count > 0 else {
guard let userId = YHLoginManager.shared.userModel?.id, userId.count > 0 else {
completion(false)
completion(false)
...
@@ -116,9 +118,31 @@ class YHIMHelper: NSObject {
...
@@ -116,9 +118,31 @@ class YHIMHelper: NSObject {
}
}
}
}
}
}
*/
func
newRegisterAndLoginCurrentUser
(
completion
:
@escaping
(
Bool
)
->
Void
)
{
guard
let
userId
=
YHLoginManager
.
shared
.
userModel
?
.
id
,
userId
.
count
>
0
else
{
completion
(
false
)
return
}
viewModel
.
getHuanXinToken
{
[
weak
self
]
tokenModel
,
_
in
guard
let
tokenModel
=
tokenModel
else
{
completion
(
false
)
return
}
guard
let
self
=
self
else
{
completion
(
false
)
return
}
let
token
=
tokenModel
.
accessToken
self
.
loginEaseIM
(
name
:
"
\(
userId
)
"
,
token
:
token
)
{
success
in
completion
(
success
)
}
}
}
@objc
private
func
loginSuccess
()
{
@objc
private
func
loginSuccess
()
{
r
egisterAndLoginCurrentUser
{
_
in
newR
egisterAndLoginCurrentUser
{
_
in
//
//
}
}
}
}
...
...
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/M/YHHuanXinUserModel.swift
View file @
16ee2389
...
@@ -18,6 +18,7 @@ class YHHuanXinUserModel: SmartCodable {
...
@@ -18,6 +18,7 @@ class YHHuanXinUserModel: SmartCodable {
}
}
class
YHHuanXinTokenModel
:
SmartCodable
{
class
YHHuanXinTokenModel
:
SmartCodable
{
var
nickname
:
String
=
""
var
accessToken
:
String
=
""
var
accessToken
:
String
=
""
required
init
()
{
required
init
()
{
...
...
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/V/YHRecommendedAppointmentLiveView.swift
View file @
16ee2389
...
@@ -136,7 +136,12 @@ class YHRecommendedAppointmentLiveView: UIView {
...
@@ -136,7 +136,12 @@ class YHRecommendedAppointmentLiveView: UIView {
func
updateViews
(
liveTitle
:
String
,
fromTime
:
String
,
endTime
:
String
,
avatar
:
String
,
anchorName
:
String
,
isAppointmented
:
Bool
)
{
func
updateViews
(
liveTitle
:
String
,
fromTime
:
String
,
endTime
:
String
,
avatar
:
String
,
anchorName
:
String
,
isAppointmented
:
Bool
)
{
liveTitleLabel
.
text
=
liveTitle
liveTitleLabel
.
text
=
liveTitle
timeLabel
.
text
=
"直播时间:"
+
fromTime
+
"~"
+
endTime
var
timeStr
=
"直播时间:"
+
fromTime
if
!
fromTime
.
isEmpty
,
!
endTime
.
isEmpty
{
let
time
=
isSameDayAndGetShortEndTime
(
date1String
:
fromTime
,
date2String
:
endTime
)
timeStr
+=
"~"
+
time
}
timeLabel
.
text
=
timeStr
if
let
url
=
URL
(
string
:
avatar
)
{
if
let
url
=
URL
(
string
:
avatar
)
{
avatarImageView
.
kf
.
setImage
(
with
:
url
,
placeholder
:
UIImage
(
named
:
"global_default_image"
))
avatarImageView
.
kf
.
setImage
(
with
:
url
,
placeholder
:
UIImage
(
named
:
"global_default_image"
))
}
else
{
}
else
{
...
@@ -145,4 +150,24 @@ class YHRecommendedAppointmentLiveView: UIView {
...
@@ -145,4 +150,24 @@ class YHRecommendedAppointmentLiveView: UIView {
anchorLabel
.
text
=
anchorName
anchorLabel
.
text
=
anchorName
updateAppointmentButton
(
isAppointmented
:
isAppointmented
)
updateAppointmentButton
(
isAppointmented
:
isAppointmented
)
}
}
private
func
isSameDayAndGetShortEndTime
(
date1String
:
String
,
date2String
:
String
)
->
String
{
let
dateFormatter
=
DateFormatter
()
dateFormatter
.
dateFormat
=
"MM月dd日HH:mm"
let
date1
=
dateFormatter
.
date
(
from
:
date1String
)
let
date2
=
dateFormatter
.
date
(
from
:
date2String
)
guard
let
date1
=
date1
,
let
date2
=
date2
else
{
return
date2String
}
let
calendar
=
Calendar
.
current
let
components1
=
calendar
.
dateComponents
([
.
month
,
.
day
,
.
hour
,
.
minute
],
from
:
date1
)
let
components2
=
calendar
.
dateComponents
([
.
month
,
.
day
,
.
hour
,
.
minute
],
from
:
date2
)
if
components1
.
month
==
components2
.
month
&&
components1
.
day
==
components2
.
day
{
let
hour
=
components2
.
hour
??
0
let
minute
=
components2
.
minute
??
0
return
String
(
format
:
"%02d:%02d"
,
hour
,
minute
)
}
return
date2String
}
}
}
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