From e19b107ed0e3172438371b0ece7d49ba77db86fd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=B0=8F=E8=8E=AB=E5=94=90=E5=B0=BC?= <1431128779@qq.com>
Date: Wed, 6 Nov 2024 19:23:13 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E6=96=87=E7=AB=A0?=
=?UTF-8?q?=E7=82=B9=E8=B5=9E=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
api/v2/all.api.js | 378 ++--
pagesA/article-detail/article-detail.vue | 2306 +++++++++++-----------
utils/upvote.js | 19 +
3 files changed, 1367 insertions(+), 1336 deletions(-)
create mode 100644 utils/upvote.js
diff --git a/api/v2/all.api.js b/api/v2/all.api.js
index b27409a..93681d6 100644
--- a/api/v2/all.api.js
+++ b/api/v2/all.api.js
@@ -5,212 +5,222 @@ import HaloTokenConfig from '@/config/token.config.js'
import HttpHandler from '@/common/http/request.js'
import {
- getAppConfigs
+ getAppConfigs
} from '@/config/index.js'
export default {
- /**
- * 获取文章列表
- * @param {Object} params 参数
- */
- getPostList: (params) => {
- return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/posts`, params)
- },
+ /**
+ * 获取文章列表
+ * @param {Object} params 参数
+ */
+ getPostList: (params) => {
+ return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/posts`, params)
+ },
- /**
- * 根据名称获取文章
- * @param {String} name 分类名称
- */
- getPostByName: (name) => {
- return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/posts/${name}`, {}, {
- header: {
- 'Wechat-Session-Id': uni.getStorageSync('openid'),
- }
- })
- },
+ /**
+ * 根据名称获取文章
+ * @param {String} name 分类名称
+ */
+ getPostByName: (name) => {
+ return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/posts/${name}`, {}, {
+ header: {
+ 'Wechat-Session-Id': uni.getStorageSync('openid'),
+ }
+ })
+ },
- /**
- * 搜索文章
- * @param {Object} params 数据
- */
- getPostListByKeyword: (params) => {
- return HttpHandler.Get(`/apis/api.halo.run/v1alpha1/indices/post`, params)
- },
+ /**
+ * 搜索文章
+ * @param {Object} params 数据
+ */
+ getPostListByKeyword: (params) => {
+ return HttpHandler.Get(`/apis/api.halo.run/v1alpha1/indices/post`, params)
+ },
- /**
- * 查询分类列表
- * @param {Object} params 查询参数
- */
- getCategoryList: (params) => {
- return HttpHandler.Get('/apis/api.content.halo.run/v1alpha1/categories', params)
- },
- /**
- * 查询分类下的文章
- * @param {String} name 分类名称
- * @param {Object} params 查询参数
- */
- getCategoryPostList: (name, params) => {
- return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/categories/${name}/posts`, params)
- },
+ /**
+ * 查询分类列表
+ * @param {Object} params 查询参数
+ */
+ getCategoryList: (params) => {
+ return HttpHandler.Get('/apis/api.content.halo.run/v1alpha1/categories', params)
+ },
+ /**
+ * 查询分类下的文章
+ * @param {String} name 分类名称
+ * @param {Object} params 查询参数
+ */
+ getCategoryPostList: (name, params) => {
+ return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/categories/${name}/posts`, params)
+ },
- /**
- * 获取评论列表接口(列表数据)
- * @param {Object} params 查询参数
- */
- getPostCommentList: (params) => {
- return HttpHandler.Get(`/apis/api.halo.run/v1alpha1/comments`, params)
- },
+ /**
+ * 获取评论列表接口(列表数据)
+ * @param {Object} params 查询参数
+ */
+ getPostCommentList: (params) => {
+ return HttpHandler.Get(`/apis/api.halo.run/v1alpha1/comments`, params)
+ },
- /**
- * 获取回复列表
- * @param {String} commentName 名称
- * @param {Object} params 查询参数
- */
- getPostCommentReplyList: (commentName, params) => {
- return HttpHandler.Get(`/apis/api.halo.run/v1alpha1/comments/${commentName}/reply`, params)
- },
+ /**
+ * 获取回复列表
+ * @param {String} commentName 名称
+ * @param {Object} params 查询参数
+ */
+ getPostCommentReplyList: (commentName, params) => {
+ return HttpHandler.Get(`/apis/api.halo.run/v1alpha1/comments/${commentName}/reply`, params)
+ },
- // 提交评论
- addPostComment: (data) => {
- return HttpHandler.Post(`/apis/api.halo.run/v1alpha1/comments`, data)
- },
- // 提交回复
- addPostCommentReply: (commentName, data) => {
- return HttpHandler.Post(`/apis/api.halo.run/v1alpha1/comments/${commentName}/reply`, data)
- },
+ // 提交评论
+ addPostComment: (data) => {
+ return HttpHandler.Post(`/apis/api.halo.run/v1alpha1/comments`, data)
+ },
+ // 提交回复
+ addPostCommentReply: (commentName, data) => {
+ return HttpHandler.Post(`/apis/api.halo.run/v1alpha1/comments/${commentName}/reply`, data)
+ },
- /**
- * 获取标签列表
- * @param {Object} params 查询参数
- */
- getTagList: (params) => {
- return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/tags`, params)
- },
+ /**
+ * 获取标签列表
+ * @param {Object} params 查询参数
+ */
+ getTagList: (params) => {
+ return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/tags`, params)
+ },
- /**
- * 根据标签获取文章列表
- * @param {String} tagName 参数
- * @param {Object} params 查询参数
- */
- getPostByTagName: (tagName, params) => {
- return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/tags/${tagName}/posts`, params)
- },
+ /**
+ * 根据标签获取文章列表
+ * @param {String} tagName 参数
+ * @param {Object} params 查询参数
+ */
+ getPostByTagName: (tagName, params) => {
+ return HttpHandler.Get(`/apis/api.content.halo.run/v1alpha1/tags/${tagName}/posts`, params)
+ },
- /**
- * 获取瞬间列表
- */
- getMomentList: (params) => {
- return HttpHandler.Get(`/apis/moment.halo.run/v1alpha1/moments`, params, {
- custom: {
- systemToken: HaloTokenConfig.systemToken
- }
- })
- },
+ /**
+ * 获取瞬间列表
+ */
+ getMomentList: (params) => {
+ return HttpHandler.Get(`/apis/moment.halo.run/v1alpha1/moments`, params, {
+ custom: {
+ systemToken: HaloTokenConfig.systemToken
+ }
+ })
+ },
- /**
- * 查询站点统计信息
- */
- getBlogStatistics: () => {
- return HttpHandler.Get(`/apis/api.halo.run/v1alpha1/stats/-`, {})
- },
+ /**
+ * 查询站点统计信息
+ */
+ getBlogStatistics: () => {
+ return HttpHandler.Get(`/apis/api.halo.run/v1alpha1/stats/-`, {})
+ },
- /**
- * 获取相册分组
- */
- getPhotoGroupList: (params) => {
- return HttpHandler.Get(`/apis/core.halo.run/v1alpha1/photogroups`, params, {
- custom: {
- systemToken: HaloTokenConfig.systemToken
- }
- })
- },
+ /**
+ * 获取相册分组
+ */
+ getPhotoGroupList: (params) => {
+ return HttpHandler.Get(`/apis/core.halo.run/v1alpha1/photogroups`, params, {
+ custom: {
+ systemToken: HaloTokenConfig.systemToken
+ }
+ })
+ },
- /**
- * 根据分组获取相册
- */
- getPhotoListByGroupName: (params) => {
- return HttpHandler.Get(`/apis/console.api.photo.halo.run/v1alpha1/photos`, params, {
- custom: {
- systemToken: HaloTokenConfig.systemToken
- }
- })
- },
+ /**
+ * 根据分组获取相册
+ */
+ getPhotoListByGroupName: (params) => {
+ return HttpHandler.Get(`/apis/console.api.photo.halo.run/v1alpha1/photos`, params, {
+ custom: {
+ systemToken: HaloTokenConfig.systemToken
+ }
+ })
+ },
- /**
- * 获取友链分组
- */
- getFriendLinkGroupList: (params) => {
- return HttpHandler.Get(`/apis/core.halo.run/v1alpha1/linkgroups`, params,{
- custom: {
- systemToken: HaloTokenConfig.systemToken
- }
- })
- },
+ /**
+ * 获取友链分组
+ */
+ getFriendLinkGroupList: (params) => {
+ return HttpHandler.Get(`/apis/core.halo.run/v1alpha1/linkgroups`, params, {
+ custom: {
+ systemToken: HaloTokenConfig.systemToken
+ }
+ })
+ },
- /**
- * 获取友链
- */
- getFriendLinkList: (params) => {
- return HttpHandler.Get(`/apis/api.plugin.halo.run/v1alpha1/plugins/PluginLinks/links`, params)
- },
+ /**
+ * 获取友链
+ */
+ getFriendLinkList: (params) => {
+ return HttpHandler.Get(`/apis/api.plugin.halo.run/v1alpha1/plugins/PluginLinks/links`, params)
+ },
- /**
- * 校验文章访问密码
- */
- checkPostVerifyCode: (verifyCode, postId) => {
- return HttpHandler.Get(`/apis/tools.muyin.site/v1alpha1/verificationCode/check?code=${verifyCode}`, null, {
- header: {
- 'Authorization': getAppConfigs().pluginConfig.toolsPlugin?.Authorization,
- 'Wechat-Session-Id': uni.getStorageSync('openid'),
- 'Post-Id': postId
- }
- })
- },
+ /**
+ * 校验文章访问密码
+ */
+ checkPostVerifyCode: (verifyCode, postId) => {
+ return HttpHandler.Get(`/apis/tools.muyin.site/v1alpha1/verificationCode/check?code=${verifyCode}`, null, {
+ header: {
+ 'Authorization': getAppConfigs().pluginConfig.toolsPlugin?.Authorization,
+ 'Wechat-Session-Id': uni.getStorageSync('openid'),
+ 'Post-Id': postId
+ }
+ })
+ },
- /**
- * 校验文章访问密码
- */
- checkPostPasswordAccess: (password, postId) => {
- return HttpHandler.Get(`/apis/tools.muyin.site/v1alpha1/visitPassword/checkPost?password=${password}`,
- null, {
- header: {
- 'Authorization': getAppConfigs().pluginConfig.toolsPlugin?.Authorization,
- 'Wechat-Session-Id': uni.getStorageSync('openid'),
- 'Post-Id': postId
- }
- })
- },
+ /**
+ * 校验文章访问密码
+ */
+ checkPostPasswordAccess: (password, postId) => {
+ return HttpHandler.Get(`/apis/tools.muyin.site/v1alpha1/visitPassword/checkPost?password=${password}`,
+ null, {
+ header: {
+ 'Authorization': getAppConfigs().pluginConfig.toolsPlugin?.Authorization,
+ 'Wechat-Session-Id': uni.getStorageSync('openid'),
+ 'Post-Id': postId
+ }
+ })
+ },
+
+ /**
+ * 获取文章验证码
+ */
+ getPostVerifyCode: () => {
+ return HttpHandler.Get(`/apis/tools.muyin.site/v1alpha1/verificationCode/create`, null, {
+ header: {
+ 'Authorization': getAppConfigs().pluginConfig.toolsPlugin?.Authorization,
+ }
+ })
+ },
+ /**
+ * 提交友情链接
+ */
+ submitLink(form) {
+ return HttpHandler.Post(`/apis/linksSubmit.muyin.site/v1alpha1/submit`, form, null)
+ },
+ /**
+ * 获取二维码信息
+ */
+ getQRCodeInfo: (key) => {
+ return HttpHandler.Get(`/apis/api.uni.uhalo.pro/v1alpha1/plugins/plugin-uni-halo/getQRCodeInfo/${key}`,
+ null, {})
+ },
+ /**
+ * 获取二维码图片
+ */
+ getQRCodeImg: (postId) => {
+ return HttpHandler.Get(`/apis/api.uni.uhalo.pro/v1alpha1/plugins/plugin-uni-halo/getQRCodeImg/${postId}`,
+ null, {})
+ },
+ /**
+ * 点赞
+ * @param {*} data ={group, plural, name}
+ */
+ submitUpvote(data) {
+ return HttpHandler.Post(`/apis/api.halo.run/v1alpha1/trackers/upvote`, data, {})
+ }
- /**
- * 获取文章验证码
- */
- getPostVerifyCode: () => {
- return HttpHandler.Get(`/apis/tools.muyin.site/v1alpha1/verificationCode/create`, null, {
- header: {
- 'Authorization': getAppConfigs().pluginConfig.toolsPlugin?.Authorization,
- }
- })
- },
- /**
- * 提交友情链接
- */
- submitLink(form) {
- return HttpHandler.Post(`/apis/linksSubmit.muyin.site/v1alpha1/submit`, form, null)
- },
- /**
- * 获取二维码信息
- */
- getQRCodeInfo: (key) => {
- return HttpHandler.Get(`/apis/api.uni.uhalo.pro/v1alpha1/plugins/plugin-uni-halo/getQRCodeInfo/${key}`, null,)
- },
- /**
- * 获取二维码图片
- */
- getQRCodeImg: (postId) => {
- return HttpHandler.Get(`/apis/api.uni.uhalo.pro/v1alpha1/plugins/plugin-uni-halo/getQRCodeImg/${postId}`, null,)
- }
}
diff --git a/pagesA/article-detail/article-detail.vue b/pagesA/article-detail/article-detail.vue
index ef39a85..2f248c8 100644
--- a/pagesA/article-detail/article-detail.vue
+++ b/pagesA/article-detail/article-detail.vue
@@ -1,1232 +1,1234 @@
-
-
-
-
-
-
-
-
-
- {{ result.spec.title }}
-
-
- 作者:{{ result.owner.displayName }}
-
- 时间:{{ {d: result.spec.publishTime, f: 'yyyy年MM月dd日 星期w'} | formatTime }}
-
-
+
+
+
+
+
+
+
+
+
+ {{ result.spec.title }}
+
+
+ 作者:{{ result.owner.displayName }}
+
+ 时间:{{ {d: result.spec.publishTime, f: 'yyyy年MM月dd日 星期w'} | formatTime }}
+
+
-
-
-
-
-
- {{ result.stats.visit }}
- 阅读
-
-
- {{ result.stats.upvote }}
- 喜欢
-
-
- {{ result.stats.comment }}
- 评论
-
-
- {{ result.content.raw.length }}
- 字数
-
-
-
-
-
-
-
- 分类:
- 未选择分类
-
-
- {{ item.spec.displayName }}
-
-
-
-
- 标签:
- 未选择标签
-
-
- {{ item.spec.displayName }}
-
-
-
-
- 原文:
-
- {{ originalURL }}
-
- 阅读原文
-
-
-
-
-
-
-
-
-
-
-
-
- 以下内容已隐藏,请验证后查看完整内容……
-
-
-
- 文章部分内容已加密点击解锁
-
-
-
-
-
+
+
+
+
+
+ {{ result.stats.visit }}
+ 阅读
+
+
+ {{ result.stats.upvote }}
+ 喜欢
+
+
+ {{ result.stats.comment }}
+ 评论
+
+
+ {{ result.content.raw.length }}
+ 字数
+
+
+
+
+
+
+
+ 分类:
+ 未选择分类
+
+
+ {{ item.spec.displayName }}
+
+
+
+
+ 标签:
+ 未选择标签
+
+
+ {{ item.spec.displayName }}
+
+
+
+
+ 原文:
+
+ {{ originalURL }}
+
+ 阅读原文
+
+
+
+
+
+
+
+
+
+
+
+
+ 以下内容已隐藏,请验证后查看完整内容……
+
+
+
+ 文章部分内容已加密点击解锁
+
+
+
+
+
-
-
- 版权声明
-
-
- 版权归属:{{ postDetailConfig.copyrightAuthor }}
-
-
- 版权说明:{{ postDetailConfig.copyrightDesc }}
-
-
- 侵权处理:{{ postDetailConfig.copyrightViolation }}
-
-
-
+
+
+ 版权声明
+
+
+ 版权归属:{{ postDetailConfig.copyrightAuthor }}
+
+
+ 版权说明:{{ postDetailConfig.copyrightDesc }}
+
+
+ 侵权处理:{{ postDetailConfig.copyrightViolation }}
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
- 评论详情
-
-
+
+
+
+
+ 评论详情
+
+
-
-
-
-
- 加载中,请稍等...
-
-
-
-
- 刷新试试
-
-
-
-
-
-
-
-
+
+
+
+
+ 加载中,请稍等...
+
+
+
+
+ 刷新试试
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
- 海报正在生成...
-
-
-
-
-
- 保存到相册
-
-
- 分享给好友
-
-
- 关 闭
-
-
-
-
-
+
+
+
+
+
+ 海报正在生成...
+
+
+
+
+
+ 保存到相册
+
+
+ 分享给好友
+
+
+ 关 闭
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
\ No newline at end of file
+ &__btn {
+ flex-grow: 1;
+ flex-shrink: 0;
+ display: block;
+ text-align: right;
+ }
+ }
+}
+
diff --git a/utils/upvote.js b/utils/upvote.js
new file mode 100644
index 0000000..d43fd54
--- /dev/null
+++ b/utils/upvote.js
@@ -0,0 +1,19 @@
+export const upvote = {
+ get(key) {
+ const data = uni.getStorageSync(`upvote.${key}.halo.run`)
+ if (data) {
+ return JSON.parse(data)
+ } else {
+ return []
+ }
+ },
+ has(key, name) {
+ const list = this.get(key)
+ if (list.length == 0) return false;
+ return list.includes(name)
+ },
+ set(key, name) {
+ const list = this.get(key)
+ uni.setStorageSync(`upvote.${key}.halo.run`, JSON.stringify([...list, name]))
+ }
+}
\ No newline at end of file