diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index c51c59990..088501501 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -385,25 +385,27 @@ func UpdateStore(ctx *jxcontext.Context, storeID int, payload map[string]interfa } else { store.PrinterVendorID = int(utils.Interface2Int64WithDefault(valid["printerVendorID"], 0)) } - if valid["printerSN"] == nil { - valid["printerSN"] = store.PrinterSN - } - if valid["printerKey"] == nil { - valid["printerKey"] = store.PrinterKey - } - var handler partner.IPrinterHandler - if handler, err = netprinter.GetHandlerFromStore(store); err != nil { - return 0, err - } - newID1, newID2, err2 := handler.RegisterPrinter(ctx, valid["printerSN"].(string), valid["printerKey"].(string), store.Name) - if err = err2; err != nil { - return 0, err - } - if newID1 != "" { - valid["printerSN"] = newID1 - } - if newID2 != "" { - valid["printerKey"] = newID2 + if store.PrinterVendorID > 0 { + if valid["printerSN"] == nil { + valid["printerSN"] = store.PrinterSN + } + if valid["printerKey"] == nil { + valid["printerKey"] = store.PrinterKey + } + var handler partner.IPrinterHandler + if handler, err = netprinter.GetHandlerFromStore(store); err != nil { + return 0, err + } + newID1, newID2, err2 := handler.RegisterPrinter(ctx, valid["printerSN"].(string), valid["printerKey"].(string), store.Name) + if err = err2; err != nil { + return 0, err + } + if newID1 != "" { + valid["printerSN"] = newID1 + } + if newID2 != "" { + valid["printerKey"] = newID2 + } } }