Commit 336b1191 authored by DavidHuang's avatar DavidHuang

Merge branch 'yinhe-live-1212' of...

Merge branch 'yinhe-live-1212' of http://gitlab.galaxy-immi.com/mobile-group/galaxy-iOS into yinhe-live-1212
parents f5972b8f 3c4b160d
...@@ -370,6 +370,15 @@ extension YHAIMainChatViewController: UITableViewDelegate, UITableViewDataSource ...@@ -370,6 +370,15 @@ extension YHAIMainChatViewController: UITableViewDelegate, UITableViewDataSource
if 0 <= indexPath.row, indexPath.row < messages.count { if 0 <= indexPath.row, indexPath.row < messages.count {
let message = messages[indexPath.row] let message = messages[indexPath.row]
let msgType = message.getType() let msgType = message.getType()
if msgType == .productList {
var height = 16+70.0
if let listModel = message.body.cardsInfo {
height += height + (120.0 * Double(listModel.list.count)) + 40.0
}
return height
}
if msgType != .text { if msgType != .text {
return UITableView.automaticDimension return UITableView.automaticDimension
} }
......
...@@ -254,7 +254,7 @@ class YHAIRequestManager: NSObject { ...@@ -254,7 +254,7 @@ class YHAIRequestManager: NSObject {
// } // }
if receiveMessage.isUserfulMessage() { if receiveMessage.isUserfulMessage() {
if receiveMessage.body.isDone() { if receiveMessage.body.isDone() || receiveMessage.isMessageCompleted() {
completion?(nil, sessionDone) completion?(nil, sessionDone)
return return
} }
......
...@@ -183,8 +183,6 @@ class YHAIRobotChatViewController: YHBaseViewController { ...@@ -183,8 +183,6 @@ class YHAIRobotChatViewController: YHBaseViewController {
self.tableView.reloadData() self.tableView.reloadData()
DispatchQueue.main.async { DispatchQueue.main.async {
[weak self] in [weak self] in
guard let self = self else { return } guard let self = self else { return }
...@@ -407,13 +405,6 @@ extension YHAIRobotChatViewController: UITableViewDelegate, UITableViewDataSourc ...@@ -407,13 +405,6 @@ extension YHAIRobotChatViewController: UITableViewDelegate, UITableViewDataSourc
[weak self] text in [weak self] text in
guard let self = self else { return } guard let self = self else { return }
if self.isNeedStopResonse() {
self.stopAutoResponse { success in
self.sendMessage(text, true)
}
} else {
self.sendMessage(text, true)
}
} }
return cell return cell
...@@ -510,6 +501,15 @@ extension YHAIRobotChatViewController: UITableViewDelegate, UITableViewDataSourc ...@@ -510,6 +501,15 @@ extension YHAIRobotChatViewController: UITableViewDelegate, UITableViewDataSourc
if 0 <= indexPath.row, indexPath.row < messages.count { if 0 <= indexPath.row, indexPath.row < messages.count {
let message = messages[indexPath.row] let message = messages[indexPath.row]
let msgType = message.getType() let msgType = message.getType()
if msgType == .productList {
var height = 16+70.0
if let listModel = message.body.cardsInfo {
height += height + (120.0 * Double(listModel.list.count)) + 40.0
}
return height
}
if msgType != .text { if msgType != .text {
return UITableView.automaticDimension return UITableView.automaticDimension
} }
......
...@@ -97,6 +97,7 @@ class YHAIChatBannerView: UIView { ...@@ -97,6 +97,7 @@ class YHAIChatBannerView: UIView {
let view = YHHomeBannerIndicatorView() let view = YHHomeBannerIndicatorView()
view.normalColor = .init(hex: 0xD5DAE1) view.normalColor = .init(hex: 0xD5DAE1)
view.selectedColor = .brandMainColor view.selectedColor = .brandMainColor
view.layer.cornerRadius = 1.0
return view return view
}() }()
......
...@@ -66,15 +66,8 @@ class YHAITextMessageCell: UITableViewCell { ...@@ -66,15 +66,8 @@ class YHAITextMessageCell: UITableViewCell {
make.width.height.equalTo(15) make.width.height.equalTo(15)
} }
if message.getType() == .recommendText {
isNeedShowCopyView = false
isNeedShowLoadingView = false
} else {
isNeedShowCopyView = message.isDone isNeedShowCopyView = message.isDone
let complete = message.isDone isNeedShowLoadingView = !message.isDone
isNeedShowLoadingView = !complete
}
} }
self.setNeedsLayout() self.setNeedsLayout()
......
...@@ -23,7 +23,7 @@ class YHProductListMessageCell: UITableViewCell { ...@@ -23,7 +23,7 @@ class YHProductListMessageCell: UITableViewCell {
let productView = YHProductItemView() let productView = YHProductItemView()
productView.productModel = item productView.productModel = item
listView.addSubview(productView) listView.addSubview(productView)
productView.snp.makeConstraints { make in productView.snp.remakeConstraints { make in
make.left.right.equalToSuperview() make.left.right.equalToSuperview()
if let lastItemView = lastItemView { if let lastItemView = lastItemView {
make.top.equalTo(lastItemView.snp.bottom) make.top.equalTo(lastItemView.snp.bottom)
...@@ -156,7 +156,7 @@ class YHProductListMessageCell: UITableViewCell { ...@@ -156,7 +156,7 @@ class YHProductListMessageCell: UITableViewCell {
} }
titleLabel.snp.makeConstraints { make in titleLabel.snp.makeConstraints { make in
make.top.equalTo(iconImgView) make.top.equalTo(iconImgView).offset(-4)
make.left.equalTo(iconImgView.snp.right).offset(8) make.left.equalTo(iconImgView.snp.right).offset(8)
make.height.equalTo(24) make.height.equalTo(24)
make.right.equalTo(-16) make.right.equalTo(-16)
......
...@@ -422,6 +422,7 @@ extension YHHomePageViewController { ...@@ -422,6 +422,7 @@ extension YHHomePageViewController {
guard let userId = YHLoginManager.shared.userModel?.id, userId.count > 0 else { guard let userId = YHLoginManager.shared.userModel?.id, userId.count > 0 else {
return return
} }
YHAnalytics.track("APP_HomeTab_IntelligentAssistant")
YHButlerServiceManager.shared.gotoButlerServiceSessionVC(navigationController: navigationController, completion: { success in YHButlerServiceManager.shared.gotoButlerServiceSessionVC(navigationController: navigationController, completion: { success in
completion(success) completion(success)
}) })
......
...@@ -268,7 +268,7 @@ class YHShareOneCollectionViewCell: UICollectionViewCell { ...@@ -268,7 +268,7 @@ class YHShareOneCollectionViewCell: UICollectionViewCell {
}() }()
centerImageView.addSubview(imageView) centerImageView.addSubview(imageView)
imageView.snp.makeConstraints { make in imageView.snp.makeConstraints { make in
make.bottom.equalTo(-57) make.bottom.equalTo(-64)
make.right.equalTo(-27) make.right.equalTo(-27)
make.width.height.equalTo(56) make.width.height.equalTo(56)
} }
......
...@@ -151,6 +151,7 @@ extension YHHomeBannerView: FSPagerViewDataSource, FSPagerViewDelegate { ...@@ -151,6 +151,7 @@ extension YHHomeBannerView: FSPagerViewDataSource, FSPagerViewDelegate {
if model.isLocalItemFlag { if model.isLocalItemFlag {
return return
} }
YHAnalytics.track("APP_Home_Banners")
switch model.skip_type { switch model.skip_type {
case 1: //跳转H5 case 1: //跳转H5
if model.skip_url.isEmpty == false { if model.skip_url.isEmpty == false {
......
...@@ -183,6 +183,7 @@ class YHLivePlayerViewController: YHBasePlayerViewController { ...@@ -183,6 +183,7 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
} }
topBarView.zoomButtonClickEvent = { [weak self] in topBarView.zoomButtonClickEvent = { [weak self] in
YHAnalytics.track("APP_LivePage_ClickWindowPlay")
if let playbackInfo = self?.playbackInfo, playbackInfo.isFromSaleDetail { if let playbackInfo = self?.playbackInfo, playbackInfo.isFromSaleDetail {
self?.clearInfo() self?.clearInfo()
if let nav = self?.navigationController, nav.viewControllers.count > 1 { if let nav = self?.navigationController, nav.viewControllers.count > 1 {
...@@ -200,11 +201,13 @@ class YHLivePlayerViewController: YHBasePlayerViewController { ...@@ -200,11 +201,13 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
} }
topBarView.shareButtonClickEvent = { [weak self] in topBarView.shareButtonClickEvent = { [weak self] in
YHAnalytics.track("APP_LivePage_ClickShare")
self?.shareLive() self?.shareLive()
} }
bottomInputBar.giftButtonClickEvent = { [weak self] in bottomInputBar.giftButtonClickEvent = { [weak self] in
self?.showGoods() self?.showGoods()
YHAnalytics.track("APP_LivePage_ClickProductWindow")
} }
#if DEBUG || TESTENV #if DEBUG || TESTENV
playerView.addSubview(videoStatsLabel) playerView.addSubview(videoStatsLabel)
...@@ -424,6 +427,7 @@ class YHLivePlayerViewController: YHBasePlayerViewController { ...@@ -424,6 +427,7 @@ class YHLivePlayerViewController: YHBasePlayerViewController {
let model = list[index] let model = list[index]
self?.gotoH5GoodsDetail(id: model.id) self?.gotoH5GoodsDetail(id: model.id)
} }
view.fromPage = .live
view.dataSource = list view.dataSource = list
view.closeEvent = { [weak self] in view.closeEvent = { [weak self] in
self?.goodsListView = nil self?.goodsListView = nil
......
...@@ -702,6 +702,9 @@ extension YHPlayerManager: YHFloatingWindowDelegate { ...@@ -702,6 +702,9 @@ extension YHPlayerManager: YHFloatingWindowDelegate {
func floatingWindowDidTap(_ window: YHFloatingWindow) { func floatingWindowDidTap(_ window: YHFloatingWindow) {
guard let playbackInfo = window.playbackInfo else { return } guard let playbackInfo = window.playbackInfo else { return }
guard checkLogin() else { return } guard checkLogin() else { return }
if window.source == .configured {
YHAnalytics.track("APP_Home_LiveWindow")
}
if playbackInfo.isLive { if playbackInfo.isLive {
enterLive(from: window.contentView, playbackInfo: playbackInfo) enterLive(from: window.contentView, playbackInfo: playbackInfo)
} else { } else {
......
...@@ -110,6 +110,7 @@ class YHVODPlayerViewController: YHBasePlayerViewController { ...@@ -110,6 +110,7 @@ class YHVODPlayerViewController: YHBasePlayerViewController {
} }
containerView.addSubview(progressControl) containerView.addSubview(progressControl)
containerView.addSubview(centerPlayIcon) containerView.addSubview(centerPlayIcon)
containerView.bringSubviewToFront(centerPlayIcon)
progressControl.snp.makeConstraints { make in progressControl.snp.makeConstraints { make in
make.left.right.bottom.equalToSuperview() make.left.right.bottom.equalToSuperview()
make.top.equalTo(view.safeAreaLayoutGuide.snp.bottom).offset(-102) make.top.equalTo(view.safeAreaLayoutGuide.snp.bottom).offset(-102)
...@@ -124,10 +125,12 @@ class YHVODPlayerViewController: YHBasePlayerViewController { ...@@ -124,10 +125,12 @@ class YHVODPlayerViewController: YHBasePlayerViewController {
} }
topBarView.zoomButtonClickEvent = { [weak self] in topBarView.zoomButtonClickEvent = { [weak self] in
YHAnalytics.track("APP_RecordedPage_ClickWindowPlay")
self?.enterFloating() self?.enterFloating()
} }
topBarView.shareButtonClickEvent = { [weak self] in topBarView.shareButtonClickEvent = { [weak self] in
YHAnalytics.track("APP_RecordedPage_ClickShare")
self?.shareLive() self?.shareLive()
} }
// 现在改为全部 // 现在改为全部
...@@ -232,6 +235,7 @@ class YHVODPlayerViewController: YHBasePlayerViewController { ...@@ -232,6 +235,7 @@ class YHVODPlayerViewController: YHBasePlayerViewController {
progressControl.updateGiftCount(detail.goods.count) progressControl.updateGiftCount(detail.goods.count)
progressControl.giftButtonClickEvent = { [weak self] in progressControl.giftButtonClickEvent = { [weak self] in
YHAnalytics.track("APP_RecordedPage_ClickProductWindow")
self?.showGoods() self?.showGoods()
} }
if let player = player { if let player = player {
...@@ -253,6 +257,7 @@ class YHVODPlayerViewController: YHBasePlayerViewController { ...@@ -253,6 +257,7 @@ class YHVODPlayerViewController: YHBasePlayerViewController {
let model = list[index] let model = list[index]
self?.gotoH5GoodsDetail(id: model.id) self?.gotoH5GoodsDetail(id: model.id)
} }
view.fromPage = .vod
view.dataSource = list view.dataSource = list
view.closeEvent = { [weak self] in view.closeEvent = { [weak self] in
self?.goodsListView = nil self?.goodsListView = nil
......
...@@ -10,6 +10,12 @@ import UIKit ...@@ -10,6 +10,12 @@ import UIKit
import AttributedString import AttributedString
class YHLiveShopView: UIView { class YHLiveShopView: UIView {
enum FromPage {
case live
case vod
}
var fromPage: FromPage = .live
var closeEvent: (() -> Void)? var closeEvent: (() -> Void)?
var backData: ((Int) -> Void)? var backData: ((Int) -> Void)?
var buyData: ((Int) -> Void)? var buyData: ((Int) -> Void)?
...@@ -212,6 +218,13 @@ extension YHLiveShopView: UITableViewDelegate, UITableViewDataSource { ...@@ -212,6 +218,13 @@ extension YHLiveShopView: UITableViewDelegate, UITableViewDataSource {
guard dataSource.count > indexPath.row else { guard dataSource.count > indexPath.row else {
return return
} }
switch fromPage {
case .live:
YHAnalytics.track("APP_LivePage_ProductWindowPopup_ClickProduct")
case .vod:
YHAnalytics.track("APP_RecordedPage_ProductWindowPopup_ClickProduct")
}
backData?(indexPath.row) backData?(indexPath.row)
} }
} }
......
...@@ -368,6 +368,7 @@ extension YHMessageListVC { ...@@ -368,6 +368,7 @@ extension YHMessageListVC {
completion(false) completion(false)
return return
} }
YHAnalytics.track("APP_FriendsTab_Conversation_GalaxyButler")
YHButlerServiceManager.shared.gotoButlerServiceSessionVC(navigationController: navigationController, completion: { success in YHButlerServiceManager.shared.gotoButlerServiceSessionVC(navigationController: navigationController, completion: { success in
completion(success) completion(success)
}) })
......
...@@ -52,5 +52,7 @@ class YHAnalyticsUnit: NSObject { ...@@ -52,5 +52,7 @@ class YHAnalyticsUnit: NSObject {
"YHResignUploadTravelCardListViewController": "APP_Elite_Renewal_Service_UploadTravelDocuments", "YHResignUploadTravelCardListViewController": "APP_Elite_Renewal_Service_UploadTravelDocuments",
"YHSelectViewController": "APP_HomeTab_GalaxySelection", "YHSelectViewController": "APP_HomeTab_GalaxySelection",
"YHLifeViewController": "APP_LiveList", "YHLifeViewController": "APP_LiveList",
"YHServiceCenterViewController": "APP_ServiceTab_ApplicationStage"] "YHServiceCenterViewController": "APP_ServiceTab_ApplicationStage",
"YHVODPlayerViewController": "APP_RecordedPage",
"YHLivePlayerViewController": "APP_LivePage"]
} }
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