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
1f41a0b9
Commit
1f41a0b9
authored
Dec 04, 2024
by
Steven杜宇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
// AI
parent
2aa2e989
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
75 additions
and
18 deletions
+75
-18
YHAIMainChatViewController.swift
...s/AI/AI-Dialogue(AI对话)/C/YHAIMainChatViewController.swift
+13
-0
YHAIRequestManager.swift
...s/Modules/AI/AI-Dialogue(AI对话)/C/YHAIRequestManager.swift
+36
-11
YHAIRobotChatViewController.swift
.../AI/AI-Dialogue(AI对话)/C/YHAIRobotChatViewController.swift
+2
-1
YHAITabViewController.swift
...odules/AI/AI-Dialogue(AI对话)/C/YHAITabViewController.swift
+22
-1
YHAIMessageModel.swift
...ses/Modules/AI/AI-Dialogue(AI对话)/M/YHAIMessageModel.swift
+2
-5
No files found.
galaxy/galaxy/Classes/Modules/AI/AI-Dialogue(AI对话)/C/YHAIMainChatViewController.swift
View file @
1f41a0b9
...
@@ -188,6 +188,19 @@ class YHAIMainChatViewController: YHBaseViewController {
...
@@ -188,6 +188,19 @@ class YHAIMainChatViewController: YHBaseViewController {
callback
?(
success
)
callback
?(
success
)
}
}
}
}
@objc
func
didCleanButtonClicked
()
{
self
.
manager
.
clearGlobalConverastionId
()
self
.
viewModel
.
requestConversationId
{
sessionId
in
if
!
sessionId
.
isEmpty
{
self
.
conversationId
=
sessionId
self
.
manager
.
saveGlobalConverastionId
(
sessionId
)
self
.
messages
.
removeAll
()
self
.
tableView
.
reloadData
()
YHHUD
.
flash
(
message
:
"清除成功"
)
}
}
}
}
}
extension
YHAIMainChatViewController
:
UITableViewDelegate
,
UITableViewDataSource
{
extension
YHAIMainChatViewController
:
UITableViewDelegate
,
UITableViewDataSource
{
...
...
galaxy/galaxy/Classes/Modules/AI/AI-Dialogue(AI对话)/C/YHAIRequestManager.swift
View file @
1f41a0b9
...
@@ -265,25 +265,50 @@ extension YHAIRequestManager {
...
@@ -265,25 +265,50 @@ extension YHAIRequestManager {
return
""
return
""
}
}
func
clearGlobalConverastionId
()
{
let
userId
=
YHLoginManager
.
shared
.
userModel
?
.
id
??
""
let
key
=
Self
.
sessionKey
+
userId
UserDefaults
.
standard
.
set
(
nil
,
forKey
:
key
)
UserDefaults
.
standard
.
synchronize
()
}
func
getSubRobotChatConversationId
(
robotId
:
String
,
completion
:((
String
)
->
())?)
{
func
getSubRobotChatConversationId
(
robotId
:
String
,
completion
:((
String
)
->
())?)
{
let
localConversationId
=
getLobalSubRobotConversationId
(
robotId
:
robotId
)
if
!
localConversationId
.
isEmpty
{
completion
?(
localConversationId
)
return
}
self
.
viewModel
.
requestConversationId
{
sessionId
in
self
.
saveLobalSubRobotConversationId
(
sessionId
,
robotId
:
robotId
)
completion
?(
sessionId
)
}
}
func
getLobalSubRobotConversationId
(
robotId
:
String
)
->
String
{
let
userId
=
YHLoginManager
.
shared
.
userModel
?
.
id
??
""
let
key
=
Self
.
subrobotConversationConfigKey
+
userId
if
let
dict
=
UserDefaults
.
standard
.
dictionary
(
forKey
:
key
)
{
if
let
conversationId
=
dict
[
"
\(
robotId
)
"
]
as?
String
,
!
conversationId
.
isEmpty
{
return
conversationId
}
}
return
""
}
func
saveLobalSubRobotConversationId
(
_
converId
:
String
,
robotId
:
String
)
{
let
userId
=
YHLoginManager
.
shared
.
userModel
?
.
id
??
""
let
userId
=
YHLoginManager
.
shared
.
userModel
?
.
id
??
""
let
key
=
Self
.
subrobotConversationConfigKey
+
userId
let
key
=
Self
.
subrobotConversationConfigKey
+
userId
var
dict
:[
String
:
Any
]
=
[:]
var
dict
:[
String
:
Any
]
=
[:]
if
let
config
=
UserDefaults
.
standard
.
dictionary
(
forKey
:
key
)
{
if
let
config
=
UserDefaults
.
standard
.
dictionary
(
forKey
:
key
)
{
dict
=
config
dict
=
config
}
}
dict
[
"
\(
robotId
)
"
]
=
converId
if
let
conversationId
=
dict
[
"
\(
robotId
)
"
]
as?
String
,
!
conversationId
.
isEmpty
{
UserDefaults
.
standard
.
set
(
dict
,
forKey
:
key
)
completion
?(
conversationId
)
UserDefaults
.
standard
.
synchronize
()
return
}
self
.
viewModel
.
requestConversationId
{
sessionId
in
dict
[
"
\(
robotId
)
"
]
=
sessionId
UserDefaults
.
standard
.
set
(
dict
,
forKey
:
key
)
UserDefaults
.
standard
.
synchronize
()
completion
?(
sessionId
)
}
}
}
func
clearLobalSubRobotConversationIdForRobotId
(
_
robotId
:
String
)
{
saveLobalSubRobotConversationId
(
""
,
robotId
:
robotId
)
}
}
}
galaxy/galaxy/Classes/Modules/AI/AI-Dialogue(AI对话)/C/YHAIRobotChatViewController.swift
View file @
1f41a0b9
...
@@ -206,10 +206,11 @@ class YHAIRobotChatViewController: YHBaseViewController {
...
@@ -206,10 +206,11 @@ class YHAIRobotChatViewController: YHBaseViewController {
@objc
func
didCleanButtonClicked
()
{
@objc
func
didCleanButtonClicked
()
{
self
.
manager
.
clearLobalSubRobotConversationIdForRobotId
(
robotId
)
self
.
viewModel
.
requestConversationId
{
sessionId
in
self
.
viewModel
.
requestConversationId
{
sessionId
in
if
!
sessionId
.
isEmpty
{
if
!
sessionId
.
isEmpty
{
self
.
conversationId
=
sessionId
self
.
conversationId
=
sessionId
self
.
manager
.
save
GlobalConverastionId
(
session
Id
)
self
.
manager
.
save
LobalSubRobotConversationId
(
sessionId
,
robotId
:
self
.
robot
Id
)
self
.
messages
.
removeAll
()
self
.
messages
.
removeAll
()
self
.
tableView
.
reloadData
()
self
.
tableView
.
reloadData
()
YHHUD
.
flash
(
message
:
"清除成功"
)
YHHUD
.
flash
(
message
:
"清除成功"
)
...
...
galaxy/galaxy/Classes/Modules/AI/AI-Dialogue(AI对话)/C/YHAITabViewController.swift
View file @
1f41a0b9
...
@@ -67,6 +67,15 @@ class YHAITabViewController: YHBaseViewController {
...
@@ -67,6 +67,15 @@ class YHAITabViewController: YHBaseViewController {
return
btn
return
btn
}()
}()
lazy
var
cleanBtn
:
UIButton
=
{
let
btn
=
UIButton
()
btn
.
setImage
(
UIImage
(
named
:
"msg_clean"
),
for
:
.
normal
)
btn
.
YH_clickEdgeInsets
=
UIEdgeInsets
(
top
:
20
,
left
:
20
,
bottom
:
20
,
right
:
20
)
btn
.
addTarget
(
self
,
action
:
#selector(
didCleanButtonClicked
)
,
for
:
.
touchUpInside
)
btn
.
isHidden
=
true
return
btn
}()
lazy
var
listVC
:
YHAIServiceListViewController
=
{
lazy
var
listVC
:
YHAIServiceListViewController
=
{
let
vc
=
YHAIServiceListViewController
()
let
vc
=
YHAIServiceListViewController
()
return
vc
return
vc
...
@@ -124,7 +133,7 @@ class YHAITabViewController: YHBaseViewController {
...
@@ -124,7 +133,7 @@ class YHAITabViewController: YHBaseViewController {
segmentedView
.
listContainer
=
listContainerView
segmentedView
.
listContainer
=
listContainerView
view
.
addSubview
(
listContainerView
)
view
.
addSubview
(
listContainerView
)
view
.
addSubview
(
cleanBtn
)
//分类Title
//分类Title
segmentedView
.
dataSource
=
segmentedDataSource
segmentedView
.
dataSource
=
segmentedDataSource
...
@@ -168,6 +177,12 @@ class YHAITabViewController: YHBaseViewController {
...
@@ -168,6 +177,12 @@ class YHAITabViewController: YHBaseViewController {
make
.
top
.
equalTo
(
k_Height_safeAreaInsetsTop
()
+
segmentHeight
)
make
.
top
.
equalTo
(
k_Height_safeAreaInsetsTop
()
+
segmentHeight
)
make
.
bottom
.
equalTo
(
0
)
make
.
bottom
.
equalTo
(
0
)
}
}
cleanBtn
.
snp
.
makeConstraints
{
make
in
make
.
width
.
height
.
equalTo
(
24
)
make
.
centerY
.
equalTo
(
segmentedView
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
20
)
}
}
}
func
requestList
()
{
func
requestList
()
{
...
@@ -191,6 +206,10 @@ class YHAITabViewController: YHBaseViewController {
...
@@ -191,6 +206,10 @@ class YHAITabViewController: YHBaseViewController {
jumpToItemIndex
(
itemIndex
:
1
)
jumpToItemIndex
(
itemIndex
:
1
)
mainChatVC
.
bottomInputView
.
showKeyBoard
()
mainChatVC
.
bottomInputView
.
showKeyBoard
()
}
}
@objc
func
didCleanButtonClicked
()
{
self
.
mainChatVC
.
didCleanButtonClicked
()
}
}
}
extension
YHAITabViewController
:
JXSegmentedViewDelegate
{
extension
YHAITabViewController
:
JXSegmentedViewDelegate
{
...
@@ -200,10 +219,12 @@ extension YHAITabViewController: JXSegmentedViewDelegate {
...
@@ -200,10 +219,12 @@ extension YHAITabViewController: JXSegmentedViewDelegate {
if
segmentedView
.
selectedIndex
==
1
{
// AI对话
if
segmentedView
.
selectedIndex
==
1
{
// AI对话
bgImgView
.
isHidden
=
false
bgImgView
.
isHidden
=
false
headerImgView
.
isHidden
=
true
headerImgView
.
isHidden
=
true
cleanBtn
.
isHidden
=
false
}
else
{
// 港小宝
}
else
{
// 港小宝
bgImgView
.
isHidden
=
true
bgImgView
.
isHidden
=
true
headerImgView
.
isHidden
=
false
headerImgView
.
isHidden
=
false
cleanBtn
.
isHidden
=
true
}
}
}
}
}
}
...
...
galaxy/galaxy/Classes/Modules/AI/AI-Dialogue(AI对话)/M/YHAIMessageModel.swift
View file @
1f41a0b9
...
@@ -43,10 +43,7 @@ class YHAIChatMessage: CustomStringConvertible {
...
@@ -43,10 +43,7 @@ class YHAIChatMessage: CustomStringConvertible {
var
body
=
YHAIMessageBody
()
var
body
=
YHAIMessageBody
()
func
isFinishd
()
->
Bool
{
func
isFinishd
()
->
Bool
{
if
event
.
isEmpty
{
if
event
.
contains
(
"conversation.message.completed"
)
{
return
true
}
if
event
==
"conversation.message.completed"
{
return
true
return
true
}
}
return
false
return
false
...
@@ -178,7 +175,7 @@ class YHAIChatMessage: CustomStringConvertible {
...
@@ -178,7 +175,7 @@ class YHAIChatMessage: CustomStringConvertible {
}
}
var
description
:
String
{
var
description
:
String
{
return
"uudi:
\(
messageId
)\n
id:
\(
id
)\n
event:
\(
event
)\n
data:
\(
data
)\n
\n
"
return
"uudi:
\(
messageId
)\n
id:
\(
id
)\n
event:
\(
event
)\n
data:
\(
data
)\n
\n
"
}
}
}
}
...
...
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