修正和重构代码

This commit is contained in:
Rosy-zhudan
2019-08-29 16:05:29 +08:00
parent 21c1c3c514
commit 1ea9c5aca2
5 changed files with 24 additions and 39 deletions

View File

@@ -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 {

View File

@@ -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

View File

@@ -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

View File

@@ -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
})
}

View File

@@ -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,