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
d771a41c
Commit
d771a41c
authored
Nov 27, 2024
by
Alex朱枝文
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
直播相关接口调试
parent
63ab92f3
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
189 additions
and
41 deletions
+189
-41
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+8
-0
YHBasePlayerViewController.swift
.../LivestreamSales(直播销售)/C/YHBasePlayerViewController.swift
+5
-5
YHLivePlayerViewController+Api.swift
...estreamSales(直播销售)/C/YHLivePlayerViewController+Api.swift
+2
-2
YHLivePlayerViewController.swift
.../LivestreamSales(直播销售)/C/YHLivePlayerViewController.swift
+18
-9
YHHuanXinUserModel.swift
.../Modules/LivestreamSales(直播销售)/M/YHHuanXinUserModel.swift
+25
-0
YHLiveDetailModel.swift
...s/Modules/LivestreamSales(直播销售)/M/YHLiveDetailModel.swift
+1
-11
YHRecordedDetailModel.swift
...dules/LivestreamSales(直播销售)/M/YHRecordedDetailModel.swift
+44
-0
YHPlayerTopBarView.swift
.../Modules/LivestreamSales(直播销售)/V/YHPlayerTopBarView.swift
+14
-0
YHLiveSalesViewModel.swift
...dules/LivestreamSales(直播销售)/VM/YHLiveSalesViewModel.swift
+68
-12
YHAllApiName.swift
galaxy/galaxy/Classes/Tools/NetWork/YHAllApiName.swift
+4
-2
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
d771a41c
...
@@ -304,6 +304,8 @@
...
@@ -304,6 +304,8 @@
04564D682CF6BFA0004456E4
/* YHLiveSalesViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04564D672CF6BFA0004456E4
/* YHLiveSalesViewModel.swift */
;
};
04564D682CF6BFA0004456E4
/* YHLiveSalesViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04564D672CF6BFA0004456E4
/* YHLiveSalesViewModel.swift */
;
};
04564D6A2CF6C0FC004456E4
/* YHLiveDetailModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04564D692CF6C0FC004456E4
/* YHLiveDetailModel.swift */
;
};
04564D6A2CF6C0FC004456E4
/* YHLiveDetailModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04564D692CF6C0FC004456E4
/* YHLiveDetailModel.swift */
;
};
04564D6C2CF6C414004456E4
/* YHLivePlayerViewController+Api.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04564D6B2CF6C414004456E4
/* YHLivePlayerViewController+Api.swift */
;
};
04564D6C2CF6C414004456E4
/* YHLivePlayerViewController+Api.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04564D6B2CF6C414004456E4
/* YHLivePlayerViewController+Api.swift */
;
};
04564D6E2CF6EB3D004456E4
/* YHHuanXinUserModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04564D6D2CF6EB3D004456E4
/* YHHuanXinUserModel.swift */
;
};
04564D702CF6EC8A004456E4
/* YHRecordedDetailModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04564D6F2CF6EC8A004456E4
/* YHRecordedDetailModel.swift */
;
};
0457920B2CBCE7B200EBD99B
/* YHResignUploadTravelCardViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0457920A2CBCE7B200EBD99B
/* YHResignUploadTravelCardViewModel.swift */
;
};
0457920B2CBCE7B200EBD99B
/* YHResignUploadTravelCardViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0457920A2CBCE7B200EBD99B
/* YHResignUploadTravelCardViewModel.swift */
;
};
0457920D2CBCE8A800EBD99B
/* YHResignUploadTravelCardListModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0457920C2CBCE8A800EBD99B
/* YHResignUploadTravelCardListModel.swift */
;
};
0457920D2CBCE8A800EBD99B
/* YHResignUploadTravelCardListModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0457920C2CBCE8A800EBD99B
/* YHResignUploadTravelCardListModel.swift */
;
};
0457920F2CBCE9D000EBD99B
/* YHResignUploadTravelCardListTableViewCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0457920E2CBCE9D000EBD99B
/* YHResignUploadTravelCardListTableViewCell.swift */
;
};
0457920F2CBCE9D000EBD99B
/* YHResignUploadTravelCardListTableViewCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0457920E2CBCE9D000EBD99B
/* YHResignUploadTravelCardListTableViewCell.swift */
;
};
...
@@ -1360,6 +1362,8 @@
...
@@ -1360,6 +1362,8 @@
04564D672CF6BFA0004456E4
/* YHLiveSalesViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHLiveSalesViewModel.swift
;
sourceTree
=
"<group>"
;
};
04564D672CF6BFA0004456E4
/* YHLiveSalesViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHLiveSalesViewModel.swift
;
sourceTree
=
"<group>"
;
};
04564D692CF6C0FC004456E4
/* YHLiveDetailModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHLiveDetailModel.swift
;
sourceTree
=
"<group>"
;
};
04564D692CF6C0FC004456E4
/* YHLiveDetailModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHLiveDetailModel.swift
;
sourceTree
=
"<group>"
;
};
04564D6B2CF6C414004456E4
/* YHLivePlayerViewController+Api.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
"YHLivePlayerViewController+Api.swift"
;
sourceTree
=
"<group>"
;
};
04564D6B2CF6C414004456E4
/* YHLivePlayerViewController+Api.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
"YHLivePlayerViewController+Api.swift"
;
sourceTree
=
"<group>"
;
};
04564D6D2CF6EB3D004456E4
/* YHHuanXinUserModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHuanXinUserModel.swift
;
sourceTree
=
"<group>"
;
};
04564D6F2CF6EC8A004456E4
/* YHRecordedDetailModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHRecordedDetailModel.swift
;
sourceTree
=
"<group>"
;
};
0457920A2CBCE7B200EBD99B
/* YHResignUploadTravelCardViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignUploadTravelCardViewModel.swift
;
sourceTree
=
"<group>"
;
};
0457920A2CBCE7B200EBD99B
/* YHResignUploadTravelCardViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignUploadTravelCardViewModel.swift
;
sourceTree
=
"<group>"
;
};
0457920C2CBCE8A800EBD99B
/* YHResignUploadTravelCardListModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignUploadTravelCardListModel.swift
;
sourceTree
=
"<group>"
;
};
0457920C2CBCE8A800EBD99B
/* YHResignUploadTravelCardListModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignUploadTravelCardListModel.swift
;
sourceTree
=
"<group>"
;
};
0457920E2CBCE9D000EBD99B
/* YHResignUploadTravelCardListTableViewCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignUploadTravelCardListTableViewCell.swift
;
sourceTree
=
"<group>"
;
};
0457920E2CBCE9D000EBD99B
/* YHResignUploadTravelCardListTableViewCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignUploadTravelCardListTableViewCell.swift
;
sourceTree
=
"<group>"
;
};
...
@@ -2970,6 +2974,8 @@
...
@@ -2970,6 +2974,8 @@
children
=
(
children
=
(
04564D442CF3812F004456E4
/* YHMediaProtocolUtils.swift */
,
04564D442CF3812F004456E4
/* YHMediaProtocolUtils.swift */
,
04564D692CF6C0FC004456E4
/* YHLiveDetailModel.swift */
,
04564D692CF6C0FC004456E4
/* YHLiveDetailModel.swift */
,
04564D6D2CF6EB3D004456E4
/* YHHuanXinUserModel.swift */
,
04564D6F2CF6EC8A004456E4
/* YHRecordedDetailModel.swift */
,
);
);
path
=
M
;
path
=
M
;
sourceTree
=
"<group>"
;
sourceTree
=
"<group>"
;
...
@@ -6262,6 +6268,7 @@
...
@@ -6262,6 +6268,7 @@
A5ACE9472B4564F7002C94D2
/* YHHUD.swift in Sources */
,
A5ACE9472B4564F7002C94D2
/* YHHUD.swift in Sources */
,
045A08C02C37ABF500BCBABA
/* YHSegmentView.swift in Sources */
,
045A08C02C37ABF500BCBABA
/* YHSegmentView.swift in Sources */
,
04564D532CF38FE2004456E4
/* YHVODPlayerViewController.swift in Sources */
,
04564D532CF38FE2004456E4
/* YHVODPlayerViewController.swift in Sources */
,
04564D702CF6EC8A004456E4
/* YHRecordedDetailModel.swift in Sources */
,
A5ACE9412B4564F7002C94D2
/* Dictionary+Extension.swift in Sources */
,
A5ACE9412B4564F7002C94D2
/* Dictionary+Extension.swift in Sources */
,
047AA3EA2C4A6FB7009C4554
/* YHDetailViewController.swift in Sources */
,
047AA3EA2C4A6FB7009C4554
/* YHDetailViewController.swift in Sources */
,
045EEE8F2B9F171A0022A143
/* YHPreviewInfoProjectItemView.swift in Sources */
,
045EEE8F2B9F171A0022A143
/* YHPreviewInfoProjectItemView.swift in Sources */
,
...
@@ -6346,6 +6353,7 @@
...
@@ -6346,6 +6353,7 @@
045EEF1E2B9F171A0022A143
/* YHBottomNextView.swift in Sources */
,
045EEF1E2B9F171A0022A143
/* YHBottomNextView.swift in Sources */
,
A567E59E2BD7643D00D5D5A0
/* YHHomePageViewController.swift in Sources */
,
A567E59E2BD7643D00D5D5A0
/* YHHomePageViewController.swift in Sources */
,
0430E6502C73376A000511E2
/* YHAdopterIncomeTitleTableViewCell.swift in Sources */
,
0430E6502C73376A000511E2
/* YHAdopterIncomeTitleTableViewCell.swift in Sources */
,
04564D6E2CF6EB3D004456E4
/* YHHuanXinUserModel.swift in Sources */
,
044F39222CB50B34007CA277
/* YHResignDocumentUploadFileCell.swift in Sources */
,
044F39222CB50B34007CA277
/* YHResignDocumentUploadFileCell.swift in Sources */
,
0485DFD82C66036600B50293
/* YHPrincipleFileRenameView.swift in Sources */
,
0485DFD82C66036600B50293
/* YHPrincipleFileRenameView.swift in Sources */
,
045EEEBA2B9F171A0022A143
/* YHWorkResponsibilitiesTableViewCell.swift in Sources */
,
045EEEBA2B9F171A0022A143
/* YHWorkResponsibilitiesTableViewCell.swift in Sources */
,
...
...
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/C/YHBasePlayerViewController.swift
View file @
d771a41c
...
@@ -43,7 +43,7 @@ class YHBasePlayerViewController: YHBaseViewController {
...
@@ -43,7 +43,7 @@ class YHBasePlayerViewController: YHBaseViewController {
return
view
return
view
}()
}()
private
lazy
var
topBarView
:
YHPlayerTopBarView
=
{
lazy
var
topBarView
:
YHPlayerTopBarView
=
{
let
view
=
YHPlayerTopBarView
(
frame
:
CGRect
.
init
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
k_Height_NavigationtBarAndStatuBar
))
let
view
=
YHPlayerTopBarView
(
frame
:
CGRect
.
init
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
k_Height_NavigationtBarAndStatuBar
))
return
view
return
view
}()
}()
...
@@ -64,7 +64,7 @@ class YHBasePlayerViewController: YHBaseViewController {
...
@@ -64,7 +64,7 @@ class YHBasePlayerViewController: YHBaseViewController {
view
.
backgroundColor
=
.
black
view
.
backgroundColor
=
.
black
view
.
addSubview
(
containerView
)
view
.
addSubview
(
containerView
)
containerView
.
addSubview
(
bgIcon
)
//
containerView.addSubview(bgIcon)
containerView
.
addSubview
(
playerView
)
containerView
.
addSubview
(
playerView
)
containerView
.
addSubview
(
topBarView
)
containerView
.
addSubview
(
topBarView
)
...
@@ -76,9 +76,9 @@ class YHBasePlayerViewController: YHBaseViewController {
...
@@ -76,9 +76,9 @@ class YHBasePlayerViewController: YHBaseViewController {
make
.
edges
.
equalToSuperview
()
make
.
edges
.
equalToSuperview
()
}
}
bgIcon
.
snp
.
makeConstraints
{
make
in
//
bgIcon.snp.makeConstraints { make in
make
.
edges
.
equalToSuperview
()
//
make.edges.equalToSuperview()
}
//
}
playerView
.
snp
.
makeConstraints
{
make
in
playerView
.
snp
.
makeConstraints
{
make
in
make
.
edges
.
equalToSuperview
()
make
.
edges
.
equalToSuperview
()
...
...
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/C/YHLivePlayerViewController+Api.swift
View file @
d771a41c
...
@@ -10,9 +10,9 @@ import Foundation
...
@@ -10,9 +10,9 @@ import Foundation
extension
YHLivePlayerViewController
{
extension
YHLivePlayerViewController
{
func
requestData
(
id
:
Int
)
{
func
requestData
(
id
:
Int
,
callback
:
@escaping
(
_
liveDetail
:
YHLiveDetailModel
?,
_
error
:
YHErrorModel
?)
->
Void
)
{
viewModel
.
getLiveDetail
(
id
:
id
)
{
liveDetail
,
error
in
viewModel
.
getLiveDetail
(
id
:
id
)
{
liveDetail
,
error
in
//
callback
(
liveDetail
,
error
)
}
}
}
}
}
}
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/C/YHLivePlayerViewController.swift
View file @
d771a41c
...
@@ -11,7 +11,7 @@ import UIKit
...
@@ -11,7 +11,7 @@ import UIKit
class
YHLivePlayerViewController
:
YHBasePlayerViewController
{
class
YHLivePlayerViewController
:
YHBasePlayerViewController
{
// MARK: - Properties
// MARK: - Properties
private
var
roomInfo
:
YHLiveRoomInfo
//
private var roomInfo: YHLiveRoomInfo
private
var
listMaxWidth
:
CGFloat
{
private
var
listMaxWidth
:
CGFloat
{
return
KScreenWidth
*
248.0
/
375.0
return
KScreenWidth
*
248.0
/
375.0
...
@@ -47,8 +47,9 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
...
@@ -47,8 +47,9 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
let
viewModel
=
YHLiveSalesViewModel
()
let
viewModel
=
YHLiveSalesViewModel
()
// MARK: - Initialization
// MARK: - Initialization
init
(
roomInfo
:
YHLiveRoomInfo
)
{
private
let
liveId
:
Int
self
.
roomInfo
=
roomInfo
init
(
id
:
Int
)
{
self
.
liveId
=
id
super
.
init
(
nibName
:
nil
,
bundle
:
nil
)
super
.
init
(
nibName
:
nil
,
bundle
:
nil
)
}
}
...
@@ -60,8 +61,20 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
...
@@ -60,8 +61,20 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
override
func
viewDidLoad
()
{
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
super
.
viewDidLoad
()
setupUI
()
setupUI
()
startLive
()
requestData
(
id
:
liveId
)
{
[
weak
self
]
liveDetail
,
error
in
requestData
(
id
:
23
)
guard
let
self
=
self
else
{
return
}
guard
let
liveDetail
=
liveDetail
else
{
printLog
(
"YHLivePlayerViewController: 请求失败"
)
if
let
errorMsg
=
error
?
.
errorMsg
,
errorMsg
.
count
>
0
{
YHHUD
.
flash
(
message
:
errorMsg
)
}
return
}
self
.
topBarView
.
setupTopBarView
(
headUrl
:
liveDetail
.
avatar
,
nickname
:
liveDetail
.
hxNickname
,
count
:
liveDetail
.
access_num
)
self
.
play
(
with
:
liveDetail
.
pullUrl
)
}
}
}
// MARK: - Setup
// MARK: - Setup
...
@@ -82,10 +95,6 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
...
@@ -82,10 +95,6 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
}
}
}
}
private
func
startLive
()
{
play
(
with
:
roomInfo
.
streamUrl
)
}
// MARK: - Player Control
// MARK: - Player Control
private
func
play
(
with
url
:
String
)
{
private
func
play
(
with
url
:
String
)
{
let
mediaSource
=
AgoraMediaSource
()
let
mediaSource
=
AgoraMediaSource
()
...
...
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/M/YHHuanXinUserModel.swift
0 → 100644
View file @
d771a41c
//
// YHHuanXinUserModel.swift
// galaxy
//
// Created by alexzzw on 2024/11/27.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
Foundation
import
SmartCodable
class
YHHuanXinUserModel
:
SmartCodable
{
var
nickname
:
String
=
""
var
avatarurl
:
String
=
""
required
init
()
{
}
}
class
YHHuanXinTokenModel
:
SmartCodable
{
var
accessToken
:
String
=
""
required
init
()
{
}
}
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/M/YHLiveDetailModel.swift
View file @
d771a41c
...
@@ -20,9 +20,8 @@ class YHLiveDetailModel: SmartCodable {
...
@@ -20,9 +20,8 @@ class YHLiveDetailModel: SmartCodable {
var
roomId
:
String
=
""
var
roomId
:
String
=
""
var
pullUrl
:
String
=
""
var
pullUrl
:
String
=
""
var
goods
:
[
YHLiveGoodsItem
]
=
[]
var
goods
:
[
YHLiveGoodsItem
]
=
[]
required
init
()
{
required
init
()
{
}
}
}
}
...
@@ -35,16 +34,7 @@ class YHLiveGoodsItem: SmartCodable {
...
@@ -35,16 +34,7 @@ class YHLiveGoodsItem: SmartCodable {
var
linePrice
:
String
=
""
var
linePrice
:
String
=
""
var
sn
:
String
=
""
var
sn
:
String
=
""
var
banner
:
String
=
""
var
banner
:
String
=
""
required
init
()
{
}
}
class
YHXuanXinUserModel
:
SmartCodable
{
var
nickname
:
String
=
""
var
avatarurl
:
String
=
""
required
init
()
{
required
init
()
{
}
}
}
}
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/M/YHRecordedDetailModel.swift
0 → 100644
View file @
d771a41c
//
// YHRecordedDetailModel.swift
// galaxy
//
// Created by alexzzw on 2024/11/27.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
Foundation
import
SmartCodable
class
YHRecordedDetailModel
:
SmartCodable
{
var
account
:
String
=
""
var
avatar
:
String
=
""
var
access_num
:
Int
=
0
var
tips
:
String
=
""
var
subject
:
String
=
""
var
recorded_url
:
String
=
""
var
recorded_cover
:
String
=
""
var
goods
:
[
YHLiveGoodsItem
]
=
[]
var
recordedVideoCate
:
[
YHRecordedVideoCategoryItem
]
=
[]
var
recordedVideoSlice
:
[
YHRecordedVideoSliceItem
]
=
[]
required
init
()
{
}
}
class
YHRecordedVideoCategoryItem
:
SmartCodable
{
var
id
:
Int
=
0
var
name
:
String
=
""
required
init
()
{
}
}
class
YHRecordedVideoSliceItem
:
SmartCodable
{
var
startSecond
:
String
=
""
var
endSecond
:
String
=
""
var
tag
:
String
=
""
var
index
:
Int
=
0
required
init
()
{
}
}
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/V/YHPlayerTopBarView.swift
View file @
d771a41c
...
@@ -79,6 +79,20 @@ class YHPlayerTopBarView: UIView {
...
@@ -79,6 +79,20 @@ class YHPlayerTopBarView: UIView {
required
init
?(
coder
:
NSCoder
)
{
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
fatalError
(
"init(coder:) has not been implemented"
)
}
}
func
setupTopBarView
(
headUrl
:
String
,
nickname
:
String
,
count
:
Int
)
{
if
let
url
=
URL
(
string
:
headUrl
)
{
headPortrait
.
kf
.
setImage
(
with
:
url
,
placeholder
:
UIImage
(
named
:
"global_default_image"
))
}
else
{
headPortrait
.
image
=
UIImage
(
named
:
"global_default_image"
)
}
infoNameLabel
.
text
=
nickname
updateCountLabel
(
count
)
}
func
updateCountLabel
(
_
count
:
Int
)
{
infoCountLabel
.
text
=
"
\(
count
)
人来过"
}
}
}
extension
YHPlayerTopBarView
{
extension
YHPlayerTopBarView
{
...
...
galaxy/galaxy/Classes/Modules/LivestreamSales(直播销售)/VM/YHLiveSalesViewModel.swift
View file @
d771a41c
...
@@ -9,29 +9,30 @@
...
@@ -9,29 +9,30 @@
import
UIKit
import
UIKit
class
YHLiveSalesViewModel
:
YHBaseViewModel
{
class
YHLiveSalesViewModel
:
YHBaseViewModel
{
//直播间详情
//
直播间详情
var
liveDetailModel
:
YHLiveDetailModel
?
var
liveDetailModel
:
YHLiveDetailModel
?
// 录播详情
//注册环信用户信息
var
recordedDetailModel
:
YHRecordedDetailModel
?
var
huanXinUserInfoModel
:
YHXuanXinUserModel
?
// 注册环信用户信息
var
huanXinUserInfoModel
:
YHHuanXinUserModel
?
// 获取环信Token信息
var
huanXinTokenModel
:
YHHuanXinTokenModel
?
}
}
extension
YHLiveSalesViewModel
{
extension
YHLiveSalesViewModel
{
/*
/*
注册环信用户
注册环信用户
*/
*/
func
registerHuanXinUser
(
id
:
Int
,
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
()
)
{
func
registerHuanXinUser
(
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
Void
)
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
LiveSales
.
registerHuanXinUserApi
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
LiveSales
.
registerHuanXinUserApi
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
)
{
json
,
_
in
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
)
{
json
,
_
in
// 1. json字符串 转 对象
// 1. json字符串 转 对象
printLog
(
"model 是 ==>
\(
json
)
"
)
printLog
(
"model 是 ==>
\(
json
)
"
)
if
json
.
code
==
200
{
if
json
.
code
==
200
{
guard
let
dic
=
json
.
data
?
.
peel
as?
[
String
:
Any
],
let
resultModel
=
YH
X
uanXinUserModel
.
deserialize
(
from
:
dic
)
else
{
guard
let
dic
=
json
.
data
?
.
peel
as?
[
String
:
Any
],
let
resultModel
=
YH
H
uanXinUserModel
.
deserialize
(
from
:
dic
)
else
{
let
err
=
YHErrorModel
(
errorCode
:
YHErrorCode
.
dictParseError
.
rawValue
,
errorMsg
:
YHErrorCode
.
dictParseError
.
description
())
let
err
=
YHErrorModel
(
errorCode
:
YHErrorCode
.
dictParseError
.
rawValue
,
errorMsg
:
YHErrorCode
.
dictParseError
.
description
())
callBackBlock
(
false
,
err
)
callBackBlock
(
false
,
err
)
return
return
...
@@ -49,13 +50,40 @@ extension YHLiveSalesViewModel {
...
@@ -49,13 +50,40 @@ extension YHLiveSalesViewModel {
}
}
}
}
/*
环信Token信息
*/
func
getHuanXinToken
(
callback
:
@escaping
(
_
tokenModel
:
YHHuanXinTokenModel
?,
_
error
:
YHErrorModel
?)
->
Void
)
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
LiveSales
.
fetchHuanXinToken
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
,
params
:
[:])
{
[
weak
self
]
json
,
_
in
// 1. json字符串 转 对象
printLog
(
"model 是 ==>
\(
json
)
"
)
if
json
.
code
==
200
{
guard
let
dic
=
json
.
data
?
.
peel
as?
[
String
:
Any
],
let
resultModel
=
YHHuanXinTokenModel
.
deserialize
(
from
:
dic
)
else
{
let
err
=
YHErrorModel
(
errorCode
:
YHErrorCode
.
dictParseError
.
rawValue
,
errorMsg
:
YHErrorCode
.
dictParseError
.
description
())
callback
(
nil
,
err
)
return
}
self
?
.
huanXinTokenModel
=
resultModel
callback
(
resultModel
,
nil
)
}
else
{
let
err
=
YHErrorModel
(
errorCode
:
Int32
(
json
.
code
),
errorMsg
:
json
.
msg
.
isEmpty
?
""
:
json
.
msg
)
callback
(
nil
,
err
)
}
}
failBlock
:
{
err
in
callback
(
nil
,
err
)
}
}
/*
/*
直播间详情
直播间详情
*/
*/
func
getLiveDetail
(
id
:
Int
,
callback
:
@escaping
(
_
liveDetail
:
YHLiveDetailModel
?,
_
error
:
YHErrorModel
?)
->
Void
)
{
func
getLiveDetail
(
id
:
Int
,
callback
:
@escaping
(
_
liveDetail
:
YHLiveDetailModel
?,
_
error
:
YHErrorModel
?)
->
Void
)
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
LiveSales
.
liveDetail
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
LiveSales
.
liveDetail
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
,
params
:
[
"id"
:
id
])
{
json
,
_
in
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
,
params
:
[
"id"
:
id
])
{
[
weak
self
]
json
,
_
in
// 1. json字符串 转 对象
// 1. json字符串 转 对象
printLog
(
"model 是 ==>
\(
json
)
"
)
printLog
(
"model 是 ==>
\(
json
)
"
)
...
@@ -65,6 +93,7 @@ extension YHLiveSalesViewModel {
...
@@ -65,6 +93,7 @@ extension YHLiveSalesViewModel {
callback
(
nil
,
err
)
callback
(
nil
,
err
)
return
return
}
}
self
?
.
liveDetailModel
=
resultModel
callback
(
resultModel
,
nil
)
callback
(
resultModel
,
nil
)
}
else
{
}
else
{
...
@@ -76,5 +105,32 @@ extension YHLiveSalesViewModel {
...
@@ -76,5 +105,32 @@ extension YHLiveSalesViewModel {
callback
(
nil
,
err
)
callback
(
nil
,
err
)
}
}
}
}
/*
点播详情
*/
func
getRecordedDetail
(
id
:
Int
,
callback
:
@escaping
(
_
recordedDetail
:
YHRecordedDetailModel
?,
_
error
:
YHErrorModel
?)
->
Void
)
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
LiveSales
.
recordedDetail
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
,
params
:
[
"id"
:
id
])
{
[
weak
self
]
json
,
_
in
// 1. json字符串 转 对象
printLog
(
"model 是 ==>
\(
json
)
"
)
if
json
.
code
==
200
{
guard
let
dic
=
json
.
data
?
.
peel
as?
[
String
:
Any
],
let
resultModel
=
YHRecordedDetailModel
.
deserialize
(
from
:
dic
)
else
{
let
err
=
YHErrorModel
(
errorCode
:
YHErrorCode
.
dictParseError
.
rawValue
,
errorMsg
:
YHErrorCode
.
dictParseError
.
description
())
callback
(
nil
,
err
)
return
}
self
?
.
recordedDetailModel
=
resultModel
callback
(
resultModel
,
nil
)
}
else
{
let
err
=
YHErrorModel
(
errorCode
:
Int32
(
json
.
code
),
errorMsg
:
json
.
msg
.
isEmpty
?
""
:
json
.
msg
)
callback
(
nil
,
err
)
}
}
failBlock
:
{
err
in
callback
(
nil
,
err
)
}
}
}
}
galaxy/galaxy/Classes/Tools/NetWork/YHAllApiName.swift
View file @
d771a41c
...
@@ -663,9 +663,11 @@ class YHAllApiName {
...
@@ -663,9 +663,11 @@ class YHAllApiName {
struct
LiveSales
{
struct
LiveSales
{
// 获取直播详情
// 获取直播详情
static
let
liveDetail
=
"super-app/live/app-live-detail"
static
let
liveDetail
=
"super-app/live/app-live-detail"
// 注册环信用户
// 注册环信用户
static
let
registerHuanXinUserApi
=
"super-app/live/register-user-to-huanxin"
static
let
registerHuanXinUserApi
=
"super-app/live/register-user-to-huanxin"
// APP获得环信的token
static
let
fetchHuanXinToken
=
"super-app/live/get-huanxin-token"
// 获取录播详情
static
let
recordedDetail
=
"super-app/recorded-video/app-recorded-detail"
}
}
}
}
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