2022-09-22 08:16:04 +00:00
|
|
|
package v1
|
|
|
|
|
|
|
|
import (
|
2022-10-17 08:32:31 +00:00
|
|
|
"github.com/1Panel-dev/1Panel/backend/app/api/v1/helper"
|
2022-12-14 07:08:21 +00:00
|
|
|
"github.com/1Panel-dev/1Panel/backend/app/dto/request"
|
2022-10-17 08:32:31 +00:00
|
|
|
"github.com/1Panel-dev/1Panel/backend/constant"
|
2022-09-22 08:16:04 +00:00
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
)
|
|
|
|
|
2022-10-11 08:27:58 +00:00
|
|
|
func (b *BaseApi) SearchApp(c *gin.Context) {
|
2022-12-14 07:08:21 +00:00
|
|
|
var req request.AppSearch
|
2022-09-22 08:16:04 +00:00
|
|
|
if err := c.ShouldBindJSON(&req); err != nil {
|
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrBadRequest, constant.ErrTypeInvalidParams, err)
|
|
|
|
return
|
|
|
|
}
|
2022-10-11 08:27:58 +00:00
|
|
|
list, err := appService.PageApp(req)
|
2022-09-22 08:16:04 +00:00
|
|
|
if err != nil {
|
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrInternalServer, constant.ErrTypeInternalServer, err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
helper.SuccessWithData(c, list)
|
|
|
|
}
|
|
|
|
|
2022-10-11 08:27:58 +00:00
|
|
|
func (b *BaseApi) SyncApp(c *gin.Context) {
|
2022-09-29 10:16:56 +00:00
|
|
|
if err := appService.SyncAppList(); err != nil {
|
2022-09-22 08:16:04 +00:00
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrInternalServer, constant.ErrTypeInternalServer, err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
helper.SuccessWithData(c, "")
|
|
|
|
}
|
2022-09-23 08:33:55 +00:00
|
|
|
|
|
|
|
func (b *BaseApi) GetApp(c *gin.Context) {
|
2022-11-03 09:06:48 +00:00
|
|
|
id, err := helper.GetParamID(c)
|
2022-09-23 08:33:55 +00:00
|
|
|
if err != nil {
|
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrBadRequest, constant.ErrTypeInvalidParams, err)
|
|
|
|
return
|
|
|
|
}
|
2022-11-03 09:06:48 +00:00
|
|
|
appDTO, err := appService.GetApp(id)
|
2022-09-23 08:33:55 +00:00
|
|
|
if err != nil {
|
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrInternalServer, constant.ErrTypeInternalServer, err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
helper.SuccessWithData(c, appDTO)
|
|
|
|
}
|
|
|
|
func (b *BaseApi) GetAppDetail(c *gin.Context) {
|
2022-11-03 09:06:48 +00:00
|
|
|
appId, err := helper.GetIntParamByKey(c, "appId")
|
2022-09-23 08:33:55 +00:00
|
|
|
if err != nil {
|
2022-11-03 09:06:48 +00:00
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrBadRequest, constant.ErrTypeInternalServer, nil)
|
2022-09-23 08:33:55 +00:00
|
|
|
return
|
|
|
|
}
|
|
|
|
version := c.Param("version")
|
2022-11-03 09:06:48 +00:00
|
|
|
appDetailDTO, err := appService.GetAppDetail(appId, version)
|
2022-09-23 08:33:55 +00:00
|
|
|
if err != nil {
|
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrInternalServer, constant.ErrTypeInternalServer, err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
helper.SuccessWithData(c, appDetailDTO)
|
|
|
|
}
|
2022-09-26 08:32:40 +00:00
|
|
|
|
|
|
|
func (b *BaseApi) InstallApp(c *gin.Context) {
|
2022-12-14 07:08:21 +00:00
|
|
|
var req request.AppInstallCreate
|
2022-09-26 08:32:40 +00:00
|
|
|
if err := c.ShouldBindJSON(&req); err != nil {
|
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrBadRequest, constant.ErrTypeInvalidParams, err)
|
|
|
|
return
|
|
|
|
}
|
2022-11-02 07:19:14 +00:00
|
|
|
install, err := appService.Install(req.Name, req.AppDetailId, req.Params)
|
|
|
|
if err != nil {
|
2022-09-26 08:32:40 +00:00
|
|
|
helper.ErrorWithDetail(c, constant.CodeErrInternalServer, constant.ErrTypeInternalServer, err)
|
|
|
|
return
|
|
|
|
}
|
2022-11-02 07:19:14 +00:00
|
|
|
helper.SuccessWithData(c, install)
|
2022-09-26 08:32:40 +00:00
|
|
|
}
|