Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
book-app
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
book-app
Commits
08c918a2
提交
08c918a2
authored
3月 07, 2024
作者:
yueweilu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
回复成功后 手动添加数据 刷新那一块
上级
4bf07ce1
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
93 行增加
和
76 行删除
+93
-76
controller.dart
lib/pages/read_web/controller.dart
+6
-4
discuss_controller.dart
lib/pages/read_web/discuss_controller.dart
+29
-2
input_discuss.dart
lib/pages/read_web/widgets/input_discuss.dart
+1
-1
controller.dart
lib/pages/user_discuss_des/controller.dart
+27
-2
discuss.dart
lib/pages/user_discuss_des/widgets/discuss.dart
+23
-42
note.dart
lib/pages/user_notes_des/widgets/note.dart
+7
-25
没有找到文件。
lib/pages/read_web/controller.dart
浏览文件 @
08c918a2
...
...
@@ -356,8 +356,6 @@ class ReadController extends FullLifeCycleController with GetSingleTickerProvide
// 重置所有信息
void
reset
(){
clearAllDiscussInput
();
clearDiscussInputImages
();
clearDiscussAudios
();
}
// 播放音频
...
...
@@ -413,11 +411,12 @@ class ReadController extends FullLifeCycleController with GetSingleTickerProvide
}
// 清空所有已经填写的数据
void
clearAllDiscussInput
(){
discussInputImages
.
clear
();
discussInputAudios
.
clear
();
clearDiscussInputImages
();
clearDiscussAudios
();
titleInput
.
text
=
''
;
contentInput
.
text
=
''
;
isPublic
=
false
;
noteTitle
=
''
;
Console
.
log
(
'clearAllDiscussInput--------------------------------'
);
update
();
}
...
...
@@ -584,6 +583,9 @@ class ReadController extends FullLifeCycleController with GetSingleTickerProvide
// 展示输入框
void
setShowChat
(
bool
value
)
{
showChat
=
value
;
if
(
value
==
false
){
reset
();
}
update
();
}
// 显示输入框类型
...
...
lib/pages/read_web/discuss_controller.dart
浏览文件 @
08c918a2
...
...
@@ -27,6 +27,8 @@ class DiscussController extends GetxController {
bool
showReply
=
false
;
// 当前要回复的模型
late
DiscussModel
discussModel
;
// 当前要回复父级的模型
late
DiscussModel
fatherDiscussModel
;
// 是否展示搜索结果
bool
showSearch
=
false
;
...
...
@@ -49,12 +51,18 @@ class DiscussController extends GetxController {
void
setShow
()
{
showReply
=
!
showReply
;
if
(
showReply
==
false
)
{
replyInput
.
text
=
''
;
}
update
();
}
void
setDiscussModel
(
DiscussModel
model
){
discussModel
=
model
;
}
void
setFatherDiscussModel
(
DiscussModel
model
){
fatherDiscussModel
=
model
;
}
void
setShowSearch
(
bool
show
){
showSearch
=
show
;
...
...
@@ -109,15 +117,34 @@ class DiscussController extends GetxController {
content:
jsonEncode
(
contentMap
)
);
if
(
result
){
Toast
.
show
(
'话题发表成功'
);
Toast
.
show
(
'发表成功'
);
Toast
.
show
(
'发表成功'
);
discussModel
.
replyNum
=
discussModel
.
replyNum
!
+
1
;
DiscussModel
tempModel
=
DiscussModel
.
fromJson
(
discussModel
.
toJson
());
tempModel
.
status
=
1
;
tempModel
.
commentsCheck
=
0
;
tempModel
.
isMy
=
1
;
NoteContentModel
contentModel
=
NoteContentModel
(
text:
MediaModel
(
content:
replyInput
.
text
,
privacyStatus:
1
)
);
tempModel
.
content
=
contentModel
;
tempModel
.
content
?.
text
?.
privacyStatus
=
1
;
tempModel
.
replacePersonName
=
discussModel
.
personName
;
tempModel
.
replacePersonPic
=
discussModel
.
personPic
;
tempModel
.
replyNum
=
0
;
fatherDiscussModel
.
commentAll
?.
add
(
tempModel
);
// fatherDiscussModel.replyNum = fatherDiscussModel.commentAll?.length;
}
else
{
Toast
.
show
(
'
话题
发表失败'
);
Toast
.
show
(
'发表失败'
);
}
// 重置所有信息
// reset();
// setShowChat(false);
replyInput
.
text
=
''
;
update
();
return
result
;
}
...
...
lib/pages/read_web/widgets/input_discuss.dart
浏览文件 @
08c918a2
...
...
@@ -25,7 +25,7 @@ class _ReadInputDiscussState extends State<ReadInputDiscuss> {
child:
widget
.
controller
.
chatType
==
0
?
Column
(
crossAxisAlignment:
CrossAxisAlignment
.
start
,
children:
[
Text
(
'"
${widget.controller.noteTitle}
"'
,
style:
TextStyle
(
fontSize:
12
.
w
,
height:
1.4
,
color:
Colours
.
c9
),),
widget
.
controller
.
noteTitle
.
isEmpty
?
const
SizedBox
():
Text
(
'"
${widget.controller.noteTitle}
"'
,
style:
TextStyle
(
fontSize:
12
.
w
,
height:
1.4
,
color:
Colours
.
c9
),),
Row
(
children:
[
Text
(
'话题'
,
style:
TextStyle
(
fontSize:
14
.
w
,
color:
Colours
.
c3
,
height:
1.5
,
fontWeight:
Fonts
.
medium
),),
...
...
lib/pages/user_discuss_des/controller.dart
浏览文件 @
08c918a2
...
...
@@ -20,6 +20,8 @@ class UserDiscussDesController extends GetxController {
bool
showReply
=
false
;
// 当前要回复的模型
late
DiscussModel
discussModel
;
// 当前要回复父级的模型
late
DiscussModel
fatherDiscussModel
;
@override
...
...
@@ -42,6 +44,9 @@ class UserDiscussDesController extends GetxController {
void
setDiscussModel
(
DiscussModel
model
){
discussModel
=
model
;
}
void
setFatherDiscussModel
(
DiscussModel
model
){
fatherDiscussModel
=
model
;
}
// 删除回复
Future
<
void
>
delComment
({
required
DiscussModel
discussModel
})
async
{
...
...
@@ -69,13 +74,33 @@ class UserDiscussDesController extends GetxController {
title:
''
,
content:
jsonEncode
(
contentMap
)
);
if
(
result
){
Toast
.
show
(
'话题发表成功'
);
Toast
.
show
(
'发表成功'
);
discussModel
.
replyNum
=
discussModel
.
replyNum
!
+
1
;
DiscussModel
tempModel
=
DiscussModel
.
fromJson
(
discussModel
.
toJson
());
tempModel
.
status
=
1
;
tempModel
.
commentsCheck
=
0
;
tempModel
.
isMy
=
1
;
NoteContentModel
contentModel
=
NoteContentModel
(
text:
MediaModel
(
content:
replyInput
.
text
,
privacyStatus:
1
)
);
tempModel
.
content
=
contentModel
;
tempModel
.
content
?.
text
?.
privacyStatus
=
1
;
tempModel
.
replacePersonName
=
discussModel
.
personName
;
tempModel
.
replacePersonPic
=
discussModel
.
personPic
;
tempModel
.
replyNum
=
0
;
fatherDiscussModel
.
commentAll
?.
add
(
tempModel
);
// fatherDiscussModel.replyNum = fatherDiscussModel.commentAll?.length;
}
else
{
Toast
.
show
(
'
话题
发表失败'
);
Toast
.
show
(
'发表失败'
);
}
replyInput
.
text
=
''
;
update
();
// 重置所有信息
// reset();
// setShowChat(false);
...
...
lib/pages/user_discuss_des/widgets/discuss.dart
浏览文件 @
08c918a2
...
...
@@ -79,10 +79,10 @@ class _BuildDiscussState extends State<BuildDiscuss> {
height:
0.5
.
w
,
color:
Colours
.
cF2
,
),
_buildItem
(
widget
.
model
),
_buildItem
(
widget
.
model
,
widget
.
model
),
Container
(
margin:
EdgeInsets
.
only
(
left:
15
.
w
),
child:
_buildListView
(
widget
.
model
.
commentAll
!=
null
?
widget
.
model
.
commentAll
!:[]
)
child:
_buildListView
(
widget
.
model
)
),
Gaps
.
vGaps13
,
Container
(
...
...
@@ -103,7 +103,7 @@ class _BuildDiscussState extends State<BuildDiscuss> {
);
}
Widget
_buildItem
(
DiscussModel
model
,{
int
type
=
0
}){
Widget
_buildItem
(
DiscussModel
fatherModel
,
DiscussModel
model
,{
int
type
=
0
}){
return
Slidable
(
enabled:
type
==
0
?
false
:
model
.
isMy
==
1
?
true
:
false
,
endActionPane:
ActionPane
(
...
...
@@ -157,10 +157,10 @@ class _BuildDiscussState extends State<BuildDiscuss> {
type
==
0
?
Column
(
crossAxisAlignment:
CrossAxisAlignment
.
start
,
children:
[
Row
(
_showText
(
model
).
isEmpty
?
const
SizedBox
():
Row
(
children:
[
Text
(
_showText
(
model
),
style:
TextStyle
(
fontSize:
13
.
w
,
height:
1.5
,
color:
Colours
.
c3
),),
Text
(
_showStatus
(
model
),
style:
TextStyle
(
fontSize:
1
3
.
w
,
height:
1.5
,
color:
AppTheme
.
primary
),),
Text
(
_showStatus
(
model
),
style:
TextStyle
(
fontSize:
1
1
.
w
,
height:
1.5
,
color:
AppTheme
.
primary
),),
],
),
Gaps
.
vGaps10
,
...
...
@@ -171,7 +171,8 @@ class _BuildDiscussState extends State<BuildDiscuss> {
children:
[
TextSpan
(
text:
'回复 '
,
style:
TextStyle
(
fontSize:
13
.
w
,
height:
1.5
,
color:
Colours
.
c3
)),
TextSpan
(
text:
model
.
replacePersonName
??
''
,
style:
TextStyle
(
fontSize:
13
.
w
,
height:
1.5
,
color:
Colours
.
c9
)),
TextSpan
(
text:
':
${model.content?.text?.content??''}
'
,
style:
TextStyle
(
fontSize:
13
.
w
,
height:
1.5
,
color:
Colours
.
c3
)),
TextSpan
(
text:
':
${_showText(model)}
'
,
style:
TextStyle
(
fontSize:
13
.
w
,
height:
1.5
,
color:
Colours
.
c3
)),
TextSpan
(
text:
_showStatus
(
model
),
style:
TextStyle
(
fontSize:
11
.
w
,
height:
1.5
,
color:
AppTheme
.
primary
)),
]
)),
SizedBox
(
height:
10
.
w
,),
...
...
@@ -204,9 +205,11 @@ class _BuildDiscussState extends State<BuildDiscuss> {
// 阅读页讨论列表
widget
.
controller
?.
setShow
();
widget
.
controller
?.
setDiscussModel
(
model
);
widget
.
controller
?.
setFatherDiscussModel
(
fatherModel
);
// 我的讨论详情页列表
widget
.
userDiscussDesController
?.
setShow
();
widget
.
userDiscussDesController
?.
setDiscussModel
(
model
);
widget
.
userDiscussDesController
?.
setFatherDiscussModel
(
fatherModel
);
},
child:
Container
(
height:
25
.
w
,
...
...
@@ -232,38 +235,26 @@ class _BuildDiscussState extends State<BuildDiscuss> {
String
_showText
(
DiscussModel
discussModel
){
String
text
=
''
;
if
(
discussModel
.
commentsCheck
==
0
||
discussModel
.
status
==
1
){
// 是我的
if
(
discussModel
.
isMy
==
1
){
text
=
'
${discussModel.content?.text?.content}
'
;
}
else
{
if
(
discussModel
.
content
?.
text
?.
privacyStatus
==
1
){
text
=
'
${discussModel.content?.text?.content}
'
;
}
}
}
// if(discussModel.isMy == 1){
// text = '${discussModel.content?.text?.content}';
// }
text
=
'
${discussModel.content?.text?.content}
'
;
return
text
;
}
String
_showStatus
(
DiscussModel
discussModel
){
String
text
=
''
;
if
((
discussModel
.
commentsCheck
==
0
&&
discussModel
.
status
==
0
)
||
discussModel
.
status
==
1
){
// 是我的
if
(
discussModel
.
isMy
==
1
){
// 是我的
if
(
discussModel
.
isMy
==
1
){
if
(
discussModel
.
commentsCheck
==
1
){
// 审核中
if
(
discussModel
.
content
?.
text
?.
privacyStatus
==
0
||
discussModel
.
content
?.
text
?.
privacyStatus
==
2
){
if
(
discussModel
.
content
?.
text
?.
privacyStatus
==
0
||
discussModel
.
content
?.
text
?.
privacyStatus
==
2
||
discussModel
.
status
==
0
){
text
=
'(审核中)'
;
}
// 审核未通过
else
if
(
discussModel
.
content
?.
text
?.
privacyStatus
==-
1
){
else
if
(
discussModel
.
content
?.
text
?.
privacyStatus
==-
1
||
discussModel
.
status
==
2
){
text
=
'(审核未通过)'
;
}
// 审核通过
else
{
text
=
''
;
}
}
else
{
}
else
{
// 审核中
if
(
discussModel
.
content
?.
text
?.
privacyStatus
==
0
||
discussModel
.
content
?.
text
?.
privacyStatus
==
2
){
text
=
'(审核中)'
;
...
...
@@ -272,28 +263,18 @@ class _BuildDiscussState extends State<BuildDiscuss> {
else
if
(
discussModel
.
content
?.
text
?.
privacyStatus
==-
1
){
text
=
'(审核未通过)'
;
}
// 审核通过
else
{
text
=
''
;
}
}
}
else
{
if
(
discussModel
.
status
==
0
){
text
=
'(审核中)'
;
}
else
if
(
discussModel
.
status
==
2
){
text
=
'(审核未通过)'
;
}
}
return
text
;
}
Widget
_buildListView
(
List
<
DiscussModel
>
data
){
Widget
_buildListView
(
DiscussModel
model
){
List
<
DiscussModel
>
data
=
model
.
commentAll
!=
null
?
model
.
commentAll
!:[];
return
ListView
.
builder
(
physics:
const
NeverScrollableScrollPhysics
(),
shrinkWrap:
true
,
itemBuilder:
(
BuildContext
context
,
int
index
){
return
_buildItem
(
data
[
index
],
type:
1
);
return
_buildItem
(
model
,
data
[
index
],
type:
1
);
},
itemCount:
data
.
length
,
);
...
...
lib/pages/user_notes_des/widgets/note.dart
浏览文件 @
08c918a2
...
...
@@ -72,7 +72,7 @@ class BuildNote extends StatelessWidget {
// color: Colors.red,
color:
Colours
.
c3
),),
Text
(
_showStatus
(
model
),
style:
TextStyle
(
fontSize:
1
4
.
w
,
height:
1.5
,
color:
AppTheme
.
primary
),),
Text
(
_showStatus
(
model
),
style:
TextStyle
(
fontSize:
1
1
.
w
,
height:
1.5
,
color:
AppTheme
.
primary
),),
],
),
Gaps
.
vGaps13
,
...
...
@@ -102,15 +102,11 @@ class BuildNote extends StatelessWidget {
String
_showText
(
NoteModel
discussModel
){
String
text
=
''
;
// 是我的
if
(
discussModel
.
isMy
==
1
){
text
=
'
${discussModel.noteContent?.text?.content}
'
;
}
else
{
if
(
discussModel
.
noteContent
?.
text
?.
privacyStatus
==
1
){
text
=
'
${discussModel.noteContent?.text?.content}
'
;
}
}
// // 是我的
// if(discussModel.isMy == 1){
// text = '${discussModel.noteContent?.text?.content}';
// }
text
=
'
${discussModel.noteContent?.text?.content}
'
;
return
text
;
}
String
_showStatus
(
NoteModel
discussModel
){
...
...
@@ -130,20 +126,6 @@ class BuildNote extends StatelessWidget {
text
=
''
;
}
}
else
{
// 审核中
if
(
discussModel
.
noteContent
?.
text
?.
privacyStatus
==
0
||
discussModel
.
noteContent
?.
text
?.
privacyStatus
==
2
){
text
=
'(审核中)'
;
}
// 审核未通过
else
if
(
discussModel
.
noteContent
?.
text
?.
privacyStatus
==-
1
){
text
=
'(审核未通过)'
;
}
// 审核通过
else
{
text
=
''
;
}
}
return
text
;
}
// 图片
...
...
@@ -184,7 +166,7 @@ class BuildNote extends StatelessWidget {
child:
Container
(
alignment:
Alignment
.
center
,
color:
model
.
isMy
==
1
?
Colours
.
c9
.
withOpacity
(
0.5
):
Colours
.
c9
.
withOpacity
(
1
),
child:
Text
(
'(审核中)'
,
style:
TextStyle
(
fontSize:
1
4
.
w
,
height:
1.5
,
color:
AppTheme
.
primary
),),
child:
Text
(
'(审核中)'
,
style:
TextStyle
(
fontSize:
1
1
.
w
,
height:
1.5
,
color:
AppTheme
.
primary
),),
)
),
),
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论