This commit is contained in:
邹宗楠
2022-12-07 17:17:59 +08:00
parent a09f35be54
commit 40c7ca6dca
7 changed files with 103 additions and 33 deletions

View File

@@ -4,6 +4,7 @@ import (
"git.rosy.net.cn/jx-print/globals"
"git.rosy.net.cn/jx-print/model/app_model"
"github.com/jmoiron/sqlx"
"strings"
)
// QueryPrintBill 查询打印机账户是否存在
@@ -29,6 +30,27 @@ func QueryPrintBill(db *sqlx.Tx, userId, printNo string) ([]*app_model.PrintBill
return result, nil
}
// QueryPrintBillList 查询打印机余额
func QueryPrintBillList(userId string, printNo []string) ([]*app_model.PrintBill, error) {
db := globals.GetTxDb()
sql := `SELECT * FROM print_bill WHERE 1 = 1 `
var param []interface{}
if userId != "" {
sql += ` AND user_id = ? `
param = append(param, userId)
}
if len(printNo) > 0 {
sql += " AND print_no IN (" + GenQuestionMarks(len(printNo)) + ")"
param = append(param, printNo)
}
var result []*app_model.PrintBill
if err := db.Select(&result, sql, param...); err != nil {
return nil, err
}
return result, nil
}
// InitPrintBill 初始化打印机账户
func InitPrintBill(txDB *sqlx.Tx, param *app_model.PrintBill) error {
if err := InsertTx(txDB, param); err != nil {
@@ -61,3 +83,20 @@ func UpdatePrintToSystem(db *sqlx.Tx, printNo string) error {
}
return nil
}
func GenQuestionMarks(count int) (marks string) {
if count > 0 {
if count == 1 {
marks = "?"
} else {
builder := &strings.Builder{}
builder.Grow(1 + (count-1)*3)
builder.WriteString("?")
for i := 1; i < count; i++ {
builder.WriteString(", ?")
}
marks = builder.String()
}
}
return marks
}