This commit is contained in:
suyl
2021-07-13 14:43:00 +08:00
parent da91dbf2d7
commit 49e72ab6bf

View File

@@ -4,6 +4,7 @@ import (
"encoding/json" "encoding/json"
"fmt" "fmt"
"git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/model/dao" "git.rosy.net.cn/jx-callback/business/model/dao"
"net" "net"
@@ -28,14 +29,16 @@ type PrintInfo struct {
func AddPrinter(appID int, printers []*model.Printer) (err error) { func AddPrinter(appID int, printers []*model.Printer) (err error) {
var ( var (
db = dao.GetDB() db = dao.GetDB()
errs []error
) )
if len(printers) > 50 { if len(printers) > 50 {
return fmt.Errorf("一次最多只能绑定50台") return fmt.Errorf("一次最多只能绑定50台")
} }
for _, v := range printers { for _, v := range printers {
if printers2, _ := dao.GetPrinters(db, appID, v.PrintNo); len(printers2) > 0 { if printers2, _ := dao.GetPrinters(db, appID, v.PrintNo); len(printers2) > 0 {
return fmt.Errorf("此应用已经绑定了该打印机print_no : %v", v.PrintNo) errs = append(errs, fmt.Errorf("此应用已经绑定了该打印机print_no : %v", v.PrintNo))
continue
} }
printer := &model.Printer{ printer := &model.Printer{
AppID: appID, AppID: appID,
@@ -50,26 +53,36 @@ func AddPrinter(appID int, printers []*model.Printer) (err error) {
} }
dao.WrapAddIDCULDEntity(printer, "") dao.WrapAddIDCULDEntity(printer, "")
if err = dao.CreateEntity(db, printer); err != nil { if err = dao.CreateEntity(db, printer); err != nil {
return err errs = append(errs, err)
continue
} }
} }
if len(errs) > 0 {
err = jxutils.BuildErr(errs)
}
return err return err
} }
func DelPrinter(appID int, printNos []string) (err error) { func DelPrinter(appID int, printNos []string) (err error) {
var ( var (
db = dao.GetDB() db = dao.GetDB()
errs []error
) )
for _, v := range printNos { for _, v := range printNos {
if printers, _ := dao.GetPrinters(db, appID, v); len(printers) == 0 { if printers, _ := dao.GetPrinters(db, appID, v); len(printers) == 0 {
return fmt.Errorf("该应用下未找到该打印机print_no : %v", v) errs = append(errs, fmt.Errorf("该应用下未找到该打印机print_no : %v", v))
continue
} else { } else {
printers[0].DeletedAt = time.Now() printers[0].DeletedAt = time.Now()
if _, err = dao.UpdateEntity(db, printers[0], "DeletedAt"); err != nil { if _, err = dao.UpdateEntity(db, printers[0], "DeletedAt"); err != nil {
return err errs = append(errs, err)
continue
} }
} }
} }
if len(errs) > 0 {
err = jxutils.BuildErr(errs)
}
return err return err
} }