add printer get printers

This commit is contained in:
suyl
2021-07-08 14:53:20 +08:00
parent ace0d7e5f3
commit 9be410cec6
7 changed files with 265 additions and 0 deletions

View File

@@ -106,3 +106,11 @@ func captchaVerify(c *gin.Context, code string) bool {
return false
}
}
func buildErrJson(c *gin.Context, err error) {
c.JSON(http.StatusOK, &CallBack{
Code: model.ErrCodeNormal,
Desc: err.Error(),
})
globals.SugarLogger.Debugf("End API :%s error:%v:", c.Request.URL, err)
}

View File

@@ -0,0 +1,73 @@
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
}