Skip to content

Commit 2b26c2d

Browse files
committed
feat: 链接附件时给附件添加个条目标签
1 parent 37bf14c commit 2b26c2d

8 files changed

Lines changed: 24 additions & 12 deletions

File tree

CHANGELOG.MD

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11

2+
# 17.1.3
3+
4+
- 链接附件时给附件添加个条目标签
5+
26
# 17.1.2
37

48
- 修复添加标签的问题

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ext {
1414
springContext = '6.0.3'
1515
pf4j = '3.8.0'
1616
lombok = '1.18.24'
17-
libFile = 'lib/api-0.17.0.jar'
17+
libFile = 'lib/api-0.17.4.jar'
1818
}
1919

2020

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
group=run.ikaros.plugin
22
description=A mikan plugin for ikaros.
3-
version=17.1.2
3+
version=17.1.3
Binary file not shown.

src/main/java/run/ikaros/plugin/mikan/MikanSubHandler.java

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,11 @@
1414
import run.ikaros.api.core.attachment.AttachmentReferenceOperate;
1515
import run.ikaros.api.core.subject.Subject;
1616
import run.ikaros.api.core.subject.SubjectOperate;
17+
import run.ikaros.api.core.tag.Tag;
18+
import run.ikaros.api.core.tag.TagOperate;
1719
import run.ikaros.api.infra.properties.IkarosProperties;
1820
import run.ikaros.api.infra.utils.FileUtils;
19-
import run.ikaros.api.store.enums.AttachmentReferenceType;
20-
import run.ikaros.api.store.enums.AttachmentType;
21-
import run.ikaros.api.store.enums.FileType;
22-
import run.ikaros.api.store.enums.SubjectSyncPlatform;
21+
import run.ikaros.api.store.enums.*;
2322
import run.ikaros.plugin.mikan.qbittorrent.QbTorrentInfoFilter;
2423
import run.ikaros.plugin.mikan.qbittorrent.QbittorrentClient;
2524
import run.ikaros.plugin.mikan.qbittorrent.model.QbTorrentInfo;
@@ -47,18 +46,20 @@ public class MikanSubHandler {
4746
private final SubjectOperate subjectOperate;
4847
private final AttachmentOperate attachmentOperate;
4948
private final AttachmentReferenceOperate attachmentReferenceOperate;
49+
private final TagOperate tagOperate;
5050
private final IkarosProperties ikarosProperties;
5151
private RuntimeMode pluginRuntimeMode;
5252

5353
public MikanSubHandler(MikanClient mikanClient, QbittorrentClient qbittorrentClient,
5454
SubjectOperate subjectOperate, AttachmentOperate attachmentOperate,
55-
AttachmentReferenceOperate attachmentReferenceOperate,
55+
AttachmentReferenceOperate attachmentReferenceOperate, TagOperate tagOperate,
5656
IkarosProperties ikarosProperties) {
5757
this.mikanClient = mikanClient;
5858
this.qbittorrentClient = qbittorrentClient;
5959
this.subjectOperate = subjectOperate;
6060
this.attachmentOperate = attachmentOperate;
6161
this.attachmentReferenceOperate = attachmentReferenceOperate;
62+
this.tagOperate = tagOperate;
6263
this.ikarosProperties = ikarosProperties;
6364
}
6465

@@ -177,9 +178,16 @@ private Mono<Subject> matchingSingleFile(Subject subject, String fileName, Long
177178
return attachmentOperate.findByTypeAndParentIdAndName(AttachmentType.File, parentId,
178179
fileName)
179180
.map(Attachment::getId)
180-
.flatMap(attId -> attachmentReferenceOperate
181+
.flatMap(attId -> tagOperate.create(Tag.builder()
182+
.createTime(LocalDateTime.now())
183+
.type(TagType.ATTACHMENT)
184+
.masterId(attId)
185+
.name("subject:" + subject.getId())
186+
.userId(-1L)
187+
.build()))
188+
.flatMap(tag -> attachmentReferenceOperate
181189
.matchingAttachmentsAndSubjectEpisodes(
182-
subject.getId(), new Long[]{attId}, true))
190+
subject.getId(), new Long[]{tag.getMasterId()}, true))
183191
.then(Mono.just(subject));
184192
}
185193

src/main/resources/plugin.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ name: PluginMikan
44
# plugin entry class that extends BasePlugin
55
clazz: run.ikaros.plugin.mikan.MikanPlugin
66
# plugin 'version' is a valid semantic version string (see semver.org).
7-
version: 17.1.1
8-
requires: ">=0.17.0"
7+
version: 17.1.3
8+
requires: ">=0.17.4"
99
author:
1010
name: Ikaros OSS Team
1111
website: https://github.com/ikaros-dev

src/test/java/run/ikaros/plugin/mikan/MikanSubHandlerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ void parseMikanSubRssAndAddToQbittorrent() {
3131
qc.setBaseSavePath("C:\\Users\\chivehao\\Videos\\Tests");
3232
qc.setConfig(config);
3333

34-
MikanSubHandler mikanSubHandler = new MikanSubHandler(mc, qc, null, null, null, null);
34+
MikanSubHandler mikanSubHandler = new MikanSubHandler(mc, qc, null, null, null, null, null);
3535

3636
StepVerifier.create(mikanSubHandler.parseMikanSubRssAndAddToQbittorrent())
3737
.verifyComplete();

0 commit comments

Comments
 (0)