Files
jx-print/controllers/app/print_temp.go
邹宗楠 66db5867a4 1
2022-08-25 16:10:01 +08:00

132 lines
3.9 KiB
Go

package app
import (
"git.rosy.net.cn/jx-print/controllers"
"git.rosy.net.cn/jx-print/model"
tempModel "git.rosy.net.cn/jx-print/model/app_model"
printServer "git.rosy.net.cn/jx-print/services/print_server/app_server"
"github.com/gin-gonic/gin"
)
type PrinterTemp struct {
}
var PrinterTempController = new(PrinterTemp)
// AddOrUpdateTemp 模板添加 POST
// @Title 模板添加
// @Description 模板添加
// @Param token cookie string true "用户登录token"
// @Param data body app_model.AddTemp true "请求参数"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /addOrUpdateTemp [post]
func (p *PrinterTemp) AddOrUpdateTemp(c *gin.Context) {
var (
err error
tokenInfo *model.TokenInfo
param = tempModel.AddTemp{}
tempServer = printServer.TempServer{}
)
if err = c.ShouldBind(&param); err != nil {
controllers.BuildErrJson(c, err)
return
}
if tokenInfo = controllers.CheckToken(c); tokenInfo == nil {
return
}
param.UserId = tokenInfo.User.UserID
controllers.CallFunc(c, func() (retVal interface{}, errCode string, err error) {
err = tempServer.AddOrUpdateTemp(&param)
return retVal, "", err
})
}
// DeleteTemp 删除用户自定义模板
// @Title 删除用户自定义模板
// @Description 删除用户自定义模板
// @Param token cookie string true "用户登录token"
// @Param data body app_model.DeleteTemp true "请求参数"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /deleteTemp [delete]
func (p *PrinterTemp) DeleteTemp(c *gin.Context) {
var (
err error
tokenInfo *model.TokenInfo
param = tempModel.DeleteTemp{}
tempServer = printServer.TempServer{}
)
if err = c.ShouldBind(&param); err != nil {
controllers.BuildErrJson(c, err)
return
}
if tokenInfo = controllers.CheckToken(c); tokenInfo == nil {
return
}
controllers.CallFunc(c, func() (retVal interface{}, errCode string, err error) {
err = tempServer.DeleteTemp(param.ID, tokenInfo.User.UserID)
return "", "", err
})
}
// GetUserTempList 获取用户模板,模板不足时填充系统模板
// @Title 获取用户模板
// @Description 获取用户模板
// @Param token cookie string true "用户登录token"
// @Param data body app_model.QueryUserTemp true "请求参数"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /getUserTempList [get]
func (p *PrinterTemp) GetUserTempList(c *gin.Context) {
var (
err error
tokenInfo *model.TokenInfo
param = tempModel.QueryUserTemp{}
tempServer = printServer.TempServer{}
)
if err = c.ShouldBind(&param); err != nil {
controllers.BuildErrJson(c, err)
return
}
if tokenInfo = controllers.CheckToken(c); tokenInfo == nil {
return
}
controllers.CallFunc(c, func() (retVal interface{}, errCode string, err error) {
retVal, err = tempServer.QueryTempList(tokenInfo.User.UserID, param.PrintSn)
return retVal, "", err
})
}
// SwitchTemp 切换模板打印模板
// @Title 切换模板
// @Description 切换模板
// @Param token cookie string true "用户登录token"
// @Param data body app_model.DeleteTemp true "请求参数"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /switchTemp [get]
func (p *PrinterTemp) SwitchTemp(c *gin.Context) {
var (
err error
tokenInfo *model.TokenInfo
param = tempModel.DeleteTemp{}
tempServer = printServer.TempServer{}
)
if err = c.ShouldBind(&param); err != nil {
controllers.BuildErrJson(c, err)
return
}
if tokenInfo = controllers.CheckToken(c); tokenInfo == nil {
return
}
controllers.CallFunc(c, func() (retVal interface{}, errCode string, err error) {
err = tempServer.SwitchTemp(tokenInfo.User.UserID, param.PrintSn, param.ID)
return "", "", err
})
}