diff --git a/business/jxutils/netprinter/netprinter.go b/business/jxutils/netprinter/netprinter.go index a6191ba31..79a5c0d95 100644 --- a/business/jxutils/netprinter/netprinter.go +++ b/business/jxutils/netprinter/netprinter.go @@ -47,7 +47,7 @@ func PrintOrderByOrder(ctx *jxcontext.Context, order *model.GoodsOrder) (printRe PrintResult: partner.PrintResultNoPrinter, }, nil } - if true { //globals.EnableStoreWrite { + if globals.EnableStoreWrite { printResult, err = handler.PrintOrder(ctx, store, order) } else { err = fmt.Errorf("当前环境不支持打印") @@ -83,6 +83,9 @@ func getNetPrinterStatus(ctx *jxcontext.Context, store *model.Store) (printResul } func GetHandlerFromStore(store *model.Store) (printerHandler partner.IPrinterHandler, err error) { + if store.IsPrinterDisabled() { + return nil, fmt.Errorf("门店%s没有启用网络打印机", store.Name) + } if printerHandler = partner.GetPrinterPlatformFromVendorID(store.PrinterVendorID); printerHandler == nil { return nil, fmt.Errorf("门店%s没有配置网络打印机", store.Name) } diff --git a/business/model/store.go b/business/model/store.go index 8f42c054b..8a8ee5e0a 100644 --- a/business/model/store.go +++ b/business/model/store.go @@ -146,6 +146,7 @@ type Store struct { DeliveryType int8 `orm:"-" json:"deliveryType"` // 仅用于传值 + PrinterDisabled int8 `orm:"default(0)" json:"printerDisabled"` // 是否禁用网络打印机 PrinterVendorID int `orm:"column(printer_vendor_id);" json:"printerVendorID"` PrinterSN string `orm:"size(32);column(printer_sn);index" json:"printerSN"` PrinterKey string `orm:"size(32)" json:"printerKey"` @@ -194,6 +195,10 @@ func (*Store) TableUnique() [][]string { } } +func (s *Store) IsPrinterDisabled() bool { + return s.PrinterDisabled != 0 +} + type StoreSub struct { ModelIDCULD