diff --git a/business/jxstore/cms/api_print.go b/business/jxstore/cms/api_print.go index 72bdcfb0d..f8e23a51a 100644 --- a/business/jxstore/cms/api_print.go +++ b/business/jxstore/cms/api_print.go @@ -268,6 +268,10 @@ func DelPrinter(appID int, printNos []string, storeId string) (err error) { return err } +func QueryPrintList(printNo, printKey string, status, isOnline int, page, size int) ([]*model.Printer, error) { + prints, err := dao.QueryPrintList(dao.GetDB(), printNo, printKey, status, isOnline, page, size) + return prints, err +} func UpdatePrinter(appID int, printNo string, name, sim, sound *string, volume *int) (err error) { var ( db = dao.GetDB() diff --git a/business/model/dao/dao_print.go b/business/model/dao/dao_print.go index c7e8900ec..27ac423fe 100644 --- a/business/model/dao/dao_print.go +++ b/business/model/dao/dao_print.go @@ -124,3 +124,33 @@ func DeletePrintMsg() { globals.SugarLogger.Debugf("定时删除超过一个月的打印信息:%d 条", num) return } + +func QueryPrintList(db *DaoDB, printNo, printKey string, status, isOnline int, page, size int) (print []*model.Printer, err error) { + sql := ` + SELECT * FROM printer WHERE 1=1 + ` + sqlParams := []interface{}{} + if printNo != "" { + sql += ` AND print_no = ?` + sqlParams = append(sqlParams, printNo) + } + if printKey != "" { + sql += ` AND print_key = ?` + sqlParams = append(sqlParams, printKey) + } + if status != model.PrintMsgAll { + sql += ` AND status = ?` + sqlParams = append(sqlParams, status) + } + if status != model.PrintMsgAll { + sql += ` AND is_online = ?` + sqlParams = append(sqlParams, isOnline) + } + sql += ` AND deleted_at = ?` + sqlParams = append(sqlParams, utils.DefaultTimeValue) + sql += ` ORDER BY status desc,is_online desc LIMIT ? OFFSET ? ` + sqlParams = append(sqlParams, size, page) + + err = GetRows(db, &print, sql, sqlParams...) + return print, err +} diff --git a/controllers/api_controller.go b/controllers/api_controller.go index d70883f9b..14fcba018 100644 --- a/controllers/api_controller.go +++ b/controllers/api_controller.go @@ -218,6 +218,54 @@ func (c *ApiController) AddPrinter(dataMap map[string]interface{}) (data, errCod return "", errCode, err } +type QueryPrintList struct { +} + +func (c *ApiController) QueryPrintList(dataMap map[string]interface{}) (data []*model.Printer, errCode string, err error) { + var ( + printNo string + printKey string + status int + isOnline int + page int + size int + ) + + globals.SugarLogger.Debugf("-----QueryPrintList := %s", utils.Format4Output(dataMap, false)) + if printNoParam, ok := dataMap["print_no"].(string); !ok { + printNo = "" + } else { + printNo = printNoParam + } + if key, ok := dataMap["print_key"].(string); !ok { + printKey = "" + } else { + printKey = key + } + if s, ok := dataMap["status"].(int); !ok { + status = model.PrintMsgAll + } else { + status = s + } + if online, ok := dataMap["is_online"].(int); !ok { + isOnline = model.PrintMsgAll + } else { + isOnline = online + } + if p, ok := dataMap["page"].(int); !ok { + page = 0 + } else { + page = p + } + if s, ok := dataMap["size"].(int); !ok { + size = 20 + } else { + size = s + } + data, err = cms.QueryPrintList(printNo, printKey, status, isOnline, page, size) + return +} + //删除打印机绑定 func (c *ApiController) DelPrinter(dataMap map[string]interface{}) (data, errCode string, err error) { var (