diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index a3b3f1fa4..6eeb5c828 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -2846,3 +2846,23 @@ func UpdateJdStoreNameAll(ctx *jxcontext.Context) (err error) { } return err } + +func DeletePrinterSeq(ctx *jxcontext.Context, storeIDs []int) (err error) { + db := dao.GetDB() + for _, v := range storeIDs { + stores, err := dao.GetStoreList(db, []int{v}, nil, nil, nil, "") + if err != nil || len(stores) == 0 { + return err + } + vendorID := stores[0].PrinterVendorID + if vendorID == model.NO { + return fmt.Errorf("该门店没有绑定打印机,ID:[%v],名字:[%v]", stores[0].ID, stores[0].Name) + } + if vendorID == model.VendorIDXiaoWM { + return fmt.Errorf("暂不支持该打印机品牌清空打印队列,[%v]", model.VendorChineseNames[model.VendorIDXiaoWM]) + } + handler := partner.GetPrinterPlatformFromVendorID(vendorID) + err = handler.EmptyPrintList(ctx, stores[0].PrinterSN, stores[0].PrinterKey) + } + return err +} diff --git a/controllers/cms_store.go b/controllers/cms_store.go index 2dfab7cc0..aef66e7a9 100644 --- a/controllers/cms_store.go +++ b/controllers/cms_store.go @@ -647,3 +647,20 @@ func (c *StoreController) SyncJdStore() { return retVal, "", err }) } + +// @Title 清空打印机打印队列 +// @Description 清空打印机打印队列 +// @Param token header string true "认证token" +// @Param storeIDs formData string true "门店列表" +// @Success 200 {object} controllers.CallResult +// @Failure 200 {object} controllers.CallResult +// @router /DeletePrinterSeq [post] +func (c *StoreController) DeletePrinterSeq() { + var storeIDList []int + c.callDeletePrinterSeq(func(params *tStoreDeletePrinterSeqParams) (retVal interface{}, errCode string, err error) { + if jxutils.Strings2Objs(params.StoreIDs, &storeIDList); err == nil { + err = cms.DeletePrinterSeq(params.Ctx, storeIDList) + } + return retVal, "", err + }) +} diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index 43f8f4417..30349e707 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -1494,6 +1494,15 @@ func init() { Filters: nil, Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"], + beego.ControllerComments{ + Method: "DeletePrinterSeq", + Router: `/DeletePrinterSeq`, + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"], beego.ControllerComments{ Method: "DeleteStore",