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(¶m); 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, 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"` 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(¶m); 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 } //删除打印机 POST func DelPrinters(c *gin.Context) { var ( err error tokenInfo *model.TokenInfo param = &struct { AppID int `json:"app_id" form:"app_id" binding:"required"` PrintNos string `json:"print_nos" form:"print_nos" binding:"required"` //打印机编号s }{} printNos []string ) globals.SugarLogger.Debugf("Begin API :%s params: %v ip: %s", c.Request.URL, c.Params, c.ClientIP()) if err = c.Bind(¶m); err != nil { buildErrJson(c, err) return } if tokenInfo = checkToken(c); tokenInfo == nil { return } if err = utils.UnmarshalUseNumber([]byte(param.PrintNos), &printNos); err != nil { buildErrJson(c, err) return } if !callFunc(c, func() (retVal interface{}, errCode string, err error) { err = services.DelPrinters(c, param.AppID, tokenInfo, printNos) return retVal, "", err }) { return } return } //更新打印机 POST func UpdatePrinter(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" binding:"required"` //打印机编号 Name string `json:"name" form:"name"` //打印机备注,模糊 SIM string `json:"sim" form:"sim"` //sim卡 }{} ) globals.SugarLogger.Debugf("Begin API :%s params: %v ip: %s", c.Request.URL, c.Params, c.ClientIP()) if err = c.Bind(¶m); err != nil { buildErrJson(c, err) return } if tokenInfo = checkToken(c); tokenInfo == nil { return } if !callFunc(c, func() (retVal interface{}, errCode string, err error) { err = services.UpdatePrinter(c, param.AppID, tokenInfo, param.PrintNo, param.Name, param.SIM) return retVal, "", err }) { return } return }