Files
jx-print/controllers/print_controller.go
2021-07-08 14:53:20 +08:00

74 lines
2.2 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package controllers
import (
"git.rosy.net.cn/jx-print/globals"
"git.rosy.net.cn/jx-print/model"
"git.rosy.net.cn/jx-print/services"
"git.rosy.net.cn/jx-print/utils"
"github.com/gin-gonic/gin"
)
//添加打印机 POST
func AddPrinters(c *gin.Context) {
var (
err error
tokenInfo *model.TokenInfo
param = &struct {
AppID int `json:"app_id" form:"app_id" binding:"required"`
Prints string `json:"prints" form:"prints" binding:"required"`
}{}
printInfos []*model.PrintInfo
)
globals.SugarLogger.Debugf("Begin API :%s params: %v ip: %s", c.Request.URL, c.Params, c.ClientIP())
if err = c.Bind(&param); err != nil {
buildErrJson(c, err)
return
}
if tokenInfo = checkToken(c); tokenInfo == nil {
return
}
if err = utils.UnmarshalUseNumber([]byte(param.Prints), &printInfos); err != nil {
buildErrJson(c, err)
return
}
if !callFunc(c, func() (retVal interface{}, errCode string, err error) {
err = services.AddPrinters(c, tokenInfo.User.UserID, param.AppID, printInfos)
return retVal, "", err
}) {
return
}
return
}
//查询打印机 GET
func GetPrinters(c *gin.Context) {
var (
err error
tokenInfo *model.TokenInfo
param = &struct {
AppID int `json:"app_id" form:"app_id" binding:"required"`
PrintNo string `json:"print_no" form:"print_no"` //打印机编号
Name string `json:"name" form:"name"` //打印机备注,模糊
Status int `json:"status" form:"status"` //打印机状态。正常还是缺纸
IsOnline int `json:"is_online" form:"is_online"` //在线状态。1在线0离线
Offset int `json:"offset" form:"offset" binding:"required"`
PageSize int `json:"page_size" form:"page_size" binding:"required"`
}{}
)
globals.SugarLogger.Debugf("Begin API :%s params: %v ip: %s", c.Request.URL, c.Params, c.ClientIP())
if err = c.Bind(&param); err != nil {
buildErrJson(c, err)
return
}
if tokenInfo = checkToken(c); tokenInfo == nil {
return
}
if !callFunc(c, func() (retVal interface{}, errCode string, err error) {
retVal, err = services.GetPrinters(c, param.AppID, param.PrintNo, param.Name, param.Status, param.IsOnline, param.Offset, param.PageSize)
return retVal, "", err
}) {
return
}
return
}