Skip to content

Commit bda982d

Browse files
committed
fix: lower db pressure and make use of type
1 parent 61a3252 commit bda982d

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

source/proxies/rss-feed.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,9 @@ export async function getSubscribedCountByUserId(
149149
}
150150
}
151151

152-
export async function updateFeed(feed: Partial<Feed>): Promise<number> {
152+
export async function updateFeed(
153+
feed: Partial<Feed> & { feed_id: number }
154+
): Promise<number> {
153155
try {
154156
return await db('rss_feed').where('feed_id', feed.feed_id).update(feed);
155157
} catch (e) {

source/utils/fetch.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,14 +65,19 @@ async function fetch(feedModal: Feed): Promise<Option<any[]>> {
6565
const feed = await parseString(res.body);
6666

6767
const items = feed.items.slice(0, item_num);
68-
const updatedFeedModal: Partial<Feed> = {
68+
const updatedFeedModal: Partial<Feed> & { feed_id: number } = {
6969
feed_id: feedModal.feed_id,
7070
error_count: 0
7171
};
72-
if (feed.title !== feedModal.feed_title) {
73-
updatedFeedModal.feed_title = feed.title;
72+
if (
73+
feedModal.error_count !== 0 ||
74+
feed.title !== feedModal.feed_title
75+
) {
76+
if (feed.title !== feedModal.feed_title) {
77+
updatedFeedModal.feed_title = feed.title;
78+
}
79+
await updateFeed(updatedFeedModal);
7480
}
75-
await updateFeed(updatedFeedModal);
7681
return Optional(
7782
items.map((item) => {
7883
const { link, title, id } = item;

0 commit comments

Comments
 (0)