From a9df40601163eee614b62d33921821975731b1f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Tue, 26 Nov 2019 11:42:20 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=BE=AE=E7=9B=9F=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=95=86=E5=93=81=E4=BF=A1=E6=81=AFbug=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/yonghui/yonghui.go | 76 ++++++++++++++++++----------- controllers/yonghui.go | 2 +- 2 files changed, 49 insertions(+), 29 deletions(-) diff --git a/business/jxstore/yonghui/yonghui.go b/business/jxstore/yonghui/yonghui.go index 1fea6c740..0bf2d3e12 100644 --- a/business/jxstore/yonghui/yonghui.go +++ b/business/jxstore/yonghui/yonghui.go @@ -875,7 +875,11 @@ func GetWeimobOrdersList(fromTimeParam, toTimeParam int64, keyword string) (aLis } func GetWeimobOrderDetail(orderNo int64) (order *weimobapi.OrderDetail, err error) { - return api.WeimobAPI.QueryOrderDetail2(orderNo, false) + order, err = api.WeimobAPI.QueryOrderDetail2(orderNo, false) + if err != nil { + return nil, err + } + return order, err } func GetSingleOrderResultList(params map[string]interface{}) (result []*OrderList, err error) { @@ -894,41 +898,57 @@ func ContainsKeyword(v *weimobapi.OrderInfo, keyword string) bool { return strings.Contains(v.ReceiverName, keyword) || strings.Contains(utils.Int64ToStr(v.OrderNo), keyword) || strings.Contains(v.ReceiverMobile, keyword) } -func GetWeimobOrdersExcel(ctx *jxcontext.Context, OrderNo string) (err error) { +func GetWeimobOrdersExcel(ctx *jxcontext.Context, OrderNo string) (result []string, err error) { var ( DataFineList []*Data //精品 DataHairyList []*Data //毛菜 ) orderSingle, err := GetWeimobOrderDetail(utils.Str2Int64(OrderNo)) - itemList := orderSingle.ItemList - for _, v := range itemList { - if v.GoodsCode[0:1] == "0" { - DataHairy := &Data{ - GoodsID: v.GoodsCode, - GoodsName: v.GoodsTitle, - GoodsNum: v.SkuNum, - } - DataHairyList = append(DataHairyList, DataHairy) - } else { - DataFine := &Data{ - GoodsID: v.GoodsCode, - GoodsName: v.GoodsTitle, - GoodsNum: v.SkuNum, - } - DataFineList = append(DataFineList, DataFine) - } + if err != nil { + return result, err } - WriteToExcel2(ctx, DataFineList, DataHairyList) - return err + if len(orderSingle.ItemList) > 0 { + itemList := orderSingle.ItemList + for _, v := range itemList { + if v.GoodsCode != "" { + if v.GoodsCode[0:1] == "0" { + DataHairy := &Data{ + GoodsID: v.GoodsCode, + GoodsName: v.GoodsTitle, + GoodsNum: v.SkuNum, + } + DataHairyList = append(DataHairyList, DataHairy) + } else { + DataFine := &Data{ + GoodsID: v.GoodsCode, + GoodsName: v.GoodsTitle, + GoodsNum: v.SkuNum, + } + DataFineList = append(DataFineList, DataFine) + } + } else { + return result, errors.New(fmt.Sprintf("此订单中该商品无spu编码,请检查!订单号:[%v] ,商品名: [%v]", OrderNo, v.GoodsTitle)) + } + } + } else { + return result, errors.New(fmt.Sprintf("此订单中无商品信息,请检查!订单号:[%v]", OrderNo)) + } + downloadURL1, downloadURL2, err := WriteToExcel2(ctx, DataFineList, DataHairyList) + if downloadURL1 != "" { + result = append(result, downloadURL1) + } + if downloadURL2 != "" { + result = append(result, downloadURL2) + } + return result, err } -func WriteToExcel2(ctx *jxcontext.Context, DataFineList, DataHairyList []*Data) (err error) { +func WriteToExcel2(ctx *jxcontext.Context, DataFineList, DataHairyList []*Data) (downloadURL1, downloadURL2 string, err error) { var ( - sheetList1 []*excel.Obj2ExcelSheetConfig - sheetList2 []*excel.Obj2ExcelSheetConfig - downloadURL1, downloadURL2 string - fileName1, fileName2 string - noticeMsg string + sheetList1 []*excel.Obj2ExcelSheetConfig + sheetList2 []*excel.Obj2ExcelSheetConfig + fileName1, fileName2 string + noticeMsg string ) excelConf1 := &excel.Obj2ExcelSheetConfig{ Title: "sheet1", @@ -963,5 +983,5 @@ func WriteToExcel2(ctx *jxcontext.Context, DataFineList, DataHairyList []*Data) baseapi.SugarLogger.Debugf("WriteToExcel:upload %s ,%s success, downloadURL1:%s ,downloadURL2:%s", fileName1, fileName2, downloadURL1, downloadURL2) } } - return err + return downloadURL1, downloadURL2, err } diff --git a/controllers/yonghui.go b/controllers/yonghui.go index 31dc0ce62..c6bd95451 100644 --- a/controllers/yonghui.go +++ b/controllers/yonghui.go @@ -88,7 +88,7 @@ func (c *YongHuiController) GetWeimobOrders() { // @router /GetWeimobOrdersExcel [post] func (c *YongHuiController) GetWeimobOrdersExcel() { c.callGetWeimobOrdersExcel(func(params *tYonghuiGetWeimobOrdersExcelParams) (retVal interface{}, errCode string, err error) { - err = yonghui.GetWeimobOrdersExcel(params.Ctx, params.OrderNo) + retVal, err = yonghui.GetWeimobOrdersExcel(params.Ctx, params.OrderNo) return retVal, "", err }) }