Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
YDL-Component-Medical
Overview
Overview
Details
Activity
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
杨凯
YDL-Component-Medical
Commits
7a524767
Commit
7a524767
authored
Jun 30, 2021
by
霍志良
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat:im-灵犀2.0-其他选项
parent
d3d0e5ec
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
88 additions
and
21 deletions
+88
-21
MultipleSelectedEvent.kt
m-im/src/main/java/com/yidianling/im/event/MultipleSelectedEvent.kt
+15
-2
MsgViewHolderLingxiAnswerQuestion.java
m-im/src/main/java/com/yidianling/im/session/viewholder/MsgViewHolderLingxiAnswerQuestion.java
+21
-3
MsgViewHolderLingxiWhichQuestion.java
m-im/src/main/java/com/yidianling/im/session/viewholder/MsgViewHolderLingxiWhichQuestion.java
+0
-0
LingxiWhichQuestionBean.kt
m-im/src/main/java/com/yidianling/im/session/viewholder/bean/LingxiWhichQuestionBean.kt
+2
-1
YDLMessageFragment.java
m-im/src/main/java/com/yidianling/uikit/business/session/fragment/YDLMessageFragment.java
+50
-15
No files found.
m-im/src/main/java/com/yidianling/im/event/MultipleSelectedEvent.kt
View file @
7a524767
package
com.yidianling.im.event
import
com.yidianling.im.router.ImIn.getUserInfo
import
com.yidianling.im.session.viewholder.bean.AnswersItem
public
class
MultipleSelectedEvent
(
val
strSelected
:
String
,
var
othersState
:
OthersState
val
strSelected
:
String
?,
var
othersState
:
OthersState
?,
var
multipleAnswerBean
:
MultipleAnswerBean
?
)
data class
OthersState
(
var
isOthers
:
Boolean
,
var
othersSelect
:
Boolean
)
data class
MultipleAnswerBean
(
var
examId
:
String
,
var
questionPaperId
:
String
,
var
uid
:
String
,
var
questionId
:
String
,
var
answersItems
:
ArrayList
<
AnswersItem
>,
var
fromUid
:
String
)
\ No newline at end of file
m-im/src/main/java/com/yidianling/im/session/viewholder/MsgViewHolderLingxiAnswerQuestion.java
View file @
7a524767
...
...
@@ -5,13 +5,17 @@ import android.widget.TextView;
import
com.yidianling.im.R
;
import
com.yidianling.im.session.extension.CustomAttachLingxiAnswerQuestion
;
import
com.yidianling.im.session.viewholder.bean.QuestionItemBean
;
import
com.yidianling.nimbase.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter
;
import
com.yidianling.uikit.business.session.viewholder.MsgViewHolderBase
;
import
java.util.ArrayList
;
public
class
MsgViewHolderLingxiAnswerQuestion
extends
MsgViewHolderBase
{
private
TextView
answer_question
;
CustomAttachLingxiAnswerQuestion
customattachLingxiAnswerQuestion
;
private
ArrayList
<
QuestionItemBean
>
itemBeans
;
private
StringBuffer
sb
;
public
MsgViewHolderLingxiAnswerQuestion
(
BaseMultiItemFetchLoadAdapter
adapter
)
{
super
(
adapter
);
}
...
...
@@ -36,7 +40,21 @@ public class MsgViewHolderLingxiAnswerQuestion extends MsgViewHolderBase {
@Override
protected
void
bindContentView
()
{
customattachLingxiAnswerQuestion
=
((
CustomAttachLingxiAnswerQuestion
)
message
.
getAttachment
());
answer_question
.
setText
(
customattachLingxiAnswerQuestion
.
answers
.
get
(
0
).
getName
());
itemBeans
=
customattachLingxiAnswerQuestion
.
answers
;
sb
=
new
StringBuffer
();
for
(
int
i
=
0
;
i
<
itemBeans
.
size
();
i
++){
if
(
i
==(
itemBeans
.
size
()-
1
)&&
itemBeans
.
get
(
i
).
getName
().
contains
(
"其他"
)){
sb
.
append
(
"#"
+
itemBeans
.
get
(
i
).
getName
()+
"\r\n "
).
append
(
itemBeans
.
get
(
i
).
getOther
());
}
else
{
sb
.
append
(
"#"
+
itemBeans
.
get
(
i
).
getName
()+
" "
);
}
}
if
(
itemBeans
.
size
()==
1
){
answer_question
.
setText
(
itemBeans
.
get
(
0
).
getName
());
}
else
{
answer_question
.
setText
(
sb
.
toString
());
}
}
}
m-im/src/main/java/com/yidianling/im/session/viewholder/MsgViewHolderLingxiWhichQuestion.java
View file @
7a524767
This diff is collapsed.
Click to expand it.
m-im/src/main/java/com/yidianling/im/session/viewholder/bean/LingxiWhichQuestionBean.kt
View file @
7a524767
...
...
@@ -12,6 +12,7 @@ data class LingxiWhichQuestionBean(
data class
QuestionItemBean
(
var
id
:
String
?,
var
name
:
String
?,
var
other
:
String
?,
var
relates
:
ArrayList
<
Relates
>?,
var
isSelected
:
Boolean
=
false
)
...
...
@@ -32,7 +33,7 @@ data class AnswerBean(
data class
AnswersItem
(
var
optionId
:
String
,
var
name
:
String
,
var
other
:
String
,
var
other
:
String
?
,
var
relates
:
ArrayList
<
Relates
>
)
data class
Relates
(
...
...
m-im/src/main/java/com/yidianling/uikit/business/session/fragment/YDLMessageFragment.java
View file @
7a524767
...
...
@@ -64,6 +64,9 @@ import com.yidianling.im.event.MultipleSelectedEvent;
import
com.yidianling.im.helper.IMChatUtil
;
import
com.yidianling.im.http.ImRetrofitApi
;
import
com.yidianling.im.router.ImIn
;
import
com.yidianling.im.session.viewholder.bean.AnswerBean
;
import
com.yidianling.im.session.viewholder.bean.AnswersItem
;
import
com.yidianling.im.session.viewholder.bean.LingxiAnswerBean
;
import
com.yidianling.im.session.viewholder.bean.UserIsIn
;
import
com.yidianling.im.session.viewholder.bean.UserIsInPageData
;
import
com.yidianling.nimbase.api.UIKitOptions
;
...
...
@@ -1079,25 +1082,57 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
}
public
void
onEvent
(
MultipleSelectedEvent
event
){
if
(
event
.
getOthersState
().
isOthers
()){
//用户点击了其他事件
if
(
event
.
getOthersState
().
getOthersSelect
()){
//其他是选中状态
isOthers
=
event
.
getOthersState
().
getOthersSelect
();
rootView
.
postDelayed
(
new
Runnable
()
{
@Override
public
void
run
()
{
inputPanel
.
onlyShowTextStart
();
}
},
500
);
if
(
event
.
getOthersState
()!=
null
){
if
(
event
.
getOthersState
().
isOthers
()){
//用户点击了其他事件
if
(
event
.
getOthersState
().
getOthersSelect
()){
//其他是选中状态
isOthers
=
event
.
getOthersState
().
getOthersSelect
();
rootView
.
postDelayed
(
new
Runnable
()
{
@Override
public
void
run
()
{
inputPanel
.
onlyShowTextStart
();
}
},
500
);
}
else
{
//其他是未选中状态
isOthers
=
event
.
getOthersState
().
getOthersSelect
();
inputPanel
.
onlyShowTextEnd
();
}
}
else
{
//其他是未选中状态
isOthers
=
event
.
getOthersState
().
getOthersSelect
();
inputPanel
.
onlyShowTextEnd
();
question_multiple
.
setText
(
event
.
getStrSelected
());
}
}
else
{
question_multiple
.
setText
(
event
.
getStrSelected
());
//请求接口发送消息为56的答案
ArrayList
<
AnswersItem
>
answersItems
=
event
.
getMultipleAnswerBean
().
getAnswersItems
();
for
(
int
i
=
0
;
i
<
answersItems
.
size
();
i
++){
if
(
answersItems
.
get
(
i
).
getName
().
contains
(
"其他"
)){
answersItems
.
get
(
i
).
setOther
(
inputPanel
.
getInputContent
());
break
;
}
}
answerLingxiQuestion
(
event
.
getMultipleAnswerBean
().
getExamId
(),
event
.
getMultipleAnswerBean
().
getQuestionPaperId
(),
event
.
getMultipleAnswerBean
().
getUid
(),
event
.
getMultipleAnswerBean
().
getQuestionId
(),
answersItems
,
event
.
getMultipleAnswerBean
().
getFromUid
());
}
}
/*
* 用户回答问题接口
* */
private
void
answerLingxiQuestion
(
String
examID
,
String
questionPaperId
,
String
uid
,
String
questionId
,
ArrayList
<
AnswersItem
>
answersItems
,
String
fromUID
)
{
String
str
=
new
Gson
().
toJson
(
new
LingxiAnswerBean
(
new
AnswerBean
(
examID
,
questionPaperId
,
uid
,
questionId
,
answersItems
),
fromUID
,
"56"
,
uid
));
RequestBody
body
=
RequestBody
.
create
(
MediaType
.
parse
(
"application/json; charset=utf-8"
),
str
);
Disposable
subscribe
=
ImRetrofitApi
.
Companion
.
getImRetrofitApi
().
lingxiAnswerQuestion
(
body
)
.
compose
(
RxUtils
.
INSTANCE
.
resultJavaData
())
.
subscribeOn
(
Schedulers
.
io
())
.
observeOn
(
AndroidSchedulers
.
mainThread
())
.
subscribe
(
it
->
{
LogUtil
.
e
(
"answerQuestion"
+
it
.
toString
());
},
throwable
->
com
.
yidianling
.
common
.
tools
.
LogUtil
.
e
(
throwable
.
getMessage
())
);
}
public
boolean
onBackPressed
()
{
return
inputPanel
.
collapse
(
true
)
||
messageListPanel
.
onBackPressed
()
||
openOrCloseCommonQuestionLayout
(
false
);
...
...
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