feat: anti goods reply

Closes #276

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-02-17 18:49:16 +08:00
parent 0b246d03a6
commit 957c326148
9 changed files with 141 additions and 0 deletions

View File

@@ -34,6 +34,7 @@ abstract class ReplyController extends CommonController {
late final banWordForReply = GStorage.banWordForReply;
late final enableCommAntifraud = GStorage.enableCommAntifraud;
late final antiGoodsReply = GStorage.antiGoodsReply;
@override
void onInit() {
@@ -321,6 +322,7 @@ abstract class ReplyController extends CommonController {
sort: ReplySortType.time.index,
page: 1,
banWordForReply: '',
antiGoodsReply: false,
);
if (context.mounted.not) return;
if (res is Error) {
@@ -348,6 +350,7 @@ abstract class ReplyController extends CommonController {
pageNum: 1,
type: replyType,
banWordForReply: '',
antiGoodsReply: false,
);
if (context.mounted.not) return;
if (res1 is Error) {
@@ -369,6 +372,7 @@ abstract class ReplyController extends CommonController {
type: replyType,
banWordForReply: '',
isCheck: true,
antiGoodsReply: false,
);
if (context.mounted.not) return;
if (res2 is Error) {
@@ -405,6 +409,7 @@ https://api.bilibili.com/x/v2/reply/reply?oid=$oid&pn=1&ps=20&root=${rpid ?? rep
type: replyType,
banWordForReply: '',
isCheck: true,
antiGoodsReply: false,
);
if (res3 is Error) {
break;
@@ -439,6 +444,7 @@ https://api.bilibili.com/x/v2/reply/reply?oid=$oid&pn=1&ps=20&root=${rpid ?? rep
type: replyType,
banWordForReply: '',
isCheck: true,
antiGoodsReply: false,
);
if (res4 is Error) {
break;

View File

@@ -49,6 +49,7 @@ class DynamicDetailController extends ReplyController {
mode: mode.value,
),
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
)
: ReplyHttp.replyList(
isLogin: isLogin,
@@ -58,5 +59,6 @@ class DynamicDetailController extends ReplyController {
sort: sortType.value.index,
page: currentPage,
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
);
}

View File

@@ -83,6 +83,7 @@ class HtmlRenderController extends ReplyController {
mode: mode.value,
),
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
)
: ReplyHttp.replyList(
isLogin: isLogin,
@@ -92,5 +93,6 @@ class HtmlRenderController extends ReplyController {
sort: sortType.value.index,
page: currentPage,
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
);
}

View File

@@ -1980,6 +1980,19 @@ List<SettingsModel> get extraSettings => [
setKey: SettingBoxKey.antiGoodsDyn,
defaultVal: false,
),
SettingsModel(
settingsType: SettingsType.sw1tch,
title: '屏蔽带货评论',
leading: Stack(
alignment: Alignment.center,
children: [
Icon(Icons.shopping_bag_outlined, size: 14),
Icon(Icons.not_interested),
],
),
setKey: SettingBoxKey.antiGoodsReply,
defaultVal: false,
),
SettingsModel(
settingsType: SettingsType.sw1tch,
enableFeedback: true,

View File

@@ -28,6 +28,7 @@ class VideoReplyController extends ReplyController {
mode: mode.value,
),
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
)
: ReplyHttp.replyList(
isLogin: isLogin,
@@ -37,5 +38,6 @@ class VideoReplyController extends ReplyController {
sort: sortType.value.index,
page: currentPage,
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
);
}

View File

@@ -185,6 +185,7 @@ class VideoReplyReplyController extends ReplyController
mode: mode.value,
),
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
)
: GlobalData().grpcReply
? ReplyHttp.replyReplyListGrpc(
@@ -197,6 +198,7 @@ class VideoReplyReplyController extends ReplyController
mode: mode.value,
),
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
)
: ReplyHttp.replyReplyList(
isLogin: isLogin,
@@ -205,6 +207,7 @@ class VideoReplyReplyController extends ReplyController
pageNum: currentPage,
type: replyType.index,
banWordForReply: banWordForReply,
antiGoodsReply: antiGoodsReply,
);
@override