diff --git a/business/jxstore/cms/store_sku_check.go b/business/jxstore/cms/store_sku_check.go index 9714f4491..34dd94871 100644 --- a/business/jxstore/cms/store_sku_check.go +++ b/business/jxstore/cms/store_sku_check.go @@ -468,6 +468,7 @@ func WriteToExcel(task *tasksch.SeqTask, data map[int][]DiffData) { if len(sheetList) > 0 { excelBin := excel.Obj2Excel(sheetList) + sheetList = nil timeStr := utils.Int64ToStr(time.Now().Unix()) diffFullFileName := diffFileName[IsJXCS()] + timeStr + fileExt if canWriteTolocal { diff --git a/business/jxutils/jxutils_cms.go b/business/jxutils/jxutils_cms.go index 0a83482ed..a35725f67 100644 --- a/business/jxutils/jxutils_cms.go +++ b/business/jxutils/jxutils_cms.go @@ -12,6 +12,7 @@ import ( "sync" "time" "errors" + "image" "image/png" "bytes" "encoding/base64" @@ -465,15 +466,15 @@ func CaculateSkuEarningPrice(shopPrice, salePrice int64, storePayPercentage int) return earningPrice } -func GetImgBase64(qrCode barcode.Barcode) (imgBase64 string, err error) { +func GetImgBase64(img image.Image) (imgBase64 string, err error) { bufWriter := bytes.NewBuffer(nil) - png.Encode(bufWriter, qrCode) + png.Encode(bufWriter, img) imgBase64 = "data:image/png;base64," + base64.StdEncoding.EncodeToString(bufWriter.Bytes()) return imgBase64, err } -func CreateQrAndBarCode(width, height int, codetype, srcData string) (imgBase64 string, err error) { +func CreateQrOrBarCode(width, height int, codeType, srcData string) (imgBase64 string, err error) { if width > MaxCodeWidth { width = MaxCodeWidth } @@ -481,24 +482,19 @@ func CreateQrAndBarCode(width, height int, codetype, srcData string) (imgBase64 height = MaxCodeHeight } - if codetype == CodeTypeQr { - qrCode, err := qr.Encode(srcData, qr.M, qr.Auto) - if err == nil { - qrCode, err = barcode.Scale(qrCode, width, height) - if err == nil { - imgBase64, err = GetImgBase64(qrCode) - } - } - } else if codetype == CodeTypeBar { - cs, err := code128.Encode(srcData) - if err == nil { - qrCode, err2 := barcode.Scale(cs, width, height) - if err = err2; err == nil { - imgBase64, err = GetImgBase64(qrCode) - } - } + var code barcode.Barcode + if codeType == CodeTypeQr { + code, err = qr.Encode(srcData, qr.M, qr.Auto) + } else if codeType == CodeTypeBar { + code, err = code128.Encode(srcData) } else { - err = errors.New(fmt.Sprintf("未知编码类型:%s", codetype)) + err = errors.New(fmt.Sprintf("未知编码类型:%s", codeType)) + } + if err == nil { + code, err = barcode.Scale(code, width, height) + if err == nil { + imgBase64, err = GetImgBase64(code) + } } return imgBase64, err diff --git a/business/partner/purchase/ebai/store_sku2.go b/business/partner/purchase/ebai/store_sku2.go index 030db9813..7056381e7 100644 --- a/business/partner/purchase/ebai/store_sku2.go +++ b/business/partner/purchase/ebai/store_sku2.go @@ -328,25 +328,13 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas } return nil, err2 }, pages) - tasksch.HandleTask(task, parentTask, false).Run() + tasksch.HandleTask(task, parentTask, true).Run() result, err2 := task.GetResult(0) if err = err2; err == nil { for _, v := range result { skuNameList = append(skuNameList, vendorSku2Jx(v.(*ebaiapi.SkuInfo))) } } - // for pageIndex := 2; pageIndex <= page1.Pages; pageIndex++ { - // callParams := &ebaiapi.SkuListParams{ - // PageSize: ebaiapi.MaxSkuListPageSize, - // Page: pageIndex, - // } - // pageSku, err2 := api.EbaiAPI.SkuList(utils.Int2Str(storeID), callParams) - // if err2 == nil { - // for _, v := range pageSku.List { - // skuNameList = append(skuNameList, vendorSku2Jx(v)) - // } - // } - // } } } return skuNameList, err diff --git a/controllers/cms.go b/controllers/cms.go index 431ab98a4..325f588de 100644 --- a/controllers/cms.go +++ b/controllers/cms.go @@ -289,10 +289,10 @@ func (c *CmsController) QueryConfigs() { // @Param srcData formData string true "二维码/条形码数据源" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult -// @router /CreateQrAndBarCode [post] -func (c *CmsController) CreateQrAndBarCode() { - c.callCreateQrAndBarCode(func(params *tCmsCreateQrAndBarCodeParams) (retVal interface{}, errCode string, err error) { - retVal, err = jxutils.CreateQrAndBarCode(params.Width, params.Height, params.Codetype, params.SrcData) +// @router /CreateQrOrBarCode [post] +func (c *CmsController) CreateQrOrBarCode() { + c.callCreateQrOrBarCode(func(params *tCmsCreateQrOrBarCodeParams) (retVal interface{}, errCode string, err error) { + retVal, err = jxutils.CreateQrOrBarCode(params.Width, params.Height, params.Codetype, params.SrcData) return retVal, "", err }) } \ No newline at end of file diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index fe7873213..5c1efe789 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -279,8 +279,8 @@ func init() { beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:CmsController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:CmsController"], beego.ControllerComments{ - Method: "CreateQrAndBarCode", - Router: `/CreateQrAndBarCode`, + Method: "CreateQrOrBarCode", + Router: `/CreateQrOrBarCode`, AllowHTTPMethods: []string{"post"}, MethodParams: param.Make(), Filters: nil,