mirror of
https://github.com/halejohn/Cloudreve.git
synced 2026-01-26 09:34:57 +08:00
Feat: list/search/update/delete shares
This commit is contained in:
@@ -33,6 +33,50 @@ func GetShare(c *gin.Context) {
|
||||
}
|
||||
}
|
||||
|
||||
// ListShare 列出分享
|
||||
func ListShare(c *gin.Context) {
|
||||
var service share.ShareListService
|
||||
if err := c.ShouldBindQuery(&service); err == nil {
|
||||
res := service.List(c, CurrentUser(c))
|
||||
c.JSON(200, res)
|
||||
} else {
|
||||
c.JSON(200, ErrorResponse(err))
|
||||
}
|
||||
}
|
||||
|
||||
// SearchShare 搜索分享
|
||||
func SearchShare(c *gin.Context) {
|
||||
var service share.ShareListService
|
||||
if err := c.ShouldBindQuery(&service); err == nil {
|
||||
res := service.Search(c)
|
||||
c.JSON(200, res)
|
||||
} else {
|
||||
c.JSON(200, ErrorResponse(err))
|
||||
}
|
||||
}
|
||||
|
||||
// UpdateShare 更新分享属性
|
||||
func UpdateShare(c *gin.Context) {
|
||||
var service share.ShareUpdateService
|
||||
if err := c.ShouldBindJSON(&service); err == nil {
|
||||
res := service.Update(c)
|
||||
c.JSON(200, res)
|
||||
} else {
|
||||
c.JSON(200, ErrorResponse(err))
|
||||
}
|
||||
}
|
||||
|
||||
// DeleteShare 删除分享
|
||||
func DeleteShare(c *gin.Context) {
|
||||
var service share.Service
|
||||
if err := c.ShouldBindUri(&service); err == nil {
|
||||
res := service.Delete(c, CurrentUser(c))
|
||||
c.JSON(200, res)
|
||||
} else {
|
||||
c.JSON(200, ErrorResponse(err))
|
||||
}
|
||||
}
|
||||
|
||||
// GetShareDownload 创建分享下载会话
|
||||
func GetShareDownload(c *gin.Context) {
|
||||
var service share.Service
|
||||
|
||||
@@ -320,6 +320,10 @@ func InitMasterRouter() *gin.Engine {
|
||||
{
|
||||
// 创建新分享
|
||||
share.POST("", controllers.CreateShare)
|
||||
// 列出我的分享
|
||||
share.GET("", controllers.ListShare)
|
||||
// 搜索公共分享
|
||||
share.GET("search", controllers.SearchShare)
|
||||
// 转存他人分享
|
||||
share.POST("save/:id",
|
||||
middleware.ShareAvailable(),
|
||||
@@ -327,6 +331,16 @@ func InitMasterRouter() *gin.Engine {
|
||||
middleware.BeforeShareDownload(),
|
||||
controllers.SaveShare,
|
||||
)
|
||||
// 更新分享属性
|
||||
share.PATCH(":id",
|
||||
middleware.ShareAvailable(),
|
||||
middleware.ShareOwner(),
|
||||
controllers.UpdateShare,
|
||||
)
|
||||
// 删除分享
|
||||
share.DELETE(":id",
|
||||
controllers.DeleteShare,
|
||||
)
|
||||
}
|
||||
|
||||
// 用户标签
|
||||
|
||||
Reference in New Issue
Block a user